Runtime selection of the locale subsystem in the C library
The C library function setlocale() selects a locale at runtime for the locale category, or categories, specified in its arguments.
It does this by selecting the requested locale separately in each locale category. In effect, each locale category is a small filing system containing an entry for each locale.
The rt_locale.h and rt_locale.s header files describe what must be implemented and provide some useful support macros.