+2024-08-31 Bruno Haible <bruno@clisp.org>
+
+ Strengthen LC_CTYPE configure tests on OpenBSD, Android, Haiku.
+ * m4/mbrlen.m4 (gl_MBRLEN_RETVAL): Require gt_LOCALE_EN_UTF8 instead of
+ gt_LOCALE_FR_UTF8. Use LOCALE_EN_UTF8 instead of LOCALE_FR_UTF8.
+ * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE, gl_MBRTOWC_SANITYCHECK,
+ gl_MBRTOWC_NULL_ARG1, gl_MBRTOWC_NULL_ARG2, gl_MBRTOWC_RETVAL,
+ gl_MBRTOWC_STORES_INCOMPLETE): Likewise.
+ * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Likewise.
+ * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise.
+ * m4/mbrtoc16.m4 (gl_MBRTOC16_NULL_DESTINATION): Require
+ gt_LOCALE_EN_UTF8 instead of gt_LOCALE_FR_UTF8. Use LOCALE_EN_UTF8
+ instead of LOCALE_FR_UTF8. Update cross-compilation guess.
+ * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
+ * modules/btowc (Files): Add m4/locale-en.m4.
+ * modules/c32isalnum (Files): Likewise.
+ * modules/c32isalpha (Files): Likewise.
+ * modules/c32isblank (Files): Likewise.
+ * modules/c32iscntrl (Files): Likewise.
+ * modules/c32isdigit (Files): Likewise.
+ * modules/c32isgraph (Files): Likewise.
+ * modules/c32islower (Files): Likewise.
+ * modules/c32isprint (Files): Likewise.
+ * modules/c32ispunct (Files): Likewise.
+ * modules/c32isspace (Files): Likewise.
+ * modules/c32isupper (Files): Likewise.
+ * modules/c32isxdigit (Files): Likewise.
+ * modules/c32rtomb (Files): Likewise.
+ * modules/c32tob (Files): Likewise.
+ * modules/c32tolower (Files): Likewise.
+ * modules/c32toupper (Files): Likewise.
+ * modules/c32width (Files): Likewise.
+ * modules/iswdigit (Files): Likewise.
+ * modules/mbrtoc16 (Files): Likewise.
+ * modules/mbrtoc32 (Files): Likewise.
+ * modules/mbsnrtowcs (Files): Likewise.
+ * modules/mbsrtowcs (Files): Likewise.
+ * modules/wcrtomb (Files): Likewise.
+ * modules/wcsnrtombs (Files): Likewise.
+ * modules/wcsrtombs (Files): Likewise.
+ * modules/wctob (Files): Likewise.
+ * modules/mbrlen (Files): Add m4/locale-en.m4. Remove m4/locale-fr.m4.
+ * modules/mbrtowc (Files): Likewise.
+ * modules/stdlib (Files): Likewise.
+
2024-08-31 Colin Watson <cjwatson@debian.org>
Update users.txt.
# mbrlen.m4
-# serial 12
+# serial 13
dnl Copyright (C) 2008, 2010-2024 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
AC_DEFUN([gl_MBRLEN_RETVAL],
[
AC_REQUIRE([AC_PROG_CC])
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
AC_REQUIRE([gt_LOCALE_JA])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
AC_CACHE_CHECK([whether mbrlen has a correct return value],
*) gl_cv_func_mbrlen_retval="guessing yes" ;;
esac
changequote([,])dnl
- if test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none; then
+ if test $LOCALE_EN_UTF8 != none || test $LOCALE_JA != none; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <locale.h>
{
int result = 0;
/* This fails on Solaris. */
- if (strcmp ("$LOCALE_FR_UTF8", "none") != 0
- && setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+ if (strcmp ("$LOCALE_EN_UTF8", "none") != 0
+ && setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL)
{
char input[] = "B\303\274\303\237er"; /* "Büßer" */
mbstate_t state;
# mbrtoc16.m4
-# serial 2
+# serial 3
dnl Copyright (C) 2014-2024 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
[
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([gl_TYPE_CHAR16_T])
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
AC_CACHE_CHECK([whether mbrtoc16 supports a NULL destination],
[gl_cv_func_mbrtoc16_null_destination],
dnl is present.
changequote(,)dnl
case "$host_os" in
- # Guess no on glibc systems.
- *-gnu* | gnu*) gl_cv_func_mbrtoc16_null_destination="guessing no" ;;
- # Guess yes otherwise.
- *) gl_cv_func_mbrtoc16_null_destination="guessing yes" ;;
+ # Guess no on glibc systems, on OpenBSD, and on Android.
+ *-gnu* | gnu* | openbsd* | *-android*)
+ gl_cv_func_mbrtoc16_null_destination="guessing no" ;;
+ # Guess yes otherwise.
+ *)
+ gl_cv_func_mbrtoc16_null_destination="guessing yes" ;;
esac
changequote([,])dnl
- if test $LOCALE_FR_UTF8 != none; then
+ if test $LOCALE_EN_UTF8 != none; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <locale.h>
int
main (void)
{
- if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") == NULL
+ if (setlocale (LC_ALL, "$LOCALE_EN_UTF8") == NULL
return 1;
mbstate_t state;
size_t ret;
# mbrtowc.m4
-# serial 44
+# serial 45
dnl Copyright (C) 2001-2002, 2004-2005, 2008-2024 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
[
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([gt_LOCALE_JA])
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
AC_CACHE_CHECK([whether mbrtowc handles incomplete characters],
[gl_cv_func_mbrtowc_incomplete_state],
[gl_cv_func_mbrtowc_incomplete_state=no],
[:])
else
- if test $LOCALE_FR_UTF8 != none; then
+ if test $LOCALE_EN_UTF8 != none; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <locale.h>
#include <wchar.h>
int main ()
{
- if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+ if (setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL)
{
const char input[] = "B\303\274\303\237er"; /* "Büßer" */
mbstate_t state;
AC_DEFUN([gl_MBRTOWC_NULL_ARG1],
[
AC_REQUIRE([AC_PROG_CC])
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
AC_CACHE_CHECK([whether mbrtowc handles a NULL pwc argument],
[gl_cv_func_mbrtowc_null_arg1],
*) gl_cv_func_mbrtowc_null_arg1="guessing yes" ;;
esac
changequote([,])dnl
- if test $LOCALE_FR_UTF8 != none; then
+ if test $LOCALE_EN_UTF8 != none; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <locale.h>
{
int result = 0;
- if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+ if (setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL)
{
char input[] = "\303\237er";
mbstate_t state;
AC_DEFUN([gl_MBRTOWC_NULL_ARG2],
[
AC_REQUIRE([AC_PROG_CC])
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
AC_CACHE_CHECK([whether mbrtowc handles a NULL string argument],
[gl_cv_func_mbrtowc_null_arg2],
*) gl_cv_func_mbrtowc_null_arg2="guessing yes" ;;
esac
changequote([,])dnl
- if test $LOCALE_FR_UTF8 != none; then
+ if test $LOCALE_EN_UTF8 != none; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <locale.h>
#include <wchar.h>
int main ()
{
- if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+ if (setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL)
{
mbstate_t state;
wchar_t wc;
AC_DEFUN([gl_MBRTOWC_RETVAL],
[
AC_REQUIRE([AC_PROG_CC])
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
AC_REQUIRE([gt_LOCALE_JA])
AC_REQUIRE([AC_CANONICAL_HOST])
AC_CACHE_CHECK([whether mbrtowc has a correct return value],
gl_cv_func_mbrtowc_retval="guessing yes" ;;
esac
changequote([,])dnl
- if test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none \
+ if test $LOCALE_EN_UTF8 != none || test $LOCALE_JA != none \
|| { case "$host_os" in mingw* | windows*) true;; *) false;; esac; }; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
int result = 0;
int found_some_locale = 0;
/* This fails on Solaris. */
- if (strcmp ("$LOCALE_FR_UTF8", "none") != 0
- && setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+ if (strcmp ("$LOCALE_EN_UTF8", "none") != 0
+ && setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL)
{
char input[] = "B\303\274\303\237er"; /* "Büßer" */
mbstate_t state;
[:])
;;
*)
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
- if test $LOCALE_FR_UTF8 != none; then
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
+ if test $LOCALE_EN_UTF8 != none; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <locale.h>
#include <wchar.h>
int main ()
{
- if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+ if (setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL)
{
wchar_t wc = (wchar_t) 0xBADFACE;
mbstate_t state;
# mbsrtowcs.m4
-# serial 17
+# serial 18
dnl Copyright (C) 2008-2024 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
[
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([gt_LOCALE_FR])
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
AC_REQUIRE([gt_LOCALE_JA])
AC_REQUIRE([gt_LOCALE_ZH_CN])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
gl_cv_func_mbsrtowcs_works="guessing yes" ;;
esac
changequote([,])dnl
- if test $LOCALE_FR != none || test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then
+ if test $LOCALE_FR != none || test $LOCALE_EN_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <locale.h>
}
/* Test whether the function works when started with a conversion state
in non-initial state. This fails on HP-UX 11.11 and Solaris 10. */
- if (strcmp ("$LOCALE_FR_UTF8", "none") != 0
- && setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+ if (strcmp ("$LOCALE_EN_UTF8", "none") != 0
+ && setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL)
{
const char input[] = "B\303\274\303\237er";
mbstate_t state;
# stdlib_h.m4
-# serial 79
+# serial 80
dnl Copyright (C) 2007-2024 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 On Solaris 10, in UTF-8 locales, its value is 3 but needs to be 4.
dnl Fortunately, we can do this because on this platform MB_LEN_MAX is 5.
AC_REQUIRE([AC_CANONICAL_HOST])
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
AC_CACHE_CHECK([whether MB_CUR_MAX is correct],
[gl_cv_macro_MB_CUR_MAX_good],
[
dnl is present.
changequote(,)dnl
case "$host_os" in
- # Guess no on Solaris.
- solaris*) gl_cv_macro_MB_CUR_MAX_good="guessing no" ;;
- # Guess yes otherwise.
- *) gl_cv_macro_MB_CUR_MAX_good="guessing yes" ;;
+ # Guess no on Solaris and Haiku.
+ solaris* | haiku*) gl_cv_macro_MB_CUR_MAX_good="guessing no" ;;
+ # Guess yes otherwise.
+ *) gl_cv_macro_MB_CUR_MAX_good="guessing yes" ;;
esac
changequote([,])dnl
- if test $LOCALE_FR_UTF8 != none; then
+ if test $LOCALE_EN_UTF8 != none; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <locale.h>
int main ()
{
int result = 0;
- if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+ if (setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL)
{
if (MB_CUR_MAX < 4)
result |= 1;
# wcrtomb.m4
-# serial 19
+# serial 20
dnl Copyright (C) 2008-2024 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 sometimes returns 0 instead of 1.
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([gt_LOCALE_FR])
- AC_REQUIRE([gt_LOCALE_FR_UTF8])
+ AC_REQUIRE([gt_LOCALE_EN_UTF8])
AC_REQUIRE([gt_LOCALE_JA])
AC_REQUIRE([gt_LOCALE_ZH_CN])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
gl_cv_func_wcrtomb_retval="guessing yes" ;;
esac
changequote([,])dnl
- if test $LOCALE_FR != none || test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then
+ if test $LOCALE_FR != none || test $LOCALE_EN_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then
AC_RUN_IFELSE(
[AC_LANG_SOURCE([[
#include <locale.h>
if (wcrtomb (NULL, 0, NULL) != 1)
result |= 1;
}
- if (strcmp ("$LOCALE_FR_UTF8", "none") != 0
- && setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+ if (strcmp ("$LOCALE_EN_UTF8", "none") != 0
+ && setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL)
{
if (wcrtomb (NULL, 0, NULL) != 1)
result |= 2;
lib/btowc.c
m4/btowc.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/codeset.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
lib/c32rtomb.c
m4/c32rtomb.m4
m4/mbrtoc32.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-zh.m4
m4/codeset.m4
lib/c32tob.c
m4/mbrtoc32.m4
m4/c32rtomb.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-zh.m4
m4/codeset.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/mbrtoc32.m4
m4/c32rtomb.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
lib/mbrlen.c
m4/mbrlen.m4
m4/mbstate_t.m4
-m4/locale-fr.m4
+m4/locale-en.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/codeset.m4
Files:
lib/mbrtoc16.c
m4/mbrtoc16.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-zh.m4
m4/codeset.m4
lib/windows-initguard.h
m4/mbrtoc32.m4
m4/c32rtomb.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-zh.m4
m4/codeset.m4
lib/windows-initguard.h
m4/mbrtowc.m4
m4/mbstate_t.m4
-m4/locale-fr.m4
+m4/locale-en.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/codeset.m4
m4/mbsnrtowcs.m4
m4/mbstate_t.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/codeset.m4
m4/mbsrtowcs.m4
m4/mbstate_t.m4
m4/mbrtowc.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
Files:
lib/stdlib.in.h
m4/stdlib_h.m4
-m4/locale-fr.m4
+m4/locale-en.m4
m4/codeset.m4
Depends-on:
m4/wcrtomb.m4
m4/mbrtowc.m4
m4/mbstate_t.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/wcsnrtombs.m4
m4/mbrtowc.m4
m4/mbstate_t.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/wcsrtombs.m4
m4/mbrtowc.m4
m4/mbstate_t.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
Files:
lib/wctob.c
m4/wctob.m4
+m4/locale-en.m4
m4/locale-fr.m4
m4/codeset.m4