From: Bruno Haible Date: Wed, 16 Aug 2023 19:47:26 +0000 (+0200) Subject: fnmatch: Override fnmatch from glibc versions < 2.22. X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=32a6c26eb14e798a51114077939dcbbc9adfaac6;p=gnulib.git fnmatch: Override fnmatch from glibc versions < 2.22. * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX): Force REPLACE_FNMATCH=1 in glibc versions < 2.22. --- diff --git a/ChangeLog b/ChangeLog index 26d25b4ef9..f8645fcc96 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2023-08-16 Bruno Haible + + fnmatch: Override fnmatch from glibc versions < 2.22. + * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX): Force REPLACE_FNMATCH=1 in + glibc versions < 2.22. + 2023-08-16 Bruno Haible tests: Avoid some test failures on Slackware 13.37. diff --git a/m4/fnmatch.m4 b/m4/fnmatch.m4 index eba70de2bc..1e21960f08 100644 --- a/m4/fnmatch.m4 +++ b/m4/fnmatch.m4 @@ -1,4 +1,4 @@ -# Check for fnmatch - serial 17 -*- coding: utf-8 -*- +# Check for fnmatch - serial 17.1 -*- coding: utf-8 -*- # Copyright (C) 2000-2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation @@ -108,6 +108,17 @@ AC_DEFUN([gl_FUNC_FNMATCH_POSIX], exists in glibc 2.12, fixed in glibc 2.13. */ if (!y ("[/b", "[/b", 0)) /*"]]"*/ result |= 4; + /* glibc bug + is fixed in glibc 2.20. + glibc bugs + + are fixed in glibc 2.22. + These bugs are not easy to test for reliably (without mmap), + therefore test the glibc version. */ + #if defined __GLIBC__ + if (__GLIBC__ == 2 && __GLIBC_MINOR__ < 22) + result |= 4; + #endif /* This test fails on FreeBSD 13.2, NetBSD 9.3, Cygwin 3.4.6. */ if (!y ("[[:alnum:]]", "a", 0)) result |= 8;