Update to Perl 5.20.0; Clean up and update patches

This commit is contained in:
Jitka Plesnikova 2014-07-22 16:26:22 +02:00
parent f24dda6d15
commit 1c6d21224a
5 changed files with 23 additions and 79 deletions

View File

@ -5,8 +5,8 @@ diff -up perl-5.10.0/Configure.didi perl-5.10.0/Configure
: set usesocks on the Configure command line to enable socks.
: List of libraries we want.
: If anyone needs extra -lxxx, put those in a hint file.
-libswanted="sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun"
+libswanted="sfio socket resolv inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun"
-libswanted="socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun"
+libswanted="socket resolv inet nsl nm ndbm gdbm dbm db malloc dl ld sun"
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.

View File

@ -30,15 +30,15 @@ index a8b172f..a3fbce2 100644
my $libs = '$(LDLOADLIBS)';
- if (($Is{NetBSD} || $Is{Interix}) && $Config{'useshrplib'} eq 'true') {
+ if (($Is{Linux} || $Is{NetBSD} || $Is{Interix}) && $Config{'useshrplib'} eq 'true') {
- if (($Is{NetBSD} || $Is{Interix} || $Is{Android}) && $Config{'useshrplib'} eq 'true') {
+ if (($Is{Linux} || $Is{NetBSD} || $Is{Interix} || $Is{Android}) && $Config{'useshrplib'} eq 'true') {
# Use nothing on static perl platforms, and to the flags needed
# to link against the shared libperl library on shared perl
# platforms. We peek at lddlflags to see if we need -Wl,-R
@@ -941,6 +942,11 @@ $(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(BOOTSTRAP) $(INST_ARCHAUTODIR)$(DFSEP).
$libs .= ' -L$(PERL_INC) -Wl,-R$(INSTALLARCHLIB)/CORE -Wl,-R$(PERL_ARCHLIB)/CORE -lperl';
} elsif ($Config{'lddlflags'} =~ /-R/) {
$libs .= ' -L$(PERL_INC) -R$(INSTALLARCHLIB)/CORE -R$(PERL_ARCHLIB)/CORE -lperl';
# The Android linker will not recognize symbols from
# libperl unless the module explicitly depends on it.
$libs .= ' -L$(PERL_INC) -lperl';
+ } else {
+ if ($ENV{PERL_CORE}) {
+ $libs .= ' -L$(PERL_INC)';

View File

@ -29,7 +29,7 @@ index d1da0a0..7733a32 100755
linklibperl="-lperl"
+ shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
;;
netbsd*|freebsd[234]*|openbsd*|dragonfly*)
netbsd*|freebsd[234]*|openbsd*|dragonfly*|bitrig*)
linklibperl="-L. -lperl"
+ shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
;;

View File

@ -17,11 +17,11 @@ diff -up perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm.usem perl
--- perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm.usem 2011-05-08 05:10:08.000000000 +0200
+++ perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm 2011-05-17 13:39:26.912586030 +0200
@@ -278,7 +278,7 @@ sub full_setup {
PERL_SRC PERM_DIR PERM_RW PERM_RWX
PL_FILES PM PM_FILTER PMLIBDIRS PMLIBPARENTDIRS POLLUTE PPM_INSTALL_EXEC
PPM_INSTALL_SCRIPT PREREQ_FATAL PREREQ_PM PREREQ_PRINT PRINT_PREREQ
- SIGN SKIP TEST_REQUIRES TYPEMAPS VERSION VERSION_FROM XS XSOPT XSPROTOARG
+ SIGN SKIP TEST_REQUIRES TYPEMAPS USE_MM_LD_RUN_PATH VERSION VERSION_FROM XS XSOPT XSPROTOARG
PERL_SRC PERM_DIR PERM_RW PERM_RWX MAGICXS
PL_FILES PM PM_FILTER PMLIBDIRS PMLIBPARENTDIRS POLLUTE PPM_INSTALL_EXEC PPM_UNINSTALL_EXEC
PPM_INSTALL_SCRIPT PPM_UNINSTALL_SCRIPT PREREQ_FATAL PREREQ_PM PREREQ_PRINT PRINT_PREREQ
- SIGN SKIP TEST_REQUIRES TYPEMAPS UNINST VERSION VERSION_FROM XS XSOPT XSPROTOARG
+ SIGN SKIP TEST_REQUIRES TYPEMAPS UNINST USE_MM_LD_RUN_PATH VERSION VERSION_FROM XS XSOPT XSPROTOARG
XS_VERSION clean depend dist dynamic_lib linkext macro realclean
tool_autosplit

View File

@ -1,4 +1,4 @@
%global perl_version 5.18.2
%global perl_version 5.20.0
%global perl_epoch 4
%global perl_arch_stem -thread-multi
%global perl_archname %{_arch}-%{_os}%{perl_arch_stem}
@ -8,7 +8,7 @@
%global tapsetdir %{_datadir}/systemtap/tapset
%global dual_life 0
%global rebuild_from_scratch 0
%global rebuild_from_scratch 1
# This overrides filters from build root (/usr/lib/rpm/macros.d/macros.perl)
# intentionally (unversioned perl(DB) is removed and versioned one is kept).
@ -30,7 +30,7 @@
Name: perl
Version: %{perl_version}
# release number must be even higher, because dual-lived modules will be broken otherwise
Release: 301%{?dist}
Release: 302%{?dist}
Epoch: %{perl_epoch}
Summary: Practical Extraction and Report Language
Group: Development/Languages
@ -76,56 +76,16 @@ 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 find2perl to translate ? glob properly, rhbz#825701, RT#113054
Patch9: perl-5.14.2-find2perl-transtate-question-mark-properly.patch
# Update h2ph(1) documentation, rhbz#948538, RT#117647
Patch10: perl-5.19.0-Synchronize-h2ph-POD-text-with-usage-output.patch
# Update pod2html(1) documentation, rhbz#948538, RT#117623
Patch11: perl-5.16.3-Synchronize-pod2html-usage-output-and-its-POD-text.patch
# Fix a test failure in perl5db.t when TERM=vt100, RT#118817,
# in upstream after 5.19.7
Patch12: perl-5.19.7-avoid-using-2-handles-to-write-to-the-de.patch
# Prevent from loading system Term::ReadLine::Gnu while running tests,
# RT#118821
Patch14: perl-5.18.0-Suppress-system-Term-ReadLine-Gnu.patch
# Define SONAME for libperl.so
Patch15: perl-5.16.3-create_libperl_soname.patch
# Install libperl.so to -Dshrpdir value
Patch16: perl-5.16.3-Install-libperl.so-to-shrpdir-on-Linux.patch
# Fix crash with \&$glob_copy, rhbz#989486, RT#119051
# Update the upstream patch to work for Perl 5.18.1
Patch18: perl-5.19.2-Fix-crash-with-glob_copy.patch
# Fix coreamp.t's rand test, rhbz#970567, RT#118237
Patch19: perl-5.19.2-Fix-coreamp.t-s-rand-test.patch
# Reap child in case where exception has been thrown, rhbz#988805, RT#114722
Patch20: perl-5.19.3-Reap-child-in-case-where-exception-has-been-thrown.patch
# Fix using regular expressions containing multiple code blocks,
# rhbz#982131, RT#117917
# Update the upstream patch to work for Perl 5.18.1
Patch21: perl-5.19.2-Fix-using-regexes-with-multiple-code-blocks.patch
# Document Math::BigInt::CalcEmu requires Math::BigInt, rhbz#959096,
# CPAN RT#85015
Patch22: perl-5.18.1-Document-Math-BigInt-CalcEmu-requires-Math-BigInt.patch
# Fix t/comp/parser.t not to load system modules, bug #1084399, RT#121579,
# in upstream after 5.19.1
Patch23: perl-5.18.2-Make-t-comp-parser.t-get-the-correct-libraries.patch
# Pass -fwrapv to stricter GCC 4.9, bug #1082957, RT#121505,
# in upstream after 5.19.10
Patch24: perl-5.18.2-Pass-fwrapv-to-stricter-GCC-4.9.patch
# Link XS modules to libperl.so with EU::CBuilder on Linux, bug #960048
Patch200: perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch
@ -148,10 +108,11 @@ BuildRequires: procps, rsyslog
# compat macro needed for rebuild
%global perl_compat perl(:MODULE_COMPAT_5.18.2)
%global perl_compat perl(:MODULE_COMPAT_5.20.0)
# Compat provides
Provides: %perl_compat
Provides: perl(:MODULE_COMPAT_5.18.2)
Provides: perl(:MODULE_COMPAT_5.18.1)
Provides: perl(:MODULE_COMPAT_5.18.0)
@ -1950,20 +1911,9 @@ tarball from perl.org.
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch14 -p1
%patch15 -p1
%patch16 -p1
%patch18 -p1
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
%patch200 -p1
%patch201 -p1
@ -1978,20 +1928,9 @@ perl -x patchlevel.h \
'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 find2perl to translate ? glob properly (RT#113054)' \
'Fedora Patch10: Update h2ph(1) documentation (RT#117647)' \
'Fedora Patch11: Update pod2html(1) documentation (RT#117623)' \
'Fedora Patch12: Disable ornaments on perl5db AutoTrace tests (RT#118817)' \
'Fedora Patch14: Do not use system Term::ReadLine::Gnu in tests (RT#118821)' \
'Fedora Patch15: Define SONAME for libperl.so' \
'Fedora Patch16: Install libperl.so to -Dshrpdir value' \
'Fedora Patch18: Fix crash with \&$glob_copy (RT#119051)' \
'Fedora Patch19: Fix coreamp.t rand test (RT#118237)' \
'Fedora Patch20: Reap child in case where exception has been thrown (RT#114722)' \
'Fedora Patch21: Fix using regular expressions containing multiple code blocks (RT#117917)' \
'Fedora Patch22: Document Math::BigInt::CalcEmu requires Math::BigInt (CPAN RT#85015)' \
'Fedora Patch23: Fix t/comp/parser.t not to load system modules (RT#121579)' \
'Fedora Patch24: Pass -fwrapv to stricter GCC 4.9 (RT#121505)' \
'Fedora Patch200: Link XS modules to libperl.so with EU::CBuilder on Linux' \
'Fedora Patch201: Link XS modules to libperl.so with EU::MM on Linux' \
%{nil}
@ -3704,6 +3643,11 @@ sed \
# Old changelog entries are preserved in CVS.
%changelog
* Tue Jul 22 2014 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.20.0-302
- Update to Perl 5.20.0
- Clean patches, not needed with new version
- Update patches to work with new version
* Fri Jun 27 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-301
- Remove bundled perl-App-a2p, perl-App-find2perl, perl-App-s2p, and
perl-Package-Constants