summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Make autogen a shell function tooPaul Eggert2022-12-274-450/+912
| | | | | | | | | | This does not change behavior. It is helpful for future changes. * top/autogen.sh: Call autogen to do the actual work. (usage, version_controlled_file, gitignore_entries, insert_if_absent): (insert_vc_ignore, symlink_to_dir): Move to top/bootstrap-funclib.sh. * top/bootstrap-funclib.sh (autogen_usage): Rename from ‘usage’. (autogen): New function, containing the top level of the old top/autogen.sh.
* Move scriptversion= lines up in scriptsPaul Eggert2022-12-275-12/+12
| | | | By default they need to be in the first 8 lines to be updated.
* Fix compilation errors in C++ mode on Solaris 11 OpenIndiana.Bruno Haible2022-12-274-4/+34
| | | | | | | | * m4/gnulib-common.m4 (gl_COMMON_BODY): In _GL_ATTRIBUTE_DEALLOC_FREE, with GNU C++, cast the 'free' function. * lib/string.in.h (_GL_ATTRIBUTE_DEALLOC_FREE): With GNU C++, cast the 'free' function. * lib/wchar.in.h (_GL_ATTRIBUTE_DEALLOC_FREE): Likewise.
* stdnoreturn: Mark as deprecated, not obsolete. (Regression 2022-12-24.)Bruno Haible2022-12-273-5/+10
| | | | | | * modules/stdnoreturn (Status): Remove. (Notice): Say that it is deprecated, not obsolete. * doc/noreturn.texi: Fix a typo.
* stdbool-c99: fix typoPaul Eggert2022-12-262-6/+13
| | | | | | Reported against Autoconf by Todd C. Miller in: https://lists.gnu.org/r/autoconf/2022-12/msg00001.html * m4/stdbool.m4 (AC_CHECK_HEADER_STDBOOL): Sync from Autoconf master.
* ctime: Mark as deprecated, not obsolete. (Regression 2022-12-21.)Bruno Haible2022-12-262-4/+8
| | | | | * modules/ctime (Status): Remove. (Notice): Say that it is deprecated, not obsolete.
* largefile: sync from Autoconf masterPaul Eggert2022-12-256-209/+287
| | | | | | | | | | | | | | | | | | * 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.
* extensions: enable some C23 Annex F functionsPaul Eggert2022-12-242-3/+13
| | | | | | * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Also define __STDC_WANT_IEC_60559_EXT__, for C23 Annex F functions like totalorder. This syncs from Autoconf master.
* stdnoreturn: deprecatePaul Eggert2022-12-246-20/+38
| | | | | | | 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.
* doc: C2x → C23Paul Eggert2022-12-246-10/+10
|
* file-has-acl: improve recent NFSv4 supportPaul Eggert2022-12-235-136/+138
| | | | | | | | | | | | | | | | | | | | | | | | This fixes a link failure with emacsclient on GNU/Linux. This program wants file_has_acl but none of the other ACL primitives, so it doesn’t link acl-internal.o; this way it doesn’t need to link with -lacl. While I was at it I reviewed the recent changes, fixed some unlikely overflow bugs, and adjusted to GNU style. * doc/acl-nfsv4.txt: Remove. Its contents are now in a comment in lib/file-has-acl.c. * lib/acl-internal.c, lib/acl-internal.h: Move recent changes relating to acl_nfs4_nontrivial to lib/file-has-acl.c, so that there is no trouble linking programs that need only file_has_acl. * lib/file-has-acl.c (acl_nfs4_nontrivial): Move here from lib/acl-internal.c, so that we needn't link -lacl in programs that want only file_has_acl, such as emacsclient. Do not assume a char buffer is aligned for uint32_t. Check more carefully for buffer read overrun. Allow up to 6 ACEs, since other code does; but check that they’re distinct. Avoid integer overflow. Use memcmp rather than strncmp to compare memory blocks. (file_has_acl): Preserve initial errno instead of setting to 0. Allocate a bit more room for trivial ACL buffer. Use EINVAL for botchedk NFSv4 ACLs (which shouldn’t happen).
* posix_spawnp-tests: fix filename typoPaul Eggert2022-12-222-1/+10
| | | | | | | | Problem reported for GNU m4 by Mitchell Dorrell in: https://lists.gnu.org/r/bug-m4/2022-12/msg00000.html * tests/test-posix_spawnp-script.c (DATA_FILENAME): Fix typo in file name that caused race with test-posix_spawn-script.c.
* file-has-acl: Basic support for checking NFSv4 ACLs in Linux.Ondrej Valousek2022-12-225-0/+151
| | | | | | | | | * lib/acl-internal.h (acl_nfs4_nontrivial): New declaration. * lib/acl-internal.c (acl_nfs4_nontrivial): New function. * lib/file-has-acl.c: Include <arpa/inet.h>. (XATTR_NAME_NFSV4_ACL, TRIVIAL_NFS4_ACL_MAX_LENGTH): New macros. (file_has_acl): Test for NFSv4 ACLs. * doc/acl-nfsv4.txt: New file.
* Port __has_c_attribute to strict C23Paul Eggert2022-12-212-23/+40
| | | | | | | * m4/gnulib-common.m4 (_GL_HAS_C_ATTRIBUTE): Remove, as C23 says behavior is undefined if __has_c_attribute appears anywhere other than at the top level of an #if or #ifdef. All uses replaced by wordier invocations of __has_c_attribute.
* asctime, ctime: deprecatePaul Eggert2022-12-216-0/+26
| | | | | | | | 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.
* autoupdateKarl Berry2022-12-201-75/+102
|
* memset_explicit: port to older MS-WindowsPaul Eggert2022-12-172-9/+10
| | | | | | | | | * lib/memset_explicit.c (memset_explicit): Remove special case for C==0 and MS-Windows. The code isn’t needed for correctness and it’s more trouble than it’s worth as it prevents this module from being used with GNU Emacs, which wants to port to MS-Windows versions so old that they lack SecureZeroMemory.
* Update users.txt.Bruno Haible2022-12-102-0/+6
| | | | * users.txt: Add lbzip2.
* fts: make debug version compilable againPaul Eggert2022-12-092-22/+55
| | | | | | | | | | | | | | | | | | This fixes things in what I hope is a better way than the fd-only approach proposed by Kamil Dudka here: https://lists.gnu.org/archive/html/bug-gnulib/2018-03/msg00079.html https://lists.gnu.org/archive/html/bug-gnulib/2018-03/msg00080.html * lib/fts.c (GNULIB_FTS_DEBUG): Rename from FTS_DEBUG, to avoid collision with coreutils symbol. Do not include <stdint.h> (not needed, since we include <stdint.h>) or "getcwdat.h" (no longer exists). (fd_ring_check, fd_ring_print): Add forward decls. (struct devino): New type. (PRINT_DEVINO): New macro. (getdevino): New static function. (fd_ring_print): Do nothing if not debugging. (fd_ring_print, fd_ring_check): Use getdevino instead of getcwdat. The output isn’t as good, but at least it compiles and runs.
* verify: update __STDC_VERSION__ as per C23Paul Eggert2022-12-072-1/+10
| | | | | | | | This shouldn’t affect anything; it’s merely a refactoring. * lib/verify.h (_GL_HAVE__STATIC_ASSERT1): Require __STDC_VERSION__ to be at least 202311, instead of at least 202000. The latter number was put in in 2019 because we didn’t yet know C23’s __STDC_VERSION__ value.
* fts: fix race + mishandling of fstatat failurePaul Eggert2022-12-062-8/+34
| | | | | | | | | | | I hope this fixes a Luke Dashjr coreutils bug report about ext4 ramdisks; see “9.1: du Aborted (corrupt filesystem)” <https://debbugs.gnu.org/59821>. * lib/fts.c (fts_build): Fix two bugs. First, fts_stat was being called without checking its return value, causing a later abort. Second, there was a race between opening a directory and statting it, fixed by using fstat on the file descriptor rather than fstatat on the directory name.
* fts: omit goto break_without_closedirPaul Eggert2022-12-062-6/+5
| | | | * lib/fts.c (fts_build): Refactor to omit goto.
* fts: clarify ISSETPaul Eggert2022-12-062-1/+6
| | | | * lib/fts.c (ISSET): Refactor to clarify boolean usage.
* argp: Correct documentation.Bruno Haible2022-12-0611-40/+46
| | | | | | Reported by José E. Marchesi <jemarch@gnu.org>. * doc/glibc-functions/argp_*.texi: Mention the 'argp' module.
* doc: poll: document poll of special files not supported on macOSPádraig Brady2022-12-023-2/+9
| | | | | | * doc/posix-functions/poll.texi: Reinstate (updated) macOS info, removed in recent cleanup re removal of support for Mac OS X <= 10.4. * m4/poll.m4: Update macOS to latest tested version.
* add new ronna and quetta SI prefixesPádraig Brady2022-11-293-2/+21
| | | | | | | | As voted for in Nov 2022 by the BIPM: https://www.bipm.org/en/cgpm-2022/resolution-3 * lib/human.c: Add Ronna (10^27), and Quetta (10^30) to the prefix list. * lib/xstrtol.c (__xstrtol): Likewise.
* Update users.txt.Bruno Haible2022-11-292-1/+27
| | | | | | * users.txt: Add 4ti2, ale, amanda, binfmt-support, cgminer, collectd, complexity, dc3dd, dico, enchant-2, fuse-overlayfs, gsequencer, idutils, libu2f-host, licenseutils, mmv, pacemaker, trader, ttfautohint.
* explicit_bzero: implement via memset_explicitPaul Eggert2022-11-284-67/+19
| | | | | | | | * 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.
* explicit_bzero: memset_explicit is standardPaul Eggert2022-11-282-0/+8
| | | | | * doc/glibc-functions/explicit_bzero.texi: Say that memset_explicit is preferred in new code.
* read-file: use memset_explicitPaul Eggert2022-11-283-7/+13
| | | | | | | * 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.
* memset_explicit: new modulePaul Eggert2022-11-2812-2/+420
| | | | | | | | | | | | * 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.
* explicit_bzero: add poisonPaul Eggert2022-11-272-1/+8
| | | | | * m4/string_h.m4 (gl_STRING_H): Poison explicit_bzero. This was inadvertently omitted when explicit_bzero was added.
* bootstrap: Fix --help output.Arsen Arsenović2022-11-272-5/+6
| | | | * build-aux/bootstrap (usage): Regenerate.
* explicit_bzero: work with gcc -std=c99Paul Eggert2022-11-272-1/+7
| | | | | * lib/explicit_bzero.c (explicit_bzero) [__GNUC__ && !__clang__]: Use __asm__ instead of asm.
* Prefer "kill -INT" to killing with a numberPaul Eggert2022-11-265-7/+28
| | | | | | | | | * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): * tests/test-login_tty.c (main): * tests/test-pthread_sigmask1.c (main): * tests/test-sigprocmask.c (main): Prefer "kill -INT" to "kill -N" where N is SIGINT’s value. Don’t assume pid_t fits in int.
* In 'trap' commands, prefer symbolic to numeric signal names.Bruno Haible2022-11-2635-60/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reported by Mike Fulton <fultonm@ca.ibm.com> in <https://lists.gnu.org/archive/html/bug-gnulib/2022-11/msg00130.html>. * gnulib-tool: Use symbolic signal names. * posix-modules: Likewise. * MODULES.html.sh: Likewise. * build-aux/bootstrap (prepare_GNULIB_SRCDIR): Likewise. * build-aux/csharpcomp.sh.in: Likewise. * build-aux/gnu-web-doc-update: Likewise. * top/autogen.sh: Likewise. * top/bootstrap-funclib.sh: Likewise. * top/gitsub.sh: Likewise. * lib/t-idcache: Likewise. * tests/havelib/rpath-1: Likewise. * tests/havelib/rpath-2_a: Likewise. * tests/havelib/rpath-2_b: Likewise. * tests/havelib/rpath-3_a: Likewise. * tests/havelib/rpath-3_b: Likewise. * tests/init.sh: Likewise. * tests/test-binary-io.sh: Likewise. * tests/test-c-stack.sh: Likewise. * tests/test-c-stack2.sh: Likewise. * tests/test-dprintf-posix.sh: Likewise. * tests/test-fpending.sh: Likewise. * tests/test-fprintf-posix.sh: Likewise. * tests/test-lseek.sh: Likewise. * tests/test-printf-posix.sh: Likewise. * tests/test-select-in.sh: Likewise. * tests/test-select-out.sh: Likewise. * tests/test-sigpipe.sh: Likewise. * tests/test-tsearch.sh: Likewise. * tests/test-update-copyright.sh: Likewise. * tests/test-vdprintf-posix.sh: Likewise. * tests/test-vfprintf-posix.sh: Likewise. * tests/test-vprintf-posix.sh: Likewise. * tests/test-xprintf-posix.sh: Likewise. * tests/uniwidth/test-uc_width2.sh: Likewise.
* posix_spawn-internal: Avoid warning on macOS.Bruno Haible2022-11-202-0/+14
| | | | | | | Suggested by Minsoo Choo in <https://lists.gnu.org/archive/html/bug-gnulib/2022-11/msg00114.html>. * lib/spawni.c: Ignore -Wdeprecated-declarations warnings.
* posix_spawn tests: Fix compilation error (regression 2022-09-14).Bruno Haible2022-11-202-0/+7
| | | | | * modules/posix_spawn-tests (Makefile.am): Augment DEFS, to define EXEEXT.
* parse-datetime: improve doc formatting, timelinessPaul Eggert2022-11-142-39/+46
| | | | | | * doc/parse-datetime.texi: Use @samp and @code in menus for consistenty with how the Coreutils manual will do this sort of thing. Update examples to this year.
* autoupdatePaul Eggert2022-11-131-2/+2
|
* autoupdateKarl Berry2022-11-131-11/+14
|
* vc-list-files-tests: Avoid OpenPGP private key operations.Simon Josefsson2022-11-132-0/+13
| | | | * tests/test-vc-list-files-git.sh (GIT_CONFIG_GLOBAL): Set it to /dev/null.
* autoupdateKarl Berry2022-11-081-36/+50
|
* autoupdateKarl Berry2022-11-061-2/+2
|
* dynarray: Rename to glibc-internal/dynarray.Bruno Haible2022-11-035-21/+34
| | | | | | | | * 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.
* scratch_buffer: Rename to glibc-internal/scratch_buffer.Bruno Haible2022-11-036-39/+50
| | | | | | | | | | * 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.
* doc: mention macOS war on sprintfPaul Eggert2022-11-032-0/+6
| | | | | * doc/posix-functions/sprintf.texi, doc/posix-functions/vsnprintf.texi: Mention that these functions are deprecated.
* scratch_buffer: Document last change.Bruno Haible2022-11-032-0/+7
| | | | * NEWS: Mention last change.
* scratch_buffer: adjust to glibc changesPaul Eggert2022-11-0212-194/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* relocatable-script: Relax license.Bruno Haible2022-11-013-6/+12
| | | | | * modules/relocatable-script (License): Change to GPLv2+. * build-aux/relocatable.sh.in: Change copyright header to GPLv2+.