modules


Log

Author Commit Date CI Message
Bruno Haible 9746be9c 2023-01-22T13:01:14 Resolve conflicts for functions introduced in Android API level 23. * lib/string.in.h (mempcpy): Consider REPLACE_MEMPCPY. Disable _GL_CXXALIASWARN invocation on non-glibc systems. * m4/string_h.m4 (gl_STRING_H_DEFAULTS): Initialize REPLACE_MEMPCPY. * modules/string (Makefile.am): Substitute REPLACE_MEMPCPY. * m4/mempcpy.m4 (gl_FUNC_STPCPY): Conditionally set REPLACE_MEMPCPY. * modules/mempcpy (configure.ac): Consider REPLACE_MEMPCPY.
Bruno Haible 6f43ec52 2023-01-22T12:43:06 Resolve conflicts for functions introduced in Android API level 23. * lib/stdlib.in.h (mkostemp): Consider REPLACE_MKOSTEMP. Disable _GL_CXXALIASWARN invocation on non-glibc systems. (mkostemps): Consider REPLACE_MKOSTEMPS. Disable _GL_CXXALIASWARN invocation on non-glibc systems. * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize REPLACE_MKOSTEMP, REPLACE_MKOSTEMPS. * modules/stdlib (Makefile.am): Substitute REPLACE_MKOSTEMP, REPLACE_MKOSTEMPS. * m4/mkostemp.m4 (gl_FUNC_MKOSTEMP): Conditionally set REPLACE_MKOSTEMP. * modules/mkostemp (Depends-on, configure.ac): Consider REPLACE_MKOSTEMP. * m4/mkostemps.m4 (gl_FUNC_MKOSTEMPS): Conditionally set REPLACE_MKOSTEMPS. * modules/mkostemps (Depends-on, configure.ac): Consider REPLACE_MKOSTEMPS.
Bruno Haible 0244a842 2023-01-22T11:55:01 Resolve conflicts for functions introduced in Android API level 21. * lib/unistd.in.h (dup3): Consider REPLACE_DUP3. Disable _GL_CXXALIASWARN invocation on non-glibc systems. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize REPLACE_DUP3. * modules/unistd (Makefile.am): Substitute REPLACE_DUP3. * m4/dup3.m4 (gl_FUNC_DUP3): Conditionally set REPLACE_DUP3.
Bruno Haible b6b037e6 2023-01-22T11:51:46 Resolve conflicts for functions introduced in Android API level 21. * lib/string.in.h (stpcpy): Consider REPLACE_STPCPY. Disable _GL_CXXALIASWARN invocation on non-glibc systems. * m4/string_h.m4 (gl_STRING_H_DEFAULTS): Initialize REPLACE_STPCPY. * modules/string (Makefile.am): Substitute REPLACE_STPCPY. * m4/stpcpy.m4 (gl_FUNC_STPCPY): Conditionally set REPLACE_STPCPY. * modules/stpcpy (configure.ac): Consider REPLACE_STPCPY.
Bruno Haible daa77bf4 2023-01-22T11:48:22 Resolve conflicts for functions introduced in Android API level 21. * lib/stdlib.in.h (_Exit): Consider REPLACE__EXIT. Disable _GL_CXXALIASWARN invocation on non-glibc systems. (getprogname): Consider REPLACE_GETPROGNAME. Disable _GL_CXXALIASWARN invocation on non-glibc systems. (posix_openpt): Consider REPLACE_POSIX_OPENPT. Disable _GL_CXXALIASWARN invocation on non-glibc systems. * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize REPLACE__EXIT, REPLACE_GETPROGNAME, REPLACE_POSIX_OPENPT. * modules/stdlib (Makefile.am): Substitute REPLACE__EXIT, REPLACE_GETPROGNAME, REPLACE_POSIX_OPENPT. * m4/_Exit.m4 (gl_FUNC__EXIT): Conditionally set REPLACE__EXIT. * modules/_Exit (configure.ac): Consider REPLACE__EXIT. * m4/getprogname.m4 (gl_FUNC_GETPROGNAME): Conditionally set REPLACE_GETPROGNAME. * modules/getprogname (configure.ac): Consider REPLACE_GETPROGNAME. * m4/posix_openpt.m4 (gl_FUNC_POSIX_OPENPT): Conditionally set REPLACE_POSIX_OPENPT. * modules/posix_openpt (configure.ac): Consider REPLACE_POSIX_OPENPT.
Bruno Haible 8c15a911 2023-01-22T11:47:22 Resolve conflicts for functions introduced in Android API level 21. * lib/search.in.h (twalk): Consider REPLACE_TWALK. * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TWALK. * modules/search (Makefile.am): Substitute REPLACE_TWALK. * m4/tsearch.m4 (gl_FUNC_TSEARCH): Conditionally set REPLACE_TWALK. * modules/tsearch (configure.ac): Consider REPLACE_TWALK.
Bruno Haible afcb36b3 2023-01-22T11:42:32 Resolve conflicts for functions introduced in Android API level 19. * lib/inttypes.in.h (imaxabs): Consider REPLACE_IMAXABS. Disable _GL_CXXALIASWARN invocation on non-glibc systems. (imaxdiv): Consider REPLACE_IMAXDIV. Disable _GL_CXXALIASWARN invocation on non-glibc systems. * m4/inttypes.m4 (gl_INTTYPES_H_DEFAULTS): Initialize HAVE_IMAXABS, HAVE_IMAXDIV, REPLACE_IMAXABS, REPLACE_IMAXDIV. * modules/inttypes-incomplete (Makefile.am): Substitute REPLACE_IMAXABS, REPLACE_IMAXDIV. * m4/imaxabs.m4 (gl_FUNC_IMAXABS): Conditionally set HAVE_IMAXABS, REPLACE_IMAXABS. * modules/imaxabs (configure.ac): Consider HAVE_IMAXABS, REPLACE_IMAXABS. * m4/imaxdiv.m4 (gl_FUNC_IMAXDIV): Conditionally set HAVE_IMAXDIV, REPLACE_IMAXDIV. * modules/imaxdiv (configure.ac): Consider HAVE_IMAXDIV, REPLACE_IMAXDIV.
Bruno Haible e074cd27 2023-01-22T01:23:47 Resolve conflicts for functions introduced in Android API level 9. * lib/unistd.in.h (fdatasync): Consider REPLACE_FDATASYNC. Disable _GL_CXXALIASWARN invocation on non-glibc systems. (pipe2): Consider REPLACE_PIPE2. Disable _GL_CXXALIASWARN invocation on non-glibc systems. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize REPLACE_FDATASYNC, REPLACE_PIPE2. * modules/unistd (Makefile.am): Substitute REPLACE_FDATASYNC, REPLACE_PIPE2. * m4/fdatasync.m4 (gl_FUNC_FDATASYNC): Test for fdatasync using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. Conditionally set REPLACE_FDATASYNC. * modules/fdatasync (Depends-on, configure.ac): Consider REPLACE_FDATASYNC. * m4/pipe2.m4 (gl_FUNC_PIPE2): Conditionally set REPLACE_PIPE2.
Bruno Haible 9041103e 2023-01-21T21:13:20 login_tty: Ensure declaration in <utmp.h>. * tests/test-utmp-c++.cc: New file. * modules/utmp-c++-tests: New file. * tests/test-utmp.c: New file. * modules/utmp-tests: New file. * lib/login_tty.c: Include <utmp.h>. * m4/login_tty.m4: New file. (gl_FUNC_LOGIN_TTY): Moved here from m4/pty.m4. Set HAVE_LOGIN_TTY. * m4/pty.m4 (gl_FUNC_LOGIN_TTY): Moved to m4/login_tty.m4. * modules/login_tty (Files): Add m4/login_tty.m4. (Depends-on): Add utmp. Remove pty. Update condition. (configure.ac): Update condition. Invoke gl_UTMP_MODULE_INDICATOR instead of gl_PTY_MODULE_INDICATOR. (Include): List <utmp.h>. * doc/glibc-functions/login_tty.texi: Mark the include file diversity as fixed. * tests/test-login_tty.c: Include <utmp.h>. Don't declare login_tty here. * lib/utmp.in.h: New file. * m4/utmp_h.m4: New file. * modules/utmp: New file. * doc/glibc-headers/utmp.texi: New file. * doc/gnulib.texi (Glibc Header File Substitutes): Include it.
Bruno Haible f44111b0 2023-01-21T10:07:19 alignasof tests: Rename test file. * tests/test-alignasof.c: Renamed from tests/test-stdalign.c. * modules/alignasof-tests (Files, Makefile.am): Update accordingly.
Bruno Haible d48f4319 2023-01-21T09:43:50 getprogname: Move declaration from "getprogname.h" to <stdlib.h>. * lib/stdlib.in.h (getprogname): New declaration. * lib/getprogname.h: Add deprecation warning. (getprogname): Remove declaration. * lib/getprogname.c: Include <stdlib.h> instead of getprogname.h. * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether getprogname is declared. (gl_STDLIB_H_REQUIRE_DEFAULTS): Initialize GNULIB_GETPROGNAME. (gl_STDLIB_H_DEFAULTS): Initialize HAVE_GETPROGNAME. * m4/getprogname.m4 (gl_PREREQ_GETPROGNAME): New macro, extracted from gl_FUNC_GETPROGNAME. Set HAVE_GETPROGNAME. (gl_FUNC_GETPROGNAME): Remove code that was moved to gl_PREREQ_GETPROGNAME. * modules/stdlib (Makefile.am): Substitute GNULIB_GETPROGNAME and HAVE_GETPROGNAME. * modules/getprogname (Depends-on): Add stdlib. (configure.ac): Define a module indicator. Invoke gl_PREREQ_GETPROGNAME. (Makefile.am): Don't compile getprogname.c if not needed. (Include): List <stdlib.h> instead of getprogname.h. * tests/test-getprogname.c: Include <stdlib.h> instead of getprogname.h. * NEWS: Mention the change. * lib/argmatch.c: Don't include getprogname.h. * lib/c-stack.c: Likewise. * lib/error.c: Likewise. * lib/git-merge-changelog.c: Likewise.
Bruno Haible 3d9249fe 2023-01-19T21:55:45 Fix warnings for functions introduced in Android API level 34. * modules/execute-tests (configure.ac): Test for close_range using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS.
Bruno Haible b92393ef 2023-01-19T21:55:35 Fix warnings for functions introduced in Android API level 26. * m4/mountlist.m4 (gl_MOUNTLIST): Test for hasmntopt using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/nl_langinfo.m4 (gl_FUNC_NL_LANGINFO): Test for nl_langinfo using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/strtod.m4 (gl_PREREQ_STRTOD): Test for nl_langinfo using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/strtold.m4 (gl_PREREQ_STRTOLD): Likewise. * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Likewise. * m4/strerror_r.m4 (gl_PREREQ_STRERROR_R): Test for catgets using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/utimens.m4 (gl_UTIMENS): Test for lutimes using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/duplocale.m4 (gl_FUNC_DUPLOCALE): Test for nl_langinfo_l using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * modules/duplocale-tests (configure.ac): Likewise. * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Update comment.
Bruno Haible 4e763315 2023-01-19T21:55:27 Fix warnings for functions introduced in Android API level 21. * m4/_Exit.m4 (gl_FUNC__EXIT): Test for _Exit using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/c-strtod.m4 (gl_C_STRTOLD): Test for strtold_l using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/c32rtomb.m4 (gl_FUNC_C32RTOMB): Test for c32rtomb like gl_CHECK_FUNCS_ANDROID does. * m4/dprintf.m4 (gl_FUNC_DPRINTF): Test for dprintf using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/dprintf-posix.m4 (gl_FUNC_DPRINTF_POSIX): Likewise. * m4/dup3.m4 (gl_FUNC_DUP3): Test for dup3 using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/duplocale.m4 (gl_FUNC_DUPLOCALE): Test for duplocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/execvpe.m4 (gl_FUNC_EXECVPE): Test for execvpe using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/fts.m4 (gl_FUNC_FTS_CORE): Test for fts_open using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNC. * m4/getprogname.m4 (gl_FUNC_GETPROGNAME): Test for getprogname using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/intl-thread-locale.m4 (gt_FUNC_USELOCALE): Test for uselocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/iswblank.m4 (gl_FUNC_ISWBLANK): Test for iswblank using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/libtextstyle-optional.m4 (gl_LIBTEXTSTYLE_OPTIONAL): Test for tcdrain using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/linkat.m4 (gl_FUNC_LINKAT): Test for linkat using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/localename.m4 (gl_LOCALENAME): Test for newlocale, duplocale, freelocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/mbrtoc32.m4 (gl_CHECK_FUNC_MBRTOC32): Test for mbrtoc32 like gl_CHECK_FUNCS_ANDROID does. * m4/mbsnrtowcs.m4 (gl_FUNC_MBSNRTOWCS): Test for mbsnrtowcs using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/mbtowc.m4 (gl_FUNC_MBTOWC): Test for mbtowc using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/mkfifoat.m4 (gl_FUNC_MKFIFOAT): Test for mknodat using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/mountlist.m4 (gl_MOUNTLIST): Test for setmntent, endmntent using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/posix_openpt.m4 (gl_FUNC_POSIX_OPENPT): Test for posix_openpt using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/pty.m4 (gl_FUNC_OPENPTY): Test for posix_openpt using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/random.m4 (gl_FUNC_RANDOM): Test for initstate, setstate using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/stpcpy.m4 (gl_FUNC_STPCPY): Test for stpcpy using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Test for stpncpy using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Test for symlinkat using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/truncate.m4 (gl_FUNC_TRUNCATE): Test for truncate using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/tsearch.m4 (gl_FUNC_TSEARCH): Test for twalk using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS. * m4/vdprintf.m4 (gl_FUNC_VDPRINTF): Test for vdprintf using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/vdprintf-posix.m4 (gl_FUNC_VDPRINTF_POSIX): Likewise. * m4/wcsnrtombs.m4 (gl_FUNC_WCSNRTOMBS): Test for wcsnrtombs using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/readlinkat.m4 (gl_FUNC_READLINKAT): Test for readlinkat using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/fchmodat.m4 (gl_PREREQ_FCHMODAT): Likewise. * modules/careadlinkat (configure.ac): Likewise. * modules/ftoastr (configure.ac): Test for strtof using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * modules/duplocale-tests (configure.ac): Test for duplocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * modules/hard-locale-tests (configure.ac): Likewise. * modules/locale-tests (configure.ac): Test for newlocale using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * modules/localename-tests (configure.ac): Likewise. * modules/tsearch-tests (configure.ac): Test for initstate using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * modules/unistr/u8-stpcpy (configure.ac): Test for stpcpy using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/tcgetattr.m4: New file, extracted from m4/getpass.m4. * m4/getpass.m4 (gl_PREREQ_GETPASS): Remove code that tests for tcgetattr. Invoke gl_HAVE_TCGETATTR instead. * modules/getpass (Files): Add tcgetattr.m4. * modules/getpass-gnu (Files): Add tcgetattr.m4. * modules/term-style-control (Files): Add tcgetattr.m4. (configure.ac): Remove code that tests for tcgetattr. Invoke gl_HAVE_TCGETATTR instead.
Bruno Haible dc4c5939 2023-01-19T21:55:20 Fix warnings for functions introduced in Android API level 16 or 17. * m4/posix_memalign.m4 (gl_FUNC_POSIX_MEMALIGN): Test for posix_memalign using gl_CHECK_FUNCS_ANDROID instead of AC_CHECK_FUNCS_ONCE. * m4/alignalloc.m4 (gl_ALIGNALLOC): Likewise. * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Likewise. * modules/aligned-malloc (configure.ac): Likewise.
Paul Eggert 83adc2f7 2023-01-15T11:53:40 sys_socket: fix typo Fix typo in previous change.
Paul Eggert c593e834 2023-01-15T11:48:43 alignasof: new module This splits off support for the C23 keywords alignas and alignof, from the now-deprecated stdalign module. The latter now merely provides C11 support. * MODULES.html.sh, NEWS, doc/gnulib.texi: * doc/posix-headers/stdalign.texi: Document the change. * lib/stdalign.in.h: Remove most of the definitions (which are now supplied by the alignasof module), leaving only __alignas_is_defined and __alignof_is_defined. * modules/alignasof, modules/alignasof-tests: New files. * m4/stdalign.m4 (gl_ALIGNASOF): New macro, with most of the contents of the old gl_STDALIGN_H. Do not define __alignas_is_defined or __alignof_is_defined. (gl_STDALIGN_H): Rely on gl_ALIGNASOF for most of the work. * modules/alignalloc, modules/alignof, modules/argp: * modules/crypto/md4-buffer, modules/crypto/md5-buffer: * modules/crypto/sha1-buffer, modules/crypto/sha256-buffer: * modules/crypto/sha512-buffer, modules/crypto/sm3-buffer: * modules/fts, modules/rawmemchr, modules/relocatable-prog-wrapper: * modules/stddef-tests, modules/sys_socket: Depend on alignasof, not stdalign. * modules/stdalign: Deprecate. Depend on alignasof. * modules/stdalign-tests: Move most contents to the new module alignasof-tests, and depend on that.
Paul Eggert 2d404c7d 2023-01-14T17:48:18 alignof: port to strict C23 Problem reported by Khem Raj in: https://lists.gnu.org/r/bug-gnulib/2023-01/msg00111.html * lib/alignof.h (alignof_slot) [!__cplusplus]: Use C23-style alignof. * modules/alignof (Depends-on): Add stdalign.
Bruno Haible 6985db4b 2023-01-14T20:30:15 error, verror tests: Fix link error when the package uses libintl. * modules/error-tests (Makefile.am): Link test-error with $(LIBINTL). * modules/verror-tests (Makefile.am): Link test-verror with $(LIBINTL).
Bruno Haible 959b9cc7 2023-01-13T09:37:40 qcopy-acl: Make last patch more robust. * m4/acl.m4 (gl_FUNC_ACL): Define through AC_DEFUN_ONCE. * modules/qcopy-acl (configure.ac): Require gl_FUNC_ACL.
Bruno Haible be8884dd 2023-01-13T09:30:29 qcopy-acl: Adjust link dependencies. * modules/qcopy-acl (Depends-on): Add condition. (configure.ac): Set QCOPY_ACL_LIB. (Link): Add $(QCOPY_ACL_LIB). Remove $(LIB_ACL). * modules/qacl (Link): Add $(LIB_ACL) and $(QCOPY_ACL_LIB). * modules/acl (Link): Add $(LIB_ACL) and $(QCOPY_ACL_LIB). * modules/copy-file (Link): Add $(QCOPY_ACL_LIB). * modules/supersede (Link): Add $(QCOPY_ACL_LIB). * modules/acl-tests (Makefile.am): Link test-copy-acl with $(QCOPY_ACL_LIB). * modules/copy-file-tests (Makefile.am): Link test-copy-file with $(QCOPY_ACL_LIB). * modules/supersede-tests (Makefile.am): Link test-supersede with $(QCOPY_ACL_LIB).
Ondrej Valousek eb6a8a4d 2023-01-04T15:34:26 qcopy-acl: Optimize copying of ACLs by directly copying the attributes. * lib/qcopy-acl.c (is_attr_permissions): New functions. (qcopy_acl): If USE_XATTR, copy the ACL related attributes directly. * m4/xattr.m4: New file. * modules/qcopy-acl (Files): Add it. (configure.ac): Invoke gl_FUNC_XATTR.
Bruno Haible 2886cca8 2023-01-12T16:51:15 error: Work around an Android problem. * lib/error.in.h: Renamed from lib/error.h. (_GL_ATTRIBUTE_SPEC_PRINTF_ERROR): New macro. (error): Consider HAVE_ERROR and REPLACE_ERROR. (error_at_line): Consider HAVE_ERROR_AT_LINE and REPLACE_ERROR_AT_LINE. * m4/error_h.m4: New file, partially based on m4/error.m4. * m4/error.m4 (gl_ERROR): Remove the test for error_at_line. * modules/error-h: New file. * modules/error (Files): Remove lib/error.h. (Depends-on): Add error-h. Update conditions. (configure.ac): Require gl_ERROR_H. Update condition. * doc/glibc-headers/error.texi: Mention the 'error-h' module. * doc/glibc-functions/error.texi: Mention the Android problem. * config/srclist.txt: Add comment regarding error.h.
Bruno Haible c621f945 2023-01-12T12:34:43 verror: Add tests. * tests/test-verror.sh: New file, based on tests/test-error.sh. * tests/test-verror.c: New file, based on tests/test-error.c. * modules/verror-tests: New file.
Bruno Haible 4545825d 2023-01-12T11:48:27 error: Add tests. * tests/test-error.sh: New file. * tests/test-error.c: New file. * modules/error-tests: New file.
Bruno Haible 8403a258 2023-01-11T19:51:43 posix_spawn_file_actions_addfchdir tests: Fix test failure on Android. * tests/test-posix_spawn-fchdir.c: Include xvasprintf.h. (test): On Android, use "/proc" instead of "/". (main): Determine the relative location of the 'pwd' program accordingly. * modules/posix_spawn_file_actions_addfchdir-tests (Depends-on): Add xvasprintf.
Bruno Haible 14f0dee7 2023-01-10T17:44:04 immutable: Fix initialization failure on Android. * lib/immutable.c: Include "pathmax.h". (do_init_mmap_file): Use $TMPDIR rather than /tmp, if it is safe. * modules/immutable (Depends-on): Add pathmax.
Bruno Haible 7937757f 2023-01-09T21:31:52 threads-h: Improve portability. * lib/threads.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE when possible. * modules/threads-h (Makefile.am): Substitute INCLUDE_NEXT_AS_FIRST_DIRECTIVE and NEXT_AS_FIRST_DIRECTIVE_THREADS_H.
Bruno Haible 08f3133a 2023-01-09T21:27:46 aligned-malloc: Don't disturb the module aligned_alloc. * modules/aligned-malloc (configure.ac): Test for aligned_alloc in the same way as module aligned_alloc does.
Bruno Haible c5dbe0ea 2023-01-09T21:18:20 malloc-h: Improve portability. * lib/malloc.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE when possible. * modules/malloc-h (Makefile.am): Substitute INCLUDE_NEXT_AS_FIRST_DIRECTIVE and NEXT_AS_FIRST_DIRECTIVE_MALLOC_H.
Bruno Haible 199566af 2023-01-09T13:47:25 malloc-h: Fix compilation errors in C++ mode on Android. * lib/malloc.in.h: Don't include <stdlib.h>, except on Solaris and on HP-UX. Include <stddef.h>. Make _GL_ATTRIBUTE_DEALLOC_FREE work (code snippet copied from string.in.h and wchar.in.h). * m4/malloc_h.m4 (gl_MALLOC_H_REQUIRE_DEFAULTS): Invoke gl_STDLIB_H_REQUIRE_DEFAULTS. * modules/malloc-h (Depends-on): Add stddef, stdlib. (Makefile.am): Substitute GNULIB_FREE_POSIX and REPLACE_FREE.
Bruno Haible 80b225fe 2023-01-07T15:17:30 timer_time: Rename LIB_TIMER_TIME to TIMER_TIME_LIB. * m4/timer_time.m4: Rename LIB_TIMER_TIME to TIMER_TIME_LIB. All uses changed. * NEWS: Mention the change
Bruno Haible 138fa3d5 2023-01-07T15:12:41 setlocale-null: Rename LIB_SETLOCALE_NULL to SETLOCALE_NULL_LIB. * m4/setlocale_null.m4: Rename LIB_SETLOCALE_NULL to SETLOCALE_NULL_LIB. All uses changed. * NEWS: Mention the change
Bruno Haible bd50da7f 2023-01-07T15:05:00 setlocale: Rename LIB_SETLOCALE to SETLOCALE_LIB. * m4/setlocale.m4: Rename LIB_SETLOCALE to SETLOCALE_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible 283f413f 2023-01-07T14:52:00 select: Rename LIB_SELECT to SELECT_LIB. * m4/select.m4: Rename LIB_SELECT to SELECT_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible b89c6790 2023-01-07T14:25:47 nanosleep: Rename LIB_NANOSLEEP to NANOSLEEP_LIB. * m4/nanosleep.m4: Rename LIB_NANOSLEEP to NANOSLEEP_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible c50044d6 2023-01-07T13:59:25 mbrtowc: Rename LIB_MBRTOWC to MBRTOWC_LIB. * m4/mbrtowc.m4: Rename LIB_MBRTOWC to MBRTOWC_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible 7d19811f 2023-01-07T11:42:52 hard-locale: Rename LIB_HARD_LOCALE to HARD_LOCALE_LIB. * modules/hard-locale (configure.ac): Rename LIB_HARD_LOCALE to HARD_LOCALE_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible 353a6ecc 2023-01-07T11:39:17 getrandom: Rename LIB_GETRANDOM to GETRANDOM_LIB. * m4/getrandom.m4: Rename LIB_GETRANDOM to GETRANDOM_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible ef1a2a94 2023-01-07T11:33:28 getlogin, getlogin_r: Rename LIB_GETLOGIN to GETLOGIN_LIB. * m4/getlogin.m4: Rename LIB_GETLOGIN to GETLOGIN_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible 7acb45ce 2023-01-07T11:26:46 gethrxtime: Rename LIB_GETHRXTIME to GETHRXTIME_LIB. * m4/gethrxtime.m4: Rename LIB_GETHRXTIME to GETHRXTIME_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible 811de3ea 2023-01-07T11:23:26 fdatasync: Rename LIB_FDATASYNC to FDATASYNC_LIB. * m4/fdatasync.m4: Rename LIB_FDATASYNC to FDATASYNC_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible d024de43 2023-01-07T11:19:17 euidaccess: Rename LIB_EACCESS to EUIDACCESS_LIBGEN. * m4/euidaccess.m4: Rename LIB_EACCESS to EUIDACCESS_LIBGEN. All uses changed. * NEWS: Mention the change.
Bruno Haible 3afa36c5 2023-01-07T11:13:35 duplocale: Rename LIB_DUPLOCALE to DUPLOCALE_LIB. * m4/duplocale.m4: Rename LIB_DUPLOCALE to DUPLOCALE_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible fe1f3714 2023-01-07T11:10:34 clock_time: Rename LIB_CLOCK_GETTIME to CLOCK_TIME_LIB. * m4/clock_time.m4: Rename LIB_CLOCK_GETTIME to CLOCK_TIME_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible 3943b5a2 2023-01-07T14:48:31 sched_yield: Rename LIB_SCHED_YIELD to SCHED_YIELD_LIB. * m4/threadlib.m4: Rename LIB_SCHED_YIELD to SCHED_YIELD_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible ca97499c 2023-01-07T14:39:16 pthread_sigmask: Rename LIB_PTHREAD_SIGMASK to PTHREAD_SIGMASK_LIB. * m4/pthread_sigmask.m4: Rename LIB_PTHREAD_SIGMASK to PTHREAD_SIGMASK_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible 046c426c 2023-01-07T14:32:04 posix_spawn: Rename LIB_POSIX_SPAWN to POSIX_SPAWN_LIB. * m4/spawn_h.m4: Rename LIB_POSIX_SPAWN to POSIX_SPAWN_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible 255c6884 2023-01-07T14:28:33 poll: Rename LIB_POLL to POLL_LIB. * m4/poll.m4: Rename LIB_POLL to POLL_LIB. All uses changed. * NEWS: Mention the change.
Bruno Haible c11db345 2023-01-05T11:26:04 copy-file, supersede: Fix link-time requirements. * modules/copy-file (Link): Add $(LIB_ACL). * modules/supersede (Link): Likewise.
Bruno Haible 5120ea0b 2023-01-05T11:11:50 More systematic naming of LIB variables. * m4/acl.m4 (gl_FUNC_ACL, gl_FILE_HAS_ACL): Set FILE_HAS_ACL_LIB to the same value as LIB_HAS_ACL. * modules/file-has-acl (Link): Use FILE_HAS_ACL_LIB instead of LIB_HAS_ACL. * modules/file-has-acl-tests (Makefile.am): Likewise.
Bruno Haible 3c92fb8e 2023-01-03T17:14:33 stdio: Fix error in C++ mode on Android, due to putw. * lib/stdio.in.h (putw): Don't declare in the C++ namespace if putw is not declared. * m4/stdio_h.m4 (gl_STDIO_H): Test whether putw is declared. (gl_STDIO_H_DEFAULTS): Initialize HAVE_DECL_PUTW. * modules/stdio (Makefile.am): Substitute HAVE_DECL_PUTW. * doc/glibc-functions/putw.texi: Update regarding Android.
Bruno Haible 7f15a26e 2023-01-03T17:11:19 stdio: Fix error in C++ mode on Android, due to getw. * lib/stdio.in.h (getw): Don't declare in the C++ namespace if getw is not declared. * m4/stdio_h.m4 (gl_STDIO_H): Test whether getw is declared. (gl_STDIO_H_DEFAULTS): Initialize HAVE_DECL_GETW. * modules/stdio (Makefile.am): Substitute HAVE_DECL_GETW.
Simon Josefsson 32a72f45 2023-01-01T01:14:21 maint: run 'make update-copyright'
Bruno Haible 0455e4cf 2022-12-27T11:13:05 stdnoreturn: Mark as deprecated, not obsolete. (Regression 2022-12-24.) * modules/stdnoreturn (Status): Remove. (Notice): Say that it is deprecated, not obsolete. * doc/noreturn.texi: Fix a typo.
Bruno Haible c50ace88 2022-12-26T18:12:45 ctime: Mark as deprecated, not obsolete. (Regression 2022-12-21.) * modules/ctime (Status): Remove. (Notice): Say that it is deprecated, not obsolete.
Paul Eggert 7c7c8a51 2022-12-25T11:41:57 largefile: sync from Autoconf master * m4/largefile.m4 (gl_SET_LARGEFILE_SOURCE): Test whether AC_SYS_YEAR2038 is defined when this macro is defined, not when it is used, as we now define AC_SYS_YEAR2038 later. (_AC_SYS_LARGEFILE_MACRO_VALUE): Remove. (_AC_SYS_YEAR2038_TEST_CODE, _AC_SYS_YEAR2038_OPTIONS) (_AC_SYS_YEAR2038_PROBE, _AC_SYS_YEAR2038_ENABLE) (_AC_SYS_YEAR2038_OPT_IN, AC_SYS_YEAR2038) (_AC_SYS_LARGEFILE_TEST_CODE, _AC_SYS_LARGEFILE_OPTIONS) (_AC_SYS_LARGEFILE_PROBE, _AC_SYS_LARGEFILE_ENABLE): New macros. (AC_SYS_LARGEFILE): Use them. * m4/year2038.m4: Remove. All mentions removed. * modules/largefile, modules/year2038 (configure.ac-early): Do not require gl_YEAR2038_EARLY. * modules/year2038 (Depends-on): Depend on largefile. (configure.ac): Require AC_SYS_YEAR2038, not gl_YEAR2038.
Paul Eggert c28598c3 2022-12-24T01:29:29 stdnoreturn: deprecate C23 says <stdnoreturn.h> is obsolescent, so deprecate the stdnoreturn module. I don't think it was being used anyway as it had too many problems. * modules/stdnoreturn: Mark as obsolete.
Paul Eggert ee37744d 2022-12-21T13:25:39 asctime, ctime: deprecate C23 deprecates asctime and ctime, so deprecate them in Gnulib too. * NEWS, doc/posix-functions/asctime.texi: * doc/posix-functions/ctime.texi: Mention this. * lib/time.in.h (ctime): Deprecate any ctime replacement. * modules/ctime: Now obsolete.
Paul Eggert b45b56d7 2022-11-27T20:52:05 explicit_bzero: implement via memset_explicit * lib/explicit_bzero.c (explicit_bzero): Simplify by just calling memset_explicit. * m4/explicit_bzero.m4 (gl_PREREQ_EXPLICIT_BZERO): Remove. All uses removed. * modules/explicit_bzero (Depends-on): Add memset_explicit.
Paul Eggert f6c259d6 2022-11-27T20:52:04 read-file: use memset_explicit * lib/read-file.c (fread_file, read_file): Use memset_explicit instead of explicit_bzero. * modules/read-file (Depends-on): Depend on memset_explicit instead of on explicit_bzero.
Paul Eggert e4603ee9 2022-11-27T20:52:04 memset_explicit: new module * doc/posix-functions/memset_explicit.texi, lib/memset_explicit.c: * m4/memset_explicit.m4, modules/memset_explicit: * modules/memset_explicit-tests, tests/test-memset_explicit.c: New files. * lib/string.in.h (memset_explict): New decl. * m4/string_h.m4 (gl_STRING_H, gl_STRING_H_REQUIRE_DEFAULTS) (gl_STRING_H_DEFAULTS): * modules/string (string.h): Support memset_explicit.
Bruno Haible f9588105 2022-11-20T11:09:19 posix_spawn tests: Fix compilation error (regression 2022-09-14). * modules/posix_spawn-tests (Makefile.am): Augment DEFS, to define EXEEXT.
Bruno Haible 816e66d4 2022-11-03T13:32:42 dynarray: Rename to glibc-internal/dynarray. * modules/glibc-internal/dynarray: Renamed from modules/dynarray. * modules/glibc-internal/dynarray-tests: Renamed from modules/dynarray-tests. * modules/regex (Depends-on): Update. * NEWS: Mention this change and the previous one.
Bruno Haible 9316c713 2022-11-03T13:30:04 scratch_buffer: Rename to glibc-internal/scratch_buffer. * modules/glibc-internal/scratch_buffer: Renamed from modules/scratch_buffer. * modules/glibc-internal/scratch_buffer-tests: Renamed from modules/scratch_buffer-tests. * modules/canonicalize (Depends-on): Update. * modules/canonicalize-lgpl (Depends-on): Likewise. * modules/glob (Depends-on): Likewise.
Paul Eggert ddfcbc95 2022-11-02T18:14:15 scratch_buffer: adjust to glibc changes Problem reported by Karl Berry in: https://lists.gnu.org/r/bug-gnulib/2022-11/msg00004.html * build-aux/depcomp, doc/make-stds.texi, lib/malloc/scratch_buffer.h: Autoupdate. * build-aux/install-reloc (func_create_wrapper): Omit removed file scratch_buffer_dupfree.c. * config/srclist.txt: Remove lib/malloc/scratch_buffer_dupfree.c * lib/canonicalize-lgpl.c: Merge changes from glibc through its commit ef0700004bf0dccf493a5e8e21f71d9e7972ea9f dated 2022-07-05 11:04:45 +0200. (__strdup) [!_LIBC]: New macro. (struct realpath_bufs): New type. (realpath_stk): Use it as the extra argument. All uses changed. No longer any need for noinline or GCC_BOGUS_WRETURN_LOCAL_ADDR. * lib/canonicalize.c (struct realpath_bufs) (canonicalize_filename_mode_stk): Likewise. * lib/malloc/scratch_buffer_dupfree.c: Remove, since it was removed in glibc. * lib/scratch_buffer.h (scratch_buffer_dupfree) [0]: (__libc_scratch_buffer_dupfree): Remove decls. * modules/relocatable-prog-wrapper (Files): * modules/scratch_buffer (Files, lib_SOURCES): Remove lib/malloc/scratch_buffer_dupfree.c.
Bruno Haible 1c3da1d3 2022-11-01T23:23:16 relocatable-script: Relax license. * modules/relocatable-script (License): Change to GPLv2+. * build-aux/relocatable.sh.in: Change copyright header to GPLv2+.
Bruno Haible 2118e7cf 2022-10-16T00:46:24 Update to Unicode 15.0.0. * lib/gen-uni-tables.c (is_property_default_ignorable_code_point): Exclude 0x13439..0x1343F. (get_lbp): Update such that unilbrk/lbrkprop.txt comes out as expected. * All generated files under lib/uni* and tests/uni*: Regenerate. * tests/uniname/NameAliases.txt: Update. * tests/uniname/UnicodeData.txt: Update. * tests/uninorm/NormalizationTest.txt: Update. * tests/unigbrk/GraphemeBreakTest.txt: Update. * tests/uniwbrk/WordBreakTest.txt: Update. * tests/uniwidth/test-uc_width2.sh: Expect width 0 for the characters 0x0ECE, 0x10EFD..0x10EFF, 0x11241, 0x11F00..0x11F01, 0x11F36..0x11F3A, 0x11F40, 0x11F42, 0x13439..0x13440, 0x13447..0x13455, 0x1E08F, 0x1E4EC..0x1E4EF. * All the affected modules: Bump required libunistring version.
Paul Eggert c72c8888 2022-10-10T18:45:03 tests: prefer stdckdint to intprops * modules/chown-tests, modules/fchownat-tests: * modules/fdutimensat-tests, modules/futimens-tests: * modules/lchown-tests, modules/stat-time-tests: * modules/utime-tests, modules/utimens-tests: * modules/utimensat-tests: (Depends on): Depend on stdckint, not intprops. * tests/nap.h: Include stdckdint.h, not intprops.h. All macro uses changed.
Paul Eggert fdc66e18 2022-10-10T18:26:05 stat-time: prefer stdckdint to intprops * lib/stat-time.h: Include stdckdint.h instead of intprops.h. (stat_time_normalize): Use ckd_add instead of INT_ADD_WRAPV. * modules/stat-time (Depends-on): Depend on stdckdint, not intprops.
Paul Eggert 788bb2cd 2022-10-10T18:17:02 xalloc: remove stray includes + dependencies These used to be needed, but are not needed now. * lib/xalloc.h: Do not include stdlib.h. [GNULIB_XALLOC]: Do not include "intprops.h". * lib/xmalloc.c: Include stdint.h here instead, for SIZE_MAX. * modules/xalloc-die, modules/xvasprintf (Depends-on): Remove stdint.
Daiki Ueno a65791fd 2022-09-26T13:48:42 largefile: fix detection of time_t size on mingw32 * modules/largefile (configure.ac-early): Ensure gl_YEAR2038_EARLY is invoked before gl_YEAR2038_BODY.
Bruno Haible 9187f1c1 2022-09-25T16:38:19 stdbool: Mostly revert last patch. * m4/c-bool.m4 (gl_C_BOOL): If stdbool.h does not exist, just err out. * modules/stdbool (Files): Remove m4/stdbool.m4.
Bruno Haible 2eb78f07 2022-09-24T23:42:44 stdbool: Don't #include a gnulib-generated stdbool.h from config.h. * m4/c-bool.m4 (gl_C_BOOL): Check for stdbool.h and for _Bool. If stdbool.h does not exist, don't #include <stdbool.h> but instead put the substitute code into config.h.
Bruno Haible c35dea1c 2022-09-17T21:31:53 time C++ tests: Fix link error on CentOS 5. * modules/time-c++-tests (Makefile.am): Link test-time-c++ against $(LIB_CLOCK_GETTIME).
Paul Eggert c9983d32 2022-09-14T13:40:37 stdbool: depend on C99 Record that stdbool depends on C99 these days. This matters only for ancient compilers that need special flags to support C99 features. * modules/stdbool (Depends-on): Add c99.
Paul Eggert 0804812c 2022-09-13T17:29:36 stdalign: alignas and alignof are C23 keywords * m4/stdalign.m4 (gl_STDALIGN_H): Check also whether alignas and alignof are keywords and so don’t need stdalign.h, and define HAVE_C_ALIGNASOF if so. If not, arrange for config.h to #define alignas and alignof by including <stdalign.h>. * modules/stdalign: No need to include <stdalign.h>. * tests/test-stdalign.c: Do not include stdalign.h.
Paul Eggert 28465e16 2022-09-13T17:29:36 assert-h: prefer to ‘verify’ Where it’s easy, prefer ‘static_assert’ to ‘verify’, as this simplifies the source by removing the need to include verify.h. Keep using ‘verify’ if verify.h is used for other reasons, or if code is shared with glibc. * lib/alignalloc.c, lib/argmatch.h, lib/c32is-impl.h: * lib/c32snrtombs.c, lib/c32srtombs.c, lib/exclude.c: * lib/filevercmp.c, lib/fma.c, lib/i-ring.h, lib/ino-map.c: * lib/localeinfo.c, lib/malloca.c, lib/mbrtoc32.c, lib/mbrtowc.c: * lib/mbsinit.c, lib/mbsnrtoc32s.c, lib/mbsrtoc32s.c: * lib/nanosleep.c, lib/parse-datetime.y, lib/pipe2.c: * lib/rawmemchr.c, lib/relocwrapper.c, lib/sleep.c: * lib/stat-w32.c, lib/strerror.c, lib/strtoimax.c: * lib/utimecmp.c, lib/vasnprintf.c, tests/test-alignof.c: * tests/test-intprops.c, tests/test-libgmp.c: * tests/test-limits-h.c, tests/test-locale.c: * tests/test-pthread.c, tests/test-round2.c: * tests/test-stdalign.c, tests/test-stddef.c, tests/test-stdio.c: * tests/test-stdlib.c, tests/test-string.c, tests/test-sys_stat.c: * tests/test-time.c, tests/test-uchar.c, tests/test-unistd.c: * tests/test-wchar.c: Prefer static_assert to verify, and stop including verify.h. * lib/stat.c: Don’t include verify.h (this include was unnecessary). * modules/alignalloc, modules/alignof-tests, modules/argmatch: * modules/c-vasnprintf, modules/c32isalnum, modules/c32isalpha: * modules/c32isblank, modules/c32iscntrl, modules/c32isdigit: * modules/c32isgraph, modules/c32islower, modules/c32isprint: * modules/c32ispunct, modules/c32isspace, modules/c32isupper: * modules/c32isxdigit, modules/c32snrtombs, modules/c32srtombs: * modules/exclude, modules/filevercmp, modules/fma, modules/fmaf: * modules/fmal, modules/fstat, modules/i-ring, modules/ino-map: * modules/intprops-tests, modules/libgmp-tests: * modules/limits-h-tests, modules/locale-tests, modules/malloca: * modules/mbrtoc32, modules/mbrtowc, modules/mbsinit: * modules/mbsnrtoc32s, modules/mbsrtoc32s, modules/nanosleep: * modules/parse-datetime, modules/pipe2, modules/pthread-h-tests: * modules/rawmemchr, modules/relocatable-prog-wrapper: * modules/round-tests, modules/roundf-tests, modules/sleep: * modules/stat, modules/stdalign-tests, modules/stdckdint-tests: * modules/stddef-tests, modules/stdio-tests, modules/stdlib-tests: * modules/strerror, modules/string-tests, modules/strtoimax: * modules/strtoumax, modules/sys_stat-tests, modules/time-tests: * modules/uchar-tests, modules/unistd-tests: * modules/unistdio/u16-u16-vasnprintf: * modules/unistdio/u16-vasnprintf: * modules/unistdio/u32-u32-vasnprintf: * modules/unistdio/u32-vasnprintf: * modules/unistdio/u8-u8-vasnprintf: * modules/unistdio/u8-vasnprintf, modules/unistdio/ulc-vasnprintf: * modules/utimecmp, modules/vasnprintf, modules/wchar-tests: Depend on assert-h, not verify.
Paul Eggert c504bec0 2022-09-13T17:29:35 assert-h: static_assert is a keyword in C23 * m4/assert_h.m4 (gl_ASSERT_H): Also test for static_assert keyword a la C23, and define HAVE_C_STATIC_ASSERT if so. If not, arrange for config.h to #define static_assert by including <assert.h>, and then do "#undef assert" so that the assert macro still needs an explicit include. This should be safe even on very old hosts, as assert.h has been re-includable for decades. * tests/tests-assert.c: New test. * modules/assert-h-tests (Files, Makefile.am): Add it.
Bruno Haible 8b21d104 2022-09-10T20:01:24 Reorganize C++ tests for stdbool and stdbool-c99. * tests/test-stdbool-c++.cc: Don't include <stdbool.h> if TEST_STDBOOL_H is not defined. Add a couple of simple tests, from test-stdbool.c. * tests/test-stdbool-c99-c++.cc: New file. * modules/stdbool-c99-c++-tests: New file, based on modules/stdbool-c++-tests. * modules/stdbool-c99-tests (Depends-on): Add stdbool-c99-c++-tests. Remove stdbool-c++-tests. * modules/stdbool-tests (Depends-on): Add stdbool-c++-tests.
Paul Eggert 2f858e5e 2022-09-10T11:41:32 Rely on new stdbool behavior Prefer the C23 style to the C99 style, since the stdbool module now supports C23. * lib/acl-internal.h, lib/acl.h, lib/argmatch.c, lib/argmatch.h: * lib/argp-help.c, lib/argv-iter.h, lib/asyncsafe-spin.c: * lib/backup-internal.h, lib/backupfile.c, lib/base32.h: * lib/base64.h, lib/basename-lgpl.c, lib/bitset/base.h: * lib/c-ctype.h, lib/c-strcasestr.c, lib/canonicalize-lgpl.c: * lib/canonicalize.c, lib/chdir-long.c, lib/chown.c: * lib/classpath.h, lib/clean-temp-private.h: * lib/clean-temp-simple.c, lib/clean-temp-simple.h: * lib/clean-temp.c, lib/clean-temp.h, lib/cloexec.h: * lib/close-stream.c, lib/closein.c, lib/closeout.c, lib/closeout.h: * lib/csharpcomp.h, lib/csharpexec.h, lib/cycle-check.c: * lib/cycle-check.h, lib/des.h, lib/dfa.h, lib/diffseq.h: * lib/dirname.h, lib/exclude.c, lib/exclude.h, lib/execute.c: * lib/execute.h, lib/execvpe.c, lib/fatal-signal.c, lib/fchdir.c: * lib/file-set.h, lib/filevercmp.c, lib/findprog-in.c: * lib/findprog.c, lib/findprog.h, lib/fma.c, lib/fnmatch.c: * lib/fopen.c, lib/freadable.h, lib/freading.h, lib/freopen-safer.c: * lib/fstrcmp.c, lib/fsusage.h, lib/fts.c, lib/fwritable.h: * lib/fwriteerror.c, lib/fwriting.h, lib/gen-uni-tables.c: * lib/getaddrinfo.c, lib/getcwd.c, lib/getloadavg.c: * lib/getndelim2.c, lib/getpass.c, lib/getrandom.c: * lib/git-merge-changelog.c, lib/gl_list.h, lib/gl_map.h: * lib/gl_omap.h, lib/gl_oset.h, lib/gl_set.h, lib/glob.c: * lib/glthread/cond.h, lib/hamt.h, lib/hard-locale.h: * lib/hash-triple.h, lib/hash.h, lib/human.h, lib/i-ring.h: * lib/isapipe.c, lib/javacomp.h, lib/javaexec.h, lib/javaversion.c: * lib/lchown.c, lib/localeinfo.h, lib/localename.c: * lib/long-options.h, lib/malloc/dynarray.h, lib/mbchar.h: * lib/mbfile.h, lib/mbiter.h, lib/mbmemcasecoll.h, lib/mbscasestr.c: * lib/mbsstr.c, lib/mbuiter.h, lib/mkdir-p.h, lib/modechange.h: * lib/mountlist.h, lib/nanosleep.c, lib/nonblocking.h: * lib/nstrftime.c, lib/openat.c, lib/openat.h, lib/os2-spawn.c: * lib/parse-datetime.h, lib/pipe-filter-aux.c, lib/pipe-filter-gi.c: * lib/pipe-filter-ii.c, lib/pipe-filter.h, lib/posixtm.h: * lib/priv-set.c, lib/progreloc.c, lib/propername.c: * lib/pthread-spin.c, lib/quotearg.c, lib/readtokens.c: * lib/readtokens0.h, lib/readutmp.c, lib/regex-quote.h: * lib/regex_internal.h, lib/relocwrapper.c, lib/rename.c: * lib/renameatu.c, lib/rpmatch.c, lib/same.c, lib/same.h: * lib/save-cwd.c, lib/savewd.c, lib/savewd.h, lib/spawn-pipe.h: * lib/spawni.c, lib/stack.h, lib/stat.c, lib/stdckdint.in.h: * lib/strcasestr.c, lib/strfmon_l.c, lib/striconveh.c: * lib/striconveha.h, lib/string-buffer.h, lib/strptime.c: * lib/strstr.c, lib/strtod.c, lib/supersede.h, lib/system-quote.c: * lib/tempname.c, lib/term-style-control.c: * lib/term-style-control.h, lib/textstyle.in.h, lib/time_rz.c: * lib/tmpdir.c, lib/tmpdir.h, lib/tmpfile.c, lib/unicase.in.h: * lib/unicase/caseprop.h, lib/unicase/invariant.h: * lib/unicase/u16-casemap.c, lib/unicase/u16-ct-totitle.c: * lib/unicase/u16-is-invariant.c, lib/unicase/u32-casemap.c: * lib/unicase/u32-ct-totitle.c, lib/unicase/u32-is-invariant.c: * lib/unicase/u8-casemap.c, lib/unicase/u8-ct-totitle.c: * lib/unicase/u8-is-invariant.c, lib/unictype.in.h: * lib/unigbrk.in.h, lib/unigbrk/u16-grapheme-breaks.c: * lib/unigbrk/u32-grapheme-breaks.c: * lib/unigbrk/u8-grapheme-breaks.c: * lib/unigbrk/uc-grapheme-breaks.c, lib/uniname/uniname.c: * lib/unistr.in.h, lib/unlinkdir.h, lib/userspec.h, lib/utime.c: * lib/utimecmp.c, lib/utimens.c, lib/wait-process.h: * lib/windows-cond.c, lib/windows-spawn.c, lib/windows-spawn.h: * lib/windows-timedrwlock.c, lib/write-any-file.h, lib/xbinary-io.c: * lib/xstrtod.h, lib/yesno.h: * tests/nap.h, tests/qemu.h, tests/test-areadlink-with-size.c: * tests/test-areadlink.c, tests/test-areadlinkat-with-size.c: * tests/test-areadlinkat.c, tests/test-base32.c: * tests/test-base64.c, tests/test-ceil2.c, tests/test-ceilf2.c: * tests/test-chown.c, tests/test-dirname.c, tests/test-dup-safer.c: * tests/test-dup3.c, tests/test-exclude.c: * tests/test-execute-child.c, tests/test-execute-main.c: * tests/test-execute-script.c, tests/test-explicit_bzero.c: * tests/test-fchownat.c, tests/test-fcntl-safer.c: * tests/test-fcntl.c, tests/test-fdutimensat.c: * tests/test-filenamecat.c, tests/test-floor2.c: * tests/test-floorf2.c, tests/test-fstatat.c, tests/test-fstrcmp.c: * tests/test-futimens.c, tests/test-getlogin.h, tests/test-getopt.h: * tests/test-hard-locale.c, tests/test-hash.c: * tests/test-idpriv-drop.c, tests/test-idpriv-droptemp.c: * tests/test-immutable.c, tests/test-intprops.c: * tests/test-lchown.c, tests/test-link.c, tests/test-linkat.c: * tests/test-lstat.c, tests/test-mbmemcasecmp.c: * tests/test-mbmemcasecoll.c, tests/test-mkdir.c: * tests/test-mkdirat.c, tests/test-mkfifo.c, tests/test-mkfifoat.c: * tests/test-mknod.c, tests/test-nonblocking-pipe-child.c: * tests/test-nonblocking-pipe-main.c: * tests/test-nonblocking-socket-child.c: * tests/test-nonblocking-socket-main.c, tests/test-open.c: * tests/test-openat.c, tests/test-pipe.c, tests/test-pipe2.c: * tests/test-poll.c, tests/test-posix_spawn-chdir.c: * tests/test-posix_spawn-dup2-stdin.c: * tests/test-posix_spawn-dup2-stdout.c: * tests/test-posix_spawn-fchdir.c, tests/test-posix_spawn-open1.c: * tests/test-posix_spawn-open2.c, tests/test-quotearg-simple.c: * tests/test-quotearg.c, tests/test-readlink.c: * tests/test-readlinkat.c, tests/test-readtokens.c: * tests/test-rename.c, tests/test-renameat.c: * tests/test-renameatu.c, tests/test-rmdir.c, tests/test-round2.c: * tests/test-select.h, tests/test-spawn-pipe-child.c: * tests/test-spawn-pipe-main.c, tests/test-spawn-pipe-script.c: * tests/test-stack.c, tests/test-stat.c, tests/test-supersede.c: * tests/test-symlink.c, tests/test-symlinkat.c: * tests/test-system-quote-main.c: * tests/test-term-style-control-hello.c: * tests/test-term-style-control-yes.c, tests/test-timespec.c: * tests/test-trunc2.c, tests/test-truncf2.c, tests/test-unlink.c: * tests/test-unlinkat.c, tests/test-userspec.c, tests/test-utime.c: * tests/test-utimens.c, tests/test-utimensat.c: * tests/unictype/test-categ_byname.c: * tests/unigbrk/test-uc-is-grapheme-break.c: Don’t include stdbool.h. * modules/acl, modules/xgetcwd: Don’t depend on stdbool, as these modules don’t use bool. * modules/argp, modules/bitset, modules/diffseq, modules/file-has-acl: * modules/gen-uni-tables, modules/getrandom: * modules/hash-triple-simple, modules/posix_spawn-internal: * modules/strcasestr, modules/supersede, modules/system-quote: * modules/uniconv/base, modules/uniname/uniname, modules/utime: * modules/windows-timedrwlock: Depend on stdbool, as these modules use bool.
Paul Eggert f5ad0b6b 2022-09-10T11:41:31 stdbool: upgrade from C99 to C23 Change the stdbool module so that it now emulates C23. The module now assumes C99. The old module (which assumes C89 and emulates C99) is still available as stdbool-c99, but is deprecated. * tests/test-stdbool.c [TEST_STDBOOL_H]: Do not include stdbool.h. (WORKING_BOOL): Depend on HAVE_C_BOOL, not __STDC_VERSION__. * m4/c-bool.m4, modules/c-bool, modules/c-bool-tests: * tests/test-c-bool.c: New files.
Bruno Haible a1ee5c78 2022-09-09T14:26:54 posix_spawn_file_actions_addclose tests: Fix mistake from 2022-09-07. * modules/posix_spawn_file_actions_addclose-tests (Files): Add m4/musl.m4.
Bruno Haible 891934d4 2022-09-07T23:33:31 posix_spawn_file_actions_addclose tests: Avoid test failure on musl. Reported by Valery Ushakov <uwe@stderr.spb.ru> in <https://lists.gnu.org/archive/html/bug-gnulib/2022-09/msg00041.html>. * modules/posix_spawn_file_actions_addclose-tests (configure.ac): Invoke gl_MUSL_LIBC. * tests/test-posix_spawn_file_actions_addclose.c (main): Skip one of the tests on musl libc.
Bruno Haible 0f8872f1 2022-09-05T01:53:28 Fix various test link errors on MSVC. * modules/crypto/gc-arcfour-tests (Makefile.am): Link test-gc-arcfour with $(LIB_GETRANDOM). * modules/crypto/gc-arctwo-tests (Makefile.am): Link test-gc-arctwo with $(LIB_GETRANDOM). * modules/crypto/gc-des-tests (Makefile.am): Link test-gc-des with $(LIB_GETRANDOM). * modules/crypto/gc-hmac-md5-tests (Makefile.am): Link test-gc-hmac-md5 with $(LIB_GETRANDOM). * modules/crypto/gc-hmac-sha1-tests (Makefile.am): Link test-gc-hmac-sha1 with $(LIB_GETRANDOM). * modules/crypto/gc-hmac-sha256-tests (Makefile.am): Link test-gc-hmac-sha256 with $(LIB_GETRANDOM). * modules/crypto/gc-hmac-sha512-tests (Makefile.am): Link test-gc-hmac-sha512 with $(LIB_GETRANDOM). * modules/crypto/gc-md2-tests (Makefile.am): Link test-gc-md2 with $(LIB_GETRANDOM). * modules/crypto/gc-md4-tests (Makefile.am): Link test-gc-md4 with $(LIB_GETRANDOM). * modules/crypto/gc-md5-tests (Makefile.am): Link test-gc-md5 with $(LIB_GETRANDOM). * modules/crypto/gc-pbkdf2-tests (Makefile.am): Link test-gc-pbkdf2 with $(LIB_GETRANDOM). * modules/crypto/gc-pbkdf2-sha1-tests (Makefile.am): Link test-gc-pbkdf2-sha1 with $(LIB_GETRANDOM). * modules/crypto/gc-rijndael-tests (Makefile.am): Link test-gc-rijndael with $(LIB_GETRANDOM). * modules/crypto/gc-sha1-tests (Makefile.am): Link test-gc-sha1 with $(LIB_GETRANDOM). * modules/crypto/gc-sha256-tests (Makefile.am): Link test-gc-sha256 with $(LIB_GETRANDOM). * modules/crypto/gc-sha512-tests (Makefile.am): Link test-gc-sha512 with $(LIB_GETRANDOM). * modules/crypto/gc-sm3-tests (Makefile.am): Link test-gc-sm3 with $(LIB_GETRANDOM). * modules/sys_stat-c++-tests (Makefile.am): Link test-sys_stat-c++ with $(LIB_GETRANDOM). * modules/unistd-c++-tests (Makefile.am): Link test-unistd-c++ with $(LIB_GETRANDOM).
Bruno Haible aa92cf3e 2022-09-05T00:02:44 glob tests: Fix link error on mingw. * modules/glob-tests (Makefile.am): Link test-glob with $(LIBINTL).
Bruno Haible 3951d08d 2022-09-04T01:14:18 Fix compilation errors of C++ tests on Solaris 10 with Sun C++. * modules/string-c++-tests (Makefile.am): Link test-string-c++ with $(LIBUNISTRING). * modules/wchar-c++-tests (Makefile.am): Link test-wchar-c++ with $(LIBUNISTRING).
Bruno Haible 753806a3 2022-09-03T21:13:35 sysexits: Add C++ tests. * tests/test-sysexits-c++.cc: New file. * modules/sysexits-c++-tests: New file. * modules/sysexits-tests (Depends-on): Add sysexits-c++-tests.
Bruno Haible 0839c678 2022-09-03T21:10:07 sys_utsname: Add C++ tests. * tests/test-sys_utsname-c++.cc: New file. * modules/sys_utsname-c++-tests: New file. * modules/sys_utsname-tests (Depends-on): Add sys_utsname-c++-tests.
Bruno Haible 4e99bbd6 2022-09-03T21:07:36 sys_uio: Add C++ tests. * tests/test-sys_uio-c++.cc: New file. * modules/sys_uio-c++-tests: New file. * modules/sys_uio-tests (Depends-on): Add sys_uio-c++-tests.
Bruno Haible 7a5d8aea 2022-09-03T21:02:30 sys_times: Add C++ tests. * tests/test-sys_times-c++.cc: New file. * modules/sys_times-c++-tests: New file. * modules/sys_times-tests (Depends-on): Add sys_times-c++-tests.
Bruno Haible d5046bf2 2022-09-03T20:58:32 sys_file: Add C++ tests. * tests/test-sys_file-c++.cc: New file. * modules/sys_file-c++-tests: New file. * modules/sys_file-tests (Depends-on): Add sys_file-c++-tests.
Bruno Haible eec1cf96 2022-09-03T20:48:58 stdckdint: Add C++ tests. * tests/test-stdckdint-c++.cc: New file. * modules/stdckdint-c++-tests: New file. * modules/stdckdint-tests (Depends-on): Add stdckdint-c++-tests.
Bruno Haible 37d478a8 2022-09-03T20:42:51 stdalign: Add C++ tests. * tests/test-stdalign-c++.cc: New file. * modules/stdalign-c++-tests: New file. * modules/stdalign-tests (Depends-on): Add stdalign-c++-tests.
Bruno Haible 263beff3 2022-09-03T20:39:11 sched: Add C++ tests. * tests/test-sched-c++.cc: New file. * modules/sched-c++-tests: New file. * modules/sched-tests (Depends-on): Add sched-c++-tests.
Bruno Haible c6dc4ec6 2022-09-03T20:33:32 netinet_in: Add C++ tests. * tests/test-netinet_in-c++.cc: New file. * modules/netinet_in-c++-tests: New file. * modules/netinet_in-tests (Depends-on): Add netinet_in-c++-tests.
Bruno Haible 9873e7b5 2022-09-03T20:21:37 net_if: Add C++ tests. * tests/test-net_if-c++.cc: New file. * modules/net_if-c++-tests: New file. * modules/net_if-tests (Depends-on): Add net_if-c++-tests. * doc/posix-headers/net_if.texi: Fix documentation.
Paul Eggert 9ce573cd 2022-08-22T12:07:27 tempname: fix multithreading, ASLR leak etc. Fix problems with tempname and multithreading, entropy loss, and missing clock data (this last on non-GNU platforms). See analysis by Bruno Haible in: https://bugs.gnu.org/57129#149 While looking into this, I noticed that tempname can leak info derived from ASLR into publicly-visible file names, which is a no-no. Fix that too. * lib/tempname.c: Don't include stdalign.h. (HAS_CLOCK_ENTROPY): Remove. (mix_random_values): New function. (random_bits): Use it. Args are now new value address and old value, and this function now returns a success indicator. Omit old USE_GETRANDOM argument: always try getrandom now, as there is no good reason not to now that GRND_NONBLOCK is used. Caller changed. Use CLOCK_REALTIME for for ersatz entropy, as CLOCK_MONOTONIC doesn't work on some platforms. Also, mix in ersatz entropy from tv_sec and from clock (). (try_tempname_len): Do not mix in ASLR-based entropy, as the result is published to the world and ASLR should be private. Do not try to use a static var as that has issues if multithreaded. Instead, simply generate new random bits. Worry about bias only with high-quality random bits. * modules/tempname (Depends-on): Do not depend on stdalign.
Bruno Haible aa52cadc 2022-08-16T21:50:11 tempname: Add more tests. Based on scenario described by Eli Zaretskii in <https://lists.gnu.org/archive/html/bug-gnulib/2022-08/msg00043.html>. * tests/test-tempname.c (main): Add another test. * modules/tempname-tests (Status): Mark the test as unportable.
Bruno Haible 8095be58 2022-08-16T15:27:50 tempname: Add tests. * tests/test-tempname.c: New file. * modules/tempname-tests: New file.