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

Attachment: loop.log.gz
Description: application/gzip

Reply via email to