|
@@ -3,22 +3,21 @@
|
|
|
%define largefiles 1
|
|
|
|
|
|
%define multilib_64_archs x86_64 s390x ppc64 sparc64
|
|
|
-%define perl_archname %{_arch}-%{_os}-thread-multi
|
|
|
-%define new_perl_lib $RPM_BUILD_ROOT%{_libdir}/perl5/%{version}:$RPM_BUILD_ROOT%{_prefix}/lib/perl5/%{version}
|
|
|
-%define comp_perl_lib $RPM_BUILD_ROOT%{_prefix}/lib/perl5/%{version}:$RPM_BUILD_ROOT%{_prefix}/lib/perl5/%{version}
|
|
|
-%define new_arch_lib $RPM_BUILD_ROOT%{_libdir}/perl5/%{version}/%{perl_archname}
|
|
|
-%define comp_arch_lib $RPM_BUILD_ROOT%{_prefix}/lib/perl5/%{version}/%{perl_archname}
|
|
|
-%define new_perl_flags LD_PRELOAD=/%{new_arch_lib}/CORE/libperl.so LD_LIBRARY_PATH=%{new_arch_lib}/CORE PERL5LIB=%{new_perl_lib}:%{comp_perl_lib}
|
|
|
-%define new_perl %{new_perl_flags} $RPM_BUILD_ROOT/%{_bindir}/perl
|
|
|
-
|
|
|
-%define perl_version 5.16.3
|
|
|
-%define perlrel 3
|
|
|
+%ifarch %{ix86}
|
|
|
+#global arch_suffix -64int
|
|
|
+%global arch_suffix %{nil}
|
|
|
+%else
|
|
|
+%global arch_suffix %{nil}
|
|
|
+%endif
|
|
|
+
|
|
|
+%define perl_version 5.26.2
|
|
|
+%define perlrel 1
|
|
|
%define perl_epoch 2
|
|
|
|
|
|
Provides: perl(:WITH_PERLIO)
|
|
|
|
|
|
%if %{threading}
|
|
|
-%define thread_arch -thread-multi
|
|
|
+%define thread_arch -thread-multi%{arch_suffix}
|
|
|
Provides: perl(:WITH_ITHREADS)
|
|
|
Provides: perl(:WITH_THREADS)
|
|
|
%else
|
|
@@ -27,6 +26,15 @@ Provides: perl(:WITHOUT_ITHREADS)
|
|
|
Provides: perl(:WITHOUT_THREADS)
|
|
|
%endif
|
|
|
|
|
|
+%global perl_archname %{_arch}-%{_os}%{thread_arch}
|
|
|
+
|
|
|
+%global new_perl_lib %{buildroot}%{_libdir}/perl5/%{version}:%{buildroot}%{_prefix}/lib/perl5/%{version}
|
|
|
+%global comp_perl_lib %{buildroot}%{_prefix}/lib/perl5/%{version}:%{buildroot}%{_prefix}/lib/perl5/%{version}
|
|
|
+%global new_arch_lib %{buildroot}%{_libdir}/perl5/%{version}/%{perl_archname}
|
|
|
+%global comp_arch_lib %{buildroot}%{_prefix}/lib/perl5/%{version}/%{perl_archname}
|
|
|
+%global new_perl_flags LD_PRELOAD=/%{new_arch_lib}/CORE/libperl.so LD_LIBRARY_PATH=%{new_arch_lib}/CORE PERL5LIB=%{new_perl_lib}:%{comp_perl_lib}
|
|
|
+%global new_perl %{new_perl_flags} %{buildroot}/%{_bindir}/perl
|
|
|
+
|
|
|
%if %{largefiles}
|
|
|
Provides: perl(:WITH_LARGEFILES)
|
|
|
%else
|
|
@@ -47,20 +55,10 @@ Source0: ftp://ftp.perl.org/pub/perl/CPAN/src/perl-%{perl_version}.tar.bz2
|
|
|
Source10: system-owned-directories
|
|
|
Source11: filter-depends.sh
|
|
|
Source12: perl-5.8.0-libnet.cfg
|
|
|
-Patch4: perl-5.6.1-prereq.patch
|
|
|
-Patch6: perl-5.8.0-fhs.patch
|
|
|
-Patch7: perl-5.6.0-buildroot.patch
|
|
|
-#Patch8: perl-5.8.0-errno.patch
|
|
|
-Patch9: perl-5.7.3-syslog.patch
|
|
|
|
|
|
-# gcc 5 patch from upstream
|
|
|
-Patch10: perl-5.16.3-gcc5.patch
|
|
|
-Patch11: perl-5.18.2-Pass-fwrapv-to-stricter-GCC-4.9.patch
|
|
|
-
|
|
|
-## from CentOS 7 Open QA – c7.00.04: perl-5.16.3-283.el7
|
|
|
-Patch13: perl-perlbug-tag.patch
|
|
|
-
|
|
|
-%define __perl_requires %{SOURCE11}
|
|
|
+%if %{_dist_release} < "vl7"
|
|
|
+%global __perl_requires %{SOURCE11}
|
|
|
+%endif
|
|
|
|
|
|
Conflicts: perl-NDBM_File <= 1:1.75-34.99.6
|
|
|
|
|
@@ -74,7 +72,6 @@ Obsoletes: perl-Time-HiRes
|
|
|
Provides: perl-MIME-Base64
|
|
|
Provides: perl-libnet
|
|
|
## perl-5.10.0
|
|
|
-Obsoletes: perl-Module-Build <= 0.2806-0vl1
|
|
|
Obsoletes: perl-Archive-Tar <= 1.38-0vl2
|
|
|
Obsoletes: perl-IO-Compress-Base <= 2.008-0vl1
|
|
|
Obsoletes: perl-Compress-Raw-Zlib <= 2.008-0vl1
|
|
@@ -82,7 +79,7 @@ Obsoletes: perl-IO-Compress-Zlib <= 2.008-0vl1
|
|
|
Obsoletes: perl-Compress-Zlib <= 2.008-0vl1
|
|
|
Obsoletes: perl-IO-Zlib <= 1.09-0vl1
|
|
|
Obsoletes: perl-version <= 0.42-0vl3
|
|
|
-Provides: perl-Module-Build
|
|
|
+Obsoletes: perl-Encode <= 2.98-1vl7
|
|
|
Provides: perl-Archive-Tar
|
|
|
Provides: perl-IO-Compress-Base
|
|
|
Provides: perl-Compress-Raw-Zlib
|
|
@@ -90,61 +87,227 @@ Provides: perl-IO-Compress-Zlib
|
|
|
Provides: perl-Compress-Zlib
|
|
|
Provides: perl-IO-Zlib
|
|
|
Provides: perl-version
|
|
|
+Provides: perl-Encode
|
|
|
|
|
|
# Vine: provide archlibdir itself since Vine's aptdata don't have filelists
|
|
|
Provides: %{_libdir}/perl5/%{perl_version}/%{_arch}-%{_os}%{thread_arch}
|
|
|
|
|
|
-# Configure doesn't listen well when we say no ndbm. When it links in, it then conflicts with berkeley db. oops.
|
|
|
-Patch16: perl-5.8.0-nondbm.patch
|
|
|
-
|
|
|
-# make sure we get the proper ldflags on libperl.so
|
|
|
-Patch17: perl-5.8.0-sharedlinker.patch
|
|
|
+# Filter dependencies on private modules. Generator:
|
|
|
+# for F in $(find lib -type f); do perl -e '$/ = undef; $_ = <>; if (/^package #\R([\w:]*);/m) { print qq{|^perl\\\\($1\\\\)} }' "$F"; done
|
|
|
|
|
|
-# work around annoying rpath issue
|
|
|
-Patch21: perl-5.8.0-rpath-make.patch
|
|
|
+# patches imported from Fedora/RHEL
|
|
|
|
|
|
-# bugzilla 101767, make sure threads.so links directly to -lpthread
|
|
|
-Patch22: perl-5.8.1-lpthread-link.patch
|
|
|
+# Removes date check, Fedora/RHEL specific
|
|
|
+Patch1: perl-perlbug-tag.patch
|
|
|
|
|
|
-# arch-specific patches
|
|
|
-Patch101: perl-5.8.0-libdir64.patch
|
|
|
+# Fedora/RHEL only (64bit only)
|
|
|
+Patch3: perl-5.8.0-libdir64.patch
|
|
|
|
|
|
-## patches from Fedora
|
|
|
-# Fedora/RHEL specific (use libresolv instead of libbind)
|
|
|
-Patch1006: perl-5.8.6-libresolv.patch
|
|
|
+# Fedora/RHEL specific (use libresolv instead of libbind), bug #151127
|
|
|
+Patch4: perl-5.10.0-libresolv.patch
|
|
|
|
|
|
# FIXME: May need the "Fedora" references removed before upstreaming
|
|
|
-Patch1007: perl-5.12.3-USE_MM_LD_RUN_PATH.patch
|
|
|
+# patches ExtUtils-MakeMaker
|
|
|
+Patch5: perl-USE_MM_LD_RUN_PATH.patch
|
|
|
|
|
|
-# Skip hostname tests, since hostname lookup isn't available in Fedora
|
|
|
-# buildroots by design.
|
|
|
-Patch1008: perl-5.12.3-disable_test_hosts.patch
|
|
|
+# Provide maybe_command independently, bug #1129443
|
|
|
+Patch6: perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch
|
|
|
|
|
|
# The Fedora builders started randomly failing this futime test
|
|
|
# only on x86_64, so we just don't run it. Works fine on normal
|
|
|
# systems.
|
|
|
-Patch1010: perl-5.10.0-x86_64-io-test-failure.patch
|
|
|
+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
|
|
|
+
|
|
|
+# Define SONAME for libperl.so
|
|
|
+Patch15: perl-5.16.3-create_libperl_soname.patch
|
|
|
+
|
|
|
+# Install libperl.so to -Dshrpdir value
|
|
|
+Patch16: perl-5.22.0-Install-libperl.so-to-shrpdir-on-Linux.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
|
|
|
+
|
|
|
+# Make *DBM_File desctructors thread-safe, bug #1107543, RT#61912
|
|
|
+Patch26: perl-5.18.2-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects-only-from-.patch
|
|
|
+
|
|
|
+# Replace ExtUtils::MakeMaker dependency with ExtUtils::MM::Utils.
|
|
|
+# This allows not to require perl-devel. Bug #1129443
|
|
|
+Patch30: perl-5.22.1-Replace-EU-MM-dependnecy-with-EU-MM-Utils-in-IPC-Cmd.patch
|
|
|
+
|
|
|
+# Make File::Glob more resistant against degenerative matching, RT#131211,
|
|
|
+# in upstream after 5.27.0
|
|
|
+Patch31: perl-5.27.0-perl-131211-fixup-File-Glob-degenerate-matching.patch
|
|
|
+
|
|
|
+# Fix glob UTF-8 flag on a glob reassignment, RT#131263,
|
|
|
+# in upstream after 5.27.0
|
|
|
+Patch36: perl-5.26.0-perl-131263-clear-the-UTF8-flag-on-a-glob-if-it-isn-.patch
|
|
|
+
|
|
|
+# Fix handling backslashes in PATH environment variable when executing
|
|
|
+# "perl -S", RT#129183, in upstream after 5.27.0
|
|
|
+Patch38: perl-5.27.0-perl-129183-don-t-treat-as-an-escape-in-PATH-for-S.patch
|
|
|
+
|
|
|
+# Fix reporting malformed UTF-8 character, RT#131646, in upstream after 5.27.1
|
|
|
+Patch43: perl-5.27.1-t-lib-warnings-utf8-Fix-test.patch
|
|
|
+
|
|
|
+# Fix File::Glob rt131211.t test random failures, in upstream after 5.27.1
|
|
|
+Patch45: perl-5.27.1-File-Glob-tweak-rt131211.t-to-be-less-sensitive-on-w.patch
|
|
|
+
|
|
|
+# Fix t/op/hash.t test random failures, in upstream after 5.27.1
|
|
|
+Patch46: perl-5.26.0-t-op-hash.t-fixup-intermittently-failing-test.patch
|
|
|
+
|
|
|
+# Parse caret variables with subscripts as normal variables inside ${...}
|
|
|
+# escaping, RT#131664, in upstream after 5.27.1
|
|
|
+Patch47: perl-5.26.2-RC1-Parse-caret-vars-with-subscripts-the-same-as-normal-.patch
|
|
|
+Patch48: perl-5.26.2-RC1-add-an-additional-test-for-whitespace-tolerance-in-c.patch
|
|
|
+
|
|
|
+# Do not display too many bytes when reporting malformed UTF-8 character,
|
|
|
+# in upstream after 5.27.1
|
|
|
+Patch49: perl-5.27.1-utf8n_to_uvchr-Don-t-display-too-many-bytes-in-msg.patch
|
|
|
+
|
|
|
+# Fix error message for "our sub foo::bar", RT#131679, in upstream after 5.27.1
|
|
|
+Patch51: perl-5.27.1-perl-131679-Fix-our-sub-foo-bar-message.patch
|
|
|
+
|
|
|
+# Fix executing arybase::_tie_it() in Safe compartement, RT#131588,
|
|
|
+# not yet accepted by upstream
|
|
|
+Patch52: perl-5.26.0-perl-131588-be-a-little-more-careful-in-arybase-_tie.patch
|
|
|
+
|
|
|
+# Fix splitting non-ASCII strings if unicode_strings feature is enabled,
|
|
|
+# RT#130907 in upstream after 5.27.1
|
|
|
+Patch54: perl-5.27.1-RT-130907-Fix-the-Unicode-Bug-in-split.patch
|
|
|
+
|
|
|
+# Fix compiler warnings in code generated by ExtUtils::Constant, CPAN RT#63832,
|
|
|
+# in upstream after 5.27.2
|
|
|
+Patch55: perl-5.27.2-Avoid-compiler-warnings-due-to-mismatched-types-in-p.patch
|
|
|
+
|
|
|
+# Fix compiler warnings in code generated by ExtUtils::Constant, CPAN RT#101487,
|
|
|
+# in upstream after 5.27.2
|
|
|
+Patch56: perl-5.27.2-EU-Constant-avoid-uninit-warning.patch
|
|
|
+
|
|
|
+# Fix unreliable Time-HiRes tests, CPAN RT#122819, in Time-HiRes-1.9746
|
|
|
+Patch58: perl-5.26.0-Time-HiRes-Fix-unreliable-t-usleep.t-and-t-utime.t.patch
|
|
|
+
|
|
|
+# Fix Term::ReadLine not to create spurious &STDERR files, RT#132008,
|
|
|
+# in upstream after 5.27.3
|
|
|
+Patch61: perl-5.27.3-perl-132008-try-to-prevent-the-similar-mistakes-in-t.patch
|
|
|
+
|
|
|
+# Fix an overflow when parsing a character range with no preceding character,
|
|
|
+# RT#132245, in upstream after 5.27.5
|
|
|
+Patch64: perl-5.26.1-perl-132245-don-t-try-to-process-a-char-range-with-n.patch
|
|
|
+
|
|
|
+# Fix walking symbol table for ISA in Carp, in upstream after 5.27.5
|
|
|
+Patch65: perl-5.27.5-Carp-Don-t-choke-on-ISA-constant.patch
|
|
|
+
|
|
|
+# Fix handling file names with null bytes in stat and lstat functions,
|
|
|
+# RT#131895, in upstream after 5.27.5
|
|
|
+Patch66: perl-5.26.1-perl-131895-fail-stat-on-names-with-0-embedded.patch
|
|
|
+
|
|
|
+# Fix a crash when untying an object witout a stash, in upstream after 5.27.5
|
|
|
+Patch67: perl-5.27.5-Avoid-a-segfault-when-untying-an-object.patch
|
|
|
|
|
|
-# This patch enable to build with libxcrypt
|
|
|
-Patch1011: 0001-pp-Guard-fix-for-really-old-bug-in-glibc-libcrypt.patch
|
|
|
+# Fix deparsing of transliterations with unprintable characters, RT#132405,
|
|
|
+# in upstream after 5.27.5
|
|
|
+Patch68: perl-5.26.1-Fix-deparsing-of-transliterations-with-unprintable-c.patch
|
|
|
|
|
|
-## patch(es) from CentOS
|
|
|
-# perl-5.16.3-283.el7
|
|
|
-Patch7000: porting-podcheck-regen.patch
|
|
|
+# Fix error reporting on do() on a directory, RT#125774,
|
|
|
+# in upstream after 5.27.5
|
|
|
+Patch69: perl-5.26.1-fix-do-dir-returning-no.patch
|
|
|
+
|
|
|
+# Fix stack manipulation when a lexical subroutine is defined in a do block in
|
|
|
+# a member of an iteration list, RT#132442, in upstream after 5.27.5
|
|
|
+Patch70: perl-5.27.5-perl-132442-Fix-stack-with-do-my-sub-l-1.patch
|
|
|
+
|
|
|
+# Fix setting $! when statting a closed filehandle, RT#108288,
|
|
|
+# in upstream after 5.27.5
|
|
|
+Patch71: perl-5.26.1-set-when-statting-a-closed-filehandle.patch
|
|
|
+
|
|
|
+# Fix tainting of s/// with overloaded replacement, RT#115266,
|
|
|
+# in upstream after 5.27.5
|
|
|
+Patch72: perl-5.27.5-fix-tainting-of-s-with-overloaded-replacement.patch
|
|
|
+
|
|
|
+# Expand system() arguments before a fork, RT#121105,
|
|
|
+# in upstream after 5.27.6
|
|
|
+Patch73: perl-5.26.2-RC1-perform-system-arg-processing-before-fork.patch
|
|
|
+# in upstream after 5.27.7
|
|
|
+Patch74: perl-5.27.7-preserve-numericness-of-system-args-on-Win32.patch
|
|
|
+Patch75: perl-5.27.7-Reenable-numeric-first-argument-of-system-on-VMS.patch
|
|
|
+
|
|
|
+# Avoid undefined behavior when copying memory in Glob and pp_caller,
|
|
|
+# RT#131746, in upstream after 5.27.3
|
|
|
+Patch76: perl-5.26.1-perl-131746-avoid-undefined-behaviour-in-Copy-etc.patch
|
|
|
+Patch77: perl-5.27.3-avoid-the-address-of-.-will-always-evaluate-as-.-war.patch
|
|
|
+
|
|
|
+# Conditionalize a fix for an old and long fixed bug
|
|
|
+# in libcrypt / glibc, rhbz#1536752, RT#133184, in upstream after 5.27.11
|
|
|
+Patch78: perl-5.26.1-guard_old_libcrypt_fix.patch
|
|
|
+
|
|
|
+# Link XS modules to pthread library to fix linking with -z defs,
|
|
|
+# <https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/3RHZEHLRUHJFF2XGHI5RB6YPDNLDR4HG/>
|
|
|
+Patch79: perl-5.27.8-hints-linux-Add-lphtread-to-lddlflags.patch
|
|
|
+
|
|
|
+# Fix parsing braced subscript after parentheses, RT#8045,
|
|
|
+# in upstream after 5.27.7
|
|
|
+Patch80: perl-5.26.1-fix-parsing-of-braced-subscript-after-parens.patch
|
|
|
+
|
|
|
+# Do not clobber file bytes in :encoding layer, RT#132833,
|
|
|
+# in upstream after 5.27.8
|
|
|
+Patch81: perl-5.27.8-don-t-clobber-file-bytes-in-encoding-layer.patch
|
|
|
+
|
|
|
+# Fix line numbers in multi-line s///, RT#131930, in upstream after 5.27.9
|
|
|
+Patch82: perl-5.27.9-fix-line-numbers-in-multi-line-s.patch
|
|
|
+
|
|
|
+# Fix parsing extended bracketed character classes, RT#132167,
|
|
|
+# in upstream after 5.27.10
|
|
|
+Patch83: perl-5.27.10-PATCH-perl-132167-Parse-error-in-regex_sets.patch
|
|
|
+
|
|
|
+# Fix a possibly unitialized memory read in the Perl parser, RT#133074,
|
|
|
+# in upstream after 5.27.10
|
|
|
+Patch84: perl-5.27.10-PATCH-perl-133074-5.26.1-some-coverity-fixes.patch
|
|
|
+
|
|
|
+# Fix an infinite loop in the regular expression compiler, RT#133185,
|
|
|
+# in upstream after 5.27.11
|
|
|
+Patch85: perl-5.26.2-PATCH-perl-133185-Infinite-loop-in-qr.patch
|
|
|
+
|
|
|
+# Adjust tests to gdbm-1.15, RT#133295
|
|
|
+Patch86: perl-5.29.0-Remove-ext-GDBM_File-t-fatal.t.patch
|
|
|
+
|
|
|
+# Fix an integer wrap when allocating memory for an environment variable,
|
|
|
+# RT#133204, in upstream after 5.29.0
|
|
|
+Patch87: perl-5.26.2-Perl_my_setenv-handle-integer-wrap.patch
|
|
|
+
|
|
|
+# Fix printing a warning about a wide character when matching a regular
|
|
|
+# expression while ISO-8859-1 locale is in effect, in upstream after 5.29.0
|
|
|
+Patch88: perl-5.29.0-regexec.c-Call-macro-with-correct-args.patch
|
|
|
+
|
|
|
+# Fix invoking a check for wide characters while ISO-8859-1 locale is in effect,
|
|
|
+# in upstream after 5.29.0
|
|
|
+Patch89: perl-5.26.2-perl.h-Add-parens-around-macro-arguments.patch
|
|
|
+
|
|
|
+# Pass the correct CFLAGS to dtrace
|
|
|
+Patch90: perl-5.26.2-Pass-CFLAGS-to-dtrace.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
|
|
|
+
|
|
|
+# Link XS modules to libperl.so with EU::MM on Linux, bug #960048
|
|
|
+Patch201: perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-MM-on-Linux.patch
|
|
|
+
|
|
|
+# Vine
|
|
|
+# (nothing)
|
|
|
|
|
|
## security
|
|
|
-Patch2020: perl-5.12.3_CVE-2012-5195.patch
|
|
|
-Patch2030: perl-5.12.3_CVE-2012-5526.patch
|
|
|
-# from CentOS
|
|
|
-Patch2050: perl-5.17.6-Fix-misparsing-of-maketext-strings.patch
|
|
|
-Patch2060: perl-5.16.3-Perl_my_setenv-handle-integer-wrap.patch
|
|
|
+# (nothing)
|
|
|
+
|
|
|
|
|
|
Buildroot: %{_tmppath}/%{name}-%{version}-root
|
|
|
BuildRequires: gawk, grep, tcsh, gdbm-devel, libdb-devel
|
|
|
BuildRequires: rpm-devel, ncurses-devel, zlib-devel, netpbm-devel
|
|
|
BuildRequires: libpng-devel, libtiff-devel, libelf, libjpeg-devel
|
|
|
BuildRequires: netpbm-devel, e2fsprogs-devel
|
|
|
-BuildRequires: libxcrypt-devel, libnsl2-devel
|
|
|
+BuildRequires: libxcrypt-devel, libnsl2-devel, bzip2-devel
|
|
|
|
|
|
# without man installed, the variables installman[13]dir
|
|
|
# in Config.pm will be undefined. This BuildPreReq will fix it.
|
|
@@ -160,10 +323,9 @@ Provides: perl(VMS::Filespec)
|
|
|
Provides: perl(VMS::Stdio)
|
|
|
|
|
|
# Compat provides
|
|
|
-Provides: perl(:MODULE_COMPAT_5.16.3)
|
|
|
-Provides: perl(:MODULE_COMPAT_5.16.2)
|
|
|
-Provides: perl(:MODULE_COMPAT_5.16.1)
|
|
|
-Provides: perl(:MODULE_COMPAT_5.16.0)
|
|
|
+Provides: perl(:MODULE_COMPAT_5.26.2)
|
|
|
+Provides: perl(:MODULE_COMPAT_5.26.1)
|
|
|
+Provides: perl(:MODULE_COMPAT_5.26.0)
|
|
|
|
|
|
# Threading provides
|
|
|
Provides: perl(:WITH_ITHREADS)
|
|
@@ -255,31 +417,70 @@ Perl library directories in /usr/local
|
|
|
|
|
|
%prep
|
|
|
%setup -q
|
|
|
-%patch7000 -p1
|
|
|
-%patch10 -p1
|
|
|
-%patch11 -p1
|
|
|
-%patch13 -p1
|
|
|
-
|
|
|
-%patch17 -p1 -b .sharedlinker
|
|
|
-
|
|
|
-%patch21 -p1 -b .rpathmake
|
|
|
|
|
|
+## patch from Fedora/RHEL
|
|
|
+%patch1 -p1
|
|
|
%ifarch %{multilib_64_archs}
|
|
|
-%patch101 -p1 -b .libdir64
|
|
|
+%patch3 -p1
|
|
|
%endif
|
|
|
-
|
|
|
-## patch from Fedora
|
|
|
-%patch1006 -p1
|
|
|
-%patch1007 -p1
|
|
|
-%patch1008 -p1
|
|
|
-%patch1010 -p1
|
|
|
-%patch1011 -p1
|
|
|
+%patch4 -p1
|
|
|
+%patch5 -p1
|
|
|
+%patch6 -p1
|
|
|
+%patch7 -p1
|
|
|
+%patch8 -p1
|
|
|
+%patch15 -p1
|
|
|
+%patch16 -p1
|
|
|
+%patch22 -p1
|
|
|
+%patch26 -p1
|
|
|
+%patch30 -p1
|
|
|
+%patch31 -p1
|
|
|
+%patch36 -p1
|
|
|
+%patch38 -p1
|
|
|
+%patch43 -p1
|
|
|
+%patch45 -p1
|
|
|
+%patch46 -p1
|
|
|
+%patch47 -p1
|
|
|
+%patch48 -p1
|
|
|
+%patch49 -p1
|
|
|
+%patch51 -p1
|
|
|
+%patch52 -p1
|
|
|
+%patch54 -p1
|
|
|
+%patch55 -p1
|
|
|
+%patch56 -p1
|
|
|
+%patch58 -p1
|
|
|
+%patch61 -p1
|
|
|
+%patch64 -p1
|
|
|
+%patch65 -p1
|
|
|
+%patch66 -p1
|
|
|
+%patch67 -p1
|
|
|
+%patch68 -p1
|
|
|
+%patch69 -p1
|
|
|
+%patch70 -p1
|
|
|
+%patch71 -p1
|
|
|
+%patch72 -p1
|
|
|
+%patch73 -p1
|
|
|
+%patch74 -p1
|
|
|
+%patch75 -p1
|
|
|
+%patch76 -p1
|
|
|
+%patch77 -p1
|
|
|
+%patch78 -p1
|
|
|
+%patch79 -p1
|
|
|
+%patch80 -p1
|
|
|
+%patch81 -p1
|
|
|
+%patch82 -p1
|
|
|
+%patch83 -p1
|
|
|
+%patch84 -p1
|
|
|
+%patch85 -p1
|
|
|
+%patch86 -p1
|
|
|
+%patch87 -p1
|
|
|
+%patch88 -p1
|
|
|
+%patch89 -p1
|
|
|
+%patch90 -p1 -b .dtrace
|
|
|
+%patch200 -p1
|
|
|
+%patch201 -p1
|
|
|
|
|
|
## security patch(es)
|
|
|
-%patch2020 -p1 -b .CVE-2012-5195
|
|
|
-%patch2030 -p1
|
|
|
-%patch2050 -p1
|
|
|
-%patch2060 -p1
|
|
|
+# (nothing)
|
|
|
|
|
|
#
|
|
|
# Candidates for doc recoding (need case by case review):
|
|
@@ -290,16 +491,13 @@ recode()
|
|
|
touch -r "$1" "${1}_"
|
|
|
mv -f "${1}_" "$1"
|
|
|
}
|
|
|
-recode README.cn euc-cn
|
|
|
-recode README.jp euc-jp
|
|
|
-recode README.ko euc-kr
|
|
|
# TODO iconv fail on this one
|
|
|
## recode README.tw big5
|
|
|
-recode pod/perlebcdic.pod
|
|
|
-recode pod/perlhack.pod
|
|
|
-recode pod/perlhist.pod
|
|
|
-recode pod/perlthrtut.pod
|
|
|
-recode AUTHORS
|
|
|
+#recode pod/perlebcdic.pod
|
|
|
+#recode pod/perlhack.pod
|
|
|
+#recode pod/perlhist.pod
|
|
|
+#recode pod/perlthrtut.pod
|
|
|
+#recode AUTHORS
|
|
|
|
|
|
find . -name \*.orig -exec rm -fv {} \;
|
|
|
|
|
@@ -328,6 +526,9 @@ find . -name \*.orig -exec rm -fv {} \;
|
|
|
%global __requires_exclude %__requires_exclude|^perl\\(Tk\\)
|
|
|
%global __requires_exclude %__requires_exclude|^perl\\(Tk::Pod\\)
|
|
|
%global __requires_exclude %__requires_exclude|^perl\\(Your::Module::Here\\)
|
|
|
+%global __requires_exclude %__requires_exclude|^perl\\(Locale::Codes\\)
|
|
|
+%global __requires_exclude %__requires_exclude|^perl\\(Locale::Codes::
|
|
|
+echo "__requires_exclude: %__requires_exclude"
|
|
|
%else
|
|
|
cat << EOF > perl-prov
|
|
|
#!/bin/sh
|
|
@@ -356,6 +557,11 @@ sed -i 's|BUILD_ZLIB = True|BUILD_ZLIB = False|
|
|
|
s|LIB = ./zlib-src|LIB = %{_libdir}|' \
|
|
|
cpan/Compress-Raw-Zlib/config.in
|
|
|
|
|
|
+# Ensure that we never accidentally bundle zlib or bzip2
|
|
|
+rm -rf cpan/Compress-Raw-Zlib/zlib-src
|
|
|
+rm -rf cpan/Compress-Raw-Bzip2/bzip2-src
|
|
|
+sed -i '/\(bzip2\|zlib\)-src/d' MANIFEST
|
|
|
+
|
|
|
|
|
|
%build
|
|
|
# for generating makefiles
|
|
@@ -371,16 +577,22 @@ echo "RPM Build arch: %{_arch}"
|
|
|
# arches work correctly :\ the Configure lines below hardcode lib for
|
|
|
# similar reasons.
|
|
|
|
|
|
-/bin/sh Configure -des -Doptimize="$RPM_OPT_FLAGS" \
|
|
|
+/bin/sh Configure -des \
|
|
|
+ -Doptimize="none" \
|
|
|
+ -Dccflags="$RPM_OPT_FLAGS" \
|
|
|
+ -Dldflags="$RPM_LD_FLAGS" \
|
|
|
+ -Dccdlflags="-Wl,--enable-new-dtags $RPM_LD_FLAGS" \
|
|
|
+ -Dlddlflags="-shared $RPM_LD_FLAGS" \
|
|
|
+ -Dshrpdir="%{_libdir}" \
|
|
|
-Dversion=%{perl_version} \
|
|
|
-Dmyhostname=localhost \
|
|
|
-Dperladmin=root@localhost \
|
|
|
-Dcc='%{__cc}' \
|
|
|
- -Dcf_by='Vine Linux' \
|
|
|
+ -Dcf_by='Vine Linux' \
|
|
|
-Dinstallprefix=%{_prefix} \
|
|
|
-Dprefix=%{_prefix} \
|
|
|
%ifarch %{multilib_64_archs}
|
|
|
- -Dlibpth="/lib64 %{_prefix}/lib64" \
|
|
|
+ -Dlibpth="%{_prefix}/local/lib64 /lib64 %{_prefix}/lib64" \
|
|
|
-Dprivlib="%{_prefix}/lib/perl5/%{perl_version}" \
|
|
|
-Dsitelib="%{_prefix}/lib/perl5/site_perl/%{perl_version}" \
|
|
|
-Dvendorlib="%{_prefix}/lib/perl5/vendor_perl/%{perl_version}" \
|
|
@@ -420,12 +632,32 @@ echo "RPM Build arch: %{_arch}"
|
|
|
%endif
|
|
|
-Dscriptdir='%{_bindir}'
|
|
|
|
|
|
+BUILD_BZIP2=0
|
|
|
+BZIP2_LIB=%{_libdir}
|
|
|
+export BUILD_BZIP2 BZIP2_LIB
|
|
|
+
|
|
|
+# Prepapre a symlink from proper DSO name to libperl.so now so that new perl
|
|
|
+# can be executed from make.
|
|
|
+%global soname libperl.so.%(echo '%{perl_version}' | sed 's/^\\([^.]*\\.[^.]*\\).*/\\1/')
|
|
|
+test -L %soname || ln -s libperl.so %soname
|
|
|
+
|
|
|
make %{?_smp_mflags}
|
|
|
|
|
|
%install
|
|
|
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
|
|
|
make install DESTDIR=$RPM_BUILD_ROOT
|
|
|
|
|
|
+# Make proper DSO names, move libperl to standard path.
|
|
|
+mv "%{new_arch_lib}/CORE/libperl.so" \
|
|
|
+ "$RPM_BUILD_ROOT%{_libdir}/libperl.so.%{perl_version}"
|
|
|
+ln -s "libperl.so.%{perl_version}" "$RPM_BUILD_ROOT%{_libdir}/%{soname}"
|
|
|
+ln -s "libperl.so.%{perl_version}" "$RPM_BUILD_ROOT%{_libdir}/libperl.so"
|
|
|
+# XXX: Keep symlink from original location because various code glues
|
|
|
+# $archlib/CORE/$libperl to get the DSO.
|
|
|
+ln -s "../../../../libperl.so.%{perl_version}" "%{new_arch_lib}/CORE/libperl.so"
|
|
|
+rm -f "%{new_arch_lib}/CORE/%{soname}"
|
|
|
+ln -s "../../../../libperl.so.%{perl_version}" "%{new_arch_lib}/CORE/%{soname}"
|
|
|
+
|
|
|
%ifarch %{multilib_64_archs}
|
|
|
mkdir -p -m 755 $RPM_BUILD_ROOT%{_prefix}/lib/perl5/%{perl_version}
|
|
|
mkdir -p -m 755 $RPM_BUILD_ROOT%{_prefix}/lib/perl5/vendor_perl/%{perl_version}/auto
|
|
@@ -482,18 +714,6 @@ find $RPM_BUILD_ROOT -name '*NDBM*' | xargs rm -rfv
|
|
|
|
|
|
find $RPM_BUILD_ROOT -type f -name '*.bs' -a -empty -exec rm -f {} ';'
|
|
|
|
|
|
-# Install sample cgi scripts (this used to happen automatically?)
|
|
|
-mkdir -p $RPM_BUILD_ROOT/%{_libdir}/perl5/%{perl_version}/CGI/examples/
|
|
|
-cp -a cpan/CGI/examples/* $RPM_BUILD_ROOT/%{_libdir}/perl5/%{perl_version}/CGI/examples/
|
|
|
-
|
|
|
-# Cleanup binary paths and make cgi files executable
|
|
|
-pushd $RPM_BUILD_ROOT/%{_libdir}/perl5/%{perl_version}/CGI/examples/
|
|
|
- for i in *.cgi make_links.pl ; do
|
|
|
- sed -i 's|/usr/local/bin/perl|%{_bindir}/perl|g' $i
|
|
|
- chmod +x $i
|
|
|
- done
|
|
|
-popd
|
|
|
-
|
|
|
# miniperl? As an interpreter? How odd.
|
|
|
sed -i 's|./miniperl|%{_bindir}/perl|' $RPM_BUILD_ROOT/%{_prefix}/lib/perl5/%{perl_version}/ExtUtils/xsubpp
|
|
|
chmod +x $RPM_BUILD_ROOT/%{_prefix}/lib/perl5/%{perl_version}/ExtUtils/xsubpp
|
|
@@ -537,7 +757,11 @@ chmod -R u+w $RPM_BUILD_ROOT/*
|
|
|
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
|
|
|
|
|
|
%check
|
|
|
-make test
|
|
|
+%{new_perl} -I./lib regen/lib_cleanup.pl
|
|
|
+pushd t
|
|
|
+%{new_perl} -I../lib porting/customized.t --regen
|
|
|
+popd
|
|
|
+LC_ALL=C make test
|
|
|
|
|
|
%post -p /sbin/ldconfig
|
|
|
|
|
@@ -550,6 +774,7 @@ make test
|
|
|
%{_mandir}/man3/*.3*
|
|
|
%{_bindir}/*
|
|
|
%{_libdir}/perl5
|
|
|
+%{_libdir}/libperl.so*
|
|
|
%ifarch %{multilib_64_archs}
|
|
|
%{_prefix}/lib/perl5
|
|
|
%endif
|
|
@@ -561,13 +786,11 @@ make test
|
|
|
%dir %{_prefix}/local/lib/site_perl/%{perl_version}/%{_arch}-%{_os}%{thread_arch}
|
|
|
|
|
|
%changelog
|
|
|
-* Wed May 15 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.16.3-3
|
|
|
-- rebuilt with gdbm-1.18.1.
|
|
|
-- added Patch2060 (CVE-2018-18311).
|
|
|
-- added BR:libxcrypt-devel,libnsl2-devel.
|
|
|
-- added Patch1011 to build with libxcrypt.
|
|
|
-- added Patch10 to build with gcc >= 5.
|
|
|
-- added Patch11 to build with gcc >= 4.9.
|
|
|
+* Thu May 16 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 5.26.2-1
|
|
|
+- new upstream release.
|
|
|
+- added BR:libxcrypt-devel,libnsl2-devel,bzip2-devel.
|
|
|
+- dropped all patches.
|
|
|
+- imported patches from RHEL8 beta.
|
|
|
|
|
|
* Thu Feb 5 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 5.16.3-2
|
|
|
- rebuilt with libdb 5.3.28
|