diff options
author | Jakub Jelinek <jakub@redhat.com> | 2024-04-15 22:32:37 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2024-04-15 22:32:37 +0200 |
commit | 701e1b94066583f909aee1b5e95ea4dacd9c43b3 (patch) | |
tree | 62832229db2c3b2d8d855220425ef6915fd03422 /gotools | |
parent | b6239715c10193e73e66fe1671418459afd4a9aa (diff) | |
download | gcc-701e1b94066583f909aee1b5e95ea4dacd9c43b3.zip gcc-701e1b94066583f909aee1b5e95ea4dacd9c43b3.tar.gz gcc-701e1b94066583f909aee1b5e95ea4dacd9c43b3.tar.bz2 |
gotools: Workaround non-reproduceability of automake
The regen bot recently flagged a difference in gotools/Makefile.in.
Trying it locally, it seems pretty random
for i in `seq 20`; do PATH=~/automake-1.15.1/bin:~/autoconf-2.69/bin:$PATH automake; echo -n `git diff Makefile.in | wc -l`" "; done; echo; for i in `seq 20`; do
+PATH=~/automake-1.15.1/bin:~/autoconf-2.69/bin:$PATH setarch x86_64 -R automake; echo -n `git diff Makefile.in | wc -l`" "; done; echo;
14 14 14 0 0 0 14 0 14 0 14 14 14 14 0 14 14 0 0 0
14 0 14 0 0 14 14 14 0 14 14 0 0 14 14 14 0 0 0 14
The 14 line git diff is
diff --git a/gotools/Makefile.in b/gotools/Makefile.in
index 36c2ec2abd3..f40883c39be 100644
--- a/gotools/Makefile.in
+++ b/gotools/Makefile.in
@@ -704,8 +704,8 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-@NATIVE_FALSE@install-exec-local:
@NATIVE_FALSE@uninstall-local:
+@NATIVE_FALSE@install-exec-local:
clean: clean-am
clean-am: clean-binPROGRAMS clean-generic clean-noinstPROGRAMS \
so whether it is
@NATIVE_FALSE@install-exec-local:
@NATIVE_FALSE@uninstall-local:
or
@NATIVE_FALSE@uninstall-local:
@NATIVE_FALSE@install-exec-local:
depends on some hash table traversal or what.
I'm not familiar with automake/m4 enough to debug that, so I'm
instead offering a workaround, with this patch the order is deterministic.
2024-04-15 Jakub Jelinek <jakub@redhat.com>
* Makefile.am (install-exec-local, uninstall-local): Add goals
on the else branch of if NATIVE to ensure reproducibility.
* Makefile.in: Regenerate.
Diffstat (limited to 'gotools')
-rw-r--r-- | gotools/Makefile.am | 2 | ||||
-rw-r--r-- | gotools/Makefile.in | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/gotools/Makefile.am b/gotools/Makefile.am index d2376b9..80b2184 100644 --- a/gotools/Makefile.am +++ b/gotools/Makefile.am @@ -366,5 +366,7 @@ else # only do this if such a compiler is available. We also need to get # the right values for GOARCH and GOOS in the default build context in # the go/build package. Figure this out later. +install-exec-local: +uninstall-local: endif diff --git a/gotools/Makefile.in b/gotools/Makefile.in index 36c2ec2..8a4a68e 100644 --- a/gotools/Makefile.in +++ b/gotools/Makefile.in @@ -704,8 +704,6 @@ distclean-generic: maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -@NATIVE_FALSE@install-exec-local: -@NATIVE_FALSE@uninstall-local: clean: clean-am clean-am: clean-binPROGRAMS clean-generic clean-noinstPROGRAMS \ @@ -1035,6 +1033,8 @@ mostlyclean-local: # only do this if such a compiler is available. We also need to get # the right values for GOARCH and GOOS in the default build context in # the go/build package. Figure this out later. +@NATIVE_FALSE@install-exec-local: +@NATIVE_FALSE@uninstall-local: # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. |