Re: [PATCH] Define $PERL_PATH in test-lib.sh
- From
Philippe Bruhat (BooK) <philippe.bruhat@free.fr>
- Date
- Nov 10, 2009, 13:33 UTC
- Message-ID
- <20091110133334.GB8896@plop>
- In-Reply-To
- <20091110122315.GA15906@coredump.intra.peff.net>
On Tue, Nov 10, 2009 at 07:23:15AM -0500, Jeff King wrote:
Show 6 quoted lines
> On Tue, Nov 10, 2009 at 11:46:51AM +0100, Philippe Bruhat (BooK) wrote: > > > The main Makefile defines PERL_PATH as the perl to use in the shebang > > line of git*.perl commands. This ensures this will be the perl used > > to run the tests (in case another perl appears in $PATH before the one > > defined in $PERL_PATH)
PERL_PATH is a variable in the Makefile that, if not defined is set up to /usr/bin/perl.
It is used to set the shebang line in the git-* perl scripts.
Show 5 quoted lines
> I think this "the perl used to run the tests" needs to be clarified in > the commit message. There are really three ways we use perl in the > tests: > > 1. To run to the git-* scripts themselves.
Yes, this PERL_PATH.
> 2. To run a test snippet of perl as if we were a git-* script.
Actually, my goal was to run Makefile.PL with the proper perl (see below).
> 3. To run random perl helper functions.
I didn't replace those ones, because any perl is good enough to do some perl -i.bak -pe 's/foo/bar/' processing.
> We already use PERL_PATH for (1). I don't think there is much point in > worrying about (3). If the perl in your PATH is so broken that it can't > be used for simple helpers, then you should fix your PATH.
The Perl in my PATH doesn't have Error.pm installed, but /usr/bin/perl has it. When the Makefile.PL is run by /usr/bin/perl, the private-Error.pm module is not copied in blib. The git-* perl scripts are using the perl in PERL_PATH, and therefore can't load Error.pm (not in blib during make test), causing test breakage.
This is the original reason for this patch. I fixed the general (2) case, deliberately avoiding to replace every call to perl (3).
> Your patch seems to just fix (2), which I think is sane. But I wanted to > note it, because when I read your commit message, I wasn't sure which > you were doing.
Yes.
--
Philippe Bruhat (BooK)
Trust only in incompetence. You will never be disappointed.
(Moral from Groo The Wanderer #16 (Epic))