Bruno Haible [2025-01-26 04:36 +0100] wrote: > Basil L. Contovounesios wrote: >> Now I've noticed a separate issue with the VERSION_NUMBER docs: >> running 'make dist' in a dirty worktree seems to get stuck in an >> autoreconf loop involving GNUmakefile, judging from this message: >> >> INFO: running autoreconf for new version string: 0.0.0.4-9a38-dirty >> >> Here, _curr-ver has a -dirty suffix but VERSION does not. >> >> The loop does not happen if I commit all local changes, or remove the >> sed -e 's/dirty$/modified/' invocation from configure.ac. > > Does it work if you replace the GNUmakefile line > > cd $(srcdir) && rm -rf autom4te.cache .version && $(_autoreconf) > > with > > cd $(srcdir) && rm -rf autom4te.cache .version > ./config.status --recheck > ?
No, the loop still happens. With the following applied to my Gnulib checkout:
diff --git a/top/GNUmakefile b/top/GNUmakefile index 44419bfcb0..2d8628c72d 100644 --- a/top/GNUmakefile +++ b/top/GNUmakefile @@ -84,7 +84,8 @@ GNUmakefile: .PHONY: _version _version: - cd $(srcdir) && rm -rf autom4te.cache .version && $(_autoreconf) + cd $(srcdir) && rm -rf autom4te.cache .version + ./config.status --recheck $(MAKE) $(AM_MAKEFLAGS) Makefile else
and again starting from a clean checkout of https://git.sr.ht/~blc/foo: echo >> configure.ac git clean -fdx ./bootstrap --no-git --skip-po ./configure make dist I get the attached loop (the log confirms that the GNUmakefile in use is patched as expected). Thanks, -- Basil
loop.log.gz
Description: application/gzip