diff options
Diffstat (limited to 'gnulib-m4')
239 files changed, 3117 insertions, 3585 deletions
diff --git a/gnulib-m4/00gnulib.m4 b/gnulib-m4/00gnulib.m4 index cd167718..2b205b35 100644 --- a/gnulib-m4/00gnulib.m4 +++ b/gnulib-m4/00gnulib.m4 @@ -1,9 +1,10 @@ # 00gnulib.m4 # serial 9 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl This file must be named something that sorts before all other dnl gnulib-provided .m4 files. It is needed until the clang fix has diff --git a/gnulib-m4/__inline.m4 b/gnulib-m4/__inline.m4 index 20baf164..d1b8257b 100644 --- a/gnulib-m4/__inline.m4 +++ b/gnulib-m4/__inline.m4 @@ -1,9 +1,10 @@ # __inline.m4 # serial 1 -dnl Copyright 2017-2024 Free Software Foundation, Inc. +dnl Copyright 2017-2025 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. +dnl This file is offered as-is, without any warranty. # Test for __inline keyword diff --git a/gnulib-m4/absolute-header.m4 b/gnulib-m4/absolute-header.m4 index 0abd6d90..5501b07b 100644 --- a/gnulib-m4/absolute-header.m4 +++ b/gnulib-m4/absolute-header.m4 @@ -1,9 +1,10 @@ # absolute-header.m4 # serial 18 -dnl Copyright (C) 2006-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Derek Price. diff --git a/gnulib-m4/alloca.m4 b/gnulib-m4/alloca.m4 index dc78dc19..68fc6211 100644 --- a/gnulib-m4/alloca.m4 +++ b/gnulib-m4/alloca.m4 @@ -1,10 +1,11 @@ # alloca.m4 # serial 21 -dnl Copyright (C) 2002-2004, 2006-2007, 2009-2024 Free Software Foundation, +dnl Copyright (C) 2002-2004, 2006-2007, 2009-2025 Free Software Foundation, dnl 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_ALLOCA], [ diff --git a/gnulib-m4/arpa_inet_h.m4 b/gnulib-m4/arpa_inet_h.m4 index dc0d5919..5dae6f72 100644 --- a/gnulib-m4/arpa_inet_h.m4 +++ b/gnulib-m4/arpa_inet_h.m4 @@ -1,9 +1,10 @@ # arpa_inet_h.m4 # serial 18 -dnl Copyright (C) 2006, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl Written by Simon Josefsson and Bruno Haible diff --git a/gnulib-m4/assert_h.m4 b/gnulib-m4/assert_h.m4 index b90d0f19..b02cbd68 100644 --- a/gnulib-m4/assert_h.m4 +++ b/gnulib-m4/assert_h.m4 @@ -1,9 +1,10 @@ # assert_h.m4 -# serial 1 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +# serial 6 +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Paul Eggert. @@ -12,30 +13,31 @@ AC_DEFUN([gl_ASSERT_H], AC_CACHE_CHECK([for static_assert], [gl_cv_static_assert], [gl_saved_CFLAGS=$CFLAGS for gl_working in "yes, a keyword" "yes, an <assert.h> macro"; do - AS_CASE([$gl_working], - [*assert.h*], [CFLAGS="$gl_saved_CFLAGS -DINCLUDE_ASSERT_H"]) - - AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM( - [[#if defined __clang__ && __STDC_VERSION__ < 202311 - #pragma clang diagnostic error "-Wc2x-extensions" - #pragma clang diagnostic error "-Wc++1z-extensions" - #endif - #ifdef INCLUDE_ASSERT_H - #include <assert.h> - #endif - static_assert (2 + 2 == 4, "arithmetic does not work"); - static_assert (2 + 2 == 4); - ]], - [[ - static_assert (sizeof (char) == 1, "sizeof does not work"); - static_assert (sizeof (char) == 1); - ]])], - [gl_cv_static_assert=$gl_working], - [gl_cv_static_assert=no]) - CFLAGS=$gl_saved_CFLAGS - test "$gl_cv_static_assert" != no && break - done]) + AS_CASE([$gl_working], + [*assert.h*], [CFLAGS="$gl_saved_CFLAGS -DINCLUDE_ASSERT_H"]) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#if defined __clang__ && __STDC_VERSION__ < 202311 + #pragma clang diagnostic error "-Wc2x-extensions" + #pragma clang diagnostic error "-Wc++1z-extensions" + #endif + #ifdef INCLUDE_ASSERT_H + #include <assert.h> + #endif + static_assert (2 + 2 == 4, "arithmetic does not work"); + static_assert (2 + 2 == 4); + ]], + [[ + static_assert (sizeof (char) == 1, "sizeof does not work"); + static_assert (sizeof (char) == 1); + ]]) + ], + [gl_cv_static_assert=$gl_working], + [gl_cv_static_assert=no]) + CFLAGS=$gl_saved_CFLAGS + test "$gl_cv_static_assert" != no && break + done + ]) GL_GENERATE_ASSERT_H=false AS_CASE([$gl_cv_static_assert], @@ -48,25 +50,36 @@ AC_DEFUN([gl_ASSERT_H], dnl The "zz" puts this toward config.h's end, to avoid potential dnl collisions with other definitions. + dnl Hardcode the known configuration results for GCC and clang, so that + dnl a configuration made with the C compiler works also with the C++ compiler + dnl and vice versa. + dnl The seemingly redundant parentheses are necessary for MSVC 14. dnl #undef assert so that programs are not tempted to use it without dnl specifically including assert.h. - dnl #undef __ASSERT_H__ so that on IRIX, when programs later include - dnl <assert.h>, this include actually defines assert. dnl Break the #undef_s apart with a comment so that 'configure' does dnl not comment them out. AH_VERBATIM([zzstatic_assert], -[#if (!defined HAVE_C_STATIC_ASSERT && !defined assert \ +[#if (!(defined __clang__ \ + ? (defined __cplusplus \ + ? __cplusplus >= 201703L \ + : __STDC_VERSION__ >= 202000L && __clang_major__ >= 16 \ + && !defined __sun) \ + : (defined __GNUC__ \ + ? (defined __cplusplus \ + ? __cplusplus >= 201103L && __GNUG__ >= 6 \ + : __STDC_VERSION__ >= 202000L && __GNUC__ >= 13 \ + && !defined __sun) \ + : defined HAVE_C_STATIC_ASSERT)) \ + && !defined assert \ && (!defined __cplusplus \ || (__cpp_static_assert < 201411 \ && __GNUG__ < 6 && __clang_major__ < 6))) #include <assert.h> #undef/**/assert - #ifdef __sgi - #undef/**/__ASSERT_H__ - #endif /* Solaris 11.4 <assert.h> defines static_assert as a macro with 2 arguments. - We need it also to be invocable with a single argument. */ - #if defined __sun && (__STDC_VERSION__ - 0 >= 201112L) && !defined __cplusplus + We need it also to be invocable with a single argument. + Haiku 2022 <assert.h> does not define static_assert at all. */ + #if (__STDC_VERSION__ - 0 >= 201112L) && !defined __cplusplus #undef/**/static_assert #define static_assert _Static_assert #endif diff --git a/gnulib-m4/btowc.m4 b/gnulib-m4/btowc.m4 index d9dd7036..d224b156 100644 --- a/gnulib-m4/btowc.m4 +++ b/gnulib-m4/btowc.m4 @@ -1,17 +1,19 @@ # btowc.m4 -# serial 14 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +# serial 16 +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_BTOWC], [ AC_REQUIRE([gl_WCHAR_H_DEFAULTS]) + AC_REQUIRE([gt_TYPE_WINT_T]) dnl Check whether <wchar.h> is usable at all, first. Otherwise the test dnl program below may lead to an endless loop. See - dnl <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42440>. + dnl <https://gcc.gnu.org/PR42440>. AC_REQUIRE([gl_WCHAR_H_INLINE_OK]) AC_CHECK_FUNCS_ONCE([btowc]) @@ -52,43 +54,6 @@ changequote([,])dnl ]) ]) - dnl IRIX 6.5 btowc(EOF) is 0xFF, not WEOF. - AC_CACHE_CHECK([whether btowc(EOF) is correct], - [gl_cv_func_btowc_eof], - [ - dnl Initial guess, used when cross-compiling or when no suitable locale - dnl is present. -changequote(,)dnl - case "$host_os" in - # Guess no on IRIX. - irix*) gl_cv_func_btowc_eof="guessing no" ;; - # Guess yes on native Windows. - mingw* | windows*) gl_cv_func_btowc_eof="guessing yes" ;; - # Guess yes otherwise. - *) gl_cv_func_btowc_eof="guessing yes" ;; - esac -changequote([,])dnl - if test $LOCALE_FR != none; then - AC_RUN_IFELSE( - [AC_LANG_SOURCE([[ -#include <locale.h> -#include <stdio.h> -#include <wchar.h> -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_FR") != NULL) - { - if (btowc (EOF) != WEOF) - return 1; - } - return 0; -}]])], - [gl_cv_func_btowc_eof=yes], - [gl_cv_func_btowc_eof=no], - [:]) - fi - ]) - dnl On mingw, in the C locale, btowc is inconsistent with mbrtowc: dnl mbrtowc avoids calling MultiByteToWideChar when MB_CUR_MAX is 1 and dnl ___lc_codepage_func() is 0, but btowc is lacking this special case. @@ -133,14 +98,17 @@ int main () ]) ]) + if test $GNULIBHEADERS_OVERRIDE_WINT_T = 1; then + dnl On mingw/ucrt, we override the return type of btowc(). + dnl While the original wint_t (= unsigned short) and the overridden wint_t + dnl (= unsigned int) are equivalent in function parameters, this is not + dnl the case for function return types. + REPLACE_BTOWC=1 + fi case "$gl_cv_func_btowc_nul" in *yes) ;; *) REPLACE_BTOWC=1 ;; esac - case "$gl_cv_func_btowc_eof" in - *yes) ;; - *) REPLACE_BTOWC=1 ;; - esac case "$gl_cv_func_btowc_consistent" in *yes) ;; *) REPLACE_BTOWC=1 ;; diff --git a/gnulib-m4/build-to-host.m4 b/gnulib-m4/build-to-host.m4 index c416bca3..01bff8f3 100644 --- a/gnulib-m4/build-to-host.m4 +++ b/gnulib-m4/build-to-host.m4 @@ -1,9 +1,10 @@ # build-to-host.m4 # serial 5 -dnl Copyright (C) 2023-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2023-2025 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. +dnl This file is offered as-is, without any warranty. dnl Written by Bruno Haible. diff --git a/gnulib-m4/builtin-expect.m4 b/gnulib-m4/builtin-expect.m4 index 33f255e9..76d32867 100644 --- a/gnulib-m4/builtin-expect.m4 +++ b/gnulib-m4/builtin-expect.m4 @@ -1,9 +1,10 @@ # builtin-expect.m4 -# serial 2 -dnl Copyright 2016-2024 Free Software Foundation, Inc. +# serial 3 +dnl Copyright 2016-2025 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. +dnl This file is offered as-is, without any warranty. dnl Provide a GCC-compatible __builtin_expect macro in <config.h>. @@ -47,5 +48,4 @@ AC_DEFUN([gl___BUILTIN_EXPECT], #elif HAVE___BUILTIN_EXPECT == 2 # include <builtins.h> #endif - ]) -]) +])]) diff --git a/gnulib-m4/c-bool.m4 b/gnulib-m4/c-bool.m4 index 0fb0de3b..8fa8bfc8 100644 --- a/gnulib-m4/c-bool.m4 +++ b/gnulib-m4/c-bool.m4 @@ -1,9 +1,10 @@ # c-bool.m4 -# serial 1 -dnl Copyright 2022-2024 Free Software Foundation, Inc. +# serial 3 +dnl Copyright 2022-2025 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. +dnl This file is offered as-is, without any warranty. # Check for bool that conforms to C2023. @@ -29,12 +30,23 @@ AC_DEFUN([gl_C_BOOL], dnl The "zz" puts this toward config.h's end, to avoid potential dnl collisions with other definitions. dnl If 'bool', 'true' and 'false' do not work, arrange for them to work. - dnl In C, this means including <stdbool.h> if it is not already included. + dnl Hardcode the known configuration results for GCC and clang, so that + dnl a configuration made with the C compiler works also with the C++ compiler + dnl and vice versa. + dnl The seemingly redundant parentheses are necessary for MSVC 14. + dnl "Arrange for them to work", in C, means including <stdbool.h> if it is + dnl not already included. dnl However, if the preprocessor mistakenly treats 'true' as 0, dnl define it to a bool expression equal to 1; this is needed in dnl Sun C++ 5.11 (Oracle Solaris Studio 12.2, 2010) and older. AH_VERBATIM([zzbool], -[#ifndef HAVE_C_BOOL +[#if !(defined __cplusplus \ + ? 1 \ + : (defined __clang__ \ + ? __STDC_VERSION__ >= 202000L && __clang_major__ >= 15 \ + : (defined __GNUC__ \ + ? __STDC_VERSION__ >= 202000L && __GNUC__ >= 13 \ + : defined HAVE_C_BOOL))) # if !defined __cplusplus && !defined __bool_true_false_are_defined # if HAVE_STDBOOL_H # include <stdbool.h> diff --git a/gnulib-m4/c32rtomb.m4 b/gnulib-m4/c32rtomb.m4 index cf7ff69d..ce26a31e 100644 --- a/gnulib-m4/c32rtomb.m4 +++ b/gnulib-m4/c32rtomb.m4 @@ -1,9 +1,10 @@ # c32rtomb.m4 # serial 8 -dnl Copyright (C) 2020-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2020-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_C32RTOMB], [ diff --git a/gnulib-m4/calloc.m4 b/gnulib-m4/calloc.m4 index c69ce414..ac7d08d4 100644 --- a/gnulib-m4/calloc.m4 +++ b/gnulib-m4/calloc.m4 @@ -1,9 +1,10 @@ # calloc.m4 -# serial 34 -dnl Copyright (C) 2004-2024 Free Software Foundation, Inc. +# serial 36 +dnl Copyright (C) 2004-2025 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. +dnl This file is offered as-is, without any warranty. # Written by Jim Meyering. @@ -12,42 +13,35 @@ dnl with or without modifications, as long as this notice is preserved. # If so, define HAVE_CALLOC. Otherwise, define calloc to rpl_calloc # and arrange to use a calloc wrapper function that does work in that case. -# _AC_FUNC_CALLOC_IF([IF-WORKS], [IF-NOT]) -# ------------------------------------- +# gl_FUNC_CALLOC_IF([IF-WORKS], [IF-NOT]) +# --------------------------------------- # If calloc is compatible with GNU calloc, run IF-WORKS, otherwise, IF-NOT. -AC_DEFUN([_AC_FUNC_CALLOC_IF], +AC_DEFUN([gl_FUNC_CALLOC_IF], [ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles AC_CACHE_CHECK([whether calloc (0, n) and calloc (n, 0) return nonnull], - [ac_cv_func_calloc_0_nonnull], - [if test $cross_compiling != yes; then - ac_cv_func_calloc_0_nonnull=yes - AC_RUN_IFELSE( - [AC_LANG_PROGRAM( - [AC_INCLUDES_DEFAULT], - [[int result = 0; - char * volatile p = calloc (0, 0); - if (!p) - result |= 1; - free (p); - return result; - ]])], - [], - [ac_cv_func_calloc_0_nonnull=no]) - else - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; - # Guess yes on musl systems. - *-musl* | midipix*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; - # Guess yes on native Windows. - mingw* | windows*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) ac_cv_func_calloc_0_nonnull="$gl_cross_guess_normal" ;; - esac - fi - ]) - AS_CASE([$ac_cv_func_calloc_0_nonnull], [*yes], [$1], [$2]) + [gl_cv_func_calloc_0_nonnull], + [AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include <stdlib.h> + /* Use pcalloc to test; "volatile" prevents the compiler + from optimizing the calloc call away. */ + void *(*volatile pcalloc) (size_t, size_t) = calloc;]], + [[void *p = pcalloc (0, 0); + int result = !p; + free (p); + return result;]])], + [gl_cv_func_calloc_0_nonnull=yes], + [gl_cv_func_calloc_0_nonnull=no], + [AS_CASE([$host_os], + [# Guess yes on platforms where we know the result. + *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \ + | gnu* | *-musl* | midipix* | midnightbsd* \ + | hpux* | solaris* | cygwin* | mingw* | windows* | msys*], + [gl_cv_func_calloc_0_nonnull="guessing yes"], + [# If we don't know, obey --enable-cross-guesses. + gl_cv_func_calloc_0_nonnull="$gl_cross_guess_normal"])])]) + AS_CASE([$gl_cv_func_calloc_0_nonnull], [*yes], [$1], [$2]) ]) @@ -65,7 +59,7 @@ AC_DEFUN([gl_FUNC_CALLOC_GNU], REPLACE_CALLOC_FOR_CALLOC_GNU="$REPLACE_CALLOC_FOR_CALLOC_POSIX" if test $REPLACE_CALLOC_FOR_CALLOC_GNU = 0; then - _AC_FUNC_CALLOC_IF([], [REPLACE_CALLOC_FOR_CALLOC_GNU=1]) + gl_FUNC_CALLOC_IF([], [REPLACE_CALLOC_FOR_CALLOC_GNU=1]) fi ])# gl_FUNC_CALLOC_GNU @@ -78,9 +72,7 @@ AC_DEFUN([gl_FUNC_CALLOC_POSIX], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MALLOC_POSIX]) - if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then - REPLACE_CALLOC_FOR_CALLOC_POSIX=1 - fi + REPLACE_CALLOC_FOR_CALLOC_POSIX=$REPLACE_MALLOC_FOR_MALLOC_POSIX dnl Although in theory we should also test for size_t overflow, dnl in practice testing for ptrdiff_t overflow suffices dnl since PTRDIFF_MAX <= SIZE_MAX on all known Gnulib porting targets. diff --git a/gnulib-m4/chdir-long.m4 b/gnulib-m4/chdir-long.m4 deleted file mode 100644 index 292c2c18..00000000 --- a/gnulib-m4/chdir-long.m4 +++ /dev/null @@ -1,30 +0,0 @@ -# chdir-long.m4 -# serial 17 -dnl Copyright (C) 2004-2007, 2009-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 with or without modifications, as long as this notice is preserved. - -# Use Gnulib's robust chdir function. -# It can handle arbitrarily long directory names, which means -# that when it is given the name of an existing directory, it -# never fails with ENAMETOOLONG. -# Arrange to compile chdir-long.c only on systems that define PATH_MAX. - -# Written by Jim Meyering. - -AC_DEFUN([gl_FUNC_CHDIR_LONG], -[ - AC_REQUIRE([gl_PATHMAX_SNIPPET_PREREQ]) - AC_CACHE_CHECK([whether this system supports file names of any length], - [gl_cv_have_unlimited_file_name_length], - [AC_EGREP_CPP([have_arbitrary_file_name_length_limit], - gl_PATHMAX_SNIPPET[ -#ifdef PATH_MAX -have_arbitrary_file_name_length_limit -#endif], - [gl_cv_have_unlimited_file_name_length=no], - [gl_cv_have_unlimited_file_name_length=yes])]) -]) - -AC_DEFUN([gl_PREREQ_CHDIR_LONG], [:]) diff --git a/gnulib-m4/close.m4 b/gnulib-m4/close.m4 index 88c37fab..314e321e 100644 --- a/gnulib-m4/close.m4 +++ b/gnulib-m4/close.m4 @@ -1,9 +1,10 @@ # close.m4 # serial 10 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_FUNC_CLOSE], [ diff --git a/gnulib-m4/closedir.m4 b/gnulib-m4/closedir.m4 deleted file mode 100644 index 111baf5f..00000000 --- a/gnulib-m4/closedir.m4 +++ /dev/null @@ -1,32 +0,0 @@ -# closedir.m4 -# serial 8 -dnl Copyright (C) 2011-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_FUNC_CLOSEDIR], -[ - AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) - AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles - - AC_CHECK_FUNCS([closedir]) - if test $ac_cv_func_closedir = no; then - HAVE_CLOSEDIR=0 - else - dnl Replace closedir() on native Windows and OS/2 kLIBC, - dnl to support fdopendir(). - AC_REQUIRE([gl_DIRENT_DIR]) - if test $DIR_HAS_FD_MEMBER = 0; then - REPLACE_CLOSEDIR=1 - fi - dnl Replace closedir() for supporting the gnulib-defined fchdir() function, - dnl to keep fchdir's bookkeeping up-to-date. - m4_ifdef([gl_FUNC_FCHDIR], [ - gl_TEST_FCHDIR - if test $HAVE_FCHDIR = 0; then - REPLACE_CLOSEDIR=1 - fi - ]) - fi -]) diff --git a/gnulib-m4/codeset.m4 b/gnulib-m4/codeset.m4 index e69b7402..6bed9dee 100644 --- a/gnulib-m4/codeset.m4 +++ b/gnulib-m4/codeset.m4 @@ -1,10 +1,11 @@ # codeset.m4 # serial 5 (gettext-0.18.2) -dnl Copyright (C) 2000-2002, 2006, 2008-2014, 2016, 2019-2024 Free Software +dnl Copyright (C) 2000-2002, 2006, 2008-2014, 2016, 2019-2025 Free Software dnl 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. diff --git a/gnulib-m4/ctype_h.m4 b/gnulib-m4/ctype_h.m4 index 79085e40..fec7c458 100644 --- a/gnulib-m4/ctype_h.m4 +++ b/gnulib-m4/ctype_h.m4 @@ -1,9 +1,10 @@ # ctype_h.m4 -# serial 9 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +# serial 23 +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_CTYPE_H], [ @@ -15,7 +16,9 @@ AC_DEFUN_ONCE([gl_CTYPE_H], dnl Check for declarations of anything we want to poison if the dnl corresponding gnulib module is not in use. gl_WARN_ON_USE_PREPARE([[#include <ctype.h> - ]], [isblank]) + ]], [isalnum_l isalpha_l isblank isblank_l iscntrl_l isdigit_l isgraph_l + islower_l isprint_l ispunct_l isspace_l isupper_l isxdigit_l + tolower_l toupper_l]) ]) # gl_CTYPE_MODULE_INDICATOR([modulename]) @@ -35,7 +38,21 @@ AC_DEFUN([gl_CTYPE_MODULE_INDICATOR], AC_DEFUN([gl_CTYPE_H_REQUIRE_DEFAULTS], [ m4_defun(GL_MODULE_INDICATOR_PREFIX[_CTYPE_H_MODULE_INDICATOR_DEFAULTS], [ + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISALNUM_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISALPHA_L]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISBLANK]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISBLANK_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISCNTRL_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISDIGIT_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISGRAPH_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISLOWER_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISPRINT_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISPUNCT_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISSPACE_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISUPPER_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISXDIGIT_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TOLOWER_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TOUPPER_L]) ]) m4_require(GL_MODULE_INDICATOR_PREFIX[_CTYPE_H_MODULE_INDICATOR_DEFAULTS]) AC_REQUIRE([gl_CTYPE_H_DEFAULTS]) @@ -44,5 +61,19 @@ AC_DEFUN([gl_CTYPE_H_REQUIRE_DEFAULTS], AC_DEFUN([gl_CTYPE_H_DEFAULTS], [ dnl Assume proper GNU behavior unless another module says otherwise. - HAVE_ISBLANK=1; AC_SUBST([HAVE_ISBLANK]) + HAVE_ISALNUM_L=1; AC_SUBST([HAVE_ISALNUM_L]) + HAVE_ISALPHA_L=1; AC_SUBST([HAVE_ISALPHA_L]) + HAVE_ISBLANK=1; AC_SUBST([HAVE_ISBLANK]) + HAVE_ISBLANK_L=1; AC_SUBST([HAVE_ISBLANK_L]) + HAVE_ISCNTRL_L=1; AC_SUBST([HAVE_ISCNTRL_L]) + HAVE_ISDIGIT_L=1; AC_SUBST([HAVE_ISDIGIT_L]) + HAVE_ISGRAPH_L=1; AC_SUBST([HAVE_ISGRAPH_L]) + HAVE_ISLOWER_L=1; AC_SUBST([HAVE_ISLOWER_L]) + HAVE_ISPRINT_L=1; AC_SUBST([HAVE_ISPRINT_L]) + HAVE_ISPUNCT_L=1; AC_SUBST([HAVE_ISPUNCT_L]) + HAVE_ISSPACE_L=1; AC_SUBST([HAVE_ISSPACE_L]) + HAVE_ISUPPER_L=1; AC_SUBST([HAVE_ISUPPER_L]) + HAVE_ISXDIGIT_L=1; AC_SUBST([HAVE_ISXDIGIT_L]) + HAVE_TOLOWER_L=1; AC_SUBST([HAVE_TOLOWER_L]) + HAVE_TOUPPER_L=1; AC_SUBST([HAVE_TOUPPER_L]) ]) diff --git a/gnulib-m4/d-ino.m4 b/gnulib-m4/d-ino.m4 deleted file mode 100644 index 40399372..00000000 --- a/gnulib-m4/d-ino.m4 +++ /dev/null @@ -1,59 +0,0 @@ -# d-ino.m4 -# serial 22 -dnl Copyright (C) 1997, 1999-2001, 2003-2004, 2006-2007, 2009-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 with or without modifications, as long as this notice is preserved. - -dnl From Jim Meyering. -dnl -dnl Check whether struct dirent has a member named d_ino. - -AC_DEFUN([gl_CHECK_TYPE_STRUCT_DIRENT_D_INO], - [AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles - AC_CACHE_CHECK([for d_ino member in directory struct], - [gl_cv_struct_dirent_d_ino], - [AC_RUN_IFELSE( - [AC_LANG_PROGRAM( - [[#include <sys/types.h> - #include <sys/stat.h> - #include <dirent.h> - ]], - [[DIR *dp = opendir ("."); - struct dirent *e; - struct stat st; - if (! dp) - return 1; - e = readdir (dp); - if (! e) - { closedir (dp); return 2; } - if (lstat (e->d_name, &st) != 0) - { closedir (dp); return 3; } - if (e->d_ino != st.st_ino) - { closedir (dp); return 4; } - closedir (dp); - return 0; - ]])], - [gl_cv_struct_dirent_d_ino=yes], - [gl_cv_struct_dirent_d_ino=no], - [case "$host_os" in - # Guess yes on glibc systems with Linux kernel. - linux*-gnu*) gl_cv_struct_dirent_d_ino="guessing yes" ;; - # Guess yes on musl systems with Linux kernel. - linux*-musl*) gl_cv_struct_dirent_d_ino="guessing yes" ;; - # Guess yes on systems that emulate the Linux system calls. - midipix*) gl_cv_struct_dirent_d_ino="guessing yes" ;; - # Guess no on native Windows. - mingw* | windows*) gl_cv_struct_dirent_d_ino="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_struct_dirent_d_ino="$gl_cross_guess_normal" ;; - esac - ])]) - case "$gl_cv_struct_dirent_d_ino" in - *yes) - AC_DEFINE([D_INO_IN_DIRENT], [1], - [Define if struct dirent has a member d_ino that actually works.]) - ;; - esac - ] -) diff --git a/gnulib-m4/dirent_h.m4 b/gnulib-m4/dirent_h.m4 deleted file mode 100644 index 037ae369..00000000 --- a/gnulib-m4/dirent_h.m4 +++ /dev/null @@ -1,98 +0,0 @@ -# dirent_h.m4 -# serial 22 -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 with or without modifications, as long as this notice is preserved. - -dnl Written by Bruno Haible. - -AC_DEFUN_ONCE([gl_DIRENT_H], -[ - dnl Ensure to expand the default settings once only, before all statements - dnl that occur in other macros. - AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) - - dnl <dirent.h> is always overridden, because of GNULIB_POSIXCHECK. - gl_CHECK_NEXT_HEADERS([dirent.h]) - if test $ac_cv_header_dirent_h = yes; then - HAVE_DIRENT_H=1 - else - HAVE_DIRENT_H=0 - fi - AC_SUBST([HAVE_DIRENT_H]) - - gl_DIRENT_DIR - - dnl Check for declarations of anything we want to poison if the - dnl corresponding gnulib module is not in use. - gl_WARN_ON_USE_PREPARE([[#include <dirent.h> - ]], [alphasort closedir dirfd fdopendir opendir readdir rewinddir scandir]) -]) - -dnl Determine whether <dirent.h> needs to override the DIR type. -AC_DEFUN_ONCE([gl_DIRENT_DIR], -[ - dnl Set DIR_HAS_FD_MEMBER if dirfd() works, i.e. not always returns -1. - dnl We could use the findings from gl_FUNC_DIRFD and gl_PREREQ_DIRFD, but - dnl it's simpler since we know the affected platforms. - AC_REQUIRE([AC_CANONICAL_HOST]) - case "$host_os" in - mingw* | windows* | os2*) DIR_HAS_FD_MEMBER=0 ;; - *) DIR_HAS_FD_MEMBER=1 ;; - esac - AC_SUBST([DIR_HAS_FD_MEMBER]) -]) - -# gl_DIRENT_MODULE_INDICATOR([modulename]) -# sets the shell variable that indicates the presence of the given module -# to a C preprocessor expression that will evaluate to 1. -# This macro invocation must not occur in macros that are AC_REQUIREd. -AC_DEFUN([gl_DIRENT_MODULE_INDICATOR], -[ - dnl Ensure to expand the default settings once only. - gl_DIRENT_H_REQUIRE_DEFAULTS - gl_MODULE_INDICATOR_SET_VARIABLE([$1]) - dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR_FOR_TESTS([$1]) -]) - -# Initializes the default values for AC_SUBSTed shell variables. -# This macro must not be AC_REQUIREd. It must only be invoked, and only -# outside of macros or in macros that are not AC_REQUIREd. -AC_DEFUN([gl_DIRENT_H_REQUIRE_DEFAULTS], -[ - m4_defun(GL_MODULE_INDICATOR_PREFIX[_DIRENT_H_MODULE_INDICATOR_DEFAULTS], [ - gl_UNISTD_H_REQUIRE_DEFAULTS dnl for REPLACE_FCHDIR - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_OPENDIR]) - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_READDIR]) - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REWINDDIR]) - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CLOSEDIR]) - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_DIRFD]) - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FDOPENDIR]) - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SCANDIR]) - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ALPHASORT]) - ]) - m4_require(GL_MODULE_INDICATOR_PREFIX[_DIRENT_H_MODULE_INDICATOR_DEFAULTS]) - AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) -]) - -AC_DEFUN([gl_DIRENT_H_DEFAULTS], -[ - dnl Assume proper GNU behavior unless another module says otherwise. - HAVE_OPENDIR=1; AC_SUBST([HAVE_OPENDIR]) - HAVE_READDIR=1; AC_SUBST([HAVE_READDIR]) - HAVE_REWINDDIR=1; AC_SUBST([HAVE_REWINDDIR]) - HAVE_CLOSEDIR=1; AC_SUBST([HAVE_CLOSEDIR]) - HAVE_DECL_DIRFD=1; AC_SUBST([HAVE_DECL_DIRFD]) - HAVE_DECL_FDOPENDIR=1;AC_SUBST([HAVE_DECL_FDOPENDIR]) - HAVE_FDOPENDIR=1; AC_SUBST([HAVE_FDOPENDIR]) - HAVE_SCANDIR=1; AC_SUBST([HAVE_SCANDIR]) - HAVE_ALPHASORT=1; AC_SUBST([HAVE_ALPHASORT]) - REPLACE_OPENDIR=0; AC_SUBST([REPLACE_OPENDIR]) - REPLACE_READDIR=0; AC_SUBST([REPLACE_READDIR]) - REPLACE_REWINDDIR=0; AC_SUBST([REPLACE_REWINDDIR]) - REPLACE_CLOSEDIR=0; AC_SUBST([REPLACE_CLOSEDIR]) - REPLACE_DIRFD=0; AC_SUBST([REPLACE_DIRFD]) - REPLACE_FDOPENDIR=0; AC_SUBST([REPLACE_FDOPENDIR]) -]) diff --git a/gnulib-m4/dirfd.m4 b/gnulib-m4/dirfd.m4 deleted file mode 100644 index 605cb706..00000000 --- a/gnulib-m4/dirfd.m4 +++ /dev/null @@ -1,88 +0,0 @@ -# dirfd.m4 -# serial 30 -*- Autoconf -*- -dnl Copyright (C) 2001-2006, 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 with or without modifications, as long as this notice is preserved. - -dnl Find out how to get the file descriptor associated with an open DIR*. - -dnl From Jim Meyering - -AC_DEFUN([gl_FUNC_DIRFD], -[ - AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) - AC_REQUIRE([AC_CANONICAL_HOST]) - - dnl Persuade glibc <dirent.h> to declare dirfd(). - AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) - - AC_CHECK_FUNCS([dirfd]) - AC_CHECK_DECLS([dirfd], , , - [[#include <sys/types.h> - #include <dirent.h>]]) - if test $ac_cv_have_decl_dirfd = no; then - HAVE_DECL_DIRFD=0 - fi - - AC_CACHE_CHECK([whether dirfd is a macro], - [gl_cv_func_dirfd_macro], - [AC_EGREP_CPP([dirent_header_defines_dirfd], [ -#include <sys/types.h> -#include <dirent.h> -#ifdef dirfd - dirent_header_defines_dirfd -#endif], - [gl_cv_func_dirfd_macro=yes], - [gl_cv_func_dirfd_macro=no])]) - - if test $ac_cv_func_dirfd = no && test $gl_cv_func_dirfd_macro = no; then - HAVE_DIRFD=0 - else - HAVE_DIRFD=1 - dnl Replace dirfd() on native Windows and OS/2 kLIBC, - dnl to support fdopendir(). - AC_REQUIRE([gl_DIRENT_DIR]) - if test $DIR_HAS_FD_MEMBER = 0; then - REPLACE_DIRFD=1 - fi - fi -]) - -dnl Prerequisites of lib/dirfd.c. -AC_DEFUN([gl_PREREQ_DIRFD], -[ - AC_CACHE_CHECK([how to get the file descriptor associated with an open DIR*], - [gl_cv_sys_dir_fd_member_name], - [ - gl_saved_CFLAGS=$CFLAGS - for ac_expr in d_fd dd_fd; do - - CFLAGS="$CFLAGS -DDIR_FD_MEMBER_NAME=$ac_expr" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - #include <sys/types.h> - #include <dirent.h>]], - [[DIR *dir_p = opendir("."); (void) dir_p->DIR_FD_MEMBER_NAME;]])], - [dir_fd_found=yes] - ) - CFLAGS=$gl_saved_CFLAGS - test "$dir_fd_found" = yes && break - done - test "$dir_fd_found" = yes || ac_expr=no_such_member - - gl_cv_sys_dir_fd_member_name=$ac_expr - ] - ) - if test $gl_cv_sys_dir_fd_member_name != no_such_member; then - AC_DEFINE_UNQUOTED([DIR_FD_MEMBER_NAME], - [$gl_cv_sys_dir_fd_member_name], - [the name of the file descriptor member of DIR]) - fi - AH_VERBATIM([DIR_TO_FD], - [#ifdef DIR_FD_MEMBER_NAME -# define DIR_TO_FD(Dir_p) ((Dir_p)->DIR_FD_MEMBER_NAME) -#else -# define DIR_TO_FD(Dir_p) -1 -#endif -]) -]) diff --git a/gnulib-m4/double-slash-root.m4 b/gnulib-m4/double-slash-root.m4 index 3437c699..5c40b73c 100644 --- a/gnulib-m4/double-slash-root.m4 +++ b/gnulib-m4/double-slash-root.m4 @@ -1,9 +1,10 @@ # double-slash-root.m4 # serial 4 -*- Autoconf -*- -dnl Copyright (C) 2006, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_DOUBLE_SLASH_ROOT], [ diff --git a/gnulib-m4/dup.m4 b/gnulib-m4/dup.m4 deleted file mode 100644 index b3d74d68..00000000 --- a/gnulib-m4/dup.m4 +++ /dev/null @@ -1,55 +0,0 @@ -# dup.m4 -# serial 8 -dnl Copyright (C) 2011-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_FUNC_DUP], -[ - AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) - AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles - m4_ifdef([gl_MSVC_INVAL], [ - AC_REQUIRE([gl_MSVC_INVAL]) - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - REPLACE_DUP=1 - fi - ]) - dnl Replace dup() for supporting the gnulib-defined fchdir() function, - dnl to keep fchdir's bookkeeping up-to-date. - m4_ifdef([gl_FUNC_FCHDIR], [ - gl_TEST_FCHDIR - if test $HAVE_FCHDIR = 0; then - REPLACE_DUP=1 - fi - ]) - AC_CACHE_CHECK([whether dup works], [gl_cv_func_dup_works], - [AC_RUN_IFELSE( - [AC_LANG_PROGRAM([[#include <unistd.h> - #include <fcntl.h> - #include <errno.h> - ]GL_MDA_DEFINES], - [[/* On OS/2 kLIBC, dup does not work on a directory fd. */ - int fd = open (".", O_RDONLY); - return fd < 0 ? 1 : dup (fd) < 0 ? 2 : 0; - ]]) - ], - [gl_cv_func_dup_works=yes], - [gl_cv_func_dup_works=no], - [case "$host_os" in - # Guess no on native Windows. - mingw* | windows*) gl_cv_func_dup_works="guessing no" ;; - *) gl_cv_func_dup_works="guessing yes" ;; - esac - ]) - ]) - case "$gl_cv_func_dup_works" in - *yes) ;; - *) - REPLACE_DUP=1 - ;; - esac -]) - -# Prerequisites of lib/dup.c. -AC_DEFUN([gl_PREREQ_DUP], [:]) diff --git a/gnulib-m4/dup2.m4 b/gnulib-m4/dup2.m4 index 786121fd..5da3a0b9 100644 --- a/gnulib-m4/dup2.m4 +++ b/gnulib-m4/dup2.m4 @@ -1,9 +1,10 @@ # dup2.m4 # serial 28 -dnl Copyright (C) 2002, 2005, 2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2002, 2005, 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_DUP2], [ diff --git a/gnulib-m4/eealloc.m4 b/gnulib-m4/eealloc.m4 deleted file mode 100644 index 8a15e705..00000000 --- a/gnulib-m4/eealloc.m4 +++ /dev/null @@ -1,32 +0,0 @@ -# eealloc.m4 -# serial 3 -dnl Copyright (C) 2003, 2009-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_EEALLOC], -[ - AC_REQUIRE([gl_EEMALLOC]) - AC_REQUIRE([gl_EEREALLOC]) -]) - -AC_DEFUN([gl_EEMALLOC], -[ - _AC_FUNC_MALLOC_IF( - [gl_cv_func_malloc_0_nonnull=1], - [gl_cv_func_malloc_0_nonnull=0]) - AC_DEFINE_UNQUOTED([MALLOC_0_IS_NONNULL], [$gl_cv_func_malloc_0_nonnull], - [If malloc(0) is != NULL, define this to 1. Otherwise define this - to 0.]) -]) - -AC_DEFUN([gl_EEREALLOC], -[ - _AC_FUNC_REALLOC_IF( - [gl_cv_func_realloc_0_nonnull=1], - [gl_cv_func_realloc_0_nonnull=0]) - AC_DEFINE_UNQUOTED([REALLOC_0_IS_NONNULL], [$gl_cv_func_realloc_0_nonnull], - [If realloc(NULL,0) is != NULL, define this to 1. Otherwise define this - to 0.]) -]) diff --git a/gnulib-m4/environ.m4 b/gnulib-m4/environ.m4 index 107960b2..e0690e54 100644 --- a/gnulib-m4/environ.m4 +++ b/gnulib-m4/environ.m4 @@ -1,9 +1,10 @@ # environ.m4 # serial 8 -dnl Copyright (C) 2001-2004, 2006-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2004, 2006-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_ENVIRON], [ diff --git a/gnulib-m4/errno_h.m4 b/gnulib-m4/errno_h.m4 index 920ea6cc..623cb7b2 100644 --- a/gnulib-m4/errno_h.m4 +++ b/gnulib-m4/errno_h.m4 @@ -1,9 +1,10 @@ # errno_h.m4 -# serial 18 -dnl Copyright (C) 2004, 2006, 2008-2024 Free Software Foundation, Inc. +# serial 19 +dnl Copyright (C) 2004, 2006, 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_PREREQ([2.61]) @@ -82,59 +83,4 @@ booboo gl_NEXT_HEADERS([errno.h]) GL_GENERATE_ERRNO_H=true fi - gl_REPLACE_ERRNO_VALUE([EMULTIHOP]) - gl_REPLACE_ERRNO_VALUE([ENOLINK]) - gl_REPLACE_ERRNO_VALUE([EOVERFLOW]) -]) - -# Assuming $1 = EOVERFLOW. -# The EOVERFLOW errno value ought to be defined in <errno.h>, according to -# POSIX. But some systems (like OpenBSD 4.0 or AIX 3) don't define it, and -# some systems (like OSF/1) define it when _XOPEN_SOURCE_EXTENDED is defined. -# Check for the value of EOVERFLOW. -# Set the variables EOVERFLOW_HIDDEN and EOVERFLOW_VALUE. -AC_DEFUN([gl_REPLACE_ERRNO_VALUE], -[ - if $GL_GENERATE_ERRNO_H; then - AC_CACHE_CHECK([for ]$1[ value], [gl_cv_header_errno_h_]$1, [ - AC_EGREP_CPP([yes],[ -#include <errno.h> -#ifdef ]$1[ -yes -#endif - ], - [gl_cv_header_errno_h_]$1[=yes], - [gl_cv_header_errno_h_]$1[=no]) - if test $gl_cv_header_errno_h_]$1[ = no; then - AC_EGREP_CPP([yes],[ -#define _XOPEN_SOURCE_EXTENDED 1 -#include <errno.h> -#ifdef ]$1[ -yes -#endif - ], [gl_cv_header_errno_h_]$1[=hidden]) - if test $gl_cv_header_errno_h_]$1[ = hidden; then - dnl The macro exists but is hidden. - dnl Define it to the same value. - AC_COMPUTE_INT([gl_cv_header_errno_h_]$1, $1, [ -#define _XOPEN_SOURCE_EXTENDED 1 -#include <errno.h> -/* The following two lines are a workaround against an autoconf-2.52 bug. */ -#include <stdio.h> -#include <stdlib.h> -]) - fi - fi - ]) - case $gl_cv_header_errno_h_]$1[ in - yes | no) - ]$1[_HIDDEN=0; ]$1[_VALUE= - ;; - *) - ]$1[_HIDDEN=1; ]$1[_VALUE="$gl_cv_header_errno_h_]$1[" - ;; - esac - AC_SUBST($1[_HIDDEN]) - AC_SUBST($1[_VALUE]) - fi ]) diff --git a/gnulib-m4/error.m4 b/gnulib-m4/error.m4 index 273b636b..1572250a 100644 --- a/gnulib-m4/error.m4 +++ b/gnulib-m4/error.m4 @@ -1,9 +1,11 @@ # error.m4 # serial 16 -dnl Copyright (C) 1996-1998, 2001-2004, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 1996-1998, 2001-2004, 2009-2025 Free Software Foundation, +dnl 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_ERROR], [ diff --git a/gnulib-m4/error_h.m4 b/gnulib-m4/error_h.m4 index 91a8fc68..4ef5cbff 100644 --- a/gnulib-m4/error_h.m4 +++ b/gnulib-m4/error_h.m4 @@ -1,9 +1,10 @@ # error_h.m4 # serial 5 -dnl Copyright (C) 1996-2024 Free Software Foundation, Inc. +dnl Copyright (C) 1996-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. dnl Provide a working <error.h>. diff --git a/gnulib-m4/exponentd.m4 b/gnulib-m4/exponentd.m4 index db597afc..08e93397 100644 --- a/gnulib-m4/exponentd.m4 +++ b/gnulib-m4/exponentd.m4 @@ -1,9 +1,10 @@ # exponentd.m4 -# serial 4 -dnl Copyright (C) 2007-2008, 2010-2024 Free Software Foundation, Inc. +# serial 5 +dnl Copyright (C) 2007-2008, 2010-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_DOUBLE_EXPONENT_LOCATION], [ AC_CACHE_CHECK([where to find the exponent in a 'double'], @@ -84,7 +85,7 @@ int main () dnl The newer VFP instructions assume little-endian order dnl consistently. AC_EGREP_CPP([mixed_endianness], [ -#if defined arm || defined __arm || defined __arm__ +#if defined __arm__ mixed_endianness #endif ], diff --git a/gnulib-m4/exponentf.m4 b/gnulib-m4/exponentf.m4 index 55d875d4..be2deb5c 100644 --- a/gnulib-m4/exponentf.m4 +++ b/gnulib-m4/exponentf.m4 @@ -1,9 +1,10 @@ # exponentf.m4 # serial 3 -dnl Copyright (C) 2007-2008, 2010-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2008, 2010-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_FLOAT_EXPONENT_LOCATION], [ AC_CACHE_CHECK([where to find the exponent in a 'float'], diff --git a/gnulib-m4/exponentl.m4 b/gnulib-m4/exponentl.m4 index eb7fcb44..f4d0923e 100644 --- a/gnulib-m4/exponentl.m4 +++ b/gnulib-m4/exponentl.m4 @@ -1,9 +1,10 @@ # exponentl.m4 -# serial 7 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 8 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_LONG_DOUBLE_EXPONENT_LOCATION], [ AC_REQUIRE([gl_BIGENDIAN]) @@ -80,24 +81,111 @@ int main () [gl_cv_cc_long_double_expbit0="unknown"], [ dnl When cross-compiling, in general we don't know. It depends on the - dnl ABI and compiler version. There are too many cases. - gl_cv_cc_long_double_expbit0="unknown" - case "$host_os" in - mingw* | windows*) - # On native Windows (little-endian), we know the result - # in two cases: mingw, MSVC. - AC_EGREP_CPP([Known], [ -#ifdef __MINGW32__ - Known -#endif - ], [gl_cv_cc_long_double_expbit0="word 2 bit 0"]) - AC_EGREP_CPP([Known], [ -#ifdef _MSC_VER - Known -#endif - ], [gl_cv_cc_long_double_expbit0="word 1 bit 20"]) - ;; - esac + dnl ABI and compiler version. But we know the results for specific + dnl CPUs. + AC_REQUIRE([gl_LONG_DOUBLE_VS_DOUBLE]) + if test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 1; then + gl_DOUBLE_EXPONENT_LOCATION + gl_cv_cc_long_double_expbit0="$gl_cv_cc_double_expbit0" + if test "$gl_cv_cc_double_expbit0" = unknown; then + case "$host_cpu" in + arm*) + # See the comments in exponentd.m4. + ;; + aarch64 | sh4) + # little-endian IEEE 754 double-precision + gl_cv_cc_long_double_expbit0='word 1 bit 20' + ;; + hppa*) + # big-endian IEEE 754 double-precision + gl_cv_cc_long_double_expbit0='word 0 bit 20' + ;; + mips*) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[ + #if defined _MIPSEB /* equivalent: __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ */ + int big; + #else + #error little + #endif + ]], [[]]) + ], + [# big-endian IEEE 754 double-precision + gl_cv_cc_long_double_expbit0='word 0 bit 20' + ], + [# little-endian IEEE 754 double-precision + gl_cv_cc_long_double_expbit0='word 1 bit 20' + ]) + ;; + esac + fi + else + case "$host_cpu" in +changequote(,)dnl + i[34567]86 | x86_64 | ia64*) +changequote([,])dnl + # 80-bits "extended precision" + gl_cv_cc_long_double_expbit0='word 2 bit 0' + ;; + m68k*) + # big-endian, 80-bits padded to 96 bits, non-IEEE exponent + gl_cv_cc_long_double_expbit0='word 0 bit 16' + ;; + alpha* | aarch64 | loongarch64 | riscv32 | riscv64 | sh4) + # little-endian IEEE 754 quadruple-precision + gl_cv_cc_long_double_expbit0='word 3 bit 16' + ;; + s390* | sparc | sparc64) + # big-endian IEEE 754 quadruple-precision + gl_cv_cc_long_double_expbit0='word 0 bit 16' + ;; + arm*) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[ + #if defined _ARMEL + int little; + #else + #error big + #endif + ]], [[]]) + ], + [# little-endian IEEE 754 quadruple-precision + gl_cv_cc_long_double_expbit0='word 3 bit 16' + ], + [# big-endian IEEE 754 quadruple-precision + gl_cv_cc_long_double_expbit0='word 0 bit 16' + ]) + ;; + mips*) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[ + #if defined _MIPSEB /* equivalent: __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ */ + int big; + #else + #error little + #endif + ]], [[]]) + ], + [# big-endian IEEE 754 quadruple-precision + gl_cv_cc_long_double_expbit0='word 0 bit 16' + ], + [# little-endian IEEE 754 quadruple-precision + gl_cv_cc_long_double_expbit0='word 3 bit 16' + ]) + ;; + powerpc64le) + # little-endian double-double + gl_cv_cc_long_double_expbit0='word 1 bit 20' + ;; + powerpc* | rs6000) + # big-endian double-double + gl_cv_cc_long_double_expbit0='word 0 bit 20' + ;; + *) + gl_cv_cc_long_double_expbit0="unknown" + ;; + esac + fi ]) rm -f conftest.out ]) diff --git a/gnulib-m4/extensions-aix.m4 b/gnulib-m4/extensions-aix.m4 index 990a7ac3..08b703b4 100644 --- a/gnulib-m4/extensions-aix.m4 +++ b/gnulib-m4/extensions-aix.m4 @@ -1,9 +1,10 @@ # extensions-aix.m4 # serial 1 -dnl Copyright (C) 2024 Free Software Foundation, Inc. +dnl Copyright (C) 2024-2025 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. +dnl This file is offered as-is, without any warranty. # On AIX, most extensions are already enabled through the _ALL_SOURCE macro, # defined by gl_USE_SYSTEM_EXTENSIONS. gl_USE_AIX_EXTENSIONS additionally diff --git a/gnulib-m4/extensions.m4 b/gnulib-m4/extensions.m4 index 1fb68956..76516bce 100644 --- a/gnulib-m4/extensions.m4 +++ b/gnulib-m4/extensions.m4 @@ -1,9 +1,10 @@ # extensions.m4 # serial 25 -*- Autoconf -*- -dnl Copyright (C) 2003, 2006-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2006-2025 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. +dnl This file is offered as-is, without any warranty. # Enable extensions on systems that normally disable them. diff --git a/gnulib-m4/extern-inline.m4 b/gnulib-m4/extern-inline.m4 index 547da82a..820fbda5 100644 --- a/gnulib-m4/extern-inline.m4 +++ b/gnulib-m4/extern-inline.m4 @@ -1,9 +1,10 @@ # extern-inline.m4 -# serial 1 -dnl Copyright 2012-2024 Free Software Foundation, Inc. +# serial 2 +dnl Copyright 2012-2025 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. +dnl This file is offered as-is, without any warranty. dnl 'extern inline' a la ISO C99. @@ -42,9 +43,11 @@ AC_DEFUN([gl_EXTERN_INLINE], functions or macros in standard C headers like <ctype.h>. For example, if isdigit is mistakenly implemented via a static inline function, a program containing an extern inline function that calls isdigit - may not work since the C standard prohibits extern inline functions - from calling static functions (ISO C 99 section 6.7.4.(3). - This bug is known to occur on: + may not work since C99 through C23 prohibit extern inline functions + from calling static functions (ISO C 23 section 6.7.5.(2)). + Although a future C standard will likely relax this restriction + <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3622.txt>, + respect it for now. This bug is known to occur on: OS X 10.8 and earlier; see: https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html @@ -111,8 +114,8 @@ AC_DEFUN([gl_EXTERN_INLINE], suppress bogus "no previous prototype for 'FOO'" and "no previous declaration for 'FOO'" diagnostics, when FOO is an inline function in the header; see - <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and - <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>. */ + <https://gcc.gnu.org/PR54113> and + <https://gcc.gnu.org/PR63877>. */ #if __GNUC__ == 4 && 6 <= __GNUC_MINOR__ # if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ # define _GL_INLINE_HEADER_CONST_PRAGMA diff --git a/gnulib-m4/fchdir.m4 b/gnulib-m4/fchdir.m4 deleted file mode 100644 index 7eb12c2e..00000000 --- a/gnulib-m4/fchdir.m4 +++ /dev/null @@ -1,77 +0,0 @@ -# fchdir.m4 -# serial 32 -dnl Copyright (C) 2006-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_FUNC_FCHDIR], -[ - AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) - AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) - AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles - - AC_CHECK_DECLS_ONCE([fchdir]) - if test $ac_cv_have_decl_fchdir = no; then - HAVE_DECL_FCHDIR=0 - fi - - AC_REQUIRE([gl_TEST_FCHDIR]) - if test $HAVE_FCHDIR = 1; then - AC_REQUIRE([gl_DIRENT_DIR]) - if test $DIR_HAS_FD_MEMBER = 0; then - dnl fchdir() should be replaced if dirfd() does not work. - REPLACE_FCHDIR=1 - fi - fi - - if test $HAVE_FCHDIR = 0 || test $REPLACE_FCHDIR = 1; then - AC_DEFINE([REPLACE_FCHDIR], [1], - [Define to 1 if gnulib's fchdir() replacement is used.]) - dnl We must also replace anything that can manipulate a directory fd, - dnl to keep our bookkeeping up-to-date. We don't have to replace - dnl fstatat, since no platform has fstatat but lacks fchdir. - AC_CACHE_CHECK([whether open can visit directories], - [gl_cv_func_open_directory_works], - [AC_RUN_IFELSE( - [AC_LANG_PROGRAM( - [[#include <fcntl.h> - ]GL_MDA_DEFINES], - [[return open(".", O_RDONLY) < 0;]])], - [gl_cv_func_open_directory_works=yes], - [gl_cv_func_open_directory_works=no], - [case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_open_directory_works="guessing yes" ;; - # Guess yes on systems that emulate the Linux system calls. - midipix*) gl_cv_func_open_directory_works="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_open_directory_works="guessing yes" ;; - # Guess no on native Windows. - mingw* | windows*) gl_cv_func_open_directory_works="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_open_directory_works="$gl_cross_guess_normal" ;; - esac - ])]) - case "$gl_cv_func_open_directory_works" in - *yes) ;; - *) - AC_DEFINE([REPLACE_OPEN_DIRECTORY], [1], [Define to 1 if open() should -work around the inability to open a directory.]) - ;; - esac - fi -]) - -# Determine whether to use the overrides in lib/fchdir.c. -AC_DEFUN([gl_TEST_FCHDIR], -[ - AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) - AC_CHECK_FUNCS_ONCE([fchdir]) - if test $ac_cv_func_fchdir = no; then - HAVE_FCHDIR=0 - fi -]) - -# Prerequisites of lib/fchdir.c. -AC_DEFUN([gl_PREREQ_FCHDIR], [:]) diff --git a/gnulib-m4/fcntl-o.m4 b/gnulib-m4/fcntl-o.m4 index 43aa1325..8020c481 100644 --- a/gnulib-m4/fcntl-o.m4 +++ b/gnulib-m4/fcntl-o.m4 @@ -1,15 +1,17 @@ # fcntl-o.m4 -# serial 8 -dnl Copyright (C) 2006, 2009-2024 Free Software Foundation, Inc. +# serial 12 +dnl Copyright (C) 2006, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl Written by Paul Eggert. AC_PREREQ([2.60]) -# Test whether the flags O_NOATIME and O_NOFOLLOW actually work. +# Test whether the flags O_DIRECTORY, O_NOATIME and O_NOFOLLOW actually work. +# Define HAVE_WORKING_O_DIRECTORY to 1 if O_DIRECTORY works, or to 0 otherwise. # Define HAVE_WORKING_O_NOATIME to 1 if O_NOATIME works, or to 0 otherwise. # Define HAVE_WORKING_O_NOFOLLOW to 1 if O_NOFOLLOW works, or to 0 otherwise. AC_DEFUN([gl_FCNTL_O_FLAGS], @@ -30,16 +32,23 @@ AC_DEFUN([gl_FCNTL_O_FLAGS], #else /* on Windows with MSVC */ # include <io.h> # include <stdlib.h> - # defined sleep(n) _sleep ((n) * 1000) + # define sleep(n) _sleep ((n) * 1000) #endif + #include <errno.h> #include <fcntl.h> ]GL_MDA_DEFINES[ + #ifndef O_DIRECTORY + #define O_DIRECTORY 0 + #endif #ifndef O_NOATIME #define O_NOATIME 0 #endif #ifndef O_NOFOLLOW #define O_NOFOLLOW 0 #endif + #ifndef O_SEARCH + #define O_SEARCH O_RDONLY + #endif static int const constants[] = { O_CREAT, O_EXCL, O_NOCTTY, O_TRUNC, O_APPEND, @@ -52,31 +61,38 @@ AC_DEFUN([gl_FCNTL_O_FLAGS], { static char const sym[] = "conftest.sym"; if (symlink ("/dev/null", sym) != 0) - result |= 2; + result |= 1; else { int fd = open (sym, O_WRONLY | O_NOFOLLOW | O_CREAT, 0); if (fd >= 0) { close (fd); - result |= 4; + result |= 3; } } if (unlink (sym) != 0 || symlink (".", sym) != 0) - result |= 2; + result |= 1; else { int fd = open (sym, O_RDONLY | O_NOFOLLOW); if (fd >= 0) { close (fd); - result |= 4; + result |= 3; } } unlink (sym); } #endif { + int fd = open ("confdefs.h", O_SEARCH | O_DIRECTORY); + if (!(fd < 0 && errno == ENOTDIR)) + result |= 4; + if (0 <= fd) + close (fd); + } + { static char const file[] = "confdefs.h"; int fd = open (file, O_RDONLY | O_NOATIME); if (fd < 0) @@ -111,31 +127,46 @@ AC_DEFUN([gl_FCNTL_O_FLAGS], } return result;]])], [gl_cv_header_working_fcntl_h=yes], - [case $? in #( - 4) gl_cv_header_working_fcntl_h='no (bad O_NOFOLLOW)';; #( - 64) gl_cv_header_working_fcntl_h='no (bad O_NOATIME)';; #( - 68) gl_cv_header_working_fcntl_h='no (bad O_NOATIME, O_NOFOLLOW)';; #( - *) gl_cv_header_working_fcntl_h='no';; - esac], - [case "$host_os" in - # Guess 'no' on native Windows. - mingw* | windows*) gl_cv_header_working_fcntl_h='no' ;; - *) gl_cv_header_working_fcntl_h=cross-compiling ;; - esac - ]) - ]) + [AS_CASE([$?], + dnl We cannot catch exit code 1 or 2 here, because + dnl - exit code 1 can occur through a compilation error on mingw (e.g. + dnl when O_NOCTTY, O_NONBLOCK, O_SYNC are not defined) or when + dnl result = 1, whereas + dnl - exit code 2 can occur through a compilation error on MSVC (e.g. + dnl again when O_NOCTTY, O_NONBLOCK, O_SYNC are not defined) or when + dnl result = 2. + [ 3], [gl_cv_header_working_fcntl_h="no (bad O_NOFOLLOW)"], + [ 4], [gl_cv_header_working_fcntl_h="no (bad O_DIRECTORY)"], + [ 7], [gl_cv_header_working_fcntl_h="no (bad O_NOFOLLOW, O_DIRECTORY)"], + [64], [gl_cv_header_working_fcntl_h="no (bad O_NOATIME)"], + [67], [gl_cv_header_working_fcntl_h="no (bad O_NOFOLLOW, O_NOATIME)"], + [68], [gl_cv_header_working_fcntl_h="no (bad O_DIRECTORY, O_NOATIME)"], + [71], [gl_cv_header_working_fcntl_h="no (bad O_NOFOLLOW, O_DIRECTORY, O_NOATIME)"], + [gl_cv_header_working_fcntl_h="no"])], + [AS_CASE([$host_os,$gl_cross_guess_normal], + # The O_DIRECTORY test is known to fail on Mac OS X 10.4.11 (2007) + # (see <https://bugs.gnu.org/78509#95>) + # and to succeed on Mac OS X 10.5.8 [darwin9.8.0] (2009). + # Guess it fails on Mac OS X 10.4.x and earlier. + [darwin[[0-8]].*yes], + [gl_cv_header_working_fcntl_h="guessing no (bad O_DIRECTORY)"], + # Known to be "no" on native MS-Windows. + [mingw* | windows*], + [gl_cv_header_working_fcntl_h=no], + [gl_cv_header_working_fcntl_h=$gl_cross_guess_normal])])]) + + AS_CASE([$gl_cv_header_working_fcntl_h], + [*O_DIRECTORY* | *no], [gl_val=0], [gl_val=1]) + AC_DEFINE_UNQUOTED([HAVE_WORKING_O_DIRECTORY], [$gl_val], + [Define to 1 if O_DIRECTORY works, 0 otherwise.]) - case $gl_cv_header_working_fcntl_h in #( - *O_NOATIME* | no | cross-compiling) ac_val=0;; #( - *) ac_val=1;; - esac - AC_DEFINE_UNQUOTED([HAVE_WORKING_O_NOATIME], [$ac_val], - [Define to 1 if O_NOATIME works.]) + AS_CASE([$gl_cv_header_working_fcntl_h], + [*O_NOATIME* | *no], [gl_val=0], [gl_val=1]) + AC_DEFINE_UNQUOTED([HAVE_WORKING_O_NOATIME], [$gl_val], + [Define to 1 if O_NOATIME works, 0 otherwise.]) - case $gl_cv_header_working_fcntl_h in #( - *O_NOFOLLOW* | no | cross-compiling) ac_val=0;; #( - *) ac_val=1;; - esac - AC_DEFINE_UNQUOTED([HAVE_WORKING_O_NOFOLLOW], [$ac_val], - [Define to 1 if O_NOFOLLOW works.]) + AS_CASE([$gl_cv_header_working_fcntl_h], + [*O_NOFOLLOW* | *no], [gl_val=0], [gl_val=1]) + AC_DEFINE_UNQUOTED([HAVE_WORKING_O_NOFOLLOW], [$gl_val], + [Define to 1 if O_NOFOLLOW works, 0 otherwise.]) ]) diff --git a/gnulib-m4/fcntl.m4 b/gnulib-m4/fcntl.m4 index f6d0f377..08ab936f 100644 --- a/gnulib-m4/fcntl.m4 +++ b/gnulib-m4/fcntl.m4 @@ -1,9 +1,10 @@ # fcntl.m4 # serial 12 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. # For now, this module ensures that fcntl() # - supports F_DUPFD correctly diff --git a/gnulib-m4/fcntl_h.m4 b/gnulib-m4/fcntl_h.m4 index b69f7a0c..1c9f9cce 100644 --- a/gnulib-m4/fcntl_h.m4 +++ b/gnulib-m4/fcntl_h.m4 @@ -1,9 +1,10 @@ # fcntl_h.m4 # serial 20 -dnl Copyright (C) 2006-2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. # Configure fcntl.h. diff --git a/gnulib-m4/fdopen.m4 b/gnulib-m4/fdopen.m4 index aae447d3..2ef37adf 100644 --- a/gnulib-m4/fdopen.m4 +++ b/gnulib-m4/fdopen.m4 @@ -1,9 +1,10 @@ # fdopen.m4 # serial 6 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_FDOPEN], [ diff --git a/gnulib-m4/fdopendir.m4 b/gnulib-m4/fdopendir.m4 deleted file mode 100644 index e9268378..00000000 --- a/gnulib-m4/fdopendir.m4 +++ /dev/null @@ -1,68 +0,0 @@ -# fdopendir.m4 -# serial 15 -dnl Copyright (C) 2009-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 with or without modifications, as long as this notice is preserved. - -# See if we need to provide fdopendir. - -# Written by Eric Blake. - -AC_DEFUN([gl_FUNC_FDOPENDIR], -[ - AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) - AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles - - AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) - - dnl FreeBSD 7.3 has the function, but failed to declare it. - AC_CHECK_DECLS([fdopendir], [], [HAVE_DECL_FDOPENDIR=0], [[ -#include <dirent.h> - ]]) - AC_CHECK_FUNCS_ONCE([fdopendir]) - if test $ac_cv_func_fdopendir = no; then - HAVE_FDOPENDIR=0 - else - AC_CACHE_CHECK([whether fdopendir works], - [gl_cv_func_fdopendir_works], - [AC_RUN_IFELSE( - [AC_LANG_PROGRAM([[ -#include <dirent.h> -#include <fcntl.h> -#include <unistd.h> -]GL_MDA_DEFINES[ -#if !HAVE_DECL_FDOPENDIR -extern -# ifdef __cplusplus -"C" -# endif -DIR *fdopendir (int); -#endif -]], - [[int result = 0; - int fd = open ("conftest.c", O_RDONLY); - if (fd < 0) result |= 1; - if (fdopendir (fd)) result |= 2; - if (close (fd)) result |= 4; - return result; - ]])], - [gl_cv_func_fdopendir_works=yes], - [gl_cv_func_fdopendir_works=no], - [case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_fdopendir_works="guessing yes" ;; - # Guess yes on musl systems. - *-musl* | midipix*) gl_cv_func_fdopendir_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_fdopendir_works="$gl_cross_guess_normal" ;; - esac - ])]) - case "$gl_cv_func_fdopendir_works" in - *yes) ;; - *) - REPLACE_FDOPENDIR=1 - ;; - esac - fi -]) diff --git a/gnulib-m4/filenamecat.m4 b/gnulib-m4/filenamecat.m4 deleted file mode 100644 index ded32771..00000000 --- a/gnulib-m4/filenamecat.m4 +++ /dev/null @@ -1,17 +0,0 @@ -# filenamecat.m4 -# serial 12 -dnl Copyright (C) 2002-2006, 2009-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_FILE_NAME_CONCAT], -[ - AC_REQUIRE([gl_FILE_NAME_CONCAT_LGPL]) -]) - -AC_DEFUN([gl_FILE_NAME_CONCAT_LGPL], -[ - dnl Prerequisites of lib/filenamecat-lgpl.c. - gl_CHECK_FUNCS_ANDROID([mempcpy], [[#include <string.h>]]) -]) diff --git a/gnulib-m4/flexmember.m4 b/gnulib-m4/flexmember.m4 index 73fb6142..3e097a66 100644 --- a/gnulib-m4/flexmember.m4 +++ b/gnulib-m4/flexmember.m4 @@ -1,9 +1,10 @@ # flexmember.m4 # serial 5 -dnl Copyright (C) 2006, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2009-2025 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. +dnl This file is offered as-is, without any warranty. # Check for flexible array member support. diff --git a/gnulib-m4/float_h.m4 b/gnulib-m4/float_h.m4 index 12c0eb67..a3d37a81 100644 --- a/gnulib-m4/float_h.m4 +++ b/gnulib-m4/float_h.m4 @@ -1,9 +1,10 @@ # float_h.m4 -# serial 15 -dnl Copyright (C) 2007, 2009-2024 Free Software Foundation, Inc. +# serial 16 +dnl Copyright (C) 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FLOAT_H], [ @@ -12,7 +13,7 @@ AC_DEFUN([gl_FLOAT_H], GL_GENERATE_FLOAT_H=false REPLACE_FLOAT_LDBL=0 case "$host_os" in - aix* | beos* | openbsd* | mirbsd* | irix*) + aix* | beos* | openbsd* | mirbsd*) GL_GENERATE_FLOAT_H=true ;; freebsd* | dragonfly*) diff --git a/gnulib-m4/fpieee.m4 b/gnulib-m4/fpieee.m4 index 086d51dd..ccece005 100644 --- a/gnulib-m4/fpieee.m4 +++ b/gnulib-m4/fpieee.m4 @@ -1,9 +1,10 @@ # fpieee.m4 # serial 2 -dnl Copyright (C) 2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl IEEE 754 standardized three items: dnl - The formats of single-float and double-float - nowadays commonly diff --git a/gnulib-m4/free.m4 b/gnulib-m4/free.m4 index a2b596d6..bf03a7d1 100644 --- a/gnulib-m4/free.m4 +++ b/gnulib-m4/free.m4 @@ -1,9 +1,10 @@ # free.m4 # serial 6 -dnl Copyright (C) 2003-2005, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003-2005, 2009-2025 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. +dnl This file is offered as-is, without any warranty. # Written by Paul Eggert and Bruno Haible. @@ -13,10 +14,10 @@ AC_DEFUN([gl_FUNC_FREE], dnl In the next release of POSIX, free must preserve errno. dnl https://www.austingroupbugs.net/view.php?id=385 - dnl https://sourceware.org/bugzilla/show_bug.cgi?id=17924 + dnl https://sourceware.org/PR17924 dnl So far, we know of three platforms that do this: dnl * glibc >= 2.33, thanks to the fix for this bug: - dnl <https://sourceware.org/bugzilla/show_bug.cgi?id=17924> + dnl <https://sourceware.org/PR17924> dnl * OpenBSD >= 4.5, thanks to this commit: dnl <https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib/libc/stdlib/malloc.c.diff?r1=1.100&r2=1.101&f=h> dnl * Solaris, because its malloc() implementation is based on brk(), diff --git a/gnulib-m4/frexp.m4 b/gnulib-m4/frexp.m4 index 6eea5f92..003dd790 100644 --- a/gnulib-m4/frexp.m4 +++ b/gnulib-m4/frexp.m4 @@ -1,9 +1,10 @@ # frexp.m4 -# serial 20 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 21 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_FREXP], [ @@ -88,8 +89,8 @@ AC_DEFUN([gl_CHECK_FREXP_NO_LIBM], ]) dnl Test whether frexp() works also on denormalized numbers (this fails e.g. on -dnl NetBSD 3.0), on infinite numbers (this fails e.g. on IRIX 6.5 and mingw), -dnl and on negative zero (this fails e.g. on NetBSD 4.99 and mingw). +dnl NetBSD 3.0), on infinite numbers (this fails e.g. on mingw), and on negative +dnl zero (this fails e.g. on NetBSD 4.99 and mingw). AC_DEFUN([gl_FUNC_FREXP_WORKS], [ AC_REQUIRE([AC_PROG_CC]) @@ -110,7 +111,7 @@ AC_DEFUN([gl_FUNC_FREXP_WORKS], ICC 10.0 has a bug when optimizing the expression -zero. The expression -DBL_MIN * DBL_MIN does not work when cross-compiling to PowerPC on Mac OS X 10.5. */ -#if defined __hpux || defined __sgi || defined __ICC +#if defined __hpux || defined __ICC static double compute_minus_zero (void) { @@ -166,7 +167,7 @@ int main() [gl_cv_func_frexp_works=yes], [gl_cv_func_frexp_works=no], [case "$host_os" in - netbsd* | irix*) gl_cv_func_frexp_works="guessing no" ;; + netbsd*) gl_cv_func_frexp_works="guessing no" ;; # Guess yes with MSVC, no with mingw. windows*-msvc*) gl_cv_func_frexp_works="guessing yes" diff --git a/gnulib-m4/frexpl.m4 b/gnulib-m4/frexpl.m4 index ddc49918..06895eb6 100644 --- a/gnulib-m4/frexpl.m4 +++ b/gnulib-m4/frexpl.m4 @@ -1,9 +1,10 @@ # frexpl.m4 -# serial 24 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 25 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_FREXPL], [ @@ -116,7 +117,7 @@ AC_DEFUN([gl_CHECK_FREXPL_NO_LIBM], dnl Test whether frexpl() works on finite numbers (this fails on dnl Mac OS X 10.4/PowerPC, on AIX 5.1, and on BeOS), on denormalized numbers dnl (this fails on Mac OS X 10.5/i386), and also on infinite numbers (this -dnl fails e.g. on IRIX 6.5 and mingw). +dnl fails e.g. on mingw). AC_DEFUN([gl_FUNC_FREXPL_WORKS], [ AC_REQUIRE([AC_PROG_CC]) @@ -140,12 +141,6 @@ AC_DEFUN([gl_FUNC_FREXPL_WORKS], # undef LDBL_MIN_EXP # define LDBL_MIN_EXP DBL_MIN_EXP #endif -#if defined __sgi && (LDBL_MANT_DIG >= 106) -# if defined __GNUC__ -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP DBL_MIN_EXP -# endif -#endif extern #ifdef __cplusplus "C" @@ -224,7 +219,7 @@ int main() [ changequote(,)dnl case "$host_os" in - aix | aix[3-6]* | beos* | darwin* | irix* | mingw* | windows* | pw*) + aix | aix[3-6]* | beos* | darwin* | mingw* | windows* | pw*) gl_cv_func_frexpl_works="guessing no";; *) gl_cv_func_frexpl_works="guessing yes";; esac diff --git a/gnulib-m4/fseterr.m4 b/gnulib-m4/fseterr.m4 index 9cdd385e..3a94c288 100644 --- a/gnulib-m4/fseterr.m4 +++ b/gnulib-m4/fseterr.m4 @@ -1,9 +1,10 @@ # fseterr.m4 # serial 2 -dnl Copyright (C) 2012-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2012-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_FSETERR], [ diff --git a/gnulib-m4/fstat.m4 b/gnulib-m4/fstat.m4 index 47777b0c..e89bbc32 100644 --- a/gnulib-m4/fstat.m4 +++ b/gnulib-m4/fstat.m4 @@ -1,9 +1,10 @@ # fstat.m4 # serial 10 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_FSTAT], [ diff --git a/gnulib-m4/fstatat.m4 b/gnulib-m4/fstatat.m4 deleted file mode 100644 index c5ef7dfb..00000000 --- a/gnulib-m4/fstatat.m4 +++ /dev/null @@ -1,66 +0,0 @@ -# fstatat.m4 -# serial 5 -dnl Copyright (C) 2004-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 with or without modifications, as long as this notice is preserved. - -# Written by Jim Meyering. - -# If we have the fstatat function, and it has the bug (in AIX 7.1) -# that it does not fill in st_size correctly, use the replacement function. -AC_DEFUN([gl_FUNC_FSTATAT], -[ - AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) - AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) - AC_REQUIRE([gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK]) - AC_REQUIRE([AC_CANONICAL_HOST]) - AC_CHECK_FUNCS_ONCE([fstatat]) - - if test $ac_cv_func_fstatat = no; then - HAVE_FSTATAT=0 - else - dnl Test for an AIX 7.1 bug; see - dnl <https://lists.gnu.org/r/bug-tar/2011-09/msg00015.html>. - AC_CACHE_CHECK([whether fstatat (..., 0) works], - [gl_cv_func_fstatat_zero_flag], - [AC_RUN_IFELSE( - [AC_LANG_SOURCE( - [[ - #include <fcntl.h> - #include <sys/stat.h> - int - main (void) - { - struct stat a; - return fstatat (AT_FDCWD, ".", &a, 0) != 0; - } - ]])], - [gl_cv_func_fstatat_zero_flag=yes], - [gl_cv_func_fstatat_zero_flag=no], - [case "$host_os" in - aix*) gl_cv_func_fstatat_zero_flag="guessing no";; - *) gl_cv_func_fstatat_zero_flag="guessing yes";; - esac - ]) - ]) - - case $gl_cv_func_fstatat_zero_flag+$gl_cv_func_lstat_dereferences_slashed_symlink in - *yes+*yes) ;; - *) REPLACE_FSTATAT=1 ;; - esac - - case $host_os in - darwin* | solaris*) - REPLACE_FSTATAT=1 ;; - esac - - case $REPLACE_FSTATAT,$gl_cv_func_fstatat_zero_flag in - 1,*yes) - AC_DEFINE([HAVE_WORKING_FSTATAT_ZERO_FLAG], [1], - [Define to 1 if fstatat (..., 0) works. - For example, it does not work in AIX 7.1.]) - ;; - esac - fi -]) diff --git a/gnulib-m4/ftruncate.m4 b/gnulib-m4/ftruncate.m4 index 0ecc0b3e..aa149c37 100644 --- a/gnulib-m4/ftruncate.m4 +++ b/gnulib-m4/ftruncate.m4 @@ -1,9 +1,11 @@ # ftruncate.m4 # serial 24 -dnl Copyright (C) 2000-2001, 2003-2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2000-2001, 2003-2007, 2009-2025 Free Software Foundation, +dnl 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. +dnl This file is offered as-is, without any warranty. # See if we need to emulate a missing ftruncate function using _chsize. diff --git a/gnulib-m4/getcwd-abort-bug.m4 b/gnulib-m4/getcwd-abort-bug.m4 deleted file mode 100644 index 0fce7922..00000000 --- a/gnulib-m4/getcwd-abort-bug.m4 +++ /dev/null @@ -1,148 +0,0 @@ -# getcwd-abort-bug.m4 -# serial 18 -dnl Copyright (C) 2006, 2009-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 with or without modifications, as long as this notice is preserved. - -# Determine whether getcwd aborts when the length of the working directory -# name is unusually large. Any length between 4k and 16k trigger the bug -# when using glibc-2.4.90-9 or older. - -# From Jim Meyering - -# gl_FUNC_GETCWD_ABORT_BUG([ACTION-IF-BUGGY[, ACTION-IF-WORKS]]) -AC_DEFUN([gl_FUNC_GETCWD_ABORT_BUG], -[ - AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles - AC_CHECK_DECLS_ONCE([getcwd]) - AC_CHECK_HEADERS_ONCE([unistd.h]) - AC_REQUIRE([gl_PATHMAX_SNIPPET_PREREQ]) - - AC_CACHE_CHECK([whether getcwd succeeds when 4k < cwd_length < 16k], - [gl_cv_func_getcwd_succeeds_beyond_4k], - [# Remove any remnants of a previous test. - rm -rf confdir-14B--- - # Arrange for deletion of the temporary directory this test creates. - ac_clean_files="$ac_clean_files confdir-14B---" - dnl Please keep this in sync with tests/test-getcwd.c. - AC_RUN_IFELSE( - [AC_LANG_SOURCE( - [[ -#include <errno.h> -#include <stdlib.h> -#if HAVE_UNISTD_H -# include <unistd.h> -#else /* on Windows with MSVC */ -# include <direct.h> -#endif -#include <string.h> -#include <sys/stat.h> - -]gl_PATHMAX_SNIPPET[ -]GL_MDA_DEFINES[ - -#ifndef S_IRWXU -# define S_IRWXU 0700 -#endif - -/* This size is chosen to be larger than PATH_MAX (4k), yet smaller than - the 16kB pagesize on ia64 linux. Those conditions make the code below - trigger a bug in glibc's getcwd implementation before 2.4.90-10. */ -#define TARGET_LEN (5 * 1024) - -int -main () -{ - char *cwd; - size_t initial_cwd_len; - int fail = 0; - - /* The bug is triggered when PATH_MAX < page size, so skip - this relatively expensive and invasive test if that's not true. */ -#if defined PATH_MAX && defined _SC_PAGESIZE - int bug_possible = PATH_MAX < sysconf (_SC_PAGESIZE); -#else - int bug_possible = 0; -#endif - if (! bug_possible) - return 0; - - cwd = getcwd (NULL, 0); - if (cwd == NULL) - return 2; - - initial_cwd_len = strlen (cwd); - free (cwd); - - if (1) - { - static char const dir_name[] = "confdir-14B---"; - size_t desired_depth = ((TARGET_LEN - 1 - initial_cwd_len) - / sizeof dir_name); - size_t d; - for (d = 0; d < desired_depth; d++) - { - if (mkdir (dir_name, S_IRWXU) < 0 || chdir (dir_name) < 0) - { - if (! (errno == ERANGE || errno == ENAMETOOLONG - || errno == ENOENT)) - fail = 3; /* Unable to construct deep hierarchy. */ - break; - } - } - - /* If libc has the bug in question, this invocation of getcwd - results in a failed assertion. */ - cwd = getcwd (NULL, 0); - if (cwd == NULL) - fail = 4; /* getcwd didn't assert, but it failed for a long name - where the answer could have been learned. */ - free (cwd); - - /* Call rmdir first, in case the above chdir failed. */ - rmdir (dir_name); - while (0 < d--) - { - if (chdir ("..") < 0) - { - fail = 5; - break; - } - rmdir (dir_name); - } - } - - return fail; -} - ]])], - [gl_cv_func_getcwd_succeeds_beyond_4k=yes], - [dnl An abort will provoke an exit code of something like 134 (128 + 6). - dnl An exit code of 4 can also occur (for example in - dnl musl libc 1.2.2/powerpc64le, NetBSD 10.0, OpenBSD 6.7: - dnl getcwd (NULL, 0) fails rather than returning a string longer than - dnl PATH_MAX. This may be POSIX compliant (in some interpretations of - dnl POSIX). But gnulib's getcwd module wants to provide a non-NULL - dnl value in this case. - ret=$? - if test $ret -ge 128 || test $ret = 4; then - gl_cv_func_getcwd_succeeds_beyond_4k=no - else - gl_cv_func_getcwd_succeeds_beyond_4k=yes - fi - ], - [case "$host_os" in - # Guess no otherwise, even on glibc systems and musl systems. - *) gl_cv_func_getcwd_succeeds_beyond_4k="guessing no" - esac - ]) - ]) - case "$gl_cv_func_getcwd_succeeds_beyond_4k" in - *no) - $1 - ;; - *) - $2 - ;; - esac -]) diff --git a/gnulib-m4/getcwd-path-max.m4 b/gnulib-m4/getcwd-path-max.m4 deleted file mode 100644 index e9c52d90..00000000 --- a/gnulib-m4/getcwd-path-max.m4 +++ /dev/null @@ -1,254 +0,0 @@ -# getcwd-path-max.m4 -# serial 26 -dnl Copyright (C) 2003-2007, 2009-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 with or without modifications, as long as this notice is preserved. - -# Check for several getcwd bugs with long file names. -# If so, arrange to compile the wrapper function. - -# This is necessary for at least GNU libc on linux-2.4.19 and 2.4.20. -# I've heard that this is due to a Linux kernel bug, and that it has -# been fixed between 2.4.21-pre3 and 2.4.21-pre4. - -# From Jim Meyering - -AC_DEFUN([gl_FUNC_GETCWD_PATH_MAX], -[ - AC_CHECK_DECLS_ONCE([getcwd, alarm]) - AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles - AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) - AC_CHECK_HEADERS_ONCE([unistd.h]) - AC_REQUIRE([gl_PATHMAX_SNIPPET_PREREQ]) - AC_CACHE_CHECK([whether getcwd handles long file names properly], - [gl_cv_func_getcwd_path_max], - [# Arrange for deletion of the temporary directory this test creates. - ac_clean_files="$ac_clean_files confdir3" - dnl Please keep this in sync with tests/test-getcwd.c. - AC_RUN_IFELSE( - [AC_LANG_SOURCE( - [[ -#include <errno.h> -#include <stdlib.h> -#if HAVE_UNISTD_H -# include <unistd.h> -#else -# include <direct.h> -#endif -#if HAVE_DECL_ALARM -# include <signal.h> -#endif -#include <string.h> -#include <limits.h> -#include <sys/stat.h> -#include <sys/types.h> -#include <fcntl.h> - -]gl_PATHMAX_SNIPPET[ - -#ifndef AT_FDCWD -# define AT_FDCWD 0 -#endif -#ifdef ENAMETOOLONG -# define is_ENAMETOOLONG(x) ((x) == ENAMETOOLONG) -#else -# define is_ENAMETOOLONG(x) 0 -#endif - -/* Use the getcwd function, not any macro. */ -#undef getcwd - -]GL_MDA_DEFINES[ - -#ifndef S_IRWXU -# define S_IRWXU 0700 -#endif - -/* The length of this name must be 8. */ -#define DIR_NAME "confdir3" -#define DIR_NAME_LEN 8 -#define DIR_NAME_SIZE (DIR_NAME_LEN + 1) - -/* The length of "../". */ -#define DOTDOTSLASH_LEN 3 - -/* Leftover bytes in the buffer, to work around library or OS bugs. */ -#define BUF_SLOP 20 - -int -main () -{ -#ifndef PATH_MAX - /* The Hurd doesn't define this, so getcwd can't exhibit the bug -- - at least not on a local file system. And if we were to start worrying - about remote file systems, we'd have to enable the wrapper function - all of the time, just to be safe. That's not worth the cost. */ - exit (0); -#elif ((INT_MAX / (DIR_NAME_SIZE / DOTDOTSLASH_LEN + 1) \ - - DIR_NAME_SIZE - BUF_SLOP) \ - <= PATH_MAX) - /* FIXME: Assuming there's a system for which this is true, - this should be done in a compile test. */ - exit (0); -#else - char buf[PATH_MAX * (DIR_NAME_SIZE / DOTDOTSLASH_LEN + 1) - + DIR_NAME_SIZE + BUF_SLOP]; - char *cwd; - size_t initial_cwd_len; - size_t cwd_len; - int fail; - size_t n_chdirs; - -# if HAVE_DECL_ALARM - /* This test makes some buggy getcwd implementations take a long time, e.g. - on NAS devices - <https://lists.gnu.org/archive/html/bug-gnulib/2024-03/msg00444.html> - and in sandboxed environments <https://bugs.gentoo.org/447970>. - Give up after 5 seconds; a getcwd slower than that isn't worth using - anyway. */ - signal (SIGALRM, SIG_DFL); - alarm (5); -# endif - - cwd = getcwd (buf, PATH_MAX); - if (cwd == NULL) - exit (10); - - cwd_len = initial_cwd_len = strlen (cwd); - fail = 0; - n_chdirs = 0; - - while (1) - { - size_t dotdot_max = PATH_MAX * (DIR_NAME_SIZE / DOTDOTSLASH_LEN); - char *c = NULL; - - cwd_len += DIR_NAME_SIZE; - /* If mkdir or chdir fails, it could be that this system cannot create - any file with an absolute name longer than PATH_MAX, such as cygwin. - If so, leave fail as 0, because the current working directory can't - be too long for getcwd if it can't even be created. On Linux with - the 9p file system, mkdir fails with error EINVAL when cwd_len gets - too long; ignore this failure because the getcwd() system call - produces good results whereas the gnulib substitute calls getdents64 - which fails with error EPROTO. - For other errors, be pessimistic and consider that as a failure, - too. */ - if (mkdir (DIR_NAME, S_IRWXU) < 0 || chdir (DIR_NAME) < 0) - { - if (! (errno == ERANGE || is_ENAMETOOLONG (errno))) - #ifdef __linux__ - if (! (errno == EINVAL)) - #endif - fail = 20; - break; - } - - if (PATH_MAX <= cwd_len && cwd_len < PATH_MAX + DIR_NAME_SIZE) - { - struct stat sb; - - c = getcwd (buf, PATH_MAX); - if (!c && errno == ENOENT) - { - fail = 11; - break; - } - if (c) - { - fail = 31; - break; - } - if (! (errno == ERANGE || is_ENAMETOOLONG (errno))) - { - fail = 21; - break; - } - - /* Our replacement needs to be able to stat() long ../../paths, - so generate a path larger than PATH_MAX to check, - avoiding the replacement if we can't stat(). */ - c = getcwd (buf, cwd_len + 1); - if (c && !AT_FDCWD && stat (c, &sb) != 0 && is_ENAMETOOLONG (errno)) - { - fail = 32; - break; - } - } - - if (dotdot_max <= cwd_len - initial_cwd_len) - { - if (dotdot_max + DIR_NAME_SIZE < cwd_len - initial_cwd_len) - break; - c = getcwd (buf, cwd_len + 1); - if (!c) - { - if (! (errno == ERANGE || errno == ENOENT - || is_ENAMETOOLONG (errno))) - { - fail = 22; - break; - } - if (AT_FDCWD || errno == ERANGE || errno == ENOENT) - { - fail = 12; - break; - } - } - } - - if (c && strlen (c) != cwd_len) - { - fail = 23; - break; - } - ++n_chdirs; - } - - /* Leaving behind such a deep directory is not polite. - So clean up here, right away, even though the driving - shell script would also clean up. */ - { - size_t i; - - /* Try rmdir first, in case the chdir failed. */ - rmdir (DIR_NAME); - for (i = 0; i <= n_chdirs; i++) - { - if (chdir ("..") < 0) - break; - if (rmdir (DIR_NAME) != 0) - break; - } - } - - exit (fail); -#endif -} - ]])], - [gl_cv_func_getcwd_path_max=yes], - [case $? in - 10|11|12) gl_cv_func_getcwd_path_max='no, but it is partly working';; - 31) gl_cv_func_getcwd_path_max='no, it has the AIX bug';; - 32) gl_cv_func_getcwd_path_max='yes, but with shorter paths';; - *) gl_cv_func_getcwd_path_max=no;; - esac], - [# Cross-compilation guesses: - case "$host_os" in - aix*) # On AIX, it has the AIX bug. - gl_cv_func_getcwd_path_max='guessing no, it has the AIX bug' ;; - gnu*) # On Hurd, it is 'yes'. - gl_cv_func_getcwd_path_max='guessing yes' ;; - linux* | kfreebsd*) - # On older Linux+glibc it's 'no, but it is partly working', - # on newer Linux+glibc it's 'yes'. - # On Linux+musl libc, it's 'no, but it is partly working'. - # On kFreeBSD+glibc, it's 'no, but it is partly working'. - gl_cv_func_getcwd_path_max='guessing no, but it is partly working' ;; - *) # If we don't know, obey --enable-cross-guesses. - gl_cv_func_getcwd_path_max="$gl_cross_guess_normal" ;; - esac - ]) - ]) -]) diff --git a/gnulib-m4/getcwd.m4 b/gnulib-m4/getcwd.m4 index 46f46a2f..b5b35b11 100644 --- a/gnulib-m4/getcwd.m4 +++ b/gnulib-m4/getcwd.m4 @@ -1,9 +1,10 @@ # getcwd.m4 # serial 22 -dnl Copyright (C) 2001, 2003-2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2001, 2003-2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. # Written by Paul Eggert. diff --git a/gnulib-m4/getdtablesize.m4 b/gnulib-m4/getdtablesize.m4 index aaefe9b2..112c1c4d 100644 --- a/gnulib-m4/getdtablesize.m4 +++ b/gnulib-m4/getdtablesize.m4 @@ -1,9 +1,10 @@ # getdtablesize.m4 # serial 8 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_GETDTABLESIZE], [ diff --git a/gnulib-m4/getlocalename_l.m4 b/gnulib-m4/getlocalename_l.m4 new file mode 100644 index 00000000..629e510b --- /dev/null +++ b/gnulib-m4/getlocalename_l.m4 @@ -0,0 +1,119 @@ +# getlocalename_l.m4 +# serial 4 +dnl Copyright (C) 2025 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. +dnl This file is offered as-is, without any warranty. + +AC_DEFUN([gl_FUNC_GETLOCALENAME_L_SIMPLE], +[ + AC_REQUIRE([gl_LOCALE_H_DEFAULTS]) + + dnl Persuade glibc <locale.h> to declare getlocalename_l(). + AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) + + AC_REQUIRE([gl_FUNC_GETLOCALENAME_L_UNSAFE]) +]) + +# Prerequisites of lib/getlocalename_l.c. +AC_DEFUN([gl_PREREQ_GETLOCALENAME_L_SIMPLE], +[ + : +]) + +AC_DEFUN_ONCE([gl_FUNC_GETLOCALENAME_L_UNSAFE], +[ + AC_REQUIRE([gl_LOCALE_H_DEFAULTS]) + AC_REQUIRE([gl_FUNC_SETLOCALE_NULL]) + AC_CHECK_FUNCS_ONCE([getlocalename_l]) + if test $ac_cv_func_getlocalename_l = yes; then + dnl Check against the Cygwin 3.6.0 bug: It returns an invalid pointer when + dnl the second argument is LC_GLOBAL_LOCALE. + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CACHE_CHECK([whether getlocalename_l works], + [gl_cv_func_getlocalename_l_works], + [AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include <locale.h> +#include <string.h> +int main () +{ + const char *ret = getlocalename_l (LC_COLLATE, LC_GLOBAL_LOCALE); + return strlen (ret) == 0; +}]])], + [gl_cv_func_getlocalename_l_works=yes], + [gl_cv_func_getlocalename_l_works=no], + [case "$host_os" in + cygwin*) # Guess no on Cygwin. + gl_cv_func_getlocalename_l_works="guessing no" ;; + *) # Guess yes otherwise. + gl_cv_func_getlocalename_l_works="guessing yes" ;; + esac + ]) + ]) + case "$gl_cv_func_getlocalename_l_works" in + *yes) ;; + *) REPLACE_GETLOCALENAME_L=1 ;; + esac + else + HAVE_GETLOCALENAME_L=0 + fi + if test $HAVE_GETLOCALENAME_L = 0 || test $REPLACE_GETLOCALENAME_L = 1; then + GETLOCALENAME_L_LIB="$SETLOCALE_NULL_LIB" + else + GETLOCALENAME_L_LIB= + fi + dnl GETLOCALENAME_L_LIB is expected to be '-pthread' or '-lpthread' on AIX + dnl with gcc or xlc, and empty otherwise. + AC_SUBST([GETLOCALENAME_L_LIB]) +]) + +# Prerequisites of lib/getlocalename_l-unsafe.c. +AC_DEFUN([gl_PREREQ_GETLOCALENAME_L_UNSAFE], +[ + AC_REQUIRE([gl_LOCALE_H_DEFAULTS]) + AC_REQUIRE([gl_LOCALE_T]) + AC_REQUIRE([gt_INTL_THREAD_LOCALE_NAME]) + AC_CHECK_HEADERS_ONCE([langinfo.h]) + if test $HAVE_LOCALE_T = 1; then + gl_CHECK_FUNCS_ANDROID([newlocale], [[#include <locale.h>]]) + gl_CHECK_FUNCS_ANDROID([duplocale], [[#include <locale.h>]]) + gl_CHECK_FUNCS_ANDROID([freelocale], [[#include <locale.h>]]) + gl_func_newlocale="$ac_cv_func_newlocale" + gl_func_duplocale="$ac_cv_func_duplocale" + gl_func_freelocale="$ac_cv_func_freelocale" + else + dnl In 2019, some versions of z/OS lack the locale_t type and have broken + dnl newlocale, duplocale, freelocale functions. + gl_cv_onwards_func_newlocale='future OS version' + gl_cv_onwards_func_duplocale='future OS version' + gl_cv_onwards_func_freelocale='future OS version' + gl_func_newlocale=no + gl_func_duplocale=no + gl_func_freelocale=no + fi + if test $gl_func_newlocale != yes; then + HAVE_NEWLOCALE=0 + case "$gl_cv_onwards_func_newlocale" in + future*) REPLACE_NEWLOCALE=1 ;; + esac + fi + if test $gl_func_duplocale != yes; then + HAVE_DUPLOCALE=0 + case "$gl_cv_onwards_func_duplocale" in + future*) REPLACE_DUPLOCALE=1 ;; + esac + fi + if test $gl_func_freelocale != yes; then + HAVE_FREELOCALE=0 + case "$gl_cv_onwards_func_freelocale" in + future*) REPLACE_FREELOCALE=1 ;; + esac + fi + if test $gt_localename_enhances_locale_funcs = yes; then + REPLACE_NEWLOCALE=1 + REPLACE_DUPLOCALE=1 + REPLACE_FREELOCALE=1 + fi +]) diff --git a/gnulib-m4/getprogname.m4 b/gnulib-m4/getprogname.m4 index b24f4480..90f34c74 100644 --- a/gnulib-m4/getprogname.m4 +++ b/gnulib-m4/getprogname.m4 @@ -1,9 +1,10 @@ # getprogname.m4 # serial 8 -dnl Copyright (C) 2016-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2016-2025 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. +dnl This file is offered as-is, without any warranty. # Check for getprogname or replacements for it diff --git a/gnulib-m4/gettext_h.m4 b/gnulib-m4/gettext_h.m4 new file mode 100644 index 00000000..b4b1995c --- /dev/null +++ b/gnulib-m4/gettext_h.m4 @@ -0,0 +1,21 @@ +# gettext_h.m4 +# serial 1 +dnl Copyright (C) 2025 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. +dnl This file is offered as-is, without any warranty. + +AC_DEFUN_ONCE([gl_GETTEXT_H], +[ + AC_SUBST([LIBINTL]) + AC_SUBST([LTLIBINTL]) + AH_BOTTOM([ +/* The text domainname for Gnulib messages. Ordinarily this is "gnulib", + but packages that do their own translations of Gnulib can use something + different by defining GNULIB_TEXT_DOMAIN in their config.h file. */ +#ifndef GNULIB_TEXT_DOMAIN +# define GNULIB_TEXT_DOMAIN/**/"gnulib" +#endif +]) +]) diff --git a/gnulib-m4/gettimeofday.m4 b/gnulib-m4/gettimeofday.m4 index 8135f89e..5cd84cc9 100644 --- a/gnulib-m4/gettimeofday.m4 +++ b/gnulib-m4/gettimeofday.m4 @@ -1,9 +1,11 @@ # gettimeofday.m4 # serial 30 -dnl Copyright (C) 2001-2003, 2005, 2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2003, 2005, 2007, 2009-2025 Free Software Foundation, +dnl 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. +dnl This file is offered as-is, without any warranty. dnl From Jim Meyering. diff --git a/gnulib-m4/gnulib-cache.m4 b/gnulib-m4/gnulib-cache.m4 index 5cac436c..74292d64 100644 --- a/gnulib-m4/gnulib-cache.m4 +++ b/gnulib-m4/gnulib-cache.m4 @@ -1,4 +1,4 @@ -# Copyright (C) 2002-2024 Free Software Foundation, Inc. +# Copyright (C) 2002-2025 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -41,8 +41,11 @@ # --no-conditional-dependencies \ # --libtool \ # --macro-prefix=gl \ +# --avoid=float-h-tests \ # gitlog-to-changelog \ +# package-version \ # relocatable-lib-lgpl \ +# test-xfail \ # unicase/base \ # unicase/empty-prefix-context \ # unicase/empty-suffix-context \ @@ -390,7 +393,7 @@ # unistr/u8-to-u16 \ # unistr/u8-to-u32 \ # unistr/u8-uctomb \ -# unitypes \ +# unitypes-h \ # uniwbrk/base \ # uniwbrk/u16-wordbreaks \ # uniwbrk/u32-wordbreaks \ @@ -410,7 +413,9 @@ gl_LOCAL_DIR([gnulib-local]) gl_MODULES([ gitlog-to-changelog + package-version relocatable-lib-lgpl + test-xfail unicase/base unicase/empty-prefix-context unicase/empty-suffix-context @@ -758,7 +763,7 @@ gl_MODULES([ unistr/u8-to-u16 unistr/u8-to-u32 unistr/u8-uctomb - unitypes + unitypes-h uniwbrk/base uniwbrk/u16-wordbreaks uniwbrk/u32-wordbreaks @@ -774,7 +779,7 @@ gl_MODULES([ uniwidth/u8-width uniwidth/width ]) -gl_AVOID([]) +gl_AVOID([float-h-tests]) gl_SOURCE_BASE([lib]) gl_M4_BASE([gnulib-m4]) gl_PO_BASE([]) diff --git a/gnulib-m4/gnulib-common.m4 b/gnulib-m4/gnulib-common.m4 index 1fec5c5c..134bfba2 100644 --- a/gnulib-m4/gnulib-common.m4 +++ b/gnulib-m4/gnulib-common.m4 @@ -1,9 +1,10 @@ # gnulib-common.m4 -# serial 105 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 113 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_PREREQ([2.62]) @@ -20,6 +21,20 @@ AC_DEFUN([gl_COMMON_BODY], [ [/* Witness that <config.h> has been included. */ #define _GL_CONFIG_H_INCLUDED 1 ]) + dnl Avoid warnings from gcc -Wtrailing-whitespace. + dnl This is a temporary workaround until Autoconf fixes it. + dnl Test case: + dnl empty1=; empty2=; AC_DEFINE_UNQUOTED([FOO], [$empty1$empty2], [...]) + dnl should produce "#define FOO /**/", not "#define FOO ". + AH_TOP([#if defined __GNUC__ && __GNUC__ >= 15 && !defined __clang__ +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wtrailing-whitespace" +#endif +]) + AH_BOTTOM([#if defined __GNUC__ && __GNUC__ >= 15 && !defined __clang__ +# pragma GCC diagnostic pop +#endif +]) AH_VERBATIM([_GL_GNUC_PREREQ], [/* True if the compiler says it groks GNU C version MAJOR.MINOR. Except that @@ -42,33 +57,25 @@ AC_DEFUN([gl_COMMON_BODY], [ #endif ]) AH_VERBATIM([_Noreturn], -[/* The _Noreturn keyword of C11. */ +[/* The _Noreturn keyword of C11. + Do not use [[noreturn]], because with it the syntax + extern _Noreturn void func (...); + would not be valid; such a declaration would be valid only with 'extern' + and '_Noreturn' swapped, or without the 'extern' keyword. However, some + AIX system header files and several gnulib header files use precisely + this syntax with 'extern'. So even though C23 deprecates _Noreturn, + it is currently more portable to prefer it to [[noreturn]]. + + Also, do not try to work around LLVM bug 59792 (clang 15 or earlier). + This rare bug can be worked around by compiling with 'clang -D_Noreturn=', + though the workaround may generate many false-alarm warnings. */ #ifndef _Noreturn -# if (defined __cplusplus \ - && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \ - || (defined _MSC_VER && 1900 <= _MSC_VER)) \ - && 0) - /* [[noreturn]] is not practically usable, because with it the syntax - extern _Noreturn void func (...); - would not be valid; such a declaration would only be valid with 'extern' - and '_Noreturn' swapped, or without the 'extern' keyword. However, some - AIX system header files and several gnulib header files use precisely - this syntax with 'extern'. */ -# define _Noreturn [[noreturn]] -# elif (defined __clang__ && __clang_major__ < 16 \ - && defined _GL_WORK_AROUND_LLVM_BUG_59792) - /* Compile with -D_GL_WORK_AROUND_LLVM_BUG_59792 to work around - that rare LLVM bug, though you may get many false-alarm warnings. */ -# define _Noreturn -# elif ((!defined __cplusplus || defined __clang__) \ - && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ - || (!defined __STRICT_ANSI__ \ - && (_GL_GNUC_PREREQ (4, 7) \ - || (defined __apple_build_version__ \ - ? 6000000 <= __apple_build_version__ \ - : 3 < __clang_major__ + (5 <= __clang_minor__)))))) +# if ((!defined __cplusplus || defined __clang__) \ + && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0))) /* _Noreturn works as-is. */ # elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C + /* Prefer __attribute__ ((__noreturn__)) to plain _Noreturn even if the + latter works, as 'gcc -std=gnu99 -Wpedantic' warns about _Noreturn. */ # define _Noreturn __attribute__ ((__noreturn__)) # elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0) # define _Noreturn __declspec (noreturn) @@ -102,6 +109,9 @@ AC_DEFUN([gl_COMMON_BODY], [ # define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__) # else # define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr +/* The following lines list the first GCC version that supports the attribute. + Although the lines are not used in GCC 5 and later (as GCC 5 introduced + __has_attribute support), list GCC versions 5+ anyway for completeness. */ # define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3) # define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2) # define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3) @@ -122,14 +132,15 @@ AC_DEFUN([gl_COMMON_BODY], [ # endif # define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1) # define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3) +# define _GL_ATTR_nonnull_if_nonzero _GL_GNUC_PREREQ (15, 1) # define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0) # define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3) # define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7) # define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96) -# define _GL_ATTR_reproducible 0 /* not yet supported, as of GCC 14 */ +# define _GL_ATTR_reproducible _GL_GNUC_PREREQ (15, 1) # define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9) # define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0) -# define _GL_ATTR_unsequenced 0 /* not yet supported, as of GCC 14 */ +# define _GL_ATTR_unsequenced _GL_GNUC_PREREQ (15, 1) # define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7) # define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4) # endif @@ -157,7 +168,7 @@ AC_DEFUN([gl_COMMON_BODY], [ ====================================================================== This gives a syntax error - in C mode with gcc - <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108796>, and + <https://gcc.gnu.org/PR108796>, and - in C++ mode with clang++ version < 16, and - in C++ mode, inside extern "C" {}, still in newer clang++ versions <https://github.com/llvm/llvm-project/issues/101990>. @@ -440,7 +451,7 @@ AC_DEFUN([gl_COMMON_BODY], [ yet. */ #ifndef _GL_ATTRIBUTE_DEALLOC_FREE # if defined __cplusplus && defined __GNUC__ && !defined __clang__ -/* Work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108231> */ +/* Work around GCC bug <https://gcc.gnu.org/PR108231> */ # define _GL_ATTRIBUTE_DEALLOC_FREE \ _GL_ATTRIBUTE_DEALLOC ((void (*) (void *)) free, 1) # else @@ -666,6 +677,17 @@ AC_DEFUN([gl_COMMON_BODY], [ # endif #endif +/* _GL_ATTRIBUTE_NONNULL_IF_NONZERO (NP, NI) declares that the argument NP + (a pointer) must not be NULL if the argument NI (an integer) is != 0. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_NONNULL_IF_NONZERO +# if _GL_HAS_ATTRIBUTE (nonnull_if_nonzero) +# define _GL_ATTRIBUTE_NONNULL_IF_NONZERO(np, ni) __attribute__ ((__nonnull_if_nonzero__ (np, ni))) +# else +# define _GL_ATTRIBUTE_NONNULL_IF_NONZERO(np, ni) +# endif +#endif + /* _GL_ATTRIBUTE_NONSTRING declares that the contents of a character array is not meant to be NUL-terminated. */ /* Applies to: struct/union members and variables that are arrays of element @@ -752,7 +774,9 @@ AC_DEFUN([gl_COMMON_BODY], [ than _GL_ATTRIBUTE_PURE because the function need not return exactly once and can affect state addressed by its arguments.) See also <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2956.htm> and - <https://stackoverflow.com/questions/76847905/>. */ + <https://stackoverflow.com/questions/76847905/>. + ATTENTION! Efforts are underway to change the meaning of this attribute. + See <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3424.htm>. */ /* Applies to: functions, pointer to functions, function types. */ #ifndef _GL_ATTRIBUTE_REPRODUCIBLE /* This may be revisited when gcc and clang support [[reproducible]] or possibly @@ -803,7 +827,9 @@ AC_DEFUN([gl_COMMON_BODY], [ _GL_ATTRIBUTE_CONST because the function need not return exactly once and can depend on state addressed by its arguments.) See also <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2956.htm> and - <https://stackoverflow.com/questions/76847905/>. */ + <https://stackoverflow.com/questions/76847905/>. + ATTENTION! Efforts are underway to change the meaning of this attribute. + See <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3424.htm>. */ /* Applies to: functions, pointer to functions, function types. */ #ifndef _GL_ATTRIBUTE_UNSEQUENCED /* This may be revisited when gcc and clang support [[unsequenced]] or possibly @@ -851,7 +877,7 @@ AC_DEFUN([gl_COMMON_BODY], [ # if __clang_major__ >= 15 # define _GL_ATTRIBUTE_CAPABILITY_TYPE(concept) \ __attribute__ ((__capability__ (concept))) -#else +# else # define _GL_ATTRIBUTE_CAPABILITY_TYPE(concept) # endif #endif @@ -921,8 +947,8 @@ AC_DEFUN([gl_COMMON_BODY], [ -1 if n1 < n2 The naïve code (n1 > n2 ? 1 : n1 < n2 ? -1 : 0) produces a conditional jump with nearly all GCC versions up to GCC 10. - This variant (n1 < n2 ? -1 : n1 > n2) produces a conditional with many - GCC versions up to GCC 9. + This variant (n1 < n2 ? -1 : n1 > n2) produces a conditional jump with + many GCC versions up to GCC 9. The better code (n1 > n2) - (n1 < n2) from Hacker's Delight § 2-9 avoids conditional jumps in all GCC versions >= 3.4. */ #define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2))) @@ -1299,7 +1325,7 @@ AC_DEFUN([gl_CC_ALLOW_WARNINGS], AC_REQUIRE([AC_PROG_CC]) AC_CACHE_CHECK([for C compiler option to allow warnings], [gl_cv_cc_wallow], - [rm -f conftest* + [rm -fr conftest* echo 'int dummy;' > conftest.c AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c 2>conftest1.err]) >/dev/null AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -Wno-error -c conftest.c 2>conftest2.err]) >/dev/null @@ -1312,7 +1338,7 @@ AC_DEFUN([gl_CC_ALLOW_WARNINGS], else gl_cv_cc_wallow=none fi - rm -f conftest* + rm -fr conftest* ]) case "$gl_cv_cc_wallow" in none) GL_CFLAG_ALLOW_WARNINGS='' ;; @@ -1330,7 +1356,7 @@ AC_DEFUN([gl_CXX_ALLOW_WARNINGS], if test -n "$CXX" && test "$CXX" != no; then AC_CACHE_CHECK([for C++ compiler option to allow warnings], [gl_cv_cxx_wallow], - [rm -f conftest* + [rm -fr conftest* echo 'int dummy;' > conftest.cc AC_TRY_COMMAND([${CXX-c++} $CXXFLAGS $CPPFLAGS -c conftest.cc 2>conftest1.err]) >/dev/null AC_TRY_COMMAND([${CXX-c++} $CXXFLAGS $CPPFLAGS -Wno-error -c conftest.cc 2>conftest2.err]) >/dev/null @@ -1343,7 +1369,7 @@ AC_DEFUN([gl_CXX_ALLOW_WARNINGS], else gl_cv_cxx_wallow=none fi - rm -f conftest* + rm -fr conftest* ]) case "$gl_cv_cxx_wallow" in none) GL_CXXFLAG_ALLOW_WARNINGS='' ;; @@ -1537,13 +1563,25 @@ AC_DEFUN([gl_CHECK_FUNCS_CASE_FOR_MACOS], if test $[ac_cv_func_][$1] = yes; then [gl_cv_onwards_func_][$1]=yes else + dnl This is a bit complicated, because here we need the behaviour + dnl of AC_CHECK_DECL before the + dnl commit e1bbc9b93cdff61d70719c224b37970e065008bb (2025-05-26). + [ac_cv_have_decl_][$1][_saved]="$[ac_cv_have_decl_][$1]" unset [ac_cv_have_decl_][$1] + ac_c_future_darwin_options_saved="$ac_c_future_darwin_options" + ac_cxx_future_darwin_options_saved="$ac_cxx_future_darwin_options" + ac_c_future_darwin_options= + ac_cxx_future_darwin_options= AC_CHECK_DECL([$1], , , [$2]) + ac_c_future_darwin_options="$ac_c_future_darwin_options_saved" + ac_cxx_future_darwin_options="$ac_cxx_future_darwin_options_saved" if test $[ac_cv_have_decl_][$1] = yes; then [gl_cv_onwards_func_][$1]='future OS version' else [gl_cv_onwards_func_][$1]=no fi + [ac_cv_have_decl_][$1]="$[ac_cv_have_decl_][$1][_saved]" + unset [ac_cv_have_decl_][$1][_saved] fi else AC_CHECK_FUNC([$1]) @@ -1596,7 +1634,7 @@ dnl dnl This macro sets two variables: dnl - gl_cv_onwards_func_<func> to yes / no / "future OS version" dnl - ac_cv_func_<func> to yes / no / no -dnl The first variable allows to distinguish all three cases. +dnl The first variable allows distinguishing all three cases. dnl The second variable is set, so that an invocation dnl gl_CHECK_FUNCS_ANDROID([func], [[#include <foo.h>]]) dnl can be used as a drop-in replacement for @@ -1649,7 +1687,7 @@ dnl dnl This macro sets two variables: dnl - gl_cv_onwards_func_<func> to yes / no / "future OS version" dnl - ac_cv_func_<func> to yes / no / no -dnl The first variable allows to distinguish all three cases. +dnl The first variable allows distinguishing all three cases. dnl The second variable is set, so that an invocation dnl gl_CHECK_FUNCS_MACOS([func], [[#include <foo.h>]]) dnl can be used as a drop-in replacement for diff --git a/gnulib-m4/gnulib-comp.m4 b/gnulib-m4/gnulib-comp.m4 index 1fa89b27..3f238a2a 100644 --- a/gnulib-m4/gnulib-comp.m4 +++ b/gnulib-m4/gnulib-comp.m4 @@ -1,5 +1,5 @@ # DO NOT EDIT! GENERATED AUTOMATICALLY! -# Copyright (C) 2002-2024 Free Software Foundation, Inc. +# Copyright (C) 2002-2025 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -51,20 +51,20 @@ AC_DEFUN([gl_EARLY], # Code from module alloca-opt: # Code from module alloca-opt-tests: # Code from module amemxfrm: - # Code from module arpa_inet: - # Code from module arpa_inet-tests: + # Code from module arpa_inet-h: + # Code from module arpa_inet-h-tests: # Code from module array-mergesort: # Code from module array-mergesort-tests: # Code from module assert-h: # Code from module assert-h-tests: - # Code from module assure: - # Code from module at-internal: # Code from module attribute: # Code from module basename-lgpl: # Code from module binary-io: # Code from module binary-io-tests: # Code from module bind: # Code from module bind-tests: + # Code from module bool: + # Code from module bool-tests: # Code from module btoc32: # Code from module btoc32-tests: # Code from module btowc: @@ -72,8 +72,8 @@ AC_DEFUN([gl_EARLY], # Code from module builtin-expect: # Code from module c-ctype: # Code from module c-ctype-tests: - # Code from module c-strcase: - # Code from module c-strcase-tests: + # Code from module c-strcasecmp: + # Code from module c-strcasecmp-tests: # Code from module c-strcaseeq: # Code from module c32isalnum: # Code from module c32isalnum-tests: @@ -110,33 +110,23 @@ AC_DEFUN([gl_EARLY], # Code from module calloc-gnu: # Code from module calloc-gnu-tests: # Code from module calloc-posix: - # Code from module chdir: - # Code from module chdir-long: - # Code from module chdir-tests: + # Code from module calloc-posix-tests: # Code from module cloexec: # Code from module cloexec-tests: # Code from module close: # Code from module close-tests: - # Code from module closedir: # Code from module concat-filename: # Code from module connect: # Code from module connect-tests: - # Code from module ctype: - # Code from module ctype-tests: - # Code from module d-ino: - # Code from module dirent: - # Code from module dirent-tests: - # Code from module dirfd: - # Code from module dirfd-tests: + # Code from module ctype-h: + # Code from module ctype-h-tests: # Code from module double-slash-root: - # Code from module dup: - # Code from module dup-tests: # Code from module dup2: # Code from module dup2-tests: # Code from module environ: # Code from module environ-tests: - # Code from module errno: - # Code from module errno-tests: + # Code from module errno-h: + # Code from module errno-h-tests: # Code from module error: # Code from module error-h: # Code from module error-tests: @@ -147,24 +137,17 @@ AC_DEFUN([gl_EARLY], # Code from module extensions-aix: AC_REQUIRE([gl_USE_AIX_EXTENSIONS]) # Code from module extern-inline: - # Code from module fchdir: - # Code from module fchdir-tests: # Code from module fcntl: # Code from module fcntl-h: # Code from module fcntl-h-tests: # Code from module fcntl-tests: # Code from module fd-hook: - # Code from module fd-safer-flag: # Code from module fdopen: # Code from module fdopen-tests: - # Code from module fdopendir: - # Code from module fdopendir-tests: # Code from module fgetc-tests: # Code from module filename: - # Code from module filenamecat-lgpl: # Code from module flexmember: - # Code from module float: - # Code from module float-tests: + # Code from module float-h: # Code from module fpieee: AC_REQUIRE([gl_FP_IEEE]) # Code from module fpucw: @@ -180,24 +163,24 @@ AC_DEFUN([gl_EARLY], # Code from module fseterr-tests: # Code from module fstat: # Code from module fstat-tests: - # Code from module fstatat: - # Code from module fstatat-tests: # Code from module ftruncate: # Code from module ftruncate-tests: # Code from module fwrite-tests: # Code from module gen-header: - # Code from module getcwd: # Code from module getcwd-lgpl: # Code from module getcwd-lgpl-tests: - # Code from module getcwd-tests: # Code from module getdtablesize: # Code from module getdtablesize-tests: + # Code from module getlocalename_l-unsafe: + # Code from module getlocalename_l-unsafe-limited: # Code from module getprogname: # Code from module getprogname-tests: # Code from module gettext-h: + # Code from module gettext-h-tests: # Code from module gettimeofday: # Code from module gettimeofday-tests: # Code from module gitlog-to-changelog: + # Code from module gnulib-i18n: # Code from module gperf: # Code from module hard-locale: # Code from module hard-locale-tests: @@ -217,9 +200,9 @@ AC_DEFUN([gl_EARLY], # Code from module inline: # Code from module intprops: # Code from module intprops-tests: - # Code from module inttypes: - # Code from module inttypes-incomplete: - # Code from module inttypes-tests: + # Code from module inttypes-h: + # Code from module inttypes-h-incomplete: + # Code from module inttypes-h-tests: # Code from module ioctl: # Code from module ioctl-tests: # Code from module isblank: @@ -238,8 +221,6 @@ AC_DEFUN([gl_EARLY], # Code from module iswpunct-tests: # Code from module iswxdigit: # Code from module iswxdigit-tests: - # Code from module langinfo: - # Code from module langinfo-tests: # Code from module largefile: AC_REQUIRE([AC_SYS_LARGEFILE]) # Code from module largefile-tests: @@ -250,9 +231,12 @@ AC_DEFUN([gl_EARLY], # Code from module listen-tests: # Code from module localcharset: # Code from module localcharset-tests: - # Code from module locale: - # Code from module locale-tests: + # Code from module locale-h: + # Code from module locale-h-tests: + # Code from module localeconv: + # Code from module localeconv-tests: # Code from module localename: + # Code from module localename-environ: # Code from module localename-tests: # Code from module localename-unsafe: # Code from module localename-unsafe-limited: @@ -263,10 +247,11 @@ AC_DEFUN([gl_EARLY], # Code from module malloc-gnu: # Code from module malloc-gnu-tests: # Code from module malloc-posix: + # Code from module malloc-posix-tests: # Code from module malloca: # Code from module malloca-tests: - # Code from module math: - # Code from module math-tests: + # Code from module math-h: + # Code from module math-h-tests: # Code from module mbchar: # Code from module mbiterf: # Code from module mbrtoc32: @@ -282,29 +267,24 @@ AC_DEFUN([gl_EARLY], # Code from module memchr: # Code from module memchr-tests: # Code from module memcmp2: - # Code from module mempcpy: - # Code from module memrchr: - # Code from module memrchr-tests: # Code from module minmax: # Code from module mixin/printf-posix: + # Code from module mkfifo: + # Code from module mkfifo-tests: # Code from module msvc-inval: # Code from module msvc-nothrow: # Code from module multiarch: # Code from module nan: # Code from module nanosleep: # Code from module nanosleep-tests: - # Code from module netinet_in: - # Code from module netinet_in-tests: + # Code from module netinet_in-h: + # Code from module netinet_in-h-tests: # Code from module nocrash: # Code from module once: # Code from module once-tests: # Code from module open: # Code from module open-tests: - # Code from module openat: - # Code from module openat-die: - # Code from module openat-h: - # Code from module openat-tests: - # Code from module opendir: + # Code from module package-version: # Code from module pathmax: # Code from module pathmax-tests: # Code from module perror: @@ -342,24 +322,21 @@ AC_DEFUN([gl_EARLY], # Code from module random-tests: # Code from module random_r: # Code from module random_r-tests: - # Code from module readdir: - # Code from module realloc-gnu: - # Code from module realloc-gnu-tests: # Code from module realloc-posix: + # Code from module realloc-posix-tests: # Code from module reallocarray: # Code from module reallocarray-tests: # Code from module relocatable-lib-lgpl: - # Code from module rewinddir: # Code from module same-inode: - # Code from module save-cwd: - # Code from module sched: - # Code from module sched-tests: + # Code from module sched-h: + # Code from module sched-h-tests: # Code from module sched_yield: # Code from module select: # Code from module select-tests: # Code from module setenv: # Code from module setenv-tests: # Code from module setlocale: + # Code from module setlocale-fixes: # Code from module setlocale-null: # Code from module setlocale-null-tests: # Code from module setlocale-null-unlocked: @@ -394,21 +371,22 @@ AC_DEFUN([gl_EARLY], # Code from module stat-time: # Code from module stat-time-tests: # Code from module std-gnu11: - # Code from module stdbool: - # Code from module stdbool-tests: - # Code from module stdckdint: - # Code from module stdckdint-tests: - # Code from module stddef: - # Code from module stddef-tests: - # Code from module stdint: - # Code from module stdint-tests: - # Code from module stdio: + # Code from module stdckdint-h: + # Code from module stdckdint-h-tests: + # Code from module stddef-h: + # Code from module stddef-h-tests: + # Code from module stdint-h: + # Code from module stdint-h-tests: + # Code from module stdio-h: gl_STDIO_H_EARLY - # Code from module stdio-tests: - # Code from module stdlib: - # Code from module stdlib-tests: + # Code from module stdio-h-tests: + # Code from module stdlib-h: + # Code from module stdlib-h-tests: # Code from module stpcpy: - # Code from module strdup-posix: + # Code from module str_endswith: + # Code from module str_endswith-tests: + # Code from module str_startswith: + # Code from module str_startswith-tests: # Code from module streq: # Code from module strerror: # Code from module strerror-override: @@ -419,8 +397,9 @@ AC_DEFUN([gl_EARLY], # Code from module striconveh-tests: # Code from module striconveha: # Code from module striconveha-tests: - # Code from module string: - # Code from module string-tests: + # Code from module string-h: + # Code from module string-h-tests: + # Code from module stringeq: # Code from module strncat: # Code from module strncat-tests: # Code from module strstr: @@ -428,21 +407,21 @@ AC_DEFUN([gl_EARLY], # Code from module strstr-tests: # Code from module symlink: # Code from module symlink-tests: - # Code from module sys_ioctl: - # Code from module sys_ioctl-tests: - # Code from module sys_select: - # Code from module sys_select-tests: - # Code from module sys_socket: - # Code from module sys_socket-tests: - # Code from module sys_stat: - # Code from module sys_stat-tests: - # Code from module sys_time: - # Code from module sys_time-tests: - # Code from module sys_types: + # Code from module sys_ioctl-h: + # Code from module sys_ioctl-h-tests: + # Code from module sys_select-h: + # Code from module sys_select-h-tests: + # Code from module sys_socket-h: + # Code from module sys_socket-h-tests: + # Code from module sys_stat-h: + # Code from module sys_stat-h-tests: + # Code from module sys_time-h: + # Code from module sys_time-h-tests: + # Code from module sys_types-h: AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) - # Code from module sys_types-tests: - # Code from module sys_uio: - # Code from module sys_uio-tests: + # Code from module sys_types-h-tests: + # Code from module sys_uio-h: + # Code from module sys_uio-h-tests: # Code from module test-framework-sh: # Code from module test-framework-sh-tests: # Code from module test-xfail: @@ -455,9 +434,10 @@ AC_DEFUN([gl_EARLY], # Code from module time-h: # Code from module time-h-tests: # Code from module time-tests: - # Code from module uchar: - # Code from module uchar-tests: + # Code from module uchar-h: + # Code from module uchar-h-tests: # Code from module unicase/base: + # Code from module unicase/base-tests: # Code from module unicase/cased: # Code from module unicase/cased-tests: # Code from module unicase/empty-prefix-context: @@ -573,6 +553,7 @@ AC_DEFUN([gl_EARLY], # Code from module unicase/ulc-casecoll-tests: # Code from module unicase/ulc-casexfrm: # Code from module uniconv/base: + # Code from module uniconv/base-tests: # Code from module uniconv/u16-conv-from-enc: # Code from module uniconv/u16-conv-from-enc-tests: # Code from module uniconv/u16-conv-to-enc: @@ -604,6 +585,7 @@ AC_DEFUN([gl_EARLY], # Code from module uniconv/u8-strconv-to-enc-tests: # Code from module uniconv/u8-strconv-to-locale: # Code from module unictype/base: + # Code from module unictype/base-tests: # Code from module unictype/bidiclass-all: # Code from module unictype/bidiclass-byname: # Code from module unictype/bidiclass-byname-tests: @@ -995,6 +977,7 @@ AC_DEFUN([gl_EARLY], # Code from module unictype/syntax-java-whitespace: # Code from module unictype/syntax-java-whitespace-tests: # Code from module unigbrk/base: + # Code from module unigbrk/base-tests: # Code from module unigbrk/u16-grapheme-breaks: # Code from module unigbrk/u16-grapheme-breaks-tests: # Code from module unigbrk/u16-grapheme-next: @@ -1022,6 +1005,7 @@ AC_DEFUN([gl_EARLY], # Code from module unigbrk/ulc-grapheme-breaks: # Code from module unigbrk/ulc-grapheme-breaks-tests: # Code from module unilbrk/base: + # Code from module unilbrk/base-tests: # Code from module unilbrk/tables: # Code from module unilbrk/u16-possible-linebreaks: # Code from module unilbrk/u16-possible-linebreaks-tests: @@ -1041,12 +1025,15 @@ AC_DEFUN([gl_EARLY], # Code from module unilbrk/ulc-width-linebreaks: # Code from module unilbrk/ulc-width-linebreaks-tests: # Code from module unimetadata/base: + # Code from module unimetadata/base-tests: # Code from module unimetadata/u-version: # Code from module unimetadata/u-version-tests: # Code from module uniname/base: + # Code from module uniname/base-tests: # Code from module uniname/uniname: # Code from module uniname/uniname-tests: # Code from module uninorm/base: + # Code from module uninorm/base-tests: # Code from module uninorm/canonical-decomposition: # Code from module uninorm/canonical-decomposition-tests: # Code from module uninorm/compat-decomposition: @@ -1087,11 +1074,10 @@ AC_DEFUN([gl_EARLY], # Code from module uninorm/u8-normcoll: # Code from module uninorm/u8-normcoll-tests: # Code from module uninorm/u8-normxfrm: - # Code from module unistd: - # Code from module unistd-safer: - # Code from module unistd-safer-tests: - # Code from module unistd-tests: + # Code from module unistd-h: + # Code from module unistd-h-tests: # Code from module unistdio/base: + # Code from module unistdio/base-tests: # Code from module unistdio/u-printf-args: # Code from module unistdio/u16-asnprintf: # Code from module unistdio/u16-asnprintf-tests: @@ -1176,6 +1162,7 @@ AC_DEFUN([gl_EARLY], # Code from module unistdio/ulc-vsprintf: # Code from module unistdio/ulc-vsprintf-tests: # Code from module unistr/base: + # Code from module unistr/base-tests: # Code from module unistr/u16-check: # Code from module unistr/u16-check-tests: # Code from module unistr/u16-chr: @@ -1410,8 +1397,9 @@ AC_DEFUN([gl_EARLY], # Code from module unistr/u8-to-u32-tests: # Code from module unistr/u8-uctomb: # Code from module unistr/u8-uctomb-tests: - # Code from module unitypes: + # Code from module unitypes-h: # Code from module uniwbrk/base: + # Code from module uniwbrk/base-tests: # Code from module uniwbrk/table: # Code from module uniwbrk/u16-wordbreaks: # Code from module uniwbrk/u16-wordbreaks-tests: @@ -1423,6 +1411,7 @@ AC_DEFUN([gl_EARLY], # Code from module uniwbrk/ulc-wordbreaks-tests: # Code from module uniwbrk/wordbreak-property: # Code from module uniwidth/base: + # Code from module uniwidth/base-tests: # Code from module uniwidth/u16-strwidth: # Code from module uniwidth/u16-strwidth-tests: # Code from module uniwidth/u16-width: @@ -1444,8 +1433,8 @@ AC_DEFUN([gl_EARLY], # Code from module vararrays: # Code from module verify: # Code from module verify-tests: - # Code from module wchar: - # Code from module wchar-tests: + # Code from module wchar-h: + # Code from module wchar-h-tests: # Code from module wcrtomb: # Code from module wcrtomb-tests: # Code from module wctob: @@ -1473,7 +1462,7 @@ AC_DEFUN([gl_EARLY], # Code from module xalloc-die-tests: # Code from module xalloc-oversized: # Code from module xconcat-filename: - # Code from module xgetcwd: + # Code from module xgetcwd-lgpl: # Code from module xsize: # Code from module yield: ]) @@ -1503,6 +1492,7 @@ AC_DEFUN([gl_INIT], gl_ASSERT_H gl_CONDITIONAL_HEADER([assert.h]) AC_PROG_MKDIR_P + gl_C_BOOL gl___BUILTIN_EXPECT AC_REQUIRE([gl_UCHAR_H]) dnl Determine REPLACE_MBSTATE_T, from which GNULIB_defined_mbstate_t is @@ -1606,6 +1596,9 @@ AC_DEFUN([gl_INIT], gl_CONDITIONAL_HEADER([errno.h]) AC_PROG_MKDIR_P AC_REQUIRE([gl_EXTERN_INLINE]) + gl_FCNTL_H + gl_FCNTL_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P AC_C_FLEXIBLE_ARRAY_MEMBER gl_FLOAT_H gl_CONDITIONAL_HEADER([float.h]) @@ -1633,6 +1626,14 @@ AC_DEFUN([gl_INIT], gl_MATH_MODULE_INDICATOR([frexpl]) gl_FUNC_FSETERR gl_CONDITIONAL([GL_COND_OBJ_FSETERR], [test $ac_cv_func___fseterr = no]) + gl_FUNC_GETLOCALENAME_L_UNSAFE + gl_PREREQ_GETLOCALENAME_L_UNSAFE + gl_LOCALE_MODULE_INDICATOR([getlocalename_l-unsafe]) + gl_FUNC_GETLOCALENAME_L_UNSAFE + gl_PREREQ_GETLOCALENAME_L_UNSAFE + AC_REQUIRE([AC_CANONICAL_HOST]) + gl_CONDITIONAL([GL_COND_OBJ_GETLOCALENAME_L_UNSAFE_LIMITED], + [case "$host_os" in openbsd* | aix* | *-android*) false;; *) true;; esac]) AC_REQUIRE([gl_FUNC_SETLOCALE_NULL]) HARD_LOCALE_LIB="$SETLOCALE_NULL_LIB" AC_SUBST([HARD_LOCALE_LIB]) @@ -1687,9 +1688,6 @@ AC_DEFUN([gl_INIT], gl_CONDITIONAL([GL_COND_OBJ_ISWXDIGIT], [! { test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; } && test $REPLACE_ISWXDIGIT = 1]) gl_WCTYPE_MODULE_INDICATOR([iswxdigit]) - gl_LANGINFO_H - gl_LANGINFO_H_REQUIRE_DEFAULTS - AC_PROG_MKDIR_P gl_LIMITS_H gl_CONDITIONAL_HEADER([limits.h]) AC_PROG_MKDIR_P @@ -1700,13 +1698,23 @@ AC_DEFUN([gl_INIT], gl_LOCALE_H gl_LOCALE_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P + gl_FUNC_LOCALECONV + gl_CONDITIONAL([GL_COND_OBJ_LOCALECONV], [test $REPLACE_LOCALECONV = 1]) + AM_COND_IF([GL_COND_OBJ_LOCALECONV], [ + gl_PREREQ_LOCALECONV + ]) + gl_LOCALE_MODULE_INDICATOR([localeconv]) + gl_MODULE_INDICATOR([localeconv]) + gl_LOCALENAME_ENVIRON + gl_LOCALE_MODULE_INDICATOR([localename-environ]) gl_LOCALENAME_UNSAFE gl_LOCALE_MODULE_INDICATOR([localename-unsafe]) gl_MUSL_LIBC gl_LOCALENAME_UNSAFE_LIMITED AC_REQUIRE([AC_CANONICAL_HOST]) gl_CONDITIONAL([GL_COND_OBJ_LOCALENAME_UNSAFE_LIMITED], - [case "$host_os" in netbsd* | solaris*) true;; *) false;; esac]) + [case "$host_os" in openbsd* | aix* | *-android*) false;; *) true;; esac]) + gl_MUSL_LIBC gl_LOCK gl_MODULE_INDICATOR([lock]) AC_REQUIRE([gl_FUNC_MALLOC_POSIX]) @@ -1783,6 +1791,9 @@ AC_DEFUN([gl_INIT], gl_SCHED_H gl_SCHED_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P + AC_REQUIRE([AC_CANONICAL_HOST]) + gl_CONDITIONAL([GL_COND_OBJ_SETLOCALE_FIXES], + [case "$host_os" in mingw* | windows* | *-android*) true;; *) false;; esac]) gl_FUNC_SETLOCALE_NULL gl_CONDITIONAL([GL_COND_OBJ_SETLOCALE_LOCK], [test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0]) @@ -1795,13 +1806,7 @@ AC_DEFUN([gl_INIT], gl_MATH_MODULE_INDICATOR([signbit]) gl_SIZE_MAX gt_TYPE_SSIZE_T - gl_C_BOOL - AC_CHECK_HEADERS_ONCE([stdckdint.h]) - if test $ac_cv_header_stdckdint_h = yes; then - GL_GENERATE_STDCKDINT_H=false - else - GL_GENERATE_STDCKDINT_H=true - fi + gl_STDCKDINT_H gl_CONDITIONAL_HEADER([stdckdint.h]) AC_PROG_MKDIR_P gl_STDDEF_H @@ -1823,6 +1828,9 @@ AC_DEFUN([gl_INIT], gl_STRING_H gl_STRING_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P + gl_FUNC_STREQ + gl_FUNC_MEMEQ + gl_STRING_MODULE_INDICATOR([stringeq]) gl_FUNC_STRNCAT gl_CONDITIONAL([GL_COND_OBJ_STRNCAT], [test $REPLACE_STRNCAT = 1]) AM_COND_IF([GL_COND_OBJ_STRNCAT], [ @@ -1841,6 +1849,52 @@ AC_DEFUN([gl_INIT], gl_SYS_TYPES_H gl_SYS_TYPES_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P + gl_MUSL_LIBC + gl_CONDITIONAL([LIBC_IS_GNU], + [case "$host_os" in *-gnu* | gnu*) true ;; *) false ;; esac]) + gl_CONDITIONAL([LIBC_IS_MUSL], + [case "$host_os" in *-musl* | midipix*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_MACOS], + [case "$host_os" in darwin*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_MACOS11], + [case "$host_os" in darwin20.*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_MACOS12], + [case "$host_os" in darwin21.*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_MACOS13], + [case "$host_os" in darwin22.*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_MACOS14], + [case "$host_os" in darwin23.*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_FREEBSD], + [case "$host_os" in freebsd* | dragonfly*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_NETBSD], + [case "$host_os" in netbsd*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_OPENBSD], + [case "$host_os" in openbsd*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_AIX], + [case "$host_os" in aix*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_SOLARIS11], + [case "$host_os" in solaris2.11*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_CYGWIN], + [case "$host_os" in cygwin*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_NATIVE_WINDOWS], + [case "$host_os" in mingw* | windows*) true ;; *) false ;; esac]) + is_mingw=false; is_msvc=false + case "$host_os" in + windows*-msvc*) is_msvc=true ;; + mingw* | windows*) + AC_EGREP_CPP([Special], [ + #ifdef _MSC_VER + Special + #endif + ], [is_msvc=true], [is_mingw=true]) + ;; + esac + gl_CONDITIONAL([PLATFORM_IS_MINGW], [$is_mingw]) + gl_CONDITIONAL([PLATFORM_IS_MSVC], [$is_msvc]) + gl_CONDITIONAL([OS_IS_HAIKU], + [case "$host_os" in haiku*) true ;; *) false ;; esac]) + gl_CONDITIONAL([OS_IS_ANDROID], + [case "$host_os" in linux-androideabi*) true ;; *) false ;; esac]) AC_CHECK_HEADERS([sys/single_threaded.h]) AC_REQUIRE([gl_THREADLIB]) gl_TIME_H @@ -1861,66 +1915,66 @@ AC_DEFUN([gl_INIT], AC_REQUIRE([AC_C_INLINE]) gl_LIBUNISTRING_MODULE([0.9.3], [unicase/locale-language]) AC_PROG_MKDIR_P - gl_LIBUNISTRING_MODULE([1.3], [unicase/tolower]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/totitle]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/toupper]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-casecmp]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-casecoll]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-casefold]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-casexfrm]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-ct-casefold]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-ct-tolower]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-ct-totitle]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-ct-toupper]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-is-cased]) - gl_LIBUNISTRING_MODULE([1.2], [unicase/u16-is-casefolded]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-is-lowercase]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-is-titlecase]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-is-uppercase]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-prefix-context]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-suffix-context]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-tolower]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-totitle]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u16-toupper]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-casecmp]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-casecoll]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-casefold]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-casexfrm]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-ct-casefold]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-ct-tolower]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-ct-totitle]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-ct-toupper]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-is-cased]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-is-casefolded]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-is-lowercase]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-is-titlecase]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-is-uppercase]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-prefix-context]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-suffix-context]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-tolower]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-totitle]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u32-toupper]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-casecmp]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-casecoll]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-casefold]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-casexfrm]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-ct-casefold]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-ct-tolower]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-ct-totitle]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-ct-toupper]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-is-cased]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-is-casefolded]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-is-lowercase]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-is-titlecase]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-is-uppercase]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-prefix-context]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-suffix-context]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-tolower]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-totitle]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/u8-toupper]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/ulc-casecmp]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/ulc-casecoll]) - gl_LIBUNISTRING_MODULE([1.3], [unicase/ulc-casexfrm]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/tolower]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/totitle]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/toupper]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-casecmp]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-casecoll]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-casefold]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-casexfrm]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-ct-casefold]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-ct-tolower]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-ct-totitle]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-ct-toupper]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-is-cased]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-is-casefolded]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-is-lowercase]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-is-titlecase]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-is-uppercase]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-prefix-context]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-suffix-context]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-tolower]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-totitle]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u16-toupper]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-casecmp]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-casecoll]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-casefold]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-casexfrm]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-ct-casefold]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-ct-tolower]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-ct-totitle]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-ct-toupper]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-is-cased]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-is-casefolded]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-is-lowercase]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-is-titlecase]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-is-uppercase]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-prefix-context]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-suffix-context]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-tolower]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-totitle]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u32-toupper]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-casecmp]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-casecoll]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-casefold]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-casexfrm]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-ct-casefold]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-ct-tolower]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-ct-totitle]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-ct-toupper]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-is-cased]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-is-casefolded]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-is-lowercase]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-is-titlecase]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-is-uppercase]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-prefix-context]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-suffix-context]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-tolower]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-totitle]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/u8-toupper]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/ulc-casecmp]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/ulc-casecoll]) + gl_LIBUNISTRING_MODULE([1.4], [unicase/ulc-casexfrm]) gl_LIBUNISTRING_LIBHEADER([0.9.11], [uniconv.h]) AC_PROG_MKDIR_P AC_REQUIRE([gl_BIGENDIAN]) @@ -1948,525 +2002,525 @@ AC_DEFUN([gl_INIT], gl_UNICTYPE_H gl_UNICTYPE_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P - gl_LIBUNISTRING_MODULE([0.9.11], [unictype/bidiclass-byname]) - gl_LIBUNISTRING_MODULE([0.9.11], [unictype/bidiclass-longname]) - gl_LIBUNISTRING_MODULE([0.9.11], [unictype/bidiclass-name]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/bidiclass-of]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/bidiclass-test]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/block-list]) - gl_LIBUNISTRING_MODULE([0.9.11], [unictype/block-test]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/bidiclass-byname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/bidiclass-longname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/bidiclass-name]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/bidiclass-of]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/bidiclass-test]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/block-list]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/block-test]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-C]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-C]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Cc]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Cc]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/category-Cf]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Cf]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Cn]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Cn]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Co]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Co]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Cs]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Cs]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-L]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-L]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-LC]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-LC]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Ll]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Ll]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Lm]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Lm]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Lo]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Lo]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Lt]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Lt]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Lu]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Lu]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-M]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-M]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Mc]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Mc]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Me]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Me]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Mn]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Mn]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-N]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-N]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Nd]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Nd]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Nl]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Nl]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/category-No]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-No]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-P]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-P]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Pc]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Pc]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Pd]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Pd]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/category-Pe]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Pe]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Pf]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Pf]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Pi]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Pi]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Po]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Po]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/category-Ps]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Ps]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-S]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-S]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/category-Sc]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Sc]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/category-Sk]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Sk]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-Sm]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Sm]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/category-So]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-So]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Z]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Z]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Zl]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Zl]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Zp]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Zp]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/category-Zs]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/category-and]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/category-and-not]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/category-byname]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-longname]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-name]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/category-Zs]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/category-and]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/category-and-not]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/category-byname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/category-longname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/category-name]) dnl Since _UC_CATEGORY_NONE is not exported from an installed libunistring, dnl don't use gl_LIBUNISTRING_MODULE here. AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/category-of]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/category-or]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/category-of]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/category-or]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-test]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/combining-class]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/combining-class-byname]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/combining-class-longname]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/combining-class-name]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/category-test]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/combining-class]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/combining-class-byname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/combining-class-longname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/combining-class-name]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/ctype-alnum]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-alnum]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/ctype-alpha]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-alpha]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/ctype-blank]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-blank]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/ctype-cntrl]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-cntrl]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/ctype-digit]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-digit]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/ctype-graph]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-graph]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/ctype-lower]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-lower]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/ctype-print]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-print]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/ctype-punct]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-punct]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/ctype-space]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-space]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/ctype-upper]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-upper]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/ctype-xdigit]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/decimal-digit]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/digit]) - gl_LIBUNISTRING_MODULE([1.2], [unictype/incb-byname]) - gl_LIBUNISTRING_MODULE([1.2], [unictype/incb-name]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/incb-of]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/joininggroup-byname]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/joininggroup-name]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/joininggroup-of]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/joiningtype-byname]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/joiningtype-longname]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/joiningtype-name]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/joiningtype-of]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/mirror]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/numeric]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/ctype-xdigit]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/decimal-digit]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/digit]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/incb-byname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/incb-name]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/incb-of]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/joininggroup-byname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/joininggroup-name]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/joininggroup-of]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/joiningtype-byname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/joiningtype-longname]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/joiningtype-name]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/joiningtype-of]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/mirror]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/numeric]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-alphabetic]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-alphabetic]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-ascii-hex-digit]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-ascii-hex-digit]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-arabic-digit]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-arabic-digit]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-arabic-right-to-left]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-arabic-right-to-left]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-block-separator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-block-separator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-boundary-neutral]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-boundary-neutral]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-common-separator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-common-separator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-control]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-control]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-embedding-or-override]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-embedding-or-override]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-eur-num-separator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-eur-num-separator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-eur-num-terminator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-eur-num-terminator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-european-digit]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-european-digit]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-hebrew-right-to-left]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-hebrew-right-to-left]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-left-to-right]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-left-to-right]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-non-spacing-mark]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-non-spacing-mark]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-other-neutral]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-other-neutral]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-pdf]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-pdf]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-segment-separator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-segment-separator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-bidi-whitespace]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/property-byname]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-bidi-whitespace]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/property-byname]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-case-ignorable]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-case-ignorable]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-cased]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-cased]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-changes-when-casefolded]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-changes-when-casefolded]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-changes-when-casemapped]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-changes-when-casemapped]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-changes-when-lowercased]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-changes-when-lowercased]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-changes-when-titlecased]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-changes-when-titlecased]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-changes-when-uppercased]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-changes-when-uppercased]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-combining]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-combining]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-composite]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-composite]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/property-currency-symbol]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-currency-symbol]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-dash]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-dash]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-decimal-digit]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-decimal-digit]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/property-default-ignorable-code-point]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-default-ignorable-code-point]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-deprecated]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-deprecated]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-diacritic]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-diacritic]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-emoji]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-emoji]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/property-emoji-component]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-emoji-component]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/property-emoji-modifier]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-emoji-modifier]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/property-emoji-modifier-base]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-emoji-modifier-base]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-emoji-presentation]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-emoji-presentation]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/property-extended-pictographic]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-extended-pictographic]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-extender]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-extender]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-format-control]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-format-control]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-grapheme-base]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-grapheme-base]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-grapheme-extend]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-grapheme-extend]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-grapheme-link]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-grapheme-link]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-hex-digit]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-hex-digit]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-hyphen]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-hyphen]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.2], [unictype/property-id-compat-math-continue]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-id-compat-math-continue]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.2], [unictype/property-id-compat-math-start]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-id-compat-math-start]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-id-continue]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-id-continue]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-id-start]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-id-start]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-ideographic]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-ideographic]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.2], [unictype/property-ids-binary-operator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-ids-binary-operator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-ids-trinary-operator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-ids-trinary-operator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.2], [unictype/property-ids-unary-operator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-ids-unary-operator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/property-ignorable-control]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-ignorable-control]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-iso-control]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-iso-control]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-join-control]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-join-control]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-left-of-pair]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-left-of-pair]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-line-separator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-line-separator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-logical-order-exception]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-logical-order-exception]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-lowercase]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-lowercase]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-math]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-math]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-modifier-combining-mark]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-modifier-combining-mark]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-non-break]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-non-break]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-not-a-character]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-not-a-character]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-numeric]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-numeric]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-other-alphabetic]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-other-alphabetic]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-other-default-ignorable-code-point]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-other-default-ignorable-code-point]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-other-grapheme-extend]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-other-grapheme-extend]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.2], [unictype/property-other-id-continue]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-other-id-continue]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-other-id-start]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-other-id-start]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/property-other-lowercase]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-other-lowercase]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-other-math]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-other-math]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-other-uppercase]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-other-uppercase]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-paired-punctuation]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-paired-punctuation]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-paragraph-separator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-paragraph-separator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-pattern-syntax]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-pattern-syntax]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-pattern-white-space]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-pattern-white-space]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.2], [unictype/property-prepended-concatenation-mark]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-prepended-concatenation-mark]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-private-use]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-private-use]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-punctuation]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-punctuation]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-quotation-mark]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-quotation-mark]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-radical]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-radical]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/property-regional-indicator]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-regional-indicator]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-sentence-terminal]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-sentence-terminal]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/property-soft-dotted]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-soft-dotted]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-space]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-space]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-terminal-punctuation]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/property-test]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-terminal-punctuation]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/property-test]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-titlecase]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-titlecase]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-unassigned-code-value]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-unassigned-code-value]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.2], [unictype/property-unified-ideograph]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-unified-ideograph]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-uppercase]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-uppercase]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.11], [unictype/property-variation-selector]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-variation-selector]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], [unictype/property-white-space]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-white-space]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-xid-continue]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-xid-continue]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unictype/property-xid-start]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-xid-start]) AC_REQUIRE([AC_C_INLINE]) gl_UNICTYPE_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/property-zero-width]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/scripts]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unictype/property-zero-width]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/scripts]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/syntax-c-ident]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/syntax-c-whitespace]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/syntax-c-ident]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/syntax-c-whitespace]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unictype/syntax-java-ident]) - gl_LIBUNISTRING_MODULE([0.9.8], [unictype/syntax-java-whitespace]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/syntax-java-ident]) + gl_LIBUNISTRING_MODULE([1.4], [unictype/syntax-java-whitespace]) gl_LIBUNISTRING_LIBHEADER([1.2], [unigbrk.h]) AC_PROG_MKDIR_P gl_MODULE_INDICATOR([unigbrk/u16-grapheme-breaks]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/u16-grapheme-breaks]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/u16-grapheme-breaks]) gl_MODULE_INDICATOR([unigbrk/u16-grapheme-next]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/u16-grapheme-next]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/u16-grapheme-next]) gl_MODULE_INDICATOR([unigbrk/u16-grapheme-prev]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/u16-grapheme-prev]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/u16-grapheme-prev]) gl_MODULE_INDICATOR([unigbrk/u32-grapheme-breaks]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/u32-grapheme-breaks]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/u32-grapheme-breaks]) gl_MODULE_INDICATOR([unigbrk/u32-grapheme-next]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/u32-grapheme-next]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/u32-grapheme-next]) gl_MODULE_INDICATOR([unigbrk/u32-grapheme-prev]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/u32-grapheme-prev]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/u32-grapheme-prev]) gl_MODULE_INDICATOR([unigbrk/u8-grapheme-breaks]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/u8-grapheme-breaks]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/u8-grapheme-breaks]) gl_MODULE_INDICATOR([unigbrk/u8-grapheme-next]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/u8-grapheme-next]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/u8-grapheme-next]) gl_MODULE_INDICATOR([unigbrk/u8-grapheme-prev]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/u8-grapheme-prev]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/uc-gbrk-prop]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/u8-grapheme-prev]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/uc-gbrk-prop]) gl_MODULE_INDICATOR([unigbrk/uc-grapheme-breaks]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/uc-grapheme-breaks]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/uc-is-grapheme-break]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/uc-grapheme-breaks]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/uc-is-grapheme-break]) gl_MODULE_INDICATOR([unigbrk/ulc-grapheme-breaks]) - gl_LIBUNISTRING_MODULE([1.3], [unigbrk/ulc-grapheme-breaks]) + gl_LIBUNISTRING_MODULE([1.4], [unigbrk/ulc-grapheme-breaks]) gl_LIBUNISTRING_LIBHEADER([0.9.11], [unilbrk.h]) AC_PROG_MKDIR_P AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [unilbrk/u16-possible-linebreaks]) - gl_LIBUNISTRING_MODULE([1.3], [unilbrk/u16-width-linebreaks]) - gl_LIBUNISTRING_MODULE([1.3], [unilbrk/u32-possible-linebreaks]) - gl_LIBUNISTRING_MODULE([1.3], [unilbrk/u32-width-linebreaks]) - gl_LIBUNISTRING_MODULE([1.3], [unilbrk/u8-possible-linebreaks]) - gl_LIBUNISTRING_MODULE([1.3], [unilbrk/u8-width-linebreaks]) - gl_LIBUNISTRING_MODULE([1.3], [unilbrk/ulc-possible-linebreaks]) - gl_LIBUNISTRING_MODULE([1.3], [unilbrk/ulc-width-linebreaks]) + gl_LIBUNISTRING_MODULE([1.4], [unilbrk/u16-possible-linebreaks]) + gl_LIBUNISTRING_MODULE([1.4], [unilbrk/u16-width-linebreaks]) + gl_LIBUNISTRING_MODULE([1.4], [unilbrk/u32-possible-linebreaks]) + gl_LIBUNISTRING_MODULE([1.4], [unilbrk/u32-width-linebreaks]) + gl_LIBUNISTRING_MODULE([1.4], [unilbrk/u8-possible-linebreaks]) + gl_LIBUNISTRING_MODULE([1.4], [unilbrk/u8-width-linebreaks]) + gl_LIBUNISTRING_MODULE([1.4], [unilbrk/ulc-possible-linebreaks]) + gl_LIBUNISTRING_MODULE([1.4], [unilbrk/ulc-width-linebreaks]) gl_LIBUNISTRING_LIBHEADER([1.2], [unimetadata.h]) gl_UNIMETADATA_H gl_UNIMETADATA_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P gl_UNIMETADATA_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [unimetadata/u-version]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [unimetadata/u-version]) gl_LIBUNISTRING_LIBHEADER([0.9.5], [uniname.h]) AC_PROG_MKDIR_P - gl_LIBUNISTRING_MODULE([1.3], [uniname/uniname]) + gl_LIBUNISTRING_MODULE([1.4], [uniname/uniname]) gl_LIBUNISTRING_LIBHEADER([1.2], [uninorm.h]) gl_UNINORM_H gl_UNINORM_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P - gl_LIBUNISTRING_MODULE([1.3], [uninorm/canonical-decomposition]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/canonical-decomposition]) gl_LIBUNISTRING_MODULE([1.3], [uninorm/composition]) gl_LIBUNISTRING_MODULE([0.9.11], [uninorm/decomposing-form]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/decomposition]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/decomposition]) AC_REQUIRE([AC_C_INLINE]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/filter]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/filter]) gl_UNINORM_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [uninorm/nfc]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [uninorm/nfc]) gl_UNINORM_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [uninorm/nfd]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [uninorm/nfd]) gl_UNINORM_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [uninorm/nfkc]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [uninorm/nfkc]) gl_UNINORM_H_REQUIRE_DEFAULTS - gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.3], [uninorm/nfkd]) + gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.4], [uninorm/nfkd]) gl_MODULE_INDICATOR_FOR_TESTS([uninorm/u16-normalize]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u16-normalize]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u16-normcmp]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u16-normcoll]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u16-normxfrm]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u16-normalize]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u16-normcmp]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u16-normcoll]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u16-normxfrm]) gl_MODULE_INDICATOR_FOR_TESTS([uninorm/u32-normalize]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u32-normalize]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u32-normcmp]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u32-normcoll]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u32-normxfrm]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u32-normalize]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u32-normcmp]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u32-normcoll]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u32-normxfrm]) gl_MODULE_INDICATOR_FOR_TESTS([uninorm/u8-normalize]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u8-normalize]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u8-normcmp]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u8-normcoll]) - gl_LIBUNISTRING_MODULE([1.3], [uninorm/u8-normxfrm]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u8-normalize]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u8-normcmp]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u8-normcoll]) + gl_LIBUNISTRING_MODULE([1.4], [uninorm/u8-normxfrm]) gl_UNISTD_H gl_UNISTD_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P @@ -2530,18 +2584,18 @@ AC_DEFUN([gl_INIT], gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.2]), [unistdio/u8-vasprintf]) gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.2]), [unistdio/u8-vsnprintf]) gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.2]), [unistdio/u8-vsprintf]) - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-asnprintf]) - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-asprintf]) - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-fprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-asnprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-asprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-fprintf]) gl_PREREQ_PRINTF_PARSE - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-snprintf]) - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-sprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-snprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-sprintf]) gl_PREREQ_VASNPRINTF_WITH_POSIX_EXTRAS - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-vasnprintf]) - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-vasprintf]) - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-vfprintf]) - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-vsnprintf]) - gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.3]), [unistdio/ulc-vsprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-vasnprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-vasprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-vfprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-vsnprintf]) + gl_LIBUNISTRING_MODULE(m4_ifdef([gl_PRINTF_SUPPORT_N_DIRECTIVE],[999.9],[1.4]), [unistdio/ulc-vsprintf]) gl_LIBUNISTRING_LIBHEADER([1.2], [unistr.h]) AC_PROG_MKDIR_P gl_LIBUNISTRING_MODULE([0.9], [unistr/u16-check]) @@ -2686,37 +2740,23 @@ AC_DEFUN([gl_INIT], gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-uctomb]) gl_LIBUNISTRING_LIBHEADER([0.9.11], [unitypes.h]) AC_PROG_MKDIR_P - AH_VERBATIM([unitypes_restrict], [ - /* This definition is a duplicate of the one in unitypes.h. - It is here so that we can cope with an older version of unitypes.h - that does not contain this definition and that is pre-installed among - the public header files. */ - # if defined __restrict \ - || 2 < __GNUC__ + (95 <= __GNUC_MINOR__) \ - || __clang_major__ >= 3 - # define _UC_RESTRICT __restrict - # elif 199901L <= __STDC_VERSION__ || defined restrict - # define _UC_RESTRICT restrict - # else - # define _UC_RESTRICT - # endif - ]) + gl_UNITYPES_H gl_LIBUNISTRING_LIBHEADER([0.9.11], [uniwbrk.h]) AC_PROG_MKDIR_P - gl_LIBUNISTRING_MODULE([1.3], [uniwbrk/u16-wordbreaks]) - gl_LIBUNISTRING_MODULE([1.3], [uniwbrk/u32-wordbreaks]) - gl_LIBUNISTRING_MODULE([1.3], [uniwbrk/u8-wordbreaks]) - gl_LIBUNISTRING_MODULE([1.3], [uniwbrk/ulc-wordbreaks]) - gl_LIBUNISTRING_MODULE([1.3], [uniwbrk/wordbreak-property]) + gl_LIBUNISTRING_MODULE([1.4], [uniwbrk/u16-wordbreaks]) + gl_LIBUNISTRING_MODULE([1.4], [uniwbrk/u32-wordbreaks]) + gl_LIBUNISTRING_MODULE([1.4], [uniwbrk/u8-wordbreaks]) + gl_LIBUNISTRING_MODULE([1.4], [uniwbrk/ulc-wordbreaks]) + gl_LIBUNISTRING_MODULE([1.4], [uniwbrk/wordbreak-property]) gl_LIBUNISTRING_LIBHEADER([0.9.11], [uniwidth.h]) AC_PROG_MKDIR_P - gl_LIBUNISTRING_MODULE([1.3], [uniwidth/u16-strwidth]) - gl_LIBUNISTRING_MODULE([1.3], [uniwidth/u16-width]) - gl_LIBUNISTRING_MODULE([1.3], [uniwidth/u32-strwidth]) - gl_LIBUNISTRING_MODULE([1.3], [uniwidth/u32-width]) - gl_LIBUNISTRING_MODULE([1.3], [uniwidth/u8-strwidth]) - gl_LIBUNISTRING_MODULE([1.3], [uniwidth/u8-width]) - gl_LIBUNISTRING_MODULE([1.3], [uniwidth/width]) + gl_LIBUNISTRING_MODULE([1.4], [uniwidth/u16-strwidth]) + gl_LIBUNISTRING_MODULE([1.4], [uniwidth/u16-width]) + gl_LIBUNISTRING_MODULE([1.4], [uniwidth/u32-strwidth]) + gl_LIBUNISTRING_MODULE([1.4], [uniwidth/u32-width]) + gl_LIBUNISTRING_MODULE([1.4], [uniwidth/u8-strwidth]) + gl_LIBUNISTRING_MODULE([1.4], [uniwidth/u8-width]) + gl_LIBUNISTRING_MODULE([1.4], [uniwidth/width]) gl_WCHAR_H gl_WCHAR_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P @@ -2766,27 +2806,35 @@ AC_DEFUN([gl_INIT], gl_libobjs= gl_ltlibobjs= gl_libobjdeps= + gl_libunistring_libobjs= + gl_libunistring_ltlibobjs= + gl_libunistring_libobjdeps= if test -n "$gl_LIBOBJS"; then # Remove the extension. changequote(,)dnl sed_drop_objext='s/\.o$//;s/\.obj$//' sed_dirname1='s,//*,/,g' sed_dirname2='s,\(.\)/$,\1,' - sed_dirname3='s,^[^/]*$,.,' - sed_dirname4='s,\(.\)/[^/]*$,\1,' + sed_dirname3='s,[^/]*$,,' sed_basename1='s,.*/,,' changequote([, ])dnl for i in `for i in $gl_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do gl_libobjs="$gl_libobjs $i.$ac_objext" gl_ltlibobjs="$gl_ltlibobjs $i.lo" - i_dir=`echo "$i" | sed -e "$sed_dirname1" -e "$sed_dirname2" -e "$sed_dirname3" -e "$sed_dirname4"` + i_dir=`echo "$i" | sed -e "$sed_dirname1" -e "$sed_dirname2" -e "$sed_dirname3"` i_base=`echo "$i" | sed -e "$sed_basename1"` - gl_libobjdeps="$gl_libobjdeps $i_dir/\$(DEPDIR)/$i_base.Plo" + gl_libunistring_libobjs="$gl_libunistring_libobjs $i_dir""libunistring_a-$i_base.$ac_objext" + gl_libunistring_ltlibobjs="$gl_libunistring_ltlibobjs $i_dir""libunistring_la-$i_base.lo" + gl_libobjdeps="$gl_libobjdeps $i_dir\$(DEPDIR)/$i_base.Plo" + gl_libunistring_libobjdeps="$gl_libunistring_libobjdeps $i_dir\$(DEPDIR)/libunistring_la-$i_base.Plo" done fi AC_SUBST([gl_LIBOBJS], [$gl_libobjs]) AC_SUBST([gl_LTLIBOBJS], [$gl_ltlibobjs]) AC_SUBST([gl_LIBOBJDEPS], [$gl_libobjdeps]) + AC_SUBST([gl_libunistring_LIBOBJS], [$gl_libunistring_libobjs]) + AC_SUBST([gl_libunistring_LTLIBOBJS], [$gl_libunistring_ltlibobjs]) + AC_SUBST([gl_libunistring_LIBOBJDEPS], [$gl_libunistring_libobjdeps]) ]) gltests_libdeps= gltests_ltlibdeps= @@ -2816,7 +2864,6 @@ changequote([, ])dnl gl_ARPA_INET_H gl_ARPA_INET_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P - AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([gl_SYS_SOCKET_H]) gl_CONDITIONAL([GL_COND_OBJ_BIND], [test "$ac_cv_header_winsock2_h" = yes]) gl_SYS_SOCKET_MODULE_INDICATOR([bind]) @@ -2929,22 +2976,11 @@ changequote([, ])dnl AC_LIBOBJ([calloc]) fi gl_STDLIB_MODULE_INDICATOR([calloc-posix]) - gl_UNISTD_MODULE_INDICATOR([chdir]) - gl_FUNC_CHDIR_LONG - gl_CONDITIONAL([GL_COND_OBJ_CHDIR_LONG], - [test $gl_cv_have_unlimited_file_name_length = no]) - AM_COND_IF([GL_COND_OBJ_CHDIR_LONG], [ - gl_PREREQ_CHDIR_LONG - ]) gl_MODULE_INDICATOR_FOR_TESTS([cloexec]) gl_FUNC_CLOSE gl_CONDITIONAL([GL_COND_OBJ_CLOSE], [test $REPLACE_CLOSE = 1]) gl_UNISTD_MODULE_INDICATOR([close]) gl_MODULE_INDICATOR([close]) - gl_FUNC_CLOSEDIR - gl_CONDITIONAL([GL_COND_OBJ_CLOSEDIR], - [test $HAVE_CLOSEDIR = 0 || test $REPLACE_CLOSEDIR = 1]) - gl_DIRENT_MODULE_INDICATOR([closedir]) AC_REQUIRE([gl_SYS_SOCKET_H]) gl_CONDITIONAL([GL_COND_OBJ_CONNECT], [test "$ac_cv_header_winsock2_h" = yes]) gl_SYS_SOCKET_MODULE_INDICATOR([connect]) @@ -2952,24 +2988,7 @@ changequote([, ])dnl gl_CTYPE_H gl_CTYPE_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P - gl_CHECK_TYPE_STRUCT_DIRENT_D_INO - gl_DIRENT_H - gl_DIRENT_H_REQUIRE_DEFAULTS - AC_PROG_MKDIR_P - gl_FUNC_DIRFD - gl_CONDITIONAL([GL_COND_OBJ_DIRFD], - [test $HAVE_DIRFD = 0 || test $REPLACE_DIRFD = 1]) - AM_COND_IF([GL_COND_OBJ_DIRFD], [ - gl_PREREQ_DIRFD - ]) - gl_DIRENT_MODULE_INDICATOR([dirfd]) gl_DOUBLE_SLASH_ROOT - gl_FUNC_DUP - gl_CONDITIONAL([GL_COND_OBJ_DUP], [test $REPLACE_DUP = 1]) - AM_COND_IF([GL_COND_OBJ_DUP], [ - gl_PREREQ_DUP - ]) - gl_UNISTD_MODULE_INDICATOR([dup]) gl_FUNC_DUP2 gl_CONDITIONAL([GL_COND_OBJ_DUP2], [test $REPLACE_DUP2 = 1]) AM_COND_IF([GL_COND_OBJ_DUP2], [ @@ -2989,33 +3008,16 @@ changequote([, ])dnl AM_][XGETTEXT_OPTION([--flag=error_at_line:5:c-format])]) gl_ERROR_H AC_PROG_MKDIR_P - gl_FUNC_FCHDIR - gl_CONDITIONAL([GL_COND_OBJ_FCHDIR], - [test $HAVE_FCHDIR = 0 || test $REPLACE_FCHDIR = 1]) - AM_COND_IF([GL_COND_OBJ_FCHDIR], [ - gl_PREREQ_FCHDIR - ]) - gl_UNISTD_MODULE_INDICATOR([fchdir]) gl_FUNC_FCNTL gl_CONDITIONAL([GL_COND_OBJ_FCNTL], [test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1]) gl_FCNTL_MODULE_INDICATOR([fcntl]) - gl_FCNTL_H - gl_FCNTL_H_REQUIRE_DEFAULTS - AC_PROG_MKDIR_P - gl_MODULE_INDICATOR([fd-safer-flag]) gl_FUNC_FDOPEN gl_CONDITIONAL([GL_COND_OBJ_FDOPEN], [test $REPLACE_FDOPEN = 1]) AM_COND_IF([GL_COND_OBJ_FDOPEN], [ gl_PREREQ_FDOPEN ]) gl_STDIO_MODULE_INDICATOR([fdopen]) - gl_FUNC_FDOPENDIR - gl_CONDITIONAL([GL_COND_OBJ_FDOPENDIR], - [test $HAVE_FDOPENDIR = 0 || test $REPLACE_FDOPENDIR = 1]) - gl_DIRENT_MODULE_INDICATOR([fdopendir]) - gl_MODULE_INDICATOR([fdopendir]) - gl_FILE_NAME_CONCAT_LGPL gl_FUNC_FSTAT gl_CONDITIONAL([GL_COND_OBJ_FSTAT], [test $REPLACE_FSTAT = 1]) AM_COND_IF([GL_COND_OBJ_FSTAT], [ @@ -3028,11 +3030,6 @@ changequote([, ])dnl ]) gl_SYS_STAT_MODULE_INDICATOR([fstat]) gl_MODULE_INDICATOR([fstat]) - gl_FUNC_FSTATAT - gl_CONDITIONAL([GL_COND_OBJ_FSTATAT], - [test $HAVE_FSTATAT = 0 || test $REPLACE_FSTATAT = 1]) - gl_SYS_STAT_MODULE_INDICATOR([fstatat]) - gl_MODULE_INDICATOR([fstatat]) gl_FUNC_FTRUNCATE gl_CONDITIONAL([GL_COND_OBJ_FTRUNCATE], [test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1]) @@ -3040,13 +3037,6 @@ changequote([, ])dnl gl_PREREQ_FTRUNCATE ]) gl_UNISTD_MODULE_INDICATOR([ftruncate]) - gl_FUNC_GETCWD - gl_CONDITIONAL([GL_COND_OBJ_GETCWD], [test $REPLACE_GETCWD = 1]) - AM_COND_IF([GL_COND_OBJ_GETCWD], [ - gl_PREREQ_GETCWD - ]) - gl_MODULE_INDICATOR([getcwd]) - gl_UNISTD_MODULE_INDICATOR([getcwd]) gl_FUNC_GETCWD_LGPL gl_CONDITIONAL([GL_COND_OBJ_GETCWD_LGPL], [test $REPLACE_GETCWD = 1]) gl_UNISTD_MODULE_INDICATOR([getcwd]) @@ -3065,8 +3055,7 @@ changequote([, ])dnl gl_PREREQ_GETPROGNAME ]) gl_STDLIB_MODULE_INDICATOR([getprogname]) - AC_SUBST([LIBINTL]) - AC_SUBST([LTLIBINTL]) + gl_GETTEXT_H gl_FUNC_GETTIMEOFDAY gl_CONDITIONAL([GL_COND_OBJ_GETTIMEOFDAY], [test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1]) @@ -3074,6 +3063,7 @@ changequote([, ])dnl gl_PREREQ_GETTIMEOFDAY ]) gl_SYS_TIME_MODULE_INDICATOR([gettimeofday]) + GNULIB_I18N gl_MUSL_LIBC dnl Distinguish OpenBSD >= 6.2 from OpenBSD < 6.2. gl_CHECK_FUNCS_ANDROID([duplocale], [[#include <locale.h>]]) @@ -3112,9 +3102,11 @@ changequote([, ])dnl gl_CONDITIONAL([GL_COND_OBJ_LISTEN], [test "$ac_cv_header_winsock2_h" = yes]) gl_SYS_SOCKET_MODULE_INDICATOR([listen]) gl_MODULE_INDICATOR([listen]) + gl_WINDOWS_RC gl_CHECK_FUNCS_ANDROID([newlocale], [[#include <locale.h>]]) gl_CHECK_FUNCS_ANDROID([newlocale], [[#include <locale.h>]]) gl_MUSL_LIBC + gl_WINDOWS_RC AC_CHECK_HEADERS_ONCE([semaphore.h]) AC_CHECK_DECLS_ONCE([alarm]) AC_REQUIRE([gl_SEMAPHORE]) @@ -3140,6 +3132,7 @@ changequote([, ])dnl gt_LOCALE_FR_UTF8 gt_LOCALE_JA gt_LOCALE_ZH_CN + gl_WINDOWS_RC gt_LOCALE_EN_UTF8 gt_LOCALE_FR_UTF8 gt_LOCALE_EN_UTF8 @@ -3155,22 +3148,10 @@ changequote([, ])dnl gl_FUNC_MMAP_ANON AC_CHECK_HEADERS_ONCE([sys/mman.h]) AC_CHECK_FUNCS_ONCE([mprotect]) - gl_FUNC_MEMPCPY - gl_CONDITIONAL([GL_COND_OBJ_MEMPCPY], - [test $HAVE_MEMPCPY = 0 || test $REPLACE_MEMPCPY = 1]) - AM_COND_IF([GL_COND_OBJ_MEMPCPY], [ - gl_PREREQ_MEMPCPY - ]) - gl_STRING_MODULE_INDICATOR([mempcpy]) - gl_FUNC_MEMRCHR - gl_CONDITIONAL([GL_COND_OBJ_MEMRCHR], [test $ac_cv_func_memrchr = no]) - AM_COND_IF([GL_COND_OBJ_MEMRCHR], [ - gl_PREREQ_MEMRCHR - ]) - gl_STRING_MODULE_INDICATOR([memrchr]) - gl_FUNC_MMAP_ANON - AC_CHECK_HEADERS_ONCE([sys/mman.h]) - AC_CHECK_FUNCS_ONCE([mprotect]) + gl_FUNC_MKFIFO + gl_CONDITIONAL([GL_COND_OBJ_MKFIFO], + [test $HAVE_MKFIFO = 0 || test $REPLACE_MKFIFO = 1]) + gl_UNISTD_MODULE_INDICATOR([mkfifo]) AC_REQUIRE([gl_MSVC_INVAL]) gl_CONDITIONAL([GL_COND_OBJ_MSVC_INVAL], [test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1]) @@ -3192,18 +3173,7 @@ changequote([, ])dnl gl_PREREQ_OPEN ]) gl_FCNTL_MODULE_INDICATOR([open]) - gl_FUNC_OPENAT - gl_CONDITIONAL([GL_COND_OBJ_OPENAT], - [test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1]) - AM_COND_IF([GL_COND_OBJ_OPENAT], [ - gl_PREREQ_OPENAT - ]) - gl_MODULE_INDICATOR([openat]) dnl for lib/getcwd.c - gl_FCNTL_MODULE_INDICATOR([openat]) - gl_FUNC_OPENDIR - gl_CONDITIONAL([GL_COND_OBJ_OPENDIR], - [test $HAVE_OPENDIR = 0 || test $REPLACE_OPENDIR = 1]) - gl_DIRENT_MODULE_INDICATOR([opendir]) + AC_CHECK_DECLS_ONCE([alarm]) gl_PATHMAX gl_FUNC_PERROR gl_CONDITIONAL([GL_COND_OBJ_PERROR], [test $REPLACE_PERROR = 1]) @@ -3278,19 +3248,10 @@ changequote([, ])dnl gl_PREREQ_RANDOM_R ]) gl_STDLIB_MODULE_INDICATOR([random_r]) - gl_FUNC_READDIR - gl_CONDITIONAL([GL_COND_OBJ_READDIR], - [test $HAVE_READDIR = 0 || test $REPLACE_READDIR = 1]) - gl_DIRENT_MODULE_INDICATOR([readdir]) - gl_FUNC_REALLOC_GNU - if test $REPLACE_REALLOC_FOR_REALLOC_GNU = 1; then - AC_LIBOBJ([realloc]) - fi - gl_STDLIB_MODULE_INDICATOR([realloc-gnu]) gl_FUNC_REALLOC_POSIX - if test $REPLACE_REALLOC_FOR_REALLOC_POSIX = 1; then - AC_LIBOBJ([realloc]) - fi + gl_FUNC_REALLOC_0_NONNULL + gl_CONDITIONAL([GL_COND_OBJ_REALLOC_POSIX], + [test $REPLACE_REALLOC_FOR_REALLOC_POSIX != 0]) gl_STDLIB_MODULE_INDICATOR([realloc-posix]) gl_FUNC_REALLOCARRAY gl_CONDITIONAL([GL_COND_OBJ_REALLOCARRAY], @@ -3300,11 +3261,6 @@ changequote([, ])dnl ]) gl_MODULE_INDICATOR([reallocarray]) gl_STDLIB_MODULE_INDICATOR([reallocarray]) - gl_FUNC_REWINDDIR - gl_CONDITIONAL([GL_COND_OBJ_REWINDDIR], - [test $HAVE_REWINDDIR = 0 || test $REPLACE_REWINDDIR = 1]) - gl_DIRENT_MODULE_INDICATOR([rewinddir]) - gl_SAVE_CWD gl_FUNC_SCHED_YIELD gl_CONDITIONAL([GL_COND_OBJ_SCHED_YIELD], [test $HAVE_SCHED_YIELD = 0 || test $REPLACE_SCHED_YIELD = 1]) @@ -3328,6 +3284,7 @@ changequote([, ])dnl gt_LOCALE_FR_UTF8 gt_LOCALE_JA gt_LOCALE_ZH_CN + gl_WINDOWS_RC AC_REQUIRE([gl_SYS_SOCKET_H]) gl_CONDITIONAL([GL_COND_OBJ_SETSOCKOPT], [test "$ac_cv_header_winsock2_h" = yes]) @@ -3383,6 +3340,18 @@ changequote([, ])dnl gl_STDIO_H gl_STDIO_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P + USES_MSVCRT=0 + case "$host_os" in + mingw* | windows*) + AC_EGREP_CPP([Special], [ + #ifndef _UCRT + Special + #endif + ], + [USES_MSVCRT=1]) + ;; + esac + gl_CONDITIONAL([GL_COND_OBJ_STDIO_CONSOLESAFE], [test $USES_MSVCRT = 1]) gl_CONDITIONAL([GL_COND_OBJ_STDIO_READ], [test $REPLACE_STDIO_READ_FUNCS = 1]) gl_CONDITIONAL([GL_COND_OBJ_STDIO_WRITE], [test $REPLACE_STDIO_WRITE_FUNCS = 1]) dnl No need to create extra modules for these functions. Everyone who uses @@ -3416,12 +3385,8 @@ changequote([, ])dnl gl_PREREQ_STPCPY ]) gl_STRING_MODULE_INDICATOR([stpcpy]) - gl_FUNC_STRDUP_POSIX - gl_CONDITIONAL([GL_COND_OBJ_STRDUP], [test $REPLACE_STRDUP = 1]) - AM_COND_IF([GL_COND_OBJ_STRDUP], [ - gl_PREREQ_STRDUP - ]) - gl_STRING_MODULE_INDICATOR([strdup]) + gl_STRING_MODULE_INDICATOR([str_endswith]) + gl_STRING_MODULE_INDICATOR([str_startswith]) gl_FUNC_STRERROR gl_CONDITIONAL([GL_COND_OBJ_STRERROR], [test $REPLACE_STRERROR = 1]) gl_MODULE_INDICATOR([strerror]) @@ -3473,50 +3438,6 @@ changequote([, ])dnl gl_SYS_UIO_H gl_SYS_UIO_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P - gl_MUSL_LIBC - gl_CONDITIONAL([LIBC_IS_GNU], - [case "$host_os" in *-gnu* | gnu*) true ;; *) false ;; esac]) - gl_CONDITIONAL([LIBC_IS_MUSL], - [case "$host_os" in *-musl* | midipix*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_MACOS], - [case "$host_os" in darwin*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_MACOS11], - [case "$host_os" in darwin20.*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_MACOS12], - [case "$host_os" in darwin21.*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_MACOS13], - [case "$host_os" in darwin22.*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_MACOS14], - [case "$host_os" in darwin23.*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_FREEBSD], - [case "$host_os" in freebsd* | dragonfly*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_NETBSD], - [case "$host_os" in netbsd*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_OPENBSD], - [case "$host_os" in openbsd*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_AIX], - [case "$host_os" in aix*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_SOLARIS11], - [case "$host_os" in solaris2.11*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_CYGWIN], - [case "$host_os" in cygwin*) true ;; *) false ;; esac]) - gl_CONDITIONAL([OS_IS_NATIVE_WINDOWS], - [case "$host_os" in mingw* | windows*) true ;; *) false ;; esac]) - is_mingw=false; is_msvc=false - case "$host_os" in - windows*-msvc*) is_msvc=true ;; - mingw* | windows*) - AC_EGREP_CPP([Special], [ - #ifdef _MSC_VER - Special - #endif - ], [is_msvc=true], [is_mingw=true]) - ;; - esac - gl_CONDITIONAL([PLATFORM_IS_MINGW], [$is_mingw]) - gl_CONDITIONAL([PLATFORM_IS_MSVC], [$is_msvc]) - gl_CONDITIONAL([OS_IS_ANDROID], - [case "$host_os" in linux-androideabi*) true ;; *) false ;; esac]) gl_THREAD gl_FUNC_TIME gl_CONDITIONAL([GL_COND_OBJ_TIME], [test $REPLACE_TIME = 1]) @@ -3538,7 +3459,6 @@ changequote([, ])dnl AC_CHECK_DECLS_ONCE([alarm]) AC_CHECK_DECLS_ONCE([alarm]) AC_CHECK_DECLS_ONCE([alarm]) - gl_UNISTD_SAFER gt_LOCALE_FR gt_LOCALE_FR_UTF8 gt_LOCALE_FR @@ -3697,27 +3617,35 @@ changequote([, ])dnl gltests_libobjs= gltests_ltlibobjs= gltests_libobjdeps= + gltests_libunistring_libobjs= + gltests_libunistring_ltlibobjs= + gltests_libunistring_libobjdeps= if test -n "$gltests_LIBOBJS"; then # Remove the extension. changequote(,)dnl sed_drop_objext='s/\.o$//;s/\.obj$//' sed_dirname1='s,//*,/,g' sed_dirname2='s,\(.\)/$,\1,' - sed_dirname3='s,^[^/]*$,.,' - sed_dirname4='s,\(.\)/[^/]*$,\1,' + sed_dirname3='s,[^/]*$,,' sed_basename1='s,.*/,,' changequote([, ])dnl for i in `for i in $gltests_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do gltests_libobjs="$gltests_libobjs $i.$ac_objext" gltests_ltlibobjs="$gltests_ltlibobjs $i.lo" - i_dir=`echo "$i" | sed -e "$sed_dirname1" -e "$sed_dirname2" -e "$sed_dirname3" -e "$sed_dirname4"` + i_dir=`echo "$i" | sed -e "$sed_dirname1" -e "$sed_dirname2" -e "$sed_dirname3"` i_base=`echo "$i" | sed -e "$sed_basename1"` - gltests_libobjdeps="$gltests_libobjdeps $i_dir/\$(DEPDIR)/$i_base.Plo" + gltests_libunistring_libobjs="$gltests_libunistring_libobjs $i_dir""libunistring_a-$i_base.$ac_objext" + gltests_libunistring_ltlibobjs="$gltests_libunistring_ltlibobjs $i_dir""libunistring_la-$i_base.lo" + gltests_libobjdeps="$gltests_libobjdeps $i_dir\$(DEPDIR)/$i_base.Plo" + gltests_libunistring_libobjdeps="$gltests_libunistring_libobjdeps $i_dir\$(DEPDIR)/libunistring_la-$i_base.Plo" done fi AC_SUBST([gltests_LIBOBJS], [$gltests_libobjs]) AC_SUBST([gltests_LTLIBOBJS], [$gltests_ltlibobjs]) AC_SUBST([gltests_LIBOBJDEPS], [$gltests_libobjdeps]) + AC_SUBST([gltests_libunistring_LIBOBJS], [$gltests_libunistring_libobjs]) + AC_SUBST([gltests_libunistring_LTLIBOBJS], [$gltests_libunistring_ltlibobjs]) + AC_SUBST([gltests_libunistring_LIBOBJDEPS], [$gltests_libunistring_libobjdeps]) ]) AC_REQUIRE([gl_CC_GNULIB_WARNINGS]) LIBTESTS_LIBDEPS="$gltests_libdeps" @@ -3798,7 +3726,6 @@ AC_DEFUN([gl_FILE_LIST], [ lib/c-strcase.h lib/c-strcasecmp.c lib/c-strcaseeq.h - lib/c-strncasecmp.c lib/c32is-impl.h lib/c32isalnum.c lib/c32isalpha.c @@ -3816,6 +3743,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/c32tolower.c lib/c32width.c lib/errno.in.h + lib/fcntl.in.h lib/flexmember.h lib/float+.h lib/float.c @@ -3826,6 +3754,8 @@ AC_DEFUN([gl_FILE_LIST], [ lib/frexpl.c lib/fseterr.c lib/fseterr.h + lib/getlocalename_l-unsafe.c + lib/getlocalename_l-unsafe.h lib/glthread/lock.c lib/glthread/lock.h lib/glthread/once.c @@ -3838,8 +3768,6 @@ AC_DEFUN([gl_FILE_LIST], [ lib/iconv_close.c lib/iconv_open-aix.gperf lib/iconv_open-hpux.gperf - lib/iconv_open-irix.gperf - lib/iconv_open-osf.gperf lib/iconv_open-solaris.gperf lib/iconv_open-zos.gperf lib/iconv_open.c @@ -3859,13 +3787,14 @@ AC_DEFUN([gl_FILE_LIST], [ lib/iswpunct.c lib/iswxdigit.c lib/itold.c - lib/langinfo.in.h lib/lc-charset-dispatch.c lib/lc-charset-dispatch.h lib/limits.in.h lib/localcharset.c lib/localcharset.h lib/locale.in.h + lib/localeconv.c + lib/localename-environ.c lib/localename-table.c lib/localename-table.h lib/localename-unsafe.c @@ -3908,6 +3837,8 @@ AC_DEFUN([gl_FILE_LIST], [ lib/relocatable.h lib/relocatable.valgrind lib/sched.in.h + lib/setlocale-fixes.c + lib/setlocale-fixes.h lib/setlocale-lock.c lib/setlocale_null-unlocked.c lib/setlocale_null.c @@ -3920,6 +3851,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/stddef.in.h lib/stdint.in.h lib/stdio-impl.h + lib/stdlib.c lib/stdlib.in.h lib/str-two-way.h lib/streq.h @@ -3927,6 +3859,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/striconveh.h lib/striconveha.c lib/striconveha.h + lib/string.c lib/string.in.h lib/strncat.c lib/strstr.c @@ -4424,6 +4357,8 @@ AC_DEFUN([gl_FILE_LIST], [ lib/unigbrk.in.h lib/unigbrk/gbrkprop.h lib/unigbrk/u-grapheme-breaks.h + lib/unigbrk/u-grapheme-next.h + lib/unigbrk/u-grapheme-prev.h lib/unigbrk/u16-grapheme-breaks.c lib/unigbrk/u16-grapheme-next.c lib/unigbrk/u16-grapheme-prev.c @@ -4780,18 +4715,11 @@ AC_DEFUN([gl_FILE_LIST], [ m4/c-bool.m4 m4/c32rtomb.m4 m4/calloc.m4 - m4/chdir-long.m4 m4/close.m4 - m4/closedir.m4 m4/codeset.m4 m4/ctype_h.m4 - m4/d-ino.m4 - m4/dirent_h.m4 - m4/dirfd.m4 m4/double-slash-root.m4 - m4/dup.m4 m4/dup2.m4 - m4/eealloc.m4 m4/environ.m4 m4/errno_h.m4 m4/error.m4 @@ -4802,13 +4730,10 @@ AC_DEFUN([gl_FILE_LIST], [ m4/extensions-aix.m4 m4/extensions.m4 m4/extern-inline.m4 - m4/fchdir.m4 m4/fcntl-o.m4 m4/fcntl.m4 m4/fcntl_h.m4 m4/fdopen.m4 - m4/fdopendir.m4 - m4/filenamecat.m4 m4/flexmember.m4 m4/float_h.m4 m4/fpieee.m4 @@ -4817,21 +4742,22 @@ AC_DEFUN([gl_FILE_LIST], [ m4/frexpl.m4 m4/fseterr.m4 m4/fstat.m4 - m4/fstatat.m4 m4/ftruncate.m4 - m4/getcwd-abort-bug.m4 - m4/getcwd-path-max.m4 m4/getcwd.m4 m4/getdtablesize.m4 + m4/getlocalename_l.m4 m4/getprogname.m4 + m4/gettext_h.m4 m4/gettimeofday.m4 m4/gnulib-common.m4 + m4/gnulib-i18n.m4 m4/host-cpu-c-abi.m4 m4/iconv.m4 m4/iconv_h.m4 m4/iconv_open.m4 m4/include_next.m4 m4/inet_pton.m4 + m4/init-package-version.m4 m4/inline.m4 m4/intl-thread-locale.m4 m4/intlmacosx.m4 @@ -4847,7 +4773,6 @@ AC_DEFUN([gl_FILE_LIST], [ m4/iswdigit.m4 m4/iswpunct.m4 m4/iswxdigit.m4 - m4/langinfo_h.m4 m4/largefile.m4 m4/lcmessage.m4 m4/ldexpl.m4 @@ -4864,6 +4789,7 @@ AC_DEFUN([gl_FILE_LIST], [ m4/locale-tr.m4 m4/locale-zh.m4 m4/locale_h.m4 + m4/localeconv.m4 m4/localename.m4 m4/lock.m4 m4/lstat.m4 @@ -4878,9 +4804,8 @@ AC_DEFUN([gl_FILE_LIST], [ m4/mbstate_t.m4 m4/mbtowc.m4 m4/memchr.m4 - m4/mempcpy.m4 - m4/memrchr.m4 m4/minmax.m4 + m4/mkfifo.m4 m4/mmap-anon.m4 m4/mode_t.m4 m4/msvc-inval.m4 @@ -4897,8 +4822,6 @@ AC_DEFUN([gl_FILE_LIST], [ m4/open-cloexec.m4 m4/open-slash.m4 m4/open.m4 - m4/openat.m4 - m4/opendir.m4 m4/pathmax.m4 m4/perror.m4 m4/pid_t.m4 @@ -4921,12 +4844,9 @@ AC_DEFUN([gl_FILE_LIST], [ m4/raise.m4 m4/random.m4 m4/random_r.m4 - m4/readdir.m4 m4/realloc.m4 m4/reallocarray.m4 m4/relocatable-lib.m4 - m4/rewinddir.m4 - m4/save-cwd.m4 m4/sched_h.m4 m4/sched_yield.m4 m4/select.m4 @@ -4949,16 +4869,17 @@ AC_DEFUN([gl_FILE_LIST], [ m4/stat.m4 m4/std-gnu11.m4 m4/stdalign.m4 + m4/stdckdint_h.m4 m4/stddef_h.m4 m4/stdint.m4 m4/stdint_h.m4 m4/stdio_h.m4 m4/stdlib_h.m4 m4/stpcpy.m4 - m4/strdup.m4 m4/strerror.m4 m4/strerror_r.m4 m4/string_h.m4 + m4/stringeq.m4 m4/strncat.m4 m4/strstr.m4 m4/symlink.m4 @@ -4979,8 +4900,8 @@ AC_DEFUN([gl_FILE_LIST], [ m4/unictype_h.m4 m4/unimetadata_h.m4 m4/uninorm_h.m4 - m4/unistd-safer.m4 m4/unistd_h.m4 + m4/unitypes_h.m4 m4/usleep.m4 m4/vararrays.m4 m4/vasnprintf.m4 @@ -4992,6 +4913,7 @@ AC_DEFUN([gl_FILE_LIST], [ m4/wctomb.m4 m4/wctype_h.m4 m4/wcwidth.m4 + m4/windows-rc.m4 m4/wint_t.m4 m4/xalloc.m4 m4/xgetcwd.m4 @@ -5007,19 +4929,19 @@ AC_DEFUN([gl_FILE_LIST], [ tests/macros.h tests/minus-zero.h tests/nap.h - tests/qemu.h tests/randomd.c tests/randoml.c tests/signature.h tests/test-accept.c tests/test-alignasof.c tests/test-alloca-opt.c - tests/test-arpa_inet.c + tests/test-arpa_inet-h.c tests/test-array-mergesort.c tests/test-assert.c tests/test-binary-io.c tests/test-binary-io.sh tests/test-bind.c + tests/test-bool.c tests/test-btoc32-1.sh tests/test-btoc32-2.sh tests/test-btoc32-3.sh @@ -5029,9 +4951,8 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-btowc-3.sh tests/test-btowc.c tests/test-c-ctype.c - tests/test-c-strcase.sh tests/test-c-strcasecmp.c - tests/test-c-strncasecmp.c + tests/test-c-strcasecmp.sh tests/test-c32isalnum.c tests/test-c32isalnum.sh tests/test-c32isalpha.c @@ -5070,27 +4991,20 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-c32tolower.sh tests/test-c32width.c tests/test-calloc-gnu.c - tests/test-chdir.c + tests/test-calloc-posix.c tests/test-cloexec.c tests/test-close.c tests/test-connect.c - tests/test-ctype.c - tests/test-dirent.c - tests/test-dirfd.c - tests/test-dup-safer.c - tests/test-dup.c + tests/test-ctype-h.c tests/test-dup2.c tests/test-environ.c - tests/test-errno.c + tests/test-errno-h.c tests/test-error.c tests/test-error.sh - tests/test-fchdir.c tests/test-fcntl-h.c tests/test-fcntl.c tests/test-fdopen.c - tests/test-fdopendir.c tests/test-fgetc.c - tests/test-float.c tests/test-fputc.c tests/test-fread.c tests/test-free.c @@ -5099,15 +5013,13 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-frexpl.c tests/test-fseterr.c tests/test-fstat.c - tests/test-fstatat.c tests/test-ftruncate.c tests/test-ftruncate.sh tests/test-fwrite.c tests/test-getcwd-lgpl.c - tests/test-getcwd.c - tests/test-getcwd.sh tests/test-getdtablesize.c tests/test-getprogname.c + tests/test-gettext-h.c tests/test-gettimeofday.c tests/test-hard-locale.c tests/test-iconv-h.c @@ -5116,7 +5028,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-inet_pton.c tests/test-init.sh tests/test-intprops.c - tests/test-inttypes.c + tests/test-inttypes-h.c tests/test-ioctl.c tests/test-isblank.c tests/test-isnand-nolibm.c @@ -5132,19 +5044,25 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-iswpunct.sh tests/test-iswxdigit.c tests/test-iswxdigit.sh - tests/test-langinfo.c tests/test-largefile.c tests/test-limits-h.c tests/test-listen.c + tests/test-localcharset-w32utf8.c + tests/test-localcharset-w32utf8.sh tests/test-localcharset.c - tests/test-locale.c + tests/test-locale-h.c + tests/test-localeconv-mt.c + tests/test-localeconv.c + tests/test-localename-w32utf8.c + tests/test-localename-w32utf8.sh tests/test-localename.c tests/test-lock.c tests/test-lstat.c tests/test-lstat.h tests/test-malloc-gnu.c + tests/test-malloc-posix.c tests/test-malloca.c - tests/test-math.c + tests/test-math-h.c tests/test-mbrtoc32-1.sh tests/test-mbrtoc32-2.sh tests/test-mbrtoc32-3.sh @@ -5172,19 +5090,21 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-mbrtowc-w32-7.sh tests/test-mbrtowc-w32-8.sh tests/test-mbrtowc-w32.c + tests/test-mbrtowc-w32utf8.c + tests/test-mbrtowc-w32utf8.sh tests/test-mbrtowc.c tests/test-mbsinit.c tests/test-mbsinit.sh tests/test-mbsnlen.c tests/test-mbsnlen.sh tests/test-memchr.c - tests/test-memrchr.c + tests/test-mkfifo.c + tests/test-mkfifo.h tests/test-nanosleep.c - tests/test-netinet_in.c + tests/test-netinet_in-h.c tests/test-once.c tests/test-open.c tests/test-open.h - tests/test-openat.c tests/test-pathmax.c tests/test-perror.c tests/test-perror.sh @@ -5208,10 +5128,10 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-random-mt.c tests/test-random.c tests/test-random_r.c - tests/test-realloc-gnu.c + tests/test-realloc-posix.c tests/test-reallocarray.c tests/test-rwlock1.c - tests/test-sched.c + tests/test-sched-h.c tests/test-select-fd.c tests/test-select-in.sh tests/test-select-out.sh @@ -5219,6 +5139,9 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-select.c tests/test-select.h tests/test-setenv.c + tests/test-setlocale-w32.c + tests/test-setlocale-w32utf8.c + tests/test-setlocale-w32utf8.sh tests/test-setlocale1.c tests/test-setlocale1.sh tests/test-setlocale2.c @@ -5236,41 +5159,42 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-stat-time.c tests/test-stat.c tests/test-stat.h - tests/test-stdbool.c - tests/test-stdckdint.c - tests/test-stddef.c - tests/test-stdint.c - tests/test-stdio.c - tests/test-stdlib.c + tests/test-stdckdint-h.c + tests/test-stddef-h.c + tests/test-stdint-h.c + tests/test-stdio-h.c + tests/test-stdlib-h.c + tests/test-str_endswith.c + tests/test-str_startswith.c tests/test-strerror.c tests/test-strerror_r.c tests/test-striconveh.c tests/test-striconveha.c - tests/test-string.c + tests/test-string-h.c tests/test-strncat.c tests/test-strstr.c tests/test-symlink.c tests/test-symlink.h - tests/test-sys_ioctl.c - tests/test-sys_select.c - tests/test-sys_socket.c - tests/test-sys_stat.c - tests/test-sys_time.c - tests/test-sys_types.c - tests/test-sys_uio.c - tests/test-sys_wait.h + tests/test-sys_ioctl-h.c + tests/test-sys_select-h.c + tests/test-sys_socket-h.c + tests/test-sys_stat-h.c + tests/test-sys_time-h.c + tests/test-sys_types-h.c + tests/test-sys_uio-h.c + tests/test-sys_wait-h.h tests/test-thread_create.c tests/test-thread_self.c tests/test-time-h.c tests/test-time.c - tests/test-uchar.c - tests/test-unistd.c + tests/test-uchar-h.c + tests/test-unistd-h.c tests/test-unsetenv.c tests/test-usleep.c tests/test-verify-try.c tests/test-verify.c tests/test-verify.sh - tests/test-wchar.c + tests/test-wchar-h.c tests/test-wcrtomb-w32-2.sh tests/test-wcrtomb-w32-3.sh tests/test-wcrtomb-w32-4.sh @@ -5345,6 +5269,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/unicase/test-ulc-casecoll.c tests/unicase/test-ulc-casecoll1.sh tests/unicase/test-ulc-casecoll2.sh + tests/unicase/test-unicase-h.c tests/uniconv/test-u16-conv-from-enc.c tests/uniconv/test-u16-conv-to-enc.c tests/uniconv/test-u16-strconv-from-enc.c @@ -5357,6 +5282,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/uniconv/test-u8-conv-to-enc.c tests/uniconv/test-u8-strconv-from-enc.c tests/uniconv/test-u8-strconv-to-enc.c + tests/uniconv/test-uniconv-h.c tests/unictype/test-bidi_byname.c tests/unictype/test-bidi_longname.c tests/unictype/test-bidi_name.c @@ -5555,6 +5481,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/unictype/test-sy_c_whitespace.c tests/unictype/test-sy_java_ident.c tests/unictype/test-sy_java_whitespace.c + tests/unictype/test-unictype-h.c tests/unigbrk/GraphemeBreakTest.txt tests/unigbrk/test-u16-grapheme-breaks.c tests/unigbrk/test-u16-grapheme-next.c @@ -5573,6 +5500,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/unigbrk/test-uc-is-grapheme-break.sh tests/unigbrk/test-ulc-grapheme-breaks.c tests/unigbrk/test-ulc-grapheme-breaks.sh + tests/unigbrk/test-unigbrk-h.c tests/unilbrk/LineBreakTest.txt tests/unilbrk/test-u16-possible-linebreaks.c tests/unilbrk/test-u16-width-linebreaks.c @@ -5584,10 +5512,13 @@ AC_DEFUN([gl_FILE_LIST], [ tests/unilbrk/test-uc-possible-linebreaks.sh tests/unilbrk/test-ulc-possible-linebreaks.c tests/unilbrk/test-ulc-width-linebreaks.c + tests/unilbrk/test-unilbrk-h.c tests/unimetadata/test-u-version.c + tests/unimetadata/test-unimetadata-h.c tests/uniname/HangulSyllableNames.txt tests/uniname/NameAliases.txt tests/uniname/UnicodeData.txt + tests/uniname/test-uniname-h.c tests/uniname/test-uninames.c tests/uniname/test-uninames.sh tests/uninorm/NormalizationTest.txt @@ -5632,6 +5563,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/uninorm/test-u8-normcmp.h tests/uninorm/test-u8-normcoll.c tests/uninorm/test-uninorm-filter-nfc.c + tests/uninorm/test-uninorm-h.c tests/unistdio/test-u16-asnprintf1.c tests/unistdio/test-u16-asnprintf1.h tests/unistdio/test-u16-printf1.h @@ -5676,6 +5608,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/unistdio/test-ulc-vasprintf1.c tests/unistdio/test-ulc-vsnprintf1.c tests/unistdio/test-ulc-vsprintf1.c + tests/unistdio/test-unistdio-h.c tests/unistr/test-chr.h tests/unistr/test-cmp.h tests/unistr/test-cmp2.h @@ -5811,6 +5744,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/unistr/test-u8-to-u16.c tests/unistr/test-u8-to-u32.c tests/unistr/test-u8-uctomb.c + tests/unistr/test-unistr-h.c tests/uniwbrk/WordBreakTest.txt tests/uniwbrk/test-u16-wordbreaks.c tests/uniwbrk/test-u32-wordbreaks.c @@ -5819,6 +5753,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/uniwbrk/test-uc-wordbreaks.sh tests/uniwbrk/test-ulc-wordbreaks.c tests/uniwbrk/test-ulc-wordbreaks.sh + tests/uniwbrk/test-uniwbrk-h.c tests/uniwidth/test-u16-strwidth.c tests/uniwidth/test-u16-width.c tests/uniwidth/test-u32-strwidth.c @@ -5828,7 +5763,10 @@ AC_DEFUN([gl_FILE_LIST], [ tests/uniwidth/test-uc_width.c tests/uniwidth/test-uc_width2.c tests/uniwidth/test-uc_width2.sh + tests/uniwidth/test-uniwidth-h.c tests/virtualbox.h + tests/windows-utf8.manifest + tests/windows-utf8.rc tests/zerosize-ptr.h tests=lib/_Noreturn.h tests=lib/accept.c @@ -5836,8 +5774,6 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/arg-nonnull.h tests=lib/arpa_inet.c tests=lib/arpa_inet.in.h - tests=lib/assure.h - tests=lib/at-func.c tests=lib/basename-lgpl.c tests=lib/basename-lgpl.h tests=lib/binary-io.c @@ -5850,44 +5786,26 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/c32tob.c tests=lib/calloc.c tests=lib/cdefs.h - tests=lib/chdir-long.c - tests=lib/chdir-long.h tests=lib/cloexec.c tests=lib/cloexec.h tests=lib/close.c - tests=lib/closedir.c tests=lib/concat-filename.c tests=lib/concat-filename.h tests=lib/connect.c tests=lib/ctype.in.h - tests=lib/dirent-private.h - tests=lib/dirent.in.h - tests=lib/dirfd.c - tests=lib/dup-safer-flag.c - tests=lib/dup-safer.c - tests=lib/dup.c tests=lib/dup2.c tests=lib/error.c tests=lib/error.in.h tests=lib/exitfail.c tests=lib/exitfail.h - tests=lib/fchdir.c tests=lib/fcntl.c - tests=lib/fcntl.in.h tests=lib/fd-hook.c tests=lib/fd-hook.h - tests=lib/fd-safer-flag.c - tests=lib/fd-safer.c tests=lib/fdopen.c - tests=lib/fdopendir.c tests=lib/filename.h - tests=lib/filenamecat-lgpl.c - tests=lib/filenamecat.h tests=lib/fstat.c - tests=lib/fstatat.c tests=lib/ftruncate.c tests=lib/getcwd-lgpl.c - tests=lib/getcwd.c tests=lib/getdtablesize.c tests=lib/getprogname.c tests=lib/getprogname.h @@ -5910,8 +5828,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/malloc.c tests=lib/mbtowc-impl.h tests=lib/mbtowc.c - tests=lib/mempcpy.c - tests=lib/memrchr.c + tests=lib/mkfifo.c tests=lib/msvc-inval.c tests=lib/msvc-inval.h tests=lib/msvc-nothrow.c @@ -5920,15 +5837,8 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/nanosleep.c tests=lib/netinet_in.in.h tests=lib/open.c - tests=lib/openat-die.c - tests=lib/openat-priv.h - tests=lib/openat-proc.c - tests=lib/openat.c - tests=lib/openat.h - tests=lib/opendir.c tests=lib/pathmax.h tests=lib/perror.c - tests=lib/pipe-safer.c tests=lib/pipe.c tests=lib/pselect.c tests=lib/pthread-cond.c @@ -5941,14 +5851,10 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/raise.c tests=lib/random.c tests=lib/random_r.c - tests=lib/readdir.c tests=lib/realloc.c tests=lib/reallocarray.c - tests=lib/rewinddir.c tests=lib/same-inode.c tests=lib/same-inode.h - tests=lib/save-cwd.c - tests=lib/save-cwd.h tests=lib/sched_yield.c tests=lib/select.c tests=lib/setenv.c @@ -5968,11 +5874,13 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/stat-w32.c tests=lib/stat-w32.h tests=lib/stat.c + tests=lib/stdio-consolesafe.c tests=lib/stdio-read.c tests=lib/stdio-write.c tests=lib/stdio.in.h tests=lib/stpcpy.c - tests=lib/strdup.c + tests=lib/str_endswith.c + tests=lib/str_startswith.c tests=lib/strerror-override.c tests=lib/strerror-override.h tests=lib/strerror.c @@ -5986,8 +5894,6 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/sys_time.in.h tests=lib/sys_uio.in.h tests=lib/time.c - tests=lib/unistd--.h - tests=lib/unistd-safer.h tests=lib/unsetenv.c tests=lib/usleep.c tests=lib/verify.h diff --git a/gnulib-m4/gnulib-i18n.m4 b/gnulib-m4/gnulib-i18n.m4 new file mode 100644 index 00000000..868043e7 --- /dev/null +++ b/gnulib-m4/gnulib-i18n.m4 @@ -0,0 +1,61 @@ +# gnulib-i18n.m4 +# serial 1 +dnl Copyright (C) 2005-2025 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. +dnl This file is offered as-is, without any warranty. + +dnl From Bruno Haible. + +dnl Support for internationalization of Gnulib code. + +dnl GNULIB_I18N +dnl Sets GNULIB_LOCALEDIR to indicate where to find the gnulib.mo files. +dnl Also it defines GNULIB_LOCALEDIR as macro in config.h, that expands to +dnl the corresponding C string. +AC_DEFUN([GNULIB_I18N], +[ + dnl It is best to not test "$USE_NLS" here, because: It would be empty + dnl in case the package is internationalized but this macro is used before + dnl AM_GNU_GETTEXT. We would need to warn about this situation. But since + dnl this module is used as a dependency of many packages, such a warning is + dnl not welcome. + + dnl Determine gnulib's localedir. + dnl Generally, accept an option --with-gnulib-prefix=PREFIX to indicate + dnl where to find gnulib's runtime data. + dnl Usually ${prefix}/share/locale, but can be influenced by the configure + dnl options --datarootdir and --localedir. + GNULIB_LOCALEDIR="${localedir}" + AC_ARG_WITH([gnulib-prefix], + [[ --with-gnulib-prefix=DIR search for gnulib's runtime data in DIR/share]], + [if test "X$withval" != "X" && test "X$withval" != "Xno"; then + GNULIB_LOCALEDIR="$withval/share/locale" + fi + ]) + AC_SUBST([GNULIB_LOCALEDIR]) + + dnl Define GNULIB_LOCALEDIR_c and GNULIB_LOCALEDIR_c_make. + dnl Find the final value of GNULIB_LOCALEDIR. + gl_saved_prefix="${prefix}" + gl_saved_datarootdir="${datarootdir}" + gl_saved_localedir="${localedir}" + gl_saved_gnuliblocaledir="${GNULIB_LOCALEDIR}" + dnl Unfortunately, prefix gets only finally determined at the end of + dnl configure. + if test "X$prefix" = "XNONE"; then + prefix="$ac_default_prefix" + fi + eval datarootdir="$datarootdir" + eval localedir="$localedir" + eval GNULIB_LOCALEDIR="$GNULIB_LOCALEDIR" + gl_BUILD_TO_HOST([GNULIB_LOCALEDIR]) + GNULIB_LOCALEDIR="${gl_saved_gnuliblocaledir}" + localedir="${gl_saved_localedir}" + datarootdir="${gl_saved_datarootdir}" + prefix="${gl_saved_prefix}" + + AC_DEFINE_UNQUOTED([GNULIB_LOCALEDIR], [${GNULIB_LOCALEDIR_c}], + [Define to the directory where to find the localizations of the translation domain 'gnulib', as a C string.]) +]) diff --git a/gnulib-m4/host-cpu-c-abi.m4 b/gnulib-m4/host-cpu-c-abi.m4 index 80a83668..6ca7721a 100644 --- a/gnulib-m4/host-cpu-c-abi.m4 +++ b/gnulib-m4/host-cpu-c-abi.m4 @@ -1,9 +1,10 @@ # host-cpu-c-abi.m4 -# serial 18 -dnl Copyright (C) 2002-2024 Free Software Foundation, Inc. +# serial 20 +dnl Copyright (C) 2002-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible and Sam Steingold. @@ -141,7 +142,7 @@ changequote([,])dnl else gl_cv_host_cpu_c_abi=arm fi - rm -f conftest* + rm -fr conftest* ]) ;; @@ -383,6 +384,9 @@ EOF #ifndef __ia64__ #undef __ia64__ #endif +#ifndef __loongarch32__ +#undef __loongarch32__ +#endif #ifndef __loongarch64__ #undef __loongarch64__ #endif @@ -502,9 +506,9 @@ changequote([,])dnl if test -n "$gl_cv_host_cpu_c_abi"; then dnl gl_HOST_CPU_C_ABI has already been run. Use its result. case "$gl_cv_host_cpu_c_abi" in - i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc) + i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | loongarch32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc) gl_cv_host_cpu_c_abi_32bit=yes ;; - x86_64 | alpha | arm64 | aarch64c | hppa64 | ia64 | mips64 | powerpc64 | powerpc64-elfv2 | riscv*-lp64* | s390x | sparc64 ) + x86_64 | alpha | arm64 | aarch64c | hppa64 | ia64 | loongarch64 | mips64 | powerpc64 | powerpc64-elfv2 | riscv*-lp64* | s390x | sparc64 ) gl_cv_host_cpu_c_abi_32bit=no ;; *) gl_cv_host_cpu_c_abi_32bit=unknown ;; diff --git a/gnulib-m4/iconv.m4 b/gnulib-m4/iconv.m4 index b414bfca..f2b0c37d 100644 --- a/gnulib-m4/iconv.m4 +++ b/gnulib-m4/iconv.m4 @@ -1,10 +1,11 @@ # iconv.m4 -# serial 28 -dnl Copyright (C) 2000-2002, 2007-2014, 2016-2024 Free Software Foundation, +# serial 32 +dnl Copyright (C) 2000-2002, 2007-2014, 2016-2025 Free Software Foundation, dnl 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. @@ -27,8 +28,8 @@ AC_DEFUN([AM_ICONV_LINKFLAGS_BODY], AC_DEFUN([AM_ICONV_LINK], [ - dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and - dnl those with the standalone portable GNU libiconv installed). + dnl Some systems have iconv in libc, some have it in libiconv (those + dnl with the standalone portable GNU libiconv installed). AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV @@ -208,7 +209,7 @@ AC_DEFUN([AM_ICONV_LINK], { /* Try standardized names. */ iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP"); - /* Try IRIX, OSF/1 names. */ + /* Try possible *BSD names. */ iconv_t cd2 = iconv_open ("UTF-8", "eucJP"); /* Try AIX names. */ iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP"); diff --git a/gnulib-m4/iconv_h.m4 b/gnulib-m4/iconv_h.m4 index 08ecb8c6..2128564a 100644 --- a/gnulib-m4/iconv_h.m4 +++ b/gnulib-m4/iconv_h.m4 @@ -1,9 +1,10 @@ # iconv_h.m4 # serial 16 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_ICONV_H], [ diff --git a/gnulib-m4/iconv_open.m4 b/gnulib-m4/iconv_open.m4 index 61e62ece..3fe509f2 100644 --- a/gnulib-m4/iconv_open.m4 +++ b/gnulib-m4/iconv_open.m4 @@ -1,9 +1,10 @@ # iconv_open.m4 -# serial 17 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 19 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_ICONV_OPEN], [ @@ -26,9 +27,7 @@ AC_DEFUN([gl_FUNC_ICONV_OPEN], iconv_flavor= case "$host_os" in aix*) iconv_flavor=ICONV_FLAVOR_AIX ;; - irix*) iconv_flavor=ICONV_FLAVOR_IRIX ;; hpux*) iconv_flavor=ICONV_FLAVOR_HPUX ;; - osf*) iconv_flavor=ICONV_FLAVOR_OSF ;; solaris*) iconv_flavor=ICONV_FLAVOR_SOLARIS ;; openedition*) iconv_flavor=ICONV_FLAVOR_ZOS ;; esac diff --git a/gnulib-m4/include_next.m4 b/gnulib-m4/include_next.m4 index 03e85251..80de991e 100644 --- a/gnulib-m4/include_next.m4 +++ b/gnulib-m4/include_next.m4 @@ -1,9 +1,10 @@ # include_next.m4 # serial 27 -dnl Copyright (C) 2006-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Paul Eggert and Derek Price. diff --git a/gnulib-m4/inet_pton.m4 b/gnulib-m4/inet_pton.m4 index 28ae9c06..b6e59a25 100644 --- a/gnulib-m4/inet_pton.m4 +++ b/gnulib-m4/inet_pton.m4 @@ -1,9 +1,10 @@ # inet_pton.m4 # serial 20 -dnl Copyright (C) 2006, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_INET_PTON], [ diff --git a/gnulib-m4/init-package-version.m4 b/gnulib-m4/init-package-version.m4 new file mode 100644 index 00000000..a95b804c --- /dev/null +++ b/gnulib-m4/init-package-version.m4 @@ -0,0 +1,128 @@ +# init-package-version.m4 +# serial 7 +dnl Copyright (C) 1992-2025 Free Software Foundation, Inc. +dnl This file is free software, distributed under the terms of the GNU +dnl General Public License. As a special exception to the GNU General +dnl Public License, this file may be distributed as part of a program +dnl that contains a configuration script generated by Autoconf, under +dnl the same distribution terms as the rest of that program. + +# Make it possible to pass version numbers extracted from a file in +# $(srcdir) to autoconf. +# +# Autoconf insists on passing the package name and version number to +# every generated .h file and every Makefile. This was a reasonable +# design at times when a version number was changed only once a month. +# Nowadays, people often assign a new version number once a week, or +# even change it each time a 'git' commit is made. Regenerating all +# the files that depend on configure.ac (aclocal.m4, configure, +# config.status, config.h, all Makefiles) may take 15 minutes. These +# delays can severely hamper development. +# +# An alternative is to store the version number in a file in $(srcdir) +# that is separate from configure.ac. It can be a data file, a shell +# script, a .m4 file, or other. The essential point is that the maintainer +# is responsible for creating Makefile dependencies to this version file +# for every file that needs to be rebuilt when the version changes. This +# typically includes +# - distributable documentation files that carry the version number, +# but does not include +# - aclocal.m4, configure, config.status, config.h, all Makefiles, +# - executables. +# +# autoconf and automake make it hard to follow this approach: +# +# - If AC_INIT is used with arguments, there is a chicken-and-egg problem: +# The arguments need to be read from a file in $(srcdir). The location +# of $(srcdir) is only determined by AC_CONFIG_SRCDIR. AC_CONFIG_SRCDIR +# can only appear after AC_INIT (otherwise aclocal gives an error: +# "error: m4_defn: undefined macro: _m4_divert_diversion"). +# Furthermore, the arguments passed to AC_INIT must be literals; for +# example, the assignment to PACKAGE_VERSION looks like this: +# [PACKAGE_VERSION=']AC_PACKAGE_VERSION['] +# +# - If AC_INIT is used without arguments: +# Automake provides its own variables, PACKAGE and VERSION, and uses them +# instead of PACKAGE_NAME and PACKAGE_VERSION that come from Autoconf. +# - If AM_INIT_AUTOMAKE is used with two arguments, automake options +# like 'silent-rules' cannot be specified. +# - If AM_INIT_AUTOMAKE is used in its one-argument form or without +# arguments at all, it triggers an error +# "error: AC_INIT should be called with package and version arguments". +# - If AM_INIT_AUTOMAKE is used in its one-argument form or without +# arguments at all, and _AC_INIT_PACKAGE is used before it, with +# the package and version number from the file as arguments, we get +# a warning: "warning: AC_INIT: not a literal: $VERSION_NUMBER". +# The arguments passed to _AC_INIT_PACKAGE must be literals. +# +# With the macro defined in this file, the approach can be coded like this: +# +# AC_INIT(PACKAGE, [package], [MORE OPTIONS]) +# AC_CONFIG_SRCDIR(WITNESS) +# . $srcdir/../version.sh +# gl_INIT_PACKAGE_VERSION($VERSION_NUMBER) +# AM_INIT_AUTOMAKE([OPTIONS]) +# +# and after changing version.sh, the developer can directly configure and build: +# +# make distclean +# ./configure +# make +# +# Some other packages use another approach: +# +# AC_INIT(PACKAGE, +# m4_normalize(m4_esyscmd([. ./version.sh; echo $VERSION_NUMBER]))) +# AC_CONFIG_SRCDIR(WITNESS) +# AM_INIT_AUTOMAKE([OPTIONS]) +# +# but here, after changing version.sh, the developer must first regenerate the +# configure file: +# +# make distclean +# ./autogen.sh --skip-gnulib +# ./configure +# make +# + +# gl_INIT_PACKAGE_VERSION(VERSION) +# -------------------------------- +# followed by an AM_INIT_AUTOMAKE invocation, +# is like calling AM_INIT_AUTOMAKE(PACKAGE-NAME, VERSION) +# except that it can use computed non-literal arguments. +AC_DEFUN([gl_INIT_PACKAGE_VERSION], +[ + AC_BEFORE([$0], [AM_INIT_AUTOMAKE]) + dnl Redefine AM_INIT_AUTOMAKE. + m4_define([gl_AM_INIT_AUTOMAKE], + m4_bpatsubst(m4_dquote(m4_defn([AM_INIT_AUTOMAKE])), + [AC_PACKAGE_VERSION], [gl_INIT_DUMMY]) + [dnl Set variables documented in Automake. + AC_SUBST([VERSION], ["$1"]) + dnl Set variables documented in Autoconf. + AC_SUBST([PACKAGE_VERSION], ["$1"]) + AC_SUBST([PACKAGE_STRING], ["AC_PACKAGE_NAME $1"]) + _AC_DEFINE([#undef PACKAGE_VERSION]) + AC_DEFINE_UNQUOTED([PACKAGE_VERSION], ["$1"], + [Define to the version of this package.]) + _AC_DEFINE([#undef PACKAGE_STRING]) + AC_DEFINE_UNQUOTED([PACKAGE_STRING], ["AC_PACKAGE_NAME $1"], + [Define to the full name and version of this package.]) + ]) + m4_define([AM_INIT_AUTOMAKE], + m4_defn([gl_RPL_INIT_AUTOMAKE])) +]) +m4_define([gl_INIT_EMPTY], []) +dnl Automake 1.16.4 no longer accepts an empty value for gl_INIT_DUMMY. +dnl But a macro that later expands to empty works. +m4_define([gl_INIT_DUMMY], [gl_INIT_DUMMY2]) +m4_define([gl_INIT_DUMMY2], []) +AC_DEFUN([gl_RPL_INIT_AUTOMAKE], [ + m4_ifval([$2], + [m4_fatal([After gl_INIT_PACKAGE_VERSION, the two-argument form of AM_INIT_AUTOMAKE cannot be used.])]) + gl_AM_INIT_AUTOMAKE([$1 no-define]) + m4_if(m4_index([ $1 ], [ no-define ]), [-1], + [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) + AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package]) + ]) +]) diff --git a/gnulib-m4/inline.m4 b/gnulib-m4/inline.m4 index f962bde1..5a272425 100644 --- a/gnulib-m4/inline.m4 +++ b/gnulib-m4/inline.m4 @@ -1,15 +1,18 @@ # inline.m4 -# serial 4 -dnl Copyright (C) 2006, 2009-2024 Free Software Foundation, Inc. +# serial 5 +dnl Copyright (C) 2006, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl Test for the 'inline' keyword or equivalent. dnl Define 'inline' to a supported equivalent, or to nothing if not supported, dnl like AC_C_INLINE does. Also, define HAVE_INLINE if 'inline' or an dnl equivalent is effectively supported, i.e. if the compiler is likely to -dnl drop unused 'static inline' functions. +dnl actually inline 'static inline' functions when there are used. (All +dnl versions of gcc and clang actually drop the code of 'static inline' +dnl functions that are unused in the current compilation unit.) AC_DEFUN([gl_INLINE], [ AC_REQUIRE([AC_C_INLINE]) diff --git a/gnulib-m4/intl-thread-locale.m4 b/gnulib-m4/intl-thread-locale.m4 index 970c89bf..ec8a5125 100644 --- a/gnulib-m4/intl-thread-locale.m4 +++ b/gnulib-m4/intl-thread-locale.m4 @@ -1,9 +1,10 @@ # intl-thread-locale.m4 -# serial 12 -dnl Copyright (C) 2015-2024 Free Software Foundation, Inc. +# serial 16 +dnl Copyright (C) 2015-2025 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. +dnl This file is offered as-is, without any warranty. dnl dnl This file can be used in projects which are not available under dnl the GNU General Public License or the GNU Lesser General Public @@ -37,16 +38,23 @@ AC_DEFUN([gt_INTL_THREAD_LOCALE_NAME], dnl OpenBSD base system, store complete information about the global locale, dnl such that third-party software can access it"), but for uselocale() dnl they did not think about the programs. - dnl In this situation, even the HAVE_NAMELESS_LOCALES support does not work. - dnl So, define HAVE_FAKE_LOCALES and disable all locale_t support. - dnl Expected result: HAVE_FAKE_LOCALES is defined on OpenBSD ≥ 6.2. + dnl In this situation, even the HAVE_NAMELESS_LOCALES support cannot make + dnl uselocale() work. + dnl Similarly on Android. See + dnl <https://android.googlesource.com/platform/bionic/+/refs/heads/main/libc/bionic/locale.cpp>. + dnl So, define HAVE_FAKE_LOCALES and disable all per-thread locale support. + dnl Expected result: + dnl - HAVE_FAKE_LOCALES is defined on OpenBSD ≥ 6.2, Android API level >= 21. case "$gt_cv_func_uselocale_works" in *yes) AC_CHECK_HEADERS_ONCE([xlocale.h]) - AC_CACHE_CHECK([for fake locale system (OpenBSD)], + AC_CACHE_CHECK([for fake locale system (OpenBSD, Android)], [gt_cv_locale_fake], - [AC_RUN_IFELSE( - [AC_LANG_SOURCE([[ + [case "$host_os" in + *-android*) gt_cv_locale_fake=yes ;; + *) + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include <locale.h> #if HAVE_XLOCALE_H # include <xlocale.h> @@ -60,14 +68,16 @@ int main () loc2 = newlocale (LC_ALL_MASK, "fr_FR.UTF-8", (locale_t)0); return !(loc1 == loc2); }]])], - [gt_cv_locale_fake=yes], - [gt_cv_locale_fake=no], - [dnl Guess the locale system is fake only on OpenBSD. - case "$host_os" in - openbsd*) gt_cv_locale_fake="guessing yes" ;; - *) gt_cv_locale_fake="guessing no" ;; - esac - ]) + [gt_cv_locale_fake=yes], + [gt_cv_locale_fake=no], + [dnl Guess the locale system is fake only on OpenBSD. + case "$host_os" in + openbsd*) gt_cv_locale_fake="guessing yes" ;; + *) gt_cv_locale_fake="guessing no" ;; + esac + ]) + ;; + esac ]) ;; *) gt_cv_locale_fake=no ;; @@ -117,30 +127,21 @@ int main () [Define if the locale_t type is as on Solaris 11.4.]) fi - dnl Solaris 12 will maybe provide getlocalename_l. If it does, it will - dnl improve the implementation of gl_locale_name_thread(), by removing - dnl the use of undocumented structures. - case "$gt_cv_func_uselocale_works" in - *yes) - AC_CHECK_FUNCS([getlocalename_l]) - ;; - esac - dnl This code is for platforms where the locale_t type does not provide access dnl to the name of each locale category. This code has the drawback that it dnl requires the gnulib overrides of 'newlocale', 'duplocale', 'freelocale', dnl which is a problem for GNU libunistring. Therefore try hard to avoid dnl enabling this code! - dnl Expected result: HAVE_NAMELESS_LOCALES is defined on AIX, - dnl and HAVE_AIX72_LOCALES is defined on AIX ≥ 7.2. - gt_nameless_locales=no + dnl Expected result: + dnl - HAVE_NAMELESS_LOCALES is defined on OpenBSD ≥ 6.2, AIX, + dnl Android API level >= 21, + dnl - HAVE_AIX72_LOCALES is defined on AIX ≥ 7.2. + gt_nameless_locales=$gt_fake_locales case "$host_os" in dnl It's needed on AIX 7.2. aix*) gt_nameless_locales=yes - AC_DEFINE([HAVE_NAMELESS_LOCALES], [1], - [Define if the locale_t type does not contain the name of each locale category.]) - dnl In AIX ≥ 7.2, a locale contains at least the name of the LC_MESSSAGES + dnl In AIX ≥ 7.2, a locale contains at least the name of the LC_MESSAGES dnl category (fix of defect 823926). AC_CACHE_CHECK([for AIX locales with LC_MESSAGES name], [gt_cv_locale_aix72], @@ -161,13 +162,17 @@ int main () fi ;; esac + if test $gt_nameless_locales = yes; then + AC_DEFINE([HAVE_NAMELESS_LOCALES], [1], + [Define if the locale_t type does not contain the name of each locale category.]) + fi dnl We cannot support uselocale() on platforms where the locale_t type is dnl fake. So, set dnl gt_good_uselocale = gt_working_uselocale && !gt_fake_locales. dnl Expected result: HAVE_GOOD_USELOCALE is defined on all platforms except - dnl FreeBSD < 9.1, NetBSD, OpenBSD, Minix, AIX < 7, AIX 7.2, HP-UX, IRIX, - dnl Solaris < 11.4, Cygwin < 2.6, mingw, MSVC 14, Android API level < 21. + dnl FreeBSD < 9.1, NetBSD, OpenBSD, Minix, AIX < 7, AIX 7.2, HP-UX, + dnl Solaris < 11.4, Cygwin < 2.6, mingw, MSVC 14, Android. if test $gt_working_uselocale = yes && test $gt_fake_locales = no; then gt_good_uselocale=yes AC_DEFINE([HAVE_GOOD_USELOCALE], [1], @@ -180,8 +185,8 @@ int main () dnl overrides newlocale(), duplocale(), freelocale() to keep track of locale dnl names. dnl Expected result: LOCALENAME_ENHANCE_LOCALE_FUNCS is defined on - dnl AIX 7.1, AIX ≥ 7.3. - if test $gt_good_uselocale = yes && test $gt_nameless_locales = yes; then + dnl OpenBSD ≥ 6.2, AIX 7.1, AIX ≥ 7.3, Android API level >= 21. + if test $gt_working_uselocale = yes && test $gt_nameless_locales = yes; then gt_localename_enhances_locale_funcs=yes LOCALENAME_ENHANCE_LOCALE_FUNCS=1 AC_DEFINE([LOCALENAME_ENHANCE_LOCALE_FUNCS], [1], @@ -194,7 +199,7 @@ int main () dnl Tests whether uselocale() exists and is usable. dnl Sets gt_working_uselocale and defines HAVE_WORKING_USELOCALE. dnl Expected result: HAVE_WORKING_USELOCALE is defined on all platforms except -dnl FreeBSD < 9.1, NetBSD, OpenBSD < 6.2, Minix, AIX < 7, AIX 7.2, HP-UX, IRIX, +dnl FreeBSD < 9.1, NetBSD, OpenBSD < 6.2, Minix, AIX < 7, AIX 7.2, HP-UX, dnl Solaris < 11.4, Cygwin < 2.6, mingw, MSVC 14, Android API level < 21. AC_DEFUN([gt_FUNC_USELOCALE], [ diff --git a/gnulib-m4/intlmacosx.m4 b/gnulib-m4/intlmacosx.m4 index 36b4eb62..f0920d0f 100644 --- a/gnulib-m4/intlmacosx.m4 +++ b/gnulib-m4/intlmacosx.m4 @@ -1,9 +1,10 @@ # intlmacosx.m4 # serial 10 (gettext-0.23) -dnl Copyright (C) 2004-2014, 2016, 2019-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2004-2014, 2016, 2019-2025 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. +dnl This file is offered as-is, without any warranty. dnl dnl This file can be used in projects which are not available under dnl the GNU General Public License or the GNU Lesser General Public diff --git a/gnulib-m4/intmax_t.m4 b/gnulib-m4/intmax_t.m4 index 72858ea8..c1df7b27 100644 --- a/gnulib-m4/intmax_t.m4 +++ b/gnulib-m4/intmax_t.m4 @@ -1,10 +1,11 @@ # intmax_t.m4 # serial 9 -dnl Copyright (C) 1997-2004, 2006-2007, 2009-2024 Free Software Foundation, +dnl Copyright (C) 1997-2004, 2006-2007, 2009-2025 Free Software Foundation, dnl 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. +dnl This file is offered as-is, without any warranty. dnl From Paul Eggert. diff --git a/gnulib-m4/inttypes.m4 b/gnulib-m4/inttypes.m4 index c43cd162..63c82c61 100644 --- a/gnulib-m4/inttypes.m4 +++ b/gnulib-m4/inttypes.m4 @@ -1,9 +1,10 @@ # inttypes.m4 # serial 37 -dnl Copyright (C) 2006-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Derek Price, Bruno Haible. dnl Test whether <inttypes.h> is supported or must be substituted. diff --git a/gnulib-m4/inttypes_h.m4 b/gnulib-m4/inttypes_h.m4 index 3b9da5b0..ad939a53 100644 --- a/gnulib-m4/inttypes_h.m4 +++ b/gnulib-m4/inttypes_h.m4 @@ -1,9 +1,10 @@ # inttypes_h.m4 # serial 10 -dnl Copyright (C) 1997-2004, 2006, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 1997-2004, 2006, 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Paul Eggert. diff --git a/gnulib-m4/ioctl.m4 b/gnulib-m4/ioctl.m4 index f4592e1e..12a1379d 100644 --- a/gnulib-m4/ioctl.m4 +++ b/gnulib-m4/ioctl.m4 @@ -1,9 +1,10 @@ # ioctl.m4 # serial 6 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_IOCTL], [ diff --git a/gnulib-m4/isblank.m4 b/gnulib-m4/isblank.m4 index 43bdd94f..6aaf6071 100644 --- a/gnulib-m4/isblank.m4 +++ b/gnulib-m4/isblank.m4 @@ -1,9 +1,10 @@ # isblank.m4 # serial 3 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_ISBLANK], [ diff --git a/gnulib-m4/isnand.m4 b/gnulib-m4/isnand.m4 index 7f7d88d8..16562866 100644 --- a/gnulib-m4/isnand.m4 +++ b/gnulib-m4/isnand.m4 @@ -1,9 +1,10 @@ # isnand.m4 # serial 15 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. dnl Check how to get or define isnand(). diff --git a/gnulib-m4/isnanf.m4 b/gnulib-m4/isnanf.m4 index c71e40fd..a23b22b1 100644 --- a/gnulib-m4/isnanf.m4 +++ b/gnulib-m4/isnanf.m4 @@ -1,9 +1,10 @@ # isnanf.m4 -# serial 21 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 22 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. dnl Check how to get or define isnanf(). @@ -114,9 +115,7 @@ AC_DEFUN([gl_HAVE_ISNANF_IN_LIBM], ]) ]) -dnl Test whether isnanf() rejects Infinity (this fails on Solaris 2.5.1), -dnl recognizes a NaN (this fails on IRIX 6.5 with cc), and recognizes a NaN -dnl with in-memory representation 0x7fbfffff (this fails on IRIX 6.5). +dnl Test whether isnanf() rejects Infinity (this fails on Solaris 2.5.1). AC_DEFUN([gl_ISNANF_WORKS], [ AC_REQUIRE([AC_PROG_CC]) @@ -134,20 +133,6 @@ AC_DEFUN([gl_ISNANF_WORKS], # undef isnanf # define isnanf(x) isnan ((float)(x)) #endif -/* The Compaq (ex-DEC) C 6.4 compiler chokes on the expression 0.0 / 0.0. */ -#ifdef __DECC -static float -NaN () -{ - static float zero = 0.0f; - return zero / zero; -} -#else -# define NaN() (0.0f / 0.0f) -#endif -#define NWORDS \ - ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { unsigned int word[NWORDS]; float value; } memory_float; int main() { int result = 0; @@ -155,32 +140,12 @@ int main() if (isnanf (1.0f / 0.0f)) result |= 1; - if (!isnanf (NaN ())) - result |= 2; - -#if defined FLT_EXPBIT0_WORD && defined FLT_EXPBIT0_BIT - /* The isnanf function should be immune against changes in the sign bit and - in the mantissa bits. The xor operation twiddles a bit that can only be - a sign bit or a mantissa bit. */ - if (FLT_EXPBIT0_WORD == 0 && FLT_EXPBIT0_BIT > 0) - { - memory_float m; - - m.value = NaN (); - /* Set the bits below the exponent to 01111...111. */ - m.word[0] &= -1U << FLT_EXPBIT0_BIT; - m.word[0] |= (1U << (FLT_EXPBIT0_BIT - 1)) - 1; - if (!isnanf (m.value)) - result |= 4; - } -#endif - return result; }]])], [gl_cv_func_isnanf_works=yes], [gl_cv_func_isnanf_works=no], [case "$host_os" in - irix* | solaris*) gl_cv_func_isnanf_works="guessing no" ;; + solaris*) gl_cv_func_isnanf_works="guessing no" ;; mingw* | windows*) # Guess yes on mingw, no on MSVC. AC_EGREP_CPP([Known], [ #ifdef __MINGW32__ diff --git a/gnulib-m4/isnanl.m4 b/gnulib-m4/isnanl.m4 index dbdf9482..01b2928a 100644 --- a/gnulib-m4/isnanl.m4 +++ b/gnulib-m4/isnanl.m4 @@ -1,9 +1,10 @@ # isnanl.m4 -# serial 26 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 27 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_FUNC_ISNANL], [ @@ -134,17 +135,7 @@ AC_DEFUN([gl_FUNC_ISNANL_WORKS], ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) typedef union { unsigned int word[NWORDS]; long double value; } memory_long_double; -/* On Irix 6.5, gcc 3.4.3 can't compute compile-time NaN, and needs the - runtime type conversion. */ -#ifdef __sgi -static long double NaNl () -{ - double zero = 0.0; - return zero / zero; -} -#else -# define NaNl() (0.0L / 0.0L) -#endif +#define NaNl() (0.0L / 0.0L) int main () { int result = 0; diff --git a/gnulib-m4/iswblank.m4 b/gnulib-m4/iswblank.m4 index 4dc12d9a..d06b16a2 100644 --- a/gnulib-m4/iswblank.m4 +++ b/gnulib-m4/iswblank.m4 @@ -1,9 +1,10 @@ # iswblank.m4 # serial 7 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_ISWBLANK], [ diff --git a/gnulib-m4/iswdigit.m4 b/gnulib-m4/iswdigit.m4 index f07feae4..4582f598 100644 --- a/gnulib-m4/iswdigit.m4 +++ b/gnulib-m4/iswdigit.m4 @@ -1,9 +1,10 @@ # iswdigit.m4 # serial 9 -dnl Copyright (C) 2020-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2020-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_ISWDIGIT], [ diff --git a/gnulib-m4/iswpunct.m4 b/gnulib-m4/iswpunct.m4 index 1edf58aa..d8e8d712 100644 --- a/gnulib-m4/iswpunct.m4 +++ b/gnulib-m4/iswpunct.m4 @@ -1,9 +1,10 @@ # iswpunct.m4 # serial 2 -dnl Copyright (C) 2023-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2023-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_ISWPUNCT], [ diff --git a/gnulib-m4/iswxdigit.m4 b/gnulib-m4/iswxdigit.m4 index 1a8e57b0..95226fc4 100644 --- a/gnulib-m4/iswxdigit.m4 +++ b/gnulib-m4/iswxdigit.m4 @@ -1,9 +1,10 @@ # iswxdigit.m4 # serial 9 -dnl Copyright (C) 2020-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2020-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_ISWXDIGIT], [ diff --git a/gnulib-m4/langinfo_h.m4 b/gnulib-m4/langinfo_h.m4 deleted file mode 100644 index 5eee8a71..00000000 --- a/gnulib-m4/langinfo_h.m4 +++ /dev/null @@ -1,138 +0,0 @@ -# langinfo_h.m4 -# serial 12 -dnl Copyright (C) 2009-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN_ONCE([gl_LANGINFO_H], -[ - AC_REQUIRE([gl_LANGINFO_H_DEFAULTS]) - - dnl Persuade glibc-2.0.6 <langinfo.h> to define CODESET. - AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) - - dnl <langinfo.h> is always overridden, because of GNULIB_POSIXCHECK. - gl_CHECK_NEXT_HEADERS([langinfo.h]) - - dnl Determine whether <langinfo.h> exists. It is missing on mingw and BeOS. - HAVE_LANGINFO_CODESET=0 - HAVE_LANGINFO_T_FMT_AMPM=0 - HAVE_LANGINFO_ALTMON=0 - HAVE_LANGINFO_ERA=0 - HAVE_LANGINFO_YESEXPR=0 - AC_CHECK_HEADERS_ONCE([langinfo.h]) - if test $ac_cv_header_langinfo_h = yes; then - HAVE_LANGINFO_H=1 - dnl Determine what <langinfo.h> defines. - dnl CODESET is missing on OpenBSD 3.8. - dnl ERA etc. are missing on OpenBSD 6.7. - dnl T_FMT_AMPM and YESEXPR, NOEXPR are missing on IRIX 5.3. - dnl ALTMON_* are missing on glibc 2.26 and many other systems. - AC_CACHE_CHECK([whether langinfo.h defines CODESET], - [gl_cv_header_langinfo_codeset], - [AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM([[#include <langinfo.h> -int a = CODESET; -]])], - [gl_cv_header_langinfo_codeset=yes], - [gl_cv_header_langinfo_codeset=no]) - ]) - if test $gl_cv_header_langinfo_codeset = yes; then - HAVE_LANGINFO_CODESET=1 - fi - AC_CACHE_CHECK([whether langinfo.h defines T_FMT_AMPM], - [gl_cv_header_langinfo_t_fmt_ampm], - [AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM([[#include <langinfo.h> -int a = T_FMT_AMPM; -]])], - [gl_cv_header_langinfo_t_fmt_ampm=yes], - [gl_cv_header_langinfo_t_fmt_ampm=no]) - ]) - if test $gl_cv_header_langinfo_t_fmt_ampm = yes; then - HAVE_LANGINFO_T_FMT_AMPM=1 - fi - AC_CACHE_CHECK([whether langinfo.h defines ALTMON_1], - [gl_cv_header_langinfo_altmon], - [AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM([[#include <langinfo.h> -int a = ALTMON_1; -]])], - [gl_cv_header_langinfo_altmon=yes], - [gl_cv_header_langinfo_altmon=no]) - ]) - if test $gl_cv_header_langinfo_altmon = yes; then - HAVE_LANGINFO_ALTMON=1 - fi - AC_CACHE_CHECK([whether langinfo.h defines ERA], - [gl_cv_header_langinfo_era], - [AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM([[#include <langinfo.h> -int a = ERA; -]])], - [gl_cv_header_langinfo_era=yes], - [gl_cv_header_langinfo_era=no]) - ]) - if test $gl_cv_header_langinfo_era = yes; then - HAVE_LANGINFO_ERA=1 - fi - AC_CACHE_CHECK([whether langinfo.h defines YESEXPR], - [gl_cv_header_langinfo_yesexpr], - [AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM([[#include <langinfo.h> -int a = YESEXPR; -]])], - [gl_cv_header_langinfo_yesexpr=yes], - [gl_cv_header_langinfo_yesexpr=no]) - ]) - if test $gl_cv_header_langinfo_yesexpr = yes; then - HAVE_LANGINFO_YESEXPR=1 - fi - else - HAVE_LANGINFO_H=0 - fi - AC_SUBST([HAVE_LANGINFO_H]) - AC_SUBST([HAVE_LANGINFO_CODESET]) - AC_SUBST([HAVE_LANGINFO_T_FMT_AMPM]) - AC_SUBST([HAVE_LANGINFO_ALTMON]) - AC_SUBST([HAVE_LANGINFO_ERA]) - AC_SUBST([HAVE_LANGINFO_YESEXPR]) - - dnl Check for declarations of anything we want to poison if the - dnl corresponding gnulib module is not in use. - gl_WARN_ON_USE_PREPARE([[#include <langinfo.h> - ]], [nl_langinfo]) -]) - -# gl_LANGINFO_MODULE_INDICATOR([modulename]) -# sets the shell variable that indicates the presence of the given module -# to a C preprocessor expression that will evaluate to 1. -# This macro invocation must not occur in macros that are AC_REQUIREd. -AC_DEFUN([gl_LANGINFO_MODULE_INDICATOR], -[ - dnl Ensure to expand the default settings once only. - gl_LANGINFO_H_REQUIRE_DEFAULTS - gl_MODULE_INDICATOR_SET_VARIABLE([$1]) - dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR_FOR_TESTS([$1]) -]) - -# Initializes the default values for AC_SUBSTed shell variables. -# This macro must not be AC_REQUIREd. It must only be invoked, and only -# outside of macros or in macros that are not AC_REQUIREd. -AC_DEFUN([gl_LANGINFO_H_REQUIRE_DEFAULTS], -[ - m4_defun(GL_MODULE_INDICATOR_PREFIX[_LANGINFO_H_MODULE_INDICATOR_DEFAULTS], [ - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_NL_LANGINFO]) - ]) - m4_require(GL_MODULE_INDICATOR_PREFIX[_LANGINFO_H_MODULE_INDICATOR_DEFAULTS]) - AC_REQUIRE([gl_LANGINFO_H_DEFAULTS]) -]) - -AC_DEFUN([gl_LANGINFO_H_DEFAULTS], -[ - dnl Assume proper GNU behavior unless another module says otherwise. - HAVE_NL_LANGINFO=1; AC_SUBST([HAVE_NL_LANGINFO]) - REPLACE_NL_LANGINFO=0; AC_SUBST([REPLACE_NL_LANGINFO]) -]) diff --git a/gnulib-m4/largefile.m4 b/gnulib-m4/largefile.m4 index 28813483..6aa07078 100644 --- a/gnulib-m4/largefile.m4 +++ b/gnulib-m4/largefile.m4 @@ -1,9 +1,10 @@ # largefile.m4 -# serial 2 -dnl Copyright 1992-1996, 1998-2024 Free Software Foundation, Inc. +# serial 4 +dnl Copyright 1992-1996, 1998-2025 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. +dnl This file is offered as-is, without any warranty. # Enable large files on systems where this is not the default. # Enable support for files on Linux file systems with 64-bit inode numbers. @@ -294,7 +295,7 @@ AC_CONFIG_COMMANDS_PRE([_AC_SYS_YEAR2038_ENABLE])]) # By default, many hosts won't let programs access large files; # one must use special compiler options to get large-file access to work. # For more details about this brain damage please see: -# http://www.unix.org/version2/whatsnew/lfs20mar.html +# https://www.unix.org/version2/whatsnew/lfs20mar.html # Additionally, on Linux file systems with 64-bit inodes a file that happens # to have a 64-bit inode number cannot be accessed by 32-bit applications on # Linux x86/x86_64. This can occur with file systems such as XFS and NFS. @@ -354,8 +355,7 @@ AC_DEFUN([gl_LARGEFILE], *) dnl Nothing to do on gnulib's side. dnl A 64-bit off_t is - dnl - already the default on Mac OS X, FreeBSD, NetBSD, OpenBSD, IRIX, - dnl OSF/1, Cygwin, + dnl - already the default on Mac OS X, FreeBSD, NetBSD, OpenBSD, Cygwin, dnl - enabled by _FILE_OFFSET_BITS=64 (ensured by AC_SYS_LARGEFILE) on dnl glibc, HP-UX, Solaris, dnl - enabled by _LARGE_FILES=1 (ensured by AC_SYS_LARGEFILE) on AIX, diff --git a/gnulib-m4/lcmessage.m4 b/gnulib-m4/lcmessage.m4 index 35b14fe9..e83f1fa4 100644 --- a/gnulib-m4/lcmessage.m4 +++ b/gnulib-m4/lcmessage.m4 @@ -1,10 +1,11 @@ # lcmessage.m4 # serial 8 -dnl Copyright (C) 1995-2002, 2004-2005, 2008-2014, 2016, 2019-2024 Free +dnl Copyright (C) 1995-2002, 2004-2005, 2008-2014, 2016, 2019-2025 Free dnl 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. +dnl This file is offered as-is, without any warranty. dnl dnl This file can be used in projects which are not available under dnl the GNU General Public License or the GNU Lesser General Public diff --git a/gnulib-m4/ldexpl.m4 b/gnulib-m4/ldexpl.m4 index aadc2bf4..5288d72f 100644 --- a/gnulib-m4/ldexpl.m4 +++ b/gnulib-m4/ldexpl.m4 @@ -1,9 +1,10 @@ # ldexpl.m4 # serial 19 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_LDEXPL], [ diff --git a/gnulib-m4/lib-ld.m4 b/gnulib-m4/lib-ld.m4 index 5da3eecf..3714b9ce 100644 --- a/gnulib-m4/lib-ld.m4 +++ b/gnulib-m4/lib-ld.m4 @@ -1,9 +1,10 @@ # lib-ld.m4 # serial 13 -dnl Copyright (C) 1996-2003, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 1996-2003, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl Subroutines of libtool.m4, dnl with replacements s/_*LT_PATH/AC_LIB_PROG/ and s/lt_/acl_/ to avoid diff --git a/gnulib-m4/lib-link.m4 b/gnulib-m4/lib-link.m4 index fb764d32..1863f4e1 100644 --- a/gnulib-m4/lib-link.m4 +++ b/gnulib-m4/lib-link.m4 @@ -1,9 +1,10 @@ # lib-link.m4 -# serial 34 -dnl Copyright (C) 2001-2024 Free Software Foundation, Inc. +# serial 35 +dnl Copyright (C) 2001-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. @@ -169,7 +170,7 @@ AC_DEFUN([AC_LIB_FROMPACKAGE], pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) define([acl_libsinpackage_]PACKUP, - m4_ifdef([acl_libsinpackage_]PACKUP, [m4_defn([acl_libsinpackage_]PACKUP)[, ]],)[lib$1]) + m4_ifdef([acl_libsinpackage_]PACKUP, [m4_defn([acl_libsinpackage_]PACKUP)[[, ]]],)[lib$1]) popdef([PACKUP]) popdef([PACK]) ]) diff --git a/gnulib-m4/lib-prefix.m4 b/gnulib-m4/lib-prefix.m4 index 6277f72d..29283534 100644 --- a/gnulib-m4/lib-prefix.m4 +++ b/gnulib-m4/lib-prefix.m4 @@ -1,9 +1,10 @@ # lib-prefix.m4 # serial 23 -dnl Copyright (C) 2001-2005, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2005, 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. diff --git a/gnulib-m4/libunistring-base.m4 b/gnulib-m4/libunistring-base.m4 index 21e0e442..9b5795ed 100644 --- a/gnulib-m4/libunistring-base.m4 +++ b/gnulib-m4/libunistring-base.m4 @@ -1,9 +1,10 @@ # libunistring-base.m4 -# serial 9 -dnl Copyright (C) 2010-2024 Free Software Foundation, Inc. +# serial 10 +dnl Copyright (C) 2010-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Paolo Bonzini and Bruno Haible. @@ -40,8 +41,10 @@ dnl (This is necessary because this token must be present in the .h files dnl when the .h files get installed.) dnl - When building gnulib or application code it expands to dnl - LIBUNISTRING_DLL_VARIABLE by default, -dnl - empty if the automake conditional LIBUNISTRING_COMPILE_$MODULE -dnl evaluates to true. +dnl - if the automake conditional LIBUNISTRING_COMPILE_$MODULE evaluates +dnl to true: the value of +dnl ${module_indicator_prefix}_GNULIB_LIBUNISTRING_DLL_VARIABLE_NAME +dnl (which usually is empty, unless explicitly set in configure.ac). dnl (This is necessary because when the conditional evaluates to false, dnl the application code expects to use the declared variable from the dnl installed libunistring; it's in this case that the @@ -55,7 +58,7 @@ AC_DEFUN([gl_LIBUNISTRING_MODULE_WITH_VARIABLE], gl_LIBUNISTRING_MODULE([$1], [$2]) m4_ifndef([gl_IN_LIBUNISTRING], [if test -z "${AS_TR_CPP([LIBUNISTRING_COMPILE_$2])_TRUE}"; then - GL_MODULE_INDICATOR_PREFIX[]_GNULIB_[]AS_TR_CPP([$2_DLL_VARIABLE])= + GL_MODULE_INDICATOR_PREFIX[]_GNULIB_[]AS_TR_CPP([$2_DLL_VARIABLE])=$GL_MODULE_INDICATOR_PREFIX[]_GNULIB_LIBUNISTRING_DLL_VARIABLE_NAME fi ]) ]) diff --git a/gnulib-m4/limits-h.m4 b/gnulib-m4/limits-h.m4 index 1b619e1e..202df492 100644 --- a/gnulib-m4/limits-h.m4 +++ b/gnulib-m4/limits-h.m4 @@ -1,9 +1,10 @@ # limits-h.m4 # serial 1 -dnl Copyright 2016-2024 Free Software Foundation, Inc. +dnl Copyright 2016-2025 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. +dnl This file is offered as-is, without any warranty. dnl Check whether limits.h has needed features. diff --git a/gnulib-m4/localcharset.m4 b/gnulib-m4/localcharset.m4 index 807a5eed..374a48f1 100644 --- a/gnulib-m4/localcharset.m4 +++ b/gnulib-m4/localcharset.m4 @@ -1,9 +1,10 @@ # localcharset.m4 # serial 8 -dnl Copyright (C) 2002, 2004, 2006, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2002, 2004, 2006, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_LOCALCHARSET], [ diff --git a/gnulib-m4/locale-ar.m4 b/gnulib-m4/locale-ar.m4 index 2dffa1df..d5fa9561 100644 --- a/gnulib-m4/locale-ar.m4 +++ b/gnulib-m4/locale-ar.m4 @@ -1,9 +1,10 @@ # locale-ar.m4 # serial 12 -dnl Copyright (C) 2003, 2005-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2005-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Ben Pfaff, based on locale-fr.m4 by Bruno Haible. diff --git a/gnulib-m4/locale-en.m4 b/gnulib-m4/locale-en.m4 index 39d08a23..4151428a 100644 --- a/gnulib-m4/locale-en.m4 +++ b/gnulib-m4/locale-en.m4 @@ -1,9 +1,10 @@ # locale-en.m4 # serial 1 -dnl Copyright (C) 2003-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. diff --git a/gnulib-m4/locale-fr.m4 b/gnulib-m4/locale-fr.m4 index 3832c10d..31c3bf33 100644 --- a/gnulib-m4/locale-fr.m4 +++ b/gnulib-m4/locale-fr.m4 @@ -1,9 +1,10 @@ # locale-fr.m4 -# serial 24 -dnl Copyright (C) 2003, 2005-2024 Free Software Foundation, Inc. +# serial 25 +dnl Copyright (C) 2003, 2005-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. @@ -111,7 +112,7 @@ int main () { if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then gt_cv_locale_fr=fr_FR.ISO-8859-1 else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. + # Test for the AIX, FreeBSD, NetBSD, OpenBSD locale name. if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then gt_cv_locale_fr=fr_FR.ISO8859-1 else diff --git a/gnulib-m4/locale-ja.m4 b/gnulib-m4/locale-ja.m4 index b94cd7ae..4b256859 100644 --- a/gnulib-m4/locale-ja.m4 +++ b/gnulib-m4/locale-ja.m4 @@ -1,9 +1,10 @@ # locale-ja.m4 -# serial 19 -dnl Copyright (C) 2003, 2005-2024 Free Software Foundation, Inc. +# serial 21 +dnl Copyright (C) 2003, 2005-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. @@ -111,11 +112,11 @@ int main () if (LC_ALL=ja_JP.EUC-JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then gt_cv_locale_ja=ja_JP.EUC-JP else - # Test for the HP-UX, OSF/1, NetBSD locale name. + # Test for the HP-UX, NetBSD locale name. if (LC_ALL=ja_JP.eucJP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then gt_cv_locale_ja=ja_JP.eucJP else - # Test for the IRIX, FreeBSD locale name. + # Test for the FreeBSD locale name. if (LC_ALL=ja_JP.EUC LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then gt_cv_locale_ja=ja_JP.EUC else diff --git a/gnulib-m4/locale-tr.m4 b/gnulib-m4/locale-tr.m4 index a3ead69b..7983fd63 100644 --- a/gnulib-m4/locale-tr.m4 +++ b/gnulib-m4/locale-tr.m4 @@ -1,9 +1,10 @@ # locale-tr.m4 # serial 16 -dnl Copyright (C) 2003, 2005-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2005-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. diff --git a/gnulib-m4/locale-zh.m4 b/gnulib-m4/locale-zh.m4 index 040cab0c..6f9374d2 100644 --- a/gnulib-m4/locale-zh.m4 +++ b/gnulib-m4/locale-zh.m4 @@ -1,9 +1,10 @@ # locale-zh.m4 # serial 20 -dnl Copyright (C) 2003, 2005-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2005-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. diff --git a/gnulib-m4/locale_h.m4 b/gnulib-m4/locale_h.m4 index cd1c81ec..ae01b4ff 100644 --- a/gnulib-m4/locale_h.m4 +++ b/gnulib-m4/locale_h.m4 @@ -1,9 +1,10 @@ # locale_h.m4 -# serial 31 -dnl Copyright (C) 2007, 2009-2024 Free Software Foundation, Inc. +# serial 39 +dnl Copyright (C) 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_LOCALE_H], [ @@ -19,6 +20,26 @@ AC_DEFUN_ONCE([gl_LOCALE_H], AC_REQUIRE([gl_STDDEF_H]) AC_REQUIRE([gl_LOCALE_T]) + dnl On native Windows, there is a type '_locale_t' that can be used to + dnl define locale_t. + AC_CACHE_CHECK([whether locale.h defines _locale_t], + [gl_cv_header_locale_has_windows_locale_t], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include <locale.h> + _locale_t x;]], + [[]])], + [gl_cv_header_locale_has_windows_locale_t=yes], + [gl_cv_header_locale_has_windows_locale_t=no]) + ]) + if test $gl_cv_header_locale_has_windows_locale_t = yes; then + HAVE_WINDOWS_LOCALE_T=1 + AC_DEFINE([HAVE_WINDOWS_LOCALE_T], [1], + [Define to 1 if <locale.h> defines the _locale_t type.]) + else + HAVE_WINDOWS_LOCALE_T=0 + fi + AC_SUBST([HAVE_WINDOWS_LOCALE_T]) dnl Solaris 11.0 defines the int_p_*, int_n_* members of 'struct lconv' dnl only if _LCONV_C99 is defined. @@ -42,8 +63,8 @@ AC_DEFUN_ONCE([gl_LOCALE_H], dnl Check whether 'struct lconv' is complete. dnl Bionic libc's 'struct lconv' is just a dummy. - dnl On OpenBSD 4.9, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 9, Cygwin 1.5.x, - dnl mingw, MSVC 9, it lacks the int_p_* and int_n_* members. + dnl On OpenBSD 4.9, HP-UX 11, Solaris 9, Cygwin 1.5.x, mingw, MSVC 9, + dnl it lacks the int_p_* and int_n_* members. AC_CACHE_CHECK([whether struct lconv is properly defined], [gl_cv_sys_struct_lconv_ok], [AC_COMPILE_IFELSE( @@ -86,7 +107,7 @@ AC_DEFUN_ONCE([gl_LOCALE_H], # include <xlocale.h> #endif ]], - [setlocale newlocale duplocale freelocale]) + [setlocale newlocale duplocale freelocale getlocalename_l]) ]) dnl Checks to determine whether the system has the locale_t type, @@ -130,6 +151,7 @@ AC_DEFUN([gl_LOCALE_T], fi fi AC_SUBST([HAVE_XLOCALE_H]) + AC_SUBST([HAVE_LOCALE_T]) ]) # gl_LOCALE_MODULE_INDICATOR([modulename]) @@ -154,7 +176,11 @@ AC_DEFUN([gl_LOCALE_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOCALECONV]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SETLOCALE]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SETLOCALE_NULL]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_NEWLOCALE]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_DUPLOCALE]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FREELOCALE]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETLOCALENAME_L]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETLOCALENAME_L_UNSAFE]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOCALENAME_UNSAFE]) ]) m4_require(GL_MODULE_INDICATOR_PREFIX[_LOCALE_H_MODULE_INDICATOR_DEFAULTS]) @@ -164,14 +190,16 @@ AC_DEFUN([gl_LOCALE_H_REQUIRE_DEFAULTS], AC_DEFUN([gl_LOCALE_H_DEFAULTS], [ dnl Assume proper GNU behavior unless another module says otherwise. - HAVE_NEWLOCALE=1; AC_SUBST([HAVE_NEWLOCALE]) - HAVE_DUPLOCALE=1; AC_SUBST([HAVE_DUPLOCALE]) - HAVE_FREELOCALE=1; AC_SUBST([HAVE_FREELOCALE]) - REPLACE_LOCALECONV=0; AC_SUBST([REPLACE_LOCALECONV]) - REPLACE_SETLOCALE=0; AC_SUBST([REPLACE_SETLOCALE]) - REPLACE_NEWLOCALE=0; AC_SUBST([REPLACE_NEWLOCALE]) - REPLACE_DUPLOCALE=0; AC_SUBST([REPLACE_DUPLOCALE]) - REPLACE_FREELOCALE=0; AC_SUBST([REPLACE_FREELOCALE]) - REPLACE_STRUCT_LCONV=0; AC_SUBST([REPLACE_STRUCT_LCONV]) + HAVE_NEWLOCALE=1; AC_SUBST([HAVE_NEWLOCALE]) + HAVE_DUPLOCALE=1; AC_SUBST([HAVE_DUPLOCALE]) + HAVE_FREELOCALE=1; AC_SUBST([HAVE_FREELOCALE]) + HAVE_GETLOCALENAME_L=1; AC_SUBST([HAVE_GETLOCALENAME_L]) + REPLACE_LOCALECONV=0; AC_SUBST([REPLACE_LOCALECONV]) + REPLACE_SETLOCALE=0; AC_SUBST([REPLACE_SETLOCALE]) + REPLACE_NEWLOCALE=0; AC_SUBST([REPLACE_NEWLOCALE]) + REPLACE_DUPLOCALE=0; AC_SUBST([REPLACE_DUPLOCALE]) + REPLACE_FREELOCALE=0; AC_SUBST([REPLACE_FREELOCALE]) + REPLACE_GETLOCALENAME_L=0; AC_SUBST([REPLACE_GETLOCALENAME_L]) + REPLACE_STRUCT_LCONV=0; AC_SUBST([REPLACE_STRUCT_LCONV]) LOCALENAME_ENHANCE_LOCALE_FUNCS=0; AC_SUBST([LOCALENAME_ENHANCE_LOCALE_FUNCS]) ]) diff --git a/gnulib-m4/localeconv.m4 b/gnulib-m4/localeconv.m4 new file mode 100644 index 00000000..55a669d0 --- /dev/null +++ b/gnulib-m4/localeconv.m4 @@ -0,0 +1,61 @@ +# localeconv.m4 +# serial 3 +dnl Copyright (C) 2012-2025 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. +dnl This file is offered as-is, without any warranty. + +AC_DEFUN([gl_FUNC_LOCALECONV], +[ + AC_REQUIRE([gl_LOCALE_H_DEFAULTS]) + AC_REQUIRE([gl_LOCALE_H]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + + if test $REPLACE_STRUCT_LCONV = 1; then + REPLACE_LOCALECONV=1 + fi + if test $REPLACE_LOCALECONV = 0; then + dnl Test whether fields of type 'char' are filled correctly. + dnl This test fails on mingw 5.0.3. + AC_CACHE_CHECK([whether localeconv works], + [gl_cv_func_localeconv_works], + [AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ + #include <locale.h> + #include <limits.h> + int main () + { + struct lconv *l = localeconv (); + return l->frac_digits != CHAR_MAX && l->frac_digits < 0; + } + ]])], + [gl_cv_func_localeconv_works=yes], + [gl_cv_func_localeconv_works=no], + [case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_localeconv_works="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_localeconv_works="guessing yes" ;; + # Guess no on native Windows. + mingw* | windows*) gl_cv_func_localeconv_works="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_localeconv_works="$gl_cross_guess_normal" ;; + esac + ]) + ]) + case "$gl_cv_func_localeconv_works" in + *yes) ;; + *) REPLACE_LOCALECONV=1 ;; + esac + fi +]) + +# Prerequisites of lib/localeconv.c. +AC_DEFUN([gl_PREREQ_LOCALECONV], +[ + AC_CHECK_MEMBERS([struct lconv.decimal_point], [], [], + [[#include <locale.h>]]) + AC_CHECK_MEMBERS([struct lconv.int_p_cs_precedes], [], [], + [[#include <locale.h>]]) +]) diff --git a/gnulib-m4/localename.m4 b/gnulib-m4/localename.m4 index d28dfe45..5cb26481 100644 --- a/gnulib-m4/localename.m4 +++ b/gnulib-m4/localename.m4 @@ -1,62 +1,24 @@ # localename.m4 -# serial 12 -dnl Copyright (C) 2007, 2009-2024 Free Software Foundation, Inc. +# serial 15 +dnl Copyright (C) 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_LOCALENAME_UNSAFE], [ - AC_REQUIRE([gl_LOCALE_H_DEFAULTS]) - AC_REQUIRE([gl_LOCALE_T]) AC_REQUIRE([gt_LC_MESSAGES]) - AC_REQUIRE([gt_INTL_THREAD_LOCALE_NAME]) AC_REQUIRE([gt_INTL_MACOSX]) - AC_CHECK_HEADERS_ONCE([langinfo.h]) - if test $HAVE_LOCALE_T = 1; then - gl_CHECK_FUNCS_ANDROID([newlocale], [[#include <locale.h>]]) - gl_CHECK_FUNCS_ANDROID([duplocale], [[#include <locale.h>]]) - gl_CHECK_FUNCS_ANDROID([freelocale], [[#include <locale.h>]]) - gl_func_newlocale="$ac_cv_func_newlocale" - gl_func_duplocale="$ac_cv_func_duplocale" - gl_func_freelocale="$ac_cv_func_freelocale" - else - dnl In 2019, some versions of z/OS lack the locale_t type and have broken - dnl newlocale, duplocale, freelocale functions. - gl_cv_onwards_func_newlocale='future OS version' - gl_cv_onwards_func_duplocale='future OS version' - gl_cv_onwards_func_freelocale='future OS version' - gl_func_newlocale=no - gl_func_duplocale=no - gl_func_freelocale=no - fi - if test $gl_func_newlocale != yes; then - HAVE_NEWLOCALE=0 - case "$gl_cv_onwards_func_newlocale" in - future*) REPLACE_NEWLOCALE=1 ;; - esac - fi - if test $gl_func_duplocale != yes; then - HAVE_DUPLOCALE=0 - case "$gl_cv_onwards_func_duplocale" in - future*) REPLACE_DUPLOCALE=1 ;; - esac - fi - if test $gl_func_freelocale != yes; then - HAVE_FREELOCALE=0 - case "$gl_cv_onwards_func_freelocale" in - future*) REPLACE_FREELOCALE=1 ;; - esac - fi - if test $gt_localename_enhances_locale_funcs = yes; then - REPLACE_NEWLOCALE=1 - REPLACE_DUPLOCALE=1 - REPLACE_FREELOCALE=1 - fi ]) AC_DEFUN([gl_LOCALENAME_UNSAFE_LIMITED], [ AC_REQUIRE([gt_LC_MESSAGES]) - AC_REQUIRE([gt_INTL_THREAD_LOCALE_NAME]) + AC_REQUIRE([gt_INTL_MACOSX]) +]) + +AC_DEFUN([gl_LOCALENAME_ENVIRON], +[ + AC_REQUIRE([gt_INTL_MACOSX]) ]) diff --git a/gnulib-m4/lock.m4 b/gnulib-m4/lock.m4 index eb0fc6a1..d085f442 100644 --- a/gnulib-m4/lock.m4 +++ b/gnulib-m4/lock.m4 @@ -1,9 +1,10 @@ # lock.m4 -# serial 14 -dnl Copyright (C) 2005-2024 Free Software Foundation, Inc. +# serial 15 +dnl Copyright (C) 2005-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. @@ -11,8 +12,8 @@ AC_DEFUN([gl_LOCK], [ AC_REQUIRE([gl_THREADLIB]) if test "$gl_threads_api" = posix; then - # OSF/1 4.0 and Mac OS X 10.1 lack the pthread_rwlock_t type and the - # pthread_rwlock_* functions. + # Mac OS X 10.1 lacks the pthread_rwlock_t type and the pthread_rwlock_* + # functions. has_rwlock=false AC_CHECK_TYPE([pthread_rwlock_t], [has_rwlock=true diff --git a/gnulib-m4/lstat.m4 b/gnulib-m4/lstat.m4 index f838e2cc..efae2485 100644 --- a/gnulib-m4/lstat.m4 +++ b/gnulib-m4/lstat.m4 @@ -1,9 +1,10 @@ # lstat.m4 # serial 36 -dnl Copyright (C) 1997-2001, 2003-2024 Free Software Foundation, Inc. +dnl Copyright (C) 1997-2001, 2003-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Jim Meyering. diff --git a/gnulib-m4/malloc.m4 b/gnulib-m4/malloc.m4 index ee6df5c3..688594fe 100644 --- a/gnulib-m4/malloc.m4 +++ b/gnulib-m4/malloc.m4 @@ -1,12 +1,24 @@ # malloc.m4 -# serial 34 -dnl Copyright (C) 2007, 2009-2024 Free Software Foundation, Inc. +# serial 44 +dnl Copyright (C) 2007, 2009-2025 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. - -# This is adapted with modifications from upstream Autoconf here: -# https://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/functions.m4?id=v2.70#n949 +dnl This file is offered as-is, without any warranty. + +m4_version_prereq([2.73], [], [ +# Modules that use this macro directly or indirectly should depend +# on extensions-aix, so that _LINUX_SOURCE_COMPAT gets defined +# before this macro gets invoked. This helps on AIX 7.2 and earlier +# if !(__VEC__ || __AIXVEC), and doesn't hurt otherwise. +# +# This is copied from upstream Autoconf here: +# https://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/functions.m4?id=1f38316f6af7bf63e5e7dd187ff6456e07ad743e#n971 +# _AC_FUNC_MALLOC_IF(IF-WORKS, IF-NOT[, UNKNOWN-ASSUME]) +# ------------------------------------------------------ +# If 'malloc (0)' returns nonnull, run IF-WORKS, otherwise, IF-NOT. +# If it is not known whether it works, assume the shell word UNKNOWN-ASSUME, +# which should end in "yes" or in something else (the latter is the default). AC_DEFUN([_AC_FUNC_MALLOC_IF], [ AC_REQUIRE([AC_CANONICAL_HOST])dnl for cross-compiles @@ -15,61 +27,81 @@ AC_DEFUN([_AC_FUNC_MALLOC_IF], [AC_RUN_IFELSE( [AC_LANG_PROGRAM( [[#include <stdlib.h> - ]], - [[void *p = malloc (0); - void * volatile vp = p; - int result = !vp; + /* Use pmalloc to test; 'volatile' prevents the compiler + from optimizing the malloc call away. */ + void *(*volatile pmalloc) (size_t) = malloc;]], + [[void *p = pmalloc (0); + int result = !p; free (p); - return result;]]) - ], + return result;]])], [ac_cv_func_malloc_0_nonnull=yes], [ac_cv_func_malloc_0_nonnull=no], - [case "$host_os" in - # Guess yes on platforms where we know the result. - *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \ - | gnu* | *-musl* | midipix* | midnightbsd* \ - | hpux* | solaris* | cygwin* | mingw* | windows* | msys* ) - ac_cv_func_malloc_0_nonnull="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;; - esac - ]) - ]) + [AS_CASE([$host_os], + [# Guess yes on platforms where we know the result. + *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \ + | gnu* | *-musl* | midipix* | midnightbsd* \ + | hpux* | solaris* | cygwin* | mingw* | windows* | msys*], + [ac_cv_func_malloc_0_nonnull="guessing yes"], + [# Guess as follows if we don't know. + ac_cv_func_malloc_0_nonnull=m4_default([$3], ["guessing no"])])])]) AS_CASE([$ac_cv_func_malloc_0_nonnull], [*yes], [$1], [$2]) ])# _AC_FUNC_MALLOC_IF +]) + +# gl_FUNC_MALLOC_0_NONNULL +# ------------------------ +# If 'malloc (0)' returns nonnull define HAVE_MALLOC_0_NONNULL. +# Also, set ac_cv_func_malloc_0_nonnull to a string that ends in +# "yes", otherwise set it to something else. If unknown whether +# malloc (0) works, guess as normal for cross-builds. +AC_DEFUN([gl_FUNC_MALLOC_0_NONNULL], +[ + _AC_FUNC_MALLOC_IF( + [AC_DEFINE([HAVE_MALLOC_0_NONNULL], [1], + [Define to 1 if malloc (0) returns nonnull.])], + [], + ["$gl_cross_guess_normal"]) +]) # gl_FUNC_MALLOC_GNU # ------------------ -# Replace malloc if it is not compatible with GNU libc. +# Test whether malloc (0) is compatible with GNU libc. +# Replace malloc if not. +# Define HAVE_MALLOC_0_NONNULL if malloc (0) returns nonnull (except upon +# out-of-memory). +# Define HAVE_MALLOC_PTRDIFF if malloc (N) reliably fails when N exceeds +# PTRDIFF_MAX. AC_DEFUN([gl_FUNC_MALLOC_GNU], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MALLOC_POSIX]) + AC_REQUIRE([gl_FUNC_MALLOC_0_NONNULL]) - dnl Through the dependency on module extensions-aix, _LINUX_SOURCE_COMPAT - dnl gets defined already before this macro gets invoked. This helps - dnl if !(__VEC__ || __AIXVEC), and doesn't hurt otherwise. - - REPLACE_MALLOC_FOR_MALLOC_GNU="$REPLACE_MALLOC_FOR_MALLOC_POSIX" - if test $REPLACE_MALLOC_FOR_MALLOC_GNU = 0; then - _AC_FUNC_MALLOC_IF([], [REPLACE_MALLOC_FOR_MALLOC_GNU=1]) - fi + AS_CASE([$ac_cv_func_malloc_0_nonnull], + [*yes], + [REPLACE_MALLOC_FOR_MALLOC_GNU=$REPLACE_MALLOC_FOR_MALLOC_POSIX], + [REPLACE_MALLOC_FOR_MALLOC_GNU=1]) ]) # gl_FUNC_MALLOC_PTRDIFF # ---------------------- -# Test whether malloc (N) reliably fails when N exceeds PTRDIFF_MAX, -# and replace malloc otherwise. +# Test whether malloc (N) reliably fails when N exceeds PTRDIFF_MAX. +# Define HAVE_MALLOC_PTRDIFF if yes. +# Replace malloc if not. AC_DEFUN([gl_FUNC_MALLOC_PTRDIFF], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_CHECK_MALLOC_PTRDIFF]) - test "$gl_cv_malloc_ptrdiff" = yes || REPLACE_MALLOC_FOR_MALLOC_POSIX=1 + AS_IF([test "$gl_cv_malloc_ptrdiff" = yes], + [AC_DEFINE([HAVE_MALLOC_PTRDIFF], 1, + [Define to 1 if malloc-like functions do not allocate objects + larger than PTRDIFF_MAX bytes.])], + [REPLACE_MALLOC_FOR_MALLOC_POSIX=1]) ]) # Test whether malloc, realloc, calloc refuse to create objects # larger than what can be expressed in ptrdiff_t. -# Set gl_cv_func_malloc_gnu to yes or no accordingly. +# Set gl_cv_func_malloc_gnu. AC_DEFUN([gl_CHECK_MALLOC_PTRDIFF], [ AC_CACHE_CHECK([whether malloc is ptrdiff_t safe], @@ -113,16 +145,19 @@ AC_DEFUN([gl_FUNC_MALLOC_POSIX], AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MALLOC_PTRDIFF]) AC_REQUIRE([gl_CHECK_MALLOC_POSIX]) - if test "$gl_cv_func_malloc_posix" = yes; then - AC_DEFINE([HAVE_MALLOC_POSIX], [1], - [Define if malloc, realloc, and calloc set errno on allocation failure.]) - else - REPLACE_MALLOC_FOR_MALLOC_POSIX=1 - fi + case "$gl_cv_func_malloc_posix" in + *yes) + AC_DEFINE([HAVE_MALLOC_POSIX], [1], + [Define if malloc, realloc, and calloc set errno on allocation failure.]) + ;; + *) + REPLACE_MALLOC_FOR_MALLOC_POSIX=1 + ;; + esac ]) # Test whether malloc, realloc, calloc set errno to ENOMEM on failure. -# Set gl_cv_func_malloc_posix to yes or no accordingly. +# Set gl_cv_func_malloc_posix to *yes or *no accordingly. AC_DEFUN([gl_CHECK_MALLOC_POSIX], [ AC_REQUIRE([AC_CANONICAL_HOST]) @@ -133,13 +168,25 @@ AC_DEFUN([gl_CHECK_MALLOC_POSIX], dnl some systems go to their knees when you do that. So assume that dnl all Unix implementations of the function set errno on failure, dnl except on those platforms where we have seen 'test-malloc-gnu', - dnl 'test-realloc-gnu', 'test-calloc-gnu' fail. + dnl 'test-realloc-posix', 'test-calloc-gnu' fail. case "$host_os" in mingw* | windows*) - gl_cv_func_malloc_posix=no ;; - irix* | solaris*) - dnl On IRIX 6.5, the three functions return NULL with errno unset - dnl when the argument is larger than PTRDIFF_MAX. + dnl Old MSVCRT from 2001 did not set errno=ENOMEM when malloc failed. + dnl More recent MSVCRT from 2019 does so. + dnl UCRT is the successor of MSVCRT. Assume that UCRT does so as well. + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include <stdio.h> + #ifndef _UCRT + msvcrt yuck + #endif + ]], + [[]]) + ], + [gl_cv_func_malloc_posix="guessing yes"], + [gl_cv_func_malloc_posix="guessing no"]) + ;; + solaris*) dnl On Solaris 11.3, the three functions return NULL with errno set dnl to EAGAIN, not ENOMEM, when the argument is larger than dnl PTRDIFF_MAX. diff --git a/gnulib-m4/malloca.m4 b/gnulib-m4/malloca.m4 index 9e09d22c..cabe5fe7 100644 --- a/gnulib-m4/malloca.m4 +++ b/gnulib-m4/malloca.m4 @@ -1,15 +1,16 @@ # malloca.m4 -# serial 2 -dnl Copyright (C) 2003-2004, 2006-2007, 2009-2024 Free Software Foundation, +# serial 3 +dnl Copyright (C) 2003-2004, 2006-2007, 2009-2025 Free Software Foundation, dnl 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_MALLOCA], [ dnl Use the autoconf tests for alloca(), but not the AC_SUBSTed variables dnl @ALLOCA@ and @LTALLOCA@. dnl gl_FUNC_ALLOCA dnl Already brought in by the module dependencies. - AC_REQUIRE([gl_EEMALLOC]) + AC_REQUIRE([gl_FUNC_MALLOC_GNU]) ]) diff --git a/gnulib-m4/math_h.m4 b/gnulib-m4/math_h.m4 index 7e69629c..fa2ace3f 100644 --- a/gnulib-m4/math_h.m4 +++ b/gnulib-m4/math_h.m4 @@ -1,9 +1,10 @@ # math_h.m4 -# serial 140 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 141 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_MATH_H], [ @@ -219,14 +220,19 @@ AC_DEFUN([gl_MATH_H_DEFAULTS], HAVE_CBRTF=1; AC_SUBST([HAVE_CBRTF]) HAVE_CBRTL=1; AC_SUBST([HAVE_CBRTL]) HAVE_COPYSIGN=1; AC_SUBST([HAVE_COPYSIGN]) + HAVE_COPYSIGNF=1; AC_SUBST([HAVE_COPYSIGNF]) HAVE_COPYSIGNL=1; AC_SUBST([HAVE_COPYSIGNL]) HAVE_COSF=1; AC_SUBST([HAVE_COSF]) HAVE_COSL=1; AC_SUBST([HAVE_COSL]) HAVE_COSHF=1; AC_SUBST([HAVE_COSHF]) HAVE_EXPF=1; AC_SUBST([HAVE_EXPF]) HAVE_EXPL=1; AC_SUBST([HAVE_EXPL]) + HAVE_EXP2=1; AC_SUBST([HAVE_EXP2]) + HAVE_EXP2F=1; AC_SUBST([HAVE_EXP2F]) + HAVE_EXP2L=1; AC_SUBST([HAVE_EXP2L]) HAVE_EXPM1=1; AC_SUBST([HAVE_EXPM1]) HAVE_EXPM1F=1; AC_SUBST([HAVE_EXPM1F]) + HAVE_EXPM1L=1; AC_SUBST([HAVE_EXPM1L]) HAVE_FABSF=1; AC_SUBST([HAVE_FABSF]) HAVE_FABSL=1; AC_SUBST([HAVE_FABSL]) HAVE_FMA=1; AC_SUBST([HAVE_FMA]) @@ -254,6 +260,9 @@ AC_DEFUN([gl_MATH_H_DEFAULTS], HAVE_LOG1P=1; AC_SUBST([HAVE_LOG1P]) HAVE_LOG1PF=1; AC_SUBST([HAVE_LOG1PF]) HAVE_LOG1PL=1; AC_SUBST([HAVE_LOG1PL]) + HAVE_LOG2=1; AC_SUBST([HAVE_LOG2]) + HAVE_LOG2F=1; AC_SUBST([HAVE_LOG2F]) + HAVE_LOG2L=1; AC_SUBST([HAVE_LOG2L]) HAVE_LOGBF=1; AC_SUBST([HAVE_LOGBF]) HAVE_LOGBL=1; AC_SUBST([HAVE_LOGBL]) HAVE_LOGP1=1; AC_SUBST([HAVE_LOGP1]) @@ -264,8 +273,13 @@ AC_DEFUN([gl_MATH_H_DEFAULTS], HAVE_POWF=1; AC_SUBST([HAVE_POWF]) HAVE_REMAINDER=1; AC_SUBST([HAVE_REMAINDER]) HAVE_REMAINDERF=1; AC_SUBST([HAVE_REMAINDERF]) + HAVE_REMAINDERL=1; AC_SUBST([HAVE_REMAINDERL]) HAVE_RINT=1; AC_SUBST([HAVE_RINT]) + HAVE_RINTF=1; AC_SUBST([HAVE_RINTF]) HAVE_RINTL=1; AC_SUBST([HAVE_RINTL]) + HAVE_ROUND=1; AC_SUBST([HAVE_ROUND]) + HAVE_ROUNDF=1; AC_SUBST([HAVE_ROUNDF]) + HAVE_ROUNDL=1; AC_SUBST([HAVE_ROUNDL]) HAVE_SETPAYLOAD=1; AC_SUBST([HAVE_SETPAYLOAD]) HAVE_SETPAYLOADF=1; AC_SUBST([HAVE_SETPAYLOADF]) HAVE_SETPAYLOADL=1; AC_SUBST([HAVE_SETPAYLOADL]) @@ -289,33 +303,17 @@ AC_DEFUN([gl_MATH_H_DEFAULTS], HAVE_DECL_ACOSL=1; AC_SUBST([HAVE_DECL_ACOSL]) HAVE_DECL_ASINL=1; AC_SUBST([HAVE_DECL_ASINL]) HAVE_DECL_ATANL=1; AC_SUBST([HAVE_DECL_ATANL]) - HAVE_DECL_CBRTF=1; AC_SUBST([HAVE_DECL_CBRTF]) - HAVE_DECL_CBRTL=1; AC_SUBST([HAVE_DECL_CBRTL]) HAVE_DECL_CEILF=1; AC_SUBST([HAVE_DECL_CEILF]) HAVE_DECL_CEILL=1; AC_SUBST([HAVE_DECL_CEILL]) - HAVE_DECL_COPYSIGNF=1; AC_SUBST([HAVE_DECL_COPYSIGNF]) HAVE_DECL_COSL=1; AC_SUBST([HAVE_DECL_COSL]) HAVE_DECL_EXPL=1; AC_SUBST([HAVE_DECL_EXPL]) - HAVE_DECL_EXP2=1; AC_SUBST([HAVE_DECL_EXP2]) - HAVE_DECL_EXP2F=1; AC_SUBST([HAVE_DECL_EXP2F]) - HAVE_DECL_EXP2L=1; AC_SUBST([HAVE_DECL_EXP2L]) - HAVE_DECL_EXPM1L=1; AC_SUBST([HAVE_DECL_EXPM1L]) HAVE_DECL_FLOORF=1; AC_SUBST([HAVE_DECL_FLOORF]) HAVE_DECL_FLOORL=1; AC_SUBST([HAVE_DECL_FLOORL]) HAVE_DECL_FREXPL=1; AC_SUBST([HAVE_DECL_FREXPL]) HAVE_DECL_LDEXPL=1; AC_SUBST([HAVE_DECL_LDEXPL]) HAVE_DECL_LOGL=1; AC_SUBST([HAVE_DECL_LOGL]) HAVE_DECL_LOG10L=1; AC_SUBST([HAVE_DECL_LOG10L]) - HAVE_DECL_LOG2=1; AC_SUBST([HAVE_DECL_LOG2]) - HAVE_DECL_LOG2F=1; AC_SUBST([HAVE_DECL_LOG2F]) - HAVE_DECL_LOG2L=1; AC_SUBST([HAVE_DECL_LOG2L]) HAVE_DECL_LOGB=1; AC_SUBST([HAVE_DECL_LOGB]) - HAVE_DECL_REMAINDER=1; AC_SUBST([HAVE_DECL_REMAINDER]) - HAVE_DECL_REMAINDERL=1; AC_SUBST([HAVE_DECL_REMAINDERL]) - HAVE_DECL_RINTF=1; AC_SUBST([HAVE_DECL_RINTF]) - HAVE_DECL_ROUND=1; AC_SUBST([HAVE_DECL_ROUND]) - HAVE_DECL_ROUNDF=1; AC_SUBST([HAVE_DECL_ROUNDF]) - HAVE_DECL_ROUNDL=1; AC_SUBST([HAVE_DECL_ROUNDL]) HAVE_DECL_SINL=1; AC_SUBST([HAVE_DECL_SINL]) HAVE_DECL_SQRTL=1; AC_SUBST([HAVE_DECL_SQRTL]) HAVE_DECL_TANL=1; AC_SUBST([HAVE_DECL_TANL]) diff --git a/gnulib-m4/mbchar.m4 b/gnulib-m4/mbchar.m4 index b84eb4dc..b76f1d7b 100644 --- a/gnulib-m4/mbchar.m4 +++ b/gnulib-m4/mbchar.m4 @@ -1,9 +1,10 @@ # mbchar.m4 # serial 9 -dnl Copyright (C) 2005-2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2005-2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl autoconf tests required for use of mbchar.m4 dnl From Bruno Haible. diff --git a/gnulib-m4/mbiter.m4 b/gnulib-m4/mbiter.m4 index e1f4ae65..b51242e6 100644 --- a/gnulib-m4/mbiter.m4 +++ b/gnulib-m4/mbiter.m4 @@ -1,9 +1,10 @@ # mbiter.m4 # serial 7 -dnl Copyright (C) 2005, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl autoconf tests required for use of mbiter.h dnl From Bruno Haible. diff --git a/gnulib-m4/mbrtoc32.m4 b/gnulib-m4/mbrtoc32.m4 index 4da0712b..1991529c 100644 --- a/gnulib-m4/mbrtoc32.m4 +++ b/gnulib-m4/mbrtoc32.m4 @@ -1,9 +1,10 @@ # mbrtoc32.m4 # serial 21 -dnl Copyright (C) 2014-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2014-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_MBRTOC32], [ diff --git a/gnulib-m4/mbrtowc.m4 b/gnulib-m4/mbrtowc.m4 index ad7a7c73..4ed9510f 100644 --- a/gnulib-m4/mbrtowc.m4 +++ b/gnulib-m4/mbrtowc.m4 @@ -1,10 +1,11 @@ # mbrtowc.m4 -# serial 46 -dnl Copyright (C) 2001-2002, 2004-2005, 2008-2024 Free Software Foundation, +# serial 47 +dnl Copyright (C) 2001-2002, 2004-2005, 2008-2025 Free Software Foundation, dnl 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_MBRTOWC], [ @@ -32,7 +33,6 @@ AC_DEFUN([gl_FUNC_MBRTOWC], REPLACE_MBRTOWC=1 else gl_MBRTOWC_NULL_ARG1 - gl_MBRTOWC_NULL_ARG2 gl_MBRTOWC_RETVAL gl_MBRTOWC_NUL_RETVAL gl_MBRTOWC_STORES_INCOMPLETE @@ -45,13 +45,6 @@ AC_DEFUN([gl_FUNC_MBRTOWC], REPLACE_MBRTOWC=1 ;; esac - case "$gl_cv_func_mbrtowc_null_arg2" in - *yes) ;; - *) AC_DEFINE([MBRTOWC_NULL_ARG2_BUG], [1], - [Define if the mbrtowc function has the NULL string argument bug.]) - REPLACE_MBRTOWC=1 - ;; - esac case "$gl_cv_func_mbrtowc_retval" in *yes) ;; *) AC_DEFINE([MBRTOWC_RETVAL_BUG], [1], @@ -169,10 +162,10 @@ AC_DEFUN([gl_MBRTOWC_INCOMPLETE_STATE], dnl is present. changequote(,)dnl case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; + # Guess no on AIX. + aix*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; esac changequote([,])dnl if test $LOCALE_JA != none; then @@ -345,57 +338,6 @@ int main () ]) ]) -dnl Test whether mbrtowc supports a NULL string argument correctly. -dnl Result is gl_cv_func_mbrtowc_null_arg2. - -AC_DEFUN([gl_MBRTOWC_NULL_ARG2], -[ - AC_REQUIRE([AC_PROG_CC]) - 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], - [ - dnl Initial guess, used when cross-compiling or when no suitable locale - dnl is present. -changequote(,)dnl - case "$host_os" in - # Guess no on OSF/1. - osf*) gl_cv_func_mbrtowc_null_arg2="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_null_arg2="guessing yes" ;; - esac -changequote([,])dnl - if test "$LOCALE_EN_UTF8" != none; then - AC_RUN_IFELSE( - [AC_LANG_SOURCE([[ -#include <locale.h> -#include <string.h> -#include <wchar.h> -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_EN_UTF8") != NULL) - { - mbstate_t state; - wchar_t wc; - int ret; - - memset (&state, '\0', sizeof (mbstate_t)); - wc = (wchar_t) 0xBADFACE; - mbrtowc (&wc, NULL, 5, &state); - /* Check that wc was not modified. */ - if (wc != (wchar_t) 0xBADFACE) - return 2; - } - return 0; -}]])], - [gl_cv_func_mbrtowc_null_arg2=yes], - [gl_cv_func_mbrtowc_null_arg2=no], - [:]) - fi - ]) -]) - dnl Test whether mbrtowc, when parsing the end of a multibyte character, dnl correctly returns the number of bytes that were needed to complete the dnl character (not the total number of bytes of the multibyte character). @@ -715,7 +657,7 @@ AC_DEFUN([gl_MBRTOWC_EMPTY_INPUT], dnl Test whether mbrtowc reports encoding errors in the C locale. dnl Although POSIX was never intended to allow this, the GNU C Library dnl and other implementations do it. See: -dnl https://sourceware.org/bugzilla/show_bug.cgi?id=19932 +dnl https://sourceware.org/PR19932 dnl POSIX has now clarified it: dnl <https://pubs.opengroup.org/onlinepubs/9699919799/functions/mbrtowc.html> dnl says: "In the POSIX locale an [EILSEQ] error cannot occur since all byte diff --git a/gnulib-m4/mbsinit.m4 b/gnulib-m4/mbsinit.m4 index 10c86ba9..69cfa574 100644 --- a/gnulib-m4/mbsinit.m4 +++ b/gnulib-m4/mbsinit.m4 @@ -1,9 +1,10 @@ # mbsinit.m4 # serial 10 -dnl Copyright (C) 2008, 2010-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008, 2010-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_MBSINIT], [ diff --git a/gnulib-m4/mbstate_t.m4 b/gnulib-m4/mbstate_t.m4 index 66d65cd7..59df1e2e 100644 --- a/gnulib-m4/mbstate_t.m4 +++ b/gnulib-m4/mbstate_t.m4 @@ -1,9 +1,10 @@ # mbstate_t.m4 # serial 14 -dnl Copyright (C) 2000-2002, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2000-2002, 2008-2025 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. +dnl This file is offered as-is, without any warranty. # From Paul Eggert. diff --git a/gnulib-m4/mbtowc.m4 b/gnulib-m4/mbtowc.m4 index 603b0c1a..3e3f6ce0 100644 --- a/gnulib-m4/mbtowc.m4 +++ b/gnulib-m4/mbtowc.m4 @@ -1,9 +1,10 @@ # mbtowc.m4 # serial 5 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_MBTOWC], [ diff --git a/gnulib-m4/memchr.m4 b/gnulib-m4/memchr.m4 index 31ff2dac..9647b20e 100644 --- a/gnulib-m4/memchr.m4 +++ b/gnulib-m4/memchr.m4 @@ -1,9 +1,10 @@ # memchr.m4 -# serial 20 -dnl Copyright (C) 2002-2004, 2009-2024 Free Software Foundation, Inc. +# serial 21 +dnl Copyright (C) 2002-2004, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_FUNC_MEMCHR], [ @@ -20,7 +21,7 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR], # https://bugzilla.redhat.com/show_bug.cgi?id=499689 # memchr should not dereference overestimated length after a match # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737 - # https://sourceware.org/bugzilla/show_bug.cgi?id=10162 + # https://sourceware.org/PR10162 # memchr should cast the second argument to 'unsigned char'. # This bug exists in Android 4.3. # Assume that memchr works on platforms that lack mprotect. @@ -32,31 +33,20 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR], # include <unistd.h> # include <sys/types.h> # include <sys/mman.h> -# ifndef MAP_FILE -# define MAP_FILE 0 -# endif #endif ]], [[ int result = 0; char *fence = NULL; #if HAVE_SYS_MMAN_H && HAVE_MPROTECT -# if HAVE_MAP_ANONYMOUS - const int flags = MAP_ANONYMOUS | MAP_PRIVATE; - const int fd = -1; -# else /* !HAVE_MAP_ANONYMOUS */ - const int flags = MAP_FILE | MAP_PRIVATE; - int fd = open ("/dev/zero", O_RDONLY, 0666); - if (fd >= 0) -# endif - { - long int pagesize = sysconf (_SC_PAGESIZE); - char *two_pages = - (char *) mmap (NULL, 2 * pagesize, PROT_READ | PROT_WRITE, - flags, fd, 0); - if (two_pages != (char *)(-1) - && mprotect (two_pages + pagesize, pagesize, PROT_NONE) == 0) - fence = two_pages + pagesize; - } + { + long int pagesize = sysconf (_SC_PAGESIZE); + char *two_pages = + (char *) mmap (NULL, 2 * pagesize, PROT_READ | PROT_WRITE, + MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); + if (two_pages != (char *)(-1) + && mprotect (two_pages + pagesize, pagesize, PROT_NONE) == 0) + fence = two_pages + pagesize; + } #endif if (fence) { diff --git a/gnulib-m4/mempcpy.m4 b/gnulib-m4/mempcpy.m4 deleted file mode 100644 index 377fda3c..00000000 --- a/gnulib-m4/mempcpy.m4 +++ /dev/null @@ -1,30 +0,0 @@ -# mempcpy.m4 -# serial 14 -dnl Copyright (C) 2003-2004, 2006-2007, 2009-2024 Free Software Foundation, -dnl 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_DEFUN([gl_FUNC_MEMPCPY], -[ - dnl Persuade glibc <string.h> to declare mempcpy(). - AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) - - dnl The mempcpy() declaration in lib/string.in.h uses 'restrict'. - AC_REQUIRE([AC_C_RESTRICT]) - - AC_REQUIRE([gl_STRING_H_DEFAULTS]) - gl_CHECK_FUNCS_ANDROID([mempcpy], [[#include <string.h>]]) - if test $ac_cv_func_mempcpy = no; then - HAVE_MEMPCPY=0 - case "$gl_cv_onwards_func_mempcpy" in - future*) REPLACE_MEMPCPY=1 ;; - esac - fi -]) - -# Prerequisites of lib/mempcpy.c. -AC_DEFUN([gl_PREREQ_MEMPCPY], [ - : -]) diff --git a/gnulib-m4/memrchr.m4 b/gnulib-m4/memrchr.m4 deleted file mode 100644 index d8c931e9..00000000 --- a/gnulib-m4/memrchr.m4 +++ /dev/null @@ -1,24 +0,0 @@ -# memrchr.m4 -# serial 11 -dnl Copyright (C) 2002-2003, 2005-2007, 2009-2024 Free Software Foundation, -dnl 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_DEFUN([gl_FUNC_MEMRCHR], -[ - dnl Persuade glibc <string.h> to declare memrchr(). - AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) - - AC_REQUIRE([gl_STRING_H_DEFAULTS]) - AC_CHECK_DECLS_ONCE([memrchr]) - if test $ac_cv_have_decl_memrchr = no; then - HAVE_DECL_MEMRCHR=0 - fi - - AC_CHECK_FUNCS([memrchr]) -]) - -# Prerequisites of lib/memrchr.c. -AC_DEFUN([gl_PREREQ_MEMRCHR], [:]) diff --git a/gnulib-m4/minmax.m4 b/gnulib-m4/minmax.m4 index bc7d0c34..69c8a89f 100644 --- a/gnulib-m4/minmax.m4 +++ b/gnulib-m4/minmax.m4 @@ -1,9 +1,10 @@ # minmax.m4 # serial 4 -dnl Copyright (C) 2005, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_PREREQ([2.53]) diff --git a/gnulib-m4/mkfifo.m4 b/gnulib-m4/mkfifo.m4 new file mode 100644 index 00000000..9e85a89f --- /dev/null +++ b/gnulib-m4/mkfifo.m4 @@ -0,0 +1,75 @@ +# mkfifo.m4 +# serial 9 +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. + +# See if we need to provide mkfifo replacement. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_MKFIFO], +[ + AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + + dnl We can't use AC_CHECK_FUNC here, because mkfifo() is defined as a + dnl static inline function when compiling for Android 4.4 or older. + AC_CACHE_CHECK([for mkfifo], [gl_cv_func_mkfifo], + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include <sys/stat.h>]], + [[return mkfifo("/",0);]]) + ], + [gl_cv_func_mkfifo=yes], + [gl_cv_func_mkfifo=no]) + ]) + if test $gl_cv_func_mkfifo = no; then + HAVE_MKFIFO=0 + else + AC_DEFINE([HAVE_MKFIFO], [1], + [Define to 1 if you have a 'mkfifo' function.]) + dnl Check for Solaris 9 and FreeBSD bug with trailing slash. + AC_CHECK_FUNCS_ONCE([lstat]) + AC_CACHE_CHECK([whether mkfifo rejects trailing slashes], + [gl_cv_func_mkfifo_works], + [# Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.tmp conftest.lnk + fi + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include <sys/stat.h> + ]], + [[int result = 0; + if (!mkfifo ("conftest.tmp/", 0600)) + result |= 1; +#if HAVE_LSTAT + if (!mkfifo ("conftest.lnk/", 0600)) + result |= 2; +#endif + return result; + ]])], + [gl_cv_func_mkfifo_works=yes], [gl_cv_func_mkfifo_works=no], + [case "$host_os" in + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_mkfifo_works="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_mkfifo_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_mkfifo_works="$gl_cross_guess_normal" ;; + esac + ]) + rm -f conftest.tmp conftest.lnk]) + case "$gl_cv_func_mkfifo_works" in + *yes) ;; + *) + AC_DEFINE([MKFIFO_TRAILING_SLASH_BUG], [1], [Define to 1 if mkfifo + does not reject trailing slash]) + REPLACE_MKFIFO=1 + ;; + esac + fi +]) diff --git a/gnulib-m4/mmap-anon.m4 b/gnulib-m4/mmap-anon.m4 index 61ca0120..abf6194a 100644 --- a/gnulib-m4/mmap-anon.m4 +++ b/gnulib-m4/mmap-anon.m4 @@ -1,18 +1,17 @@ # mmap-anon.m4 -# serial 12 -dnl Copyright (C) 2005, 2007, 2009-2024 Free Software Foundation, Inc. +# serial 15 +dnl Copyright (C) 2005, 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. # Detect how mmap can be used to create anonymous (not file-backed) memory # mappings. -# - On Linux, AIX, OSF/1, Solaris, Cygwin, Interix, Haiku, both MAP_ANONYMOUS -# and MAP_ANON exist and have the same value. +# - On Linux, AIX, Solaris, Cygwin, Interix, Haiku, both MAP_ANONYMOUS and +# MAP_ANON exist and have the same value. # - On HP-UX, only MAP_ANONYMOUS exists. # - On Mac OS X, FreeBSD, NetBSD, OpenBSD, Minix, only MAP_ANON exists. -# - On IRIX, neither exists, and a file descriptor opened to /dev/zero must be -# used. AC_DEFUN_ONCE([gl_FUNC_MMAP_ANON], [ @@ -22,11 +21,13 @@ AC_DEFUN_ONCE([gl_FUNC_MMAP_ANON], # Check for mmap(). Don't use AC_FUNC_MMAP, because it checks too much: it # fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is # irrelevant for anonymous mappings. - AC_CHECK_FUNC([mmap], [gl_have_mmap=yes], [gl_have_mmap=no]) + # Instead, assume that mmap() exists if and only if <sys/mman.h> exists. + # Code needs to tests HAVE_SYS_MMAN_H, not HAVE_MMAP. + AC_CHECK_HEADERS_ONCE([sys/mman.h]) # Try to allow MAP_ANONYMOUS. gl_have_mmap_anonymous=no - if test $gl_have_mmap = yes; then + if test $ac_cv_header_sys_mman_h = yes; then AC_MSG_CHECKING([for MAP_ANONYMOUS]) AC_EGREP_CPP([I cannot identify this map], [ #include <sys/mman.h> @@ -47,10 +48,5 @@ AC_DEFUN_ONCE([gl_FUNC_MMAP_ANON], gl_have_mmap_anonymous=yes]) fi AC_MSG_RESULT([$gl_have_mmap_anonymous]) - if test $gl_have_mmap_anonymous = yes; then - AC_DEFINE([HAVE_MAP_ANONYMOUS], [1], - [Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including - config.h and <sys/mman.h>.]) - fi fi ]) diff --git a/gnulib-m4/mode_t.m4 b/gnulib-m4/mode_t.m4 index 0d5c2808..7dae201b 100644 --- a/gnulib-m4/mode_t.m4 +++ b/gnulib-m4/mode_t.m4 @@ -1,9 +1,10 @@ # mode_t.m4 # serial 2 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. # For using mode_t, it's sufficient to use AC_TYPE_MODE_T and # include <sys/types.h>. diff --git a/gnulib-m4/msvc-inval.m4 b/gnulib-m4/msvc-inval.m4 index 7919ff12..bfbb983b 100644 --- a/gnulib-m4/msvc-inval.m4 +++ b/gnulib-m4/msvc-inval.m4 @@ -1,9 +1,10 @@ # msvc-inval.m4 # serial 1 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_MSVC_INVAL], [ diff --git a/gnulib-m4/msvc-nothrow.m4 b/gnulib-m4/msvc-nothrow.m4 index 007c7620..6a470971 100644 --- a/gnulib-m4/msvc-nothrow.m4 +++ b/gnulib-m4/msvc-nothrow.m4 @@ -1,9 +1,10 @@ # msvc-nothrow.m4 # serial 1 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_MSVC_NOTHROW], [ diff --git a/gnulib-m4/multiarch.m4 b/gnulib-m4/multiarch.m4 index 3af29d39..817f01f1 100644 --- a/gnulib-m4/multiarch.m4 +++ b/gnulib-m4/multiarch.m4 @@ -1,9 +1,10 @@ # multiarch.m4 # serial 9 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. # Determine whether the compiler is or may be producing universal binaries. # diff --git a/gnulib-m4/musl.m4 b/gnulib-m4/musl.m4 index 0d4de892..6ff778cb 100644 --- a/gnulib-m4/musl.m4 +++ b/gnulib-m4/musl.m4 @@ -1,9 +1,10 @@ # musl.m4 # serial 4 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. # Test for musl libc, despite the musl libc authors don't like it # <https://wiki.musl-libc.org/faq.html> diff --git a/gnulib-m4/nan-mips.m4 b/gnulib-m4/nan-mips.m4 index 0ec451cb..144c2de8 100644 --- a/gnulib-m4/nan-mips.m4 +++ b/gnulib-m4/nan-mips.m4 @@ -1,9 +1,10 @@ # nan-mips.m4 # serial 1 -dnl Copyright (C) 2023-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2023-2025 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. +dnl This file is offered as-is, without any warranty. # Extra meta-info mentioned by lib/snan.h. AC_DEFUN_ONCE([gl_NAN_MIPS], diff --git a/gnulib-m4/nanosleep.m4 b/gnulib-m4/nanosleep.m4 index a7281b8a..81c45d8a 100644 --- a/gnulib-m4/nanosleep.m4 +++ b/gnulib-m4/nanosleep.m4 @@ -1,9 +1,10 @@ # nanosleep.m4 # serial 47 -dnl Copyright (C) 1999-2001, 2003-2024 Free Software Foundation, Inc. +dnl Copyright (C) 1999-2001, 2003-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Jim Meyering. dnl Check for the nanosleep function. diff --git a/gnulib-m4/netinet_in_h.m4 b/gnulib-m4/netinet_in_h.m4 index 926f7f95..b56e354c 100644 --- a/gnulib-m4/netinet_in_h.m4 +++ b/gnulib-m4/netinet_in_h.m4 @@ -1,9 +1,10 @@ # netinet_in_h.m4 # serial 6 -dnl Copyright (C) 2006-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_HEADER_NETINET_IN], [ diff --git a/gnulib-m4/nocrash.m4 b/gnulib-m4/nocrash.m4 index cbe8fe82..662fb049 100644 --- a/gnulib-m4/nocrash.m4 +++ b/gnulib-m4/nocrash.m4 @@ -1,9 +1,10 @@ # nocrash.m4 # serial 5 -dnl Copyright (C) 2005, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl Based on libsigsegv, from Bruno Haible and Paolo Bonzini. diff --git a/gnulib-m4/off64_t.m4 b/gnulib-m4/off64_t.m4 index 34fa21eb..963d53e9 100644 --- a/gnulib-m4/off64_t.m4 +++ b/gnulib-m4/off64_t.m4 @@ -1,9 +1,10 @@ # off64_t.m4 # serial 1 -dnl Copyright (C) 2024 Free Software Foundation, Inc. +dnl Copyright (C) 2024-2025 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. +dnl This file is offered as-is, without any warranty. dnl Check whether <sys/types.h> defines the 'off64_t' type. dnl Set HAVE_OFF64_T. diff --git a/gnulib-m4/off_t.m4 b/gnulib-m4/off_t.m4 index db6035db..f4f4bbf6 100644 --- a/gnulib-m4/off_t.m4 +++ b/gnulib-m4/off_t.m4 @@ -1,9 +1,10 @@ # off_t.m4 # serial 1 -dnl Copyright (C) 2012-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2012-2025 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. +dnl This file is offered as-is, without any warranty. dnl Check whether to override the 'off_t' type. dnl Set WINDOWS_64_BIT_OFF_T. diff --git a/gnulib-m4/once.m4 b/gnulib-m4/once.m4 index 6b0d3239..7876a8fe 100644 --- a/gnulib-m4/once.m4 +++ b/gnulib-m4/once.m4 @@ -1,9 +1,10 @@ # once.m4 # serial 1 -dnl Copyright (C) 2024 Free Software Foundation, Inc. +dnl Copyright (C) 2024-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. diff --git a/gnulib-m4/open-cloexec.m4 b/gnulib-m4/open-cloexec.m4 index 6defdfb4..860541b0 100644 --- a/gnulib-m4/open-cloexec.m4 +++ b/gnulib-m4/open-cloexec.m4 @@ -1,9 +1,10 @@ # open-cloexec.m4 # serial 1 -dnl Copyright 2017-2024 Free Software Foundation, Inc. +dnl Copyright 2017-2025 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. +dnl This file is offered as-is, without any warranty. # Test whether O_CLOEXEC is defined. diff --git a/gnulib-m4/open-slash.m4 b/gnulib-m4/open-slash.m4 index 03460e42..2cba48fe 100644 --- a/gnulib-m4/open-slash.m4 +++ b/gnulib-m4/open-slash.m4 @@ -1,9 +1,10 @@ # open-slash.m4 # serial 2 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. dnl Tests whether open() and creat() recognize a trailing slash. dnl Sets gl_cv_func_open_slash. diff --git a/gnulib-m4/open.m4 b/gnulib-m4/open.m4 index 62a11a11..dd3a805f 100644 --- a/gnulib-m4/open.m4 +++ b/gnulib-m4/open.m4 @@ -1,14 +1,18 @@ # open.m4 -# serial 16 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 17 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_OPEN], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([gl_PREPROC_O_CLOEXEC]) + AC_REQUIRE([gl_FCNTL_O_FLAGS]) + AS_CASE([$gl_cv_header_working_fcntl_h], + [*O_DIRECTORY* | *no], [REPLACE_OPEN=1]) case "$host_os" in mingw* | windows* | pw*) REPLACE_OPEN=1 diff --git a/gnulib-m4/openat.m4 b/gnulib-m4/openat.m4 deleted file mode 100644 index e91f58f4..00000000 --- a/gnulib-m4/openat.m4 +++ /dev/null @@ -1,39 +0,0 @@ -# openat.m4 -# serial 46 -dnl Copyright (C) 2004-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 with or without modifications, as long as this notice is preserved. - -# See if we need to use our replacement for Solaris' openat et al functions. - -# Written by Jim Meyering. - -AC_DEFUN([gl_FUNC_OPENAT], -[ - AC_REQUIRE([gl_FCNTL_H_DEFAULTS]) - AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) - AC_CHECK_FUNCS_ONCE([openat]) - AC_REQUIRE([gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK]) - AC_REQUIRE([gl_PREPROC_O_CLOEXEC]) - case $ac_cv_func_openat+$gl_cv_func_lstat_dereferences_slashed_symlink+$gl_cv_macro_O_CLOEXEC in - yes+*yes+yes) - ;; - yes+*) - # Solaris 10 lacks O_CLOEXEC. - # Solaris 9 has *at functions, but uniformly mishandles trailing - # slash in all of them. - REPLACE_OPENAT=1 - ;; - *) - HAVE_OPENAT=0 - ;; - esac -]) - -# Prerequisites of lib/openat.c. -AC_DEFUN([gl_PREREQ_OPENAT], -[ - AC_REQUIRE([gl_PROMOTED_TYPE_MODE_T]) - : -]) diff --git a/gnulib-m4/opendir.m4 b/gnulib-m4/opendir.m4 deleted file mode 100644 index d7bea481..00000000 --- a/gnulib-m4/opendir.m4 +++ /dev/null @@ -1,32 +0,0 @@ -# opendir.m4 -# serial 7 -dnl Copyright (C) 2011-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_FUNC_OPENDIR], -[ - AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) - AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles - - AC_CHECK_FUNCS([opendir]) - if test $ac_cv_func_opendir = no; then - HAVE_OPENDIR=0 - else - dnl Replace opendir() on native Windows and OS/2 kLIBC, - dnl to support fdopendir(). - AC_REQUIRE([gl_DIRENT_DIR]) - if test $DIR_HAS_FD_MEMBER = 0; then - REPLACE_OPENDIR=1 - fi - dnl Replace opendir() for supporting the gnulib-defined fchdir() function, - dnl to keep fchdir's bookkeeping up-to-date. - m4_ifdef([gl_FUNC_FCHDIR], [ - gl_TEST_FCHDIR - if test $HAVE_FCHDIR = 0; then - REPLACE_OPENDIR=1 - fi - ]) - fi -]) diff --git a/gnulib-m4/pathmax.m4 b/gnulib-m4/pathmax.m4 index 4280837f..0c3925df 100644 --- a/gnulib-m4/pathmax.m4 +++ b/gnulib-m4/pathmax.m4 @@ -1,10 +1,11 @@ # pathmax.m4 # serial 11 -dnl Copyright (C) 2002-2003, 2005-2006, 2009-2024 Free Software Foundation, +dnl Copyright (C) 2002-2003, 2005-2006, 2009-2025 Free Software Foundation, dnl 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_PATHMAX], [ diff --git a/gnulib-m4/perror.m4 b/gnulib-m4/perror.m4 index 29af054e..62b75d09 100644 --- a/gnulib-m4/perror.m4 +++ b/gnulib-m4/perror.m4 @@ -1,9 +1,10 @@ # perror.m4 # serial 13 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_PERROR], [ diff --git a/gnulib-m4/pipe.m4 b/gnulib-m4/pipe.m4 index cf7a0396..a1709842 100644 --- a/gnulib-m4/pipe.m4 +++ b/gnulib-m4/pipe.m4 @@ -1,9 +1,10 @@ # pipe.m4 # serial 2 -dnl Copyright (C) 2010-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2010-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_PIPE], [ diff --git a/gnulib-m4/printf-frexp.m4 b/gnulib-m4/printf-frexp.m4 index db6d1899..3e9737fa 100644 --- a/gnulib-m4/printf-frexp.m4 +++ b/gnulib-m4/printf-frexp.m4 @@ -1,9 +1,10 @@ # printf-frexp.m4 # serial 5 -dnl Copyright (C) 2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl Check how to define printf_frexp() without linking with libm. diff --git a/gnulib-m4/printf-frexpl.m4 b/gnulib-m4/printf-frexpl.m4 index a4f67c4f..e7e23eb7 100644 --- a/gnulib-m4/printf-frexpl.m4 +++ b/gnulib-m4/printf-frexpl.m4 @@ -1,9 +1,10 @@ # printf-frexpl.m4 # serial 10 -dnl Copyright (C) 2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl Check how to define printf_frexpl() without linking with libm. diff --git a/gnulib-m4/printf.m4 b/gnulib-m4/printf.m4 index a6daa1a6..3aadf99c 100644 --- a/gnulib-m4/printf.m4 +++ b/gnulib-m4/printf.m4 @@ -1,9 +1,10 @@ # printf.m4 -# serial 95 -dnl Copyright (C) 2003, 2007-2024 Free Software Foundation, Inc. +# serial 98 +dnl Copyright (C) 2003, 2007-2025 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. +dnl This file is offered as-is, without any warranty. dnl Test whether the *printf family of functions supports the 'j', 'z', 't', dnl 'L' size specifiers. (ISO C99, POSIX:2001) @@ -658,7 +659,7 @@ int main () && strcmp (buf, "0x8.0p-2") != 0)) result |= 16; /* This catches the same Mac OS X 10.3.9 (Darwin 7.9) bug and also a - glibc 2.4 bug <https://sourceware.org/bugzilla/show_bug.cgi?id=2908> + glibc 2.4 bug <https://sourceware.org/PR2908> and a FreeBSD 6.4, NetBSD 10.0 bug. */ if (sprintf (buf, "%.1La", 1.999L) < 0 || (strcmp (buf, "0x1.0p+1") != 0 @@ -993,7 +994,7 @@ int main () int result = 0; char buf[100]; /* Test whether %ls works at all. - This test fails on OpenBSD 4.0, IRIX 6.5, Solaris 2.6, Haiku, but not on + This test fails on OpenBSD 4.0, Solaris 2.6, Haiku, but not on Cygwin 1.5. */ { static const wchar_t wstring[] = { 'a', 'b', 'c', 0 }; @@ -1002,8 +1003,8 @@ int main () || strcmp (buf, "abc") != 0) result |= 1; } - /* This test fails on IRIX 6.5, Solaris 2.6, Cygwin 1.5, Haiku (with an - assertion failure inside libc), but not on OpenBSD 4.0. */ + /* This test fails on Solaris 2.6, Cygwin 1.5, Haiku (with an assertion + failure inside libc), but not on OpenBSD 4.0. */ { static const wchar_t wstring[] = { 'a', 0 }; buf[0] = '\0'; @@ -1036,7 +1037,6 @@ changequote(,)dnl # Guess yes on OpenBSD >= 6.0. openbsd[1-5].*) gl_cv_func_printf_directive_ls="guessing no";; openbsd*) gl_cv_func_printf_directive_ls="guessing yes";; - irix*) gl_cv_func_printf_directive_ls="guessing no";; solaris*) gl_cv_func_printf_directive_ls="guessing no";; cygwin*) gl_cv_func_printf_directive_ls="guessing no";; beos* | haiku*) gl_cv_func_printf_directive_ls="guessing no";; @@ -1185,6 +1185,112 @@ changequote([,])dnl ]) ]) +dnl Test whether the *printf family of functions supports POSIX/XSI format +dnl strings with the ' flag for grouping of decimal digits on integers, +dnl together with a precision. +dnl Result is gl_cv_func_printf_flag_grouping_int_precision. + +AC_DEFUN([gl_PRINTF_FLAG_GROUPING_INT_PRECISION], +[ + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CACHE_CHECK([whether printf supports grouping on integers with a precision], + [gl_cv_func_printf_flag_grouping_int_precision], + [ + dnl Prepare a guess, used when cross-compiling or when specific locales + dnl are not available. + case "$host_os" in + # Guess no on FreeBSD, NetBSD, Solaris, Cygwin, Haiku. + freebsd* | dragonfly* | netbsd* | solaris* | cygwin* | haiku*) + gl_cv_func_printf_flag_grouping_int_precision="guessing no";; + *) + gl_cv_func_printf_flag_grouping_int_precision="guessing yes";; + esac + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include <locale.h> +#include <stdio.h> +#include <string.h> +static char buf[100]; +int main () +{ + if (setlocale (LC_ALL, "fr_FR.UTF-8") != NULL + || setlocale (LC_ALL, "fr_FR") != NULL + || setlocale (LC_ALL, "fr_FR.ISO-8859-1") != NULL + || setlocale (LC_ALL, "fr_FR.ISO8859-1") != NULL) + { + if (sprintf (buf, "%'.10d", 1000) < 0) + return 1; + if (strlen (buf) == 10 && strcmp (buf, "0000001000") != 0) + /* The sprintf implementation has produced fewer than 10 digits. */ + return 2; + else + return 0; + } + return 3; +}]])], + [gl_cv_func_printf_flag_grouping_int_precision=yes], + [if test $? = 2; then + gl_cv_func_printf_flag_grouping_int_precision=no + fi + ], + [:]) + ]) +]) + +dnl Test whether the *printf family of functions supports POSIX/XSI format +dnl strings with the ' flag for grouping of decimal digits, when the thousands +dnl separator is a multibyte character (such as U+00A0 or U+202F in a UTF-8 +dnl locale). +dnl Result is gl_cv_func_printf_flag_grouping_multibyte. + +AC_DEFUN([gl_PRINTF_FLAG_GROUPING_MULTIBYTE], +[ + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CACHE_CHECK([whether printf supports grouping with a multibyte separator], + [gl_cv_func_printf_flag_grouping_multibyte], + [ + dnl Prepare a guess, used when cross-compiling or when specific locales + dnl are not available. + case "$host_os" in + # Guess no on NetBSD and Solaris 11 OpenIndiana. + netbsd* | solaris*) + gl_cv_func_printf_flag_grouping_multibyte="guessing no";; + *) + gl_cv_func_printf_flag_grouping_multibyte="guessing yes";; + esac + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include <locale.h> +#include <stdio.h> +#include <string.h> +static char buf[100]; +int main () +{ + if (setlocale (LC_ALL, "fr_FR.UTF-8") == NULL) + return 0; + if (sprintf (buf, "%'.0f", 1000.0) < 0) + return 1; + if (strlen (localeconv ()->thousands_sep) > 1) + { + if (strlen (buf) <= 4 + 1) + return 2; + else + return 3; + } + return 0; +}]])], + [:], + [case $? in + 2) gl_cv_func_printf_flag_grouping_multibyte=no ;; + 3) gl_cv_func_printf_flag_grouping_multibyte=yes ;; + esac + ], + [:]) + ]) +]) + dnl Test whether the *printf family of functions supports the - flag correctly. dnl (ISO C99.) See dnl <https://lists.gnu.org/r/bug-coreutils/2008-02/msg00035.html> @@ -1482,10 +1588,6 @@ changequote(,)dnl *) gl_cv_func_printf_enomem="guessing no";; esac ;; - # Guess yes on IRIX. - irix*) gl_cv_func_printf_enomem="guessing yes";; - # Guess yes on OSF/1. - osf*) gl_cv_func_printf_enomem="guessing yes";; # Guess yes on BeOS. beos*) gl_cv_func_printf_enomem="guessing yes";; # Guess yes on Haiku. @@ -1577,11 +1679,6 @@ changequote(,)dnl # Guess yes on HP-UX >= 11. hpux[7-9]* | hpux10*) gl_cv_func_snprintf_truncation_c99="guessing no";; hpux*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on OSF/1 >= 5. - osf[3-4]*) gl_cv_func_snprintf_truncation_c99="guessing no";; - osf*) gl_cv_func_snprintf_truncation_c99="guessing yes";; # Guess yes on NetBSD >= 3. netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) gl_cv_func_snprintf_truncation_c99="guessing no";; @@ -1603,7 +1700,7 @@ changequote([,])dnl dnl Test whether the return value of the snprintf function is the number dnl of bytes (excluding the terminating NUL) that would have been produced dnl if the buffer had been large enough. (ISO C99, POSIX:2001) -dnl For example, this test program fails on IRIX 6.5: +dnl For example, this test program fails on HP-UX 11.31 and Solaris 9: dnl --------------------------------------------------------------------- dnl #include <stdio.h> dnl int main() @@ -1792,11 +1889,6 @@ changequote(,)dnl # Guess yes on AIX >= 4. aix[1-3]*) gl_cv_func_snprintf_directive_n="guessing no";; aix*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on OSF/1 >= 5. - osf[3-4]*) gl_cv_func_snprintf_directive_n="guessing no";; - osf*) gl_cv_func_snprintf_directive_n="guessing yes";; # Guess yes on NetBSD >= 3. netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) gl_cv_func_snprintf_directive_n="guessing no";; @@ -1951,8 +2043,6 @@ changequote(,)dnl # Guess yes on AIX >= 4. aix[1-3]*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; aix*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; # Guess yes on NetBSD >= 3. netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; @@ -2160,20 +2250,22 @@ dnl 11 = gl_PRINTF_DIRECTIVE_LS dnl 12 = gl_PRINTF_DIRECTIVE_LC dnl 13 = gl_PRINTF_POSITIONS dnl 14 = gl_PRINTF_FLAG_GROUPING -dnl 15 = gl_PRINTF_FLAG_LEFTADJUST -dnl 16 = gl_PRINTF_FLAG_ZERO -dnl 17 = gl_PRINTF_FLAG_ALT_PRECISION_ZERO -dnl 18 = gl_PRINTF_PRECISION -dnl 19 = gl_PRINTF_ENOMEM -dnl 20 = gl_SNPRINTF_PRESENCE -dnl 21 = gl_SNPRINTF_TRUNCATION_C99 -dnl 22 = gl_SNPRINTF_RETVAL_C99 -dnl 23 = gl_SNPRINTF_DIRECTIVE_N -dnl 24 = gl_SNPRINTF_SIZE1 -dnl 25 = gl_VSNPRINTF_ZEROSIZE_C99 -dnl 26 = gl_SWPRINTF_WORKS -dnl 27 = gl_SWPRINTF_DIRECTIVE_LA -dnl 28 = gl_SWPRINTF_DIRECTIVE_LC +dnl 15 = gl_PRINTF_FLAG_GROUPING_INT_PRECISION +dnl 16 = gl_PRINTF_FLAG_GROUPING_MULTIBYTE +dnl 17 = gl_PRINTF_FLAG_LEFTADJUST +dnl 18 = gl_PRINTF_FLAG_ZERO +dnl 19 = gl_PRINTF_FLAG_ALT_PRECISION_ZERO +dnl 20 = gl_PRINTF_PRECISION +dnl 21 = gl_PRINTF_ENOMEM +dnl 22 = gl_SNPRINTF_PRESENCE +dnl 23 = gl_SNPRINTF_TRUNCATION_C99 +dnl 24 = gl_SNPRINTF_RETVAL_C99 +dnl 25 = gl_SNPRINTF_DIRECTIVE_N +dnl 26 = gl_SNPRINTF_SIZE1 +dnl 27 = gl_VSNPRINTF_ZEROSIZE_C99 +dnl 28 = gl_SWPRINTF_WORKS +dnl 29 = gl_SWPRINTF_DIRECTIVE_LA +dnl 30 = gl_SWPRINTF_DIRECTIVE_LC dnl dnl 1 = checking whether printf supports size specifiers as in C99... dnl 2 = checking whether printf supports size specifiers as in C23... @@ -2189,62 +2281,64 @@ dnl 11 = checking whether printf supports the 'ls' directive... dnl 12 = checking whether printf supports the 'lc' directive correctly... dnl 13 = checking whether printf supports POSIX/XSI format strings with positions... dnl 14 = checking whether printf supports the grouping flag... -dnl 15 = checking whether printf supports the left-adjust flag correctly... -dnl 16 = checking whether printf supports the zero flag correctly... -dnl 17 = checking whether printf supports the alternative flag with a zero precision... -dnl 18 = checking whether printf supports large precisions... -dnl 19 = checking whether printf survives out-of-memory conditions... -dnl 20 = checking for snprintf... -dnl 21 = checking whether snprintf truncates the result as in C99... -dnl 22 = checking whether snprintf returns a byte count as in C99... -dnl 23 = checking whether snprintf fully supports the 'n' directive... -dnl 24 = checking whether snprintf respects a size of 1... -dnl 25 = checking whether vsnprintf respects a zero size as in C99... -dnl 26 = checking whether swprintf works... -dnl 27 = checking whether swprintf supports the 'La' and 'LA' directives... -dnl 28 = checking whether swprintf supports the 'lc' directive... +dnl 15 = checking whether printf supports grouping on integers with a precision... +dnl 16 = checking whether printf supports grouping with a multibyte separator... +dnl 17 = checking whether printf supports the left-adjust flag correctly... +dnl 18 = checking whether printf supports the zero flag correctly... +dnl 19 = checking whether printf supports the alternative flag with a zero precision... +dnl 20 = checking whether printf supports large precisions... +dnl 21 = checking whether printf survives out-of-memory conditions... +dnl 22 = checking for snprintf... +dnl 23 = checking whether snprintf truncates the result as in C99... +dnl 24 = checking whether snprintf returns a byte count as in C99... +dnl 25 = checking whether snprintf fully supports the 'n' directive... +dnl 26 = checking whether snprintf respects a size of 1... +dnl 27 = checking whether vsnprintf respects a zero size as in C99... +dnl 28 = checking whether swprintf works... +dnl 29 = checking whether swprintf supports the 'La' and 'LA' directives... +dnl 30 = checking whether swprintf supports the 'lc' directive... dnl dnl . = yes, # = no. dnl -dnl 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 -dnl musl libc 1.2.3 . # . . . . # # . . . # . . . . ? . . . . . . . . # . # -dnl glibc 2.35 . # . . . . . . . . . . . . . . . . . . . . . . . . . . -dnl glibc 2.5 . # . . . . # # . . . . . . . . . . . . . . . . . . # . -dnl glibc 2.3.6 . # . . . # # # . . . . . . . . . . . . . . . . . . # . -dnl FreeBSD 14.0 . . . . . # . . . . . . . . . . . . # . . . . . . # . # -dnl FreeBSD 13.0 . # . . . # # # . . . . . . . . . . # . . . . . . # . # -dnl FreeBSD 5.4, 6.1 . # . . . # # # . . . . . . . # ? . # . . . . . . # ? ? -dnl Mac OS X 10.13.5 . # . . # # # # . # . . . . . . . . . . . . # . . # ? ? -dnl Mac OS X 10.5.8 . # . . # # # # . . . . . . . # # . . . . . . . . # ? ? -dnl Mac OS X 10.3.9 . # . . . # # # . . . . . . . # # . # . . . . . . # ? ? -dnl OpenBSD 6.0, 6.7 . # . . . # # # . . . . . . . . . . # . . . . . . # . # -dnl OpenBSD 3.9, 4.0 . # . # # # # # # . # . . # . # ? . # . . . . . . # ? ? -dnl Cygwin 1.7.0 (2009) . # . . # . # # . . ? ? . . . . ? . ? . . . . . . ? ? ? -dnl Cygwin 1.5.25 (2008) . # . . # # # # . . # ? . . . . ? . # . . . . . . ? ? ? -dnl Cygwin 1.5.19 (2006) # # . . # # # # # . # ? . # . # ? # # . . . . . . ? ? ? -dnl Solaris 11.4 . # . # # # # # . . # . . . . # . . . . . . . . . . # . -dnl Solaris 11.3 . # . . . # # # . . # . . . . . . . . . . . . . . . # . -dnl Solaris 11.0 . # . # # # # # . . # . . . . # . . . . . . . . . ? ? ? -dnl Solaris 10 . # . # # # # # . . # . . . . # . # . . . . . . . . # . -dnl Solaris 2.6 ... 9 # # . # # # # # # . # . . . . # ? # . . . # . . . ? ? ? -dnl Solaris 2.5.1 # # . # # # # # # . # . . . . # ? . . # # # # # # ? ? ? -dnl AIX 7.1 . # . # # # # # . . . . . . . # . # . . . . . . . # . . -dnl AIX 5.2 . # . # # # # # . . . . . . . # ? . . . . . . . . # ? ? -dnl AIX 4.3.2, 5.1 # # . # # # # # # . . . . . . # ? . . . . # . . . # ? ? -dnl HP-UX 11.31 . # . . . # # # . . . ? . . . # ? . . . . # # . . ? ? ? -dnl HP-UX 11.{00,11,23} # # . . . # # # # . . ? . . . # ? . . . . # # . # ? ? ? -dnl HP-UX 10.20 # # . # . # # # # . ? ? . . # # ? . . . . # # ? # ? ? ? -dnl IRIX 6.5 # # . # # # # # # . # . . . . # ? . . . . # . . . # ? ? -dnl OSF/1 5.1 # # . # # # # # # . . ? . . . # ? . . . . # . . # ? ? ? -dnl OSF/1 4.0d # # . # # # # # # . . ? . . . # ? . . # # # # # # ? ? ? -dnl NetBSD 9.0 . # . . . # # # . . . . . . . . . . . . . . . . . # . # -dnl NetBSD 5.0 . # . . # # # # . . . . . . . # ? . # . . . . . . # ? ? -dnl NetBSD 4.0 . # ? ? ? ? # # ? . ? . . ? ? ? ? ? ? . . . ? ? ? # ? ? -dnl NetBSD 3.0 . # . . . # # # # . ? . # # ? # ? . # . . . . . . # ? ? -dnl Haiku . # . . # # # # # . # ? . . . . ? . ? . . ? . . . . # . -dnl BeOS # # # . # # # # # . ? ? # . ? . ? # ? . . ? . . . ? ? ? -dnl Android 4.3 . # . # # # # # # # # ? . # . # ? . # . . . # . . ? ? ? -dnl old mingw / msvcrt # # # # # # # # # . . ? # # . # ? # ? . # # # . . # ? ? -dnl MSVC 9 # # # # # # # # # # . ? # # . # ? # ? # # # # . . # ? ? -dnl mingw 2009-2011 . # # . # . # # . . . ? # # . . ? . ? . . . . . . # ? ? -dnl mingw-w64 2011 # # # # # # # # # . . ? # # . # ? # ? . # # # . . # ? ? +dnl 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 +dnl musl libc 1.2.3 . # . . . . # # . . . # . . . . . . . . . . . . . . . # . # +dnl glibc 2.35 . # . . . . . . . . . . . . # . . . . . . . . . . . . . . . +dnl glibc 2.5 . # . . . . # # . . . . . . # . . . . . . . . . . . . . # . +dnl glibc 2.3.6 . # . . . # # # . . . . . . . . . . . . . . . . . . . . # . +dnl FreeBSD 14.0 . . . . . # . . . . . . . . # . . . . . # . . . . . . # . # +dnl FreeBSD 13.0 . # . . . # # # . . . . . . # . . . . . # . . . . . . # . # +dnl FreeBSD 5.4, 6.1 . # . . . # # # . . . . . . . . . # ? . # . . . . . . # ? ? +dnl Mac OS X 10.13.5 . # . . # # # # . # . . . . ? ? . . . . . . . . # . . # ? ? +dnl Mac OS X 10.5.8 . # . . # # # # . . . . . . ? ? . # # . . . . . . . . # ? ? +dnl Mac OS X 10.3.9 . # . . . # # # . . . . . . ? ? . # # . # . . . . . . # ? ? +dnl OpenBSD 6.0, 6.7 . # . . . # # # . . . . . . . . . . . . # . . . . . . # . # +dnl OpenBSD 3.9, 4.0 . # . # # # # # # . # . . # ? ? . # ? . # . . . . . . # ? ? +dnl Cygwin 1.7.0 (2009) . # . . # . # # . . ? ? . . ? ? . . ? . ? . . . . . . ? ? ? +dnl Cygwin 1.5.25 (2008) . # . . # # # # . . # ? . . ? ? . . ? . # . . . . . . ? ? ? +dnl Cygwin 1.5.19 (2006) # # . . # # # # # . # ? . # ? ? . # ? # # . . . . . . ? ? ? +dnl Solaris 11.4 . # . # # # # # . . # . . . # # . # . . . . . . . . . . # . +dnl Solaris 11.3 . # . . . # # # . . # . . . ? ? . . . . . . . . . . . . # . +dnl Solaris 11.0 . # . # # # # # . . # . . . ? ? . # . . . . . . . . . ? ? ? +dnl Solaris 10 . # . # # # # # . . # . . . # # . # . # . . . . . . . . # . +dnl Solaris 2.6 ... 9 # # . # # # # # # . # . . . ? ? . # ? # . . . # . . . ? ? ? +dnl Solaris 2.5.1 # # . # # # # # # . # . . . ? ? . # ? . . # # # # # # ? ? ? +dnl AIX 7.1 . # . # # # # # . . . . . . . . . # . # . . . . . . . # . . +dnl AIX 5.2 . # . # # # # # . . . . . . ? ? . # ? . . . . . . . . # ? ? +dnl AIX 4.3.2, 5.1 # # . # # # # # # . . . . . ? ? . # ? . . . . # . . . # ? ? +dnl HP-UX 11.31 . # . . . # # # . . . ? . . ? ? . # ? . . . . # # . . ? ? ? +dnl HP-UX 11.{00,11,23} # # . . . # # # # . . ? . . ? ? . # ? . . . . # # . # ? ? ? +dnl HP-UX 10.20 # # . # . # # # # . ? ? . . ? ? # # ? . . . . # # ? # ? ? ? +dnl IRIX 6.5 # # . # # # # # # . # . . . ? ? . # ? . . . . # . . . # ? ? +dnl OSF/1 5.1 # # . # # # # # # . . ? . . ? ? . # ? . . . . # . . # ? ? ? +dnl OSF/1 4.0d # # . # # # # # # . . ? . . ? ? . # ? . . # # # # # # ? ? ? +dnl NetBSD 9.0 . # . . . # # # . . . . . . # # . . . . . . . . . . . # . # +dnl NetBSD 5.0 . # . . # # # # . . . . . . ? ? . # ? . # . . . . . . # ? ? +dnl NetBSD 4.0 . # ? ? ? ? # # ? . ? . . ? ? ? ? ? ? ? ? . . . ? ? ? # ? ? +dnl NetBSD 3.0 . # . . . # # # # . ? . # # ? ? ? # ? . # . . . . . . # ? ? +dnl Haiku . # . . # # # # # . # ? . . # . . . ? . ? . . ? . . . . # . +dnl BeOS # # # . # # # # # . ? ? # . ? ? ? . ? # ? . . ? . . . ? ? ? +dnl Android 4.3 . # . # # # # # # # # ? . # ? ? . # ? . # . . . # . . ? ? ? +dnl old mingw / msvcrt # # # # # # # # # . . ? # # ? ? . # ? # ? . # # # . . # ? ? +dnl MSVC 9 # # # # # # # # # # . ? # # ? ? . # ? # ? # # # # . . # ? ? +dnl mingw 2009-2011 . # # . # . # # . . . ? # # ? ? . . ? . ? . . . . . . # ? ? +dnl mingw-w64 2011 # # # # # # # # # . . ? # # ? ? . # ? # ? . # # # . . # ? ? diff --git a/gnulib-m4/pselect.m4 b/gnulib-m4/pselect.m4 index 23d1fadd..06df1b9a 100644 --- a/gnulib-m4/pselect.m4 +++ b/gnulib-m4/pselect.m4 @@ -1,9 +1,10 @@ # pselect.m4 # serial 11 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_PSELECT], [ diff --git a/gnulib-m4/pthread-cond.m4 b/gnulib-m4/pthread-cond.m4 index b9bd9a4b..5c78f6ef 100644 --- a/gnulib-m4/pthread-cond.m4 +++ b/gnulib-m4/pthread-cond.m4 @@ -1,9 +1,10 @@ # pthread-cond.m4 # serial 3 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_PTHREAD_COND], [ diff --git a/gnulib-m4/pthread-mutex.m4 b/gnulib-m4/pthread-mutex.m4 index 7a0ea0f2..ae3acf4d 100644 --- a/gnulib-m4/pthread-mutex.m4 +++ b/gnulib-m4/pthread-mutex.m4 @@ -1,9 +1,10 @@ # pthread-mutex.m4 # serial 4 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_PTHREAD_MUTEX], [ diff --git a/gnulib-m4/pthread-once.m4 b/gnulib-m4/pthread-once.m4 index 46b8840e..85549254 100644 --- a/gnulib-m4/pthread-once.m4 +++ b/gnulib-m4/pthread-once.m4 @@ -1,23 +1,27 @@ # pthread-once.m4 -# serial 3 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +# serial 6 +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_PTHREAD_ONCE], [ AC_REQUIRE([gl_PTHREAD_H]) AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([gl_PTHREADLIB]) if { case "$host_os" in mingw* | windows*) true;; *) false;; esac; } \ && test $gl_threads_api = windows; then dnl Choose function names that don't conflict with the mingw-w64 winpthreads dnl library. REPLACE_PTHREAD_ONCE=1 + PTHREAD_ONCE_LIB= else if test $HAVE_PTHREAD_H = 0; then HAVE_PTHREAD_ONCE=0 + PTHREAD_ONCE_LIB= else dnl Work around Cygwin 3.5.3 bug. AC_CACHE_CHECK([whether pthread_once works], @@ -31,6 +35,49 @@ AC_DEFUN([gl_PTHREAD_ONCE], *yes) ;; *) REPLACE_PTHREAD_ONCE=1 ;; esac + dnl Determine whether linking requires $(LIBPMULTITHREAD) or only + dnl $(LIBPTHREAD). + if test -z "$LIBPTHREAD" && test -n "$LIBPMULTITHREAD"; then + AC_CACHE_CHECK([whether pthread_once can be used without linking with libpthread], + [gl_cv_func_pthread_once_no_lib], + [AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include <pthread.h> + static pthread_once_t a_once = PTHREAD_ONCE_INIT; + static int a; + static void a_init (void) { a = 8647; } + ]], + [[if (pthread_once (&a_once, a_init)) return 1; + if (a != 8647) return 2; + return 0; + ]])], + [gl_cv_func_pthread_once_no_lib=yes], + [gl_cv_func_pthread_once_no_lib=no], + [case "$host_os" in + # Guess no on glibc. + *-gnu* | gnu*) + gl_cv_func_pthread_once_no_lib="guessing no" ;; + # Guess no on FreeBSD. + freebsd* | dragonfly* | midnightbsd*) + gl_cv_func_pthread_once_no_lib="guessing no" ;; + # Guess yes otherwise. + *) + gl_cv_func_pthread_once_no_lib="guessing yes" ;; + esac + ]) + ]) + case "$gl_cv_func_pthread_once_no_lib" in + *yes) PTHREAD_ONCE_LIB="$LIBPTHREAD" ;; + *) PTHREAD_ONCE_LIB="$LIBPMULTITHREAD" ;; + esac + dnl Expected result: + dnl PTHREAD_ONCE_LIB is $(LIBPMULTITHREAD) on glibc < 2.34, FreeBSD. + dnl PTHREAD_ONCE_LIB is $(LIBPTHREAD) in particular on + dnl musl libc, macOS, NetBSD, Solaris, Cygwin, Haiku, Android. + else + PTHREAD_ONCE_LIB="$LIBPTHREAD" + fi fi fi + AC_SUBST([PTHREAD_ONCE_LIB]) ]) diff --git a/gnulib-m4/pthread-rwlock.m4 b/gnulib-m4/pthread-rwlock.m4 index 0e203606..877da63f 100644 --- a/gnulib-m4/pthread-rwlock.m4 +++ b/gnulib-m4/pthread-rwlock.m4 @@ -1,9 +1,10 @@ # pthread-rwlock.m4 -# serial 7 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +# serial 9 +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_PTHREAD_RWLOCK], [ @@ -92,8 +93,8 @@ AC_DEFUN([gl_PTHREAD_RWLOCK], [Define if all pthread_rwlock* functions don't exist.]) else dnl On Mac OS X 10.5, FreeBSD 5.2.1, OpenBSD 3.8, AIX 5.1, HP-UX 11, - dnl IRIX 6.5, Solaris 9, Cygwin, the pthread_rwlock_timed*lock functions - dnl don't exist, although the other pthread_rwlock* functions exist. + dnl Solaris 9, Cygwin, the pthread_rwlock_timed*lock functions don't + dnl exist, although the other pthread_rwlock* functions exist. AC_CHECK_DECL([pthread_rwlock_timedrdlock], , [HAVE_PTHREAD_RWLOCK_TIMEDRDLOCK=0 HAVE_PTHREAD_RWLOCK_TIMEDWRLOCK=0 @@ -266,7 +267,7 @@ do_test (const char *rw_string) err = pthread_create (&threads[i], NULL, rw_string[i] == 'R' ? reader_func : rw_string[i] == 'W' ? writer_func : - (abort (), NULL), + (abort (), (void * (*) (void *)) NULL), &locals[i]); if (err) { diff --git a/gnulib-m4/pthread-spin.m4 b/gnulib-m4/pthread-spin.m4 index 67a50fa4..aae2fb3b 100644 --- a/gnulib-m4/pthread-spin.m4 +++ b/gnulib-m4/pthread-spin.m4 @@ -1,9 +1,10 @@ # pthread-spin.m4 # serial 8 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_PTHREAD_SPIN], [ diff --git a/gnulib-m4/pthread-thread.m4 b/gnulib-m4/pthread-thread.m4 index 83cd7795..ba430e5f 100644 --- a/gnulib-m4/pthread-thread.m4 +++ b/gnulib-m4/pthread-thread.m4 @@ -1,9 +1,10 @@ # pthread-thread.m4 # serial 3 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_PTHREAD_THREAD], [ diff --git a/gnulib-m4/pthread_h.m4 b/gnulib-m4/pthread_h.m4 index 42001213..bb921386 100644 --- a/gnulib-m4/pthread_h.m4 +++ b/gnulib-m4/pthread_h.m4 @@ -1,9 +1,10 @@ # pthread_h.m4 # serial 11 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_PTHREAD_H_PART1], [ diff --git a/gnulib-m4/pthread_mutex_timedlock.m4 b/gnulib-m4/pthread_mutex_timedlock.m4 index 9b175d54..9cb25e87 100644 --- a/gnulib-m4/pthread_mutex_timedlock.m4 +++ b/gnulib-m4/pthread_mutex_timedlock.m4 @@ -1,9 +1,10 @@ # pthread_mutex_timedlock.m4 # serial 6 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_PTHREAD_MUTEX_TIMEDLOCK], [ diff --git a/gnulib-m4/pthread_rwlock_rdlock.m4 b/gnulib-m4/pthread_rwlock_rdlock.m4 index b8b5b117..260bc287 100644 --- a/gnulib-m4/pthread_rwlock_rdlock.m4 +++ b/gnulib-m4/pthread_rwlock_rdlock.m4 @@ -1,9 +1,10 @@ # pthread_rwlock_rdlock.m4 # serial 8 -dnl Copyright (C) 2017-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2017-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. dnl Inspired by @@ -31,7 +32,7 @@ dnl https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_rwlock_rd dnl but this test verifies the guarantee regardless of TPS and regardless of dnl scheduling policy. dnl Glibc does not provide this guarantee (and never will on Linux), see -dnl https://sourceware.org/bugzilla/show_bug.cgi?id=13701 +dnl https://sourceware.org/PR13701 dnl https://bugzilla.redhat.com/show_bug.cgi?id=1410052 AC_DEFUN([gl_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER], [ diff --git a/gnulib-m4/pthread_sigmask.m4 b/gnulib-m4/pthread_sigmask.m4 index 437869f6..77991d4f 100644 --- a/gnulib-m4/pthread_sigmask.m4 +++ b/gnulib-m4/pthread_sigmask.m4 @@ -1,9 +1,10 @@ # pthread_sigmask.m4 -# serial 23 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +# serial 24 +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_PTHREAD_SIGMASK], [ @@ -96,7 +97,7 @@ AC_DEFUN([gl_FUNC_PTHREAD_SIGMASK], HAVE_PTHREAD_SIGMASK=0 dnl Define the symbol rpl_pthread_sigmask, not pthread_sigmask, dnl so as to not accidentally override the system's pthread_sigmask - dnl symbol from libpthread. This is necessary on IRIX 6.5. + dnl symbol from libpthread. REPLACE_PTHREAD_SIGMASK=1 fi ]) @@ -198,76 +199,6 @@ int main () [Define to 1 if pthread_sigmask(), when it fails, returns -1 and sets errno.]) ;; esac - - dnl On IRIX 6.5, in a single-threaded program, pending signals are not - dnl immediately delivered when they are unblocked through pthread_sigmask, - dnl only a little while later. - AC_CACHE_CHECK([whether pthread_sigmask unblocks signals correctly], - [gl_cv_func_pthread_sigmask_unblock_works], - [ - case "$host_os" in - irix*) - gl_cv_func_pthread_sigmask_unblock_works="guessing no";; - *) - gl_cv_func_pthread_sigmask_unblock_works="guessing yes";; - esac - m4_ifdef([gl_][THREADLIB], - [dnl Link against $LIBMULTITHREAD, not only $PTHREAD_SIGMASK_LIB. - dnl Otherwise we get a false positive on those platforms where - dnl $gl_cv_func_pthread_sigmask_in_libc_works is "no". - gl_saved_LIBS=$LIBS - LIBS="$LIBS $LIBMULTITHREAD"]) - AC_RUN_IFELSE( - [AC_LANG_SOURCE([[ -#include <limits.h> -#include <pthread.h> -#include <signal.h> -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> -]GL_MDA_DEFINES[ -static volatile int sigint_occurred; -static void -sigint_handler (int sig) -{ - sigint_occurred++; -} -int main () -{ - sigset_t set; - pid_t pid = getpid (); - char command[80]; - if (LONG_MAX < pid) - return 6; - signal (SIGINT, sigint_handler); - sigemptyset (&set); - sigaddset (&set, SIGINT); - if (!(pthread_sigmask (SIG_BLOCK, &set, NULL) == 0)) - return 1; - sprintf (command, "sh -c 'sleep 1; kill -INT %ld' &", (long) pid); - if (!(system (command) == 0)) - return 2; - sleep (2); - if (!(sigint_occurred == 0)) - return 3; - if (!(pthread_sigmask (SIG_UNBLOCK, &set, NULL) == 0)) - return 4; - if (!(sigint_occurred == 1)) /* This fails on IRIX. */ - return 5; - return 0; -}]])], - [:], - [gl_cv_func_pthread_sigmask_unblock_works=no], - [:]) - m4_ifdef([gl_][THREADLIB], [LIBS=$gl_saved_LIBS]) - ]) - case "$gl_cv_func_pthread_sigmask_unblock_works" in - *no) - REPLACE_PTHREAD_SIGMASK=1 - AC_DEFINE([PTHREAD_SIGMASK_UNBLOCK_BUG], [1], - [Define to 1 if pthread_sigmask() unblocks signals incorrectly.]) - ;; - esac fi ]) diff --git a/gnulib-m4/putenv.m4 b/gnulib-m4/putenv.m4 index 5616fdf5..26caf9fb 100644 --- a/gnulib-m4/putenv.m4 +++ b/gnulib-m4/putenv.m4 @@ -1,9 +1,10 @@ # putenv.m4 # serial 28 -dnl Copyright (C) 2002-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Jim Meyering. dnl diff --git a/gnulib-m4/raise.m4 b/gnulib-m4/raise.m4 index 82bf236d..0add3f2e 100644 --- a/gnulib-m4/raise.m4 +++ b/gnulib-m4/raise.m4 @@ -1,9 +1,10 @@ # raise.m4 # serial 4 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_RAISE], [ diff --git a/gnulib-m4/random.m4 b/gnulib-m4/random.m4 index 92cfcd57..360e56b0 100644 --- a/gnulib-m4/random.m4 +++ b/gnulib-m4/random.m4 @@ -1,9 +1,10 @@ # random.m4 # serial 8 -dnl Copyright (C) 2012-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2012-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_RANDOM], [ diff --git a/gnulib-m4/random_r.m4 b/gnulib-m4/random_r.m4 index b2464fda..e4c36c4c 100644 --- a/gnulib-m4/random_r.m4 +++ b/gnulib-m4/random_r.m4 @@ -1,9 +1,10 @@ # random_r.m4 -# serial 5 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +# serial 6 +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_RANDOM_R], [ @@ -11,9 +12,6 @@ AC_DEFUN([gl_FUNC_RANDOM_R], AC_REQUIRE([AC_CANONICAL_HOST]) AC_CHECK_HEADERS([random.h], [], [], [AC_INCLUDES_DEFAULT]) - if test $ac_cv_header_random_h = no; then - HAVE_RANDOM_H=0 - fi AC_CHECK_TYPES([struct random_data], [], [HAVE_STRUCT_RANDOM_DATA=0], @@ -23,10 +21,10 @@ AC_DEFUN([gl_FUNC_RANDOM_R], #endif ]]) - dnl On AIX and OSF/1, these functions exist, but with different declarations. + dnl On AIX, these functions exist, but with different declarations. dnl Override them all. case "$host_os" in - aix* | osf*) + aix*) REPLACE_RANDOM_R=1 ;; *) diff --git a/gnulib-m4/readdir.m4 b/gnulib-m4/readdir.m4 deleted file mode 100644 index 8634b48d..00000000 --- a/gnulib-m4/readdir.m4 +++ /dev/null @@ -1,23 +0,0 @@ -# readdir.m4 -# serial 3 -dnl Copyright (C) 2011-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_FUNC_READDIR], -[ - AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) - - AC_CHECK_FUNCS([readdir]) - if test $ac_cv_func_readdir = no; then - HAVE_READDIR=0 - else - dnl Replace readdir() on native Windows and OS/2 kLIBC, - dnl to support fdopendir(). - AC_REQUIRE([gl_DIRENT_DIR]) - if test $DIR_HAS_FD_MEMBER = 0; then - REPLACE_READDIR=1 - fi - fi -]) diff --git a/gnulib-m4/realloc.m4 b/gnulib-m4/realloc.m4 index cc911028..0242abdc 100644 --- a/gnulib-m4/realloc.m4 +++ b/gnulib-m4/realloc.m4 @@ -1,59 +1,22 @@ # realloc.m4 -# serial 32 -dnl Copyright (C) 2007, 2009-2024 Free Software Foundation, Inc. +# serial 39 +dnl Copyright (C) 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. -# This is adapted with modifications from upstream Autoconf here: -# https://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/functions.m4?id=v2.70#n1455 -AC_DEFUN([_AC_FUNC_REALLOC_IF], +# An an experimental option, the user can request a sanitized realloc() +# implementation, i.e. one that aborts upon undefined behaviour, +# by setting +# gl_cv_func_realloc_sanitize=yes +# at configure time. +AC_DEFUN([gl_FUNC_REALLOC_SANITIZED], [ - AC_REQUIRE([AC_CANONICAL_HOST])dnl for cross-compiles - AC_CACHE_CHECK([whether realloc (0, 0) returns nonnull], - [ac_cv_func_realloc_0_nonnull], - [AC_RUN_IFELSE( - [AC_LANG_PROGRAM( - [[#include <stdlib.h> - ]], - [[void *p = realloc (0, 0); - void * volatile vp = p; - int result = !vp; - free (p); - return result;]]) - ], - [ac_cv_func_realloc_0_nonnull=yes], - [ac_cv_func_realloc_0_nonnull=no], - [case "$host_os" in - # Guess yes on platforms where we know the result. - *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \ - | gnu* | *-musl* | midipix* | midnightbsd* \ - | hpux* | solaris* | cygwin* | mingw* | windows* | msys* ) - ac_cv_func_realloc_0_nonnull="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) ac_cv_func_realloc_0_nonnull="$gl_cross_guess_normal" ;; - esac - ]) - ]) - AS_CASE([$ac_cv_func_realloc_0_nonnull], [*yes], [$1], [$2]) -])# AC_FUNC_REALLOC - -# gl_FUNC_REALLOC_GNU -# ------------------- -# Replace realloc if it is not compatible with GNU libc. -AC_DEFUN([gl_FUNC_REALLOC_GNU], -[ - AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) - AC_REQUIRE([gl_FUNC_REALLOC_POSIX]) - - dnl Through the dependency on module extensions-aix, _LINUX_SOURCE_COMPAT - dnl gets defined already before this macro gets invoked. This helps - dnl if !(__VEC__ || __AIXVEC), and doesn't hurt otherwise. - - if test $REPLACE_REALLOC_FOR_REALLOC_GNU = 0; then - _AC_FUNC_REALLOC_IF([], [REPLACE_REALLOC_FOR_REALLOC_GNU=1]) - fi -])# gl_FUNC_REALLOC_GNU + AC_CACHE_CHECK([whether realloc should abort upon undefined behaviour], + [gl_cv_func_realloc_sanitize], + [test -n "$gl_cv_func_realloc_sanitize" || gl_cv_func_realloc_sanitize=no]) +]) # gl_FUNC_REALLOC_POSIX # --------------------- @@ -64,7 +27,59 @@ AC_DEFUN([gl_FUNC_REALLOC_POSIX], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MALLOC_POSIX]) - if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then + AC_REQUIRE([gl_FUNC_REALLOC_SANITIZED]) + if test "$gl_cv_func_realloc_sanitize" != no; then REPLACE_REALLOC_FOR_REALLOC_POSIX=1 + AC_DEFINE([NEED_SANITIZED_REALLOC], [1], + [Define to 1 if realloc should abort upon undefined behaviour.]) + else + REPLACE_REALLOC_FOR_REALLOC_POSIX=$REPLACE_MALLOC_FOR_MALLOC_POSIX fi ]) + +# gl_FUNC_REALLOC_0_NONNULL +# ------------------------- +# Replace realloc if realloc (..., 0) returns null. +# Modules that use this macro directly or indirectly should depend +# on extensions-aix, so that _LINUX_SOURCE_COMPAT gets defined +# before this macro gets invoked. This helps if !(__VEC__ || __AIXVEC), +# and doesn't hurt otherwise. +AC_DEFUN([gl_FUNC_REALLOC_0_NONNULL], +[ + AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) + AC_REQUIRE([AC_CANONICAL_HOST])dnl for cross-compiles + AC_REQUIRE([gl_FUNC_REALLOC_POSIX]) + AC_CACHE_CHECK([whether realloc (..., 0) returns nonnull], + [gl_cv_func_realloc_0_nonnull], + [AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include <stdlib.h> + /* Use prealloc to test; "volatile" prevents the compiler + from optimizing the realloc call away. */ + void *(*volatile prealloc) (void *, size_t) = realloc;]], + [[void *p = prealloc (0, 0); + int result = !p; + p = prealloc (p, 0); + result |= !p; + free (p); + return result;]])], + [gl_cv_func_realloc_0_nonnull=yes], + [gl_cv_func_realloc_0_nonnull=no], + [AS_CASE([$host_os], + [# Guess yes on platforms where we know the result. + freebsd* | netbsd* | openbsd* | darwin* | bitrig* \ + | *-musl* | midipix* | midnightbsd* \ + | hpux* | solaris* | cygwin*], + [gl_cv_func_realloc_0_nonnull="guessing yes"], + [# Guess as follows if we don't know. + gl_cv_func_realloc_0_nonnull=$gl_cross_guess_normal])])]) + AS_CASE([$gl_cv_func_realloc_0_nonnull], + [*yes], + [AC_DEFINE([HAVE_REALLOC_0_NONNULL], [1], + [Define to 1 if realloc (..., 0) returns nonnull.])], + [AS_CASE([$gl_cv_func_realloc_sanitize,$gl_cv_malloc_ptrdiff,$gl_cv_func_malloc_posix,$host], + [yes,*,*,* | *,no,*,* | *,*,*no,* | *,*,*,aarch64c-*-freebsd*], + [REPLACE_REALLOC_FOR_REALLOC_POSIX=1], + [# Optimize for common case of glibc 2.1.1+ and compatibles. + REPLACE_REALLOC_FOR_REALLOC_POSIX=2])]) +]) diff --git a/gnulib-m4/reallocarray.m4 b/gnulib-m4/reallocarray.m4 index 958095e1..3970d9e1 100644 --- a/gnulib-m4/reallocarray.m4 +++ b/gnulib-m4/reallocarray.m4 @@ -1,9 +1,10 @@ # reallocarray.m4 -# serial 5 -dnl Copyright (C) 2017-2024 Free Software Foundation, Inc. +# serial 7 +dnl Copyright (C) 2017-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_REALLOCARRAY], [ @@ -12,14 +13,21 @@ AC_DEFUN([gl_FUNC_REALLOCARRAY], AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_CHECK_MALLOC_PTRDIFF]) + AC_REQUIRE([gl_FUNC_REALLOC_0_NONNULL]) gl_CHECK_FUNCS_ANDROID([reallocarray], [[#include <stdlib.h>]]) if test "$ac_cv_func_reallocarray" = no; then HAVE_REALLOCARRAY=0 case "$gl_cv_onwards_func_reallocarray" in future*) REPLACE_REALLOCARRAY=1 ;; esac - elif test "$gl_cv_malloc_ptrdiff" = no; then - REPLACE_REALLOCARRAY=1 + else + if test "$gl_cv_malloc_ptrdiff" = no; then + REPLACE_REALLOCARRAY=1 + fi + case "$gl_cv_func_realloc_0_nonnull" in + *yes) ;; + *) REPLACE_REALLOCARRAY=1 ;; + esac fi ]) diff --git a/gnulib-m4/relocatable-lib.m4 b/gnulib-m4/relocatable-lib.m4 index 7fcf2975..5efed521 100644 --- a/gnulib-m4/relocatable-lib.m4 +++ b/gnulib-m4/relocatable-lib.m4 @@ -1,9 +1,10 @@ # relocatable-lib.m4 # serial 8 -dnl Copyright (C) 2003, 2005-2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2005-2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. diff --git a/gnulib-m4/rewinddir.m4 b/gnulib-m4/rewinddir.m4 deleted file mode 100644 index c56c31aa..00000000 --- a/gnulib-m4/rewinddir.m4 +++ /dev/null @@ -1,23 +0,0 @@ -# rewinddir.m4 -# serial 3 -dnl Copyright (C) 2011-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_FUNC_REWINDDIR], -[ - AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) - - AC_CHECK_FUNCS([rewinddir]) - if test $ac_cv_func_rewinddir = no; then - HAVE_REWINDDIR=0 - else - dnl Replace rewinddir() on native Windows and OS/2 kLIBC, - dnl to support fdopendir(). - AC_REQUIRE([gl_DIRENT_DIR]) - if test $DIR_HAS_FD_MEMBER = 0; then - REPLACE_REWINDDIR=1 - fi - fi -]) diff --git a/gnulib-m4/save-cwd.m4 b/gnulib-m4/save-cwd.m4 deleted file mode 100644 index bb54a0eb..00000000 --- a/gnulib-m4/save-cwd.m4 +++ /dev/null @@ -1,12 +0,0 @@ -# save-cwd.m4 -# serial 10 -dnl Copyright (C) 2002-2006, 2009-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 with or without modifications, as long as this notice is preserved. - -dnl Prerequisites for lib/save-cwd.c. -AC_DEFUN([gl_SAVE_CWD], -[ - AC_CHECK_FUNCS_ONCE([fchdir]) -]) diff --git a/gnulib-m4/sched_h.m4 b/gnulib-m4/sched_h.m4 index 61c202ef..1ffd465f 100644 --- a/gnulib-m4/sched_h.m4 +++ b/gnulib-m4/sched_h.m4 @@ -1,9 +1,10 @@ # sched_h.m4 # serial 16 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl Written by Bruno Haible. diff --git a/gnulib-m4/sched_yield.m4 b/gnulib-m4/sched_yield.m4 index 68b561b5..2aaaf1cc 100644 --- a/gnulib-m4/sched_yield.m4 +++ b/gnulib-m4/sched_yield.m4 @@ -1,9 +1,10 @@ # sched_yield.m4 # serial 3 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_SCHED_YIELD], [ diff --git a/gnulib-m4/select.m4 b/gnulib-m4/select.m4 index fcc718ff..88909788 100644 --- a/gnulib-m4/select.m4 +++ b/gnulib-m4/select.m4 @@ -1,9 +1,10 @@ # select.m4 # serial 16 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_SELECT], [ diff --git a/gnulib-m4/semaphore.m4 b/gnulib-m4/semaphore.m4 index 2feb905e..a5d278f6 100644 --- a/gnulib-m4/semaphore.m4 +++ b/gnulib-m4/semaphore.m4 @@ -1,9 +1,10 @@ # semaphore.m4 -# serial 2 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +# serial 4 +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. # Sets LIB_SEMAPHORE to the library needed, in addition to $(LIBMULTITHREAD), # for getting the <semaphore.h> functions. @@ -12,10 +13,10 @@ AC_DEFUN([gl_SEMAPHORE], [ AC_REQUIRE([gl_THREADLIB]) dnl sem_post is - dnl - in libc on macOS, FreeBSD, AIX, IRIX, Solaris 11, Haiku, Cygwin, + dnl - in libc on macOS, FreeBSD, AIX, Solaris 11, Haiku, Cygwin, dnl - in libpthread on glibc systems, OpenBSD, dnl - in libpthread or librt on NetBSD, - dnl - in librt on HP-UX 11, OSF/1, Solaris 10. + dnl - in librt on HP-UX 11, Solaris 10. dnl On the platforms where -lpthread is needed, it is contained in dnl $LIBMULTITHREAD. Therefore, the only library we need to test for is -lrt. AC_CACHE_CHECK([for library needed for semaphore functions], diff --git a/gnulib-m4/setenv.m4 b/gnulib-m4/setenv.m4 index ae7fcec6..39612750 100644 --- a/gnulib-m4/setenv.m4 +++ b/gnulib-m4/setenv.m4 @@ -1,9 +1,10 @@ # setenv.m4 -# serial 35 -dnl Copyright (C) 2001-2004, 2006-2024 Free Software Foundation, Inc. +# serial 36 +dnl Copyright (C) 2001-2004, 2006-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_SETENV], [ @@ -84,8 +85,6 @@ AC_DEFUN([gl_FUNC_UNSETENV], [AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( [[ -#undef _BSD -#define _BSD 1 /* unhide unsetenv declaration in OSF/1 5.1 <stdlib.h> */ #include <stdlib.h> extern #ifdef __cplusplus diff --git a/gnulib-m4/setlocale.m4 b/gnulib-m4/setlocale.m4 index ef5b288f..16413cec 100644 --- a/gnulib-m4/setlocale.m4 +++ b/gnulib-m4/setlocale.m4 @@ -1,9 +1,10 @@ # setlocale.m4 -# serial 10 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +# serial 11 +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_SETLOCALE], [ @@ -17,6 +18,9 @@ AC_DEFUN([gl_FUNC_SETLOCALE], dnl On native Windows systems, setlocale(category,NULL) does not look at dnl the environment variables LC_ALL, category, and LANG. mingw* | windows*) NEED_SETLOCALE_IMPROVED=1 ;; + dnl On Android, setlocale(category,name) treats all categories as equivalent + dnl to LC_CTYPE. And on Android 4.3, setlocale(category,"C") always fails. + *-android*) NEED_SETLOCALE_IMPROVED=1 ;; dnl On Cygwin 1.5.x, setlocale always succeeds but setlocale(LC_CTYPE,NULL) dnl is then still "C". cygwin*) @@ -24,32 +28,6 @@ AC_DEFUN([gl_FUNC_SETLOCALE], 1.5.*) NEED_SETLOCALE_IMPROVED=1 ;; esac ;; - dnl On Android 4.3, setlocale(category,"C") always fails. - *) - AC_CACHE_CHECK([whether setlocale supports the C locale], - [gl_cv_func_setlocale_works], - [AC_RUN_IFELSE( - [AC_LANG_SOURCE([[ -#include <locale.h> -int main () -{ - return setlocale (LC_ALL, "C") == NULL; -}]])], - [gl_cv_func_setlocale_works=yes], - [gl_cv_func_setlocale_works=no], - [case "$host_os" in - # Guess no on Android. - linux*-android*) gl_cv_func_setlocale_works="guessing no";; - # Guess yes otherwise. - *) gl_cv_func_setlocale_works="guessing yes";; - esac - ]) - ]) - case "$gl_cv_func_setlocale_works" in - *yes) ;; - *) NEED_SETLOCALE_IMPROVED=1 ;; - esac - ;; esac AC_DEFINE_UNQUOTED([NEED_SETLOCALE_IMPROVED], [$NEED_SETLOCALE_IMPROVED], [Define to 1 to enable general improvements of setlocale.]) diff --git a/gnulib-m4/setlocale_null.m4 b/gnulib-m4/setlocale_null.m4 index e5b7d28b..bf2cf589 100644 --- a/gnulib-m4/setlocale_null.m4 +++ b/gnulib-m4/setlocale_null.m4 @@ -1,11 +1,12 @@ # setlocale_null.m4 -# serial 9 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +# serial 11 +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. -AC_DEFUN([gl_FUNC_SETLOCALE_NULL], +AC_DEFUN_ONCE([gl_FUNC_SETLOCALE_NULL], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([gl_PTHREADLIB]) @@ -31,8 +32,8 @@ AC_DEFUN([gl_FUNC_SETLOCALE_NULL], [gl_cv_func_setlocale_null_all_mtsafe=yes], [gl_cv_func_setlocale_null_all_mtsafe=no]) ;; - # Guess yes on glibc, HP-UX, IRIX, Solaris, native Windows. - *-gnu* | gnu* | hpux* | irix* | solaris* | mingw* | windows*) + # Guess yes on glibc, HP-UX, Solaris, native Windows. + *-gnu* | gnu* | hpux* | solaris* | mingw* | windows*) gl_cv_func_setlocale_null_all_mtsafe=yes ;; # If we don't know, obey --enable-cross-guesses. *) @@ -62,8 +63,8 @@ AC_DEFUN([gl_FUNC_SETLOCALE_NULL], # Guess no on OpenBSD, AIX. openbsd* | aix*) gl_cv_func_setlocale_null_one_mtsafe=no ;; - # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, IRIX, Solaris, Haiku, Cygwin, native Windows. - *-gnu* | gnu* | *-musl* | midipix* | darwin* | freebsd* | midnightbsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw* | windows*) + # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, Solaris, Haiku, Cygwin, native Windows. + *-gnu* | gnu* | *-musl* | midipix* | darwin* | freebsd* | midnightbsd* | netbsd* | hpux* | solaris* | haiku* | cygwin* | mingw* | windows*) gl_cv_func_setlocale_null_one_mtsafe=yes ;; # If we don't know, obey --enable-cross-guesses. *) diff --git a/gnulib-m4/signal_h.m4 b/gnulib-m4/signal_h.m4 index 7a7d2b3c..10343bbf 100644 --- a/gnulib-m4/signal_h.m4 +++ b/gnulib-m4/signal_h.m4 @@ -1,9 +1,10 @@ # signal_h.m4 # serial 23 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_SIGNAL_H], [ diff --git a/gnulib-m4/signalblocking.m4 b/gnulib-m4/signalblocking.m4 index fa0a0d1c..23dad848 100644 --- a/gnulib-m4/signalblocking.m4 +++ b/gnulib-m4/signalblocking.m4 @@ -1,9 +1,10 @@ # signalblocking.m4 # serial 17 -dnl Copyright (C) 2001-2002, 2006-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2002, 2006-2025 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. +dnl This file is offered as-is, without any warranty. # Determine available signal blocking primitives. Three different APIs exist: # 1) POSIX: sigemptyset, sigaddset, sigprocmask diff --git a/gnulib-m4/signbit.m4 b/gnulib-m4/signbit.m4 index e44eaa0f..4cb1ac4b 100644 --- a/gnulib-m4/signbit.m4 +++ b/gnulib-m4/signbit.m4 @@ -1,9 +1,10 @@ # signbit.m4 -# serial 22 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 23 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_SIGNBIT], [ @@ -198,7 +199,7 @@ double m0d = -p0d; But that expression does not work on other platforms, such as when cross-compiling to PowerPC on Mac OS X 10.5. */ long double p0l = 0.0L; -#if defined __hpux || defined __sgi +#if defined __hpux long double m0l = -LDBL_MIN * LDBL_MIN; #else long double m0l = -p0l; diff --git a/gnulib-m4/size_max.m4 b/gnulib-m4/size_max.m4 index df91cf06..b0460d45 100644 --- a/gnulib-m4/size_max.m4 +++ b/gnulib-m4/size_max.m4 @@ -1,9 +1,10 @@ # size_max.m4 # serial 12 -dnl Copyright (C) 2003, 2005-2006, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2005-2006, 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. diff --git a/gnulib-m4/sleep.m4 b/gnulib-m4/sleep.m4 index ec8764bd..c5da022d 100644 --- a/gnulib-m4/sleep.m4 +++ b/gnulib-m4/sleep.m4 @@ -1,9 +1,10 @@ # sleep.m4 # serial 14 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_SLEEP], [ diff --git a/gnulib-m4/snan.m4 b/gnulib-m4/snan.m4 index f99f43c0..7fa869c9 100644 --- a/gnulib-m4/snan.m4 +++ b/gnulib-m4/snan.m4 @@ -1,9 +1,10 @@ # snan.m4 # serial 3 -dnl Copyright (C) 2023-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2023-2025 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. +dnl This file is offered as-is, without any warranty. # Prerequisites for lib/snan.h. AC_DEFUN_ONCE([gl_SNAN], diff --git a/gnulib-m4/socketlib.m4 b/gnulib-m4/socketlib.m4 index 09f01161..e3509f81 100644 --- a/gnulib-m4/socketlib.m4 +++ b/gnulib-m4/socketlib.m4 @@ -1,9 +1,10 @@ # socketlib.m4 # serial 4 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl gl_SOCKETLIB dnl Determines the library to use for socket functions. diff --git a/gnulib-m4/sockets.m4 b/gnulib-m4/sockets.m4 index a3dfe92f..54f4dc79 100644 --- a/gnulib-m4/sockets.m4 +++ b/gnulib-m4/sockets.m4 @@ -1,9 +1,10 @@ # sockets.m4 # serial 7 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_SOCKETS], [ diff --git a/gnulib-m4/socklen.m4 b/gnulib-m4/socklen.m4 index 9ece0abb..a4d49bfd 100644 --- a/gnulib-m4/socklen.m4 +++ b/gnulib-m4/socklen.m4 @@ -1,16 +1,17 @@ # socklen.m4 -# serial 11 -dnl Copyright (C) 2005-2007, 2009-2024 Free Software Foundation, Inc. +# serial 13 +dnl Copyright (C) 2005-2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Albert Chin, Windows fixes from Simon Josefsson. dnl Check for socklen_t: historically on BSD it is an int, and in dnl POSIX 1g it is a type of its own, but some platforms use different dnl types for the argument to getsockopt, getpeername, etc.: -dnl HP-UX 10.20, IRIX 6.5, OSF/1 4.0, Interix 3.5, BeOS. +dnl HP-UX 10.20, Interix 3.5, BeOS. dnl So we have to test to find something that will work. AC_DEFUN([gl_TYPE_SOCKLEN_T], diff --git a/gnulib-m4/sockpfaf.m4 b/gnulib-m4/sockpfaf.m4 index 44ac7fd9..08ce843d 100644 --- a/gnulib-m4/sockpfaf.m4 +++ b/gnulib-m4/sockpfaf.m4 @@ -1,9 +1,10 @@ # sockpfaf.m4 # serial 11 -dnl Copyright (C) 2004, 2006, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2004, 2006, 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl Test for some common socket protocol families (PF_INET, PF_INET6, ...) dnl and some common address families (AF_INET, AF_INET6, ...). diff --git a/gnulib-m4/ssize_t.m4 b/gnulib-m4/ssize_t.m4 index c15f948a..a2ffd6fc 100644 --- a/gnulib-m4/ssize_t.m4 +++ b/gnulib-m4/ssize_t.m4 @@ -1,9 +1,10 @@ # ssize_t.m4 # serial 6 -dnl Copyright (C) 2001-2003, 2006, 2010-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2003, 2006, 2010-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. dnl Define ssize_t if it does not already exist. diff --git a/gnulib-m4/stat-time.m4 b/gnulib-m4/stat-time.m4 index e8ee7d51..4aa24e7f 100644 --- a/gnulib-m4/stat-time.m4 +++ b/gnulib-m4/stat-time.m4 @@ -1,9 +1,11 @@ # stat-time.m4 # serial 1 -dnl Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2025 Free Software +dnl 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. +dnl This file is offered as-is, without any warranty. # Checks for stat-related time functions. diff --git a/gnulib-m4/stat.m4 b/gnulib-m4/stat.m4 index fabd360c..66876305 100644 --- a/gnulib-m4/stat.m4 +++ b/gnulib-m4/stat.m4 @@ -1,9 +1,10 @@ # stat.m4 # serial 21 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_STAT], [ diff --git a/gnulib-m4/stdalign.m4 b/gnulib-m4/stdalign.m4 index 1c29d1e4..d22360e1 100644 --- a/gnulib-m4/stdalign.m4 +++ b/gnulib-m4/stdalign.m4 @@ -1,9 +1,10 @@ # stdalign.m4 -# serial 1 -dnl Copyright 2011-2024 Free Software Foundation, Inc. +# serial 3 +dnl Copyright 2011-2025 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. +dnl This file is offered as-is, without any warranty. # Check for alignas and alignof that conform to C23. @@ -29,7 +30,7 @@ AC_DEFUN([gl_ALIGNASOF], /* Test that alignof yields a result consistent with offsetof. This catches GCC bug 52023 - <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>. */ + <https://gcc.gnu.org/PR52023>. */ #ifdef __cplusplus template <class t> struct alignof_helper { char a; t b; }; # define ao(type) offsetof (alignof_helper<type>, b) @@ -81,10 +82,10 @@ AC_DEFUN([gl_ALIGNASOF], References: ISO C23 (latest free draft - <http://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf>) + <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf>) sections 6.5.3.4, 6.7.5, 7.15. C++11 (latest free draft - <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf>) + <https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf>) section 18.10. */ /* alignof (TYPE), also known as _Alignof (TYPE), yields the alignment @@ -102,12 +103,14 @@ AC_DEFUN([gl_ALIGNASOF], want to be portable to HP-UX 10.20 cc and AIX 3.2.5 xlc. */ /* GCC releases before GCC 4.9 had a bug in _Alignof. See GCC bug 52023 - <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>. - clang versions < 8.0.0 have the same bug. */ + <https://gcc.gnu.org/PR52023>. + clang versions < 8.0.0 have the same bug. + IBM XL C V16.1.0 cc (non-clang) has the same bug. */ # if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \ || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9) \ && !defined __clang__) \ - || (defined __clang__ && __clang_major__ < 8)) + || (defined __clang__ && __clang_major__ < 8) \ + || defined __xlC__) # undef/**/_Alignof # ifdef __cplusplus # if (201103 <= __cplusplus || defined _MSC_VER) @@ -178,7 +181,8 @@ AC_DEFUN([gl_ALIGNASOF], # if ((defined _Alignas \ && !(defined __cplusplus \ && (201103 <= __cplusplus || defined _MSC_VER))) \ - || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__)) + || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__ \ + && !defined __xlC__)) # define alignas _Alignas # endif # endif diff --git a/gnulib-m4/stdckdint_h.m4 b/gnulib-m4/stdckdint_h.m4 new file mode 100644 index 00000000..d269faa5 --- /dev/null +++ b/gnulib-m4/stdckdint_h.m4 @@ -0,0 +1,136 @@ +# stdckdint_h.m4 +# serial 1 +dnl Copyright 2025 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. +dnl This file is offered as-is, without any warranty. + +dnl Written by Collin Funk. + +AC_DEFUN_ONCE([gl_STDCKDINT_H], +[ + gl_CHECK_NEXT_HEADERS([stdckdint.h]) + if test $ac_cv_header_stdckdint_h = yes; then + HAVE_STDCKDINT_H=1 + else + HAVE_STDCKDINT_H=0 + fi + AC_SUBST([HAVE_STDCKDINT_H]) + + if test $HAVE_STDCKDINT_H = 1; then + AC_CACHE_CHECK([whether stdckdint.h can be included in C], + [gl_cv_header_c_stdckdint_h], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include <stdckdint.h> + ]])], + [gl_cv_header_c_stdckdint_h=yes], + [gl_cv_header_c_stdckdint_h=no])]) + if test $gl_cv_header_c_stdckdint_h = yes; then + HAVE_C_STDCKDINT_H=1 + AC_CACHE_CHECK([checking for an ISO C23 compliant stdckdint.h in C], + [gl_cv_header_c_stdckdint_h_works], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include <stdckdint.h> + ]], + [[int r; + int a = 1; + int b = 1; + return !!(ckd_add (&r, a, b) || ckd_sub (&r, a, b) + || ckd_mul (&r, a, b)); + ]])], + [gl_cv_header_c_stdckdint_h_works=yes], + [gl_cv_header_c_stdckdint_h_works=no])]) + if test $gl_cv_header_c_stdckdint_h_works = yes; then + HAVE_WORKING_C_STDCKDINT_H=1 + else + HAVE_WORKING_C_STDCKDINT_H=0 + fi + else + HAVE_C_STDCKDINT_H=0 + HAVE_WORKING_C_STDCKDINT_H=0 + fi + if test "$CXX" != no; then + AC_CACHE_CHECK([whether stdckdint.h can be included in C++], + [gl_cv_header_cxx_stdckdint_h], + [dnl We can't use AC_LANG_PUSH([C++]) and AC_LANG_POP([C++]) here, due to + dnl an autoconf bug <https://savannah.gnu.org/support/?110294>. + cat > conftest.cpp <<\EOF +#include <stdckdint.h> +EOF + gl_command="$CXX $CXXFLAGS $CPPFLAGS -c conftest.cpp" + if AC_TRY_EVAL([gl_command]); then + gl_cv_header_cxx_stdckdint_h=yes + else + gl_cv_header_cxx_stdckdint_h=no + fi + rm -fr conftest* + ]) + if test $gl_cv_header_cxx_stdckdint_h = yes; then + HAVE_CXX_STDCKDINT_H=1 + AC_CACHE_CHECK([checking for an ISO C++26 compliant stdckdint.h in C++], + [gl_cv_header_cxx_stdckdint_h_works], + [dnl We can't use AC_LANG_PUSH([C++]) and AC_LANG_POP([C++]) here, due to + dnl an autoconf bug <https://savannah.gnu.org/support/?110294>. + cat > conftest.cpp <<\EOF +#include <stdckdint.h> +int +main (void) +{ + int r; + int a = 1; + int b = 1; + return !!(ckd_add (&r, a, b) || ckd_sub (&r, a, b) || ckd_mul (&r, a, b)); +} +EOF + gl_command="$CXX $CXXFLAGS $CPPFLAGS -c conftest.cpp" + if AC_TRY_EVAL([gl_command]); then + gl_cv_header_cxx_stdckdint_h_works=yes + else + gl_cv_header_cxx_stdckdint_h_works=no + fi + rm -fr conftest* + ]) + if test $gl_cv_header_cxx_stdckdint_h_works = yes; then + HAVE_WORKING_CXX_STDCKDINT_H=1 + else + HAVE_WORKING_CXX_STDCKDINT_H=0 + fi + else + HAVE_CXX_STDCKDINT_H=0 + HAVE_WORKING_CXX_STDCKDINT_H=0 + fi + fi + else + HAVE_C_STDCKDINT_H=0 + HAVE_WORKING_C_STDCKDINT_H=0 + HAVE_CXX_STDCKDINT_H=0 + HAVE_WORKING_CXX_STDCKDINT_H=0 + fi + AC_SUBST([HAVE_C_STDCKDINT_H]) + AC_SUBST([HAVE_WORKING_C_STDCKDINT_H]) + AC_SUBST([HAVE_CXX_STDCKDINT_H]) + AC_SUBST([HAVE_WORKING_CXX_STDCKDINT_H]) + + if test "$CXX" != no; then + dnl We might need the header for C or C++. + if test $HAVE_C_STDCKDINT_H = 1 \ + && test $HAVE_WORKING_C_STDCKDINT_H = 1 \ + && test $HAVE_CXX_STDCKDINT_H = 1 \ + && test $HAVE_WORKING_CXX_STDCKDINT_H = 1; then + GL_GENERATE_STDCKDINT_H=false + else + GL_GENERATE_STDCKDINT_H=true + fi + else + dnl We don't care about C++ here. + if test $HAVE_C_STDCKDINT_H = 1 \ + && test $HAVE_WORKING_C_STDCKDINT_H = 1; then + GL_GENERATE_STDCKDINT_H=false + else + GL_GENERATE_STDCKDINT_H=true + fi + fi +]) diff --git a/gnulib-m4/stddef_h.m4 b/gnulib-m4/stddef_h.m4 index c7f75b37..d52d5494 100644 --- a/gnulib-m4/stddef_h.m4 +++ b/gnulib-m4/stddef_h.m4 @@ -1,9 +1,10 @@ # stddef_h.m4 -# serial 17 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +# serial 23 +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl A placeholder for <stddef.h>, for platforms that have issues. @@ -63,22 +64,28 @@ AC_DEFUN_ONCE([gl_STDDEF_H], GL_GENERATE_STDDEF_H=true fi - AC_CACHE_CHECK([for unreachable], - [gl_cv_func_unreachable], + AC_CACHE_CHECK([for unreachable in C], + [gl_cv_c_func_unreachable], [AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[#include <stddef.h> ]], [[unreachable (); ]])], - [gl_cv_func_unreachable=yes], - [gl_cv_func_unreachable=no]) + [gl_cv_c_func_unreachable=yes], + [gl_cv_c_func_unreachable=no]) ]) - if test $gl_cv_func_unreachable = no; then + if test $gl_cv_c_func_unreachable = no; then GL_GENERATE_STDDEF_H=true + HAVE_C_UNREACHABLE=0 + else + HAVE_C_UNREACHABLE=1 fi + AC_SUBST([HAVE_C_UNREACHABLE]) + dnl Provide gl_unreachable() unconditionally. + GL_GENERATE_STDDEF_H=true - dnl https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114869 + dnl https://gcc.gnu.org/PR114869 AC_CACHE_CHECK([whether nullptr_t needs <stddef.h>], [gl_cv_nullptr_t_needs_stddef], [AC_COMPILE_IFELSE([AC_LANG_DEFINES_PROVIDED[nullptr_t x;]], @@ -89,24 +96,27 @@ AC_DEFUN_ONCE([gl_STDDEF_H], GL_GENERATE_STDDEF_H=true fi - AC_CACHE_CHECK([for clean definition of __STDC_VERSION_STDDEF_H__], - [gl_cv_clean_version_stddef], - [AC_PREPROC_IFELSE( - [AC_LANG_SOURCE( - [[/* https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114870 */ - #include <stddef.h> - #undef __STDC_VERSION_STDDEF_H__ - #include <time.h> - #ifdef __STDC_VERSION_STDDEF_H__ - # error "<time.h> defines __STDC_VERSION_STDDEF_H__" - #endif - ]])], - [gl_cv_clean_version_stddef=yes], - [gl_cv_clean_version_stddef=no])]) - if test "$gl_cv_clean_version_stddef" = no; then - STDDEF_NOT_IDEMPOTENT=1 - GL_GENERATE_STDDEF_H=true - fi + dnl https://gcc.gnu.org/PR114870 + dnl affects GCC 13.3 and 14.2. + AC_CACHE_CHECK([whether <stddef.h> is idempotent], + [gl_cv_stddef_idempotent], + [AC_COMPILE_IFELSE([AC_LANG_SOURCE( + [[ + #if \ + ((__GNUC__ == 13 && __GNUC_MINOR__ <= 3) \ + || (__GNUC__ == 14 && __GNUC_MINOR__ <= 2)) + #error "bug 114870 is present" + #endif + ]])], + [gl_cv_stddef_idempotent="guessing yes"], + [gl_cv_stddef_idempotent="guessing no"]) + ]) + case "$gl_cv_stddef_idempotent" in + *yes) ;; + *) STDDEF_NOT_IDEMPOTENT=1 + GL_GENERATE_STDDEF_H=true + ;; + esac if $GL_GENERATE_STDDEF_H; then gl_NEXT_HEADERS([stddef.h]) diff --git a/gnulib-m4/stdint.m4 b/gnulib-m4/stdint.m4 index 2dea8469..5a289e6d 100644 --- a/gnulib-m4/stdint.m4 +++ b/gnulib-m4/stdint.m4 @@ -1,9 +1,10 @@ # stdint.m4 -# serial 63 -dnl Copyright (C) 2001-2024 Free Software Foundation, Inc. +# serial 65 +dnl Copyright (C) 2001-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Paul Eggert and Bruno Haible. dnl Test whether <stdint.h> is supported or must be substituted. @@ -157,7 +158,7 @@ uintmax_t j = UINTMAX_MAX; || defined __clang__) int k = _Generic (SIZE_MAX, size_t: 0); #elif (2 <= __GNUC__ || 4 <= __clang_major__ || defined __IBM__TYPEOF__ \ - || (0x5110 <= __SUNPRO_C && !__STDC__)) + || (0x5110 <= __SUNPRO_C && !__STDC__) || 1939 <= _MSC_VER) extern size_t k; extern __typeof__ (SIZE_MAX) k; #endif @@ -390,9 +391,9 @@ AC_DEFUN([gl_STDINT_BITSIZEOF], ]) eval result=\$gl_cv_bitsizeof_${gltype} if test $result = unknown; then - dnl Use a nonempty default, because some compilers, such as IRIX 5 cc, - dnl do a syntax check even on unused #if conditions and give an error - dnl on valid C code like this: + dnl Use a nonempty default, because some old compilers do a syntax check + dnl even on unused #if conditions and give an error on valid C code like + dnl this: dnl #if 0 dnl # if > 32 dnl # endif diff --git a/gnulib-m4/stdint_h.m4 b/gnulib-m4/stdint_h.m4 index 29f42160..d4f1acdd 100644 --- a/gnulib-m4/stdint_h.m4 +++ b/gnulib-m4/stdint_h.m4 @@ -1,9 +1,10 @@ # stdint_h.m4 # serial 9 -dnl Copyright (C) 1997-2004, 2006, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 1997-2004, 2006, 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Paul Eggert. diff --git a/gnulib-m4/stdio_h.m4 b/gnulib-m4/stdio_h.m4 index ec52ae92..71d86180 100644 --- a/gnulib-m4/stdio_h.m4 +++ b/gnulib-m4/stdio_h.m4 @@ -1,9 +1,10 @@ # stdio_h.m4 # serial 75 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_STDIO_H_EARLY], [ diff --git a/gnulib-m4/stdlib_h.m4 b/gnulib-m4/stdlib_h.m4 index 5d9b3017..ab2e8701 100644 --- a/gnulib-m4/stdlib_h.m4 +++ b/gnulib-m4/stdlib_h.m4 @@ -1,9 +1,10 @@ # stdlib_h.m4 -# serial 81 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 85 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_STDLIB_H], [ @@ -40,20 +41,21 @@ AC_DEFUN_ONCE([gl_STDLIB_H], AC_REQUIRE([gt_LOCALE_EN_UTF8]) AC_CACHE_CHECK([whether MB_CUR_MAX is correct], [gl_cv_macro_MB_CUR_MAX_good], - [ - dnl Initial guess, used when cross-compiling or when no suitable locale - dnl is present. -changequote(,)dnl - case "$host_os" in - # 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_EN_UTF8" != none; then - AC_RUN_IFELSE( - [AC_LANG_SOURCE([[ + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[#include <stdlib.h> + ]], + [[return !!MB_CUR_MAX;]]) + ], + [dnl Initial guess, used when cross-compiling or when no suitable locale + dnl is present. + # Guess no on Solaris and Haiku, yes otherwise. + AS_CASE([$host_os], + [solaris* | haiku*], + [gl_cv_macro_MB_CUR_MAX_good="guessing no"], + [gl_cv_macro_MB_CUR_MAX_good="guessing yes"]) + if test "$LOCALE_EN_UTF8" != none; then + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include <locale.h> #include <stdlib.h> int main () @@ -66,15 +68,21 @@ int main () } return result; }]])], - [gl_cv_macro_MB_CUR_MAX_good=yes], - [gl_cv_macro_MB_CUR_MAX_good=no], - [:]) - fi + [gl_cv_macro_MB_CUR_MAX_good=yes], + [gl_cv_macro_MB_CUR_MAX_good=no], + [:]) + fi + ], + [gl_cv_macro_MB_CUR_MAX_good="link failed - so no"]) ]) - case "$gl_cv_macro_MB_CUR_MAX_good" in - *yes) ;; - *) REPLACE_MB_CUR_MAX=1 ;; - esac + AS_CASE([$gl_cv_macro_MB_CUR_MAX_good], + [*yes], + [], + ["link failed - so no"], + [# 4 suffices as a workaround in Android NDK 16, + # the only known platform with the bug. + REPLACE_MB_CUR_MAX=4], + [REPLACE_MB_CUR_MAX="(-1)"]) AC_CHECK_DECLS_ONCE([ecvt]) if test $ac_cv_have_decl_ecvt = no; then @@ -140,7 +148,6 @@ AC_DEFUN([gl_STDLIB_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RANDOM]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RANDOM_R]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALLOCARRAY]) - gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALLOC_GNU]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALLOC_POSIX]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALPATH]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RPMATCH]) @@ -198,7 +205,6 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS], HAVE_PTSNAME_R=1; AC_SUBST([HAVE_PTSNAME_R]) HAVE_QSORT_R=1; AC_SUBST([HAVE_QSORT_R]) HAVE_RANDOM=1; AC_SUBST([HAVE_RANDOM]) - HAVE_RANDOM_H=1; AC_SUBST([HAVE_RANDOM_H]) HAVE_RANDOM_R=1; AC_SUBST([HAVE_RANDOM_R]) HAVE_REALLOCARRAY=1; AC_SUBST([HAVE_REALLOCARRAY]) HAVE_REALPATH=1; AC_SUBST([HAVE_REALPATH]) @@ -247,7 +253,6 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS], REPLACE_RAND=0; AC_SUBST([REPLACE_RAND]) REPLACE_RANDOM=0; AC_SUBST([REPLACE_RANDOM]) REPLACE_RANDOM_R=0; AC_SUBST([REPLACE_RANDOM_R]) - REPLACE_REALLOC_FOR_REALLOC_GNU=0; AC_SUBST([REPLACE_REALLOC_FOR_REALLOC_GNU]) REPLACE_REALLOC_FOR_REALLOC_POSIX=0; AC_SUBST([REPLACE_REALLOC_FOR_REALLOC_POSIX]) REPLACE_REALLOCARRAY=0; AC_SUBST([REPLACE_REALLOCARRAY]) REPLACE_REALPATH=0; AC_SUBST([REPLACE_REALPATH]) diff --git a/gnulib-m4/stpcpy.m4 b/gnulib-m4/stpcpy.m4 index c4d71dd9..0c84d6d6 100644 --- a/gnulib-m4/stpcpy.m4 +++ b/gnulib-m4/stpcpy.m4 @@ -1,9 +1,10 @@ # stpcpy.m4 # serial 11 -dnl Copyright (C) 2002, 2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2002, 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_STPCPY], [ diff --git a/gnulib-m4/strdup.m4 b/gnulib-m4/strdup.m4 deleted file mode 100644 index 14b1de07..00000000 --- a/gnulib-m4/strdup.m4 +++ /dev/null @@ -1,33 +0,0 @@ -# strdup.m4 -# serial 15 - -dnl Copyright (C) 2002-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_FUNC_STRDUP], -[ - AC_REQUIRE([gl_STRING_H_DEFAULTS]) - AC_CHECK_DECLS_ONCE([strdup]) - if test $ac_cv_have_decl_strdup = no; then - HAVE_DECL_STRDUP=0 - fi -]) - -AC_DEFUN([gl_FUNC_STRDUP_POSIX], -[ - AC_REQUIRE([gl_STRING_H_DEFAULTS]) - AC_REQUIRE([gl_CHECK_MALLOC_POSIX]) - if test $gl_cv_func_malloc_posix != yes; then - REPLACE_STRDUP=1 - fi - AC_CHECK_DECLS_ONCE([strdup]) - if test $ac_cv_have_decl_strdup = no; then - HAVE_DECL_STRDUP=0 - fi -]) - -# Prerequisites of lib/strdup.c. -AC_DEFUN([gl_PREREQ_STRDUP], [:]) diff --git a/gnulib-m4/strerror.m4 b/gnulib-m4/strerror.m4 index 0272c6f4..c8b3b207 100644 --- a/gnulib-m4/strerror.m4 +++ b/gnulib-m4/strerror.m4 @@ -1,9 +1,10 @@ # strerror.m4 # serial 25 -dnl Copyright (C) 2002, 2007-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2002, 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_STRERROR], [ diff --git a/gnulib-m4/strerror_r.m4 b/gnulib-m4/strerror_r.m4 index 53539721..4bbb8a0f 100644 --- a/gnulib-m4/strerror_r.m4 +++ b/gnulib-m4/strerror_r.m4 @@ -1,9 +1,10 @@ # strerror_r.m4 -# serial 28 -dnl Copyright (C) 2002, 2007-2024 Free Software Foundation, Inc. +# serial 29 +dnl Copyright (C) 2002, 2007-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_STRERROR_R], [ @@ -63,7 +64,7 @@ AC_DEFUN([gl_FUNC_STRERROR_R_WORKS], if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" = false:0; then dnl The POSIX prototype is: int strerror_r (int, char *, size_t); dnl glibc, Cygwin: char *strerror_r (int, char *, size_t); - dnl AIX 5.1, OSF/1 5.1: int strerror_r (int, char *, int); + dnl AIX 5.1: int strerror_r (int, char *, int); AC_CACHE_CHECK([for strerror_r with POSIX signature], [gl_cv_func_strerror_r_posix_signature], [AC_COMPILE_IFELSE( diff --git a/gnulib-m4/string_h.m4 b/gnulib-m4/string_h.m4 index f31264ae..b5324e3a 100644 --- a/gnulib-m4/string_h.m4 +++ b/gnulib-m4/string_h.m4 @@ -1,9 +1,10 @@ # string_h.m4 -# serial 39 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 45 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. # Configure a GNU-like replacement for <string.h>. @@ -24,7 +25,8 @@ AC_DEFUN_ONCE([gl_STRING_H], [explicit_bzero ffsl ffsll memmem mempcpy memrchr memset_explicit rawmemchr stpcpy stpncpy strchrnul strdup strncat strndup strnlen strpbrk strsep strcasestr strtok_r - strerror_r strerrorname_np sigabbrev_np sigdescr_np strsignal strverscmp]) + strerror_l strerror_r strerrorname_np + sigabbrev_np sigdescr_np strsignal strverscmp]) AC_REQUIRE([AC_C_RESTRICT]) ]) @@ -61,6 +63,7 @@ AC_DEFUN([gl_STRING_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STPNCPY]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRCHRNUL]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRDUP]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRINGEQ]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRNCAT]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRNDUP]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRNLEN]) @@ -69,6 +72,8 @@ AC_DEFUN([gl_STRING_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRSTR]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRCASESTR]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOK_R]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STR_STARTSWITH]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STR_ENDSWITH]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSLEN]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSNLEN]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSCHR]) @@ -83,8 +88,11 @@ AC_DEFUN([gl_STRING_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSSPN]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSSEP]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSTOK_R]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBS_STARTSWITH]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBS_ENDSWITH]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRERROR]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRERROR_R]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRERROR_L]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRERRORNAME_NP]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SIGABBREV_NP]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SIGDESCR_NP]) @@ -107,6 +115,7 @@ AC_DEFUN([gl_STRING_H_DEFAULTS], HAVE_EXPLICIT_BZERO=1; AC_SUBST([HAVE_EXPLICIT_BZERO]) HAVE_FFSL=1; AC_SUBST([HAVE_FFSL]) HAVE_FFSLL=1; AC_SUBST([HAVE_FFSLL]) + HAVE_DECL_MEMEQ=0; AC_SUBST([HAVE_DECL_MEMEQ]) HAVE_DECL_MEMMEM=1; AC_SUBST([HAVE_DECL_MEMMEM]) HAVE_MEMPCPY=1; AC_SUBST([HAVE_MEMPCPY]) HAVE_MEMSET_EXPLICIT=1; AC_SUBST([HAVE_MEMSET_EXPLICIT]) @@ -116,6 +125,7 @@ AC_DEFUN([gl_STRING_H_DEFAULTS], HAVE_STPNCPY=1; AC_SUBST([HAVE_STPNCPY]) HAVE_STRCHRNUL=1; AC_SUBST([HAVE_STRCHRNUL]) HAVE_DECL_STRDUP=1; AC_SUBST([HAVE_DECL_STRDUP]) + HAVE_DECL_STREQ=0; AC_SUBST([HAVE_DECL_STREQ]) HAVE_DECL_STRNDUP=1; AC_SUBST([HAVE_DECL_STRNDUP]) HAVE_DECL_STRNLEN=1; AC_SUBST([HAVE_DECL_STRNLEN]) HAVE_STRPBRK=1; AC_SUBST([HAVE_STRPBRK]) @@ -123,6 +133,7 @@ AC_DEFUN([gl_STRING_H_DEFAULTS], HAVE_STRCASESTR=1; AC_SUBST([HAVE_STRCASESTR]) HAVE_DECL_STRTOK_R=1; AC_SUBST([HAVE_DECL_STRTOK_R]) HAVE_DECL_STRERROR_R=1; AC_SUBST([HAVE_DECL_STRERROR_R]) + HAVE_STRERROR_L=1; AC_SUBST([HAVE_STRERROR_L]) HAVE_STRERRORNAME_NP=1; AC_SUBST([HAVE_STRERRORNAME_NP]) HAVE_SIGABBREV_NP=1; AC_SUBST([HAVE_SIGABBREV_NP]) HAVE_SIGDESCR_NP=1; AC_SUBST([HAVE_SIGDESCR_NP]) @@ -145,6 +156,7 @@ AC_DEFUN([gl_STRING_H_DEFAULTS], REPLACE_STRTOK_R=0; AC_SUBST([REPLACE_STRTOK_R]) REPLACE_STRERROR=0; AC_SUBST([REPLACE_STRERROR]) REPLACE_STRERROR_R=0; AC_SUBST([REPLACE_STRERROR_R]) + REPLACE_STRERROR_L=0; AC_SUBST([REPLACE_STRERROR_L]) REPLACE_STRERRORNAME_NP=0; AC_SUBST([REPLACE_STRERRORNAME_NP]) REPLACE_STRSIGNAL=0; AC_SUBST([REPLACE_STRSIGNAL]) REPLACE_STRVERSCMP=0; AC_SUBST([REPLACE_STRVERSCMP]) diff --git a/gnulib-m4/stringeq.m4 b/gnulib-m4/stringeq.m4 new file mode 100644 index 00000000..de6d66c1 --- /dev/null +++ b/gnulib-m4/stringeq.m4 @@ -0,0 +1,25 @@ +# stringeq.m4 +# serial 1 +dnl Copyright (C) 2025 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. +dnl This file is offered as-is, without any warranty. + +AC_DEFUN([gl_FUNC_STREQ], +[ + AC_REQUIRE([gl_STRING_H_DEFAULTS]) + AC_CHECK_DECLS_ONCE([streq]) + if test $ac_cv_have_decl_streq != no; then + HAVE_DECL_STREQ=1 + fi +]) + +AC_DEFUN([gl_FUNC_MEMEQ], +[ + AC_REQUIRE([gl_STRING_H_DEFAULTS]) + AC_CHECK_DECLS_ONCE([memeq]) + if test $ac_cv_have_decl_memeq != no; then + HAVE_DECL_MEMEQ=1 + fi +]) diff --git a/gnulib-m4/strncat.m4 b/gnulib-m4/strncat.m4 index 9bff2cd2..81a0ce6a 100644 --- a/gnulib-m4/strncat.m4 +++ b/gnulib-m4/strncat.m4 @@ -1,9 +1,10 @@ # strncat.m4 -# serial 9 -dnl Copyright (C) 2002-2004, 2009-2024 Free Software Foundation, Inc. +# serial 10 +dnl Copyright (C) 2002-2004, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_FUNC_STRNCAT], [ @@ -28,31 +29,20 @@ AC_DEFUN_ONCE([gl_FUNC_STRNCAT], # include <unistd.h> # include <sys/types.h> # include <sys/mman.h> -# ifndef MAP_FILE -# define MAP_FILE 0 -# endif #endif ]GL_MDA_DEFINES], [[ char *fence = NULL; #if HAVE_SYS_MMAN_H && HAVE_MPROTECT -# if HAVE_MAP_ANONYMOUS - const int flags = MAP_ANONYMOUS | MAP_PRIVATE; - const int fd = -1; -# else /* !HAVE_MAP_ANONYMOUS */ - const int flags = MAP_FILE | MAP_PRIVATE; - int fd = open ("/dev/zero", O_RDONLY, 0666); - if (fd >= 0) -# endif - { - long int pagesize = sysconf (_SC_PAGESIZE); - char *two_pages = - (char *) mmap (NULL, 2 * pagesize, PROT_READ | PROT_WRITE, - flags, fd, 0); - if (two_pages != (char *)(-1) - && mprotect (two_pages + pagesize, pagesize, PROT_NONE) == 0) - fence = two_pages + pagesize; - } + { + long int pagesize = sysconf (_SC_PAGESIZE); + char *two_pages = + (char *) mmap (NULL, 2 * pagesize, PROT_READ | PROT_WRITE, + MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); + if (two_pages != (char *)(-1) + && mprotect (two_pages + pagesize, pagesize, PROT_NONE) == 0) + fence = two_pages + pagesize; + } #endif if (fence) { diff --git a/gnulib-m4/strstr.m4 b/gnulib-m4/strstr.m4 index d19559aa..1be2721c 100644 --- a/gnulib-m4/strstr.m4 +++ b/gnulib-m4/strstr.m4 @@ -1,9 +1,10 @@ # strstr.m4 # serial 25 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl Check that strstr works. AC_DEFUN([gl_FUNC_STRSTR_SIMPLE], @@ -13,8 +14,8 @@ AC_DEFUN([gl_FUNC_STRSTR_SIMPLE], if test $REPLACE_MEMCHR = 1; then REPLACE_STRSTR=1 else - dnl Detect https://sourceware.org/bugzilla/show_bug.cgi?id=12092 - dnl and https://sourceware.org/bugzilla/show_bug.cgi?id=23637. + dnl Detect https://sourceware.org/PR12092 + dnl and https://sourceware.org/PR23637. AC_CACHE_CHECK([whether strstr works], [gl_cv_func_strstr_works_always], [AC_RUN_IFELSE( diff --git a/gnulib-m4/symlink.m4 b/gnulib-m4/symlink.m4 index 47968a1d..74e46936 100644 --- a/gnulib-m4/symlink.m4 +++ b/gnulib-m4/symlink.m4 @@ -1,9 +1,10 @@ # symlink.m4 # serial 10 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. # See if we need to provide symlink replacement. diff --git a/gnulib-m4/sys_cdefs_h.m4 b/gnulib-m4/sys_cdefs_h.m4 index 22fa6c38..d72796ca 100644 --- a/gnulib-m4/sys_cdefs_h.m4 +++ b/gnulib-m4/sys_cdefs_h.m4 @@ -1,9 +1,10 @@ # sys_cdefs_h.m4 - Is <sys/cdefs.h> compatible enough with glibc? # serial 2 -dnl Copyright 2024 Free Software Foundation, Inc. +dnl Copyright 2024-2025 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. +dnl This file is offered as-is, without any warranty. dnl Written by Paul Eggert. diff --git a/gnulib-m4/sys_ioctl_h.m4 b/gnulib-m4/sys_ioctl_h.m4 index 915dc02f..533ed92e 100644 --- a/gnulib-m4/sys_ioctl_h.m4 +++ b/gnulib-m4/sys_ioctl_h.m4 @@ -1,9 +1,10 @@ # sys_ioctl_h.m4 # serial 15 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. dnl Written by Bruno Haible. diff --git a/gnulib-m4/sys_select_h.m4 b/gnulib-m4/sys_select_h.m4 index 550e066e..f154bc5f 100644 --- a/gnulib-m4/sys_select_h.m4 +++ b/gnulib-m4/sys_select_h.m4 @@ -1,9 +1,10 @@ # sys_select_h.m4 -# serial 23 -dnl Copyright (C) 2006-2024 Free Software Foundation, Inc. +# serial 24 +dnl Copyright (C) 2006-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_SYS_SELECT_H], [ @@ -12,17 +13,14 @@ AC_DEFUN_ONCE([gl_SYS_SELECT_H], AC_CACHE_CHECK([whether <sys/select.h> is self-contained], [gl_cv_header_sys_select_h_selfcontained], [ - dnl Test against two bugs: + dnl Test against a bug: dnl 1. On many platforms, <sys/select.h> assumes prior inclusion of dnl <sys/types.h>. - dnl 2. On OSF/1 4.0, <sys/select.h> provides only a forward declaration - dnl of 'struct timeval', and no definition of this type. - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/select.h>]], - [[struct timeval b;]])], + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/select.h>]], [])], [gl_cv_header_sys_select_h_selfcontained=yes], [gl_cv_header_sys_select_h_selfcontained=no]) dnl Test against another bug: - dnl 3. On Solaris 10, <sys/select.h> provides an FD_ZERO implementation + dnl 2. On Solaris 10, <sys/select.h> provides an FD_ZERO implementation dnl that relies on memset(), but without including <string.h>. if test $gl_cv_header_sys_select_h_selfcontained = yes; then AC_COMPILE_IFELSE( diff --git a/gnulib-m4/sys_socket_h.m4 b/gnulib-m4/sys_socket_h.m4 index 3bf3cb47..da3c6804 100644 --- a/gnulib-m4/sys_socket_h.m4 +++ b/gnulib-m4/sys_socket_h.m4 @@ -1,9 +1,10 @@ # sys_socket_h.m4 -# serial 29 -dnl Copyright (C) 2005-2024 Free Software Foundation, Inc. +# serial 32 +dnl Copyright (C) 2005-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Simon Josefsson. @@ -12,17 +13,6 @@ AC_DEFUN_ONCE([gl_SYS_SOCKET_H], AC_REQUIRE([gl_SYS_SOCKET_H_DEFAULTS]) AC_REQUIRE([AC_CANONICAL_HOST]) - dnl On OSF/1, the functions recv(), send(), recvfrom(), sendto() have - dnl old-style declarations (with return type 'int' instead of 'ssize_t') - dnl unless _POSIX_PII_SOCKET is defined. - case "$host_os" in - osf*) - AC_DEFINE([_POSIX_PII_SOCKET], [1], - [Define to 1 in order to get the POSIX compatible declarations - of socket functions.]) - ;; - esac - GL_GENERATE_SYS_SOCKET_H=false AC_CACHE_CHECK([whether <sys/socket.h> is self-contained], [gl_cv_header_sys_socket_h_selfcontained], @@ -52,24 +42,10 @@ AC_DEFUN_ONCE([gl_SYS_SOCKET_H], fi # We need to check for ws2tcpip.h now. gl_PREREQ_SYS_H_SOCKET - AC_CHECK_TYPES([struct sockaddr_storage, sa_family_t],,,[ - /* sys/types.h is not needed according to POSIX, but the - sys/socket.h in i386-unknown-freebsd4.10 and - powerpc-apple-darwin5.5 required it. */ -#include <sys/types.h> -#ifdef HAVE_SYS_SOCKET_H -#include <sys/socket.h> -#endif -#ifdef HAVE_WS2TCPIP_H -#include <ws2tcpip.h> -#endif -]) + gl_PREREQ_SYS_SA_FAMILY if test $ac_cv_type_struct_sockaddr_storage = no; then HAVE_STRUCT_SOCKADDR_STORAGE=0 fi - if test $ac_cv_type_sa_family_t = no; then - HAVE_SA_FAMILY_T=0 - fi if test $ac_cv_type_struct_sockaddr_storage != no; then AC_CHECK_MEMBERS([struct sockaddr_storage.ss_family], [], @@ -158,6 +134,32 @@ AC_DEFUN([gl_PREREQ_SYS_H_WS2TCPIP], AC_SUBST([HAVE_WS2TCPIP_H]) ]) +# Common prerequisites of the <sys/socket.h> replacement and of the <sys/un.h> +# replacement. +# Sets and substitutes HAVE_SA_FAMILY_T. +AC_DEFUN([gl_PREREQ_SYS_SA_FAMILY], +[ + AC_REQUIRE([gl_CHECK_SOCKET_HEADERS]) + AC_CHECK_TYPES([struct sockaddr_storage, sa_family_t],,,[ + /* sys/types.h is not needed according to POSIX, but the + sys/socket.h in i386-unknown-freebsd4.10 and + powerpc-apple-darwin5.5 required it. */ +#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif +#ifdef HAVE_WS2TCPIP_H +#include <ws2tcpip.h> +#endif +]) + if test $ac_cv_type_sa_family_t = yes; then + HAVE_SA_FAMILY_T=1 + else + HAVE_SA_FAMILY_T=0 + fi + AC_SUBST([HAVE_SA_FAMILY_T]) +]) + # gl_SYS_SOCKET_MODULE_INDICATOR([modulename]) # sets the shell variable that indicates the presence of the given module # to a C preprocessor expression that will evaluate to 1. @@ -202,6 +204,5 @@ AC_DEFUN([gl_SYS_SOCKET_H_DEFAULTS], HAVE_STRUCT_SOCKADDR_STORAGE=1; AC_SUBST([HAVE_STRUCT_SOCKADDR_STORAGE]) HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY=1; AC_SUBST([HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY]) - HAVE_SA_FAMILY_T=1; AC_SUBST([HAVE_SA_FAMILY_T]) HAVE_ACCEPT4=1; AC_SUBST([HAVE_ACCEPT4]) ]) diff --git a/gnulib-m4/sys_stat_h.m4 b/gnulib-m4/sys_stat_h.m4 index 3cc50ce6..10636923 100644 --- a/gnulib-m4/sys_stat_h.m4 +++ b/gnulib-m4/sys_stat_h.m4 @@ -1,9 +1,10 @@ # sys_stat_h.m4 -# serial 42 -*- Autoconf -*- -dnl Copyright (C) 2006-2024 Free Software Foundation, Inc. +# serial 44 -*- Autoconf -*- +dnl Copyright (C) 2006-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Eric Blake. dnl Provide a GNU-like <sys/stat.h>. diff --git a/gnulib-m4/sys_time_h.m4 b/gnulib-m4/sys_time_h.m4 index d3203088..a33b97d8 100644 --- a/gnulib-m4/sys_time_h.m4 +++ b/gnulib-m4/sys_time_h.m4 @@ -1,9 +1,10 @@ # sys_time_h.m4 # serial 12 -dnl Copyright (C) 2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2007, 2009-2025 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. +dnl This file is offered as-is, without any warranty. # Configure a replacement for <sys/time.h>. diff --git a/gnulib-m4/sys_types_h.m4 b/gnulib-m4/sys_types_h.m4 index 7c7f2655..e99fdcc6 100644 --- a/gnulib-m4/sys_types_h.m4 +++ b/gnulib-m4/sys_types_h.m4 @@ -1,9 +1,10 @@ # sys_types_h.m4 -# serial 14 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +# serial 15 +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_SYS_TYPES_H], [ @@ -33,6 +34,14 @@ AC_DEFUN_ONCE([gl_SYS_TYPES_H], WINDOWS_STAT_INODES=0 ]) AC_SUBST([WINDOWS_STAT_INODES]) + + dnl Test whether the 'blksize_t' type is defined. + AC_CHECK_TYPE([blksize_t], [HAVE_BLKSIZE_T=1], [HAVE_BLKSIZE_T=0]) + AC_SUBST([HAVE_BLKSIZE_T]) + + dnl Test whether the 'blkcnt_t' type is defined. + AC_CHECK_TYPE([blkcnt_t], [HAVE_BLKCNT_T=1], [HAVE_BLKCNT_T=0]) + AC_SUBST([HAVE_BLKCNT_T]) ]) # Initializes the default values for AC_SUBSTed shell variables. diff --git a/gnulib-m4/sys_uio_h.m4 b/gnulib-m4/sys_uio_h.m4 index a471c720..eb0e8424 100644 --- a/gnulib-m4/sys_uio_h.m4 +++ b/gnulib-m4/sys_uio_h.m4 @@ -1,9 +1,10 @@ # sys_uio_h.m4 # serial 3 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_SYS_UIO_H], [ diff --git a/gnulib-m4/thread.m4 b/gnulib-m4/thread.m4 index 96f96a7f..d7be2811 100644 --- a/gnulib-m4/thread.m4 +++ b/gnulib-m4/thread.m4 @@ -1,9 +1,10 @@ # thread.m4 # serial 5 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_THREAD], [ diff --git a/gnulib-m4/threadlib.m4 b/gnulib-m4/threadlib.m4 index f5e81479..a93aa5c1 100644 --- a/gnulib-m4/threadlib.m4 +++ b/gnulib-m4/threadlib.m4 @@ -1,9 +1,10 @@ # threadlib.m4 -# serial 42 -dnl Copyright (C) 2005-2024 Free Software Foundation, Inc. +# serial 49 +dnl Copyright (C) 2005-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. @@ -56,24 +57,12 @@ AC_DEFUN([gl_ANYTHREADLIB_EARLY], [ AC_REQUIRE([AC_CANONICAL_HOST]) if test -z "$gl_anythreadlib_early_done"; then - case "$host_os" in - osf*) - # On OSF/1, the compiler needs the flag -D_REENTRANT so that it - # groks <pthread.h>. cc also understands the flag -pthread, but - # we don't use it because 1. gcc-2.95 doesn't understand -pthread, - # 2. putting a flag into CPPFLAGS that has an effect on the linker - # causes the AC_LINK_IFELSE test below to succeed unexpectedly, - # leading to wrong values of LIBTHREAD and LTLIBTHREAD. - CPPFLAGS="$CPPFLAGS -D_REENTRANT" - ;; - esac # Some systems optimize for single-threaded programs by default, and # need special flags to disable these optimizations. For example, the - # definition of 'errno' in <errno.h>. - case "$host_os" in - aix* | freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;; - solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;; - esac + # definition of errno in <errno.h>. + AS_CASE([$host_os], + [aix* | freebsd*], [CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE"], + [hpux* | solaris*], [CPPFLAGS="$CPPFLAGS -D_REENTRANT"]) gl_anythreadlib_early_done=done fi ]) @@ -85,24 +74,26 @@ AC_DEFUN([gl_WEAK_SYMBOLS], AC_REQUIRE([AC_CANONICAL_HOST]) AC_CACHE_CHECK([whether imported symbols can be declared weak], [gl_cv_have_weak], - [case "$host_os" in - cygwin* | mingw* | windows*) + [AS_CASE([$host_os], + [cygwin* | mingw* | windows*], + [ dnl On Cygwin 3.2.0 with gcc 10.2, and likewise on mingw 10.0.0 with dnl gcc 11.3, the test below would succeed, but programs that use dnl pthread_in_use() with weak symbol references crash miserably at dnl runtime. gl_cv_have_weak="guessing no" - ;; - *) + ], + [ gl_cv_have_weak=no dnl First, test whether the compiler accepts it syntactically. AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[extern void xyzzy (); -#pragma weak xyzzy]], +#pragma weak xyzzy + ]], [[xyzzy();]])], [gl_cv_have_weak=maybe]) - if test $gl_cv_have_weak = maybe; then + AS_IF([test $gl_cv_have_weak = maybe], [ dnl Second, test whether it actually works. On Cygwin 1.7.2, with dnl gcc 4.3, symbols declared weak always evaluate to the address 0. AC_RUN_IFELSE( @@ -125,20 +116,19 @@ int main () [gl_cv_have_weak="guessing yes"], [gl_cv_have_weak="guessing no"]) ]) - fi - ;; - esac - dnl But when linking statically, weak symbols don't work. - case " $LDFLAGS " in - *" -static "*) gl_cv_have_weak=no ;; - esac + ]) + ]) + dnl But when linking statically, weak symbols do not work. + AS_CASE([" $LDFLAGS "], + [*" -static "*], [gl_cv_have_weak=no]) dnl Test for a bug in FreeBSD 11: A link error occurs when using a weak dnl symbol and linking against a shared library that has a dependency on dnl the shared library that defines the symbol. - case "$gl_cv_have_weak" in - *yes) - case "$host_os" in - freebsd* | dragonfly* | midnightbsd*) + AS_CASE([$gl_cv_have_weak], + [*yes], + [AS_CASE([$host_os], + [freebsd* | dragonfly* | midnightbsd*], + [ : > conftest1.c $CC $CPPFLAGS $CFLAGS $LDFLAGS -fPIC -shared -o libempty.so conftest1.c -lpthread >&AS_MESSAGE_LOG_FD 2>&1 cat <<EOF > conftest2.c @@ -152,17 +142,15 @@ EOF $CC $CPPFLAGS $CFLAGS $LDFLAGS -o conftest conftest2.c libempty.so >&AS_MESSAGE_LOG_FD 2>&1 \ || gl_cv_have_weak=no rm -f conftest1.c libempty.so conftest2.c conftest - ;; - esac - ;; - esac + ]) + ]) ]) - case "$gl_cv_have_weak" in - *yes) + AS_CASE([$gl_cv_have_weak], + [*yes], + [ AC_DEFINE([HAVE_WEAK_SYMBOLS], [1], [Define to 1 if the compiler and linker support weak declarations of symbols.]) - ;; - esac + ]) ]) dnl ============================================================================ @@ -188,36 +176,30 @@ dnl The guts of gl_PTHREADLIB. Needs to be expanded only once. AC_DEFUN([gl_PTHREADLIB_BODY], [ AC_REQUIRE([gl_ANYTHREADLIB_EARLY]) - if test -z "$gl_pthreadlib_body_done"; then + AS_IF([test -z "$gl_pthreadlib_body_done"], [ gl_pthread_api=no LIBPTHREAD= LIBPMULTITHREAD= - # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that - # it groks <pthread.h>. It's added above, in gl_ANYTHREADLIB_EARLY. AC_CHECK_HEADER([pthread.h], [gl_have_pthread_h=yes], [gl_have_pthread_h=no]) - if test "$gl_have_pthread_h" = yes; then + AS_IF([test "$gl_have_pthread_h" = yes], [ # Other possible tests: # -lpthreads (FSU threads, PCthreads) # -lgthreads - # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist - # in libc. IRIX 6.5 has the first one in both libc and libpthread, but - # the second one only in libpthread, and lock.c needs it. + # Test whether both pthread_mutex_lock exists in libc. # # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04 # needs -pthread for some reason. See: # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html saved_LIBS="$LIBS" - for gl_pthread in '' '-pthread'; do + for gl_pthread in "" "-pthread"; do LIBS="$LIBS $gl_pthread" AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[#include <pthread.h> pthread_mutex_t m; - pthread_mutexattr_t ma; ]], - [[pthread_mutex_lock (&m); - pthread_mutexattr_init (&ma);]])], + [[pthread_mutex_lock (&m);]])], [gl_pthread_api=yes LIBPTHREAD=$gl_pthread LIBPMULTITHREAD=$gl_pthread]) @@ -230,8 +212,9 @@ AC_DEFUN([gl_PTHREADLIB_BODY], gl_pthread_in_glibc=no # On Linux with glibc >= 2.34, libc contains the fully functional # pthread functions. - case "$host_os" in - linux*) + AS_CASE([$host_os], + [linux*], + [ AC_EGREP_CPP([Lucky user], [#include <features.h> #ifdef __GNU_LIBRARY__ @@ -242,19 +225,17 @@ AC_DEFUN([gl_PTHREADLIB_BODY], ], [gl_pthread_in_glibc=yes], []) - ;; - esac + ]) echo "$as_me:__oline__: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&AS_MESSAGE_LOG_FD - # Test for libpthread by looking for pthread_kill. (Not pthread_self, - # since it is defined as a macro on OSF/1.) - if test $gl_pthread_api = yes && test -z "$LIBPTHREAD"; then + # Test for libpthread by looking for pthread_kill. + AS_IF([test $gl_pthread_api = yes && test -z "$LIBPTHREAD"], [ # The program links fine without libpthread. But it may actually # need to link with libpthread in order to create multiple threads. AC_CHECK_LIB([pthread], [pthread_kill], - [if test $gl_pthread_in_glibc = yes; then + [AS_IF([test $gl_pthread_in_glibc = yes], [ LIBPMULTITHREAD= - else + ], [ LIBPMULTITHREAD=-lpthread # On Solaris and HP-UX, most pthread functions exist also in libc. # Therefore pthread_in_use() needs to actually try to create a @@ -262,14 +243,13 @@ AC_DEFUN([gl_PTHREADLIB_BODY], # pthread_create will actually create a thread. # On Solaris 10 or newer, this test is no longer needed, because # libc contains the fully functional pthread functions. - case "$host_os" in -changequote(,)dnl - solaris | solaris2.[1-9] | solaris2.[1-9].* | hpux*) -changequote([,])dnl - AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD], [1], - [Define if the pthread_in_use() detection is hard.]) - esac - fi + AS_CASE([$host_os], + [[solaris | solaris2.[1-9] | solaris2.[1-9].* | hpux*]], + [ + AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD], [1], + [Define if the pthread_in_use() detection is hard.]) + ]) + ]) ], [dnl This is needed on FreeBSD 5.2.1. AC_CHECK_LIB([thr], [pthread_kill], @@ -280,35 +260,36 @@ changequote([,])dnl fi ]) ]) - elif test $gl_pthread_api != yes; then + ], [test $gl_pthread_api != yes], [ # Some library is needed. Try libpthread and libc_r. AC_CHECK_LIB([pthread], [pthread_kill], [gl_pthread_api=yes LIBPTHREAD=-lpthread LIBPMULTITHREAD=-lpthread]) - if test $gl_pthread_api != yes; then + AS_IF([test $gl_pthread_api != yes], [ # For FreeBSD 4. AC_CHECK_LIB([c_r], [pthread_kill], [gl_pthread_api=yes LIBPTHREAD=-lc_r LIBPMULTITHREAD=-lc_r]) - fi - fi + ]) + ]) echo "$as_me:__oline__: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&AS_MESSAGE_LOG_FD - fi + ]) AC_MSG_CHECKING([whether POSIX threads API is available]) AC_MSG_RESULT([$gl_pthread_api]) AC_SUBST([LIBPTHREAD]) AC_SUBST([LIBPMULTITHREAD]) - if test $gl_pthread_api = yes; then + AS_IF([test $gl_pthread_api = yes], [ AC_DEFINE([HAVE_PTHREAD_API], [1], [Define if you have the <pthread.h> header and the POSIX threads API.]) - fi + ]) dnl On some systems, sched_yield is in librt, rather than in libpthread. AC_LINK_IFELSE( [AC_LANG_PROGRAM( - [[#include <sched.h>]], + [[#include <sched.h> + ]], [[sched_yield ();]])], [SCHED_YIELD_LIB= ], @@ -323,7 +304,7 @@ changequote([,])dnl AC_SUBST([LIB_SCHED_YIELD]) gl_pthreadlib_body_done=done - fi + ]) ]) AC_DEFUN([gl_PTHREADLIB], @@ -350,44 +331,45 @@ AC_DEFUN([gl_STDTHREADLIB_BODY], [ AC_REQUIRE([gl_ANYTHREADLIB_EARLY]) AC_REQUIRE([AC_CANONICAL_HOST]) - if test -z "$gl_stdthreadlib_body_done"; then + AS_IF([test -z "$gl_stdthreadlib_body_done"], [ AC_CHECK_HEADERS_ONCE([threads.h]) - case "$host_os" in - mingw* | windows*) + AS_CASE([$host_os], + [mingw* | windows*], + [ LIBSTDTHREAD= - ;; - *) + ], + [ gl_PTHREADLIB_BODY - if test $ac_cv_header_threads_h = yes; then + AS_IF([test $ac_cv_header_threads_h = yes], [ dnl glibc >= 2.29 has thrd_create in libpthread. dnl FreeBSD >= 10 has thrd_create in libstdthreads; this library depends - dnl on libpthread (for the symbol 'pthread_mutexattr_gettype'). + dnl on libpthread (for the symbol pthread_mutexattr_gettype). dnl glibc >= 2.34, AIX >= 7.1, and Solaris >= 11.4 have thrd_create in dnl libc. - gl_CHECK_FUNCS_ANDROID([thrd_create], [[#include <threads.h>]]) - if test $ac_cv_func_thrd_create = yes; then + gl_CHECK_FUNCS_ANDROID([thrd_create], [[#include <threads.h> + ]]) + AS_IF([test $ac_cv_func_thrd_create = yes], [ LIBSTDTHREAD= - else + ], [ AC_CHECK_LIB([stdthreads], [thrd_create], [ - LIBSTDTHREAD='-lstdthreads -lpthread' + LIBSTDTHREAD="-lstdthreads -lpthread" ], [ dnl Guess that thrd_create is in libpthread. LIBSTDTHREAD="$LIBPMULTITHREAD" ]) - fi - else + ]) + ], [ dnl Libraries needed by thrd.c, mtx.c, cnd.c, tss.c. LIBSTDTHREAD="$LIBPMULTITHREAD $SCHED_YIELD_LIB" - fi - ;; - esac + ]) + ]) AC_SUBST([LIBSTDTHREAD]) AC_MSG_CHECKING([whether ISO C threads API is available]) AC_MSG_RESULT([$ac_cv_header_threads_h]) gl_stdthreadlib_body_done=done - fi + ]) ]) AC_DEFUN([gl_STDTHREADLIB], @@ -404,7 +386,7 @@ dnl ------------ dnl Tests for a multithreading library to be used. dnl If the configure.ac contains a definition of the gl_THREADLIB_DEFAULT_NO dnl (it must be placed before the invocation of gl_THREADLIB_EARLY!), then the -dnl default is 'no', otherwise it is system dependent. In both cases, the user +dnl default is "no", otherwise it is system dependent. In both cases, the user dnl can change the choice through the options --enable-threads=choice or dnl --disable-threads. dnl Defines at most one of the macros USE_ISOC_THREADS, USE_POSIX_THREADS, @@ -449,51 +431,46 @@ AC_DEFUN([gl_THREADLIB_EARLY_BODY], m4_ifdef([gl_THREADLIB_DEFAULT_NO], [m4_divert_text([DEFAULTS], [gl_use_threads_default=no])], [m4_divert_text([DEFAULTS], [gl_use_threads_default=])]) - dnl gl_use_winpthreads_default defaults to 'no', because in mingw 10, like + dnl gl_use_winpthreads_default defaults to "no", because in mingw 10, like dnl in mingw 5, the use of libwinpthread still makes test-pthread-tss crash. m4_divert_text([DEFAULTS], [gl_use_winpthreads_default=no]) + dnl Don't display the --disable-threads option + dnl - if the package builds one or more libraries, because libraries must + dnl always be multithread-safe (as far as possible), + dnl - if the package defines gl_THREADLIB_DEFAULT_NO, because the option + dnl would then be a no-op. AC_ARG_ENABLE([threads], -AS_HELP_STRING([[--enable-threads={isoc|posix|isoc+posix|windows}]], [specify multithreading API])m4_ifdef([gl_THREADLIB_DEFAULT_NO], [], [ -AS_HELP_STRING([[--disable-threads]], [build without multithread safety])]), +AS_HELP_STRING([[--enable-threads={isoc|posix|isoc+posix|windows}]], [specify multithreading API])m4_ifdef([LT_INIT], [], [m4_ifdef([gl_THREADLIB_DEFAULT_NO], [], [ +AS_HELP_STRING([[--disable-threads]], [build without multithread safety])])]), [gl_use_threads=$enableval], [if test -n "$gl_use_threads_default"; then gl_use_threads="$gl_use_threads_default" else -changequote(,)dnl - case "$host_os" in - dnl Disable multithreading by default on OSF/1, because it interferes - dnl with fork()/exec(): When msgexec is linked with -lpthread, its - dnl child process gets an endless segmentation fault inside execvp(). - osf*) gl_use_threads=no ;; + AS_CASE([$host_os], dnl Disable multithreading by default on Cygwin 1.5.x, because it has dnl bugs that lead to endless loops or crashes. See dnl <https://cygwin.com/ml/cygwin/2009-08/msg00283.html>. - cygwin*) - case `uname -r` in - 1.[0-5].*) gl_use_threads=no ;; - *) gl_use_threads=yes ;; - esac - ;; + [cygwin*], + [AS_CASE([$(uname -r)], + [[1.[0-5].*]], [gl_use_threads=no], + [gl_use_threads=yes]) + ], dnl Obey gl_AVOID_WINPTHREAD on mingw. - mingw* | windows*) - case "$gl_use_winpthreads_default" in - yes) gl_use_threads=posix ;; - no) gl_use_threads=windows ;; - *) gl_use_threads=yes ;; - esac - ;; - *) gl_use_threads=yes ;; - esac -changequote([,])dnl + [mingw* | windows*], + [AS_CASE([$gl_use_winpthreads_default], + [yes], [gl_use_threads=posix], + [no], [gl_use_threads=windows], + [gl_use_threads=yes]) + ], + [gl_use_threads=yes]) fi ]) - if test "$gl_use_threads" = yes \ - || test "$gl_use_threads" = isoc \ - || test "$gl_use_threads" = posix \ - || test "$gl_use_threads" = isoc+posix; then - # For using <threads.h> or <pthread.h>: - gl_ANYTHREADLIB_EARLY - fi + AS_CASE([$gl_use_threads], + [yes | isoc | posix | isoc+posix], + [ + # For using <threads.h> or <pthread.h>: + gl_ANYTHREADLIB_EARLY + ]) ]) dnl The guts of gl_THREADLIB. Needs to be expanded only once. @@ -506,90 +483,95 @@ AC_DEFUN([gl_THREADLIB_BODY], LTLIBTHREAD= LIBMULTITHREAD= LTLIBMULTITHREAD= - if test "$gl_use_threads" != no; then + AS_IF([test "$gl_use_threads" = no], + [AC_DEFINE([AVOID_ANY_THREADS], [1], + [Define if no multithread safety and no multithreading is desired.])], + [ dnl Check whether the compiler and linker support weak declarations. gl_WEAK_SYMBOLS - if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then - dnl If we use weak symbols to implement pthread_in_use / pth_in_use / - dnl thread_in_use, we also need to test whether the ISO C 11 thrd_create - dnl facility is in use. - AC_CHECK_HEADERS_ONCE([threads.h]) - : - fi - if test "$gl_use_threads" = isoc || test "$gl_use_threads" = isoc+posix; then - AC_CHECK_HEADERS_ONCE([threads.h]) - gl_have_isoc_threads="$ac_cv_header_threads_h" - fi - if test "$gl_use_threads" = yes \ - || test "$gl_use_threads" = posix \ - || test "$gl_use_threads" = isoc+posix; then - gl_PTHREADLIB_BODY - LIBTHREAD=$LIBPTHREAD LTLIBTHREAD=$LIBPTHREAD - LIBMULTITHREAD=$LIBPMULTITHREAD LTLIBMULTITHREAD=$LIBPMULTITHREAD - if test $gl_pthread_api = yes; then - if test "$gl_use_threads" = isoc+posix && test "$gl_have_isoc_threads" = yes; then - gl_threads_api='isoc+posix' - AC_DEFINE([USE_ISOC_AND_POSIX_THREADS], [1], - [Define if the combination of the ISO C and POSIX multithreading APIs can be used.]) - LIBTHREAD= LTLIBTHREAD= - else - gl_threads_api=posix - AC_DEFINE([USE_POSIX_THREADS], [1], - [Define if the POSIX multithreading library can be used.]) - if test -z "$LIBMULTITHREAD" && test -z "$LTLIBMULTITHREAD"; then - AC_DEFINE([USE_POSIX_THREADS_FROM_LIBC], [1], - [Define if references to the POSIX multithreading library are satisfied by libc.]) - else - if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then - AC_DEFINE([USE_POSIX_THREADS_WEAK], [1], - [Define if references to the POSIX multithreading library should be made weak.]) - LIBTHREAD= LTLIBTHREAD= - else - case "$host_os" in - freebsd* | dragonfly* | midnightbsd*) - if test "x$LIBTHREAD" != "x$LIBMULTITHREAD"; then - dnl If weak symbols can't tell whether pthread_create(), pthread_key_create() - dnl etc. will succeed, we need a runtime test. - AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD], [1], - [Define if the pthread_in_use() detection is hard.]) - fi - ;; - esac - fi - fi - fi - fi - fi - if test $gl_threads_api = none; then - if test "$gl_use_threads" = isoc && test "$gl_have_isoc_threads" = yes; then + AS_CASE([$gl_cv_have_weak], + [*yes], + [ + dnl If we use weak symbols to implement pthread_in_use / pth_in_use / + dnl thread_in_use, we also need to test whether the ISO C 11 thrd_create + dnl facility is in use. + AC_CHECK_HEADERS_ONCE([threads.h]) + : + ]) + AS_CASE([$gl_use_threads], + [isoc | isoc+posix], + [ + AC_CHECK_HEADERS_ONCE([threads.h]) + gl_have_isoc_threads="$ac_cv_header_threads_h" + ]) + AS_CASE([$gl_use_threads], + [yes | posix | isoc+posix], + [ + gl_PTHREADLIB_BODY + LIBTHREAD=$LIBPTHREAD LTLIBTHREAD=$LIBPTHREAD + LIBMULTITHREAD=$LIBPMULTITHREAD LTLIBMULTITHREAD=$LIBPMULTITHREAD + AS_IF([test $gl_pthread_api = yes], [ + AS_IF([test "$gl_use_threads" = isoc+posix && + test "$gl_have_isoc_threads" = yes], [ + gl_threads_api="isoc+posix" + AC_DEFINE([USE_ISOC_AND_POSIX_THREADS], [1], + [Define if the combination of the ISO C and POSIX multithreading APIs can be used.]) + LIBTHREAD= LTLIBTHREAD= + ], [ + gl_threads_api=posix + AC_DEFINE([USE_POSIX_THREADS], [1], + [Define if the POSIX multithreading library can be used.]) + AS_IF([test -z "$LIBMULTITHREAD" && test -z "$LTLIBMULTITHREAD"], [ + AC_DEFINE([USE_POSIX_THREADS_FROM_LIBC], [1], + [Define if references to the POSIX multithreading library are satisfied by libc.]) + ], [ + AS_CASE([$gl_cv_have_weak], + [*yes], + [ + AC_DEFINE([USE_POSIX_THREADS_WEAK], [1], + [Define if references to the POSIX multithreading library should be made weak.]) + LIBTHREAD= LTLIBTHREAD= + ], + [AS_CASE([$host_os], + [freebsd* | dragonfly* | midnightbsd*], + [ + AS_IF([test "x$LIBTHREAD" != "x$LIBMULTITHREAD"], [ + dnl If weak symbols cannot tell whether + dnl pthread_create(), dnl pthread_key_create() + dnl etc. will succeed, we need a runtime test. + AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD], [1], + [Define if the pthread_in_use() detection is hard.]) + ]) + ]) + ]) + ]) + ]) + ]) + ]) + AS_IF([test $gl_threads_api = none], [ + AS_IF([test "$gl_use_threads" = isoc && test "$gl_have_isoc_threads" = yes], [ gl_STDTHREADLIB_BODY LIBTHREAD=$LIBSTDTHREAD LTLIBTHREAD=$LIBSTDTHREAD LIBMULTITHREAD=$LIBSTDTHREAD LTLIBMULTITHREAD=$LIBSTDTHREAD gl_threads_api=isoc AC_DEFINE([USE_ISOC_THREADS], [1], [Define if the ISO C multithreading library can be used.]) - fi - fi - if test $gl_threads_api = none; then - case "$gl_use_threads" in - yes | windows | win32) # The 'win32' is for backward compatibility. - if { case "$host_os" in - mingw* | windows*) true;; - *) false;; - esac - }; then - gl_threads_api=windows - AC_DEFINE([USE_WINDOWS_THREADS], [1], - [Define if the native Windows multithreading API can be used.]) - fi - ;; - esac - fi - else - dnl "$gl_use_threads" is "no". - AC_DEFINE([AVOID_ANY_THREADS], [1], - [Define if no multithread safety and no multithreading is desired.]) - fi + ]) + ]) + AS_IF([test $gl_threads_api = none], [ + # The "win32" is for backward compatibility. + AS_CASE([$gl_use_threads], + [yes | windows | win32], + [AS_CASE([$host_os], + [mingw* | windows*], + [ + gl_threads_api=windows + AC_DEFINE([USE_WINDOWS_THREADS], [1], + [Define if the native Windows multithreading API can be used.]) + ]) + ]) + ]) + ]) AC_MSG_CHECKING([for multithread API to use]) AC_MSG_RESULT([$gl_threads_api]) AC_SUBST([LIBTHREAD]) @@ -609,7 +591,7 @@ dnl gl_DISABLE_THREADS dnl ------------------ dnl Sets the gl_THREADLIB default so that threads are not used by default. dnl The user can still override it at installation time, by using the -dnl configure option '--enable-threads'. +dnl configure option "--enable-threads". AC_DEFUN([gl_DISABLE_THREADS], [ m4_divert_text([INIT_PREPARE], [gl_use_threads_default=no]) @@ -621,7 +603,7 @@ dnl ------------------- dnl Sets the gl_THREADLIB default so that on mingw, a dependency to the dnl libwinpthread DLL (mingw-w64 winpthreads library) is avoided. dnl The user can still override it at installation time, by using the -dnl configure option '--enable-threads=posix'. +dnl configure option "--enable-threads=posix". dnl As of 2023, this is now the default. AC_DEFUN([gl_AVOID_WINPTHREAD], [ @@ -667,13 +649,8 @@ dnl dnl HP-UX 11 posix -lpthread N (cc) OK dnl Y (gcc) dnl -dnl IRIX 6.5 posix -lpthread Y 0.5 -dnl dnl AIX 4.3,5.1 posix -lpthread N AIX 4: 0.5; AIX 5: OK dnl -dnl OSF/1 4.0,5.1 posix -pthread (cc) N OK -dnl -lpthread (gcc) Y -dnl dnl Cygwin posix -lpthread Y OK dnl dnl Mingw windows N OK diff --git a/gnulib-m4/time.m4 b/gnulib-m4/time.m4 index dd346419..8c3ec944 100644 --- a/gnulib-m4/time.m4 +++ b/gnulib-m4/time.m4 @@ -1,16 +1,17 @@ # time.m4 # serial 6 -dnl Copyright (C) 2023-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2023-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. AC_DEFUN([gl_FUNC_TIME], [ AC_REQUIRE([AC_CANONICAL_HOST]) - dnl glibc has the bug https://sourceware.org/bugzilla/show_bug.cgi?id=30200 . + dnl glibc has the bug https://sourceware.org/PR30200 . AC_CACHE_CHECK([whether time() works], [gl_cv_func_time_works], [dnl Guess that it works except on diff --git a/gnulib-m4/time_h.m4 b/gnulib-m4/time_h.m4 index 88c76c03..f4d8e20f 100644 --- a/gnulib-m4/time_h.m4 +++ b/gnulib-m4/time_h.m4 @@ -1,9 +1,11 @@ # time_h.m4 # serial 27 -dnl Copyright (C) 2000-2001, 2003-2007, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2000-2001, 2003-2007, 2009-2025 Free Software Foundation, +dnl 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. +dnl This file is offered as-is, without any warranty. # Configure a more-standard replacement for <time.h>. diff --git a/gnulib-m4/uchar_h.m4 b/gnulib-m4/uchar_h.m4 index bb8801b1..b2309385 100644 --- a/gnulib-m4/uchar_h.m4 +++ b/gnulib-m4/uchar_h.m4 @@ -1,9 +1,10 @@ # uchar_h.m4 -# serial 31 -dnl Copyright (C) 2019-2024 Free Software Foundation, Inc. +# serial 32 +dnl Copyright (C) 2019-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. dnl Prepare the overridden <uchar.h>. @@ -20,6 +21,34 @@ AC_DEFUN_ONCE([gl_UCHAR_H], fi AC_SUBST([HAVE_UCHAR_H]) + dnl On macOS 15, in C mode, <uchar.h> does not exist. But in C++ mode, + dnl it exists, and we need to #include_next it, otherwise we get an error + dnl "<cuchar> tried including <uchar.h> but didn't find libc++'s <uchar.h> + dnl header." + m4_ifdef([gl_ANSI_CXX], [AC_REQUIRE([gl_ANSI_CXX])]) + CXX_HAVE_UCHAR_H=0 + if test "$CXX" != no; then + AC_CACHE_CHECK([whether the C++ compiler has <uchar.h>], + [gl_cv_cxx_have_uchar_h], + [dnl We can't use AC_LANG_PUSH([C++]) and AC_LANG_POP([C++]) here, due to + dnl an autoconf bug <https://savannah.gnu.org/support/?110294>. + cat > conftest.cpp <<\EOF +#include <uchar.h> +EOF + gl_command="$CXX $CXXFLAGS $CPPFLAGS -c conftest.cpp" + if AC_TRY_EVAL([gl_command]); then + gl_cv_cxx_have_uchar_h=yes + else + gl_cv_cxx_have_uchar_h=no + fi + rm -fr conftest* + ]) + if test $gl_cv_cxx_have_uchar_h = yes; then + CXX_HAVE_UCHAR_H=1 + fi + fi + AC_SUBST([CXX_HAVE_UCHAR_H]) + gl_TYPE_CHAR8_T gl_TYPE_CHAR16_T gl_TYPE_CHAR32_T @@ -59,7 +88,7 @@ EOF CXX_HAS_CHAR8_TYPE=0 if test $HAVE_UCHAR_H = 0; then if test "$CXX" != no; then - AC_CACHE_CHECK([whether the C++ compiler predefines the char8_t types], + AC_CACHE_CHECK([whether the C++ compiler predefines the char8_t type], [gl_cv_cxx_has_char8_type], [dnl We can't use AC_LANG_PUSH([C++]) and AC_LANG_POP([C++]) here, due to dnl an autoconf bug <https://savannah.gnu.org/support/?110294>. diff --git a/gnulib-m4/unicase_h.m4 b/gnulib-m4/unicase_h.m4 index 20f2d112..bf5d4c2e 100644 --- a/gnulib-m4/unicase_h.m4 +++ b/gnulib-m4/unicase_h.m4 @@ -1,9 +1,10 @@ # unicase_h.m4 # serial 1 -dnl Copyright (C) 2023-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2023-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_UNICASE_H], [ diff --git a/gnulib-m4/unictype_h.m4 b/gnulib-m4/unictype_h.m4 index f36204a8..68ddaf6c 100644 --- a/gnulib-m4/unictype_h.m4 +++ b/gnulib-m4/unictype_h.m4 @@ -1,9 +1,10 @@ # unictype_h.m4 # serial 4 -dnl Copyright (C) 2023-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2023-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_UNICTYPE_H], [ diff --git a/gnulib-m4/unimetadata_h.m4 b/gnulib-m4/unimetadata_h.m4 index dc2c2220..1a98b7c3 100644 --- a/gnulib-m4/unimetadata_h.m4 +++ b/gnulib-m4/unimetadata_h.m4 @@ -1,9 +1,10 @@ # unimetadata_h.m4 # serial 1 -dnl Copyright (C) 2024 Free Software Foundation, Inc. +dnl Copyright (C) 2024-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_UNIMETADATA_H], [ diff --git a/gnulib-m4/uninorm_h.m4 b/gnulib-m4/uninorm_h.m4 index 455a360f..d416f73b 100644 --- a/gnulib-m4/uninorm_h.m4 +++ b/gnulib-m4/uninorm_h.m4 @@ -1,9 +1,10 @@ # uninorm_h.m4 # serial 1 -dnl Copyright (C) 2023-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2023-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN_ONCE([gl_UNINORM_H], [ diff --git a/gnulib-m4/unistd-safer.m4 b/gnulib-m4/unistd-safer.m4 deleted file mode 100644 index 429d44a7..00000000 --- a/gnulib-m4/unistd-safer.m4 +++ /dev/null @@ -1,11 +0,0 @@ -# unistd-safer.m4 -# serial 9 -dnl Copyright (C) 2002, 2005-2006, 2009-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 with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_UNISTD_SAFER], -[ - AC_CHECK_FUNCS_ONCE([pipe]) -]) diff --git a/gnulib-m4/unistd_h.m4 b/gnulib-m4/unistd_h.m4 index 04fa79c9..6ec16286 100644 --- a/gnulib-m4/unistd_h.m4 +++ b/gnulib-m4/unistd_h.m4 @@ -1,9 +1,10 @@ # unistd_h.m4 -# serial 96 -dnl Copyright (C) 2006-2024 Free Software Foundation, Inc. +# serial 97 +dnl Copyright (C) 2006-2025 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. +dnl This file is offered as-is, without any warranty. dnl Written by Simon Josefsson, Bruno Haible. @@ -243,6 +244,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS], REPLACE_GETDOMAINNAME=0; AC_SUBST([REPLACE_GETDOMAINNAME]) REPLACE_GETDTABLESIZE=0; AC_SUBST([REPLACE_GETDTABLESIZE]) REPLACE_GETENTROPY=0; AC_SUBST([REPLACE_GETENTROPY]) + REPLACE_GETLOGIN=0; AC_SUBST([REPLACE_GETLOGIN]) REPLACE_GETLOGIN_R=0; AC_SUBST([REPLACE_GETLOGIN_R]) REPLACE_GETGROUPS=0; AC_SUBST([REPLACE_GETGROUPS]) REPLACE_GETPAGESIZE=0; AC_SUBST([REPLACE_GETPAGESIZE]) diff --git a/gnulib-m4/unitypes_h.m4 b/gnulib-m4/unitypes_h.m4 new file mode 100644 index 00000000..264e61be --- /dev/null +++ b/gnulib-m4/unitypes_h.m4 @@ -0,0 +1,26 @@ +# unitypes_h.m4 +# serial 1 +dnl Copyright (C) 2021-2025 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. +dnl This file is offered as-is, without any warranty. + +AC_DEFUN_ONCE([gl_UNITYPES_H], +[ + AH_VERBATIM([unitypes_restrict], [ +/* This definition is a duplicate of the one in unitypes.h. + It is here so that we can cope with an older version of unitypes.h + that does not contain this definition and that is pre-installed among + the public header files. */ +# if defined __restrict \ + || 2 < __GNUC__ + (95 <= __GNUC_MINOR__) \ + || __clang_major__ >= 3 +# define _UC_RESTRICT __restrict +# elif 199901L <= __STDC_VERSION__ || defined restrict +# define _UC_RESTRICT restrict +# else +# define _UC_RESTRICT +# endif +]) +]) diff --git a/gnulib-m4/usleep.m4 b/gnulib-m4/usleep.m4 index 16272ab5..fc4438c4 100644 --- a/gnulib-m4/usleep.m4 +++ b/gnulib-m4/usleep.m4 @@ -1,9 +1,10 @@ # usleep.m4 # serial 9 -dnl Copyright (C) 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2025 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. +dnl This file is offered as-is, without any warranty. dnl This macro intentionally does not check for select or nanosleep; dnl both of those modules can require external libraries. diff --git a/gnulib-m4/vasnprintf.m4 b/gnulib-m4/vasnprintf.m4 index a02f4e1e..1d040d6e 100644 --- a/gnulib-m4/vasnprintf.m4 +++ b/gnulib-m4/vasnprintf.m4 @@ -1,9 +1,10 @@ # vasnprintf.m4 -# serial 54 -dnl Copyright (C) 2002-2004, 2006-2024 Free Software Foundation, Inc. +# serial 56 +dnl Copyright (C) 2002-2004, 2006-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_VASNPRINTF], [ @@ -356,15 +357,39 @@ AC_DEFUN([gl_PREREQ_VASNPRINTF_DIRECTIVE_LC], # Extra prerequisites of lib/vasnprintf.c for supporting the ' flag. AC_DEFUN([gl_PREREQ_VASNPRINTF_FLAG_GROUPING], [ + AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([gl_PRINTF_FLAG_GROUPING]) - case "$gl_cv_func_printf_flag_grouping" in - *yes) - ;; - *) + AC_REQUIRE([gl_PRINTF_FLAG_GROUPING_INT_PRECISION]) + AC_REQUIRE([gl_PRINTF_FLAG_GROUPING_MULTIBYTE]) + case "$host_os" in + mingw* | windows*) + dnl MSVC does not support the ' flag at all. + dnl mingw does not support it, unless __USE_MINGW_ANSI_STDIO is defined. + dnl mingw also has other bugs regarding the ' flag. AC_DEFINE([NEED_PRINTF_FLAG_GROUPING], [1], [Define if the vasnprintf implementation needs special code for the ' flag.]) ;; + *) + case "$gl_cv_func_printf_flag_grouping,$gl_cv_func_printf_flag_grouping_multibyte" in + *yes,*yes) + case "$gl_cv_func_printf_flag_grouping_int_precision" in + *yes) + ;; + *) + AC_DEFINE([NEED_PRINTF_FLAG_GROUPING_INT], [1], + [Define if the vasnprintf implementation needs special code for the + ' flag, for integer directives only.]) + ;; + esac + ;; + *) + AC_DEFINE([NEED_PRINTF_FLAG_GROUPING], [1], + [Define if the vasnprintf implementation needs special code for the + ' flag.]) + ;; + esac + ;; esac ]) diff --git a/gnulib-m4/visibility.m4 b/gnulib-m4/visibility.m4 index ecf09686..c2cd38d0 100644 --- a/gnulib-m4/visibility.m4 +++ b/gnulib-m4/visibility.m4 @@ -1,9 +1,10 @@ # visibility.m4 # serial 9 -dnl Copyright (C) 2005, 2008, 2010-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2008, 2010-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. diff --git a/gnulib-m4/warn-on-use.m4 b/gnulib-m4/warn-on-use.m4 index 6c8c76b8..73cf16fb 100644 --- a/gnulib-m4/warn-on-use.m4 +++ b/gnulib-m4/warn-on-use.m4 @@ -1,9 +1,10 @@ # warn-on-use.m4 # serial 11 -dnl Copyright (C) 2010-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2010-2025 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. +dnl This file is offered as-is, without any warranty. # gl_WARN_ON_USE_PREPARE(INCLUDES, NAMES) # --------------------------------------- diff --git a/gnulib-m4/wchar_h.m4 b/gnulib-m4/wchar_h.m4 index 995bdc65..70e9e33d 100644 --- a/gnulib-m4/wchar_h.m4 +++ b/gnulib-m4/wchar_h.m4 @@ -1,9 +1,10 @@ # wchar_h.m4 -# serial 64 -dnl Copyright (C) 2007-2024 Free Software Foundation, Inc. +# serial 66 +dnl Copyright (C) 2007-2025 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. +dnl This file is offered as-is, without any warranty. dnl A placeholder for ISO C99 <wchar.h>, for platforms that have issues. @@ -64,8 +65,8 @@ dnl Check whether <wchar.h> is usable at all. AC_DEFUN([gl_WCHAR_H_INLINE_OK], [ dnl Test whether <wchar.h> suffers due to the transition from '__inline' to - dnl 'gnu_inline'. See <https://sourceware.org/bugzilla/show_bug.cgi?id=4022> - dnl and <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42440>. In summary, + dnl 'gnu_inline'. See <https://sourceware.org/PR4022> + dnl and <https://gcc.gnu.org/PR42440>. In summary, dnl glibc version 2.5 or older, together with gcc version 4.3 or newer and dnl the option -std=c99 or -std=gnu99, leads to a broken <wchar.h>. AC_REQUIRE([AC_CANONICAL_HOST]) @@ -238,7 +239,7 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS], HAVE_WCSTOK=1; AC_SUBST([HAVE_WCSTOK]) HAVE_WCSWIDTH=1; AC_SUBST([HAVE_WCSWIDTH]) HAVE_WCSFTIME=1; AC_SUBST([HAVE_WCSFTIME]) - HAVE_DECL_WCTOB=1; AC_SUBST([HAVE_DECL_WCTOB]) + HAVE_WCTOB=1; AC_SUBST([HAVE_WCTOB]) HAVE_DECL_WCSDUP=1; AC_SUBST([HAVE_DECL_WCSDUP]) HAVE_DECL_WCWIDTH=1; AC_SUBST([HAVE_DECL_WCWIDTH]) REPLACE_MBSTATE_T=0; AC_SUBST([REPLACE_MBSTATE_T]) @@ -256,6 +257,7 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS], REPLACE_WCSWIDTH=0; AC_SUBST([REPLACE_WCSWIDTH]) REPLACE_WCSFTIME=0; AC_SUBST([REPLACE_WCSFTIME]) REPLACE_WCSCMP=0; AC_SUBST([REPLACE_WCSCMP]) + REPLACE_WCSNCAT=0; AC_SUBST([REPLACE_WCSNCAT]) REPLACE_WCSNCMP=0; AC_SUBST([REPLACE_WCSNCMP]) REPLACE_WCSSTR=0; AC_SUBST([REPLACE_WCSSTR]) REPLACE_WCSTOK=0; AC_SUBST([REPLACE_WCSTOK]) diff --git a/gnulib-m4/wcrtomb.m4 b/gnulib-m4/wcrtomb.m4 index cc0e935f..4d8dd19e 100644 --- a/gnulib-m4/wcrtomb.m4 +++ b/gnulib-m4/wcrtomb.m4 @@ -1,9 +1,10 @@ # wcrtomb.m4 -# serial 21 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +# serial 22 +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_WCRTOMB], [ @@ -32,7 +33,7 @@ AC_DEFUN([gl_FUNC_WCRTOMB], dnl fi if test $REPLACE_WCRTOMB = 0; then dnl On Android 4.3, wcrtomb produces wrong characters in the C locale. - dnl On AIX 4.3, OSF/1 5.1 and Solaris <= 11.3, wcrtomb (NULL, 0, NULL) + dnl On AIX 4.3 and Solaris <= 11.3, wcrtomb (NULL, 0, NULL) dnl sometimes returns 0 instead of 1. AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([gt_LOCALE_FR]) @@ -82,8 +83,8 @@ int main () dnl is present. changequote(,)dnl case "$host_os" in - # Guess no on AIX 4, OSF/1, Solaris, native Windows. - aix4* | osf* | solaris* | mingw* | windows*) + # Guess no on AIX 4, Solaris, native Windows. + aix4* | solaris* | mingw* | windows*) gl_cv_func_wcrtomb_retval="guessing no" ;; # Guess yes otherwise. *) diff --git a/gnulib-m4/wctob.m4 b/gnulib-m4/wctob.m4 index d66c6ff1..6506b0da 100644 --- a/gnulib-m4/wctob.m4 +++ b/gnulib-m4/wctob.m4 @@ -1,9 +1,10 @@ # wctob.m4 -# serial 14 -dnl Copyright (C) 2008-2024 Free Software Foundation, Inc. +# serial 15 +dnl Copyright (C) 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_WCTOB], [ @@ -12,7 +13,6 @@ AC_DEFUN([gl_FUNC_WCTOB], AC_CHECK_FUNCS_ONCE([wctob]) if test $ac_cv_func_wctob = no; then HAVE_WCTOB=0 - HAVE_DECL_WCTOB=0 else HAVE_WCTOB=1 @@ -91,16 +91,6 @@ int main () *yes) ;; *) REPLACE_WCTOB=1 ;; esac - if test $REPLACE_WCTOB = 0; then - - dnl IRIX 6.5 has the wctob() function but does not declare it. - AC_CHECK_DECLS([wctob], [], [], [[ - #include <wchar.h> - ]]) - if test $ac_cv_have_decl_wctob != yes; then - HAVE_DECL_WCTOB=0 - fi - fi fi ]) diff --git a/gnulib-m4/wctomb.m4 b/gnulib-m4/wctomb.m4 index abba2112..f01a6898 100644 --- a/gnulib-m4/wctomb.m4 +++ b/gnulib-m4/wctomb.m4 @@ -1,9 +1,10 @@ # wctomb.m4 # serial 2 -dnl Copyright (C) 2011-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_WCTOMB], [ diff --git a/gnulib-m4/wctype_h.m4 b/gnulib-m4/wctype_h.m4 index a3b07c2a..8e54678d 100644 --- a/gnulib-m4/wctype_h.m4 +++ b/gnulib-m4/wctype_h.m4 @@ -3,10 +3,11 @@ dnl A placeholder for ISO C99 <wctype.h>, for platforms that lack it. -dnl Copyright (C) 2006-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2025 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. +dnl This file is offered as-is, without any warranty. dnl Written by Paul Eggert. diff --git a/gnulib-m4/wcwidth.m4 b/gnulib-m4/wcwidth.m4 index f2fa1980..cb2cca97 100644 --- a/gnulib-m4/wcwidth.m4 +++ b/gnulib-m4/wcwidth.m4 @@ -1,9 +1,10 @@ # wcwidth.m4 -# serial 38 -dnl Copyright (C) 2006-2024 Free Software Foundation, Inc. +# serial 39 +dnl Copyright (C) 2006-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_FUNC_WCWIDTH], [ @@ -43,7 +44,7 @@ AC_DEFUN([gl_FUNC_WCWIDTH], dnl On Mac OS X 10.3, wcwidth(0x0301) (COMBINING ACUTE ACCENT) returns 1. dnl On macOS 12.5, NetBSD 9.3, OpenBSD 5.0, MidnightBSD 1.1, dnl wcwidth(0x05B0) (HEBREW POINT SHEVA) returns 1. - dnl On macOS 12.5, NetBSD 9.3, MidnightBSD 1.1, OSF/1 5.1, + dnl On macOS 12.5, NetBSD 9.3, MidnightBSD 1.1, dnl wcwidth(0x200B) (ZERO WIDTH SPACE) returns 1. dnl On OpenBSD 5.8, wcwidth(0xFF1A) (FULLWIDTH COLON) returns 0. dnl This leads to bugs in 'ls' (coreutils). diff --git a/gnulib-m4/windows-rc.m4 b/gnulib-m4/windows-rc.m4 new file mode 100644 index 00000000..7787bfa1 --- /dev/null +++ b/gnulib-m4/windows-rc.m4 @@ -0,0 +1,21 @@ +# windows-rc.m4 +# serial 1 +dnl Copyright (C) 2024-2025 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. +dnl This file is offered as-is, without any warranty. + +dnl Find the tool that "compiles" a Windows resource file (.rc) to an +dnl object file. + +AC_DEFUN_ONCE([gl_WINDOWS_RC], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + case "$host_os" in + mingw* | windows*) + dnl Check for a program that compiles Windows resource files. + AC_CHECK_TOOL([WINDRES], [windres]) + ;; + esac +]) diff --git a/gnulib-m4/wint_t.m4 b/gnulib-m4/wint_t.m4 index 883fac28..8a3c7944 100644 --- a/gnulib-m4/wint_t.m4 +++ b/gnulib-m4/wint_t.m4 @@ -1,9 +1,10 @@ # wint_t.m4 # serial 11 -dnl Copyright (C) 2003, 2007-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2007-2025 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. +dnl This file is offered as-is, without any warranty. dnl From Bruno Haible. dnl Test whether <wchar.h> has the 'wint_t' type and whether gnulib's diff --git a/gnulib-m4/xalloc.m4 b/gnulib-m4/xalloc.m4 index d44d0f08..c10c4189 100644 --- a/gnulib-m4/xalloc.m4 +++ b/gnulib-m4/xalloc.m4 @@ -1,8 +1,9 @@ # xalloc.m4 # serial 18 -dnl Copyright (C) 2002-2006, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2006, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_XALLOC], [:]) diff --git a/gnulib-m4/xgetcwd.m4 b/gnulib-m4/xgetcwd.m4 index 1bb95692..c214e2cb 100644 --- a/gnulib-m4/xgetcwd.m4 +++ b/gnulib-m4/xgetcwd.m4 @@ -1,9 +1,10 @@ # xgetcwd.m4 # serial 8 -dnl Copyright (C) 2002-2006, 2009-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2006, 2009-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_XGETCWD], [ diff --git a/gnulib-m4/xsize.m4 b/gnulib-m4/xsize.m4 index e5784973..157d635c 100644 --- a/gnulib-m4/xsize.m4 +++ b/gnulib-m4/xsize.m4 @@ -1,9 +1,10 @@ # xsize.m4 # serial 5 -dnl Copyright (C) 2003-2004, 2008-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2003-2004, 2008-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_XSIZE], [ diff --git a/gnulib-m4/yield.m4 b/gnulib-m4/yield.m4 index 842313a0..ce322046 100644 --- a/gnulib-m4/yield.m4 +++ b/gnulib-m4/yield.m4 @@ -1,9 +1,10 @@ # yield.m4 # serial 5 -dnl Copyright (C) 2005-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2005-2025 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. +dnl This file is offered as-is, without any warranty. AC_DEFUN([gl_YIELD], [ diff --git a/gnulib-m4/zzgnulib.m4 b/gnulib-m4/zzgnulib.m4 index 710fba4e..343bda5c 100644 --- a/gnulib-m4/zzgnulib.m4 +++ b/gnulib-m4/zzgnulib.m4 @@ -1,9 +1,10 @@ # zzgnulib.m4 # serial 1 -dnl Copyright (C) 2020-2024 Free Software Foundation, Inc. +dnl Copyright (C) 2020-2025 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. +dnl This file is offered as-is, without any warranty. dnl This file must be named something that sorts after all other dnl package- or gnulib-provided .m4 files - at least for those packages |