Code

Guard a few Makefile variables against user environments
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Wed, 25 Mar 2009 16:27:28 +0000 (17:27 +0100)
committerJunio C Hamano <gitster@pobox.com>
Wed, 25 Mar 2009 19:12:35 +0000 (12:12 -0700)
Some variables are not initialized in the Makefile, but appended to.  If
the user has those variables in her environment, it will break the
build.

The variable names were found using these commands:

$ s='[ \t]';
$ S='[^ \t]';
$ comm -23 \
<(sed -n "s/^$s*\($S*\)$s$s*+=.*/\1/p" < Makefile |
  sort | uniq) \
<(sed -n "s/^$s*\($S*\)$s$s*=.*/\1/p" < Makefile |
  sort | uniq)

This fixes msysGit issue 216.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Makefile

index 320c89786cf5b1046b7b794f59cd4ce118d81c95..7867eaccdb90729aef26dc9f67a45a5a74961aae 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -263,6 +263,18 @@ SPARSE_FLAGS = -D__BIG_ENDIAN__ -D__powerpc__
 BASIC_CFLAGS =
 BASIC_LDFLAGS =
 
+# Guard against environment variables
+BUILTIN_OBJS =
+BUILT_INS =
+COMPAT_CFLAGS =
+COMPAT_OBJS =
+LIB_H =
+LIB_OBJS =
+PROGRAMS =
+SCRIPT_PERL =
+SCRIPT_SH =
+TEST_PROGRAMS =
+
 SCRIPT_SH += git-am.sh
 SCRIPT_SH += git-bisect.sh
 SCRIPT_SH += git-filter-branch.sh