Andreas J. Koenig <[EMAIL PROTECTED]> writes:
>Patch 13140, at least on Linux, changed $^X to be always an absolute
>path:
>
>/usr/sources/perl/repoperls/perl-5.7.2@13139% ./miniperl -le 'print $^X'
>../miniperl
>
>/usr/sources/perl/repoperls/perl-5.7.2@13140% ./miniperl -le 'print $^X'
>/usr/sources/perl/repoperls/perl-5.7.2@13140/miniperl
>
>This has the unfortunate side effect on MakeMaker's init_PERL method,
>that all Makefiles below ext now contain the absolute path to miniperl
>in the PERL variable. This is a bug. We must not have absolute paths
>in Makefiles for PERL and FULLPERL.
>
>I suppose the bug has not been discovered yet because it only
>manifests itself if you move the source around.
No objection to the patch. But IIRC you need to re-run Makefile.PLs
if you move sources about anyway dependancies and -I options
need tweaking too.
>
>The following patch fixes the problem for me (tested):
>
>--- perl-5.8.0@17791-moved/lib/ExtUtils/MM_Unix.pm@17791 Thu Aug 29 11:31:34
>2002
>+++ perl-5.8.0@17791-moved/lib/ExtUtils/MM_Unix.pm Thu Aug 29 11:34:11 2002
>@@ -2145,6 +2145,7 @@ sub init_PERL {
> # core. Otherwise its a last resort.
> my $miniperl = "miniperl$Config{exe_ext}";
> if( $self->{PERL_CORE} ) {
>+ $perls[0] = File::Spec->abs2rel($perls[0]);
> splice @perls, 1, 0, $miniperl;
> }
> else {
>
>
>I'm sure there will be other ways to fix it, but that's the first that
>came to my mind. I hope it has no negative side effects.
--
Nick Ing-Simmons
http://www.ni-s.u-net.com/