diff options
author | Jeff King <peff@peff.net> | 2014-11-18 12:43:09 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-11-18 10:15:14 -0800 |
commit | e204b001cfa33e36eb06bc9d2437d75fc4efafe8 (patch) | |
tree | 8fbdc22c417d6b79ad2310576d4b9c45de5ab0fe | |
parent | 7fa1365c54c28b3cd9375539f381b54061a1880d (diff) | |
download | git-e204b001cfa33e36eb06bc9d2437d75fc4efafe8.tar.gz git-e204b001cfa33e36eb06bc9d2437d75fc4efafe8.tar.xz |
Makefile: have perl scripts depend on NO_PERL setting
If NO_PERL is not set, our perl scripts are built as
usual. If it is set, then we build "dummy" versions that
tell you git was built without perl support and exit
gracefully.
However, if you switch to NO_PERL in a directory with
existing build artifacts, we do not notice that the files
need rebuilt. We see only that they are newer than the
"unimplemented.sh" wrapper and assume they are done. So
doing:
make
make NO_PERL=Nope
would result in a git-add--interactive script that uses perl
(and running the test suite would make use of it).
Instead, we should trigger a rebuild of the perl scripts
anytime NO_PERL changes.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | Makefile | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -1801,6 +1801,9 @@ git.res: git.rc GIT-VERSION-FILE $(join -DMAJOR= -DMINOR=, $(wordlist 1,2,$(subst -, ,$(subst ., ,$(GIT_VERSION))))) \ -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@ +# This makes sure we depend on the NO_PERL setting itself. +$(patsubst %.perl,%,$(SCRIPT_PERL)): GIT-BUILD-OPTIONS + ifndef NO_PERL $(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak |