summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetr Baudis <pasky@suse.cz>2006-07-03 23:16:32 +0200
committerJunio C Hamano <junkio@cox.net>2006-07-03 18:34:53 -0700
commit6fcca938b05c33bcd8b502d6b6f178e377609fa3 (patch)
tree22287b26b74603cc780beca14a687be60f7f0f5c
parent3c767a08243244b18d48315f8433ba07e435f654 (diff)
downloadgit-6fcca938b05c33bcd8b502d6b6f178e377609fa3.tar.gz
Use $GITPERLLIB instead of $RUNNING_GIT_TESTS and centralize @INC munging
This makes the Git perl scripts check $GITPERLLIB instead of $RUNNING_GIT_TESTS, which makes more sense if you are setting up your shell environment to use a non-installed Git instance. It also weeds out the @INC munging from the individual scripts and makes Makefile add it during the .perl files processing, so that we can change just a single place when we modify this shared logic. It looks ugly in the scripts, too. ;-) And instead of doing arcane things with the @INC array, we just do 'use lib' instead, which is essentialy the same thing anyway. I first want to do three separate patches but it turned out that it's quite a lot neater when bundled together, so I hope it's ok. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
-rw-r--r--INSTALL4
-rw-r--r--Makefile4
-rwxr-xr-xgit-fmt-merge-msg.perl5
-rwxr-xr-xgit-mv.perl5
-rwxr-xr-xt/test-lib.sh5
5 files changed, 7 insertions, 16 deletions
diff --git a/INSTALL b/INSTALL
index ed502de3d0..4e8f883384 100644
--- a/INSTALL
+++ b/INSTALL
@@ -39,8 +39,8 @@ Issues of note:
GIT_EXEC_PATH=`pwd`
PATH=`pwd`:$PATH
- PERL5LIB=`pwd`/perl/blib/lib:`pwd`/perl/blib/arch/auto/Git
- export GIT_EXEC_PATH PATH PERL5LIB
+ GITPERLLIB=`pwd`/perl/blib/lib:`pwd`/perl/blib/arch/auto/Git
+ export GIT_EXEC_PATH PATH GITPERLLIB
- Git is reasonably self-sufficient, but does depend on a few external
programs and libraries:
diff --git a/Makefile b/Makefile
index 7030167253..71657ec904 100644
--- a/Makefile
+++ b/Makefile
@@ -550,7 +550,9 @@ $(patsubst %.perl,%,$(SCRIPT_PERL)): perl/Makefile
$(patsubst %.perl,%,$(SCRIPT_PERL)): % : %.perl
rm -f $@ $@+
INSTLIBDIR=`$(MAKE) -C perl -s --no-print-directory instlibdir` && \
- sed -e '1s|#!.*perl\(.*\)|#!$(PERL_PATH_SQ)\1|' \
+ sed -e '1s|#!.*perl|#!$(PERL_PATH_SQ)|1' \
+ -e '2i\
+ use lib (split(/:/, $$ENV{GITPERLLIB} || '\'"$$INSTLIBDIR"\''));' \
-e 's|@@INSTLIBDIR@@|'"$$INSTLIBDIR"'|g' \
-e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \
$@.perl >$@+
diff --git a/git-fmt-merge-msg.perl b/git-fmt-merge-msg.perl
index a9805dd511..f86231e14b 100755
--- a/git-fmt-merge-msg.perl
+++ b/git-fmt-merge-msg.perl
@@ -5,11 +5,6 @@
# Read .git/FETCH_HEAD and make a human readable merge message
# by grouping branches and tags together to form a single line.
-BEGIN {
- unless (exists $ENV{'RUNNING_GIT_TESTS'}) {
- unshift @INC, '@@INSTLIBDIR@@';
- }
-}
use strict;
use Git;
use Error qw(:try);
diff --git a/git-mv.perl b/git-mv.perl
index 5134b805a5..322b9fdcb3 100755
--- a/git-mv.perl
+++ b/git-mv.perl
@@ -6,11 +6,6 @@
# This file is licensed under the GPL v2, or a later version
# at the discretion of Linus Torvalds.
-BEGIN {
- unless (exists $ENV{'RUNNING_GIT_TESTS'}) {
- unshift @INC, '@@INSTLIBDIR@@';
- }
-}
use warnings;
use strict;
use Getopt::Std;
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 298c6caa73..ad9796ee98 100755
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -206,9 +206,8 @@ PYTHON=`sed -e '1{
PYTHONPATH=$(pwd)/../compat
export PYTHONPATH
}
-RUNNING_GIT_TESTS=YesWeAre
-PERL5LIB=$(pwd)/../perl/blib/lib:$(pwd)/../perl/blib/arch/auto/Git
-export PERL5LIB RUNNING_GIT_TESTS
+GITPERLLIB=$(pwd)/../perl/blib/lib:$(pwd)/../perl/blib/arch/auto/Git
+export GITPERLLIB
test -d ../templates/blt || {
error "You haven't built things yet, have you?"
}