Even if localedef is not provided, all implementations conforming to the System Interfaces volume of IEEE Std 1003.1-2001 shall provide one or more locales that behave as described in this chapter.
The input to the utility is described in Locale Definition.
A locale is the definition of the subset of a user's environment that depends on language and cultural conventions. Each category is identified by its name and controls specific aspects of the behavior of components of the system.
Category names correspond to the following environment variable names: The standard utilities in the Shell and Utilities volume of IEEE Std 1003.1-2001 shall base their behavior on the current locale, as defined in the ENVIRONMENT VARIABLES section for each utility.
The behavior of some of the C-language functions defined in the System Interfaces volume of IEEE Std 1003.1-2001 shall also be modified based on the current locale, as defined by the last call to setlocale().
Locales other than those supplied by the implementation can be created via the localedef utility, provided that the _POSIX2_LOCALEDEF symbol is defined on the system.
If the value does not begin with a slash, the mechanism used to locate the locale is implementation-defined.
If different character sets are used by the locale categories, the results achieved by an application utilizing these categories are undefined.Likewise, if different codesets are used for the data being processed by interfaces whose behavior is dependent on the current locale, or the codeset is different from the codeset assumed when the locale was created, the result is also undefined.Applications can select the desired locale by invoking the setlocale() function (or equivalent) with the appropriate value.If the function is invoked with an empty string, such as: the value of the corresponding environment variable is used.If the environment variable is unset or is set to the empty string, the implementation shall set the appropriate environment as defined in Environment Variables.Conforming systems shall provide a POSIX locale, also known as the C locale.