Code

Makefile: rebuild git.o on version change, clean up git$X flags
authorMatt McCutchen <hashproduct@gmail.com>
Tue, 10 Jul 2007 01:30:39 +0000 (21:30 -0400)
committerJunio C Hamano <gitster@pobox.com>
Tue, 10 Jul 2007 06:39:59 +0000 (23:39 -0700)
Commit 334d28ae factored out git.o as an intermediate stage between
git.c and git$X.  However:

- It left some no-longer-relevant flags in the rule for git$X.

- It failed to replace git$X with git.o in the list of files that
  record GIT_VERSION.  This broke incorporation of a changed
  GIT_VERSION into git$X because, when GIT_VERSION changes, git.o isn't
  remade and git$X is relinked from the git.o that still contains the
  old GIT_VERSION.

This patch removes the irrelevant flags and fixes incorporation of a
changed GIT_VERSION into git$X.

Signed-off-by: Matt McCutchen <hashproduct@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Makefile

index 5b30e5c864d64e6ae688464b9eb36437e0e04c7f..d7541b403b20ec85872040915648c6356df710ac 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -753,8 +753,7 @@ git.o: git.c common-cmds.h GIT-CFLAGS
                $(ALL_CFLAGS) -c $(filter %.c,$^)
 
 git$X: git.o $(BUILTIN_OBJS) $(GITLIBS)
-       $(QUIET_LINK)$(CC) -DGIT_VERSION='"$(GIT_VERSION)"' \
-               $(ALL_CFLAGS) -o $@ $(filter %.c,$^) git.o \
+       $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ git.o \
                $(BUILTIN_OBJS) $(ALL_LDFLAGS) $(LIBS)
 
 help.o: common-cmds.h
@@ -857,7 +856,7 @@ configure: configure.ac
        rm -f $<+
 
 # These can record GIT_VERSION
-git$X git.spec \
+git.o git.spec \
        $(patsubst %.sh,%,$(SCRIPT_SH)) \
        $(patsubst %.perl,%,$(SCRIPT_PERL)) \
        : GIT-VERSION-FILE