diff --git a/perl-5.8.8-bz183553_ubz38657.patch b/perl-5.8.8-bz183553_ubz38657.patch new file mode 100644 index 0000000..232858f --- /dev/null +++ b/perl-5.8.8-bz183553_ubz38657.patch @@ -0,0 +1,11 @@ +--- perl-5.8.8/perl.c.bz183553_ubz38657 2006-02-27 12:51:49.000000000 -0500 ++++ perl-5.8.8/perl.c 2006-03-01 17:18:41.000000000 -0500 +@@ -3110,7 +3110,7 @@ + sv_catpv(sv, start); + else { + sv_catpvn(sv, start, s-start); +- Perl_sv_catpvf(aTHX_ sv, " split(/,/,q%c%s%c)", 0, ++s, 0); ++ Perl_sv_catpvf(aTHX_ sv, " split(/,/,q(%s))", ++s); + } + s += strlen(s); + my_setenv("PERL5DB", (char *)SvPV_nolen_const(sv)); diff --git a/perl-5.8.8-up27284.patch b/perl-5.8.8-up27284.patch new file mode 100644 index 0000000..59d2350 --- /dev/null +++ b/perl-5.8.8-up27284.patch @@ -0,0 +1,64 @@ +Change 27284 by nicholas@nicholas-saigo on 2006/02/23 14:49:22 + + Integrate: + [ 27002] + Code assumes that *FOO{SCALAR} will always return a scalar reference, + so make it so, creating $FOO if necessary. + (Effectively this is a policy decision that PERL_DONT_CREATE_GVSV is + visible to XS code, but isn't visible to Perl code) + +Affected files ... + +... //depot/maint-5.8/perl/pp.c#86 integrate +... //depot/maint-5.8/perl/t/op/gv.t#4 integrate + +Differences ... + +==== //depot/maint-5.8/perl/pp.c#86 (text) ==== +Index: perl/pp.c +--- perl/pp.c#85~26738~ 2006-01-08 13:30:11.000000000 -0800 ++++ perl/pp.c 2006-02-23 06:49:22.000000000 -0800 +@@ -604,7 +604,7 @@ + break; + case 'S': + if (strEQ(second_letter, "CALAR")) +- tmpRef = GvSV(gv); ++ tmpRef = GvSVn(gv); + break; + } + } + +==== //depot/maint-5.8/perl/t/op/gv.t#4 (xtext) ==== +Index: perl/t/op/gv.t +--- perl/t/op/gv.t#3~25505~ 2005-09-19 15:20:52.000000000 -0700 ++++ perl/t/op/gv.t 2006-02-23 06:49:22.000000000 -0800 +@@ -12,7 +12,7 @@ + use warnings; + + require './test.pl'; +-plan( tests => 61 ); ++plan( tests => 63 ); + + # type coersion on assignment + $foo = 'foo'; +@@ -218,6 +218,19 @@ + is ($x, "Rules\n"); + } + ++ ++{ ++ no warnings qw(once uninitialized); ++ my $g = \*clatter; ++ my $r = eval {no strict; ${*{$g}{SCALAR}}}; ++ is ($@, '', "PERL_DONT_CREATE_GVSV shouldn't affect thingy syntax"); ++ ++ $g = \*vowm; ++ $r = eval {use strict; ${*{$g}{SCALAR}}}; ++ is ($@, '', ++ "PERL_DONT_CREATE_GVSV shouldn't affect thingy syntax under strict"); ++} ++ + __END__ + Perl + Rules +End of Patch. diff --git a/perl.spec b/perl.spec index b2ed340..f6392de 100644 --- a/perl.spec +++ b/perl.spec @@ -5,7 +5,7 @@ %define multilib_64_archs x86_64 s390x ppc64 sparc64 %define perlver 5.8.8 -%define perlrel 3 +%define perlrel 4 %define perlepoch 4 %{?!perl_debugging: %define perl_debugging 0} @@ -150,6 +150,10 @@ Patch32: perl-5.8.8-debian_fix_net_nntp.patch # # Upstream patches 27133 and 27169 (27170): Patch33: perl-5.8.8-up27133_up27169.patch +# Upstream patch 27284: +Patch34: perl-5.8.8-up27284.patch +# Fix for bug 183553 / upstream bug 38657: +Patch35: perl-5.8.8-bz183553_ubz38657.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: gawk, grep, tcsh, dos2unix, man, groff @@ -326,6 +330,10 @@ more secure running of setuid perl scripts. %patch33 -p1 +%patch34 -p1 + +%patch35 -p1 + # Candidates for doc recoding (need case by case review): # find . -name "*.pod" -o -name "README*" -o -name "*.pm" | xargs file -i | grep charset= | grep -v '\(us-ascii\|utf-8\)' recode() @@ -534,6 +542,13 @@ rm -rf $RPM_BUILD_ROOT %endif %changelog +* Tue Mar 01 2006 Jason Vas Dias - 4:5.8.8-4 +- Fix bug 183553 / upstream bug 38657: fix -d:Foo=bar processing +- rebuild with new gcc-4.1.0-1, released today + +* Mon Feb 27 2006 Jason Vas Dias +- Apply upstream patch #28284 + * Mon Feb 13 2006 Jason Vas Dias - 4:5.8.8-3 - Apply upstream bugfix patch 27170