[perl-rpm-build-perl] Perl 5.18 compatibility

Petr Pisar ppisar at fedoraproject.org
Wed Jul 24 08:15:15 UTC 2013


commit 3657ef0d5274eea306a26af060f0a5d43b2b4ec6
Author: Petr Písař <ppisar at redhat.com>
Date:   Wed Jul 24 10:14:01 2013 +0200

    Perl 5.18 compatibility

 perl-rpm-build-perl.spec                           |    4 ++
 ...non-deterministic-failures-on-newer-perls.patch |   35 ++++++++++++++++++++
 2 files changed, 39 insertions(+), 0 deletions(-)
---
diff --git a/perl-rpm-build-perl.spec b/perl-rpm-build-perl.spec
index d729aa5..269776a 100644
--- a/perl-rpm-build-perl.spec
+++ b/perl-rpm-build-perl.spec
@@ -8,6 +8,8 @@ Group:      Development/Libraries
 Summary:    Perl compiler back-end to extract Perl dependencies 
 Url:        http://search.cpan.org/dist/rpm-build-perl
 Source:     http://search.cpan.org/CPAN/authors/id/A/AT/ATOURBIN/rpm-build-perl-%{version}.tar.gz 
+# Perl 5.18 compatibility, CPAN RT#85411
+Patch0:     rpm-build-perl-0.82-Fix-non-deterministic-failures-on-newer-perls.patch
 BuildRequires:  perl(ExtUtils::MakeMaker) 
 # Run-time
 BuildRequires:  perl(B)
@@ -50,6 +52,7 @@ The provides/requires scripts packaged along with perl-rpm-build-perl.
 
 %prep
 %setup -q -n rpm-build-perl-%{version}
+%patch0 -p1
 
 %build
 %{__perl} Makefile.PL INSTALLDIRS=vendor
@@ -75,6 +78,7 @@ make test
 %changelog
 * Wed Jul 24 2013 Petr Pisar <ppisar at redhat.com> - 0.82-3
 - Perl 5.18 rebuild
+- Perl 5.18 compatibility (CPAN RT#85411)
 
 * Thu Feb 14 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0.82-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
diff --git a/rpm-build-perl-0.82-Fix-non-deterministic-failures-on-newer-perls.patch b/rpm-build-perl-0.82-Fix-non-deterministic-failures-on-newer-perls.patch
new file mode 100644
index 0000000..21aa35e
--- /dev/null
+++ b/rpm-build-perl-0.82-Fix-non-deterministic-failures-on-newer-perls.patch
@@ -0,0 +1,35 @@
+From 428c3feac1e9c39f966cc66c36cc3881d202177c Mon Sep 17 00:00:00 2001
+From: Niko Tyni <ntyni at debian.org>
+Date: Sat, 18 May 2013 09:41:47 +0300
+Subject: [PATCH] Fix non-deterministic failures on newer perls
+
+The hash randomization changes in the Perl 5.17 series
+made perl.req to occasionally fail to report the dependencies.
+
+Improved diagnostics report
+
+ Use of each() on hash after insertion without resetting hash
+ iterator results in undefined behavior, Perl interpreter: 0x9e7010 at
+ /home/niko/tmp/libb-perlreq-perl-0.82/blib/lib/B/Walker.pm line 122.
+
+so use keys() instead of each(), as suggested by perldiag.pod.
+---
+ lib/B/Walker.pm |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/B/Walker.pm b/lib/B/Walker.pm
+index b71f204..f626043 100644
+--- a/lib/B/Walker.pm
++++ b/lib/B/Walker.pm
+@@ -119,7 +119,7 @@ sub walk_gv ($) {
+ sub walk_stash ($$);
+ sub walk_stash ($$) { # similar to B::walksymtable
+ 	my ($symref, $prefix) = @_;
+-	while (my ($sym) = each %$symref) {
++	for my $sym (keys %$symref) {
+ 		no strict 'refs';
+ 		my $fullname = "*main::". $prefix . $sym;
+ 		if ($sym =~ /::\z/) {
+-- 
+1.7.10.4
+


More information about the scm-commits mailing list