MODULES.html.sh


Log

Author Commit Date CI Message
Paul Eggert f4a8964d 2024-11-05T16:06:11 doc: remove duplicate realloc-posix listing * MODULES.html.sh: Remove duplicate entry for realloc-posix.
Bruno Haible 6659e016 2024-10-28T00:18:35 realloc-gnu: Replace module with an alias to realloc-posix. * tests/test-realloc-posix.c: Renamed from tests/test-realloc-gnu.c. Add more tests, not yet activated. * modules/realloc-posix-tests: Renamed from modules/realloc-gnu-tests. Test test-realloc-posix instead of test-realloc-gnu. * modules/realloc-gnu: Mark as a deprecated alias of 'realloc-posix'. * lib/stdlib.in.h (realloc): Ignore GNULIB_REALLOC_GNU. * modules/stdlib (Makefile.am): Don't substitute GNULIB_REALLOC_GNU, REPLACE_REALLOC_FOR_REALLOC_GNU. * m4/stdlib_h.m4 (gl_STDLIB_H_REQUIRE_DEFAULTS): Don't initialize GNULIB_REALLOC_GNU. (gl_STDLIB_H_DEFAULTS): Don't initialize REPLACE_REALLOC_FOR_REALLOC_GNU. * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): Remove macro. * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): Update comment. * doc/posix-functions/realloc.texi: Remove description of module 'realloc-gnu'. * MODULES.html.sh (Memory management functions <stdlib.h>): Remove realloc-gnu. Add realloc-posix.
Bruno Haible 8fc19467 2024-09-13T15:25:05 Implement a new property, added by Unicode 16.0.0. * lib/gen-uni-tables.c (is_property_modifier_combining_mark): New function. (output_properties): Output also the property modifier_combining_mark. * lib/unictype.in.h (UC_PROPERTY_MODIFIER_COMBINING_MARK, uc_is_property_modifier_combining_mark): New declarations. * m4/unictype_h.m4 (gl_UNICTYPE_H_REQUIRE_DEFAULTS): Initialize GNULIB_UNICTYPE_PROPERTY_MODIFIER_COMBINING_MARK. * modules/unictype/base (Makefile.am): Substitute GNULIB_UNICTYPE_PROPERTY_MODIFIER_COMBINING_MARK. * lib/unictype/pr_modifier_combining_mark.c: New file. * lib/unictype/pr_modifier_combining_mark.h: New generated file. * modules/unictype/property-modifier-combining-mark: New file. * tests/unictype/test-pr_modifier_combining_mark.c: New generated file. * modules/unictype/property-modifier-combining-mark-tests: New file. * lib/unictype/pr_byname.gperf: Add modifier_combining_mark. * lib/unictype/pr_byname.c (UC_PROPERTY_INDEX_MODIFIER_COMBINING_MARK): New enum item. (uc_property_byname): Handle it. * modules/unictype/property-byname (Depends-on): Add unictype/property-modifier-combining-mark. * modules/unictype/property-all (Depends-on): Likewise. * MODULES.html.sh (func_all_modules): Add unictype/property-modifier-combining-mark.
Marc Nieper-Wißkirchen 44015609 2024-08-29T11:10:21 libgmp-mpq: New module. * MODULES.html.sh: Mention libgmp-mpz and libgmp-mpq. * config/srclist.txt: Mention mini-mpq.c and mini-mpq.h. * lib/mini-mpq-gnulib.c: New file. * lib/mini-mpq.c: New upstream source file from https://gmplib.org/repo/gmp/raw-file/tip/mini-gmp/mini-mpq.c. * lib/mini-mpq.h: New upstream source file from https://gmplib.org/repo/gmp/raw-file/tip/mini-gmp/mini-mpq.h. * modules/libgmp-mpq: New module. * modules/libgmp-mpz: Conditionally include mini-mpq.h in gmp.h. * modules/libgmp: Add libgmp-mpq dependency.
Paul Eggert 8990abb5 2024-07-28T12:11:30 std-gnu23: new module The plan is to update the c99 module to depend on std-gnu23 instead of on std-gnu11, and to make std-gnu11 obsolete. A benefit of this will be that c99 will no longer affect C++. For now, though, std-gnu23 is simply a new, optional module. * MODULES.html.sh (func_all_modules): Add it. * modules/std-gnu11: Change description. * modules/std-gnu23, m4/std-gnu23.m4: New files. * m4/std-gnu11.m4: Do nothing if _AC_C_C23_OPTIONS is defined. (AC_PROG_CC): Use AC_DEFUN, not AC_DEFUN_ONCE, so that we can be superseded.
Paul Eggert bedf70d9 2024-05-23T19:39:29 POSIX.1-2024 has been approved It hasn’t been published yet, so just update documentation talking about “draft” POSIX, about particular POSIX versions, etc. More work will need to be done once it’s published on the web, to update URLs, better document new and changed interfaces, and presumably to implement some of the new interfaces.
Bruno Haible d1e90306 2024-02-12T18:18:43 Implement a new property, added by Unicode 9.0.0. * lib/gen-uni-tables.c (is_property_prepended_concatenation_mark): New function. (output_properties): Output also the property prepended_concatenation_mark. * lib/unictype.in.h (UC_PROPERTY_PREPENDED_CONCATENATION_MARK, uc_is_property_prepended_concatenation_mark): New declarations. * m4/unictype_h.m4 (gl_UNICTYPE_H_REQUIRE_DEFAULTS): Initialize GNULIB_UNICTYPE_PROPERTY_PREPENDED_CONCATENATION_MARK. * modules/unictype/base (Makefile.am): Substitute GNULIB_UNICTYPE_PROPERTY_PREPENDED_CONCATENATION_MARK. * lib/unictype/pr_prepended_concatenation_mark.c: New file. * lib/unictype/pr_prepended_concatenation_mark.h: New generated file. * modules/unictype/property-prepended-concatenation-mark: New file. * tests/unictype/test-pr_prepended_concatenation_mark.c: New generated file. * modules/unictype/property-prepended-concatenation-mark-tests: New file. * lib/unictype/pr_byname.gperf: Add prepended_concatenation_mark. * lib/unictype/pr_byname.c (UC_PROPERTY_INDEX_PREPENDED_CONCATENATION_MARK): New enum item. (uc_property_byname): Handle it. * modules/unictype/property-byname (Depends-on): Add unictype/property-prepended-concatenation-mark. * modules/unictype/property-all (Depends-on): Likewise. * MODULES.html.sh (func_all_modules): Add unictype/property-prepended-concatenation-mark.
Bruno Haible 7bc53cd0 2024-01-31T16:43:45 Implement 3 new properties, added by Unicode 15.1.0. * lib/gen-uni-tables.c (is_property_id_compat_math_start, is_property_id_compat_math_continue, is_property_ids_unary_operator): New functions. (output_properties): Output also the properties id_compat_math_start, id_compat_math_continue, ids_unary_operator. * lib/unictype.in.h (UC_PROPERTY_ID_COMPAT_MATH_START, UC_PROPERTY_ID_COMPAT_MATH_CONTINUE, UC_PROPERTY_IDS_UNARY_OPERATOR, uc_is_property_id_compat_math_start, uc_is_property_id_compat_math_continue, uc_is_property_ids_unary_operator): New declarations. * m4/unictype_h.m4 (gl_UNICTYPE_H_REQUIRE_DEFAULTS): Initialize GNULIB_UNICTYPE_PROPERTY_ID_COMPAT_MATH_START_DLL_VARIABLE, GNULIB_UNICTYPE_PROPERTY_ID_COMPAT_MATH_CONTINUE_DLL_VARIABLE, GNULIB_UNICTYPE_PROPERTY_IDS_UNARY_OPERATOR_DLL_VARIABLE. * modules/unictype/base (Makefile.am): Substitute GNULIB_UNICTYPE_PROPERTY_ID_COMPAT_MATH_START_DLL_VARIABLE, GNULIB_UNICTYPE_PROPERTY_ID_COMPAT_MATH_CONTINUE_DLL_VARIABLE, GNULIB_UNICTYPE_PROPERTY_IDS_UNARY_OPERATOR_DLL_VARIABLE. * lib/unictype/pr_id_compat_math_continue.c: New file. * lib/unictype/pr_id_compat_math_continue.h: New generated file. * lib/unictype/pr_id_compat_math_start.c: New file. * lib/unictype/pr_id_compat_math_start.h: New generated file. * lib/unictype/pr_ids_unary_operator.c: New file. * modules/unictype/property-id-compat-math-continue: New file. * modules/unictype/property-id-compat-math-start: New file. * modules/unictype/property-ids-unary-operator: New file. * tests/unictype/test-pr_id_compat_math_continue.c: New generated file. * tests/unictype/test-pr_id_compat_math_start.c: New generated file. * tests/unictype/test-pr_ids_unary_operator.c: New generated file. * modules/unictype/property-id-compat-math-continue-tests: New file. * modules/unictype/property-id-compat-math-start-tests: New file. * modules/unictype/property-ids-unary-operator-tests: New file. * lib/unictype/pr_byname.gperf: Add id_compat_math_start, id_compat_math_continue, ids_unary_operator. * lib/unictype/pr_byname.c (UC_PROPERTY_INDEX_ID_COMPAT_MATH_START, UC_PROPERTY_INDEX_ID_COMPAT_MATH_CONTINUE, UC_PROPERTY_INDEX_IDS_UNARY_OPERATOR): New enum items. (uc_property_byname): Handle them. * modules/unictype/property-byname (Depends-on): Add unictype/property-id-compat-math-continue, unictype/property-id-compat-math-start, unictype/property-ids-unary-operator. * modules/unictype/property-all (Depends-on): Likewise. * MODULES.html.sh (func_all_modules): Add unictype/property-id-compat-math-continue, unictype/property-id-compat-math-start, unictype/property-ids-unary-operator.
Simon Josefsson 5b92dd0a 2024-01-01T10:31:48 maint: run 'make update-copyright'
Paul Eggert 3f478b6c 2023-06-02T14:02:53 propername-lite: new module propername_lite acts like propername_utf8 but needs less infrastructure, e.g., it does not worry about memory allocation. * MODULES.html.sh (func_all_modules): Mention it. * lib/propername.h (proper_name_lite): New decl. * lib/propername-lite.c, modules/propername-lite: New files. * pygnulib/GLEmiter.py (GLEmiter.po_Makevars): Treat proper_name_lite like proper_name_utf8.
Paul Eggert c2a5953f 2023-04-29T11:44:13 year2038-recommended: new module Remove year2038-required and largefile-required, replacing the former with year2038-recommended and simply removing the latter. This syncs with Autoconf master. * MODULES.html.sh, NEWS, doc/largefile.texi: * all-modules (exclude): Exclude year2038-recommended, not -required. * doc/posix-headers/sys_types.texi, doc/posix-headers/time.texi: * doc/year2038.texi: Mention this. * m4/largefile.m4: Sync from Autoconf. Override existing macros if AC_SYS_YEAR2038_RECOMMENDED is not defined, rather than if AC_SYS_LARGEFILE_REQUIRED is not defined. * modules/largefile-required, modules/year2038-required: Removed. * modules/year2038: Do not depend on largefile; simply use m4/largefile.m4, since we shouldn’t need the extra goodies largefile supplies. * modules/year2038-recommended: New module.
Bruno Haible 879c7d6e 2023-04-17T13:41:57 MODULES.html.sh: Ensure hyperlinked files are displayable. * MODULES.html.sh (repo_url_prefix): Use cgit instead of gitweb.
Bruno Haible 02287d59 2023-04-17T13:07:28 MODULES.html.sh: Avoid a HTTP redirect. * MODULES.html.sh (repo_url_prefix): Use the unabbreviated name of the git repository server.
Paul Eggert f91f6338 2023-04-09T18:16:57 largefile: sync from Autoconf master * modules/largefile-required, modules/year2038-required: New modules. * MODULES.html.sh, doc/largefile.texi, doc/posix-headers/time.texi: * doc/year2038.texi: Document this. * m4/largefile.m4: Sync from Autoconf master. Conditionalize the workaround on AC_SYS_LARGEFILE_REQUIRED rather than on AC_SYS_YEAR2038 so that we replace older but still unreleased Autoconf. (AC_SYS_LARGEFILE_REQUIRED, AC_SYS_YEAR2038_REQUIRED): New macros.
Bruno Haible d4e23393 2023-03-19T18:50:18 Update MODULES.html.sh. * MODULES.html.sh: Move stack, wmempcpy, bison to different sections. Fix a HTML layout problem.
Paul Eggert f41ef729 2023-03-18T17:19:32 Update MODULES.html.sh * MODULES.html.sh: Add some recently-added modules. This is by no means a complete update. I needed to point to something about ‘time’ so I added ‘time’, and then added more modules until I ran out of, errr, time. Assuming MODULES.html.sh is still useful, at some point a more-complete update should be done.
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.
Simon Josefsson 32a72f45 2023-01-01T01:14:21 maint: run 'make update-copyright'
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 835b3ea8 2022-11-26T15:25:44 In 'trap' commands, prefer symbolic to numeric signal names. 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.
Paul Eggert 2eb92c36 2022-08-09T23:20:49 stdckdint-h: new module This supports draft C23 <stdckdint.h>. * doc/posix-headers/stdckdint.texi: * lib/stdckdint.in.h, modules/stdckdint: * modules/stdckdint-tests, tests/test-stdckdint.c: New files. * MODULES.html.sh, doc/gnulib.texi: Update for new module. * lib/intprops-internal.h: Include <stdckdint.h> if C23 and its macros would help and our substitute has not already started to be included. (_GL_INT_ADD_WRAPV, _GL_INT_SUBTRACT_WRAPV) (_GL_INT_MULTIPLY_WRAPV): Use ckd_add, ckd_sub, ckd_mul if they are defined and would help. * lib/intprops-internal.h, lib/intprops.h: Improve comments. The C23 restrictions on stdckdint macros already mostly applied to intprops.h, so these are clarifications, not further restrictions. * tests/test-intprops.c: If TEST_STDCKDINT is defined, include <stdckdint.h> instead of "intprops.h", and test it instead. (VERIFY) [TEST_STDCKDINT]: Ignore the arg in this case. (main) [TEST_STDCKDINT]: Skip tests irrelevant to stdckdint.h.
Bruno Haible 27957b76 2022-07-23T13:31:20 Fix a couple of ShellCheck warnings. * MODULES.html.sh (sed_escape_slash): Remove unused variable. * build-aux/bootstrap: Avoid computed printf format strings. * build-aux/do-release-commit-and-tag: Likewise. * build-aux/gendocs.sh: Likewise. * build-aux/declared.sh: Fix "unrecognized option" message. * gnulib-tool (supplied_opts): Remove unused variable. (--single-con): Remove redundant option recognition. * tests/test-parse-duration.sh (nl): Remove unused variable. * tests/test-update-copyright.sh: Use double-quotes instead of single-quotes.
Bruno Haible 82942a6e 2022-07-23T12:01:35 Avoid DoS vulnerability through unsafe default assignment. See https://www.shellcheck.net/wiki/SC2223 . * MODULES.html.sh (func_tmpdir): Surround default assignment with double-quotes. * build-aux/bootstrap: Likewise. * build-aux/csharpcomp.sh.in (func_tmpdir): Likewise. * build-aux/gendocs.sh: Likewise. * build-aux/libtool-next-version (func_tmpdir): Likewise. * config/srclist-update: Likewise. * gnulib-tool (func_tmpdir): Likewise. * posix-modules (func_tmpdir): Likewise. * tests/test-atexit.sh: Likewise. * tests/test-btoc32-1.sh: Likewise. * tests/test-btoc32-2.sh: Likewise. * tests/test-btowc1.sh: Likewise. * tests/test-btowc2.sh: Likewise. * tests/test-c-dtoastr.sh: Likewise. * tests/test-c-ldtoastr.sh: Likewise. * tests/test-c-snprintf.sh: Likewise. * tests/test-c-strcase.sh: Likewise. * tests/test-c-vasprintf.sh: Likewise. * tests/test-c-vsnprintf.sh: Likewise. * tests/test-c-xvasprintf.sh: Likewise. * tests/test-c32isalnum.sh: Likewise. * tests/test-c32isalpha.sh: Likewise. * tests/test-c32isblank.sh: Likewise. * tests/test-c32iscntrl.sh: Likewise. * tests/test-c32isdigit.sh: Likewise. * tests/test-c32isgraph.sh: Likewise. * tests/test-c32islower.sh: Likewise. * tests/test-c32isprint.sh: Likewise. * tests/test-c32ispunct.sh: Likewise. * tests/test-c32isspace.sh: Likewise. * tests/test-c32isupper.sh: Likewise. * tests/test-c32isxdigit.sh: Likewise. * tests/test-c32rtomb.sh: Likewise. * tests/test-c32snrtombs-1.sh: Likewise. * tests/test-c32snrtombs-2.sh: Likewise. * tests/test-c32snrtombs-3.sh: Likewise. * tests/test-c32snrtombs-4.sh: Likewise. * tests/test-c32srtombs-1.sh: Likewise. * tests/test-c32srtombs-2.sh: Likewise. * tests/test-c32srtombs-3.sh: Likewise. * tests/test-c32srtombs-4.sh: Likewise. * tests/test-c32stombs-1.sh: Likewise. * tests/test-c32stombs-2.sh: Likewise. * tests/test-c32stombs-3.sh: Likewise. * tests/test-c32stombs-4.sh: Likewise. * tests/test-closein.sh: Likewise. * tests/test-copy-acl.sh (func_tmpdir): Likewise. * tests/test-copy-file.sh (func_tmpdir): Likewise. * tests/test-dprintf-posix.sh: Likewise. * tests/test-execl.sh: Likewise. * tests/test-execle.sh: Likewise. * tests/test-execlp.sh: Likewise. * tests/test-execv.sh: Likewise. * tests/test-execve.sh: Likewise. * tests/test-execvp.sh: Likewise. * tests/test-execvpe.sh: Likewise. * tests/test-file-has-acl.sh (func_tmpdir): Likewise. * tests/test-fprintf-posix.sh: Likewise. * tests/test-init.sh: Likewise. * tests/test-iswdigit.sh: Likewise. * tests/test-iswxdigit.sh: Likewise. * tests/test-mbmemcasecmp1.sh: Likewise. * tests/test-mbmemcasecmp2.sh: Likewise. * tests/test-mbmemcasecmp3.sh: Likewise. * tests/test-mbmemcasecoll1.sh: Likewise. * tests/test-mbmemcasecoll2.sh: Likewise. * tests/test-mbmemcasecoll3.sh: Likewise. * tests/test-mbrtoc32-1.sh: Likewise. * tests/test-mbrtoc32-2.sh: Likewise. * tests/test-mbrtoc32-3.sh: Likewise. * tests/test-mbrtoc32-4.sh: Likewise. * tests/test-mbrtowc1.sh: Likewise. * tests/test-mbrtowc2.sh: Likewise. * tests/test-mbrtowc3.sh: Likewise. * tests/test-mbrtowc4.sh: Likewise. * tests/test-mbscasecmp.sh: Likewise. * tests/test-mbscasestr2.sh: Likewise. * tests/test-mbscasestr3.sh: Likewise. * tests/test-mbscasestr4.sh: Likewise. * tests/test-mbschr.sh: Likewise. * tests/test-mbscspn.sh: Likewise. * tests/test-mbsinit.sh: Likewise. * tests/test-mbsncasecmp.sh: Likewise. * tests/test-mbsnrtoc32s-1.sh: Likewise. * tests/test-mbsnrtoc32s-2.sh: Likewise. * tests/test-mbsnrtoc32s-3.sh: Likewise. * tests/test-mbsnrtoc32s-4.sh: Likewise. * tests/test-mbsnrtowcs1.sh: Likewise. * tests/test-mbsnrtowcs2.sh: Likewise. * tests/test-mbsnrtowcs3.sh: Likewise. * tests/test-mbsnrtowcs4.sh: Likewise. * tests/test-mbspbrk.sh: Likewise. * tests/test-mbspcasecmp.sh: Likewise. * tests/test-mbsrchr.sh: Likewise. * tests/test-mbsrtoc32s-1.sh: Likewise. * tests/test-mbsrtoc32s-2.sh: Likewise. * tests/test-mbsrtoc32s-3.sh: Likewise. * tests/test-mbsrtoc32s-4.sh: Likewise. * tests/test-mbsrtowcs1.sh: Likewise. * tests/test-mbsrtowcs2.sh: Likewise. * tests/test-mbsrtowcs3.sh: Likewise. * tests/test-mbsrtowcs4.sh: Likewise. * tests/test-mbsspn.sh: Likewise. * tests/test-mbsstr2.sh: Likewise. * tests/test-mbsstr3.sh: Likewise. * tests/test-mbstoc32s-1.sh: Likewise. * tests/test-mbstoc32s-2.sh: Likewise. * tests/test-mbstoc32s-3.sh: Likewise. * tests/test-mbstoc32s-4.sh: Likewise. * tests/test-nl_langinfo.sh: Likewise. * tests/test-parse-duration.sh (func_tmpdir): Likewise. * tests/test-perror.sh: Likewise. * tests/test-printf-posix.sh: Likewise. * tests/test-set-mode-acl.sh (func_tmpdir): Likewise. * tests/test-setlocale1.sh: Likewise. * tests/test-strtod1.sh: Likewise. * tests/test-strtold1.sh: Likewise. * tests/test-unicodeio2.sh: Likewise. * tests/test-unicodeio3.sh: Likewise. * tests/test-vasnprintf-posix2.sh: Likewise. * tests/test-vc-list-files-cvs.sh: Likewise. * tests/test-vc-list-files-git.sh: Likewise. * tests/test-vdprintf-posix.sh: Likewise. * tests/test-vfprintf-posix.sh: Likewise. * tests/test-vprintf-posix.sh: Likewise. * tests/test-wcrtomb.sh: Likewise. * tests/test-wcsnrtombs1.sh: Likewise. * tests/test-wcsnrtombs2.sh: Likewise. * tests/test-wcsnrtombs3.sh: Likewise. * tests/test-wcsnrtombs4.sh: Likewise. * tests/test-wcsrtombs1.sh: Likewise. * tests/test-wcsrtombs2.sh: Likewise. * tests/test-wcsrtombs3.sh: Likewise. * tests/test-wcsrtombs4.sh: Likewise. * tests/test-xprintf-posix.sh: Likewise. * tests/test-xstrtoimax.sh: Likewise. * tests/test-xstrtol.sh: Likewise. * tests/test-xstrtoll.sh: Likewise. * tests/test-xstrtoumax.sh: Likewise. * tests/test-yesno.sh: Likewise. * tests/unicase/test-locale-language.sh: Likewise. * tests/unicase/test-ulc-casecmp1.sh: Likewise. * tests/unicase/test-ulc-casecmp2.sh: Likewise. * tests/unicase/test-ulc-casecoll1.sh: Likewise. * tests/unicase/test-ulc-casecoll2.sh: Likewise. * tests/unigbrk/test-ulc-grapheme-breaks.sh: Likewise. * tests/unistdio/test-u16-vasnprintf2.sh: Likewise. * tests/unistdio/test-u16-vasnprintf3.sh: Likewise. * tests/unistdio/test-u32-vasnprintf2.sh: Likewise. * tests/unistdio/test-u32-vasnprintf3.sh: Likewise. * tests/unistdio/test-u8-vasnprintf2.sh: Likewise. * tests/unistdio/test-u8-vasnprintf3.sh: Likewise. * tests/unistdio/test-ulc-vasnprintf2.sh: Likewise. * tests/unistdio/test-ulc-vasnprintf3.sh: Likewise. * tests/uniwbrk/test-ulc-wordbreaks.sh: Likewise. * tests/uniwidth/test-uc_width2.sh: Likewise.
Bernhard Voelker 87e6634b 2022-01-04T00:16:50 license: fix GPLv3 texts to use a comma instead of semicolon. See: https://www.gnu.org/licenses/gpl-3.0.html#howto Run: $ git grep -l 'Foundation; either version 3' \ | xargs sed -i '/Foundation; either version 3/ s/n; e/n, e/' * All files using GPLv3: Adjust via the above command.
Paul Eggert eec12c00 2022-01-01T09:43:19 maint: run 'make update-copyright'
Marc Nieper-Wißkirchen 006275ff 2021-04-03T11:23:00 hamt: New module. This module provides (persistent) hash array mapped tries. * MODULES.html.sh: Add hamt. * lib/hamt.c: New file. * lib/hamt.h: New file. * modules/hamt: New file. * modules/hamt-tests: New file. * tests/test-hamt.c: New file.
Paul Eggert ea2ccc2e 2021-03-21T17:37:00 diacrit: remove * MODULES.html.sh (func_all_modules), NEWS: Remove diacrit. * lib/diacrit.c, lib/diacrit.h, modules/diacrit: Remove.
Paul Eggert 4b948321 2021-01-01T07:28:52 maint: run 'make update-copyright'
Thien-Thi Nguyen 16db04ee 2020-12-25T18:27:37 MODULES.html.sh: Update after 2020-12-19 change. * MODULES.html.sh (func_all_modules): Do s/free/free-posix/.
Marc Nieper-Wißkirchen 817923de 2020-10-10T22:21:25 stack: New module. * MODULES.html.sh: Add entry for the stack module. * modules/stack: New file. * modules/stack-tests: New file. * lib/stack.h: New file. * tests/test-stack.c: New file.
Thien-Thi Nguyen bb5a572a 2020-10-03T15:36:04 MODULES.html.sh: Fix typo. * MODULES.html.sh (Numeric conversion functions <stdlib.h>): Fix typo.
Bruno Haible a6fbda46 2020-07-26T13:46:35 gettimeofday: Remove workaround for Mac OS X 10.0. * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY_CLOBBER): Remove macro. (gl_FUNC_GETTIMEOFDAY): Don't invoke it. * lib/gettimeofday.c: Don't include localtime-buffer.h. (gettimeofday): Don't test GETTIMEOFDAY_CLOBBERS_LOCALTIME. * lib/localtime.c: Don't test GETTIMEOFDAY_CLOBBERS_LOCALTIME. * modules/gettimeofday (Depends-on): Remove localtime-buffer. * modules/localtime-buffer: Remove file. * lib/localtime-buffer.h: Remove file. * lib/localtime-buffer.c: Remove file. * m4/localtime-buffer.m4: Remove file. * MODULES.html.sh (Date and time <time.h>): Remove localtime-buffer.
Paul Eggert 3b0ef0b8 2020-07-06T18:54:11 libgmp: new module The idea is to let programs simply include <gmp.h>, and so long as they live within the mini-gmp subset they need not worry about whether the GMP libraries are installed. * MODULES.html.sh: Mention it. * config/srclist.txt: Mention files copied from GMP source. * config/srclistvars.sh (GMP): New var. * lib/mini-gmp-gnulib.c, m4/libgmp.m4, modules/libgmp: * modules/libgmp-tests, tests/test-libgmp.c: New files. * lib/mini-gmp.c, lib/mini-gmp.h: New files, copied from GMP.
Marc Nieper-Wißkirchen 39be62df 2020-05-20T13:59:31 c-dtoastr, c-ldtoastr: new modules These modules provide the same functionality as the modules dtoastr and ldtoastr except for the formatting taking place in the C locale. * MODULES.html.sh: Add c-dtoastr and c-ldtoastr. * lib/c-dtoastr.c, lib/c-ldtoastr.c: New files. * lib/ftoastr.c: Prefix exported functions when the macro C_LOCALE is defined. Use c_snprintf and c_strtod/c_strtold instead of snprintf and strtod/strtold whhen the macro C_LOCALE is defined. * lib/ftoastr.h: Add prototypes for c_dtoastr and c_ldtoastr. * modules/c-dtoastr, modules/c-dtoastr-tests, modules/c-ldtoastr, modules/c-ldtoastr-tests: New files. * tests/test-c-dtoastr.c, tests/test-c-dtoastr.sh, tests-c-ldtoastr.c tests-c-ldtoastr.sh: New files.
Paul Eggert 682cc4e6 2020-05-25T09:19:56 getentropy, getrandom: new modules * MODULES.html.sh (func_all_modules): * lib/unistd.in.h (getentropy, getrandom): * m4/unistd_h.m4 (gl_UNISTD_H, gl_UNISTD_H_DEFAULTS): * modules/unistd (unistd.h): Add support for getentropy, getrandom. * doc/glibc-functions/getentropy.texi (getentropy): * doc/glibc-functions/getrandom.texi (getrandom): These are now fixed on some platforms. * lib/getentropy.c, lib/getrandom.c, lib/sys_random.in.h: * m4/getentropy.m4, m4/getrandom.m4: * modules/getentropy, modules/getentropy-tests: * modules/getrandom, modules/getrandom-tests: * tests/test-getentropy.c, tests/test-getrandom.c: New files.
Paul Eggert c08f85d7 2020-05-01T18:12:12 attribute: new module This simplifies use of GCC and C2X attributes like ‘deprecated’. * MODULES.html.sh: Add attribute. * doc/attribute.texi, lib/attribute.h, modules/attribute: New files. * doc/gnulib.texi (Particular Modules): Add Attributes. * lib/backupfile.c, lib/fnmatch.c, lib/freopen-safer.c: * lib/mbrtoc32.c, lib/mbrtowc.c, lib/nstrftime.c, lib/quotearg.c: * lib/savewd.c, lib/unistr/u8-uctomb-aux.c, lib/unistr/u8-uctomb.c: * lib/vasnprintf.c: Include attribute.h, and let it define FALLTHROUGH. * lib/bitset/base.h, lib/c-stack.c (__attribute__): Remove macro. * lib/bitset/base.h (ATTRIBUTE_UNUSED): Define in terms of _GL_ATTRIBUTE_MAYBE_UNUSED, for forwards compatibility to C2X. * lib/dfa.c (FALLTHROUGH): Define consistently with gl_COMMON_BODY. This is a copy since Gawk doesn’t use Gnulib. * lib/di-set.h (_GL_ATTRIBUTE_NONNULL): Remove definition that is incompatible with gl_COMMON_BODY’s. All uses changed. * lib/fts.c: Include attribte.h, for FALLTHROUGH. Keep the existing FALLTHROUGH definition since Glibc might use it, and it does no harm to Gnulib’s FALLTHROUGH. * lib/fts_.h, lib/inttostr.h: (__GNUC_PREREQ): Remove; no longer needed. (__attribute_warn_unused_result__): Remove. All uses replaced by _GL_ATTRIBUTE_NODISCARD. * lib/gl_list.h, lib/gl_map.h, lib/gl_omap.h, lib/gl_oset.h: * lib/gl_set.h: Prefer _GL_ATTRIBUTE_NODISCARD to an ifdeffed __attribute__ ((__warn_unused_result__)), for forward compatibility to C2X. * lib/hash.h (_GL_ATTRIBUTE_WUR): Remove. All uses replaced by _GL_ATTRIBUTE_NODISCARD. (_GL_ATTRIBUTE_DEPRECATED): Remove, since gl_COMMON_BODY defines it. * lib/ino-map.h (_GL_ATTRIBUTE_NONNULL): Remove. All uses replaced by gl_COMMON_BODY’s implementation, which has a slightly different signature. * lib/safe-alloc.h (_GL_ATTRIBUTE_RETURN_CHECK): Remove. All uses replaced by _GL_ATTRIBUTE_NODISCARD. * lib/unused-parameter.h (_GL_UNUSED_PARAMETER): Define in terms of _GL_ATTRIBUTE_MAYBE_UNUSED. No doubt all uses should be replaced, at some point. * m4/gnulib-common.m4 (_GL_GNUC_PREREQ): New macro. (_Noreturn): Use it. (_GL_HAS_ATTRIBUTE, _GL_ATTRIBUTE_ALLOC_SIZE) (_GL_ATTRIBUTE_ALWAYS_INLINE, _GL_ATTRIBUTE_ARTIFICIAL) (_GL_ATTRIBUTE_COLD) (_GL_ATTRIBUTE_DEPRECATED, _GL_ATTRIBUTE_ERROR) (_GL_ATTRIBUTE_WARNING, _GL_ATTRIBUTE_EXTERNALLY_VISIBLE) (_GL_ATTRIBUTE_FALLTHROUGH, _GL_ATTRIBUTE_FORMAT) (_GL_ATTRIBUTE_LEAF, _GL_ATTRIBUTE_MAY_ALIAS) (_GL_ATTRIBUTE_MAYBE_UNUSED) (_GL_ATTRIBUTE_NODISCARD, _GL_ATTRIBUTE_NOINLINE) (_GL_ATTRIBUTE_NONNULL, _GL_ATTRIBUTE_NONSTRING) (_GL_ATTRIBUTE_NOTHROW, _GL_ATTRIBUTE_PACKED, _GL_ATTRIBUTE_PURE) (_GL_ATTRIBUTE_SENTINEL): New macros. * modules/backup-rename, modules/backupfile, modules/c-vasnprintf: * modules/fnmatch, modules/freopen-safer, modules/fts: * modules/mbrtoc32, modules/mbrtowc, modules/nstrftime: * modules/quotearg, modules/savewd: * 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/unistr/u8-uctomb, modules/vasnprintf: (Depends-on:): Add attribute module.
Bruno Haible 17c1bcb5 2020-04-28T01:37:35 fnmatch-posix: Remove deprecated module. * modules/fnmatch-posix: Remove file. * MODULES.html.sh (Enhancements for POSIX:2008 functions): Update. * NEWS: Mention the removal.
Bruno Haible ae006ab0 2020-04-28T01:25:01 remove-dest-slash: Remove deprecated module. * modules/rename-dest-slash: Remove file. * MODULES.html.sh (Compatibility checks for POSIX:2008 functions): Update. * NEWS: Mention the removal.
Bruno Haible 5a5a1808 2020-04-28T01:18:11 unictype/bidicategory-*: Remove deprecated modules. * modules/unictype/bidicategory-all: Remove file. * modules/unictype/bidicategory-byname: Remove file. * modules/unictype/bidicategory-name: Remove file. * modules/unictype/bidicategory-of: Remove file. * modules/unictype/bidicategory-test: Remove file. * MODULES.html.sh (Unicode string functions): Update. * NEWS: Mention the removals.
Bruno Haible 242644e7 2020-04-10T14:21:47 MODULES.html.sh: Support for reproducible builds from git-less tarballs. Reported by Bernhard M. Wiedemann <bwiedemann@suse.de> in <https://lists.gnu.org/archive/html/bug-gnulib/2020-03/msg00061.html>. * MODULES.html.sh: In a git-less tarball, use the date of the first ChangeLog entry.
Bruno Haible 20cb263b 2020-03-22T18:11:49 MODULES.html.sh: Add support for reproducible builds. Reported by Bernhard M. Wiedemann <bwiedemann@suse.de> in <https://lists.gnu.org/archive/html/bug-gnulib/2020-03/msg00024.html>. * MODULES.html.sh: Print the date of the last gnulib commit, not the current date.
Simon Josefsson df2bd909 2020-01-15T23:10:58 crypto/gc-pbkdf2: New module. * MODULES.html.sh (func_all_modules): Add gc-pbkdf2. * NEWS: Deprecated gc-pbkdf2-sha1 in favor of gc-pbkdf2. * lib/gc-pbkdf2.c: New file. * lib/gc-pbkdf2-sha1.c: Use new interface. * lib/gc.h (GC_MAX_DIGEST_SIZE, gc_pbkdf2_hmac): Add. * modules/crypto/gc-pbkdf2: New file. * modules/crypto/gc-pbkdf2-tests: New file. * tests/test-gc-pbkdf2.c: New file.
Paul Eggert 2cdc1baf 2020-01-01T00:00:18 maint: Run 'make update-copyright'
Pino Toscano a762d02b 2019-12-05T16:18:35 Move xstrtol_fatal to a new xstrtol-error module The xstrtol module provides a xstrtol_fatal function which uses other modules suitable mostly for command line handling (e.g. gettext, getopt), and that are completely unused when using only xstrto* functions. Furthermore, xstrtol_fatal is used only in the xstrtol-tests (within gnulib itself). As solution, move the xstrtol_fatal to a new xstrtol-error module, making xstrtol-tests depend on it. Since the prototype of xstrtol_fatal is automatically provided by xstrtol.h, it is very difficult to know whether anyone is actually using it, so add a note about this in NEWS. * lib/xstrtol.h: Stop including <getopt.h>. (xstrtol_fatal): Move ... * lib/xstrtol-error.h: ... here. New file. * lib/xstrtol-error.c: Include xstrtol-error.h instead of xstrtol.h. * tests/test-xstrtol.c: Likewise. * modules/xstrtol (Files): Remove lib/xstrtol-error.c. (Depends-on): Remove exitfail, error, getopt-gnu, and gettext-h. (Makefile.am): Remove xstrtol-error.c from lib_SOURCES. * modules/xstrtol-error: New file. * modules/xstrtol-tests (Depends-on): Add xstrtol-error. * MODULES.html.sh: Add xstrtol-error. * NEWS: Document the change.
Bruno Haible 14f224df 2019-11-18T21:45:44 vcs-to-changelog: New module. * modules/vcs-to-changelog: New file. * MODULES.html.sh (func_all_modules): Add it.
Paul Eggert 9e78024b 2019-09-22T23:23:20 Update some URLs This is a clerical change that mostly changes http: to https: in URLs where either will work. It also updates some URLs that have moved, removes some URLs that no longer work, and fixes related text.
Paul Eggert 508eb991 2019-06-04T19:54:09 copy-file-range: new module * MODULES.html.sh: Add copy-file-range. * lib/copy-file-range.c, m4/copy-file-range.m4: * modules/copy-file-range: New files. * lib/unistd.in.h (copy_file_range): Declare. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set up GNULIB_COPY_FILE_RANGE and HAVE_COPY_FILE_RANGE. * modules/unistd (unistd.h): Substitute them.
Paul Eggert e6633650 2019-01-01T00:25:11 maint: Run 'make update-copyright'
Paul Eggert 80d1e862 2018-08-01T16:08:26 ieee754-h: new module It looks like Emacs can use this for some NaN processing. Emacs uses it only on double NaNs so it should be safe. * MODULES.html.sh (func_all_modules): Add ieee754-h. * config/srclist.txt: Mention ieee754.h in a comment. * doc/glibc-headers/ieee754.texi (ieee754.h): Gnulib now has a substitute that should work except for long double and for non-IEEE platforms. * lib/ieee754.in.h, m4/ieee754-h.m4, modules/ieee754-h: * modules/ieee754-h-tests, tests/test-ieee754-h.c: New files.
Paul Eggert 2522322e 2018-07-05T09:22:09 renameatu: rename from renameat2 It's looking like Glibc will add a renameat2 function that is incompatible with Gnulib renameat2; see: https://sourceware.org/ml/libc-alpha/2018-07/msg00064.html To help avoid future confusion, rename renameat2 to something else. Use the name 'renameatu', as the Gnulib function is close to the Glibc function. Perhaps someday there will also be a renameat2 Gnulib module, which mimicks the future glibc renameat2, but that can wait as nobody seems to need such a module now. * NEWS: Mention this. * lib/renameatu.c: Rename from lib/renameat2.c. * lib/renameatu.h: Rename from lib/renameat2.h. * modules/renameat2: Rename from modules/renameatu. * modules/renameat2-tests: Rename from modules/renameat2-tests. All uses of "renameat2" in identifiers or file name changed to "renameatu", except for two instances in lib/renameatu.c that deal with the Linux kernel's renameat2 syscall.
Bruno Haible d7cf3b8d 2018-06-25T21:45:23 Continue to use spaces for indentation, not tabs.
Paul Eggert 281b825e 2018-01-01T00:57:25 maint: Run 'make update-copyright'
Paul Eggert 44100f56 2017-12-30T16:34:32 chdir-safer: remove this module * MODULES.html.sh (func_all_modules): Remove chdir-safer. * NEWS: Document removal. * lib/chdir-safer.c, lib/chdir-safer.h, m4/afs.m4, m4/chdir-safer.m4: * modules/chdir-safer: Remove these files.
Jia Zhang e128f7fb 2017-10-28T23:58:20 New module: crypto/gc-sm3 * lib/gc.h: Declare SM3-related stuffs. * lib/gc-gnulib.c: Support sm3 in internal functions. * lib/gc-libgcrypt.c: Support sm3 with libgcrypt. * m4/gc-sm3.m4: m4 file for gc-sm3 module. * modules/crypto/gc-sm3: Define gc-sm3 module. * tests/test-gc-sm3.c: Implement SM3 test case with libgcrypt. * modules/crypto/gc-sm3-tests: Define gc-sm3 test module. * MODULES.html.sh: List gc-sm3 module.
Jia Zhang 12ad1d14 2017-10-07T04:31:27 New module: crypto/sm3 This new module can be used to compute SM3 message digest of files or memory blocks according to the specification GM/T 004-2012 Cryptographic Hash Algorithm SM3, published by State Cryptography Administration, China. The official SM3 cryptographic hash algorithm specification is available at http://www.sca.gov.cn/sca/xwdt/2010-12/17/content_1002389.shtml * lib/sm3.h: Declare the APIs of sm3 module. * lib/sm3.c: Implement SM3 hash algorithm. * m4/sm3.m4: m4 file for sm3 module. * modules/crypto/sm3: Define sm3 module. * tests/test-sm3.c: Implement SM3 test case. * modules/crypto/sm3-tests: Define sm3 test module. * MODULES.html.sh: List sm3 module.
Paul Eggert ca35d468 2017-09-13T00:48:18 all: prefer https: URLs
Paul Eggert 38885c86 2017-09-01T14:40:58 libc-config: new module * MODULES.html.sh: Add libc-config. * lib/cdefs.h: New file, copied from the GNU C Library with very minor changes that can be copied back. * lib/libc-config.h, modules/libc-config: New files.
Darshit Shah 98756762 2017-08-13T10:13:33 reallocarray: New module reallocarray is a new function in glibc 2.26 to safely allocate an array of memory locations with integer overflow protection. * MODULES.html.sh: Add reallocarray. * doc/glibc-functions/reallocarray.texi: Documentation for reallocarray. * lib/reallocarray.c: New file to implement module reallocarray. * lib/stdlib.in.h: Add function declarations for reallocarray. * m4/reallocarray.m4: New file. * m4/stdlib_h.m4: Declare reallocarray. * modules/reallocarray: New file. * modules/reallocarray-test: New file. * modules/stdlib: Coerce stdlib.h to export reallocarray. * tests/test-reallocarray.c: New test.
Paul Eggert b6ac7d13 2017-07-30T10:53:32 backup-rename: new module It is like backupfile, except it avoids some race conditions, and it does not output to stderr or exit. * MODULES.html.sh: Add backup-rename. * lib/backup-find.c, lib/backup-internal.h, lib/backup-rename.c: * modules/backup-rename: New files. * lib/backupfile.c: Turn this into an internals file, which contains code common to backupfile and backup_rename. Do not include argmatch.h or xalloc.h: include xalloc-oversized.h. Include renameat2.h and fcntl.h. (BACKUP_NOMEM): New constant. (numbered_backup): New args BASE_OFFSET and *DIRPP. Do not exit on memory exhaustion; just return BACKUP_NOMEM. Caller changed. (backupfile_internal): Rename from find_backup_file_name. Support new arg RENAME. (backup_args, backup_types, get_version, xget_version): Move to lib/backup-find.c. * lib/backupfile.h (backup_file_rename): New decl. * modules/backupfile (Files): Add lib/backup-internal.h, lib/backup-find.c. (Depends-on): Add dirfd, fcntl, renameat2. (lib_SOURCES): Add backup-find.c.
Paul Eggert ec046e66 2017-07-27T12:08:39 renameat2: new module Although the Linux syscall renameat2 is not in glibc (yet?), it is useful to have access to its RENAME_NOREPLACE flag. * MODULES.html.sh (func_all_modules): Add renameat2. * lib/renameat2.c, lib/renameat2.h, modules/renameat2: * modules/renameat2-tests, tests/test-renameat2.c: New files. * lib/renameat.c (renameat): Move most of the implementation to renameat2, and just call renameat2. * modules/renameat (Files): Remove lib/at-func2.c. (Depends-on): Depend only on renameat2. (Include): Remove <fcntl.h>. * modules/renameat-tests (test_renameat_LDADD): Add $(LIB_EACCESS), since renameat (via renameat2) might use faccessat.
Paul Eggert e20e3451 2017-07-26T11:57:37 maint: bring MODULES.html.sh up to date Somehow a few months ago we stopped updating MODULES.html.sh. I don’t recall explicitly deciding this, so I updated it now. Alternatively I suppose we could remove it. * MODULES.html.sh: Add builtin-expect, c99, ctime, explicit_bzero, localtime, localtime-buffer, noreturn, nstrftime, strftime-fixes, truncate, utime, utime-h, windows-stat-inodes, windows-stat-override, windows-stat-timespec, year2038. Sort.
Paul Eggert a3fd683d 2017-01-01T02:59:23 version-etc: new year * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
Paul Eggert 0d12d16a 2016-09-15T11:34:52 limits-h: new module This adds ISO/IEC TS 18661-1:2014 support to limits.h. * MODULES.html.sh: Add limits-h,and move size_max to stdint section. * doc/posix-headers/limits.texi: Document new module. * lib/limits.in.h, m4/limits-h.m4, modules/limits-h: * modules/limit-h-tests, tests/test-limits-h.c: New files.
Jim Meyering 28672037 2016-08-16T15:00:43 dfa: new module, importing grep's DFA matcher Since grep's DFA matcher is now being used by two gnulib-enabled projects, grep and sed, it makes sense to version-control its sources and unit tests in one place: here. * modules/dfa: New module. * modules/dfa-tests: New file. * lib/dfa.c: New file, from grep. * lib/dfa.h: Likewise. * lib/localeinfo.c: Likewise. * lib/localeinfo.h: Likewise. * tests/dfa-match-aux.c: Likewise. * tests/dfa-invalid-char-class.sh: Likewise. * tests/dfa-match.sh: Likewise, with minor changes. * MODULES.html.sh (Misc): Add "dfa" to this list.
Pino Toscano 653a5be9 2016-08-18T15:18:22 getprogname: new module This provides a LGPL module for getting the name of the current program, using the same API found on *BSD systems. * lib/getprogname.c, lib/getprogname.h, m4/getprogname.m4: * modules/getprogname: New files. * MODULES.html.sh (Misc): Add getprogname. * NEWS: Document the deprecation of the 'progname' module.
Paul Eggert 2cf7d5cf 2016-02-02T14:29:53 std-gnu11: new module This makes it easier for applications to prefer C11 and C++11 to older variants, when compiling C and C++ code. Unlike most m4/*.m4 files, m4/std-gnu11.m4 is GPLed, as it copies a nontrivial chunk of GPLed Autoconf source code. * COPYING: Mention the m4/*.m4 copyright situation. * MODULES.html.sh (std-gnu11): New module. * m4/std-gnu11.m4, modules/std-gnu11: New files.
Paul Eggert 71090a2a 2016-01-01T00:56:19 version-etc: new year * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
Paul Eggert 4bc76593 2015-07-23T17:44:19 time_rz: new module * MODULES.html.sh: Add time_rz. * lib/time_rz.c, m4/time_rz.m4, modules/time_rz: New files. * lib/time.in.h (timezone_t, tzalloc, tzfree, localtime_rz, mktime_z): New decls if _GNU_SOURCE && @GNULIB_TIME_RZ@ && ! @HAVE_TIMEZONE_T@. * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_DEFAULTS): New var HAVE_TIMEZONE_T (default 0). * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): New var GNULIB_TIME_RZ (default 0). * modules/time (time.h): Substitute the new vars.
Paul Eggert 2b93f1e2 2015-05-27T16:05:44 qacl: split into qcopy-acl and qset-acl Emacs needs the former, but not the latter. * modules/acl-permissions: New file, containing most of the old qacl. * modules/file-has-acl (Depends-on): Depend on acl-permissions, not qacl. * modules/qacl: Now merely depends on qcopy-acl and qset-acl. * modules/qcopy-acl, modules/qset-acl: New files. * MODULES.html.sh (File system functions): Mention the new modules, and mention qacl while we're at it.
Paul Eggert b9bfe784 2015-01-01T01:38:23 version-etc: new year * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright date. * all files: Run 'make update-copyright'.
Paul Eggert 034a1804 2014-12-20T13:00:21 assure: new module This works better than 'assert' when compiling with -DNDEBUG, as it avoids some compiler diagnostics in that case. Reported by Norihiro Tanaka in: http://lists.gnu.org/archive/html/bug-gnulib/2014-12/msg00215.html * MODULES.html.sh (func_all_modules): Add 'assure'. * lib/assure.h, modules/assure: New files. * lib/chdir-long.c, lib/cycle-check.c, lib/fchdir.c, lib/fts.c: * lib/poll.c, lib/savewd.c, lib/utimens.c, lib/xstrtol.c: Prefer 'assure' to 'assert'. * modules/chdir-long, modules/cycle-check, modules/fchdir: * modules/poll, modules/savewd, modules/utimens, modules/xstrtol: Depend on 'assure'.
Paul Eggert 1ce0e7dc 2014-08-29T13:00:16 qsort_r: new module, for GNU-style qsort_r This works even on FreeBSD, which has an incompatible qsort_r API. * MODULES.html.sh: Add it. * doc/glibc-functions/qsort_r.texi: It's now supported. * lib/qsort.c: New file, taken from glibc with minor changes inside "#ifndef _LIBC" and with an unnecessary "#include <alloca.h>" removed. * lib/qsort_r.c: New file, compiled only on FreeBSD. * lib/stdlib.in.h (qsort_r): Declare in the usual way. * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): * modules/qsort_r, modules/qsort_r-tests: New files. * modules/stdlib (Makefile): Set up its defaults. * tests/test-qsort_r.c: New file.
Paul Eggert a6c54be1 2014-08-07T17:40:01 vla: new module vla: new module GNU RCS can use this, mostly for documentation I expect. See: http://lists.gnu.org/archive/html/bug-gnulib/2014-08/msg00025.html * MODULES.html.sh: Add vla. * lib/vla.h, modules/vla: New files.
Eric Blake 1276a2c5 2014-01-01T00:04:40 maint: update copyright I ran 'make update-copyright'. Signed-off-by: Eric Blake <eblake@redhat.com>
Paul Eggert 0a47086e 2013-10-06T23:58:00 New module 'count-trailing-zeros'. * MODULES.html.sh: Mention it. * lib/count-trailing-zeros.c, lib/count-trailing-zeros.h: * m4/count-trailing-zeros.m4, modules/count-trailing-zeros: * modules/count-trailing-zeros-tests: * tests/test-count-trailing-zeros.c: New files.
Stefano Lattarini 435f1d7a 2013-05-04T10:30:14 Assume gnulib is checked out from Git, not CVS In fact, access to the gnulib repository through CVS has been disabled, or more precisely, got broken and was never restored; see: <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00008.html> Note that support for CVS is not removed completely and unthinkingly by this change: only support for CVS checkouts of gnulib itself is removed. For example, the 'bootstrap' script still cater to .cvsingore files and CVS directories, for the benefit of those poor gnulib clients still stuck with CVS. Ditto for the 'gnulib-tool' script itself. * gnulib-tool: Simplify accordingly. * posix-modules: Likewise. * MODULES.html.sh: Likewise. * doc/gnulib.texi: No longer mention the decommissioned CVS gnulib repository. * doc/gnulib-intro.texi: Likewise. * doc/gnulib-readme.texi: Likewise. * doc/gnulib-tool.texi: In the examples and explanations, refer to a sample '.gitignore' file rather than a sample '.cvsignore'. * NEWS: Update. * m4/extensions.m4: While at it, remove a comment mistakenly referring to "CVS Autoconf" rather than "git Autoconf". Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> Acked-by: Paul Eggert <eggert@cs.ucla.edu>
Paul Eggert 7517e2fd 2013-02-04T18:33:23 secure_getenv: new module * MODULES.html.sh (Extra functions based on ANSI C 89): Add secure_getenv. * doc/glibc-functions/secure_getenv.texi: New file. * doc/gnulib.texi: Include it. * lib/secure_getenv.c, m4/secure_getenv.m4, modules/secure_getenv: New files. * lib/stdlib.in.h (secure_getenv): New decl. * m4/stdlib_h.m4 (gl_STDLIB_H, gl_STDLIB_H_DEFAULTS): * modules/stdlib (stdlib.h): Add secure_getenv checks.
Eric Blake 9fc81090 2013-01-01T00:50:58 maint: update all copyright year number ranges Run "make update-copyright". Compare to commit 1602f0a from last year. Signed-off-by: Eric Blake <eblake@redhat.com>
Nikos Mavrogiannopoulos 064a0470 2012-09-27T08:42:07 hash-pjw-bare: new module * lib/hash-pjw-bare.c: New file, very much like hash-pjw.c. * lib/hash-pjw-bare.h: Likewise. * modules/hash-pjw-bare: New file. * MODULES.html.sh (Misc): Add it. Copyright-paperwork-exempt: yes
Jim Meyering 0e9bac3a 2012-09-20T14:02:36 non-recursive-gnulib-prefix-hack: new module * build-aux/prefix-gnulib-mk: Copied from coreutils, derived from the file that originated in Bison. * m4/non-recursive-gnulib-prefix-hack.m4: Likewise, this code is largely copied from a snippet that resided in bison's configure.ac. * modules/non-recursive-gnulib-prefix-hack: New file. * MODULES.html.sh (Support for maintaining and releasing projects): Add it.
Eric Blake 440a1dbe 2012-09-05T14:28:47 net_if: new module OpenBSD's <net/if.h> is not self-contained; this should compile: | #define _POSIX_C_SOURCE 200809L | #include <net/if.h> | struct if_nameindex i; but fails with: In file included from foo.c:2: /usr/include/net/if.h:112: error: expected specifier-qualifier-list before 'u_int' ... /usr/include/net/if.h:674: error: field 'dstaddr' has incomplete type In file included from /usr/include/net/if.h:691, from foo.c:2: /usr/include/net/if_arp.h:79: error: field 'arp_pa' has incomplete type /usr/include/net/if_arp.h:80: error: field 'arp_ha' has incomplete type *** Error code 1 We already had a test program for systems with the if_* functions (including OpenBSD); but in adding this module, I had to enhance that test to also work on platforms like mingw where we are now providing a new header. * modules/net_if: New module, borrowing ideas from netinet_in. * m4/net_if_h.m4: New file. * lib/net_if.in.h: Likewise. * doc/posix-headers/net_if.texi (net/if.h): Document it. * MODULES.html.sh (lacking POSIX:2008): Likewise. * tests/test-net_if.c: Make function checks conditional. Reported by Jasper Lievisse Adriaanse <jasper@humppa.nl>. Signed-off-by: Eric Blake <eblake@redhat.com>
Paul Eggert 4ee642f6 2012-08-22T01:47:05 execinfo: new module This is for Emacs. Currently, it provides a no-effect stub on all platforms where it does not already work. It already works on glibc-based systems, and on Solaris 11. * lib/execinfo.c, lib/execinfo.in.h, m4/execinfo.m4, modules/execinfo: New files. * doc/glibc-headers/execinfo.texi (execinfo.h): * MODULES.html.sh (Misc): Document it.
Eric Blake 0da76a94 2012-08-10T16:51:08 count-leading-zeros: new module I needed gcc's clz to determine the most significant bit of a number (useful for things like truncating to a power of 2), and was surprised it is not a standardized function (the opposite direction of finding the least significant bit is given by ffs). This borrows heavily from the design of the count-one-bits module. * modules/count-leading-zeros: New module. * m4/count-leading-zeros.m4: New file. * lib/count-leading-zeros.h: Likewise. * modules/count-leading-zeros-tests: New test. * tests/test-count-leading-zeros.c: New file. * MODULES.html.sh (Integer arithmetic functions): Document it. Signed-off-by: Eric Blake <eblake@redhat.com>
Eric Blake d0f486f0 2012-06-26T11:23:18 config: drop scripts that automake says are not independent These three scripts are too closely tied to automake internals to be independently useful. In fact, automake would rather that people did not mix the latest version of these scripts with older versions of automake, as there is no effort being put into maintaining backwards-compatibility when these scripts are updated. The remaining scripts pulled from automake, such as mdate-sh or depcomp, are independently useful, so a future patch may end up reparenting those scripts to have gnulib instead of automake as the master owner. * config/srclist.txt: Drop elisp-comp, missing, and ylwrap. * build-aux/elisp-comp: Delete. * build-aux/missing: Likewise. * build-aux/ylwrap: Likewise. * modules/elisp-comp: Likewise. * MODULES.html.sh: Drop mention of elisp-comp. * NEWS: Mention this. Signed-off-by: Eric Blake <eblake@redhat.com>
Simon Josefsson c8947563 2012-01-08T14:49:07 Add lgpl-3.0 module. * MODULES.html.sh (Support for building documentation): Add lgpl-3.0. * modules/lgpl-3.0: New file.
Paul Eggert eec8a691 2012-01-06T09:55:50 doc: C11 and C++11 are now official
Jim Meyering 1602f0af 2012-01-01T10:04:58 maint: update all copyright year number ranges Run "make update-copyright".
Jim Meyering 6362c1d7 2011-12-23T10:53:10 test-framework-sh: new module * modules/test-framework-sh: New file. * MODULES.html.sh (Support for maintaining and releasing projects): List it.
Eric Blake 78232883 2011-11-07T15:26:08 ptsname_r: new module For now, this replacement focuses solely on compilation compatibility, and assumes that isatty() and ttyname_r() work on a master side pty; if this assumption fails, or if thread-safety is also required, then a later patch can follow the lead of strerror_r.c in wrapping the system ptsname() with a lock. * modules/ptsname_r: New module. * m4/ptsname_r.m4 (gl_FUNC_PTSNAME_R): New file. * lib/ptsname.c (__ptsname_r): Split... * lib/ptsname_r.c: ...into new file. * m4/stdlib_h.m4 (gl_STDLIB_H): Check for decl. (gl_STDLIB_H_DEFAULTS): Set witness defaults. * modules/stdlib (Makefile.am): Substitute witnesses. * lib/stdlib.in.h (ptsname_r): Declare it. * doc/glibc-functions/ptsname_r.texi (ptsname_r): Document it. * MODULES.html.sh (Misc): Likewise. * modules/ptsname (Depends-on): Alter dependency. * doc/posix-functions/ptsname.texi (ptsname): Mention new module. Signed-off-by: Eric Blake <eblake@redhat.com>
Paul Eggert 614046a2 2011-11-01T13:15:14 * MODULES.html.sh: Fix sed-script shell quoting and locale issues. (func_module): Replace foo=` ... sed -e COMPLICATED ... ` with bar=COMPLICATED; foo=` ... sed -e "$bar" ... ` when COMPLICATED contains (possibly-quoted) backslashes. This should avoid all-too-common shell bugs if COMPLICATED contains backslashes in the "wrong" places. Reported by David Evans in <http://lists.gnu.org/archive/html/bug-gnulib/2011-11/msg00013.html>. When 'sed' uses character ranges like A-Z, invoke it in the C locale, because we want ASCII ranges. Is there some reason we don't use the C locale everywhere in this script? (func_module, top level): Avoid unwanted pathname expansion when $repo_url_prefix or $repo_url_suffix_repl contain shell metacharacters like '?' and '*'.
Paul Eggert 6dc2ffa5 2011-10-16T16:56:59 stdalign: new module * doc/posix-headers/stdalign.texi, lib/stdalign.in.h, m4/stdalign.m4: * modules/stdalign: New files. * MODULES.html.sh (c1x_core_properties): Add stdalign. * doc/gnulib.texi (Header File Substitutes): Add stdalign.
Eric Blake 94d63c4b 2011-10-17T17:19:41 posix_openpt: new module * modules/posix_openpt: New module. * m4/posix_openpt.m4: New file. * lib/posix_openpt.c: Likewise. * m4/stdlib_h.m4 (gl_STDLIB_H): Check for decl. (gl_STDLIB_H_DEFAULTS): Set defaults. * modules/stdlib (Makefile.am): Substitute macros. * lib/stdlib.in.h (posix_openpt): Declare. * MODULES.html.sh (systems lacking POSIX:2008): Document it. * doc/posix-functions/posix_openpt.texi (posix_openpt): Likewise. * modules/posix_openpt-tests: New test module. * tests/test-posix_openpt.c: New test.
Gijs van Tulder 9d258e29 2011-09-25T14:06:58 base32: new module * modules/base32: New module. * lib/base32.c: New file. * lib/base32.h: Likewise. * m4/base32.m4: Likewise. * modules/base32-tests: New test. * tests/test-base32.c: Likewise. * MODULES.html.sh (Misc): Mention it. Signed-off-by: Eric Blake <eblake@redhat.com>
Bruno Haible 175142a8 2011-09-24T01:28:22 signal-h: Rename from signal. * modules/signal-h: Renamed from modules/signal. * modules/pthread_sigmask (Depends-on): Update. * modules/raise (Depends-on): Likewise. * modules/sigaction (Depends-on): Likewise. * modules/sigpipe (Depends-on): Likewise. * modules/sigprocmask (Depends-on): Likewise. * modules/sys_select (Depends-on): Likewise. * modules/signal-h-tests: Renamed from modules/signal-tests. (Files, Depends-on, Makefile.am): Update. * tests/test-signal-h.c: Renamed from tests/test-signal.c. * modules/signal-h-c++-tests: Renamed from modules/signal-c++-tests. (Files, Makefile.am): Update. * tests/test-signal-h-c++.cc: Renamed from tests/test-signal-c++.cc. * tests/test-signal-h-c++2.cc: Renamed from tests/test-signal-c++2.cc. * modules/signal: New placeholder file. * MODULES.html.sh (Support for systems lacking POSIX:2008): Update. * doc/posix-headers/signal.texi: Update. * NEWS: Mention the change.
Eric Blake 64da7b6c 2011-09-16T09:59:23 fdatasync: new module At least libvirt would like to use the lighter-weight fdatasync on platforms where it is supported, while still guaranteeing full sync (via the heavy-weight fsync fallback) on all platforms. I've got an open question to the Austin Group, since the POSIX 2008 wording is self-contradictory (unlike fsync, fdatasync requires EBADF on non-writable fds, but still mentions that read() errors must be propagated). I can see how fsync() would affect atime after read() while fdatasync() can skip that, explaining why fdatasync() might have the EBADF requirement, but on the other hand, that prevents an implementation (like ours) where fdatasync is a straight alias of fsync. At any rate, glibc allows fdatasync on read-only fds. * modules/fsync (Description): Document difference to fdatasync. * modules/fdatasync: New module. * m4/fdatasync.m4 (gl_FUNC_FDATASYNC): New file. * lib/fdatasync.c (fdatasync): Likewise. * m4/unistd_h.m4 (gl_UNISTD_H, gl_UNISTD_H_DEFAULTS): Set up defaults. * modules/unistd (Makefile.am): Set witnesses. * lib/unistd.in.h (fdatasync): Declare. * MODULES.html.sh: Document it. * doc/posix-functions/fdatasync.texi (fdatasync): Likewise. * modules/fdatasync-tests: New test. * tests/test-fdatasync.c: Likewise. Signed-off-by: Eric Blake <eblake@redhat.com>
Karl Berry 1a37570a 2011-08-06T07:30:55 _Noreturn not a separate module
Paul Eggert 7c185762 2011-07-22T15:06:36 largefile: new module, replacing large-inode Pádraig Brady suggested this in <http://debbugs.gnu.org/9140#20>. * MODULES.html.sh: Add largefile, remove large-inode. * modules/largefile, m4/largefile.m4: New files. * modules/large-inode, m4/large-inode.m4: Remove.
Paul Eggert a25d7cf2 2011-07-22T09:36:56 large-inode: New module * MODULES.html.sh: Add it. * modules/large-inode, m4/large-inode.m4: New files.
Pádraig Brady eb9e60e3 2011-07-19T21:51:49 timer-time: A new module to check for timer_settime() * m4/timer_time.m4: Check for the POSIX function. * modules/timer-time: Add the new module. * MODULES.html.sh (Compat checks for POSIX:2008 functions): Mention it. * doc/posix-functions/timer_create.texi: Add timer-time as the module, and update the platforms where unavailable. * doc/posix-functions/timer_delete.texi: Likewise. * doc/posix-functions/timer_gettime.texi: Likewise. * doc/posix-functions/timer_settime.texi: Likewise. Signed-off-by: Pádraig Brady <P@draigBrady.com>
Eric Blake 9c6e26ca 2011-07-15T15:08:34 ffsl, ffsll: new modules * modules/ffsl: New file. * modules/ffsll: Likewise. * m4/ffsl.m4: Likewise. * m4/ffsll.m4: Likewise. * lib/ffsl.c: Likewise. * lib/ffsl.h: Likewise. * lib/ffsll.c: Likewise. * m4/string_h.m4 (gl_HEADER_STRING_H_BODY) (gl_HEADER_STRING_H_DEFAULTS): Add defaults. * modules/string (Makefile.am): Substitute witnesses. * lib/strings.in.h (ffsl, ffsll): Declare. * modules/ffsl-tests: New test file. * modules/ffsll-tests: Likewise. * tests/test-ffsl.c: Likewise. * tests/test-ffsll.c: Likewise. * MODULES.html.sh (Integer arithmetic functions): Mention it. * doc/glibc-functions/ffsl.texi (ffsl): Likewise. * doc/glibc-functions/ffsll.texi (ffsll): Likewise. Signed-off-by: Eric Blake <eblake@redhat.com>