From: Petr Baudis <pasky@suse.cz>
To: Junio C Hamano <junkio@cox.net>
Cc: <git@vger.kernel.org>
Subject: [PATCH] Use $GITPERLLIB instead of $RUNNING_GIT_TESTS and centralize @INC munging
Date: Mon, 03 Jul 2006 23:16:32 +0200 [thread overview]
Message-ID: <20060703211632.1662.46767.stgit@machine.or.cz> (raw)
In-Reply-To: <20060703202925.GN29115@pasky.or.cz>
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>
---
INSTALL | 4 ++--
Makefile | 4 +++-
git-fmt-merge-msg.perl | 5 -----
git-mv.perl | 5 -----
t/test-lib.sh | 5 ++---
5 files changed, 7 insertions(+), 16 deletions(-)
diff --git a/INSTALL b/INSTALL
index ed502de..4e8f883 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 a62e8a3..bae95c2 100644
--- a/Makefile
+++ b/Makefile
@@ -552,7 +552,9 @@ common-cmds.h: Documentation/git-*.txt
$(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 a9805dd..f86231e 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 5134b80..322b9fd 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 298c6ca..ad9796e 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?"
}
next prev parent reply other threads:[~2006-07-03 21:16 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-02 21:40 Making perl scripts include the correct Git.pm Petr Baudis
2006-07-03 0:02 ` Junio C Hamano
2006-06-28 0:23 ` Quick merge status updates Junio C Hamano
2006-06-28 5:04 ` Pavel Roskin
2006-06-28 8:49 ` Junio C Hamano
2006-06-28 10:05 ` Pavel Roskin
2006-06-28 10:14 ` Junio C Hamano
2006-07-02 20:49 ` Petr Baudis
2006-07-02 21:33 ` Junio C Hamano
2006-07-02 21:49 ` Petr Baudis
2006-07-02 22:50 ` Junio C Hamano
2006-07-02 23:49 ` Junio C Hamano
2006-07-03 0:00 ` Linus Torvalds
2006-07-03 0:06 ` Junio C Hamano
2006-07-03 20:29 ` Petr Baudis
2006-07-03 21:16 ` Petr Baudis [this message]
2006-07-08 7:36 ` Pavel Roskin
2006-06-28 7:32 ` Johannes Schindelin
2006-06-28 7:39 ` Johannes Schindelin
2006-06-28 8:51 ` Junio C Hamano
2006-06-28 9:13 ` Johannes Schindelin
2006-07-01 23:48 ` [PATCH] Git.pm: Avoid ppport.h Petr Baudis
2006-07-02 9:52 ` Johannes Schindelin
2006-07-02 19:05 ` Junio C Hamano
2006-07-02 20:57 ` [PATCH] Git.pm: Don't #define around die Petr Baudis
2006-07-03 1:38 ` Making perl scripts include the correct Git.pm Junio C Hamano
2006-07-04 19:01 ` Marco Costalba
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060703211632.1662.46767.stgit@machine.or.cz \
--to=pasky@suse.cz \
--cc=git@vger.kernel.org \
--cc=junkio@cox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).