X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/2a802c1518d2ef9b4340961c173b5b2d111c499a..28913f169bd8967220d3cc120acde12deb5fcb59:/pm_filter diff --git a/pm_filter b/pm_filter index 287adc376..7b03418ab 100755 --- a/pm_filter +++ b/pm_filter @@ -7,19 +7,27 @@ BEGIN { } if (/INSTALLDIR_AUTOREPLACE/) { - $_=qq{my \$installdir="$prefix";}; + $_=qq{our \$installdir="\Q$prefix\E";}; } elsif (/VERSION_AUTOREPLACE/) { - $_=qq{our \$version="$ver";}; + $_=qq{our \$version="\Q$ver\E";}; } -elsif (/^use lib/) { - if (grep { $_ eq $libdir } @INC) { +elsif (/^(?:use FindBin; *)?use lib/) { + # The idea here is to figure out if the libdir the Makefile.PL + # was configured to use is in perl's normal search path. + # If not, hard code it into ikiwiki. + if ((grep { $_ eq $libdir } @INC) && + (! exists $ENV{PERL5LIB} || ! length $ENV{PERL5LIB} || + $ENV{PERL5LIB} ne $libdir)) { $_=""; } else { - $_="use lib '$libdir';\n"; + $_="use lib \"\Q$libdir\E\";\n"; } } -elsif ($. == 1 && ($ENV{NOTAINT} || ! exists $ENV{NOTAINT}) && m{^(#!/usr/bin/perl) -T$}) { - $_=qq{$1\n}; +elsif ($. == 1 && ($ENV{NOTAINT}=0) && m{^(#!.*perl.*?)$}) { + $_=qq{$1 -T\n}; +} +elsif (/^\$ENV\{PATH}="(.*)";/) { + $_="\$ENV{PATH}=\"\Q$1\E:\Q$prefix\E/bin\";\n"; }