-# locale_h.m4 serial 10
-dnl Copyright (C) 2007, 2009-2010 Free Software Foundation, Inc.
+# locale_h.m4 serial 14
+dnl Copyright (C) 2007, 2009-2011 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
AC_CACHE_CHECK([whether locale.h conforms to POSIX:2001],
[gl_cv_header_locale_h_posix2001],
- [AC_TRY_COMPILE([#include <locale.h>
-int x = LC_MESSAGES;], [],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <locale.h>
+ int x = LC_MESSAGES;]],
+ [[]])],
[gl_cv_header_locale_h_posix2001=yes],
[gl_cv_header_locale_h_posix2001=no])])
dnl itself, we assume that <xlocale.h> will do so.
AC_CACHE_CHECK([whether locale.h defines locale_t],
[gl_cv_header_locale_has_locale_t],
- [AC_TRY_COMPILE([#include <locale.h>
-locale_t x;], [],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <locale.h>
+ locale_t x;]],
+ [[]])],
[gl_cv_header_locale_has_locale_t=yes],
[gl_cv_header_locale_has_locale_t=no])
])
AC_SUBST([HAVE_XLOCALE_H])
dnl <locale.h> is always overridden, because of GNULIB_POSIXCHECK.
- gl_CHECK_NEXT_HEADERS([locale.h])
-
- if test -n "$STDDEF_H" \
- || test $gl_cv_header_locale_h_posix2001 = no \
- || test $gl_cv_header_locale_h_needs_xlocale_h = yes; then
- gl_REPLACE_LOCALE_H
- fi
+ gl_NEXT_HEADERS([locale.h])
dnl Check for declarations of anything we want to poison if the
dnl corresponding gnulib module is not in use.
#if HAVE_XLOCALE_H
# include <xlocale.h>
#endif
- ]], [duplocale])
-])
-
-dnl Unconditionally enables the replacement of <locale.h>.
-AC_DEFUN([gl_REPLACE_LOCALE_H],
-[
- dnl This is a no-op, because <locale.h> is always overridden.
- :
+ ]],
+ [setlocale duplocale])
])
AC_DEFUN([gl_LOCALE_MODULE_INDICATOR],
AC_DEFUN([gl_LOCALE_H_DEFAULTS],
[
+ GNULIB_SETLOCALE=0; AC_SUBST([GNULIB_SETLOCALE])
GNULIB_DUPLOCALE=0; AC_SUBST([GNULIB_DUPLOCALE])
dnl Assume proper GNU behavior unless another module says otherwise.
HAVE_DUPLOCALE=1; AC_SUBST([HAVE_DUPLOCALE])
+ REPLACE_SETLOCALE=0; AC_SUBST([REPLACE_SETLOCALE])
REPLACE_DUPLOCALE=0; AC_SUBST([REPLACE_DUPLOCALE])
])