summaryrefslogtreecommitdiff
path: root/libc/sysdeps
diff options
context:
space:
mode:
authorManuel Novoa III <mjn3@codepoet.org>2003-08-24 03:49:13 +0000
committerManuel Novoa III <mjn3@codepoet.org>2003-08-24 03:49:13 +0000
commit50660812be5588036a14fc85af16bccef68fac02 (patch)
tree65f25cc1dda3c7efc76efee2c61b28973465db2a /libc/sysdeps
parent02f74937667727e32c591afe42e90e2b515ab61e (diff)
Fix a few bugs in the new extended locale functions.
Move stub gettext functions to a stub libintl to make switching in gnu gettext easier. Also add a few gnu-isms. Change to using hidden names with global weak aliases for the extended locale functions, as expected by libstd++. Slightly rework the locale data generation stuff to allow pregenerated locale data to be used with buildroot.
Diffstat (limited to 'libc/sysdeps')
-rw-r--r--libc/sysdeps/linux/common/bits/uClibc_locale.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/libc/sysdeps/linux/common/bits/uClibc_locale.h b/libc/sysdeps/linux/common/bits/uClibc_locale.h
index 1602c2881..bf642b511 100644
--- a/libc/sysdeps/linux/common/bits/uClibc_locale.h
+++ b/libc/sysdeps/linux/common/bits/uClibc_locale.h
@@ -41,6 +41,8 @@
#define __LOCALE_C_ONLY
#define __XL(N) N
+#define __XL_NPP(N) N
+#define __XL_ALIAS(N)
#define __LOCALE_PARAM
#define __LOCALE_ARG
@@ -345,7 +347,9 @@ extern __locale_t __curlocale_set(__locale_t newloc);
/**********************************************************************/
#if defined(__UCLIBC_HAS_XLOCALE__) && defined(__UCLIBC_DO_XLOCALE)
-#define __XL(N) N ## _l
+#define __XL(N) __ ## N ## _l
+#define __XL_NPP(N) N ## _l
+#define __XL_ALIAS(N) weak_alias( __ ## N ## _l , N ## _l )
#define __LOCALE_PARAM , __locale_t locale_arg
#define __LOCALE_ARG , locale_arg
#define __LOCALE_PTR locale_arg
@@ -353,6 +357,8 @@ extern __locale_t __curlocale_set(__locale_t newloc);
#else /* defined(__UCLIBC_HAS_XLOCALE__) && defined(__STDLIB_DO_XLOCALE) */
#define __XL(N) N
+#define __XL_NPP(N) N
+#define __XL_ALIAS(N)
#define __LOCALE_PARAM
#define __LOCALE_ARG
#define __LOCALE_PTR __UCLIBC_CURLOCALE
@@ -360,9 +366,6 @@ extern __locale_t __curlocale_set(__locale_t newloc);
#endif /* defined(__UCLIBC_HAS_XLOCALE__) && defined(__STDLIB_DO_XLOCALE) */
/**********************************************************************/
-extern __locale_t __newlocale(int category_mask, const char *locale, __locale_t base)
- __THROW;
-
#endif /* defined(_LIBC) && !defined(__LOCALE_C_ONLY) */
/**********************************************************************/