Merge branch 'rc/master' into new-master

Resolve conflicts between perl 5.16 and 5.14:
	perl.spec
This commit is contained in:
Petr Písař 2012-06-06 17:14:53 +02:00
commit 2b75993096
13 changed files with 129 additions and 461 deletions

2
.gitignore vendored
View File

@ -10,3 +10,5 @@ filter-requires.sh
/perl-5.14.0.tar.gz
/perl-5.14.1.tar.gz
/perl-5.14.2.tar.bz2
/perl-5.16.0-RC2.tar.gz
/perl-5.16.0.tar.gz

View File

@ -48,15 +48,6 @@ export PERL_MM_USE_DEFAULT=1
%global __requires_exclude perl\\\\(VMS|perl\\\\(Win32
}
#############################################################################
# Perl bootstrap
# For rebuild of Perl and all related packages is needed switch, which enable
# only vital build requires. This could help cyclic dependencies, for example:
# perl-Test-Minimum-Version <-> perl-Perl-Minimum-Version
# Defined for bootstraping, undefined otherwise. Usage:
# %%if !%%{defined perl_bootstrap} ... %%endif
#perl_bootstrap 1
#############################################################################
# Macros to assist with generating a "-tests" subpackage in a semi-automatic
# manner.

View File

@ -1,52 +0,0 @@
From 7402016d87474403eea5c52dc2c071f68cbbe25c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=86var=20Arnfj=C3=B6r=C3=B0=20Bjarmason?= <avar@cpan.org>
Date: Tue, 13 Dec 2011 14:43:12 +0000
Subject: [PATCH] [RT #78266] Don't leak memory when accessing named captures
that didn't match
Since 5.10 (probably 44a2ac759e) named captures have been leaking
memory when they're used, don't actually match, but are later
accessed. E.g.:
$ perl -wle 'for (1..10_000_000) { if ("foo" =~ /(foo|(?<capture>bar))?/) { my $capture = $+{capture} } } system "ps -o rss $$"'
RSS
238524
Here we match the "foo" branch of our regex, but since we've used a
name capture we'll end up running the code in
Perl_reg_named_buff_fetch, which allocates a newSVsv(&PL_sv_undef) but
never uses it unless it's trying to return an array.
Just change that code not to allocate scalars we don't plan to
return. With this fix we don't leak any memory since there's nothing
to leak anymore.
$ ./perl -Ilib -wle 'for (1..10_000_000) { if ("foo" =~ /(foo|(?<capture>bar))?/) { my $capture = $+{capture} } } system "ps -o rss $$"'
RSS
3528
This reverts commit b28f4af8cf94eb18c0cfde71e9625081912499a8 ("Fix
allocating something in the first place is a better solution than
allocating it, not using it, and then freeing it.
Petr Pisar: perldelta and wrong fix (commit b28f4af8cf) removed.
---
regcomp.c | 7 ++-----
diff --git a/regcomp.c b/regcomp.c
index 9e9fac4..56b2b9c 100644
--- a/regcomp.c
+++ b/regcomp.c
@@ -5409,7 +5409,8 @@ Perl_reg_named_buff_fetch(pTHX_ REGEXP * const r, SV * const namesv,
if (!retarray)
return ret;
} else {
- ret = newSVsv(&PL_sv_undef);
+ if (retarray)
+ ret = newSVsv(&PL_sv_undef);
}
if (retarray)
av_push(retarray, ret);
--
1.7.7.4

View File

@ -1,43 +0,0 @@
From 38d7c791f597c3d567a70466dc2e48b73ec318bf Mon Sep 17 00:00:00 2001
From: Leon Timmermans <fawaka@gmail.com>
Date: Mon, 26 Dec 2011 19:06:54 +0200
Subject: [PATCH] Signal handlers must run before sigsuspend returns
The whole point of sigsuspend and pause is to wait until a signal has
arrived, and then return *after* it has been triggered. Currently
delayed/"safe" signals prevent that from happening, which might cause
race conditions.
This patch prevents that (as far as possible) by running the signal
handlers ASAP.
Petr Pisar: Back-ported to 5.14.2.
---
ext/POSIX/POSIX.xs | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/ext/POSIX/POSIX.xs b/ext/POSIX/POSIX.xs
index 8dc1f5a..4b9779b 100644
--- a/ext/POSIX/POSIX.xs
+++ b/ext/POSIX/POSIX.xs
@@ -1550,6 +1550,8 @@ sigaction(sig, optaction, oldaction = 0)
SysRet
sigpending(sigset)
POSIX::SigSet sigset
+ CLEANUP:
+ PERL_ASYNC_CHECK();
SysRet
sigprocmask(how, sigset, oldsigset = 0)
@@ -2019,6 +2021,8 @@ pathconf(filename, name)
SysRet
pause()
+ CLEANUP:
+ PERL_ASYNC_CHECK();
SysRet
setgid(gid)
--
1.7.7.6

View File

@ -1,54 +0,0 @@
From 8ee4f541d4632a3615e70e177e004c5db970c8cd Mon Sep 17 00:00:00 2001
From: Father Chrysostomos <sprout@cpan.org>
Date: Fri, 3 Feb 2012 21:55:31 -0800
Subject: [PATCH] Stop !$^V from leaking
by mortalising the temporary SVs.
Petr Pisar: Back-port for 5.14.2.
---
t/op/svleak.t | 4 +++-
universal.c | 8 +++++++-
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/t/op/svleak.t b/t/op/svleak.t
index 5eb090c..0f4348e 100644
--- a/t/op/svleak.t
+++ b/t/op/svleak.t
@@ -13,7 +13,7 @@ BEGIN {
or skip_all("XS::APItest not available");
}
-plan tests => 19;
+plan tests => 20;
# run some code N times. If the number of SVs at the end of loop N is
# greater than (N-1)*delta at the end of loop 1, we've got a leak
@@ -141,3 +141,5 @@ leak(2, 0,
},
"rcatline leak"
);
+
+leak(2,0,sub { !$^V }, '[perl #109762] version object in boolean context');
diff --git a/universal.c b/universal.c
index 092ee80..9615d59 100644
--- a/universal.c
+++ b/universal.c
@@ -544,7 +544,13 @@ XS(XS_version_boolean)
SP -= items;
if (sv_derived_from(ST(0), "version") && SvROK(ST(0))) {
SV * const lobj = SvRV(ST(0));
- SV * const rs = newSViv( vcmp(lobj,new_version(newSVpvs("0"))) );
+ SV * const rs =
+ newSViv( vcmp(lobj,
+ sv_2mortal(new_version(
+ sv_2mortal(newSVpvs("0"))
+ ))
+ )
+ );
mPUSHs(rs);
PUTBACK;
return;
--
1.7.7.6

View File

@ -1,36 +0,0 @@
From be48bbe8d671b6841c3ec7cb734b98071afe3cd9 Mon Sep 17 00:00:00 2001
From: Chip <chip@pobox.com>
Date: Mon, 19 Sep 2011 23:51:49 -0700
Subject: [PATCH] add a couple missing LEAVEs in perlio_async_run()
---
perlio.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/perlio.c b/perlio.c
index f0d67ae..79c6fdf 100644
--- a/perlio.c
+++ b/perlio.c
@@ -2563,8 +2563,10 @@ S_perlio_async_run(pTHX_ PerlIO* f) {
SAVEDESTRUCTOR_X(S_lockcnt_dec, (void*)f);
PerlIO_lockcnt(f)++;
PERL_ASYNC_CHECK();
- if ( !(PerlIOBase(f)->flags & PERLIO_F_CLEARED) )
+ if ( !(PerlIOBase(f)->flags & PERLIO_F_CLEARED) ) {
+ LEAVE;
return 0;
+ }
/* we've just run some perl-level code that could have done
* anything, including closing the file or clearing this layer.
* If so, free any lower layers that have already been
@@ -2576,6 +2578,7 @@ S_perlio_async_run(pTHX_ PerlIO* f) {
*f = l->next;
Safefree(l);
}
+ LEAVE;
return 1;
}
--
1.7.7.4

View File

@ -1,28 +0,0 @@
From dbcab24bb98b4a243c8330bc7017c2080832b3f9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Tue, 4 Oct 2011 13:46:39 +0200
Subject: [PATCH] Fix code injection in Digest
See <https://bugzilla.redhat.com/show_bug.cgi?id=743010> for more details.
---
cpan/Digest/Digest.pm | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/cpan/Digest/Digest.pm b/cpan/Digest/Digest.pm
index 384dfc8..4b923ae 100644
--- a/cpan/Digest/Digest.pm
+++ b/cpan/Digest/Digest.pm
@@ -35,7 +35,9 @@ sub new
($class, @args) = @$class if ref($class);
no strict 'refs';
unless (exists ${"$class\::"}{"VERSION"}) {
- eval "require $class";
+ my $pm_file = $class . ".pm";
+ $pm_file =~ s{::}{/}g;
+ eval { require $pm_file };
if ($@) {
$err ||= $@;
next;
--
1.7.6.4

View File

@ -1,76 +0,0 @@
From 647b6565b7d935eb9b92e057d0c7ae5fe54726e2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Thu, 6 Oct 2011 16:35:49 +0200
Subject: [PATCH] Don't segfault given string repeat count larger than 2^31
E.g., this overflows INT_MAX and overruns heap memory:
$ perl -le 'print "v"x(2**31+1)'
[Exit 139 (SEGV)]
(Perl_repeatcpy): Use the same type for "count" as our sole
callers in pp.c: IV (long), not I32 (int). Otherwise, passing
the wider value to a narrower "I32 count"
http://thread.gmane.org/gmane.comp.lang.perl.perl5.porters/96812
https://rt.perl.org/rt3/Ticket/Display.html?id=94560
Original author: Jim Meyering <meyering@redhat.com>
Petr Pisar: Modify embed.fnc instead of generated proto.h
---
embed.fnc | 2 +-
util.c | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/embed.fnc b/embed.fnc
index bce167e..8c86a3e 100644
--- a/embed.fnc
+++ b/embed.fnc
@@ -1032,7 +1032,7 @@ EXp |SV*|reg_qr_package|NN REGEXP * const rx
: FIXME - why the E?
Ep |void |regprop |NULLOK const regexp *prog|NN SV* sv|NN const regnode* o
-Anp |void |repeatcpy |NN char* to|NN const char* from|I32 len|I32 count
+Anp |void |repeatcpy |NN char* to|NN const char* from|I32 len|IV count
AnpP |char* |rninstr |NN const char* big|NN const char* bigend \
|NN const char* little|NN const char* lend
Ap |Sighandler_t|rsignal |int i|Sighandler_t t
diff --git a/util.c b/util.c
index 0ea39c6..3d4dcc7 100644
--- a/util.c
+++ b/util.c
@@ -3315,7 +3315,7 @@ Perl_my_pclose(pTHX_ PerlIO *ptr)
#define PERL_REPEATCPY_LINEAR 4
void
-Perl_repeatcpy(register char *to, register const char *from, I32 len, register I32 count)
+Perl_repeatcpy(register char *to, register const char *from, I32 len, register IV count)
{
PERL_ARGS_ASSERT_REPEATCPY;
@@ -3323,19 +3323,19 @@ Perl_repeatcpy(register char *to, register const char *from, I32 len, register I
memset(to, *from, count);
else if (count) {
register char *p = to;
- I32 items, linear, half;
+ IV items, linear, half;
linear = count < PERL_REPEATCPY_LINEAR ? count : PERL_REPEATCPY_LINEAR;
for (items = 0; items < linear; ++items) {
register const char *q = from;
- I32 todo;
+ IV todo;
for (todo = len; todo > 0; todo--)
*p++ = *q++;
}
half = count / 2;
while (items <= half) {
- I32 size = items * len;
+ IV size = items * len;
memcpy(p, to, size);
p += size;
items *= 2;
--
1.7.6.4

View File

@ -1,26 +0,0 @@
diff --git a/cpan/Unicode-Collate/Collate/Locale.pm b/cpan/Unicode-Collate/Collate/Locale.pm
index b26db00..35f4fb3 100644
--- a/cpan/Unicode-Collate/Collate/Locale.pm
+++ b/cpan/Unicode-Collate/Collate/Locale.pm
@@ -8,7 +8,6 @@ our $VERSION = '0.73';
use File::Spec;
-(my $ModPath = $INC{'Unicode/Collate/Locale.pm'}) =~ s/\.pm$//;
my $PL_EXT = '.pl';
my %LocaleFile = map { ($_, $_) } qw(
@@ -56,7 +55,12 @@ sub _fetchpl {
my $f = $LocaleFile{$accepted};
return if !$f;
$f .= $PL_EXT;
- my $path = File::Spec->catfile($ModPath, $f);
+ my $path;
+ for my $incpath (@INC) {
+ $path = File::Spec->catfile($incpath, 'Unicode', 'Collate', 'Locale', $f);
+ last if -f $path;
+ $path = undef;
+ }
my $h = do $path;
croak "Unicode/Collate/Locale/$f can't be found" if !$h;
return $h;

View File

@ -1,31 +1,12 @@
--- perl-5.10.1/utils/perlbug.PL.fedora 2009-08-12 20:49:24.000000000 +0200
+++ perl-5.10.1/utils/perlbug.PL 2009-11-18 15:56:15.000000000 +0100
@@ -27,8 +27,6 @@ open OUT, ">$file" or die "Can't create
open PATCH_LEVEL, "<" . catfile(updir, "patchlevel.h")
or die "Can't open patchlevel.h: $!";
-my $patchlevel_date = (stat PATCH_LEVEL)[9];
-
while (<PATCH_LEVEL>) {
last if $_ =~ /^\s*static\s+(?:const\s+)?char.*?local_patches\[\]\s*=\s*{\s*$/;
}
@@ -71,9 +69,8 @@ $Config{startperl}
eval 'exec $Config{perlpath} -S \$0 \${1+"\$@"}'
if \$running_under_some_shell;
-my \$config_tag1 = '$extract_version - $Config{cf_time}';
+my \$config_tag1 = '$extract_version';
-my \$patchlevel_date = $patchlevel_date;
my \$patch_tags = '$patch_tags';
my \@patches = (
$patch_desc
@@ -333,17 +330,6 @@ sub Init {
diff -up perl-5.16.0-RC2/utils/perlbug.PL.fedora perl-5.16.0-RC2/utils/perlbug.PL
--- perl-5.16.0-RC2/utils/perlbug.PL.fedora 2012-05-16 16:15:51.000000000 +0200
+++ perl-5.16.0-RC2/utils/perlbug.PL 2012-05-16 16:18:36.018894464 +0200
@@ -271,17 +271,6 @@ sub Init {
$ok = '';
if ($::opt_o) {
if ($::opt_o eq 'k' or $::opt_o eq 'kay') {
if ($opt{o}) {
if ($opt{o} eq 'k' or $opt{o} eq 'kay') {
- my $age = time - $patchlevel_date;
- if ($::opt_o eq 'k' and $age > 60 * 24 * 60 * 60 ) {
- if ($opt{o} eq 'k' and $age > 60 * 24 * 60 * 60 ) {
- my $date = localtime $patchlevel_date;
- print <<"EOF";
-"perlbug -ok" and "perlbug -nok" do not report on Perl versions which
@ -36,16 +17,5 @@
- exit();
- }
# force these options
unless ($::opt_n) {
$::opt_S = 1; # don't prompt for send
@@ -730,8 +716,8 @@ EFF
print OUT <<EFF;
---
EFF
- print OUT "This perlbug was built using Perl $config_tag1\n",
- "It is being executed now by Perl $config_tag2.\n\n"
+ print OUT "This perlbug was built using Perl $config_tag1 in the Fedora build system.\n",
+ "It is being executed now by Perl $config_tag2.\n\n"
if $config_tag2 ne $config_tag1;
print OUT <<EOF;
unless ($opt{n}) {
$opt{S} = 1; # don't prompt for send

189
perl.spec
View File

@ -1,4 +1,4 @@
%global perl_version 5.14.2
%global perl_version 5.16.0
%global perl_epoch 4
%global perl_arch_stem -thread-multi
%global perl_archname %{_arch}-%{_os}%{perl_arch_stem}
@ -12,7 +12,9 @@
%global __provides_exclude_from .*/auto/.*\\.so$|.*/%{perl_archlib}/.*\\.so$|%{_docdir}
%global __requires_exclude_from %{_docdir}
%global __provides_exclude perl\\((VMS|Win32|BSD::|DB\\)$)
%global __requires_exclude perl\\((VMS|BSD::|Win32|Tk|Mac::|Your::Module::Here)
# unicore::Name - it's needed by perl, maybe problem of rpm
# FCGI is external dependency after install of perl-CGI, remove it during RC releases
%global __requires_exclude perl\\((VMS|BSD::|Win32|Tk|Mac::|Your::Module::Here|unicore::Name|FCGI)
# same as we provide in /etc/rpm/macros.perl
%global perl5_testdir %{_libexecdir}/perl5-tests
@ -24,7 +26,7 @@
Name: perl
Version: %{perl_version}
# release number must be even higher, because dual-lived modules will be broken otherwise
Release: 217%{?dist}
Release: 220%{?dist}
Epoch: %{perl_epoch}
Summary: Practical Extraction and Report Language
Group: Development/Languages
@ -36,7 +38,7 @@ Group: Development/Languages
# Copyright Only: for example ext/Text-Soundex/Soundex.xs
License: (GPL+ or Artistic) and (GPLv2+ or Artistic) and Copyright Only and MIT and Public Domain and UCD
Url: http://www.perl.org/
Source0: http://www.cpan.org/src/5.0/perl-%{perl_version}.tar.bz2
Source0: http://www.cpan.org/src/5.0/perl-%{perl_version}.tar.gz
Source2: perl-5.8.0-libnet.cfg
Source3: macros.perl
#Systemtap tapset and example that make use of systemtap-sdt-devel
@ -44,6 +46,7 @@ Source3: macros.perl
Source4: perl.stp
Source5: perl-example.stp
Patch0: porting-podcheck-regen.patch
# Removes date check, Fedora/RHEL specific
Patch1: perl-perlbug-tag.patch
@ -70,33 +73,12 @@ Patch7: perl-5.10.0-x86_64-io-test-failure.patch
# switch off test, which is failing only on koji (fork)
Patch8: perl-5.14.1-offtest.patch
# Fix code injection in Digest, rhbz #743010, RT#71390, fixed in Digest-1.17.
Patch9: perl-5.14.2-digest_eval.patch
# Change Perl_repeatcpy() prototype to allow repeat count above 2^31
# rhbz #720610, Perl RT#94560, accepted as v5.15.4-24-g26e1303.
Patch10: perl-5.14.2-large-repeat-heap-abuse.patch
# Fix leak with non-matching named captures. rhbz#767597, RT#78266, fixed
# after 5.14.2.
Patch11: perl-5.14.2-Don-t-leak-memory-when-accessing-named-capt.patch
# Fix interrupted reading, rhbz#767931, fixed after 5.15.3.
Patch12: perl-5.14.2-add-a-couple-missing-LEAVEs-in-perlio_async_run.patch
# Fix find2perl to translate ? glob properly, rhbz#825701, RT#113054
Patch9: perl-5.14.2-find2perl-transtate-question-mark-properly.patch
# Fix searching for Unicode::Collate::Locale data, rhbz#756118, CPANRT#72666,
# fixed in Unicode-Collate-0.87.
Patch13: perl-5.14.2-locale-search-inc.patch
# Run safe signal handlers before returning from sigsuspend() and pause(),
# rhbz#771228, RT#107216, fixed after 5.15.6.
Patch14: perl-5.14.2-Signal-handlers-must-run-before-sigsuspend-returns.patch
# Stop !$^V from leaking, rhbz#787613, RT#109762, fixed after 5.15.7.
Patch15: perl-5.14.2-Stop-V-from-leaking.patch
# Fix find2perl to translate ? glob properly, rhbz#825701, RT#113054
Patch16: perl-5.14.2-find2perl-transtate-question-mark-properly.patch
# TODO Looks like it was fixed differently?
#Patch13: perl-5.14.2-locale-search-inc.patch
# Update some of the bundled modules
# see http://fedoraproject.org/wiki/Perl/perl.spec for instructions
@ -113,6 +95,7 @@ BuildRequires: procps, rsyslog
# The long line of Perl provides.
# Compat provides
Provides: perl(:MODULE_COMPAT_5.16.0)
Provides: perl(:MODULE_COMPAT_5.14.2)
Provides: perl(:MODULE_COMPAT_5.14.1)
Provides: perl(:MODULE_COMPAT_5.14.0)
@ -250,7 +233,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 0.48
Version: 0.58
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -263,7 +246,7 @@ Summary: A module for Perl manipulation of .tar files
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 1.76
Version: 1.82
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
Requires: perl(Compress::Zlib), perl(IO::Zlib)
BuildArch: noarch
@ -279,7 +262,7 @@ gzipped tar files.
%package Carp
Summary: Alternative warn and die for modules
Epoch: 0
Version: 1.20
Version: 1.26
License: GPL+ or Artistic
Group: Development/Libraries
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
@ -304,7 +287,7 @@ Summary: Handle Common Gateway Interface requests and responses
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 3.52
Version: 3.59
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
Provides: perl(CGI) = %{version}
BuildArch: noarch
@ -332,7 +315,7 @@ Summary: Low-Level Interface to bzip2 compression library
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 2.033
Version: 2.048
Requires: perl(Exporter), perl(File::Temp)
%description Compress-Raw-Bzip2
@ -345,7 +328,7 @@ Summary: Low-Level Interface to the zlib compression library
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 2.033
Version: 2.048
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
%description Compress-Raw-Zlib
@ -358,7 +341,7 @@ Summary: Query, download and build perl modules from CPAN sites
Group: Development/Languages
License: GPL+ or Artistic
Epoch: 0
Version: 1.9600.01
Version: 1.9800
# CPAN encourages Digest::SHA strongly because of integrity checks
Requires: perl(Digest::SHA)
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
@ -371,7 +354,7 @@ Query, download and build perl modules from CPAN sites.
%package CPAN-Meta
Summary: Distribution metadata for a CPAN dist
Epoch: 0
Version: 2.110440
Version: 2.120630
License: GPL+ or Artistic
Group: Development/Libraries
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
@ -386,7 +369,7 @@ in CPAN::Meta::Spec.
%package CPAN-Meta-YAML
Version: 0.003
Version: 0.007
Epoch: 0
Summary: Read and write a subset of YAML for CPAN Meta files
License: GPL+ or Artistic
@ -405,8 +388,8 @@ Summary: API & CLI access to the CPAN mirrors
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
# real version 0.9103
Version: 0.91.3
# real version 0.9121
Version: 0.91.21
# CPANPLUS encourages Digest::SHA strongly because of integrity checks
Requires: perl(Digest::SHA)
Requires: perl(Module::Pluggable) >= 2.4
@ -426,7 +409,7 @@ Summary: Stringify perl data structures, suitable for printing and eval
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 2.130.02
Version: 2.135.06
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
Requires: perl(Scalar::Util)
Requires: perl(XSLoader)
@ -444,7 +427,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 0
Version: 1.16
Version: 1.17
BuildArch: noarch
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
Requires: perl(MIME::Base64)
@ -481,7 +464,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 5.61
Version: 5.71
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
# Recommended
Requires: perl(Digest::base)
@ -500,8 +483,8 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
# real version 0.280203 https://fedoraproject.org/wiki/Perl/Tips#Dot_approach
Version: 0.28.2.3
# real version 0.280206 https://fedoraproject.org/wiki/Perl/Tips#Dot_approach
Version: 0.28.2.6
Requires: perl-devel
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -531,7 +514,7 @@ Summary: Install files from here to there
Group: Development/Languages
License: GPL+ or Artistic
Epoch: 0
Version: 1.56
Version: 1.58
Requires: perl-devel
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -546,7 +529,7 @@ Summary: Create a module Makefile
Group: Development/Languages
License: GPL+ or Artistic
Epoch: 0
Version: 6.57.5
Version: 6.63.2
Requires: perl-devel
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
Requires: perl(ExtUtils::Install)
@ -568,7 +551,7 @@ Summary: Utilities to write and check a MANIFEST file
Group: Development/Languages
License: GPL+ or Artistic
Epoch: 0
Version: 1.58
Version: 1.61
Requires: perl-devel
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -583,7 +566,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 2.2210
Version: 3.16
Requires: perl-devel
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -609,7 +592,7 @@ BuildArch: noarch
%description File-Fetch
File::Fetch is a generic file fetching mechanism.
# FIXME Filter-Simple? version?
%package Filter
Summary: Perl source filters
Group: Development/Libraries
@ -629,7 +612,7 @@ Summary: IO::Compress wrapper for modules
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 2.033
Version: 2.048
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
Obsoletes: perl-Compress-Zlib <= 2.020
Provides: perl(IO::Uncompress::Bunzip2)
@ -664,7 +647,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 0.70
Version: 0.76
Requires: perl(ExtUtils::MakeMaker)
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -679,7 +662,7 @@ Summary: A small, simple, correct HTTP/1.1 client
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 0.012
Version: 0.017
Requires: perl(Carp)
Requires: perl(IO::Socket)
BuildArch: noarch
@ -697,7 +680,7 @@ Summary: JSON::XS compatible pure-Perl module
Epoch: 0
# 2.27150 version is a typo but we cannot fix it because it would break
# monotony
Version: 2.27150
Version: 2.27200
License: GPL+ or Artistic
Group: Development/Libraries
BuildArch: noarch
@ -713,7 +696,7 @@ JSON::PP is a pure-Perl module and is compatible with JSON::XS.
%package Locale-Codes
Summary: Distribution of modules to handle locale codes
Epoch: 0
Version: 3.16
Version: 3.21
License: GPL+ or Artistic
Group: Development/Libraries
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
@ -784,9 +767,10 @@ Log::Message module.
Summary: Perl module for building and installing Perl modules
Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 0.3800
# Check epoch with standalone package
Epoch: 2
# real version 0.39_01
Version: 0.39.01
Requires: perl(Archive::Tar) >= 1.08
Requires: perl(CPAN::Meta) >= 2.110420
Requires: perl(ExtUtils::CBuilder) >= 0.15
@ -812,7 +796,7 @@ Summary: Perl core modules indexed by perl versions
Group: Development/Languages
License: GPL+ or Artistic
Epoch: 1
Version: 2.49
Version: 2.66
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
Requires: perl(version)
BuildArch: noarch
@ -829,7 +813,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 0.18
Version: 0.22
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -843,7 +827,7 @@ Summary: Looking up module information / loading at runtime
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 0.44
Version: 0.46
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -858,7 +842,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 0.06
Version: 0.08
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -873,7 +857,7 @@ offers you a very simple way to mark modules as loaded and/or unloaded.
%package Module-Metadata
Summary: Gather package and POD information from perl module files
Epoch: 0
Version: 1.000004
Version: 1.000009
License: GPL+ or Artistic
Group: Development/Libraries
BuildArch: noarch
@ -889,7 +873,7 @@ License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
# Keep two digit decimal part
Version: 3.90
Version: 4.00
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -904,7 +888,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 0.38
Version: 0.42
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -935,7 +919,7 @@ Summary: PathTools Perl module (Cwd, File::Spec)
Group: Development/Libraries
License: (GPL+ or Artistic) and BSD
Epoch: 0
Version: 3.33
Version: 3.39.2
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
%description PathTools
@ -948,7 +932,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 0.28
Version: 0.32
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -962,7 +946,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 1.4401
Version: 1.4402
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
Requires: perl(CPAN::Meta::YAML) >= 0.002
@ -1014,7 +998,7 @@ Summary: Look up Perl documentation in Pod format
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 3.15.04
Version: 3.17.00
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -1031,7 +1015,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 1
Version: 3.16
Version: 3.20
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -1060,7 +1044,7 @@ Summary: Term::ReadLine UI made easy
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 0.26
Version: 0.30
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
Requires: perl(Log::Message::Simple)
BuildArch: noarch
@ -1162,7 +1146,7 @@ Summary: C socket.h defines and structure manipulators
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 1.94
Version: 2.001
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
%description Socket
@ -1178,7 +1162,7 @@ Summary: Perl interpreter-based threads
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 1.83
Version: 1.86
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
%description threads
@ -1199,7 +1183,7 @@ Summary: Perl extension for sharing data structures between threads
Group: Development/Libraries
License: GPL+ or Artistic
Epoch: 0
Version: 1.37
Version: 1.40
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
%description threads-shared
@ -1217,7 +1201,7 @@ Group: Development/Libraries
License: GPL+ or Artistic
# Epoch bump for clean upgrade over old standalone package
Epoch: 3
Version: 0.88
Version: 0.99
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -1229,7 +1213,7 @@ Perl extension for Version Objects
Summary: Set of version requirements for a CPAN dist
License: GPL+ or Artistic
Group: Development/Libraries
Version: 0.101020
Version: 0.101022
Epoch: 0
Requires: perl = %{perl_epoch}:%{perl_version}-%{release}
BuildArch: noarch
@ -1282,6 +1266,7 @@ tarball from perl.org.
%prep
%setup -q -n perl-%{perl_version}
%patch0 -p1
%patch1 -p1
%ifarch %{multilib_64_archs}
%patch3 -p1
@ -1292,13 +1277,6 @@ tarball from perl.org.
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1
%patch14 -p1
%patch15 -p1
%patch16 -p1
#copy the example script
cp -a %{SOURCE5} .
@ -1315,7 +1293,8 @@ recode()
recode README.cn euc-cn
recode README.jp euc-jp
recode README.ko euc-kr
recode README.tw big5
# TODO iconv fail on this one
##recode README.tw big5
recode pod/perlebcdic.pod
recode pod/perlhack.pod
recode pod/perlhist.pod
@ -1498,14 +1477,7 @@ pushd %{build_archlib}/CORE/
'Fedora Patch5: USE_MM_LD_RUN_PATH' \
'Fedora Patch6: Skip hostname tests, due to builders not being network capable' \
'Fedora Patch7: Dont run one io test due to random builder failures' \
'Fedora Patch9: Fix code injection in Digest->new()' \
'Fedora Patch10: Change Perl_repeatcpy() to allow count above 2^31' \
'Fedora Patch11: Fix leak with non-matching named captures' \
'Fedora Patch12: Fix interrupted reading' \
'Fedora Patch13: Fix searching for Unicode::Collate::Locale data' \
'Fedora Patch14: Run signal handlers before returning from sigsuspend' \
'Fedora Patch15: Stop !$^V from leaking' \
'Fedora Patch16: Fix find2perl to translate ? glob properly (RT#113054)' \
'Fedora Patch9: Fix find2perl to translate ? glob properly (RT#113054)' \
%{nil}
rm patchlevel.bak
@ -1768,7 +1740,10 @@ sed \
%exclude %{_mandir}/man3/Filter::Util::*
# IO::Compress
%exclude %{_bindir}/zipdetails
%exclude %{privlib}/IO/Compress/FAQ.pod
%exclude %{_mandir}/man1/zipdetails.*
%exclude %{_mandir}/man3/IO::Compress::FAQ.*
# Compress::Zlib
%exclude %{privlib}/Compress/Zlib.pm
%exclude %{_mandir}/man3/Compress::Zlib*
@ -1834,14 +1809,12 @@ sed \
# Locale::Codes
%exclude %{privlib}/Locale/Codes
%exclude %{privlib}/Locale/Codes.*
%exclude %{privlib}/Locale/Constants.*
%exclude %{privlib}/Locale/Country.*
%exclude %{privlib}/Locale/Currency.*
%exclude %{privlib}/Locale/Language.*
%exclude %{privlib}/Locale/Script.*
%exclude %{_mandir}/man3/Locale::Codes::*
%exclude %{_mandir}/man3/Locale::Codes.*
%exclude %{_mandir}/man3/Locale::Constants.*
%exclude %{_mandir}/man3/Locale::Country.*
%exclude %{_mandir}/man3/Locale::Currency.*
%exclude %{_mandir}/man3/Locale::Language.*
@ -2219,6 +2192,11 @@ sed \
%{_mandir}/man3/Filter::Util::*
%files IO-Compress
# IO-Compress
%{_bindir}/zipdetails
%{privlib}/IO/Compress/FAQ.pod
%{_mandir}/man1/zipdetails.*
%{_mandir}/man3/IO::Compress::FAQ.*
# Compress-Zlib
%{privlib}/Compress/Zlib.pm
%{_mandir}/man3/Compress::Zlib*
@ -2285,14 +2263,12 @@ sed \
%files Locale-Codes
%{privlib}/Locale/Codes
%{privlib}/Locale/Codes.*
%{privlib}/Locale/Constants.*
%{privlib}/Locale/Country.*
%{privlib}/Locale/Currency.*
%{privlib}/Locale/Language.*
%{privlib}/Locale/Script.*
%{_mandir}/man3/Locale::Codes::*
%{_mandir}/man3/Locale::Codes.*
%{_mandir}/man3/Locale::Constants.*
%{_mandir}/man3/Locale::Country.*
%{_mandir}/man3/Locale::Currency.*
%{_mandir}/man3/Locale::Language.*
@ -2483,9 +2459,26 @@ sed \
# Old changelog entries are preserved in CVS.
%changelog
* Tue May 29 2012 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.14.2-217
* Wed Jun 06 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.0-220
- perl_bootstrap macro is distributed in perl-srpm-macros now
* Fri Jun 01 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.0-219
- Own zipdetails and IO::Compress::FAQ by perl-IO-Compress
* Fri Jun 1 2012 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.16.0-218
- Fix find2perl to translate ? glob properly (bug #825701)
* Thu May 31 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.0-218
- Shorten perl-Module-Build version to 2 digits to follow upstream
* Fri May 25 2012 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.16.0-217
- upload the stable 5.16.0
* Wed May 16 2012 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.16.0-RC2-217
- clean patches, not needed with new version
- regen by podcheck list of failed pods. cn, jp, ko pods failed. I can't decide
whether it's a real problem or false positives.
* Mon Apr 30 2012 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-216
- Enable usesitecustomize

View File

@ -0,0 +1,26 @@
diff -up perl-5.16.0-RC2/t/porting/known_pod_issues.dat.pody perl-5.16.0-RC2/t/porting/known_pod_issues.dat
--- perl-5.16.0-RC2/t/porting/known_pod_issues.dat.pody 2012-05-14 21:49:22.000000000 +0200
+++ perl-5.16.0-RC2/t/porting/known_pod_issues.dat 2012-05-16 14:21:00.000000000 +0200
@@ -1,4 +1,4 @@
-# This file is the data file for porting/podcheck.t.
+# This file is the data file for t/porting/podcheck.t.
# There are three types of lines.
# Comment lines are white-space only or begin with a '#', like this one. Any
# changes you make to the comment lines will be lost when the file is
@@ -217,6 +217,7 @@ pod/perlbook.pod Verbatim line length in
pod/perlcall.pod Verbatim line length including indents exceeds 79 by 2
pod/perlce.pod Verbatim line length including indents exceeds 79 by 2
pod/perlclib.pod Verbatim line length including indents exceeds 79 by 3
+pod/perlcn.pod Verbatim line length including indents exceeds 79 by 1
pod/perlcygwin.pod Verbatim line length including indents exceeds 79 by 25
pod/perldbmfilter.pod Verbatim line length including indents exceeds 79 by 1
pod/perldebguts.pod Verbatim line length including indents exceeds 79 by 68
@@ -248,6 +249,8 @@ pod/perliol.pod Verbatim line length inc
pod/perlipc.pod Apparent broken link 1
pod/perlipc.pod Verbatim line length including indents exceeds 79 by 19
pod/perlirix.pod Verbatim line length including indents exceeds 79 by 4
+pod/perljp.pod Verbatim line length including indents exceeds 79 by 1
+pod/perlko.pod Verbatim line length including indents exceeds 79 by 22
pod/perllol.pod Verbatim line length including indents exceeds 79 by 4
pod/perlmacosx.pod Verbatim line length including indents exceeds 79 by 3
pod/perlmod.pod Verbatim line length including indents exceeds 79 by 2

View File

@ -3,3 +3,4 @@ ad5d07285d6e4914384b43c9abc2bdba filter-requires.sh
1737a36154bb5bca781296794afc6791 perl.stp
df28fe2c574e8807d0a803308c545dca perl-example.stp
04a4c5d3c1f9f19d77daff8e8cd19a26 perl-5.14.2.tar.bz2
9847f7633da2e4cea016ba6c4020ec4c perl-5.16.0.tar.gz