1
0
mirror of https://git.savannah.gnu.org/git/gnulib.git synced 2026-10-24 00:48:56 +03:00

464 Commits

Author SHA1 Message Date
Collin Funk
ae3de5b4e9 maintainer-makefile: Fix false sc_po_check failure with bison sources.
* top/maint.mk (generated_files): Also match files ending with the '.y'
extension.
2026-08-25 21:42:17 -07:00
Bruno Haible
426f6df268 bootstrap: Fix error "client sha256; server sha1" seen by some users.
Reported by Seth McDonald <dev@sethm.id.au> in
<https://lists.gnu.org/archive/html/bug-gnulib/2026-08/msg00149.html>.

* top/bootstrap-funclib.sh (prepare_GNULIB_SRCDIR): Force sha1 object
format in "git init" command.
* build-aux/bootstrap: Regenerated.
2026-08-09 15:29:57 +02:00
Collin Funk
03cc9b5ab1 maintainer-makefile: Fix false syntax-check failure when using inttostr.
* top/maint.mk (sc_prohibit_inttostr_without_use): Adjust the regular
expression to also match inttostr.
2026-07-12 10:32:11 -07:00
Bruno Haible
9624f7f828 maintainer-makefile: Fix sc_po_check failure.
* top/maint.mk (perl_translatable_files_list_): Filter out gettext.h.
2026-05-12 20:49:27 +02:00
Jim Meyering
15211966de maint.mk: fix sc_Wundef_boolean race with parallel syntax-check
With highly parallel "make syntax-check", sc_Wundef_boolean's
in_files='config.h' was matched as an unanchored, unescaped regex
by "find | grep -E", so the '.' matched any character and the lack
of anchoring matched anywhere in a path.  This made it match the
.sc-start-sc_*config_h* marker files created by parallel rules.
Symptom: I saw see these go by:
  grep: ./.sc-start-sc_require_config_h_first: No such file or directory
  grep: ./.sc-start-sc_prohibit_have_config_h: No such file or directory
  grep: ./.sc-start-sc_require_config_h: No such file or directory
* top/maint.mk (sc_Wundef_boolean): Use '(^|/)config\.h$' rather
than bare 'config.h' as the in_files ERE.
2026-04-19 19:36:03 -07:00
Pádraig Brady
83730551b4 maintainer-makefile: propagate MAKEINFO to gendocs
* top/maint.mk (web-manual): Propagate MAKEINFO explicitly,
rather than requiring it exported in the environment,
which can be awkward on Solaris make for example.
2026-02-04 19:15:36 +00:00
Zack Weinberg
c6842ec25c maintainer-makefile: Avoid false positives of unsigned_* syntax checks.
* top/maint.mk (sc_unsigned_char, sc_unsigned_short, sc_unsigned_int,
sc_unsigned_log): Add ‘exclude’ patterns so that these tests do not
throw a false positive on their own commentary.

Copyright-paperwork-exempt: Yes
2026-02-03 18:22:11 +01:00
Zack Weinberg
42fb5641a5 maintainer-makefile: Avoid false positive of fsf_postal syntax check.
* top/maint.mk (sc_fsf_postal): Adjust ‘prohibit’ regex to not match
itself.

Copyright-paperwork-exempt: Yes
2026-02-03 18:01:48 +01:00
Collin Funk
a8482ceecf maint: run 'make update-copyright' 2026-01-01 10:37:05 -08:00
Paul Eggert
4a09ff7969 maint: fit bootstrap into 80 columns
This is for GNU grep’s sc_long_lines test.
2025-12-04 11:37:48 -08:00
Basil L. Contovounesios
125acf8e9f maintainer-makefile: Auto-detect NEWS.md.
Suggested by Simon Josefsson <simon@josefsson.org> in:
<https://lists.gnu.org/r/bug-gnulib/2025-11/msg00127.html>.

