--- Begin Message ---
Subject: |
[PATCH 0/3] Reproducible `make dist' tarball: Avoid override stamp-N warnings. |
Date: |
Sun, 14 Apr 2024 11:56:36 +0200 |
Hi!
Reproducibility is fine and all that but the forteen new make warnings
--8<---------------cut here---------------start------------->8---
Makefile:7400: warning: overriding recipe for target 'doc/stamp-vti'
Makefile:5117: warning: ignoring old recipe for target 'doc/stamp-vti'
Makefile:7401: warning: overriding recipe for target 'doc/stamp-1'
Makefile:5182: warning: ignoring old recipe for target 'doc/stamp-1'
[..]
--8<---------------cut here---------------end--------------->8---
already started to annoy me so much that I found another solution: Overwrite
build-aux/mdate-sh with our own, new build-aux/mdate-from-git.scm script.
It comes with a bit of a hack: because of how Automake's stamp-N rules are
written, the new script needs knowledge about where to get the timestamp for
doc/guix.LANG.texi files.
WDYT?
Greetings,
Janneke
Janneke Nieuwenhuizen (3):
maint: Generate doc/version[-LANG].texi using `mdate-from-git.scm'.
Revert "maint: Generate 'doc/version-LANG.texi' reproducibly."
Revert "maint: Generate 'doc/version.texi' reproducibly."
bootstrap | 7 +++
build-aux/mdate-from-git.scm | 88 ++++++++++++++++++++++++++++++++++++
doc/local.mk | 32 -------------
3 files changed, 95 insertions(+), 32 deletions(-)
create mode 100755 build-aux/mdate-from-git.scm
base-commit: e5dda412c2e28fb65a549824f492895e72c33813
--
2.41.0
--- End Message ---
--- Begin Message ---
Subject: |
Re: [bug#70380] [PATCH v4 2/6] maint: Support `make doc-po-update' from tarball. |
Date: |
Fri, 19 Apr 2024 16:47:54 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
pelzflorian (Florian Pelz) writes:
Hi Florian,
> Janneke Nieuwenhuizen <janneke@gnu.org> writes:
>> pelzflorian (Florian Pelz) writes:
>>> Also yet one more problem (perhaps) I’ve discovered that “info
>>> doc/guix.info” now says:
[..]
>> What recipe did you use? I'm probably doing the same thing to test and
>> might well be missing something.
>
> From a “make dist”-generated tarball, I ran “./bootstrap”, “./configure
> --sysconfdir=/etc --localstatedir=/var” and “make”.
Ah! I said before that `git-version-gen' was broken when not run from a
tarball...but it turns out to work fine...as long as you distribute it ;)
I've added a patch to distribute it and that also fixes all the
--8<---------------cut here---------------start------------->8---
sh: line 1: build-aux/git-version-gen: No such file or directory
--8<---------------cut here---------------end--------------->8---
noise.
> From the 1.4.0 source tarball, this leads to “info doc/guix.info”
> displaying 1.4.0, but not from a “make dist”-generated tarball.
Yeah, I can see that now. AFAICS that was more of a "happy
coincidence". We didn't distribute git-version-gen, so after running
./bootstrap, also in the 1.4.0 tarball, ./configure has
--8<---------------cut here---------------start------------->8---
# Define the identity of the package.
PACKAGE='guix'
VERSION=''
--8<---------------cut here---------------end--------------->8---
I cannot say that I completely understand why in 1.4.0 guix.info still
has a non-empty version after running make. It must have something to
do with timestamp or dependency magic causing doc/version.texi not to be
regerenated, even after running ./bootstrap (although it depends on
configure
--8<---------------cut here---------------start------------->8---
$(srcdir)/doc/version.texi: $(srcdir)/doc/stamp-vti
$(srcdir)/doc/stamp-vti: doc/guix.texi $(top_srcdir)/configure
--8<---------------cut here---------------end--------------->8---
which we just regenerated. Oh well, we have a proper fix now.
Thanks a lot for your reviews!
Pushed to master as ba52975ea91af49e8e6a436438a578589a209ecc
Greetings,
Janneke
--
Janneke Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
--- End Message ---