From a0da97f4e51387e95c88ce96a1ca5948c287c8f2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Arkadiusz=20Mi=C5=9Bkiewicz?= Date: Fri, 19 Feb 2021 16:29:04 +0100 Subject: [PATCH] runperl -MCGI would include system wide perl-CGI and we don't want that. PERL5LIB doesn't override built in paths, so we try to do that on our own --- perl.spec | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/perl.spec b/perl.spec index e580dbb..5927132 100644 --- a/perl.spec +++ b/perl.spec @@ -726,9 +726,12 @@ zbyt duża, a rozmiar za mały na tworzenie oddzielnych rozszerzeń. cat > runperl <<'EOF' #!/bin/sh +# Prevent any system paths from being used. +# Note: you cant use runperl -MXYZ because BEGIN is executed after -M LD_PRELOAD="%{_builddir}/%{name}-%{ver}/libperl.so.%{abi}" \ PERL5LIB="%{buildroot}%{perl_privlib}:%{buildroot}%{perl_archlib}" \ -exec %{buildroot}%{_bindir}/perl ${1:+"$@"} +exec %{buildroot}%{_bindir}/perl -e 'BEGIN { @INC = ("%{buildroot}%{perl_privlib}", "%{buildroot}%{perl_archlib}"); }; if (@ARGV > 0) { do(shift(@ARGV)) or die "Error attempting to execute script: $@\n"; } ' \ + ${1:+"$@"} EOF chmod a+x runperl @@ -938,14 +941,14 @@ for m in $(awk '!/^#/ && !/^$/{print $1}' %{SOURCE3}); do ;; # special cased since do eval on VERSION ExtUtils::CBuilder|Compress::Raw::Bzip2|Compress::Raw::Zlib) - v=$(%{__perl} -M$m -e "print version->parse(\$$m::VERSION)->numify") + v=$(%{__perl} -e "use $m; print version->parse(\$$m::VERSION)->numify") ;; # this module has VERSION encoded as int in a way that it loses trailing 0 Getopt::Long) - v=$(%{__perl} -M$m -e "print \$$m::VERSION_STRING") + v=$(%{__perl} -e "use $m; print \$$m::VERSION_STRING") ;; *) - v=$(%{__perl} -M$m -e "print \$$m::VERSION") + v=$(%{__perl} -e "use $m; print \$$m::VERSION") ;; esac echo "$m = $v" >> perl-modules.tmp @@ -958,7 +961,7 @@ for m in $(awk '!/^#/ && !/^$/{print $1"!"$2}' %{SOURCE4}); do mp="${m%%!*}" case $m in *) - v=$(%{__perl} -M$mn -e "print \$$mn::VERSION") + v=$(%{__perl} -e "use $mn; print \$$mn::VERSION") ;; esac echo "$mp $mn = $v" >> perl-modules2.tmp -- 2.43.0