* top/maint.mk (NEWS_file): Default to NEWS.md when present.
(news-check-regexp, news-check-regexp-prev): Accept headings marked
with either '#' or '*'.
(gl_noteworthy_news_): Default to a #-heading in place of
a *-heading when NEWS_file name implies Markdown.
(release-prep): Consistently prefer test over [.

Signed-off-by: Simon Josefsson <simon@josefsson.org>
2025-11-26 22:25:20 +01:00
Basil L. Contovounesios
d7c1c42e0f maintainer-makefile: Optimize repeated executions of the same command.
* top/maint.mk (gnulib_dir): Define as a simply (rather than
recursively) expanded variable, to avoid repeated $(shell)
invocations.
2025-11-17 19:20:08 +01:00
Bruno Haible
1ae6e5fa59 bootstrap: Improve installation of git-merge-changelog driver.
Suggested by Basil L. Contovounesios <basil@contovou.net> in
<https://lists.gnu.org/archive/html/bug-gnulib/2025-11/msg00122.html>.

* top/bootstrap-funclib.sh (autopull): Pass a 4th argument to
git-merge-changelog.
* build-aux/bootstrap: Regenerated.
2025-11-12 15:03:00 +01:00
Basil L. Contovounesios
89ec7b328a readme-release: Accommodate alternative NEWS formats.
* top/README-release: Generalize 'noteworthy changes' location.
2025-11-11 21:05:09 +01:00
Basil L. Contovounesios
aea62b5bb5 maintainer-makefile: Accommodate alternative NEWS formats.
* top/maint.mk (gl_noteworthy_news_): Make overridable.
(news-check-regexp-prev, NEWS_file, release_commit_args): New
overridable variables.
(NEWS_hash, sc_immutable_NEWS, update-NEWS-hash, news-check)
(announcement, release-commit, emit-commit-log): Use them.
(release-prep): Ditto.  Search for news-check-regexp within
news-check-lines-spec instead of hard-coding line 3.
2025-11-11 21:03:18 +01:00
Basil L. Contovounesios
fe7134e097 maintainer-makefile: Quieter 'release' target.
* top/maint.mk (update-NEWS-hash): Use AM_V_GEN.
(gpgv): Detect gpgv2 via 'command -v'; calling it directly results
in several 'gpgv2: command not found' messages.
2025-11-11 21:01:19 +01:00
Paul Eggert
b95da5f7a7 stringeq: diagnose for streq instead of STREQ
* top/maint.mk (sc_prohibit_strcmp): In diagnostic, suggest streq
instead of STREQ/STRNEQ.
2025-09-17 08:20:25 -07:00
Bruno Haible
915d8d2e2d gitsub.sh: Revert last change.
* top/gitsub.sh: Revert 2025-09-06 change.
2025-09-13 00:48:22 +02:00
Pádraig Brady
4234562e7e maintainer-makefile: relax coverage requirements
Adjust so that `make coverage` completes for coreutils.
There is no coverage for lib/parse-datetime.y
but everything else is fine.

* top/maint.mk (COVERAGE_CCOPTS): Since we're overriding CFLAGS,
add -Wno-error to relax warning requirements.  Projects usually default
to -O2, and changing from that can very well induce new warnings.
(build-coverage, gen-coverage): Keep going on non-fatal errors.
2025-09-10 13:25:10 +01:00
Paul Eggert
3d041f83c6 maint: allow false/true in C macros
* top/maint.mk (sc_Wundef_boolean): Allow false and true in C
macro definiens.  C23 requires support for false and true, and the
‘bool’ module makes it easy to support this in older compilers.
2025-09-07 16:34:43 -07:00
Bruno Haible
153f0b7003 bootstrap: Improve efficiency of "git clone".
* top/bootstrap-funclib.sh (default_gnulib_url): Use read-only mirror of
git.savannah.gnu.org.
* build-aux/bootstrap: Regenerated.
2025-09-08 01:20:01 +02:00
Bruno Haible
e287b2aaf1 gitsub.sh: Support URL redirections also for subcheckouts.
* top/gitsub.sh (func_expand): New function.
(func_pull): Invoke it, and show a message about redirection.
2025-09-06 16:43:29 +02:00
Collin Funk
25eaa5a618 readme-release: Remove link to Hydra autobuilder.
* top/README-release: Remove link to Hydra autobuilder since the recipes
have not been updated in years.
2025-07-19 18:08:57 -07:00
Collin Funk
9a1a6385a5 Silence 'time-stamp' warnings with bleeding-edge Emacs.
* build-aux/announce-gen: Use "%Y" instead of "%:y" for the
'time-stamp-format' local variable.
* build-aux/do-release-commit-and-tag: Likewise.
* build-aux/gendocs.sh: Likewise.
* build-aux/git-version-gen: Likewise.
* build-aux/gitlog-to-changelog: Likewise.
* build-aux/gnu-web-doc-update: Likewise.
* build-aux/gnupload: Likewise.
* build-aux/move-if-change: Likewise.
* build-aux/prefix-gnulib-mk: Likewise.
* build-aux/update-copyright: Likewise.
* build-aux/useless-if-before-free: Likewise.
* build-aux/vc-list-files: Likewise.
* top/bootstrap: Likewise.
* top/bootstrap-funclib.sh: Likewise.
* build-aux/bootstrap: Regenerate.
2025-06-09 19:50:35 -07:00
Bruno Haible
a7785e699a Rename module hashcode-string to hashcode-string2.
* lib/hashcode-string2.h: Renamed from lib/hashcode-string.h.
* lib/hashcode-string2.c: Renamed from lib/hashcode-string.c.
* modules/hashcode-string2: Renamed from modules/hashcode-string.
* MODULES.html.sh: Update.
* top/maint.mk: Update.
* lib/hash-pjw.h: Update.
* modules/hash-pjw: Update.
* lib/hashcode-named-file.c: Update.
* modules/hashcode-named-file (Depends-on): Update.
* tests/test-hash.c: Update.
* modules/hash-tests (Depends-on): Update.
2025-04-30 13:12:23 +02:00
Bruno Haible
261415b096 Rename module hash-pjw to hashcode-string.
* lib/hashcode-string.h: Renamed from lib/hash-pjw.h.
* lib/hashcode-string.c: Renamed from lib/hash-pjw.c.
* lib/hash-pjw.h: New file.
* modules/hashcode-string: Renamed from modules/hash-pjw.
* modules/hash-pjw: New file.
* MODULES.html.sh: Update.
* top/maint.mk: Update.
* lib/hash-triple-simple.c: Update.
* modules/hash-triple-simple (Depends-on): Update.
* tests/test-hash.c: Update.
* modules/hash-tests (Depends-on): Update.
2025-04-30 00:51:27 +02:00
Simon Josefsson
ba4e57eea9 maintainer-makefile: Avoid submodule-checks fail without submodules.
* top/maint.mk (no-submodule-changes): Condition on .gitmodules.
(public-submodule-commit): Likewise.
2025-04-07 08:56:09 +02:00
Simon Josefsson
43bf2e8b65 maintainer-makefile: Work with modern LCOV versions.
* top/maint.mk (gen-coverage): Don't pass --highlight to genhtml.
2025-04-04 11:49:13 +02:00
Simon Josefsson
54fc57c23d bootstrap: Improve "make dist" tarball reproducability.
* top/bootstrap-funclib.sh (autogen): Don't pass unnecessary -I's when
invoking autoreconf.  The order of M4 include directories is reflected
in Makefile.in content.  Our GNUmakefile _version rule invoke
autoreconf without any extra -I, and this difference in how autoreconf
is invoked results in different tarballs for "make dist" vs "make
release" which is undesirable.
2025-03-27 20:01:42 +01:00
Simon Josefsson
fe06b2bec5 maintainer-makefile: Check spelling using 'codespell'.
* top/maint.mk (sc_codespell): Add.
2025-03-27 19:45:30 +01:00
Bruno Haible
e319c0feea bootstrap: Fix recognition of --depth option with recent git releases.
Reported by Benno Schulenberg <bensberg@telfort.nl> in
<https://lists.gnu.org/archive/html/bug-gnulib/2025-02/msg00106.html>.

* top/bootstrap-funclib.sh (prepare_GNULIB_SRCDIR): Assume that
'git clone' and 'git fetch' support the --depth option.
* build-aux/bootstrap: Regenerated.
2025-02-16 13:45:35 +01:00
Bruno Haible
1ec9cc839d bootstrap: Remove undesired output.
* top/bootstrap-funclib.sh (prepare_GNULIB_SRCDIR): Silence the initial
branch hint.
* build-aux/bootstrap: Regenerated.
2025-02-04 02:07:01 +01:00
Paul Eggert
553ab924d2 announce-gen: add comments
* top/maint.mk: Add comments re recent change.
2025-01-31 16:29:00 -08:00
Simon Josefsson
c89cd2fbd3 announce-gen: Allow 'make release' to work any day.
* top/maint.mk (today): Use regexp rather than current time.
2025-02-01 00:58:45 +01:00
Bruno Haible
2efde69cd5 bootstrap: Remove obsolete code.
Reported by Basil L. Contovounesios <basil@contovou.net> in
<https://lists.gnu.org/archive/html/bug-gnulib/2025-01/msg00221.html>.

* top/bootstrap-funclib.sh (package): Don't look at gl_INIT_PACKAGE
invocations.
* build-aux/bootstrap: Regenerated.
2025-01-26 04:29:59 +01:00
Bruno Haible
b7f27f44b7 bootstrap: Make it work with module 'package-version'.
Reported by Basil L. Contovounesios <basil@contovou.net> in
<https://lists.gnu.org/archive/html/bug-gnulib/2025-01/msg00195.html>.

* top/bootstrap-funclib.sh (normalize_package_name): New variable.
(extract_package_name): Don't normalize the package name here.
(package): Also look at the first argument of a gl_INIT_PACKAGE
invocation.
* build-aux/bootstrap: Regenerated.
2025-01-23 22:18:37 +01:00
Bruno Haible
7e2fe1fb9a doc: Document the workflows of the .tarball-version and .version files.
* doc/package-version.texi: New file.
* doc/gnulib.texi (Build Infrastructure Modules): Include it.
* build-aux/git-version-gen: Fix comments: Fix description of
.tarball-version. Recommend to invoke git-version-gen at configure time,
not at autoconf time. Remove description of .version. Rename Makefile
target 'tarball-version' to 'dist-tarball-version'.
* top/GNUmakefile: Improve comments.
2025-01-22 21:43:28 +01:00
Bruno Haible
f536baac97 bootstrap: Support a tag name as GNULIB_REVISION.
* top/bootstrap-funclib.sh (prepare_GNULIB_SRCDIR): If $GNULIB_REVISION
is a tag name, make sure to add that tag.
* build-aux/bootstrap: Regenerated.
2025-01-09 09:37:41 +01:00
Simon Josefsson
e7d6a9e033 maintainer-makefile: Improve gnulib-version handling.
* top/maint.mk (gnulib-version): Prefix commit id with human
readable leading ChangeLog date, suggested by Bruno Haible.
(announcement): Handle multi-word gnulib-version.
2025-01-02 09:28:48 +01:00
Pádraig Brady
7b08932179 maint: run 'make update-copyright' 2025-01-01 09:25:10 +00:00
Simon Josefsson
552c0b0635 maintainer-makefile: Improve gnulib-version derivation.
* top/maint.mk (gnulib-version): Use git only when possible,
falling back to GNULIB_REVISION or ChangeLog date otherwise.  Use
consistent full identifier.
2024-12-28 19:49:18 +01:00
Simon Josefsson
563046ab9b maintainer-makefile: Pass on $(announce_gen_args) to announce-gen.
* top/maint.mk (announce_gen_args): New variable, for cfg.mk use.
(announcement): Use it.
2024-12-10 09:52:37 +01:00
Simon Josefsson
7eb21c6846 bootstrap: avoid sc_prohibit_undesirable_word_seq failure
* top/bootstrap-funclib.sh: s/can not/cannot/
2024-11-25 16:37:31 +01:00
Bruno Haible
59bf378a7d bootstrap: Tweak GNULIB_REFDIR related changes.
* top/bootstrap-funclib.sh (prepare_GNULIB_SRCDIR): Improve if/else
structure and comments. When cloning GNULIB_REFDIR and no submodule
'gnulib' is configured, switch to the default branch.
* top/bootstrap (usage):  Update documentation.
* build-aux/bootstrap: Regenerated.
2024-11-13 02:12:54 +01:00
Paul Eggert
fd902a8e39 bootstrap: avoid "cd"
* top/bootstrap-funclib.sh: Avoid "cd".  This saves a few
subprocesses and is more likely to yield diagnostics that make
sense to the user.
* build-aux/bootstrap: Regenerate.
2024-11-12 13:33:34 -08:00
Paul Eggert
b855d810e2 bootstrap: go back to old non-submodule semantics
* top/bootstrap-funclib.sh (prepare_GNULIB_SRCDIR):
When cloning GNULIB_REFDIR and no submodule 'gnulib' is configured,
set the origin’s URL to $gnulib_url and fetch from remote,
so that GNULIB_REFDIR is merely an accelerant rather than
having different semantics.
* build-aux/bootstrap: Regenerate.
2024-11-12 13:33:34 -08:00
Paul Eggert
935bbcb287 bootstrap: tune Octave bootstrap --gnulib-refdir
* top/bootstrap-funclib.sh (prepare_GNULIB_SRCDIR):
Use GNULIB_REFDIR also when a submodule 'gnulib' is not configured.
This greatly speeds up bootstrapping Octave when using
‘./bootstrap --gnulib-refdir=...’.
* build-aux/bootstrap: Regenerate.
2024-11-12 09:29:46 -08:00
Simon Josefsson
086c5c1c67 syntax-check: Catch all FSF postal addresses.
* top/maint.mk (sc_franklin_street): Rename to sc_fsf_postal,
improve regexp.
2024-09-03 20:40:51 +02:00
Simon Josefsson
0a6cc3f25e syntax-check: Catch obsolete Franklin Street usages.
* top/maint.mk (sc_franklin_street): New function.
2024-09-02 12:46:38 +02:00
Bruno Haible
662fd337db mntent: New module.
* lib/mntent.in.h: New file.
* m4/mntent_h.m4: New file.
* modules/mntent: New file.
* doc/glibc-headers/mntent.texi: Mention the new module.
* top/maint.mk (gl_prefer_angle_bracket_headers_): Add mntent.h.
* doc/gnulib-tool.texi (Style of #include statements): Add mntent.h to
the list.
2024-08-19 13:46:02 +02:00