tree db501c0de78202bee078e418c5b9a9a47ece0712
parent a08910fc2cc739f631b75b2d09b8d72a0d64d285
author Rich Felker <dalias@aerifal.cx> 1501556907 -0400
committer Rich Felker <dalias@aerifal.cx> 1501556907 -0400

add _NL_LOCALE_NAME extension to nl_langinfo

since setlocale(cat, NULL) is required to return the setting for the
global locale, there is no standard mechanism to obtain the name of
the currently active thread-local locale set by uselocale. this makes
it impossible for application/library software to load appropriate
translations, etc. unless using the gettext implementation provided by
libc, which has privileged access to libc internals.

to fill this gap, glibc introduced the _NL_LOCALE_NAME macro which can
be used with nl_langinfo to obtain the name. GNU gettext/gnulib code
already use this functionality on glibc, and can easily be adapted to
make use of it on non-glibc systems if it's available; for other
systems they poke at locale implementation internals, which we want to
avoid. this patch provides a compatible interface to the one glibc
introduced.
