From 474642b4a47c74a1f277955d7387d1886546fa01 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Wed, 16 Nov 2016 16:37:17 -0500 Subject: [PATCH 1/2] git-gui: sort entries in optimized tclIndex auto_mkindex expands wildcards in directory order, which depends on the underlying filesystem. To improve build reproducibility, sort the list of *.tcl files in the Makefile. The unoptimized loading case was previously fixed in gitgui-0.21.0~14 (git-gui: sort entries in tclIndex, 2015-01-26). Signed-off-by: Anders Kaseorg Signed-off-by: Jonathan Nieder Signed-off-by: Junio C Hamano --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index fe30be38dc..f94b3e13d6 100644 --- a/Makefile +++ b/Makefile @@ -252,7 +252,7 @@ $(ALL_MSGFILES): %.msg : %.po lib/tclIndex: $(ALL_LIBFILES) GIT-GUI-VARS $(QUIET_INDEX)if echo \ $(foreach p,$(PRELOAD_FILES),source $p\;) \ - auto_mkindex lib '*.tcl' \ + auto_mkindex lib $(patsubst lib/%,%,$(sort $(ALL_LIBFILES))) \ | $(TCL_PATH) $(QUIET_2DEVNULL); then : ok; \ else \ echo >&2 " * $(TCL_PATH) failed; using unoptimized loading"; \ From 7513595a3b997e07ad525b213b83e4f0bd358bb9 Mon Sep 17 00:00:00 2001 From: Jonathan Nieder Date: Fri, 1 Jul 2016 17:32:00 -0700 Subject: [PATCH 2/2] generate-cmdlist: avoid non-deterministic output Non-determinism makes it harder for build tools to discover when a target needs to be rebuilt. generate-cmdlist.sh stores the full path in a comment: /* Automatically generated by /build/git-agojiD/git-2.15.0/generate-cmdlist.sh */ Use the file name alone instead. Signed-off-by: Jonathan Nieder Signed-off-by: Junio C Hamano --- generate-cmdlist.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generate-cmdlist.sh b/generate-cmdlist.sh index ab0d1b0c06..eeea4b67ea 100755 --- a/generate-cmdlist.sh +++ b/generate-cmdlist.sh @@ -1,6 +1,6 @@ #!/bin/sh -echo "/* Automatically generated by $0 */ +echo "/* Automatically generated by generate-cmdlist.sh */ struct cmdname_help { char name[16]; char help[80];