changeset 12341:f7a07cd4228a

Check that <locale.h> defines locale_t and LC_GLOBAL_LOCALE.
author Bruno Haible <bruno@clisp.org>
date Sun, 22 Nov 2009 23:32:54 +0100
parents 2da64958ab60
children f214e6acb33b
files ChangeLog modules/locale-tests tests/test-locale.c
diffstat 3 files changed, 10 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2009-11-22  Bruno Haible  <bruno@clisp.org>
 
+	* modules/locale-tests (configure.ac): Test for newlocale function.
+	* tests/test-locale.c: When the system has extended locale functions,
+	verify that <locale.h> defines locale_t and LC_GLOBAL_LOCALE.
+
 	locale: Make locale_t available when possible.
 	* lib/locale.in.h: Include <xlocale.h> when it exists.
 	* m4/locale_h.m4 (gl_LOCALE_H): Check for <xlocale.h> and arrange to
--- a/modules/locale-tests
+++ b/modules/locale-tests
@@ -5,6 +5,7 @@
 verify
 
 configure.ac:
+AC_CHECK_FUNCS_ONCE([newlocale])
 
 Makefile.am:
 TESTS += test-locale
--- a/tests/test-locale.c
+++ b/tests/test-locale.c
@@ -33,6 +33,11 @@
     LC_TIME
   };
 
+#if HAVE_NEWLOCALE
+/* Check that the locale_t type and the LC_GLOBAL_LOCALE macro are defined.  */
+locale_t b = LC_GLOBAL_LOCALE;
+#endif
+
 /* Check that NULL can be passed through varargs as a pointer type,
    per POSIX 2008.  */
 verify (sizeof NULL == sizeof (void *));