X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/34f1c2aee8da0329aa0a50ac6b6bceb9dce7fefb..30ac2faa9354760925dfe93f2680b4376e17ed37:/pm_filter?ds=inline diff --git a/pm_filter b/pm_filter index a80ce04f0..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} && 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"; }