From: Pádraig Brady Date: Thu, 29 Jan 2015 16:44:48 +0000 (+0000) Subject: localename: support Solaris 12 and illumos X-Git-Tag: v1.0~7176 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=387c214;p=gnulib.git localename: support Solaris 12 and illumos * lib/localename.c (gl_locale_name_thread_unsafe): call getlocalename_l() on newer __sun platforms. Reported by Alexander Pyhalov. Fix suggested by Rich Burridge. --- diff --git a/ChangeLog b/ChangeLog index a218b4f1a9..69e3425798 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2015-01-29 Pádraig Brady + + localename: support Solaris 12 and illumos + * lib/localename.c (gl_locale_name_thread_unsafe): call + getlocalename_l() on newer __sun platforms. + Reported by Alexander Pyhalov. + Fix suggested by Rich Burridge. + 2015-01-29 Alexander Pyhalov locale: fix tests on illumos (trivial) diff --git a/lib/localename.c b/lib/localename.c index 815171c2a2..c6f326e5bd 100644 --- a/lib/localename.c +++ b/lib/localename.c @@ -42,6 +42,10 @@ # if !defined IN_LIBINTL # include "glthread/lock.h" # endif +# if defined __sun +/* Solaris >= 12. */ +extern char * getlocalename_l(int, locale_t); +# endif #endif #if HAVE_CFLOCALECOPYCURRENT || HAVE_CFPREFERENCESCOPYAPPVALUE @@ -2584,7 +2588,7 @@ get_lcid (const char *locale_name) #endif -#if HAVE_USELOCALE /* glibc or Mac OS X */ +#if HAVE_USELOCALE /* glibc, Solaris >= 12 or Mac OS X */ /* Simple hash set of strings. We don't want to drag in lots of hash table code here. */ @@ -2723,6 +2727,9 @@ gl_locale_name_thread_unsafe (int category, const char *categoryname) return ""; } return querylocale (mask, thread_locale); +# elif defined __sun + /* Solaris >= 12. */ + return getlocalename_l (category, thread_locale); # endif } }