diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..d93311d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+SOURCES/perl-5.32.1.tar.xz
diff --git a/.perl.metadata b/.perl.metadata
new file mode 100644
index 0000000..7c913e5
--- /dev/null
+++ b/.perl.metadata
@@ -0,0 +1 @@
+1fb4f710d139da1e1a3e1fa4eaba201fcaa8e18e SOURCES/perl-5.32.1.tar.xz
diff --git a/SOURCES/Pod-Html-license-clarification b/SOURCES/Pod-Html-license-clarification
new file mode 100644
index 0000000..bd567f1
--- /dev/null
+++ b/SOURCES/Pod-Html-license-clarification
@@ -0,0 +1,41 @@
+Date: Sun, 15 Mar 2015 21:22:10 -0600
+Subject: Re: Pod::Html license
+From: Tom Christiansen <tchrist53147@gmail.com>
+To: Petr Šabata <contyk@redhat.com>
+Cc: Tom Christiansen <tchrist@perl.com>, marcgreen@cpan.org,
+ jplesnik@redhat.com
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+Content-Type: text/plain; charset=utf-8
+
+Yes, it was supposed to be licensed just like the rest of Perl.
+
+Sent from my Sprint phone
+
+Petr Šabata <contyk@redhat.com> wrote:
+
+>Marc, Tom,
+>
+>I'm reviewing licensing of our perl package in Fedora and 
+>noticed Pod::HTML and its pod2html script are licensed under
+>the Artistic license (only).
+>
+>This is an issue for us as this license isn't considered free by
+>FSF [0].  Unless the license of this core component changes, we
+>will have to drop it from the tarball and remove support for it
+>from all the modules we ship that use it, such as Module::Build
+>or Module::Install.
+>
+>What I've seen in the past is authors originally claiming their
+>module was released under Artistic while what they actually meant
+>was the common `the same as perl itself', i.e. `GPL+/Aristic' [1],
+>an FSF free license.  Is it possible this is also the case
+>of Pod::Html?
+>
+>Thanks,
+>Petr
+>
+>(also CC'ing Jitka, the primary package maintainer in Fedora)
+>
+>[0] https://www.gnu.org/licenses/license-list.html#ArtisticLicense
+>[1] https://www.gnu.org/licenses/license-list.html#PerlLicense
diff --git a/SOURCES/gendep.macros b/SOURCES/gendep.macros
new file mode 100644
index 0000000..cb2cdc0
--- /dev/null
+++ b/SOURCES/gendep.macros
@@ -0,0 +1,2474 @@
+%global gendep_perl \
+%{nil}
+%global gendep_perl_Archive_Tar \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(Archive::Tar) \
+Requires: perl(Archive::Tar::Constant) \
+Requires: perl(Archive::Tar::File) \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Cwd) \
+Requires: perl(Data::Dumper) \
+Requires: perl(Exporter) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Find) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec) \
+Requires: perl(File::Spec::Unix) \
+Requires: perl(Getopt::Long) \
+Requires: perl(Getopt::Std) \
+Requires: perl(IO::File) \
+Requires: perl(IO::Handle) \
+Requires: perl(IO::Zlib) \
+Requires: perl(Pod::Usage) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Archive::Tar) = 2.36 \
+Provides: perl(Archive::Tar::Constant) = 2.36 \
+Provides: perl(Archive::Tar::File) = 2.36 \
+%{nil}
+%global gendep_perl_Attribute_Handlers \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Attribute::Handlers) = 1.01 \
+%{nil}
+%global gendep_perl_AutoLoader \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(strict) \
+Provides: perl(AutoLoader) = 5.74 \
+%{nil}
+%global gendep_perl_AutoSplit \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec::Functions) \
+Requires: perl(strict) \
+Provides: perl(AutoSplit) = 1.06 \
+%{nil}
+%global gendep_perl_B \
+Requires: perl(B) \
+Requires: perl(B::Concise) \
+Requires: perl(B::Op_private) \
+Requires: perl(B::Terse) \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(feature) \
+Requires: perl(re) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(B) = 1.80 \
+Provides: perl(B::Concise) = 1.004 \
+Provides: perl(B::Deparse) = 1.54 \
+Provides: perl(B::OBJECT) \
+Provides: perl(B::Op_private) = 5.032000 \
+Provides: perl(B::Showlex) = 1.05 \
+Provides: perl(B::Terse) = 1.09 \
+Provides: perl(B::Xref) = 1.07 \
+Provides: perl(O) = 1.03 \
+%{nil}
+%global gendep_perl_B_debuginfo \
+%{nil}
+%global gendep_perl_Benchmark \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Benchmark) = 1.23 \
+%{nil}
+%global gendep_perl_CPAN \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(App::Cpan) \
+Requires: perl(CPAN) >= 1.80 \
+Requires: perl(CPAN::Author) \
+Requires: perl(CPAN::Bundle) \
+Requires: perl(CPAN::CacheMgr) \
+Requires: perl(CPAN::Complete) \
+Requires: perl(CPAN::Debug) \
+Requires: perl(CPAN::DeferredCode) \
+Requires: perl(CPAN::Distribution) \
+Requires: perl(CPAN::Distroprefs) \
+Requires: perl(CPAN::Distrostatus) \
+Requires: perl(CPAN::Exception::RecursiveDependency) \
+Requires: perl(CPAN::Exception::yaml_not_installed) \
+Requires: perl(CPAN::Exception::yaml_process_error) \
+Requires: perl(CPAN::FTP) \
+Requires: perl(CPAN::FTP::netrc) \
+Requires: perl(CPAN::HTTP::Credentials) \
+Requires: perl(CPAN::HandleConfig) \
+Requires: perl(CPAN::Index) >= 1.93 \
+Requires: perl(CPAN::InfoObj) \
+Requires: perl(CPAN::LWP::UserAgent) \
+Requires: perl(CPAN::Mirrors) \
+Requires: perl(CPAN::Module) \
+Requires: perl(CPAN::Prompt) \
+Requires: perl(CPAN::Queue) \
+Requires: perl(CPAN::Shell) \
+Requires: perl(CPAN::Tarzip) \
+Requires: perl(CPAN::URL) \
+Requires: perl(CPAN::Version) \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Cwd) \
+Requires: perl(DirHandle) \
+Requires: perl(Errno) \
+Requires: perl(Exporter) \
+Requires: perl(ExtUtils::MakeMaker) \
+Requires: perl(Fcntl) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Copy) \
+Requires: perl(File::Find) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec) \
+Requires: perl(File::Spec::Functions) \
+Requires: perl(FileHandle) \
+Requires: perl(Getopt::Std) \
+Requires: perl(HTTP::Tiny) >= 0.005 \
+Requires: perl(Net::Ping) \
+Requires: perl(POSIX) \
+Requires: perl(Safe) \
+Requires: perl(Sys::Hostname) \
+Requires: perl(Text::ParseWords) \
+Requires: perl(Text::Wrap) \
+Requires: perl(autouse) \
+Requires: perl(constant) \
+Requires: perl(if) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(App::Cpan) = 1.675 \
+Provides: perl(CPAN) = 2.27 \
+Provides: perl(CPAN::Author) = 5.5002 \
+Provides: perl(CPAN::Bundle) = 5.5005 \
+Provides: perl(CPAN::CacheMgr) = 5.5002 \
+Provides: perl(CPAN::Complete) = 5.5001 \
+Provides: perl(CPAN::Debug) = 5.5001 \
+Provides: perl(CPAN::DeferredCode) = 5.50 \
+Provides: perl(CPAN::Distribution) = 2.27 \
+Provides: perl(CPAN::Distroprefs) = 6.0001 \
+Provides: perl(CPAN::Distroprefs::Iterator) \
+Provides: perl(CPAN::Distroprefs::Pref) \
+Provides: perl(CPAN::Distroprefs::Result) \
+Provides: perl(CPAN::Distroprefs::Result::Error) \
+Provides: perl(CPAN::Distroprefs::Result::Fatal) \
+Provides: perl(CPAN::Distroprefs::Result::Success) \
+Provides: perl(CPAN::Distroprefs::Result::Warning) \
+Provides: perl(CPAN::Distrostatus) = 5.5 \
+Provides: perl(CPAN::Eval) \
+Provides: perl(CPAN::Exception::RecursiveDependency) = 5.5001 \
+Provides: perl(CPAN::Exception::RecursiveDependency::na) \
+Provides: perl(CPAN::Exception::blocked_urllist) = 1.001 \
+Provides: perl(CPAN::Exception::yaml_not_installed) = 5.5 \
+Provides: perl(CPAN::Exception::yaml_process_error) = 5.5 \
+Provides: perl(CPAN::FTP) = 5.5012 \
+Provides: perl(CPAN::FTP::netrc) = 1.01 \
+Provides: perl(CPAN::FirstTime) = 5.5314 \
+Provides: perl(CPAN::HTTP::Client) = 1.9601 \
+Provides: perl(CPAN::HTTP::Credentials) = 1.9601 \
+Provides: perl(CPAN::HandleConfig) = 5.5011 \
+Provides: perl(CPAN::Index) = 2.12 \
+Provides: perl(CPAN::InfoObj) = 5.5 \
+Provides: perl(CPAN::Kwalify) = 5.50 \
+Provides: perl(CPAN::LWP::UserAgent) = 1.9601 \
+Provides: perl(CPAN::Mirrored::By) \
+Provides: perl(CPAN::Mirrors) = 2.27 \
+Provides: perl(CPAN::Module) = 5.5003 \
+Provides: perl(CPAN::Nox) = 5.5001 \
+Provides: perl(CPAN::Plugin) = 0.97 \
+Provides: perl(CPAN::Plugin::Specfile) = 0.02 \
+Provides: perl(CPAN::Prompt) = 5.5 \
+Provides: perl(CPAN::Queue) = 5.5003 \
+Provides: perl(CPAN::Queue::Item) \
+Provides: perl(CPAN::Shell) = 5.5009 \
+Provides: perl(CPAN::Tarzip) = 5.5013 \
+Provides: perl(CPAN::URL) = 5.5 \
+Provides: perl(CPAN::Version) = 5.5003 \
+%{nil}
+%global gendep_perl_CPAN_Meta \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(:VERSION) >= 5.8.1 \
+Requires: perl(CPAN::Meta::Converter) >= 2.141170 \
+Requires: perl(CPAN::Meta::Feature) \
+Requires: perl(CPAN::Meta::Prereqs) \
+Requires: perl(CPAN::Meta::Requirements) >= 2.121 \
+Requires: perl(CPAN::Meta::Validator) \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(Parse::CPAN::Meta) >= 1.4400 \
+Requires: perl(Parse::CPAN::Meta) >= 1.4414 \
+Requires: perl(Scalar::Util) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(CPAN::Meta) = 2.150010 \
+Provides: perl(CPAN::Meta::Converter) = 2.150010 \
+Provides: perl(CPAN::Meta::Feature) = 2.150010 \
+Provides: perl(CPAN::Meta::History) = 2.150010 \
+Provides: perl(CPAN::Meta::Merge) = 2.150010 \
+Provides: perl(CPAN::Meta::Prereqs) = 2.150010 \
+Provides: perl(CPAN::Meta::Spec) = 2.150010 \
+Provides: perl(CPAN::Meta::Validator) = 2.150010 \
+Provides: perl(Parse::CPAN::Meta) = 2.150010 \
+%{nil}
+%global gendep_perl_CPAN_Meta_Requirements \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(CPAN::Meta::Requirements) = 2.140000 \
+%{nil}
+%global gendep_perl_CPAN_Meta_YAML \
+Requires: perl(:VERSION) >= 5.8.1 \
+Requires: perl(B) \
+Requires: perl(Exporter) \
+Requires: perl(Scalar::Util) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(CPAN::Meta::YAML) = 0.018 \
+%{nil}
+%global gendep_perl_Carp \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Carp) = 1.50 \
+Provides: perl(Carp::Heavy) = 1.50 \
+Provides: perl(Carp::Heavy) = 1.50 \
+%{nil}
+%global gendep_perl_Class_Struct \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(warnings::register) \
+Provides: perl(Class::Struct) = 0.66 \
+Provides: perl(Class::Struct::Tie_ISA) \
+%{nil}
+%global gendep_perl_Compress_Raw_Bzip2 \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(bytes) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Compress::Raw::Bzip2) = 2.093 \
+%{nil}
+%global gendep_perl_Compress_Raw_Bzip2_debuginfo \
+%{nil}
+%global gendep_perl_Compress_Raw_Zlib \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(bytes) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Compress::Raw::Zlib) = 2.093 \
+%{nil}
+%global gendep_perl_Compress_Raw_Zlib_debuginfo \
+%{nil}
+%global gendep_perl_Config_Extensions \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Config::Extensions) = 0.03 \
+%{nil}
+%global gendep_perl_Config_Perl_V \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Config::Perl::V) = 0.32 \
+%{nil}
+%global gendep_perl_DBM_Filter \
+Requires: perl(Carp) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(DBM_Filter) = 0.06 \
+Provides: perl(DBM_Filter::compress) = 0.03 \
+Provides: perl(DBM_Filter::encode) = 0.03 \
+Provides: perl(DBM_Filter::int32) = 0.03 \
+Provides: perl(DBM_Filter::null) = 0.03 \
+Provides: perl(DBM_Filter::utf8) = 0.03 \
+%{nil}
+%global gendep_perl_DB_File \
+Requires: perl(:VERSION) >= 5.8.3 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(File::Spec) \
+Requires: perl(Tie::Hash) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(DB_File) = 1.853 \
+Provides: perl(DB_File::BTREEINFO) \
+Provides: perl(DB_File::HASHINFO) \
+Provides: perl(DB_File::RECNOINFO) \
+%{nil}
+%global gendep_perl_DB_File_debuginfo \
+%{nil}
+%global gendep_perl_Data_Dumper \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(constant) \
+Provides: perl(Data::Dumper) = 2.174 \
+%{nil}
+%global gendep_perl_Data_Dumper_debuginfo \
+%{nil}
+%global gendep_perl_Devel_PPPort \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Devel::PPPort) = 3.57 \
+%{nil}
+%global gendep_perl_Devel_Peek \
+Requires: perl(Exporter) \
+Requires: perl(XSLoader) \
+Provides: perl(Devel::Peek) = 1.28 \
+%{nil}
+%global gendep_perl_Devel_Peek_debuginfo \
+%{nil}
+%global gendep_perl_Devel_SelfStubber \
+Requires: perl(File::Spec) \
+Requires: perl(SelfLoader) \
+Provides: perl(Devel::SelfStubber) = 1.06 \
+%{nil}
+%global gendep_perl_Digest \
+Requires: perl(Carp) \
+Requires: perl(Digest) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Digest) = 1.17 \
+Provides: perl(Digest::base) = 1.16 \
+Provides: perl(Digest::file) = 1.16 \
+%{nil}
+%global gendep_perl_Digest_MD5 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Digest::MD5) = 2.55 \
+%{nil}
+%global gendep_perl_Digest_MD5_debuginfo \
+%{nil}
+%global gendep_perl_Digest_SHA \
+Requires: perl(:VERSION) >= 5.3.0 \
+Requires: perl(Digest::SHA) \
+Requires: perl(Exporter) \
+Requires: perl(Fcntl) \
+Requires: perl(Getopt::Long) \
+Requires: perl(integer) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Digest::SHA) = 6.02 \
+%{nil}
+%global gendep_perl_Digest_SHA_debuginfo \
+%{nil}
+%global gendep_perl_DirHandle \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(Carp) \
+Requires: perl(Symbol) \
+Provides: perl(DirHandle) = 1.05 \
+%{nil}
+%global gendep_perl_Dumpvalue \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Dumpvalue) = 1.21 \
+%{nil}
+%global gendep_perl_DynaLoader \
+Requires: perl(Config) \
+Provides: perl(DynaLoader) = 1.47 \
+%{nil}
+%global gendep_perl_Encode \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(:VERSION) >= 5.8.1 \
+Requires: perl(Carp) \
+Requires: perl(Encode) \
+Requires: perl(Encode::Alias) \
+Requires: perl(Encode::CJKConstants) \
+Requires: perl(Encode::CN::HZ) \
+Requires: perl(Encode::Config) \
+Requires: perl(Encode::Encoding) \
+Requires: perl(Encode::Guess) \
+Requires: perl(Encode::JP::JIS7) \
+Requires: perl(Encode::KR::2022_KR) \
+Requires: perl(Encode::MIME::Header) \
+Requires: perl(Encode::MIME::Name) \
+Requires: perl(Encode::Unicode) \
+Requires: perl(Exporter) >= 5.57 \
+Requires: perl(File::Basename) \
+Requires: perl(Getopt::Long) \
+Requires: perl(Getopt::Std) \
+Requires: perl(MIME::Base64) \
+Requires: perl(Storable) \
+Requires: perl(XSLoader) \
+Requires: perl(bytes) \
+Requires: perl(constant) \
+Requires: perl(overload) \
+Requires: perl(parent) \
+Requires: perl(re) \
+Requires: perl(strict) \
+Requires: perl(utf8) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Encode) = 3.06 \
+Provides: perl(Encode::Alias) = 2.24 \
+Provides: perl(Encode::Byte) = 2.4 \
+Provides: perl(Encode::CJKConstants) = 2.2 \
+Provides: perl(Encode::CN) = 2.3 \
+Provides: perl(Encode::CN::HZ) = 2.10 \
+Provides: perl(Encode::Config) = 2.5 \
+Provides: perl(Encode::EBCDIC) = 2.2 \
+Provides: perl(Encode::Encoder) = 2.3 \
+Provides: perl(Encode::Encoding) = 2.8 \
+Provides: perl(Encode::GSM0338) = 2.7 \
+Provides: perl(Encode::Guess) = 2.8 \
+Provides: perl(Encode::Internal) \
+Provides: perl(Encode::JP) = 2.4 \
+Provides: perl(Encode::JP::H2Z) = 2.2 \
+Provides: perl(Encode::JP::JIS7) = 2.8 \
+Provides: perl(Encode::KR) = 2.3 \
+Provides: perl(Encode::KR::2022_KR) = 2.4 \
+Provides: perl(Encode::MIME::Header) = 2.28 \
+Provides: perl(Encode::MIME::Header::ISO_2022_JP) = 1.9 \
+Provides: perl(Encode::MIME::Name) = 1.3 \
+Provides: perl(Encode::Symbol) = 2.2 \
+Provides: perl(Encode::TW) = 2.3 \
+Provides: perl(Encode::UTF_EBCDIC) \
+Provides: perl(Encode::Unicode) = 2.18 \
+Provides: perl(Encode::Unicode::UTF7) = 2.10 \
+Provides: perl(Encode::XS) \
+Provides: perl(Encode::utf8) \
+%{nil}
+%global gendep_perl_Encode_debuginfo \
+%{nil}
+%global gendep_perl_Encode_devel \
+Requires: perl(Config) \
+Requires: perl(File::Find) \
+Requires: perl(Getopt::Std) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+%{nil}
+%global gendep_perl_English \
+Requires: perl(Exporter) \
+Provides: perl(English) = 1.11 \
+%{nil}
+%global gendep_perl_Env \
+Requires: perl(Config) \
+Requires: perl(Tie::Array) \
+Provides: perl(Env) = 1.04 \
+Provides: perl(Env::Array) \
+Provides: perl(Env::Array::VMS) \
+%{nil}
+%global gendep_perl_Errno \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Errno) = 1.30 \
+%{nil}
+%global gendep_perl_Exporter \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Exporter) = 5.74 \
+Provides: perl(Exporter::Heavy) \
+%{nil}
+%global gendep_perl_ExtUtils_CBuilder \
+Requires: perl(Config) \
+Requires: perl(Cwd) \
+Requires: perl(ExtUtils::CBuilder::Base) \
+Requires: perl(ExtUtils::CBuilder::Platform::Unix) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec) \
+Requires: perl(File::Spec::Functions) \
+Requires: perl(File::Temp) \
+Requires: perl(IO::File) \
+Requires: perl(IPC::Cmd) \
+Requires: perl(Perl::OSType) \
+Requires: perl(Text::ParseWords) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(ExtUtils::CBuilder) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Base) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::Unix) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::VMS) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::Windows) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::Windows::BCC) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::Windows::GCC) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::Windows::MSVC) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::aix) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::android) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::cygwin) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::darwin) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::dec_osf) = 0.280234 \
+Provides: perl(ExtUtils::CBuilder::Platform::linux) = 0.280206 \
+Provides: perl(ExtUtils::CBuilder::Platform::os2) = 0.280234 \
+%{nil}
+%global gendep_perl_ExtUtils_Command \
+Requires: perl(:VERSION) >= 5.5.30 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(ExtUtils::Command) = 7.44 \
+%{nil}
+%global gendep_perl_ExtUtils_Constant \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(ExtUtils::Constant::Base) \
+Requires: perl(ExtUtils::Constant::Utils) \
+Requires: perl(ExtUtils::Constant::XS) \
+Requires: perl(Text::Wrap) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(ExtUtils::Constant) = 0.25 \
+Provides: perl(ExtUtils::Constant::Base) = 0.06 \
+Provides: perl(ExtUtils::Constant::ProxySubs) = 0.09 \
+Provides: perl(ExtUtils::Constant::Utils) = 0.04 \
+Provides: perl(ExtUtils::Constant::XS) = 0.03 \
+%{nil}
+%global gendep_perl_ExtUtils_Embed \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(File::Spec) \
+Requires: perl(strict) \
+Provides: perl(ExtUtils::Embed) = 1.35 \
+%{nil}
+%global gendep_perl_ExtUtils_Install \
+Requires: perl(:VERSION) >= 5.5.30 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Cwd) \
+Requires: perl(Exporter) \
+Requires: perl(ExtUtils::MakeMaker) \
+Requires: perl(ExtUtils::Packlist) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Copy) \
+Requires: perl(File::Find) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(ExtUtils::Install) = 2.14 \
+Provides: perl(ExtUtils::Install::Warn) \
+Provides: perl(ExtUtils::Installed) = 2.14 \
+Provides: perl(ExtUtils::Packlist) = 2.14 \
+%{nil}
+%global gendep_perl_ExtUtils_MM_Utils \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(ExtUtils::MM::Utils) = 7.11 \
+%{nil}
+%global gendep_perl_ExtUtils_MakeMaker \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(:VERSION) >= 5.6.1 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Cwd) \
+Requires: perl(Encode) \
+Requires: perl(Encode::Alias) \
+Requires: perl(Exporter) \
+Requires: perl(ExtUtils::Installed) \
+Requires: perl(ExtUtils::Liblist) \
+Requires: perl(ExtUtils::Liblist::Kid) \
+Requires: perl(ExtUtils::MM) \
+Requires: perl(ExtUtils::MM_Any) \
+Requires: perl(ExtUtils::MM_Unix) \
+Requires: perl(ExtUtils::MM_Win32) \
+Requires: perl(ExtUtils::MY) \
+Requires: perl(ExtUtils::MakeMaker) \
+Requires: perl(ExtUtils::MakeMaker::Config) \
+Requires: perl(ExtUtils::MakeMaker::version) \
+Requires: perl(ExtUtils::Packlist) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec) \
+Requires: perl(IO::File) \
+Requires: perl(base) \
+Requires: perl(lib) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(ExtUtils::Command::MM) = 7.44 \
+Provides: perl(ExtUtils::Liblist) = 7.44 \
+Provides: perl(ExtUtils::Liblist::Kid) = 7.44 \
+Provides: perl(ExtUtils::MM) = 7.44 \
+Provides: perl(ExtUtils::MM_AIX) = 7.44 \
+Provides: perl(ExtUtils::MM_Any) = 7.44 \
+Provides: perl(ExtUtils::MM_BeOS) = 7.44 \
+Provides: perl(ExtUtils::MM_Cygwin) = 7.44 \
+Provides: perl(ExtUtils::MM_DOS) = 7.44 \
+Provides: perl(ExtUtils::MM_Darwin) = 7.44 \
+Provides: perl(ExtUtils::MM_MacOS) = 7.44 \
+Provides: perl(ExtUtils::MM_NW5) = 7.44 \
+Provides: perl(ExtUtils::MM_OS2) = 7.44 \
+Provides: perl(ExtUtils::MM_QNX) = 7.44 \
+Provides: perl(ExtUtils::MM_UWIN) = 7.44 \
+Provides: perl(ExtUtils::MM_Unix) = 7.44 \
+Provides: perl(ExtUtils::MM_VMS) = 7.44 \
+Provides: perl(ExtUtils::MM_VOS) = 7.44 \
+Provides: perl(ExtUtils::MM_Win32) = 7.44 \
+Provides: perl(ExtUtils::MM_Win95) = 7.44 \
+Provides: perl(ExtUtils::MY) = 7.44 \
+Provides: perl(ExtUtils::MakeMaker) = 7.44 \
+Provides: perl(ExtUtils::MakeMaker::Config) = 7.44 \
+Provides: perl(ExtUtils::MakeMaker::Locale) = 7.44 \
+Provides: perl(ExtUtils::MakeMaker::version) = 7.44 \
+Provides: perl(ExtUtils::Mkbootstrap) = 7.44 \
+Provides: perl(ExtUtils::Mksymlists) = 7.44 \
+Provides: perl(ExtUtils::testlib) = 7.44 \
+Provides: perl(MM) \
+Provides: perl(MY) \
+%{nil}
+%global gendep_perl_ExtUtils_Manifest \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Copy) \
+Requires: perl(File::Find) \
+Requires: perl(File::Spec) >= 0.8 \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(ExtUtils::Manifest) = 1.72 \
+%{nil}
+%global gendep_perl_ExtUtils_Miniperl \
+Requires: perl(Exporter) \
+Requires: perl(ExtUtils::Embed) >= 1.31 \
+Requires: perl(strict) \
+Provides: perl(ExtUtils::Miniperl) = 1.09 \
+%{nil}
+%global gendep_perl_ExtUtils_ParseXS \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(:VERSION) >= 5.6.1 \
+Requires: perl(Config) \
+Requires: perl(Cwd) \
+Requires: perl(Exporter) \
+Requires: perl(ExtUtils::ParseXS) \
+Requires: perl(ExtUtils::ParseXS::Constants) \
+Requires: perl(ExtUtils::ParseXS::Utilities) \
+Requires: perl(ExtUtils::Typemaps) \
+Requires: perl(ExtUtils::Typemaps::InputMap) \
+Requires: perl(ExtUtils::Typemaps::OutputMap) \
+Requires: perl(ExtUtils::Typemaps::Type) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Spec) \
+Requires: perl(Getopt::Long) \
+Requires: perl(Symbol) \
+Requires: perl(re) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(ExtUtils::ParseXS) = 3.40 \
+Provides: perl(ExtUtils::ParseXS::Constants) = 3.40 \
+Provides: perl(ExtUtils::ParseXS::CountLines) = 3.40 \
+Provides: perl(ExtUtils::ParseXS::Eval) = 3.40 \
+Provides: perl(ExtUtils::ParseXS::Utilities) = 3.40 \
+Provides: perl(ExtUtils::Typemaps) = 3.38 \
+Provides: perl(ExtUtils::Typemaps::Cmd) = 3.38 \
+Provides: perl(ExtUtils::Typemaps::InputMap) = 3.38 \
+Provides: perl(ExtUtils::Typemaps::OutputMap) = 3.38 \
+Provides: perl(ExtUtils::Typemaps::Type) = 3.38 \
+%{nil}
+%global gendep_perl_Fcntl \
+Requires: perl(Exporter) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Provides: perl(Fcntl) = 1.13 \
+%{nil}
+%global gendep_perl_Fcntl_debuginfo \
+%{nil}
+%global gendep_perl_File_Basename \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(File::Basename) = 2.85 \
+%{nil}
+%global gendep_perl_File_Compare \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(File::Compare) = 1.1006 \
+%{nil}
+%global gendep_perl_File_Copy \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(File::Spec) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(File::Copy) = 2.34 \
+%{nil}
+%global gendep_perl_File_DosGlob \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(File::DosGlob) = 1.12 \
+%{nil}
+%global gendep_perl_File_DosGlob_debuginfo \
+%{nil}
+%global gendep_perl_File_Fetch \
+Requires: perl(Carp) \
+Requires: perl(Cwd) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Copy) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec) \
+Requires: perl(File::Spec::Unix) \
+Requires: perl(File::Temp) \
+Requires: perl(FileHandle) \
+Requires: perl(IPC::Cmd) \
+Requires: perl(Locale::Maketext::Simple) \
+Requires: perl(Module::Load::Conditional) \
+Requires: perl(Params::Check) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(File::Fetch) = 0.56 \
+%{nil}
+%global gendep_perl_File_Find \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Cwd) \
+Requires: perl(Exporter) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Spec) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Requires: perl(warnings::register) \
+Provides: perl(File::Find) = 1.37 \
+%{nil}
+%global gendep_perl_File_Path \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(Cwd) \
+Requires: perl(Exporter) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Spec) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(File::Path) = 2.16 \
+%{nil}
+%global gendep_perl_File_Temp \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Cwd) \
+Requires: perl(Errno) \
+Requires: perl(Exporter) >= 5.57 \
+Requires: perl(Fcntl) >= 1.03 \
+Requires: perl(File::Path) >= 2.06 \
+Requires: perl(File::Spec) >= 0.8 \
+Requires: perl(IO::Handle) \
+Requires: perl(IO::Seekable) \
+Requires: perl(Scalar::Util) \
+Requires: perl(Symbol) \
+Requires: perl(constant) \
+Requires: perl(overload) \
+Requires: perl(parent) >= 0.221 \
+Requires: perl(strict) \
+Provides: perl(File::Temp) = 0.2309 \
+%{nil}
+%global gendep_perl_File_stat \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Class::Struct) \
+Requires: perl(Exporter) \
+Requires: perl(Fcntl) \
+Requires: perl(constant) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Requires: perl(warnings::register) \
+Provides: perl(File::stat) = 1.09 \
+%{nil}
+%global gendep_perl_FileCache \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(parent) \
+Requires: perl(strict) \
+Provides: perl(FileCache) = 1.10 \
+%{nil}
+%global gendep_perl_FileHandle \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(IO::File) \
+Requires: perl(strict) \
+Provides: perl(FileHandle) = 2.03 \
+%{nil}
+%global gendep_perl_Filter \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Exporter) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Filter::Util::Call) = 1.59 \
+%{nil}
+%global gendep_perl_Filter_Simple \
+Requires: perl(Carp) \
+Requires: perl(Filter::Util::Call) \
+Requires: perl(Text::Balanced) \
+Provides: perl(Filter::Simple) = 0.96 \
+%{nil}
+%global gendep_perl_Filter_debuginfo \
+%{nil}
+%global gendep_perl_FindBin \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(Carp) \
+Requires: perl(Cwd) \
+Requires: perl(Exporter) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Spec) \
+Provides: perl(FindBin) = 1.51 \
+%{nil}
+%global gendep_perl_GDBM_File \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(Tie::Hash) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(GDBM_File) = 1.18 \
+%{nil}
+%global gendep_perl_GDBM_File_debuginfo \
+%{nil}
+%global gendep_perl_Getopt_Long \
+Requires: perl(:VERSION) >= 5.4.0 \
+Requires: perl(Exporter) \
+Requires: perl(constant) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Getopt::Long) = 2.51 \
+Provides: perl(Getopt::Long::CallBack) \
+Provides: perl(Getopt::Long::Parser) \
+%{nil}
+%global gendep_perl_Getopt_Std \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(Exporter) \
+Provides: perl(Getopt::Std) = 1.12 \
+%{nil}
+%global gendep_perl_HTTP_Tiny \
+Requires: perl(Errno) \
+Requires: perl(IO::Socket) \
+Requires: perl(Socket) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(HTTP::Tiny) = 0.076 \
+%{nil}
+%global gendep_perl_Hash_Util \
+Requires: perl(:VERSION) >= 5.7.3 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(Scalar::Util) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Requires: perl(warnings::register) \
+Provides: perl(Hash::Util) = 0.23 \
+%{nil}
+%global gendep_perl_Hash_Util_FieldHash \
+Requires: perl(:VERSION) >= 5.9.4 \
+Requires: perl(Exporter) \
+Requires: perl(Scalar::Util) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Hash::Util::FieldHash) = 1.20 \
+%{nil}
+%global gendep_perl_Hash_Util_FieldHash_debuginfo \
+%{nil}
+%global gendep_perl_Hash_Util_debuginfo \
+%{nil}
+%global gendep_perl_I18N_Collate \
+Requires: perl(Exporter) \
+Requires: perl(POSIX) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(warnings::register) \
+Provides: perl(I18N::Collate) = 1.02 \
+%{nil}
+%global gendep_perl_I18N_LangTags \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(Exporter) \
+Requires: perl(I18N::LangTags) \
+Requires: perl(strict) \
+Provides: perl(I18N::LangTags) = 0.44 \
+Provides: perl(I18N::LangTags::Detect) = 1.08 \
+Provides: perl(I18N::LangTags::List) = 0.40 \
+%{nil}
+%global gendep_perl_I18N_Langinfo \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(I18N::Langinfo) = 0.19 \
+%{nil}
+%global gendep_perl_I18N_Langinfo_debuginfo \
+%{nil}
+%global gendep_perl_IO \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(Carp) \
+Requires: perl(Errno) \
+Requires: perl(Exporter) \
+Requires: perl(Fcntl) \
+Requires: perl(File::Spec) \
+Requires: perl(File::stat) \
+Requires: perl(IO) \
+Requires: perl(IO::File) \
+Requires: perl(IO::Handle) \
+Requires: perl(IO::Seekable) \
+Requires: perl(IO::Socket) \
+Requires: perl(IO::Socket::INET) \
+Requires: perl(IO::Socket::UNIX) \
+Requires: perl(SelectSaver) \
+Requires: perl(Socket) >= 1.3 \
+Requires: perl(Symbol) \
+Requires: perl(Tie::Hash) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Requires: perl(warnings::register) \
+Provides: perl(IO) = 1.43 \
+Provides: perl(IO::Dir) = 1.41 \
+Provides: perl(IO::File) = 1.41 \
+Provides: perl(IO::Handle) = 1.42 \
+Provides: perl(IO::Pipe) = 1.41 \
+Provides: perl(IO::Pipe::End) \
+Provides: perl(IO::Poll) = 1.41 \
+Provides: perl(IO::Seekable) = 1.41 \
+Provides: perl(IO::Select) = 1.42 \
+Provides: perl(IO::Socket) = 1.43 \
+Provides: perl(IO::Socket::INET) = 1.41 \
+Provides: perl(IO::Socket::UNIX) = 1.41 \
+%{nil}
+%global gendep_perl_IO_Compress \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Compress::Raw::Bzip2) >= 2.093 \
+Requires: perl(Compress::Raw::Zlib) >= 2.093 \
+Requires: perl(Config) \
+Requires: perl(Encode) \
+Requires: perl(Exporter) \
+Requires: perl(Fcntl) \
+Requires: perl(File::GlobMapper) \
+Requires: perl(File::Spec) \
+Requires: perl(Getopt::Long) \
+Requires: perl(IO::Compress::Adapter::Bzip2) >= 2.093 \
+Requires: perl(IO::Compress::Adapter::Deflate) >= 2.093 \
+Requires: perl(IO::Compress::Adapter::Identity) >= 2.093 \
+Requires: perl(IO::Compress::Base) >= 2.093 \
+Requires: perl(IO::Compress::Base::Common) >= 2.093 \
+Requires: perl(IO::Compress::Gzip) >= 2.093 \
+Requires: perl(IO::Compress::Gzip::Constants) >= 2.093 \
+Requires: perl(IO::Compress::RawDeflate) >= 2.093 \
+Requires: perl(IO::Compress::Zip) \
+Requires: perl(IO::Compress::Zip::Constants) >= 2.093 \
+Requires: perl(IO::Compress::Zlib::Constants) >= 2.093 \
+Requires: perl(IO::Compress::Zlib::Extra) >= 2.093 \
+Requires: perl(IO::File) \
+Requires: perl(IO::Handle) \
+Requires: perl(IO::Uncompress::Adapter::Bunzip2) >= 2.093 \
+Requires: perl(IO::Uncompress::Adapter::Identity) >= 2.093 \
+Requires: perl(IO::Uncompress::Adapter::Inflate) >= 2.093 \
+Requires: perl(IO::Uncompress::Base) >= 2.093 \
+Requires: perl(IO::Uncompress::Gunzip) >= 2.093 \
+Requires: perl(IO::Uncompress::Inflate) >= 2.093 \
+Requires: perl(IO::Uncompress::RawInflate) >= 2.093 \
+Requires: perl(IO::Uncompress::Unzip) >= 2.093 \
+Requires: perl(List::Util) \
+Requires: perl(POSIX) \
+Requires: perl(Scalar::Util) \
+Requires: perl(Symbol) \
+Requires: perl(bytes) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(utf8) \
+Requires: perl(warnings) \
+Provides: perl(Compress::Zlib) = 2.093 \
+Provides: perl(File::GlobMapper) = 1.001 \
+Provides: perl(IO::Compress::Adapter::Bzip2) = 2.093 \
+Provides: perl(IO::Compress::Adapter::Deflate) = 2.093 \
+Provides: perl(IO::Compress::Adapter::Identity) = 2.093 \
+Provides: perl(IO::Compress::Base) = 2.093 \
+Provides: perl(IO::Compress::Base::Common) = 2.093 \
+Provides: perl(IO::Compress::Bzip2) = 2.093 \
+Provides: perl(IO::Compress::Deflate) = 2.093 \
+Provides: perl(IO::Compress::Gzip) = 2.093 \
+Provides: perl(IO::Compress::Gzip::Constants) = 2.093 \
+Provides: perl(IO::Compress::RawDeflate) = 2.093 \
+Provides: perl(IO::Compress::Zip) = 2.093 \
+Provides: perl(IO::Compress::Zip::Constants) = 2.093 \
+Provides: perl(IO::Compress::Zlib::Constants) = 2.093 \
+Provides: perl(IO::Compress::Zlib::Extra) = 2.093 \
+Provides: perl(IO::Uncompress::Adapter::Bunzip2) = 2.093 \
+Provides: perl(IO::Uncompress::Adapter::Identity) = 2.093 \
+Provides: perl(IO::Uncompress::Adapter::Inflate) = 2.093 \
+Provides: perl(IO::Uncompress::AnyInflate) = 2.093 \
+Provides: perl(IO::Uncompress::AnyUncompress) = 2.093 \
+Provides: perl(IO::Uncompress::Base) = 2.093 \
+Provides: perl(IO::Uncompress::Bunzip2) \
+Provides: perl(IO::Uncompress::Bunzip2) = 2.093 \
+Provides: perl(IO::Uncompress::Gunzip) = 2.093 \
+Provides: perl(IO::Uncompress::Inflate) = 2.093 \
+Provides: perl(IO::Uncompress::RawInflate) = 2.093 \
+Provides: perl(IO::Uncompress::Unzip) = 2.093 \
+Provides: perl(U64) \
+Provides: perl(Zlib::OldDeflate) \
+Provides: perl(Zlib::OldInflate) \
+%{nil}
+%global gendep_perl_IO_Socket_IP \
+Requires: perl(Carp) \
+Requires: perl(Errno) \
+Requires: perl(IO::Socket) \
+Requires: perl(POSIX) \
+Requires: perl(Socket) >= 1.97 \
+Requires: perl(base) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(IO::Socket::IP) = 0.39 \
+%{nil}
+%global gendep_perl_IO_Zlib \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Fcntl) \
+Requires: perl(Symbol) \
+Requires: perl(Tie::Handle) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(IO::Zlib) = 1.10 \
+%{nil}
+%global gendep_perl_IO_debuginfo \
+%{nil}
+%global gendep_perl_IPC_Cmd \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(File::Spec) \
+Requires: perl(Locale::Maketext::Simple) \
+Requires: perl(Module::Load::Conditional) \
+Requires: perl(Params::Check) \
+Requires: perl(Symbol) \
+Requires: perl(Text::ParseWords) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(IPC::Cmd) = 1.04 \
+%{nil}
+%global gendep_perl_IPC_Open3 \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(IPC::Open3) \
+Requires: perl(Symbol) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Provides: perl(IPC::Open2) = 1.05 \
+Provides: perl(IPC::Open3) = 1.21 \
+%{nil}
+%global gendep_perl_IPC_SysV \
+Requires: perl(Carp) \
+Requires: perl(Class::Struct) \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(IPC::SysV) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(IPC::Msg) = 2.07 \
+Provides: perl(IPC::Msg::stat) \
+Provides: perl(IPC::Semaphore) = 2.07 \
+Provides: perl(IPC::Semaphore::stat) \
+Provides: perl(IPC::SharedMem) = 2.07 \
+Provides: perl(IPC::SharedMem::stat) \
+Provides: perl(IPC::SysV) = 2.07 \
+%{nil}
+%global gendep_perl_IPC_SysV_debuginfo \
+%{nil}
+%global gendep_perl_JSON_PP \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(Carp) \
+Requires: perl(Encode) \
+Requires: perl(Exporter) \
+Requires: perl(Getopt::Long) \
+Requires: perl(JSON::PP) \
+Requires: perl(JSON::PP::Boolean) \
+Requires: perl(bytes) \
+Requires: perl(constant) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Provides: perl(JSON::PP) = 4.04 \
+Provides: perl(JSON::PP::Boolean) = 4.04 \
+Provides: perl(JSON::PP::IncrParser) = 1.01 \
+%{nil}
+%global gendep_perl_Locale_Maketext \
+Requires: perl(Carp) \
+Requires: perl(I18N::LangTags) \
+Requires: perl(I18N::LangTags::Detect) \
+Requires: perl(Locale::Maketext) \
+Requires: perl(integer) \
+Requires: perl(strict) \
+Provides: perl(Locale::Maketext) = 1.29 \
+Provides: perl(Locale::Maketext::Guts) = 1.20 \
+Provides: perl(Locale::Maketext::GutsLoader) = 1.20 \
+%{nil}
+%global gendep_perl_Locale_Maketext_Simple \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(Locale::Maketext) \
+Requires: perl(base) \
+Requires: perl(strict) \
+Provides: perl(Locale::Maketext::Simple) = 0.21 \
+%{nil}
+%global gendep_perl_MIME_Base64 \
+Requires: perl(Exporter) \
+Requires: perl(MIME::Base64) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(MIME::Base64) = 3.15 \
+Provides: perl(MIME::QuotedPrint) = 3.13 \
+%{nil}
+%global gendep_perl_MIME_Base64_debuginfo \
+%{nil}
+%global gendep_perl_Math_BigInt \
+Requires: perl(:VERSION) >= 5.6.1 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(Math::BigInt) \
+Requires: perl(Math::BigInt::Lib) \
+Requires: perl(constant) \
+Requires: perl(integer) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Math::BigFloat) = 1.999818 \
+Provides: perl(Math::BigInt) = 1.999818 \
+Provides: perl(Math::BigInt::Calc) = 1.999818 \
+Provides: perl(Math::BigInt::Lib) = 1.999818 \
+%{nil}
+%global gendep_perl_Math_BigInt_FastCalc \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Math::BigInt::Calc) >= 1.999801 \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Math::BigInt::FastCalc) = 0.5009 \
+%{nil}
+%global gendep_perl_Math_BigInt_FastCalc_debuginfo \
+%{nil}
+%global gendep_perl_Math_BigRat \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Math::BigFloat) >= 1.999718 \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Math::BigRat) = 0.2614 \
+%{nil}
+%global gendep_perl_Math_Complex \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(Math::Complex) >= 1.59 \
+Requires: perl(Scalar::Util) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Math::Complex) = 1.59 \
+Provides: perl(Math::Trig) = 1.23 \
+%{nil}
+%global gendep_perl_Memoize \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(NDBM_File) \
+Requires: perl(SDBM_File) \
+Requires: perl(Storable) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Memoize) = 1.03 \
+Provides: perl(Memoize::AnyDBM_File) = 1.03 \
+Provides: perl(Memoize::Expire) = 1.03 \
+Provides: perl(Memoize::ExpireFile) = 1.03 \
+Provides: perl(Memoize::ExpireTest) = 1.03 \
+Provides: perl(Memoize::NDBM_File) = 1.03 \
+Provides: perl(Memoize::SDBM_File) = 1.03 \
+Provides: perl(Memoize::Storable) = 1.03 \
+%{nil}
+%global gendep_perl_Module_CoreList \
+Requires: perl(Module::CoreList) \
+Requires: perl(strict) \
+Requires: perl(version) \
+Requires: perl(warnings) \
+Provides: perl(Module::CoreList) = 5.20200620 \
+Provides: perl(Module::CoreList::Utils) = 5.20200620 \
+%{nil}
+%global gendep_perl_Module_CoreList_tools \
+Requires: perl(Getopt::Long) \
+Requires: perl(List::Util) \
+Requires: perl(Module::CoreList) \
+Requires: perl(Pod::Usage) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+%{nil}
+%global gendep_perl_Module_Load \
+Requires: perl(File::Spec) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Module::Load) = 0.34 \
+%{nil}
+%global gendep_perl_Module_Load_Conditional \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(File::Spec) \
+Requires: perl(FileHandle) \
+Requires: perl(Locale::Maketext::Simple) \
+Requires: perl(Module::Load) \
+Requires: perl(Module::Metadata) \
+Requires: perl(Params::Check) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(version) \
+Provides: perl(Module::Load::Conditional) = 0.70 \
+%{nil}
+%global gendep_perl_Module_Loaded \
+Requires: perl(Carp) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Module::Loaded) = 0.08 \
+%{nil}
+%global gendep_perl_Module_Metadata \
+Requires: perl(Carp) \
+Requires: perl(File::Find) \
+Requires: perl(File::Spec) \
+Requires: perl(strict) \
+Requires: perl(version) >= 0.87 \
+Requires: perl(warnings) \
+Provides: perl(Module::Metadata) = 1.000037 \
+%{nil}
+%global gendep_perl_NDBM_File \
+Requires: perl(Tie::Hash) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(NDBM_File) = 1.15 \
+%{nil}
+%global gendep_perl_NDBM_File_debuginfo \
+%{nil}
+%global gendep_perl_NEXT \
+Requires: perl(Carp) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(EVERY::LAST) \
+Provides: perl(NEXT) = 0.67 \
+Provides: perl(NEXT::ACTUAL) \
+Provides: perl(NEXT::ACTUAL::DISTINCT) \
+Provides: perl(NEXT::ACTUAL::UNSEEN) \
+Provides: perl(NEXT::DISTINCT) \
+Provides: perl(NEXT::DISTINCT::ACTUAL) \
+Provides: perl(NEXT::UNSEEN) \
+Provides: perl(NEXT::UNSEEN::ACTUAL) \
+%{nil}
+%global gendep_perl_Net \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Class::Struct) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Net::hostent) = 1.02 \
+Provides: perl(Net::netent) = 1.01 \
+Provides: perl(Net::protoent) = 1.01 \
+Provides: perl(Net::servent) = 1.02 \
+%{nil}
+%global gendep_perl_Net_Ping \
+Requires: perl(:VERSION) >= 5.2.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(Fcntl) \
+Requires: perl(FileHandle) \
+Requires: perl(POSIX) \
+Requires: perl(Socket) \
+Requires: perl(Time::HiRes) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Provides: perl(Net::Ping) = 2.72 \
+%{nil}
+%global gendep_perl_ODBM_File \
+Requires: perl(Tie::Hash) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(ODBM_File) = 1.16 \
+%{nil}
+%global gendep_perl_ODBM_File_debuginfo \
+%{nil}
+%global gendep_perl_Opcode \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(Opcode) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(subs) \
+Provides: perl(Opcode) = 1.47 \
+Provides: perl(ops) = 1.02 \
+%{nil}
+%global gendep_perl_Opcode_debuginfo \
+%{nil}
+%global gendep_perl_POSIX \
+Requires: perl(Exporter) \
+Requires: perl(Fcntl) \
+Requires: perl(Tie::Hash) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(POSIX) = 1.94 \
+Provides: perl(POSIX::SigAction) \
+Provides: perl(POSIX::SigRt) \
+Provides: perl(POSIX::SigSet) \
+%{nil}
+%global gendep_perl_POSIX_debuginfo \
+%{nil}
+%global gendep_perl_Params_Check \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(Locale::Maketext::Simple) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Params::Check) = 0.38 \
+%{nil}
+%global gendep_perl_PathTools \
+Requires: perl(Cwd) \
+Requires: perl(Exporter) \
+Requires: perl(File::Spec) \
+Requires: perl(File::Spec::Unix) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Provides: perl(Cwd) = 3.78 \
+Provides: perl(File::Spec) = 3.78 \
+Provides: perl(File::Spec::AmigaOS) = 3.78 \
+Provides: perl(File::Spec::Cygwin) = 3.78 \
+Provides: perl(File::Spec::Epoc) = 3.78 \
+Provides: perl(File::Spec::Functions) = 3.78 \
+Provides: perl(File::Spec::Mac) = 3.78 \
+Provides: perl(File::Spec::OS2) = 3.78 \
+Provides: perl(File::Spec::Unix) = 3.78 \
+Provides: perl(File::Spec::Win32) = 3.79 \
+%{nil}
+%global gendep_perl_PathTools_debuginfo \
+%{nil}
+%global gendep_perl_Perl_OSType \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Perl::OSType) = 1.010 \
+%{nil}
+%global gendep_perl_PerlIO_via_QuotedPrint \
+Requires: perl(MIME::QuotedPrint) \
+Requires: perl(strict) \
+Provides: perl(PerlIO::via::QuotedPrint) = 0.08 \
+%{nil}
+%global gendep_perl_Pod_Checker \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(Getopt::Long) \
+Requires: perl(Pod::Checker) \
+Requires: perl(Pod::Simple::Methody) \
+Requires: perl(Pod::Usage) \
+Requires: perl(base) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Pod::Checker) = 1.73 \
+%{nil}
+%global gendep_perl_Pod_Escapes \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Pod::Escapes) = 1.07 \
+%{nil}
+%global gendep_perl_Pod_Functions \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Pod::Functions) = 1.13 \
+%{nil}
+%global gendep_perl_Pod_Html \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Cwd) \
+Requires: perl(Exporter) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Spec) \
+Requires: perl(File::Spec::Unix) \
+Requires: perl(Getopt::Long) \
+Requires: perl(Pod::Html) \
+Requires: perl(Pod::Simple::Search) \
+Requires: perl(Pod::Simple::SimpleTree) \
+Requires: perl(Pod::Simple::XHTML) \
+Requires: perl(locale) \
+Requires: perl(parent) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Pod::Html) = 1.25 \
+Provides: perl(Pod::Simple::XHTML::LocalPodLinks) \
+%{nil}
+%global gendep_perl_Pod_Perldoc \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Encode) \
+Requires: perl(Fcntl) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Spec::Functions) \
+Requires: perl(IO::Select) \
+Requires: perl(Pod::Man) >= 2.18 \
+Requires: perl(Pod::Perldoc) \
+Requires: perl(Pod::Perldoc::BaseTo) \
+Requires: perl(Pod::Perldoc::GetOptsOO) \
+Requires: perl(Pod::Simple::RTF) \
+Requires: perl(Pod::Simple::XMLOutStream) \
+Requires: perl(Pod::Text) \
+Requires: perl(Pod::Text::Color) \
+Requires: perl(Pod::Text::Termcap) \
+Requires: perl(parent) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Pod::Perldoc) = 3.2801 \
+Provides: perl(Pod::Perldoc::BaseTo) = 3.28 \
+Provides: perl(Pod::Perldoc::GetOptsOO) = 3.28 \
+Provides: perl(Pod::Perldoc::ToANSI) = 3.28 \
+Provides: perl(Pod::Perldoc::ToChecker) = 3.28 \
+Provides: perl(Pod::Perldoc::ToMan) = 3.28 \
+Provides: perl(Pod::Perldoc::ToNroff) = 3.28 \
+Provides: perl(Pod::Perldoc::ToPod) = 3.28 \
+Provides: perl(Pod::Perldoc::ToRtf) = 3.28 \
+Provides: perl(Pod::Perldoc::ToTerm) = 3.28 \
+Provides: perl(Pod::Perldoc::ToText) = 3.28 \
+Provides: perl(Pod::Perldoc::ToTk) = 3.28 \
+Provides: perl(Pod::Perldoc::ToXml) = 3.28 \
+%{nil}
+%global gendep_perl_Pod_Simple \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Cwd) \
+Requires: perl(Encode) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Spec) \
+Requires: perl(Getopt::Long) \
+Requires: perl(Pod::Escapes) >= 1.04 \
+Requires: perl(Pod::Simple) \
+Requires: perl(Pod::Simple::BlackBox) \
+Requires: perl(Pod::Simple::HTML) \
+Requires: perl(Pod::Simple::LinkSection) \
+Requires: perl(Pod::Simple::Methody) \
+Requires: perl(Pod::Simple::PullParser) \
+Requires: perl(Pod::Simple::PullParserEndToken) \
+Requires: perl(Pod::Simple::PullParserStartToken) \
+Requires: perl(Pod::Simple::PullParserTextToken) \
+Requires: perl(Pod::Simple::PullParserToken) \
+Requires: perl(Pod::Simple::Search) \
+Requires: perl(Symbol) \
+Requires: perl(Text::Wrap) >= 98.112902 \
+Requires: perl(if) \
+Requires: perl(integer) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Pod::Simple) = 3.40 \
+Provides: perl(Pod::Simple::BlackBox) = 3.40 \
+Provides: perl(Pod::Simple::Checker) = 3.40 \
+Provides: perl(Pod::Simple::Debug) = 3.40 \
+Provides: perl(Pod::Simple::DumpAsText) = 3.40 \
+Provides: perl(Pod::Simple::DumpAsXML) = 3.40 \
+Provides: perl(Pod::Simple::HTML) = 3.40 \
+Provides: perl(Pod::Simple::HTMLBatch) = 3.40 \
+Provides: perl(Pod::Simple::HTMLLegacy) = 5.01 \
+Provides: perl(Pod::Simple::JustPod) \
+Provides: perl(Pod::Simple::LinkSection) = 3.40 \
+Provides: perl(Pod::Simple::Methody) = 3.40 \
+Provides: perl(Pod::Simple::Progress) = 3.40 \
+Provides: perl(Pod::Simple::PullParser) = 3.40 \
+Provides: perl(Pod::Simple::PullParserEndToken) = 3.40 \
+Provides: perl(Pod::Simple::PullParserStartToken) = 3.40 \
+Provides: perl(Pod::Simple::PullParserTextToken) = 3.40 \
+Provides: perl(Pod::Simple::PullParserToken) = 3.40 \
+Provides: perl(Pod::Simple::RTF) = 3.40 \
+Provides: perl(Pod::Simple::Search) = 3.40 \
+Provides: perl(Pod::Simple::SimpleTree) = 3.40 \
+Provides: perl(Pod::Simple::Text) = 3.40 \
+Provides: perl(Pod::Simple::TextContent) = 3.40 \
+Provides: perl(Pod::Simple::TiedOutFH) = 3.40 \
+Provides: perl(Pod::Simple::Transcode) = 3.40 \
+Provides: perl(Pod::Simple::TranscodeDumb) = 3.40 \
+Provides: perl(Pod::Simple::TranscodeSmart) = 3.40 \
+Provides: perl(Pod::Simple::XHTML) = 3.40 \
+Provides: perl(Pod::Simple::XMLOutStream) = 3.40 \
+%{nil}
+%global gendep_perl_Pod_Usage \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(File::Spec) \
+Requires: perl(Getopt::Long) \
+Requires: perl(Pod::Usage) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Pod::Usage) = 1.69 \
+%{nil}
+%global gendep_perl_Safe \
+Requires: perl(:VERSION) >= 5.3.0 \
+Requires: perl(B) \
+Requires: perl(Carp) \
+Requires: perl(Opcode) >= 1.01 \
+Requires: perl(Scalar::Util) \
+Requires: perl(strict) \
+Requires: perl(utf8) \
+Provides: perl(Safe) = 2.41 \
+%{nil}
+%global gendep_perl_Scalar_List_Utils \
+Requires: perl(Exporter) \
+Requires: perl(List::Util) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(List::Util) = 1.55 \
+Provides: perl(List::Util::XS) = 1.55 \
+Provides: perl(Scalar::Util) = 1.55 \
+Provides: perl(Sub::Util) = 1.55 \
+%{nil}
+%global gendep_perl_Scalar_List_Utils_debuginfo \
+%{nil}
+%global gendep_perl_Search_Dict \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Search::Dict) = 1.07 \
+%{nil}
+%global gendep_perl_SelectSaver \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(Carp) \
+Requires: perl(Symbol) \
+Provides: perl(SelectSaver) = 1.02 \
+%{nil}
+%global gendep_perl_SelfLoader \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(Exporter) \
+Requires: perl(IO::Handle) \
+Requires: perl(strict) \
+Provides: perl(SelfLoader) = 1.26 \
+%{nil}
+%global gendep_perl_Socket \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings::register) \
+Provides: perl(Socket) = 2.029 \
+%{nil}
+%global gendep_perl_Socket_debuginfo \
+%{nil}
+%global gendep_perl_Storable \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Provides: perl(Storable) = 3.21 \
+%{nil}
+%global gendep_perl_Storable_debuginfo \
+%{nil}
+%global gendep_perl_Symbol \
+Requires: perl(Exporter) \
+Provides: perl(Symbol) = 1.08 \
+%{nil}
+%global gendep_perl_Sys_Hostname \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Sys::Hostname) = 1.23 \
+%{nil}
+%global gendep_perl_Sys_Hostname_debuginfo \
+%{nil}
+%global gendep_perl_Sys_Syslog \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(File::Basename) \
+Requires: perl(POSIX) \
+Requires: perl(Socket) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Requires: perl(warnings::register) \
+Provides: perl(Sys::Syslog) = 0.36 \
+%{nil}
+%global gendep_perl_Sys_Syslog_debuginfo \
+%{nil}
+%global gendep_perl_Term_ANSIColor \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Term::ANSIColor) = 5.01 \
+%{nil}
+%global gendep_perl_Term_Cap \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Term::Cap) = 1.17 \
+%{nil}
+%global gendep_perl_Term_Complete \
+Requires: perl(:VERSION) >= 5.0.0 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Term::Complete) = 1.403 \
+%{nil}
+%global gendep_perl_Term_ReadLine \
+Requires: perl(strict) \
+Provides: perl(Term::ReadLine) = 1.17 \
+Provides: perl(Term::ReadLine::Stub) \
+Provides: perl(Term::ReadLine::TermCap) \
+Provides: perl(Term::ReadLine::Tk) \
+%{nil}
+%global gendep_perl_Test \
+Requires: perl(:VERSION) >= 5.4.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Test) = 1.31 \
+%{nil}
+%global gendep_perl_Test_Harness \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(App::Prove) \
+Requires: perl(App::Prove::State) \
+Requires: perl(App::Prove::State::Result) \
+Requires: perl(App::Prove::State::Result::Test) \
+Requires: perl(Benchmark) \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Find) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec) \
+Requires: perl(Getopt::Long) \
+Requires: perl(IO::Handle) \
+Requires: perl(IO::Select) \
+Requires: perl(POSIX) \
+Requires: perl(TAP::Base) \
+Requires: perl(TAP::Formatter::Base) \
+Requires: perl(TAP::Formatter::Console::Session) \
+Requires: perl(TAP::Formatter::File::Session) \
+Requires: perl(TAP::Formatter::Session) \
+Requires: perl(TAP::Harness) \
+Requires: perl(TAP::Harness::Env) \
+Requires: perl(TAP::Object) \
+Requires: perl(TAP::Parser::Aggregator) \
+Requires: perl(TAP::Parser::Grammar) \
+Requires: perl(TAP::Parser::Iterator) \
+Requires: perl(TAP::Parser::Iterator::Array) \
+Requires: perl(TAP::Parser::Iterator::Process) \
+Requires: perl(TAP::Parser::Iterator::Stream) \
+Requires: perl(TAP::Parser::IteratorFactory) \
+Requires: perl(TAP::Parser::Result) \
+Requires: perl(TAP::Parser::Result::Bailout) \
+Requires: perl(TAP::Parser::Result::Comment) \
+Requires: perl(TAP::Parser::Result::Plan) \
+Requires: perl(TAP::Parser::Result::Pragma) \
+Requires: perl(TAP::Parser::Result::Test) \
+Requires: perl(TAP::Parser::Result::Unknown) \
+Requires: perl(TAP::Parser::Result::Version) \
+Requires: perl(TAP::Parser::Result::YAML) \
+Requires: perl(TAP::Parser::ResultFactory) \
+Requires: perl(TAP::Parser::Scheduler::Job) \
+Requires: perl(TAP::Parser::Scheduler::Spinner) \
+Requires: perl(TAP::Parser::Source) \
+Requires: perl(TAP::Parser::SourceHandler) \
+Requires: perl(TAP::Parser::SourceHandler::Executable) \
+Requires: perl(TAP::Parser::SourceHandler::File) \
+Requires: perl(TAP::Parser::SourceHandler::Handle) \
+Requires: perl(TAP::Parser::SourceHandler::Perl) \
+Requires: perl(TAP::Parser::SourceHandler::RawTAP) \
+Requires: perl(TAP::Parser::YAMLish::Reader) \
+Requires: perl(TAP::Parser::YAMLish::Writer) \
+Requires: perl(Text::ParseWords) \
+Requires: perl(base) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(App::Prove) = 3.42 \
+Provides: perl(App::Prove::State) = 3.42 \
+Provides: perl(App::Prove::State::Result) = 3.42 \
+Provides: perl(App::Prove::State::Result::Test) = 3.42 \
+Provides: perl(TAP::Base) = 3.42 \
+Provides: perl(TAP::Formatter::Base) = 3.42 \
+Provides: perl(TAP::Formatter::Color) = 3.42 \
+Provides: perl(TAP::Formatter::Console) = 3.42 \
+Provides: perl(TAP::Formatter::Console::ParallelSession) = 3.42 \
+Provides: perl(TAP::Formatter::Console::Session) = 3.42 \
+Provides: perl(TAP::Formatter::File) = 3.42 \
+Provides: perl(TAP::Formatter::File::Session) = 3.42 \
+Provides: perl(TAP::Formatter::Session) = 3.42 \
+Provides: perl(TAP::Harness) = 3.42 \
+Provides: perl(TAP::Harness::Env) = 3.42 \
+Provides: perl(TAP::Object) = 3.42 \
+Provides: perl(TAP::Parser) = 3.42 \
+Provides: perl(TAP::Parser::Aggregator) = 3.42 \
+Provides: perl(TAP::Parser::Grammar) = 3.42 \
+Provides: perl(TAP::Parser::Iterator) = 3.42 \
+Provides: perl(TAP::Parser::Iterator::Array) = 3.42 \
+Provides: perl(TAP::Parser::Iterator::Process) = 3.42 \
+Provides: perl(TAP::Parser::Iterator::Stream) = 3.42 \
+Provides: perl(TAP::Parser::IteratorFactory) = 3.42 \
+Provides: perl(TAP::Parser::Multiplexer) = 3.42 \
+Provides: perl(TAP::Parser::Result) = 3.42 \
+Provides: perl(TAP::Parser::Result::Bailout) = 3.42 \
+Provides: perl(TAP::Parser::Result::Comment) = 3.42 \
+Provides: perl(TAP::Parser::Result::Plan) = 3.42 \
+Provides: perl(TAP::Parser::Result::Pragma) = 3.42 \
+Provides: perl(TAP::Parser::Result::Test) = 3.42 \
+Provides: perl(TAP::Parser::Result::Unknown) = 3.42 \
+Provides: perl(TAP::Parser::Result::Version) = 3.42 \
+Provides: perl(TAP::Parser::Result::YAML) = 3.42 \
+Provides: perl(TAP::Parser::ResultFactory) = 3.42 \
+Provides: perl(TAP::Parser::Scheduler) = 3.42 \
+Provides: perl(TAP::Parser::Scheduler::Job) = 3.42 \
+Provides: perl(TAP::Parser::Scheduler::Spinner) = 3.42 \
+Provides: perl(TAP::Parser::Source) = 3.42 \
+Provides: perl(TAP::Parser::SourceHandler) = 3.42 \
+Provides: perl(TAP::Parser::SourceHandler::Executable) = 3.42 \
+Provides: perl(TAP::Parser::SourceHandler::File) = 3.42 \
+Provides: perl(TAP::Parser::SourceHandler::Handle) = 3.42 \
+Provides: perl(TAP::Parser::SourceHandler::Perl) = 3.42 \
+Provides: perl(TAP::Parser::SourceHandler::RawTAP) = 3.42 \
+Provides: perl(TAP::Parser::YAMLish::Reader) = 3.42 \
+Provides: perl(TAP::Parser::YAMLish::Writer) = 3.42 \
+Provides: perl(Test::Harness) = 3.42 \
+%{nil}
+%global gendep_perl_Test_Simple \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(File::Spec) \
+Requires: perl(File::Temp) \
+Requires: perl(IO::Handle) \
+Requires: perl(List::Util) \
+Requires: perl(POSIX) \
+Requires: perl(Scalar::Util) \
+Requires: perl(Storable) \
+Requires: perl(Symbol) \
+Requires: perl(Test2::API) \
+Requires: perl(Test2::API::Context) \
+Requires: perl(Test2::API::Instance) \
+Requires: perl(Test2::API::Stack) \
+Requires: perl(Test2::Event::Bail) \
+Requires: perl(Test2::Event::Diag) \
+Requires: perl(Test2::Event::Exception) \
+Requires: perl(Test2::Event::Note) \
+Requires: perl(Test2::Event::Ok) \
+Requires: perl(Test2::Event::Plan) \
+Requires: perl(Test2::Event::Skip) \
+Requires: perl(Test2::Event::Subtest) \
+Requires: perl(Test2::Event::Waiting) \
+Requires: perl(Test2::EventFacet::About) \
+Requires: perl(Test2::EventFacet::Amnesty) \
+Requires: perl(Test2::EventFacet::Assert) \
+Requires: perl(Test2::EventFacet::Control) \
+Requires: perl(Test2::EventFacet::Error) \
+Requires: perl(Test2::EventFacet::Hub) \
+Requires: perl(Test2::EventFacet::Info) \
+Requires: perl(Test2::EventFacet::Meta) \
+Requires: perl(Test2::EventFacet::Parent) \
+Requires: perl(Test2::EventFacet::Plan) \
+Requires: perl(Test2::EventFacet::Trace) \
+Requires: perl(Test2::Hub) \
+Requires: perl(Test2::Hub::Interceptor) \
+Requires: perl(Test2::Hub::Interceptor::Terminator) \
+Requires: perl(Test2::Hub::Subtest) \
+Requires: perl(Test2::Util) \
+Requires: perl(Test2::Util::ExternalMeta) \
+Requires: perl(Test2::Util::Facets2Legacy) \
+Requires: perl(Test2::Util::HashBase) \
+Requires: perl(Test2::Util::Trace) \
+Requires: perl(Test::Builder) \
+Requires: perl(Test::Builder::Formatter) \
+Requires: perl(Test::Builder::Module) \
+Requires: perl(Test::Builder::Tester) \
+Requires: perl(Test::Builder::TodoDiag) \
+Requires: perl(Test::More) \
+Requires: perl(Test::Tester::Capture) \
+Requires: perl(Test::Tester::CaptureRunner) \
+Requires: perl(Test::Tester::Delegate) \
+Requires: perl(base) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Test2) = 1.302175 \
+Provides: perl(Test2::API) = 1.302175 \
+Provides: perl(Test2::API::Breakage) = 1.302175 \
+Provides: perl(Test2::API::Context) = 1.302175 \
+Provides: perl(Test2::API::Instance) = 1.302175 \
+Provides: perl(Test2::API::Stack) = 1.302175 \
+Provides: perl(Test2::Event) = 1.302175 \
+Provides: perl(Test2::Event::Bail) = 1.302175 \
+Provides: perl(Test2::Event::Diag) = 1.302175 \
+Provides: perl(Test2::Event::Encoding) = 1.302175 \
+Provides: perl(Test2::Event::Exception) = 1.302175 \
+Provides: perl(Test2::Event::Fail) = 1.302175 \
+Provides: perl(Test2::Event::Generic) = 1.302175 \
+Provides: perl(Test2::Event::Note) = 1.302175 \
+Provides: perl(Test2::Event::Ok) = 1.302175 \
+Provides: perl(Test2::Event::Pass) = 1.302175 \
+Provides: perl(Test2::Event::Plan) = 1.302175 \
+Provides: perl(Test2::Event::Skip) = 1.302175 \
+Provides: perl(Test2::Event::Subtest) = 1.302175 \
+Provides: perl(Test2::Event::TAP::Version) = 1.302175 \
+Provides: perl(Test2::Event::V2) = 1.302175 \
+Provides: perl(Test2::Event::Waiting) = 1.302175 \
+Provides: perl(Test2::EventFacet) = 1.302175 \
+Provides: perl(Test2::EventFacet::About) = 1.302175 \
+Provides: perl(Test2::EventFacet::Amnesty) = 1.302175 \
+Provides: perl(Test2::EventFacet::Assert) = 1.302175 \
+Provides: perl(Test2::EventFacet::Control) = 1.302175 \
+Provides: perl(Test2::EventFacet::Error) = 1.302175 \
+Provides: perl(Test2::EventFacet::Hub) = 1.302175 \
+Provides: perl(Test2::EventFacet::Info) = 1.302175 \
+Provides: perl(Test2::EventFacet::Info::Table) = 1.302175 \
+Provides: perl(Test2::EventFacet::Meta) = 1.302175 \
+Provides: perl(Test2::EventFacet::Parent) = 1.302175 \
+Provides: perl(Test2::EventFacet::Plan) = 1.302175 \
+Provides: perl(Test2::EventFacet::Render) = 1.302175 \
+Provides: perl(Test2::EventFacet::Trace) = 1.302175 \
+Provides: perl(Test2::Formatter) = 1.302175 \
+Provides: perl(Test2::Formatter::TAP) = 1.302175 \
+Provides: perl(Test2::Hub) = 1.302175 \
+Provides: perl(Test2::Hub::Interceptor) = 1.302175 \
+Provides: perl(Test2::Hub::Interceptor::Terminator) = 1.302175 \
+Provides: perl(Test2::Hub::Subtest) = 1.302175 \
+Provides: perl(Test2::IPC) = 1.302175 \
+Provides: perl(Test2::IPC::Driver) = 1.302175 \
+Provides: perl(Test2::IPC::Driver::Files) = 1.302175 \
+Provides: perl(Test2::Tools::Tiny) = 1.302175 \
+Provides: perl(Test2::Util) = 1.302175 \
+Provides: perl(Test2::Util::ExternalMeta) = 1.302175 \
+Provides: perl(Test2::Util::Facets2Legacy) = 1.302175 \
+Provides: perl(Test2::Util::HashBase) = 1.302175 \
+Provides: perl(Test2::Util::Trace) = 1.302175 \
+Provides: perl(Test::Builder) = 1.302175 \
+Provides: perl(Test::Builder::Formatter) = 1.302175 \
+Provides: perl(Test::Builder::IO::Scalar) = 2.114 \
+Provides: perl(Test::Builder::Module) = 1.302175 \
+Provides: perl(Test::Builder::Tester) = 1.302175 \
+Provides: perl(Test::Builder::Tester::Color) = 1.302175 \
+Provides: perl(Test::Builder::Tester::Tie) \
+Provides: perl(Test::Builder::TodoDiag) = 1.302175 \
+Provides: perl(Test::More) = 1.302175 \
+Provides: perl(Test::Simple) = 1.302175 \
+Provides: perl(Test::Tester) = 1.302175 \
+Provides: perl(Test::Tester::Capture) = 1.302175 \
+Provides: perl(Test::Tester::CaptureRunner) = 1.302175 \
+Provides: perl(Test::Tester::Delegate) = 1.302175 \
+Provides: perl(Test::use::ok) = 1.302175 \
+Provides: perl(ok) = 1.302175 \
+%{nil}
+%global gendep_perl_Text_Abbrev \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(Exporter) \
+Provides: perl(Text::Abbrev) = 1.02 \
+%{nil}
+%global gendep_perl_Text_Balanced \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(SelfLoader) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Text::Balanced) = 2.03 \
+Provides: perl(Text::Balanced::ErrorMsg) \
+Provides: perl(Text::Balanced::Extractor) \
+%{nil}
+%global gendep_perl_Text_ParseWords \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Provides: perl(Text::ParseWords) = 3.30 \
+%{nil}
+%global gendep_perl_Text_Tabs_Wrap \
+Requires: perl(:VERSION) >= 5.10.0 \
+Requires: perl(Exporter) \
+Requires: perl(Text::Tabs) \
+Requires: perl(re) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings::register) \
+Provides: perl(Text::Tabs) = 2013.0523 \
+Provides: perl(Text::Wrap) = 2013.0523 \
+%{nil}
+%global gendep_perl_Thread \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(threads) \
+Requires: perl(threads::shared) \
+Requires: perl(warnings) \
+Provides: perl(Thread) = 3.05 \
+%{nil}
+%global gendep_perl_Thread_Queue \
+Requires: perl(Scalar::Util) >= 1.10 \
+Requires: perl(strict) \
+Requires: perl(threads::shared) >= 1.21 \
+Requires: perl(warnings) \
+Provides: perl(Thread::Queue) = 3.14 \
+%{nil}
+%global gendep_perl_Thread_Semaphore \
+Requires: perl(Scalar::Util) >= 1.10 \
+Requires: perl(strict) \
+Requires: perl(threads::shared) \
+Requires: perl(warnings) \
+Provides: perl(Thread::Semaphore) = 2.13 \
+%{nil}
+%global gendep_perl_Tie \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Tie::Handle) \
+Requires: perl(Tie::StdHandle) \
+Requires: perl(integer) \
+Requires: perl(strict) \
+Requires: perl(warnings::register) \
+Provides: perl(Tie::Array) = 1.07 \
+Provides: perl(Tie::Handle) = 4.2 \
+Provides: perl(Tie::Scalar) = 1.05 \
+Provides: perl(Tie::StdArray) \
+Provides: perl(Tie::StdHandle) = 4.6 \
+Provides: perl(Tie::StdScalar) \
+Provides: perl(Tie::SubstrHash) = 1.00 \
+%{nil}
+%global gendep_perl_Tie_File \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(Carp) \
+Requires: perl(Fcntl) \
+Requires: perl(POSIX) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Tie::File) = 1.06 \
+Provides: perl(Tie::File::Cache) \
+Provides: perl(Tie::File::Heap) \
+%{nil}
+%global gendep_perl_Tie_Memoize \
+Requires: perl(Tie::Hash) \
+Requires: perl(strict) \
+Provides: perl(Tie::Memoize) = 1.1 \
+%{nil}
+%global gendep_perl_Tie_RefHash \
+Requires: perl(:VERSION) >= 5.5.0 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Tie::Hash) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Provides: perl(Tie::RefHash) = 1.39 \
+Provides: perl(Tie::RefHash::Nestable) \
+%{nil}
+%global gendep_perl_Time \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Class::Struct) \
+Requires: perl(Exporter) \
+Requires: perl(Time::tm) \
+Requires: perl(strict) \
+Provides: perl(Time::gmtime) = 1.04 \
+Provides: perl(Time::localtime) = 1.03 \
+Provides: perl(Time::tm) = 1.00 \
+%{nil}
+%global gendep_perl_Time_HiRes \
+Requires: perl(Exporter) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Provides: perl(Time::HiRes) = 1.9764 \
+%{nil}
+%global gendep_perl_Time_HiRes_debuginfo \
+%{nil}
+%global gendep_perl_Time_Local \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(constant) \
+Requires: perl(parent) \
+Requires: perl(strict) \
+Provides: perl(Time::Local) = 1.28 \
+%{nil}
+%global gendep_perl_Time_Piece \
+Requires: perl(Carp) \
+Requires: perl(Exporter) >= 5.57 \
+Requires: perl(Scalar::Util) \
+Requires: perl(Time::Local) \
+Requires: perl(Time::Seconds) \
+Requires: perl(XSLoader) \
+Requires: perl(constant) \
+Requires: perl(integer) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Provides: perl(Time::Piece) = 1.3401 \
+Provides: perl(Time::Seconds) = 1.3401 \
+%{nil}
+%global gendep_perl_Time_Piece_debuginfo \
+%{nil}
+%global gendep_perl_Unicode_Collate \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(File::Spec) \
+Requires: perl(Unicode::Collate) \
+Requires: perl(XSLoader) \
+Requires: perl(base) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Unicode::Collate) = 1.27 \
+Provides: perl(Unicode::Collate::CJK::Big5) = 1.27 \
+Provides: perl(Unicode::Collate::CJK::GB2312) = 1.27 \
+Provides: perl(Unicode::Collate::CJK::JISX0208) = 1.27 \
+Provides: perl(Unicode::Collate::CJK::Korean) = 1.27 \
+Provides: perl(Unicode::Collate::CJK::Pinyin) = 1.27 \
+Provides: perl(Unicode::Collate::CJK::Stroke) = 1.27 \
+Provides: perl(Unicode::Collate::CJK::Zhuyin) = 1.27 \
+Provides: perl(Unicode::Collate::Locale) = 1.27 \
+%{nil}
+%global gendep_perl_Unicode_Collate_debuginfo \
+%{nil}
+%global gendep_perl_Unicode_Normalize \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Unicode::Normalize) = 1.27 \
+%{nil}
+%global gendep_perl_Unicode_Normalize_debuginfo \
+%{nil}
+%global gendep_perl_Unicode_UCD \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(File::Spec) \
+Requires: perl(Unicode::Normalize) \
+Requires: perl(charnames) \
+Requires: perl(feature) \
+Requires: perl(if) \
+Requires: perl(integer) \
+Requires: perl(re) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Unicode::UCD) = 0.75 \
+%{nil}
+%global gendep_perl_User_pwent \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Class::Struct) \
+Requires: perl(Config) \
+Requires: perl(Exporter) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(User::grent) = 1.03 \
+Provides: perl(User::pwent) = 1.01 \
+%{nil}
+%global gendep_perl_autodie \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Exporter) >= 5.57 \
+Requires: perl(Fatal) \
+Requires: perl(Scalar::Util) \
+Requires: perl(Tie::RefHash) \
+Requires: perl(autodie::Scope::Guard) \
+Requires: perl(autodie::Scope::GuardStack) \
+Requires: perl(autodie::Util) \
+Requires: perl(autodie::exception) \
+Requires: perl(constant) \
+Requires: perl(lib) \
+Requires: perl(overload) \
+Requires: perl(parent) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Fatal) = 2.32 \
+Provides: perl(autodie) = 2.32 \
+Provides: perl(autodie::Scope::Guard) = 2.32 \
+Provides: perl(autodie::Scope::GuardStack) = 2.32 \
+Provides: perl(autodie::Util) = 2.32 \
+Provides: perl(autodie::exception) = 2.32 \
+Provides: perl(autodie::exception::system) = 2.32 \
+Provides: perl(autodie::hints) = 2.32 \
+Provides: perl(autodie::skip) = 2.32 \
+%{nil}
+%global gendep_perl_autouse \
+Requires: perl(:VERSION) >= 5.6.0 \
+Provides: perl(autouse) = 1.11 \
+%{nil}
+%global gendep_perl_base \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(strict) \
+Provides: perl(base) = 2.27 \
+%{nil}
+%global gendep_perl_bignum \
+Requires: perl(:VERSION) >= 5.10.0 \
+Requires: perl(Exporter) \
+Requires: perl(Math::BigFloat) \
+Requires: perl(Math::BigInt) \
+Requires: perl(bigint) \
+Requires: perl(constant) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Math::BigFloat::Trace) = 0.51 \
+Provides: perl(Math::BigInt::Trace) = 0.51 \
+Provides: perl(bigint) = 0.51 \
+Provides: perl(bignum) = 0.51 \
+Provides: perl(bigrat) = 0.51 \
+%{nil}
+%global gendep_perl_blib \
+Requires: perl(Cwd) \
+Requires: perl(File::Spec) \
+Provides: perl(blib) = 1.07 \
+%{nil}
+%global gendep_perl_constant \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(strict) \
+Requires: perl(warnings::register) \
+Provides: perl(constant) = 1.33 \
+%{nil}
+%global gendep_perl_debugger \
+Requires: perl(strict) \
+Provides: perl(DB) = 1.08 \
+Provides: perl(dumpvar.pl) = 5.32.0 \
+Provides: perl(perl5db.pl) = 1.56 \
+%{nil}
+%global gendep_perl_debuginfo \
+%{nil}
+%global gendep_perl_debugsource \
+%{nil}
+%global gendep_perl_deprecate \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(deprecate) = 0.04 \
+%{nil}
+%global gendep_perl_devel \
+Requires: perl(Config) \
+Requires: perl(ExtUtils::Constant) \
+Requires: perl(ExtUtils::Installed) \
+Requires: perl(File::Compare) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec) \
+Requires: perl(Getopt::Long) \
+Requires: perl(Text::Wrap) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+%{nil}
+%global gendep_perl_diagnostics \
+Requires: perl(:VERSION) >= 5.9.1 \
+Requires: perl(Carp) \
+Requires: perl(Config) \
+Requires: perl(Text::Tabs) \
+Requires: perl(strict) \
+Provides: perl(diagnostics) = 1.37 \
+%{nil}
+%global gendep_perl_doc \
+%{nil}
+%global gendep_perl_encoding \
+Requires: perl(Config) \
+Requires: perl(Encode) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(encoding) = 3.00 \
+%{nil}
+%global gendep_perl_encoding_warnings \
+Requires: perl(:VERSION) >= 5.7.0 \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(encoding::warnings) = 0.13 \
+%{nil}
+%global gendep_perl_experimental \
+Requires: perl(Carp) \
+Requires: perl(strict) \
+Requires: perl(version) \
+Requires: perl(warnings) \
+Provides: perl(experimental) = 0.020 \
+%{nil}
+%global gendep_perl_fields \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(strict) \
+Provides: perl(fields) = 2.24 \
+%{nil}
+%global gendep_perl_filetest \
+Provides: perl(filetest) = 1.03 \
+%{nil}
+%global gendep_perl_if \
+Provides: perl(if) = 0.0608 \
+%{nil}
+%global gendep_perl_interpreter \
+%{nil}
+%global gendep_perl_interpreter_debuginfo \
+%{nil}
+%global gendep_perl_less \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(less) = 0.03 \
+%{nil}
+%global gendep_perl_lib \
+Requires: perl(Config) \
+Requires: perl(strict) \
+Provides: perl(lib) = 0.65 \
+%{nil}
+%global gendep_perl_libnet \
+Requires: perl(:VERSION) >= 5.8.1 \
+Requires: perl(Carp) \
+Requires: perl(Errno) \
+Requires: perl(Exporter) \
+Requires: perl(Fcntl) \
+Requires: perl(FileHandle) \
+Requires: perl(IO::Select) \
+Requires: perl(IO::Socket) \
+Requires: perl(Net::Cmd) \
+Requires: perl(Net::Config) \
+Requires: perl(Net::FTP::I) \
+Requires: perl(Net::FTP::dataconn) \
+Requires: perl(Socket) \
+Requires: perl(Symbol) \
+Requires: perl(Time::Local) \
+Requires: perl(constant) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(Net::Cmd) = 3.11 \
+Provides: perl(Net::Config) = 3.11 \
+Provides: perl(Net::Domain) = 3.11 \
+Provides: perl(Net::FTP) = 3.11 \
+Provides: perl(Net::FTP::A) = 3.11 \
+Provides: perl(Net::FTP::E) = 3.11 \
+Provides: perl(Net::FTP::I) = 3.11 \
+Provides: perl(Net::FTP::L) = 3.11 \
+Provides: perl(Net::FTP::_SSL_SingleSessionCache) \
+Provides: perl(Net::FTP::dataconn) = 3.11 \
+Provides: perl(Net::NNTP) = 3.11 \
+Provides: perl(Net::NNTP::_SSL) \
+Provides: perl(Net::Netrc) = 3.11 \
+Provides: perl(Net::POP3) = 3.11 \
+Provides: perl(Net::POP3::_SSL) \
+Provides: perl(Net::SMTP) = 3.11 \
+Provides: perl(Net::SMTP::_SSL) \
+Provides: perl(Net::Time) = 3.11 \
+%{nil}
+%global gendep_perl_libnetcfg \
+Requires: perl(ExtUtils::MakeMaker) \
+Requires: perl(File::Spec) \
+Requires: perl(Getopt::Std) \
+Requires: perl(IO::File) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+%{nil}
+%global gendep_perl_libs \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(Carp) \
+Requires: perl(Exporter) \
+Requires: perl(Tie::Hash) \
+Requires: perl(XSLoader) \
+Requires: perl(_charnames) \
+Requires: perl(bytes) \
+Requires: perl(integer) \
+Requires: perl(re) \
+Requires: perl(strict) \
+Requires: perl(unicore::Name) \
+Requires: perl(warnings) \
+Requires: perl(warnings::register) \
+Provides: perl(:MODULE_COMPAT_5.32.0) \
+Provides: perl(:VERSION) = 5.32.0 \
+Provides: perl(:WITH_64BIT) \
+Provides: perl(:WITH_ITHREADS) \
+Provides: perl(:WITH_LARGEFILES) \
+Provides: perl(:WITH_PERLIO) \
+Provides: perl(:WITH_THREADS) \
+Provides: perl(AnyDBM_File) = 1.01 \
+Provides: perl(Config) = 5.032000 \
+Provides: perl(File::Glob) = 1.33 \
+Provides: perl(PerlIO) = 1.11 \
+Provides: perl(PerlIO::encoding) = 0.28 \
+Provides: perl(PerlIO::mmap) = 0.016 \
+Provides: perl(PerlIO::scalar) = 0.30 \
+Provides: perl(PerlIO::via) = 0.18 \
+Provides: perl(SDBM_File) = 1.15 \
+Provides: perl(Tie::ExtraHash) \
+Provides: perl(Tie::Hash) = 1.05 \
+Provides: perl(Tie::Hash::NamedCapture) = 0.13 \
+Provides: perl(Tie::StdHash) \
+Provides: perl(UNIVERSAL) = 1.13 \
+Provides: perl(XSLoader) = 0.30 \
+Provides: perl(_charnames) = 1.48 \
+Provides: perl(attributes) = 0.33 \
+Provides: perl(bytes) = 1.07 \
+Provides: perl(bytes_heavy.pl) \
+Provides: perl(charnames) = 1.48 \
+Provides: perl(feature) = 1.58 \
+Provides: perl(integer) = 1.01 \
+Provides: perl(re) = 0.40 \
+Provides: perl(strict) = 1.11 \
+Provides: perl(unicore::Name) \
+Provides: perl(utf8) = 1.22 \
+Provides: perl(utf8_heavy.pl) \
+Provides: perl(warnings) = 1.47 \
+Provides: perl(warnings::register) = 1.04 \
+%{nil}
+%global gendep_perl_libs_debuginfo \
+%{nil}
+%global gendep_perl_locale \
+Requires: perl(Config) \
+Provides: perl(locale) = 1.09 \
+%{nil}
+%global gendep_perl_macros \
+%{nil}
+%global gendep_perl_meta_notation \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(meta_notation) = 5.32.0 \
+%{nil}
+%global gendep_perl_mro \
+Requires: perl(XSLoader) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(mro) = 1.23 \
+%{nil}
+%global gendep_perl_mro_debuginfo \
+%{nil}
+%global gendep_perl_open \
+Requires: perl(:VERSION) >= 5.8.1 \
+Requires: perl(warnings) \
+Provides: perl(open) = 1.12 \
+%{nil}
+%global gendep_perl_overload \
+Requires: perl(warnings::register) \
+Provides: perl(overload) = 1.31 \
+%{nil}
+%global gendep_perl_overloading \
+Requires: perl(:VERSION) >= 5.10.1 \
+Requires: perl(warnings) \
+Provides: perl(overload::numbers) \
+Provides: perl(overloading) = 0.02 \
+%{nil}
+%global gendep_perl_parent \
+Requires: perl(strict) \
+Provides: perl(parent) = 0.238 \
+%{nil}
+%global gendep_perl_perlfaq \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(perlfaq) = 5.20200523 \
+%{nil}
+%global gendep_perl_ph \
+Provides: perl(sys/ioctl.ph) = 5.32.0 \
+Provides: perl(sys/syscall.ph) = 5.32.0 \
+Provides: perl(syscall.ph) = 5.32.0 \
+%{nil}
+%global gendep_perl_podlators \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(Carp) \
+Requires: perl(Encode) \
+Requires: perl(Exporter) \
+Requires: perl(Getopt::Long) \
+Requires: perl(POSIX) \
+Requires: perl(Pod::Man) \
+Requires: perl(Pod::Simple) \
+Requires: perl(Pod::Text) \
+Requires: perl(Pod::Usage) \
+Requires: perl(Term::ANSIColor) \
+Requires: perl(Term::Cap) \
+Requires: perl(strict) \
+Requires: perl(subs) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+Provides: perl(Pod::Man) = 4.14 \
+Provides: perl(Pod::ParseLink) = 4.14 \
+Provides: perl(Pod::Text) = 4.14 \
+Provides: perl(Pod::Text::Color) = 4.14 \
+Provides: perl(Pod::Text::Overstrike) = 4.14 \
+Provides: perl(Pod::Text::Termcap) = 4.14 \
+%{nil}
+%global gendep_perl_sigtrap \
+Requires: perl(Carp) \
+Provides: perl(sigtrap) = 1.09 \
+%{nil}
+%global gendep_perl_sort \
+Requires: perl(strict) \
+Provides: perl(sort) = 2.04 \
+%{nil}
+%global gendep_perl_subs \
+Requires: perl(:VERSION) >= 5.0.0 \
+Provides: perl(subs) = 1.03 \
+%{nil}
+%global gendep_perl_tests \
+%{nil}
+%global gendep_perl_threads \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(Config) \
+Requires: perl(XSLoader) \
+Requires: perl(overload) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(threads) = 2.25 \
+%{nil}
+%global gendep_perl_threads_debuginfo \
+%{nil}
+%global gendep_perl_threads_shared \
+Requires: perl(:VERSION) >= 5.8.0 \
+Requires: perl(Config) \
+Requires: perl(Scalar::Util) \
+Requires: perl(strict) \
+Requires: perl(warnings) \
+Provides: perl(threads::shared) = 1.61 \
+%{nil}
+%global gendep_perl_threads_shared_debuginfo \
+%{nil}
+%global gendep_perl_utils \
+Requires: perl(Config) \
+Requires: perl(File::Basename) \
+Requires: perl(File::Path) \
+Requires: perl(File::Spec) \
+Requires: perl(Getopt::Std) \
+Requires: perl(re) \
+Requires: perl(strict) \
+Requires: perl(vars) \
+Requires: perl(warnings) \
+%{nil}
+%global gendep_perl_vars \
+Requires: perl(:VERSION) >= 5.6.0 \
+Requires: perl(strict) \
+Requires: perl(warnings::register) \
+Provides: perl(vars) = 1.05 \
+%{nil}
+%global gendep_perl_version \
+Requires: perl(:VERSION) >= 5.6.2 \
+Requires: perl(strict) \
+Requires: perl(version::regex) \
+Requires: perl(warnings::register) \
+Provides: perl(version) = 0.9924 \
+Provides: perl(version::regex) = 0.9924 \
+%{nil}
+%global gendep_perl_vmsish \
+Provides: perl(vmsish) = 1.04 \
+%{nil}
diff --git a/SOURCES/macros.perl b/SOURCES/macros.perl
new file mode 100644
index 0000000..9de4eff
--- /dev/null
+++ b/SOURCES/macros.perl
@@ -0,0 +1,158 @@
+# Sensible Perl-specific RPM build macros.
+#
+# Note that these depend on the generic filtering system being in place in
+# rpm core; but won't cause a build to fail if they're not present.
+#
+# Chris Weyl <cweyl@alumni.drew.edu> 2009
+# Marcela Mašláňová <mmaslano@redhat.com> 2011
+
+# This macro unsets several common vars used to control how Makefile.PL (et
+# al) build and install packages.  We also set a couple to help some of the
+# common systems be less interactive.  This was blatantly stolen from
+# cpanminus, and helps building rpms locally when one makes extensive use of
+# local::lib, etc.
+#
+# Usage, in %build, before "%{__perl} Makefile.PL ..."
+#
+#   %{?perl_ext_env_unset}
+
+%perl_ext_env_unset %{expand:
+unset PERL_MM_OPT MODULEBUILDRC PERL5INC
+export PERL_AUTOINSTALL="--defaultdeps"
+export PERL_MM_USE_DEFAULT=1
+}
+
+#############################################################################
+# Perl specific macros, no longer part of rpm >= 4.15
+%perl_vendorarch %(eval "`%{__perl} -V:installvendorarch`"; echo $installvendorarch)
+%perl_vendorlib  %(eval "`%{__perl} -V:installvendorlib`"; echo $installvendorlib)
+%perl_archlib    %(eval "`%{__perl} -V:installarchlib`"; echo $installarchlib)
+%perl_privlib    %(eval "`%{__perl} -V:installprivlib`"; echo $installprivlib)
+
+#############################################################################
+# Filtering macro incantations
+
+# keep track of what "revision" of the filtering we're at.  Each time we
+# change the filter we should increment this.
+
+%perl_default_filter_revision 3
+
+# By default, for perl packages we want to filter all files in _docdir from 
+# req/prov scanning.
+# Filtering out any provides caused by private libs in vendorarch/archlib
+# (vendor/core) is done by rpmbuild since Fedora 20
+# <https://fedorahosted.org/fpc/ticket/353>.
+#
+# Note that this must be invoked in the spec file, preferably as 
+# "%{?perl_default_filter}", before any %description block.
+
+%perl_default_filter %{expand: \
+%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}^%{_docdir}
+%global __requires_exclude_from %{?__requires_exclude_from:%__requires_exclude_from|}^%{_docdir}
+%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\\\(VMS|^perl\\\\(Win32|^perl\\\\(DB\\\\)|^perl\\\\(UNIVERSAL\\\\)
+%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\\\(VMS|^perl\\\\(Win32
+}
+
+#############################################################################
+# Macros to assist with generating a "-tests" subpackage in a semi-automatic
+# manner.
+#
+# The following macros are still in a highly experimental stage and users
+# should be aware that the interface and behaviour may change. 
+#
+# PLEASE, PLEASE CONDITIONALIZE THESE MACROS IF YOU USE THEM.
+#
+# See http://gist.github.com/284409
+
+# These macros should be invoked as above, right before the first %description
+# section, and conditionalized.  e.g., for the common case where all our tests
+# are located under t/, the correct usage is:
+#
+#   %{?perl_default_subpackage_tests}
+#
+# If custom files/directories need to be specified, this can be done as such:
+#
+#   %{?perl_subpackage_tests:%perl_subpackage_tests t/ one/ three.sql}
+#
+# etc, etc.
+
+%perl_version   %(eval "`%{__perl} -V:version`"; echo $version)
+%perl_testdir   %{_libexecdir}/perl5-tests
+%cpan_dist_name %(eval echo %{name} | %{__sed} -e 's/^perl-//')
+
+# easily mark something as required by -tests and BR to the main package
+%tests_req() %{expand:\
+BuildRequires: %*\
+%%tests_subpackage_requires %*\
+}
+
+# fixup (and create if needed) the shbang lines in tests, so they work and
+# rpmlint doesn't (correctly) have a fit
+%fix_shbang_line() \
+TMPHEAD=`mktemp`\
+TMPBODY=`mktemp`\
+for file in %* ; do \
+    head -1 $file > $TMPHEAD\
+    tail -n +2 $file > $TMPBODY\
+    %{__perl} -pi -e '$f = /^#!/ ? "" : "#!%{__perl}$/"; $_="$f$_"' $TMPHEAD\
+    cat $TMPHEAD $TMPBODY > $file\
+done\
+%{__perl} -MExtUtils::MakeMaker -e "ExtUtils::MM_Unix->fixin(qw{%*})"\
+%{__rm} $TMPHEAD $TMPBODY\
+%{nil}
+
+# additional -tests subpackage requires, if any
+%tests_subpackage_requires() %{expand: \
+%global __tests_spkg_req %{?__tests_spkg_req} %* \
+}
+
+# additional -tests subpackage provides, if any
+%tests_subpackage_provides() %{expand: \
+%global __tests_spkg_prov %{?__tests_spkg_prov} %* \
+}
+
+#
+# Runs after the body of %check completes.
+#
+
+%__perl_check_pre %{expand: \
+%{?__spec_check_pre} \
+pushd %{buildsubdir} \
+%define perl_br_testdir %{buildroot}%{perl_testdir}/%{cpan_dist_name} \
+%{__mkdir_p} %{perl_br_testdir} \
+%{__tar} -cf - %{__perl_test_dirs} | ( cd %{perl_br_testdir} && %{__tar} -xf - ) \
+find . -maxdepth 1 -type f -name '*META*' -exec %{__cp} -vp {} %{perl_br_testdir} ';' \
+find %{perl_br_testdir} -type f -exec %{__chmod} -c -x {} ';' \
+T_FILES=`find %{perl_br_testdir} -type f -name '*.t'` \
+%fix_shbang_line $T_FILES \
+%{__chmod} +x $T_FILES \
+%{_fixperms} %{perl_br_testdir} \
+popd \
+}
+
+#
+# The actual invoked macro
+#
+
+%perl_subpackage_tests() %{expand: \
+%global __perl_package 1\
+%global __perl_test_dirs %* \
+%global __spec_check_pre %{expand:%{__perl_check_pre}} \
+%package tests\
+Summary: Test suite for package %{name}\
+Group: Development/Debug\
+Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}\
+Requires: /usr/bin/prove \
+%{?__tests_spkg_req:Requires: %__tests_spkg_req}\
+%{?__tests_spkg_prov:Provides: %__tests_spkg_prov}\
+AutoReqProv: 0 \
+%description tests\
+This package provides the test suite for package %{name}.\
+%files tests\
+%defattr(-,root,root,-)\
+%{perl_testdir}\
+}
+
+# shortcut sugar
+%perl_default_subpackage_tests %perl_subpackage_tests t/
+
diff --git a/SOURCES/perl-5.10.0-libresolv.patch b/SOURCES/perl-5.10.0-libresolv.patch
new file mode 100644
index 0000000..d6ff1c7
--- /dev/null
+++ b/SOURCES/perl-5.10.0-libresolv.patch
@@ -0,0 +1,12 @@
+diff -up perl-5.10.0/Configure.didi perl-5.10.0/Configure
+--- perl-5.10.0/Configure.didi	2007-12-18 11:47:07.000000000 +0100
++++ perl-5.10.0/Configure	2008-07-21 10:51:16.000000000 +0200
+@@ -1483,7 +1483,7 @@ archname=''
+ usereentrant='undef'
+ : List of libraries we want.
+ : If anyone needs extra -lxxx, put those in a hint file.
+-libswanted="cl pthread socket bind inet nsl ndbm gdbm dbm db malloc dl ld"
++libswanted="cl pthread socket resolv inet nsl ndbm gdbm dbm db malloc dl ld"
+ libswanted="$libswanted sun 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.
diff --git a/SOURCES/perl-5.10.0-x86_64-io-test-failure.patch b/SOURCES/perl-5.10.0-x86_64-io-test-failure.patch
new file mode 100644
index 0000000..6ffc84b
--- /dev/null
+++ b/SOURCES/perl-5.10.0-x86_64-io-test-failure.patch
@@ -0,0 +1,12 @@
+diff -up perl-5.10.0/t/io/fs.t.BAD perl-5.10.0/t/io/fs.t
+--- perl-5.10.0/t/io/fs.t.BAD	2008-01-30 13:36:43.000000000 -0500
++++ perl-5.10.0/t/io/fs.t	2008-01-30 13:41:27.000000000 -0500
+@@ -257,7 +257,7 @@ isnt($atime, 500000000, 'atime');
+ isnt($mtime, $ut + $delta, 'mtime: utime called with two undefs');
+ 
+ SKIP: {
+-    skip "no futimes", 6 unless ($Config{d_futimes} || "") eq "define";
++    skip "no futimes", 6;
+     note("check futimes");
+     open(my $fh, "<", 'b');
+     $foo = (utime $ut,$ut + $delta, $fh);
diff --git a/SOURCES/perl-5.14.1-offtest.patch b/SOURCES/perl-5.14.1-offtest.patch
new file mode 100644
index 0000000..45294c8
--- /dev/null
+++ b/SOURCES/perl-5.14.1-offtest.patch
@@ -0,0 +1,17 @@
+diff -up perl-5.14.1/cpan/File-Temp/t/fork.t.off perl-5.14.1/cpan/File-Temp/t/fork.t
+--- perl-5.14.1/cpan/File-Temp/t/fork.t.off	2011-04-13 13:36:34.000000000 +0200
++++ perl-5.14.1/cpan/File-Temp/t/fork.t	2011-06-20 10:29:31.536282611 +0200
+@@ -12,12 +12,8 @@ BEGIN {
+      $Config::Config{useithreads} and
+      $Config::Config{ccflags} =~ /-DPERL_IMPLICIT_SYS/
+     );
+-  if ( $can_fork ) {
+-    print "1..8\n";
+-  } else {
+-    print "1..0 # Skip No fork available\n";
++    print "1..0 # Skip Koji doesn't work with Perl fork tests\n";
+     exit;
+-  }
+ }
+ 
+ use File::Temp;
diff --git a/SOURCES/perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch b/SOURCES/perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch
new file mode 100644
index 0000000..7887867
--- /dev/null
+++ b/SOURCES/perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-CBuilder-on-Li.patch
@@ -0,0 +1,65 @@
+From b598ba3f2d4b8347c6621cff022b8e2329b79ea5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Wed, 3 Jul 2013 11:01:02 +0200
+Subject: [PATCH] Link XS modules to libperl.so with EU::CBuilder on Linux
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+<https://bugzilla.redhat.com/show_bug.cgi?id=960048>
+<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=327585#50>
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ MANIFEST                                           |  1 +
+ .../lib/ExtUtils/CBuilder/Platform/linux.pm        | 26 ++++++++++++++++++++++
+ 2 files changed, 27 insertions(+)
+ create mode 100644 dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/linux.pm
+
+diff --git a/MANIFEST b/MANIFEST
+index 397252a..d7c519b 100644
+--- a/MANIFEST
++++ b/MANIFEST
+@@ -3424,6 +3424,7 @@ dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/aix.pm	CBuilder methods fo
+ dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/cygwin.pm	CBuilder methods for cygwin
+ dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/darwin.pm	CBuilder methods for darwin
+ dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/dec_osf.pm	CBuilder methods for OSF
++dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/linux.pm	CBuilder methods for Linux
+ dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm	CBuilder methods for OS/2
+ dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Unix.pm	CBuilder methods for Unix
+ dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/VMS.pm	CBuilder methods for VMS
+diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/linux.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/linux.pm
+new file mode 100644
+index 0000000..e3251c4
+--- /dev/null
++++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/linux.pm
+@@ -0,0 +1,26 @@
++package ExtUtils::CBuilder::Platform::linux;
++
++use strict;
++use ExtUtils::CBuilder::Platform::Unix;
++use File::Spec;
++
++use vars qw($VERSION @ISA);
++$VERSION = '0.280206';
++@ISA = qw(ExtUtils::CBuilder::Platform::Unix);
++
++sub link {
++  my ($self, %args) = @_;
++  my $cf = $self->{config};
++
++  # Link XS modules to libperl.so explicitly because multiple
++  # dlopen(, RTLD_LOCAL) hides libperl symbols from XS module.
++  local $cf->{lddlflags} = $cf->{lddlflags};
++  if ($ENV{PERL_CORE}) {
++    $cf->{lddlflags} .= ' -L' . $self->perl_inc();
++  }
++  $cf->{lddlflags} .= ' -lperl';
++
++  return $self->SUPER::link(%args);
++}
++
++1;
+-- 
+1.8.1.4
+
diff --git a/SOURCES/perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-MM-on-Linux.patch b/SOURCES/perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-MM-on-Linux.patch
new file mode 100644
index 0000000..f1f76ac
--- /dev/null
+++ b/SOURCES/perl-5.16.3-Link-XS-modules-to-libperl.so-with-EU-MM-on-Linux.patch
@@ -0,0 +1,52 @@
+From fc1f8ac36c34c35bad84fb7b99a26ab83c9ba075 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Wed, 3 Jul 2013 12:59:09 +0200
+Subject: [PATCH] Link XS modules to libperl.so with EU::MM on Linux
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+<https://bugzilla.redhat.com/show_bug.cgi?id=960048>
+<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=327585#50>
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+index a8b172f..a3fbce2 100644
+--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
++++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+@@ -30,6 +30,7 @@ BEGIN {
+     $Is{IRIX}    = $^O eq 'irix';
+     $Is{NetBSD}  = $^O eq 'netbsd';
+     $Is{Interix} = $^O eq 'interix';
++    $Is{Linux}   = $^O eq 'linux';
+     $Is{SunOS4}  = $^O eq 'sunos';
+     $Is{Solaris} = $^O eq 'solaris';
+     $Is{SunOS}   = $Is{SunOS4} || $Is{Solaris};
+@@ -1028,7 +1029,7 @@ sub xs_make_dynamic_lib {
+     push(@m,"	\$(RM_F) \$\@\n");
+ 
+     my $libs = '$(LDLOADLIBS)';
+-    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
+@@ -1041,6 +1042,11 @@ sub xs_make_dynamic_lib {
+             # 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)"';
++            }
++            $libs .= ' -lperl';
+         }
+     }
+ 
+-- 
+1.8.1.4
+
diff --git a/SOURCES/perl-5.16.3-create_libperl_soname.patch b/SOURCES/perl-5.16.3-create_libperl_soname.patch
new file mode 100644
index 0000000..0cfd59d
--- /dev/null
+++ b/SOURCES/perl-5.16.3-create_libperl_soname.patch
@@ -0,0 +1,57 @@
+From fa2f0dd5a7767223df10149d3f16d7ed7013e16f Mon Sep 17 00:00:00 2001
+From: Torsten Veller <tove@gentoo.org>
+Date: Sat, 14 Apr 2012 13:49:18 +0200
+Subject: Set libperl soname
+
+Bug-Gentoo: https://bugs.gentoo.org/286840
+
+Patch-Name: gentoo/create_libperl_soname.diff
+---
+ Makefile.SH | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.SH b/Makefile.SH
+index d1da0a0..7733a32 100755
+--- a/Makefile.SH
++++ b/Makefile.SH
+@@ -70,11 +70,11 @@ true)
+ 				${revision}.${patchlevel}.${subversion}"
+ 		case "$osvers" in
+ 	        1[5-9]*|[2-9]*)
+-			shrpldflags="$shrpldflags -install_name `pwd`/\$@ -Xlinker -headerpad_max_install_names"
++			shrpldflags="$shrpldflags -install_name `pwd`/libperl.${revision}.${patchlevel}.dylib -Xlinker -headerpad_max_install_names"
+ 			exeldflags="-Xlinker -headerpad_max_install_names"
+ 			;;
+ 		*)
+-			shrpldflags="$shrpldflags -install_name \$(shrpdir)/\$@"
++			shrpldflags="$shrpldflags -install_name \$(shrpdir)/libperl.${revision}.${patchlevel}.dylib"
+ 			;;
+ 		esac
+ 		;;
+@@ -76,13 +76,15 @@ true)
+ 		;;
+ 	sunos*)
+ 		linklibperl="-lperl"
++		shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
+ 		;;
+ 	netbsd*|freebsd[234]*|openbsd*|dragonfly*|bitrig*)
+ 		linklibperl="-L. -lperl"
++		shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
+ 		;;
+ 	interix*)
+ 		linklibperl="-L. -lperl"
+-		shrpldflags="$shrpldflags -Wl,--image-base,0x57000000"
++		shrpldflags="$shrpldflags -Wl,--image-base,0x57000000 -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
+ 		;;
+ 	aix*)
+ 		case "$cc" in
+@@ -120,6 +122,9 @@ true)
+ 	    linklibperl='libperl.x'
+ 	    DPERL_EXTERNAL_GLOB=''
+ 	    ;;
++	linux*)
++		shrpldflags="$shrpldflags -Wl,-soname -Wl,libperl.so.${revision}.${patchlevel}"
++	    ;;
+ 	esac
+ 	case "$ldlibpthname" in
+ 	'') ;;
diff --git a/SOURCES/perl-5.18.2-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects-only-from-.patch b/SOURCES/perl-5.18.2-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects-only-from-.patch
new file mode 100644
index 0000000..04b333f
--- /dev/null
+++ b/SOURCES/perl-5.18.2-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects-only-from-.patch
@@ -0,0 +1,233 @@
+From f793042f2bac2ace9a5c0030b47b41c4db561a5b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Fri, 6 Jun 2014 14:31:59 +0200
+Subject: [PATCH] Destroy {GDBM,NDBM,ODBM,SDBM}_File objects only from original
+ thread context
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This patch fixes a crash when destroing a hash tied to a *_File
+database after spawning a thread:
+
+use Fcntl;
+use SDBM_File;
+use threads;
+tie(my %dbtest, 'SDBM_File', "test.db", O_RDWR|O_CREAT, 0666);
+threads->new(sub {})->join;
+
+This crashed or paniced depending on how perl was configured.
+
+Closes RT#61912.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ ext/GDBM_File/GDBM_File.xs | 16 ++++++++++------
+ ext/NDBM_File/NDBM_File.xs | 16 ++++++++++------
+ ext/ODBM_File/ODBM_File.xs | 18 +++++++++++-------
+ ext/SDBM_File/SDBM_File.xs |  4 +++-
+ t/lib/dbmt_common.pl       | 35 +++++++++++++++++++++++++++++++++++
+ 5 files changed, 69 insertions(+), 20 deletions(-)
+
+diff --git a/ext/GDBM_File/GDBM_File.xs b/ext/GDBM_File/GDBM_File.xs
+index 33e08e2..7160f54 100644
+--- a/ext/GDBM_File/GDBM_File.xs
++++ b/ext/GDBM_File/GDBM_File.xs
+@@ -13,6 +13,7 @@
+ #define store_value 3
+ 
+ typedef struct {
++	tTHX    owner;
+ 	GDBM_FILE 	dbp ;
+ 	SV *    filter[4];
+ 	int     filtering ;
+@@ -98,6 +99,7 @@ gdbm_TIEHASH(dbtype, name, read_write, m
+ 	}
+ 	if (dbp) {
+ 	    RETVAL = (GDBM_File)safecalloc(1, sizeof(GDBM_File_type));
++	    RETVAL->owner = aTHX;
+ 	    RETVAL->dbp = dbp;
+ 	} else {
+ 	    RETVAL = NULL;
+@@ -118,12 +120,14 @@ gdbm_DESTROY(db)
+ 	PREINIT:
+ 	int i = store_value;
+ 	CODE:
+-	gdbm_close(db);
+-	do {
+-	    if (db->filter[i])
+-		SvREFCNT_dec(db->filter[i]);
+-	} while (i-- > 0);
+-	safefree(db);
++	if (db && db->owner == aTHX) {
++	    gdbm_close(db);
++	    do {
++		if (db->filter[i])
++		    SvREFCNT_dec(db->filter[i]);
++	    } while (i-- > 0);
++	    safefree(db);
++	}
+ 
+ #define gdbm_FETCH(db,key)			gdbm_fetch(db->dbp,key)
+ datum_value
+diff --git a/ext/NDBM_File/NDBM_File.xs b/ext/NDBM_File/NDBM_File.xs
+index 52e60fc..af223e5 100644
+--- a/ext/NDBM_File/NDBM_File.xs
++++ b/ext/NDBM_File/NDBM_File.xs
+@@ -33,6 +33,7 @@ END_EXTERN_C
+ #define store_value 3
+ 
+ typedef struct {
++	tTHX    owner;
+ 	DBM * 	dbp ;
+ 	SV *    filter[4];
+ 	int     filtering ;
+@@ -71,6 +72,7 @@ ndbm_TIEHASH(dbtype, filename, flags, mode)
+ 	    RETVAL = NULL ;
+ 	    if ((dbp =  dbm_open(filename, flags, mode))) {
+ 	        RETVAL = (NDBM_File)safecalloc(1, sizeof(NDBM_File_type));
++		RETVAL->owner = aTHX;
+ 		RETVAL->dbp = dbp ;
+ 	    }
+ 	    
+@@ -84,12 +86,14 @@ ndbm_DESTROY(db)
+ 	PREINIT:
+ 	int i = store_value;
+ 	CODE:
+-	dbm_close(db->dbp);
+-	do {
+-	    if (db->filter[i])
+-		SvREFCNT_dec(db->filter[i]);
+-	} while (i-- > 0);
+-	safefree(db);
++	if (db && db->owner == aTHX) {
++	    dbm_close(db->dbp);
++	    do {
++		if (db->filter[i])
++		    SvREFCNT_dec(db->filter[i]);
++	    } while (i-- > 0);
++	    safefree(db);
++	}
+ 
+ #define ndbm_FETCH(db,key)			dbm_fetch(db->dbp,key)
+ datum_value
+diff --git a/ext/ODBM_File/ODBM_File.xs b/ext/ODBM_File/ODBM_File.xs
+index d1ece7f..f7e00a0 100644
+--- a/ext/ODBM_File/ODBM_File.xs
++++ b/ext/ODBM_File/ODBM_File.xs
+@@ -49,6 +49,7 @@ datum	nextkey(datum key);
+ #define store_value 3
+ 
+ typedef struct {
++	tTHX    owner;
+ 	void * 	dbp ;
+ 	SV *    filter[4];
+ 	int     filtering ;
+@@ -137,6 +138,7 @@ odbm_TIEHASH(dbtype, filename, flags, mode)
+ 	    }
+ 	    dbp = (void*)(dbminit(filename) >= 0 ? &dbmrefcnt : 0);
+ 	    RETVAL = (ODBM_File)safecalloc(1, sizeof(ODBM_File_type));
++	    RETVAL->owner = aTHX;
+ 	    RETVAL->dbp = dbp ;
+ 	}
+ 	OUTPUT:
+@@ -149,13 +151,15 @@ DESTROY(db)
+ 	dMY_CXT;
+ 	int i = store_value;
+ 	CODE:
+-	dbmrefcnt--;
+-	dbmclose();
+-	do {
+-	    if (db->filter[i])
+-		SvREFCNT_dec(db->filter[i]);
+-	} while (i-- > 0);
+-	safefree(db);
++	if (db && db->owner == aTHX) {
++	    dbmrefcnt--;
++	    dbmclose();
++	    do {
++		if (db->filter[i])
++		    SvREFCNT_dec(db->filter[i]);
++	    } while (i-- > 0);
++	    safefree(db);
++	}
+ 
+ datum_value
+ odbm_FETCH(db, key)
+diff --git a/ext/SDBM_File/SDBM_File.xs b/ext/SDBM_File/SDBM_File.xs
+index 291e41b..0bdae9a 100644
+--- a/ext/SDBM_File/SDBM_File.xs
++++ b/ext/SDBM_File/SDBM_File.xs
+@@ -10,6 +10,7 @@
+ #define store_value 3
+ 
+ typedef struct {
++	tTHX    owner;
+ 	DBM * 	dbp ;
+ 	SV *    filter[4];
+ 	int     filtering ;
+@@ -51,6 +52,7 @@ sdbm_TIEHASH(dbtype, filename, flags, mode)
+ 	    }
+ 	    if (dbp) {
+ 	        RETVAL = (SDBM_File)safecalloc(1, sizeof(SDBM_File_type));
++		RETVAL->owner = aTHX;
+ 		RETVAL->dbp = dbp ;
+ 	    }
+ 	    
+@@ -62,7 +64,7 @@ void
+ sdbm_DESTROY(db)
+ 	SDBM_File	db
+ 	CODE:
+-	if (db) {
++	if (db && db->owner == aTHX) {
+ 	    int i = store_value;
+ 	    sdbm_close(db->dbp);
+ 	    do {
+diff --git a/t/lib/dbmt_common.pl b/t/lib/dbmt_common.pl
+index 5d4098c..a0a4d52 100644
+--- a/t/lib/dbmt_common.pl
++++ b/t/lib/dbmt_common.pl
+@@ -510,5 +510,40 @@ unlink <Op_dbmx*>, $Dfile;
+    unlink <Op1_dbmx*>;
+ }
+ 
++{
++   # Check DBM back-ends do not destroy objects from then-spawned threads.
++   # RT#61912.
++   SKIP: {
++      my $threads_count = 2;
++      skip 'Threads are disabled', 3 + 2 * $threads_count
++        unless $Config{usethreads};
++      use_ok('threads');
++
++      my %h;
++      unlink <Op1_dbmx*>;
++
++      my $db = tie %h, $DBM_Class, 'Op1_dbmx', $create, 0640;
++      isa_ok($db, $DBM_Class);
++
++      for (1 .. 2) {
++         ok(threads->create(
++            sub {
++               $SIG{'__WARN__'} = sub { fail(shift) }; # debugging perl panics
++                        # report it by spurious TAP line
++               1;
++            }), "Thread $_ created");
++      }
++      for (threads->list) {
++         is($_->join, 1, "A thread exited successfully");
++      }
++
++      pass("Tied object survived exiting threads");
++
++      undef $db;
++      untie %h;
++      unlink <Op1_dbmx*>;
++   }
++}
++
+ done_testing();
+ 1;
+-- 
+1.9.3
+
diff --git a/SOURCES/perl-5.22.0-Install-libperl.so-to-shrpdir-on-Linux.patch b/SOURCES/perl-5.22.0-Install-libperl.so-to-shrpdir-on-Linux.patch
new file mode 100644
index 0000000..49de388
--- /dev/null
+++ b/SOURCES/perl-5.22.0-Install-libperl.so-to-shrpdir-on-Linux.patch
@@ -0,0 +1,61 @@
+From 9644657c4 10326749fd321d9c24944ec25afad2f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Thu, 20 Jun 2013 15:22:53 +0200
+Subject: [PATCH] Install libperl.so to shrpdir on Linux
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ Configure   | 7 ++++---
+ Makefile.SH | 2 +-
+ 2 files changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/Configure b/Configure
+index 2f30261..825496e 100755
+--- a/Configure
++++ b/Configure
+@@ -8762,7 +8762,9 @@ esac
+ 
+ # Detect old use of shrpdir via undocumented Configure -Dshrpdir
+ case "$shrpdir" in
+-'') ;;
++'') 
++shrpdir=$archlibexp/CORE
++;;
+ *)	$cat >&4 <<EOM
+ WARNING:  Use of the shrpdir variable for the installation location of
+ the shared $libperl is not supported.  It was never documented and
+@@ -8792,7 +8794,6 @@ esac
+ # Add $xxx to ccdlflags.
+ # If we can't figure out a command-line option, use $shrpenv to
+ # set env LD_RUN_PATH.  The main perl makefile uses this.
+-shrpdir=$archlibexp/CORE
+ xxx=''
+ tmp_shrpenv=''
+ if "$useshrplib"; then
+@@ -8807,7 +8808,7 @@ if "$useshrplib"; then
+ 		xxx="-Wl,-R$shrpdir"
+ 		;;
+ 	bsdos|linux|irix*|dec_osf|gnu*|haiku)
+-		xxx="-Wl,-rpath,$shrpdir"
++		# We want standard path
+ 		;;
+ 	hpux*)
+ 		# hpux doesn't like the default, either.
+diff --git a/Makefile.SH b/Makefile.SH
+index 7733a32..a481183 100755
+--- a/Makefile.SH
++++ b/Makefile.SH
+@@ -288,7 +288,7 @@ ranlib = $ranlib
+ # installman commandline.
+ bin = $installbin
+ scriptdir = $scriptdir
+-shrpdir = $archlibexp/CORE
++shrpdir = $shrpdir
+ privlib = $installprivlib
+ man1dir = $man1dir
+ man1ext = $man1ext
+-- 
+1.8.1.4
diff --git a/SOURCES/perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch b/SOURCES/perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch
new file mode 100644
index 0000000..0a9e69d
--- /dev/null
+++ b/SOURCES/perl-5.22.1-Provide-ExtUtils-MM-methods-as-standalone-ExtUtils-M.patch
@@ -0,0 +1,110 @@
+From 9575301256f67116eccdbb99b38fc804ba3dcf53 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Mon, 18 Apr 2016 16:24:03 +0200
+Subject: [PATCH] Provide ExtUtils::MM methods as standalone
+ ExtUtils::MM::Utils
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+If you cannot afford depending on ExtUtils::MakeMaker, you can
+depend on ExtUtils::MM::Utils instead.
+
+<https://bugzilla.redhat.com/show_bug.cgi?id=1129443>
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ MANIFEST                                         |  1 +
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm | 68 ++++++++++++++++++++++++
+ 2 files changed, 69 insertions(+)
+ create mode 100644 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm
+
+diff --git a/MANIFEST b/MANIFEST
+index 6af238c..d4f0c56 100644
+--- a/MANIFEST
++++ b/MANIFEST
+@@ -784,6 +784,7 @@ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm			MakeMaker methods for OS/2
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm			MakeMaker methods for OS/2
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm			MakeMaker methods for QNX
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm			MakeMaker methods for Unix
++cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm		Independed MM methods
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm			MakeMaker methods for U/WIN
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm			MakeMaker methods for VMS
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm			MakeMaker methods for VOS
+diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm
+new file mode 100644
+index 0000000..6bbc0d8
+--- /dev/null
++++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM/Utils.pm
+@@ -0,0 +1,68 @@
++package ExtUtils::MM::Utils;
++
++require 5.006;
++
++use strict;
++use vars qw($VERSION);
++$VERSION = '7.11_06';
++$VERSION = eval $VERSION;  ## no critic [BuiltinFunctions::ProhibitStringyEval]
++
++=head1 NAME
++
++ExtUtils::MM::Utils - ExtUtils::MM methods without dependency on ExtUtils::MakeMaker
++
++=head1 SYNOPSIS
++
++    require ExtUtils::MM::Utils;
++    MM->maybe_command($file);
++
++=head1 DESCRIPTION
++
++This is a collection of L<ExtUtils::MM> subroutines that are used by many
++other modules but that do not need full-featured L<ExtUtils::MakeMaker>. The
++issue with L<ExtUtils::MakeMaker> is it pulls in Perl header files and that is
++an overkill for small subroutines.
++
++An example is the L<IPC::Cmd> that caused installing GCC just because of
++three-line I<maybe_command()> from L<ExtUtils::MM_Unix>.
++
++The intentions is to use L<ExtUtils::MM::Utils> instead of
++L<ExtUtils::MakeMaker> for these trivial methods. You can still call them via
++L<MM> class name.
++
++=head1 METHODS
++
++=over 4
++
++=item maybe_command
++
++Returns true, if the argument is likely to be a command.
++
++=cut
++
++if (!exists $INC{'ExtUtils/MM.pm'}) {
++    *MM::maybe_command = *ExtUtils::MM::maybe_command = \&maybe_command;
++}
++
++sub maybe_command {
++    my($self,$file) = @_;
++    return $file if -x $file && ! -d $file;
++    return;
++}
++
++1;
++
++=back
++
++=head1 BUGS
++
++These methods are copied from L<ExtUtils::MM_Unix>. Other operating systems
++are not supported yet. The reason is this
++L<a hack for Linux
++distributions|https://bugzilla.redhat.com/show_bug.cgi?id=1129443>.
++
++=head1 SEE ALSO
++
++L<ExtUtils::MakeMaker>, L<ExtUtils::MM>
++
++=cut
+-- 
+2.5.5
+
diff --git a/SOURCES/perl-5.22.1-Replace-EU-MM-dependnecy-with-EU-MM-Utils-in-IPC-Cmd.patch b/SOURCES/perl-5.22.1-Replace-EU-MM-dependnecy-with-EU-MM-Utils-in-IPC-Cmd.patch
new file mode 100644
index 0000000..b702e85
--- /dev/null
+++ b/SOURCES/perl-5.22.1-Replace-EU-MM-dependnecy-with-EU-MM-Utils-in-IPC-Cmd.patch
@@ -0,0 +1,34 @@
+From 216ddd39adb0043930acad70ff242c30a1b0c6cf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Mon, 18 Apr 2016 16:39:32 +0200
+Subject: [PATCH] Replace EU::MM dependnecy with EU::MM::Utils in IPC::Cmd
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This allows to free from a run-time dependency on fat
+ExtUtils::MakeMaker.
+
+<https://bugzilla.redhat.com/show_bug.cgi?id=1129443>
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ cpan/IPC-Cmd/lib/IPC/Cmd.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cpan/IPC-Cmd/lib/IPC/Cmd.pm b/cpan/IPC-Cmd/lib/IPC/Cmd.pm
+index 6a82bdf..b6cd7ef 100644
+--- a/cpan/IPC-Cmd/lib/IPC/Cmd.pm
++++ b/cpan/IPC-Cmd/lib/IPC/Cmd.pm
+@@ -232,7 +232,7 @@ sub can_run {
+     }
+ 
+     require File::Spec;
+-    require ExtUtils::MakeMaker;
++    require ExtUtils::MM::Utils;
+ 
+     my @possibles;
+ 
+-- 
+2.5.5
+
diff --git a/SOURCES/perl-5.27.8-hints-linux-Add-lphtread-to-lddlflags.patch b/SOURCES/perl-5.27.8-hints-linux-Add-lphtread-to-lddlflags.patch
new file mode 100644
index 0000000..f68569f
--- /dev/null
+++ b/SOURCES/perl-5.27.8-hints-linux-Add-lphtread-to-lddlflags.patch
@@ -0,0 +1,61 @@
+From f6bc8fb3d26892ba1a84ba2df76beedd51998dd2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Mon, 29 Jan 2018 16:34:17 +0100
+Subject: [PATCH] hints/linux: Add -lphtread to lddlflags
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Passing -z defs to linker flags causes perl to fail to build if threads are
+enabled:
+
+gcc  -shared -Wl,-z,relro -Wl,-z,defs -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -L/usr/local/lib -fstack-protector-strong Bzip2.o  -o ../../lib/auto/Compress/Raw/Bzip2/Bzip2.so  \
+   -L/usr/lib64 -lbz2 "-L../.." -lperl   \
+
+Bzip2.o: In function `deRef':
+/builddir/build/BUILD/perl-5.26.1/cpan/Compress-Raw-Bzip2/Bzip2.xs:256: undefined reference to `pthread_getspecific'
+
+The reason is Bzip2.xs calls dTHX macro included from thread.h via perl.h that
+expands to pthread_getspecific() function call that is defined in pthread
+library. But the pthread library is not explicitly linked to Bzip.so (see the
+gcc command). This is exactly what -z defs linker flag enforces.
+
+Underlinking ELFs can be dangerous because in case of versioned
+symbols it can cause run-time binding to an improper version symbol or
+even to an symbold from different library.
+
+This patch fixes hints for Linux by adding -lpthreads to lddlflags. It
+also adds -shared there because Configure.sh adds it only hints return
+lddlflags empty.
+
+<https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/3RHZEHLRUHJFF2XGHI5RB6YPDNLDR4HG/>
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ hints/linux.sh | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/hints/linux.sh b/hints/linux.sh
+index 3f38ea07f1..9ec3bc02ef 100644
+--- a/hints/linux.sh
++++ b/hints/linux.sh
+@@ -353,12 +353,16 @@ if [ -f /etc/synoinfo.conf -a -d /usr/syno ]; then
+     echo "$libswanted" >&4
+ fi
+ 
++# Flags needed to produce shared libraries.
++lddlflags='-shared'
++
+ # This script UU/usethreads.cbu will get 'called-back' by Configure
+ # after it has prompted the user for whether to use threads.
+ cat > UU/usethreads.cbu <<'EOCBU'
+ case "$usethreads" in
+ $define|true|[yY]*)
+         ccflags="-D_REENTRANT -D_GNU_SOURCE $ccflags"
++        lddlflags="-lpthread $lddlflags"
+         if echo $libswanted | grep -v pthread >/dev/null
+         then
+             set `echo X "$libswanted "| sed -e 's/ c / pthread c /'`
+-- 
+2.13.6
+
diff --git a/SOURCES/perl-5.28.0-Pass-CFLAGS-to-dtrace.patch b/SOURCES/perl-5.28.0-Pass-CFLAGS-to-dtrace.patch
new file mode 100644
index 0000000..2e9a36d
--- /dev/null
+++ b/SOURCES/perl-5.28.0-Pass-CFLAGS-to-dtrace.patch
@@ -0,0 +1,63 @@
+Subject: [PATCH] Pass CFLAGS to dtrace
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ Makefile.SH | 8 +++++---
+ cflags.SH   | 5 ++++-
+ 2 files changed, 9 insertions(+), 4 deletions(-)
+
+diff --git a/Makefile.SH b/Makefile.SH
+index 5fc6d1c..e89ad70 100755
+--- a/Makefile.SH
++++ b/Makefile.SH
+@@ -462,6 +462,8 @@ CCCMD    = sh $(shellflags) cflags "optimize='$(OPTIMIZE)'" $@
+ 
+ CCCMDSRC = sh $(shellflags) cflags "optimize='$(OPTIMIZE)'" $<
+ 
++DTRACEFLAGS = sh $(shellflags) cflags "optimize='$(OPTIMIZE)'" $@
++
+ CONFIGPM_FROM_CONFIG_SH = lib/Config.pm lib/Config_heavy.pl
+ CONFIGPM = $(CONFIGPM_FROM_CONFIG_SH) lib/Config_git.pl
+ 
+@@ -895,19 +897,19 @@ $(DTRACE_MINI_O): perldtrace.d $(miniperl_objs_nodt)
+ 	-rm -rf mpdtrace
+ 	mkdir mpdtrace
+ 	cp $(miniperl_objs_nodt) mpdtrace/
+-	$(DTRACE) -G -s perldtrace.d -o $(DTRACE_MINI_O) $(miniperl_dtrace_objs)
++	CFLAGS="`$(DTRACEFLAGS)`" $(DTRACE) -G -s perldtrace.d -o $(DTRACE_MINI_O) $(miniperl_dtrace_objs)
+ 
+ $(DTRACE_PERLLIB_O): perldtrace.d $(perllib_objs_nodt)
+ 	-rm -rf libpdtrace
+ 	mkdir libpdtrace
+ 	cp $(perllib_objs_nodt) libpdtrace/
+-	$(DTRACE) -G -s perldtrace.d -o $(DTRACE_PERLLIB_O) $(perllib_dtrace_objs)
++	CFLAGS="`$(DTRACEFLAGS)`" $(DTRACE) -G -s perldtrace.d -o $(DTRACE_PERLLIB_O) $(perllib_dtrace_objs)
+ 
+ $(DTRACE_MAIN_O): perldtrace.d perlmain$(OBJ_EXT)
+ 	-rm -rf maindtrace
+ 	mkdir maindtrace
+ 	cp perlmain$(OBJ_EXT) maindtrace/
+-	$(DTRACE) -G -s perldtrace.d -o $(DTRACE_MAIN_O) $(perlmain_dtrace_objs) ||	      \
++	CFLAGS="`$(DTRACEFLAGS)`" $(DTRACE) -G -s perldtrace.d -o $(DTRACE_MAIN_O) $(perlmain_dtrace_objs) ||	      \
+ 	  ( $(ECHO) "No probes in perlmain$(OBJ_EXT), generating a dummy $(DTRACE_MAIN_O)" && \
+ 	    $(ECHO) >dtrace_main.c &&							      \
+ 	    `$(CCCMD)` $(PLDLFLAGS) dtrace_main.c &&					      \
+diff --git a/cflags.SH b/cflags.SH
+index 3af1e97..b845127 100755
+--- a/cflags.SH
++++ b/cflags.SH
+@@ -519,7 +519,10 @@ for file do
+     toke) optimize=-O0 ;;
+     esac
+ 
+-    echo "$cc -c -DPERL_CORE $ccflags $stdflags $optimize $warn $extra"
++    case "$file" in
++    dtrace_*) echo "$ccflags $stdflags $optimize $warn $extra";;
++    *) echo "$cc -c -DPERL_CORE $ccflags $stdflags $optimize $warn $extra";;
++    esac
+ 
+     . $TOP/config.sh
+ 
+-- 
+2.17.1
+
diff --git a/SOURCES/perl-5.32.0-Add-av_count.patch b/SOURCES/perl-5.32.0-Add-av_count.patch
new file mode 100644
index 0000000..fccdd9c
--- /dev/null
+++ b/SOURCES/perl-5.32.0-Add-av_count.patch
@@ -0,0 +1,175 @@
+From bafffe7f2ca587960177ed03216e2d5692fe6143 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Wed, 19 Aug 2020 11:57:17 -0600
+Subject: [PATCH] Add av_count()
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This returns the number of elements in an array in a clearly named
+function.
+
+av_top_index(), av_tindex() are clearly named, but are less than ideal,
+and came about because no one back then thought of this one, until now
+Paul Evans did.
+
+Petr Písař: Port 87306e0674dfe3af29804b4641347cd5ac9b0521 to 5.32.0.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ av.c      | 17 ++++++++++++++---
+ av.h      |  3 ++-
+ embed.fnc |  3 ++-
+ embed.h   |  2 +-
+ inline.h  | 16 ++++++++++++----
+ proto.h   | 11 ++++++++---
+ 6 files changed, 39 insertions(+), 13 deletions(-)
+
+diff --git a/av.c b/av.c
+index 27b2f12..b5ddaca 100644
+--- a/av.c
++++ b/av.c
+@@ -814,9 +814,10 @@ The Perl equivalent for this is C<$#myarray>.
+ =for apidoc av_len
+ 
+ Same as L</av_top_index>.  Note that, unlike what the name implies, it returns
+-the highest index in the array, so to get the size of the array you need to use
+-S<C<av_len(av) + 1>>.  This is unlike L</sv_len>, which returns what you would
+-expect.
++the highest index in the array.  This is unlike L</sv_len>, which returns what
++you would expect.
++
++B<To get the true number of elements in the array, instead use C<L</av_count>>>.
+ 
+ =cut
+ */
+@@ -1089,6 +1090,16 @@ Perl_av_nonelem(pTHX_ AV *av, SSize_t ix) {
+     return sv;
+ }
+ 
++SSize_t
++Perl_av_top_index(pTHX_ AV *av)
++{
++    PERL_ARGS_ASSERT_AV_TOP_INDEX;
++    assert(SvTYPE(av) == SVt_PVAV);
++
++    return AvFILL(av);
++}
++
++
+ /*
+  * ex: set ts=8 sts=4 sw=4 et:
+  */
+diff --git a/av.h b/av.h
+index 5e39c42..90ebfff 100644
+--- a/av.h
++++ b/av.h
+@@ -81,7 +81,8 @@ Same as C<av_top_index()>.
+                                           
+ #define AvFILL(av)	((SvRMAGICAL((const SV *) (av))) \
+ 			 ? mg_size(MUTABLE_SV(av)) : AvFILLp(av))
+-#define av_tindex(av)   av_top_index(av)
++#define av_top_index(av) AvFILL(av)
++#define av_tindex(av)    av_top_index(av)
+ 
+ /* Note that it doesn't make sense to do this:
+  *      SvGETMAGIC(av); IV x = av_tindex_nomg(av);
+diff --git a/embed.fnc b/embed.fnc
+index 589ab1a..789cd3c 100644
+--- a/embed.fnc
++++ b/embed.fnc
+@@ -541,7 +541,8 @@ Apd	|void	|av_push	|NN AV *av|NN SV *val
+ EXp	|void	|av_reify	|NN AV *av
+ ApdR	|SV*	|av_shift	|NN AV *av
+ Apd	|SV**	|av_store	|NN AV *av|SSize_t key|NULLOK SV *val
+-AidRp	|SSize_t|av_top_index	|NN AV *av
++AMdRp	|SSize_t|av_top_index	|NN AV *av
++AidRp	|Size_t	|av_count	|NN AV *av
+ AmdR	|SSize_t|av_tindex	|NN AV *av
+ Apd	|void	|av_undef	|NN AV *av
+ Apdoex	|SV**	|av_create_and_unshift_one|NN AV **const avp|NN SV *const val
+diff --git a/embed.h b/embed.h
+index 182b12a..329ac40 100644
+--- a/embed.h
++++ b/embed.h
+@@ -48,6 +48,7 @@
+ #define atfork_lock		Perl_atfork_lock
+ #define atfork_unlock		Perl_atfork_unlock
+ #define av_clear(a)		Perl_av_clear(aTHX_ a)
++#define av_count(a)		Perl_av_count(aTHX_ a)
+ #define av_delete(a,b,c)	Perl_av_delete(aTHX_ a,b,c)
+ #define av_exists(a,b)		Perl_av_exists(aTHX_ a,b)
+ #define av_extend(a,b)		Perl_av_extend(aTHX_ a,b)
+@@ -59,7 +60,6 @@
+ #define av_push(a,b)		Perl_av_push(aTHX_ a,b)
+ #define av_shift(a)		Perl_av_shift(aTHX_ a)
+ #define av_store(a,b,c)		Perl_av_store(aTHX_ a,b,c)
+-#define av_top_index(a)		Perl_av_top_index(aTHX_ a)
+ #define av_undef(a)		Perl_av_undef(aTHX_ a)
+ #define av_unshift(a,b)		Perl_av_unshift(aTHX_ a,b)
+ #define block_end(a,b)		Perl_block_end(aTHX_ a,b)
+diff --git a/inline.h b/inline.h
+index 27005d2..35af18a 100644
+--- a/inline.h
++++ b/inline.h
+@@ -39,13 +39,21 @@ SOFTWARE.
+ 
+ /* ------------------------------- av.h ------------------------------- */
+ 
+-PERL_STATIC_INLINE SSize_t
+-Perl_av_top_index(pTHX_ AV *av)
++/*
++=for apidoc av_count
++Returns the number of elements in the array C<av>.  This is the true length of
++the array, including any undefined elements.  It is always the same as
++S<C<av_top_index(av) + 1>>.
++
++=cut
++*/
++PERL_STATIC_INLINE Size_t
++Perl_av_count(pTHX_ AV *av)
+ {
+-    PERL_ARGS_ASSERT_AV_TOP_INDEX;
++    PERL_ARGS_ASSERT_AV_COUNT;
+     assert(SvTYPE(av) == SVt_PVAV);
+ 
+-    return AvFILL(av);
++    return AvFILL(av) + 1;
+ }
+ 
+ /* ------------------------------- cv.h ------------------------------- */
+diff --git a/proto.h b/proto.h
+index 02ef4ed..83ba098 100644
+--- a/proto.h
++++ b/proto.h
+@@ -219,6 +219,13 @@ PERL_CALLCONV SV**	Perl_av_arylen_p(pTHX_ AV *av);
+ PERL_CALLCONV void	Perl_av_clear(pTHX_ AV *av);
+ #define PERL_ARGS_ASSERT_AV_CLEAR	\
+ 	assert(av)
++#ifndef PERL_NO_INLINE_FUNCTIONS
++PERL_STATIC_INLINE Size_t	Perl_av_count(pTHX_ AV *av)
++			__attribute__warn_unused_result__;
++#define PERL_ARGS_ASSERT_AV_COUNT	\
++	assert(av)
++#endif
++
+ PERL_CALLCONV void	Perl_av_create_and_push(pTHX_ AV **const avp, SV *const val);
+ #define PERL_ARGS_ASSERT_AV_CREATE_AND_PUSH	\
+ 	assert(avp); assert(val)
+@@ -284,12 +291,10 @@ PERL_CALLCONV SV**	Perl_av_store(pTHX_ AV *av, SSize_t key, SV *val);
+ 			__attribute__warn_unused_result__; */
+ #define PERL_ARGS_ASSERT_AV_TINDEX
+ 
+-#ifndef PERL_NO_INLINE_FUNCTIONS
+-PERL_STATIC_INLINE SSize_t	Perl_av_top_index(pTHX_ AV *av)
++PERL_CALLCONV SSize_t	Perl_av_top_index(pTHX_ AV *av)
+ 			__attribute__warn_unused_result__;
+ #define PERL_ARGS_ASSERT_AV_TOP_INDEX	\
+ 	assert(av)
+-#endif
+ 
+ PERL_CALLCONV void	Perl_av_undef(pTHX_ AV *av);
+ #define PERL_ARGS_ASSERT_AV_UNDEF	\
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.32.0-pp_split-no-SWITCHSTACK-in-ary-split-.-optimisation.patch b/SOURCES/perl-5.32.0-pp_split-no-SWITCHSTACK-in-ary-split-.-optimisation.patch
new file mode 100644
index 0000000..d4ee4bb
--- /dev/null
+++ b/SOURCES/perl-5.32.0-pp_split-no-SWITCHSTACK-in-ary-split-.-optimisation.patch
@@ -0,0 +1,196 @@
+From d7504df2a5d8985f2a8b04f17acff5e324572c39 Mon Sep 17 00:00:00 2001
+From: Richard Leach <richardleach@users.noreply.github.com>
+Date: Sun, 11 Oct 2020 12:26:27 +0100
+Subject: [PATCH] pp_split: no SWITCHSTACK in @ary = split(...) optimisation
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Petr Písař: 607eaf26a99ff76ab48877e68f1d7b005dc51575 ported to 5.32.0.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pp.c         | 89 +++++++++++++++++++++++++++++-----------------------
+ t/op/split.t | 23 +++++++++++++-
+ 2 files changed, 72 insertions(+), 40 deletions(-)
+
+diff --git a/pp.c b/pp.c
+index df80830..e4863d3 100644
+--- a/pp.c
++++ b/pp.c
+@@ -5985,6 +5985,7 @@ PP(pp_split)
+ 
+     /* handle @ary = split(...) optimisation */
+     if (PL_op->op_private & OPpSPLIT_ASSIGN) {
++	realarray = 1;
+         if (!(PL_op->op_flags & OPf_STACKED)) {
+             if (PL_op->op_private & OPpSPLIT_LEX) {
+                 if (PL_op->op_private & OPpLVAL_INTRO)
+@@ -6007,26 +6008,10 @@ PP(pp_split)
+             oldsave = PL_savestack_ix;
+         }
+ 
+-	realarray = 1;
+-	PUTBACK;
+-	av_extend(ary,0);
+-	(void)sv_2mortal(SvREFCNT_inc_simple_NN(sv));
+-	av_clear(ary);
+-	SPAGAIN;
+ 	if ((mg = SvTIED_mg((const SV *)ary, PERL_MAGIC_tied))) {
+ 	    PUSHMARK(SP);
+ 	    XPUSHs(SvTIED_obj(MUTABLE_SV(ary), mg));
+-	}
+-	else {
+-	    if (!AvREAL(ary)) {
+-		I32 i;
+-		AvREAL_on(ary);
+-		AvREIFY_off(ary);
+-		for (i = AvFILLp(ary); i >= 0; i--)
+-		    AvARRAY(ary)[i] = &PL_sv_undef; /* don't free mere refs */
+-	    }
+-	    /* temporarily switch stacks */
+-	    SAVESWITCHSTACK(PL_curstack, ary);
++	} else {
+ 	    make_mortal = 0;
+ 	}
+     }
+@@ -6358,29 +6343,56 @@ PP(pp_split)
+     LEAVE_SCOPE(oldsave); /* may undo an earlier SWITCHSTACK */
+     SPAGAIN;
+     if (realarray) {
+-	if (!mg) {
+-	    if (SvSMAGICAL(ary)) {
+-		PUTBACK;
++        if (!mg) {
++            PUTBACK;
++            if(AvREAL(ary)) {
++                if (av_count(ary) > 0)
++                    av_clear(ary);
++            } else {
++                AvREAL_on(ary);
++                AvREIFY_off(ary);
++
++                if (AvMAX(ary) > -1) {
++                    /* don't free mere refs */
++                    Zero(AvARRAY(ary), AvMAX(ary), SV*);
++                }
++            }
++            if(AvMAX(ary) < iters)
++                av_extend(ary,iters);
++            SPAGAIN;
++
++            /* Need to copy the SV*s from the stack into ary */
++            Copy(SP + 1 - iters, AvARRAY(ary), iters, SV*);
++            AvFILLp(ary) = iters - 1;
++
++            if (SvSMAGICAL(ary)) {
++                PUTBACK;
+ 		mg_set(MUTABLE_SV(ary));
+ 		SPAGAIN;
+-	    }
+-	    if (gimme == G_ARRAY) {
+-		EXTEND(SP, iters);
+-		Copy(AvARRAY(ary), SP + 1, iters, SV*);
+-		SP += iters;
+-		RETURN;
+-	    }
++            }
++
++            if (gimme != G_ARRAY) {
++                /* SP points to the final SV* pushed to the stack. But the SV*  */
++                /* are not going to be used from the stack. Point SP to below   */
++                /* the first of these SV*.                                      */
++                SP -= iters;
++                PUTBACK;
++            }
+ 	}
+ 	else {
+-	    PUTBACK;
+-	    ENTER_with_name("call_PUSH");
+-	    call_sv(SV_CONST(PUSH),G_SCALAR|G_DISCARD|G_METHOD_NAMED);
+-	    LEAVE_with_name("call_PUSH");
+-	    SPAGAIN;
++            PUTBACK;
++            av_extend(ary,iters);
++            av_clear(ary);
++
++            ENTER_with_name("call_PUSH");
++            call_sv(SV_CONST(PUSH),G_SCALAR|G_DISCARD|G_METHOD_NAMED);
++            LEAVE_with_name("call_PUSH");
++            SPAGAIN;
++
+ 	    if (gimme == G_ARRAY) {
+ 		SSize_t i;
+ 		/* EXTEND should not be needed - we just popped them */
+-		EXTEND(SP, iters);
++		EXTEND_SKIP(SP, iters);
+ 		for (i=0; i < iters; i++) {
+ 		    SV **svp = av_fetch(ary, i, FALSE);
+ 		    PUSHs((svp) ? *svp : &PL_sv_undef);
+@@ -6389,13 +6401,12 @@ PP(pp_split)
+ 	    }
+ 	}
+     }
+-    else {
+-	if (gimme == G_ARRAY)
+-	    RETURN;
+-    }
+ 
+-    GETTARGET;
+-    XPUSHi(iters);
++    if (gimme != G_ARRAY) {
++        GETTARGET;
++        XPUSHi(iters);
++     }
++
+     RETURN;
+ }
+ 
+diff --git a/t/op/split.t b/t/op/split.t
+index 14f9158..7f37512 100644
+--- a/t/op/split.t
++++ b/t/op/split.t
+@@ -7,7 +7,7 @@ BEGIN {
+     set_up_inc('../lib');
+ }
+ 
+-plan tests => 176;
++plan tests => 182;
+ 
+ $FS = ':';
+ 
+@@ -648,6 +648,19 @@ is "@a", '1 2 3', 'assignment to split-to-array (stacked)';
+     is (+@a, 0, "empty utf8 string");
+ }
+ 
++# correct stack adjustments (gh#18232)
++{
++    sub foo { return @_ }
++    my @a = foo(1, scalar split " ", "a b");
++    is(join('', @a), "12", "Scalar split to a sub parameter");
++}
++
++{
++    sub foo { return @_ }
++    my @a = foo(1, scalar(@x = split " ", "a b"));
++    is(join('', @a), "12", "Split to @x then use scalar result as a sub parameter");
++}
++
+ fresh_perl_is(<<'CODE', '', {}, "scalar split stack overflow");
+ map{int"";split//.0>60for"0000000000000000"}split// for"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+ CODE
+@@ -667,3 +680,11 @@ CODE
+         ok(eq_array(\@result,['a','b']), "Resulting in ('a','b')");
+     }
+ }
++
++# check that the (@ary = split) optimisation survives @ary being modified
++
++fresh_perl_is('my @ary; @ary = split(/\w(?{ @ary[1000] = 1 })/, "abc");',
++        '',{},'(@ary = split ...) survives @ary being Renew()ed');
++fresh_perl_is('my @ary; @ary = split(/\w(?{ undef @ary })/, "abc");',
++        '',{},'(@ary = split ...) survives an (undef @ary)');
++
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.32.1-DynaLoader-use-PerlEnv_getenv.patch b/SOURCES/perl-5.32.1-DynaLoader-use-PerlEnv_getenv.patch
new file mode 100644
index 0000000..c07fab9
--- /dev/null
+++ b/SOURCES/perl-5.32.1-DynaLoader-use-PerlEnv_getenv.patch
@@ -0,0 +1,34 @@
+From ab72b7bd043df0f0ad6090a4c95f378624fad9fc Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Sat, 7 Mar 2020 12:54:19 -0700
+Subject: [PATCH] DynaLoader: use PerlEnv_getenv()
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Doing so invokes thread-safe guards
+
+Petr Písař: Ported from b0312014d6c1804920d2b687a5fa5645b445ce9f to
+5.32.1.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ ext/DynaLoader/dlutils.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ext/DynaLoader/dlutils.c b/ext/DynaLoader/dlutils.c
+index 8584f89..1a27fbd 100644
+--- a/ext/DynaLoader/dlutils.c
++++ b/ext/DynaLoader/dlutils.c
+@@ -115,7 +115,7 @@ dl_generic_private_init(pTHX)	/* called by dl_*.xs dl_private_init() */
+ #endif
+ 
+ #if defined(PERL_IN_DL_HPUX_XS) || defined(PERL_IN_DL_DLOPEN_XS)
+-    if ( (perl_dl_nonlazy = getenv("PERL_DL_NONLAZY")) != NULL
++    if ( (perl_dl_nonlazy = PerlEnv_getenv("PERL_DL_NONLAZY")) != NULL
+ 	&& grok_atoUV(perl_dl_nonlazy, &uv, NULL)
+ 	&& uv <= INT_MAX
+     ) {
+-- 
+2.26.2
+
diff --git a/SOURCES/perl-5.32.1-Perl_do_sv_dump-handle-PL_strtab.patch b/SOURCES/perl-5.32.1-Perl_do_sv_dump-handle-PL_strtab.patch
new file mode 100644
index 0000000..9e04761
--- /dev/null
+++ b/SOURCES/perl-5.32.1-Perl_do_sv_dump-handle-PL_strtab.patch
@@ -0,0 +1,44 @@
+From 2ce7bf1ad5fd7aee21975b3dd1c8dceef3aab7e4 Mon Sep 17 00:00:00 2001
+From: David Mitchell <davem@iabyn.com>
+Date: Tue, 9 Mar 2021 16:42:11 +0000
+Subject: [PATCH] Perl_do_sv_dump(): handle PL_strtab
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+When dumping this special hash, the values in the HE entry are refcounts
+rather than SV pointers. sv_dump() used to crash here.
+
+Petr Písař: Ported to 5.32.1 from upstream
+a9bb6a62ae45bb372a5cca98a76d1a79edd89ccb.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ dump.c | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/dump.c b/dump.c
+index f03c3f6..0f15d77 100644
+--- a/dump.c
++++ b/dump.c
+@@ -2224,8 +2224,15 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
+                             PerlIO_printf(file, "[UTF8 \"%s\"] ", sv_uni_display(d, keysv, 6 * SvCUR(keysv), UNI_DISPLAY_QQ));
+ 			if (HvEITER_get(hv) == he)
+ 			    PerlIO_printf(file, "[CURRENT] ");
+-                        PerlIO_printf(file, "HASH = 0x%" UVxf "\n", (UV) hash);
+-                        do_sv_dump(level+1, file, elt, nest+1, maxnest, dumpops, pvlim);
++                        PerlIO_printf(file, "HASH = 0x%" UVxf, (UV) hash);
++
++                        if (sv == (SV*)PL_strtab)
++                            PerlIO_printf(file, " REFCNT = 0x%" UVxf "\n",
++                                (UV)he->he_valu.hent_refcount );
++                        else {
++                            (void)PerlIO_putc(file, '\n');
++                            do_sv_dump(level+1, file, elt, nest+1, maxnest, dumpops, pvlim);
++                        }
+                     }
+ 		}
+ 	      DONEHV:;
+-- 
+2.26.3
+
diff --git a/SOURCES/perl-5.32.1-hv.c-add-a-guard-clause-to-prevent-the-number-of-buc.patch b/SOURCES/perl-5.32.1-hv.c-add-a-guard-clause-to-prevent-the-number-of-buc.patch
new file mode 100644
index 0000000..de7652e
--- /dev/null
+++ b/SOURCES/perl-5.32.1-hv.c-add-a-guard-clause-to-prevent-the-number-of-buc.patch
@@ -0,0 +1,53 @@
+From c5eed6e541fe27d9e9dfd31f42c43f4dfa1f486b Mon Sep 17 00:00:00 2001
+From: Yves Orton <demerphq@gmail.com>
+Date: Sat, 11 Jul 2020 09:26:21 +0200
+Subject: [PATCH] hv.c: add a guard clause to prevent the number of buckets in
+ a hash from getting too large
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This caps it at 1<<28 buckets, eg, ~268M. In theory without a guard clause like
+this we could grow to the point of possibly wrapping around in terms of size,
+not to mention being ridiculously wasteful of memory at larger sizes.
+Even this cap is probably too high. It should probably be something like 1<<24.
+
+Petr Písař: Ported to 5.32.1 from
+aae087f7cec022be14a17deb95cb2208e16b7891.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ hv.c | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/hv.c b/hv.c
+index eccae62..32dbd19 100644
+--- a/hv.c
++++ b/hv.c
+@@ -38,7 +38,13 @@ holds the key and hash value.
+  * NOTE if you change this formula so we split earlier than previously
+  * you MUST change the logic in hv_ksplit()
+  */
+-#define DO_HSPLIT(xhv) ( ((xhv)->xhv_keys + ((xhv)->xhv_keys >> 1))  > (xhv)->xhv_max )
++
++/*  MAX_BUCKET_MAX is the maximum max bucket index, at which point we stop growing the
++ *  number of buckets,
++ */
++#define MAX_BUCKET_MAX ((1<<26)-1)
++#define DO_HSPLIT(xhv) ( ( ((xhv)->xhv_keys + ((xhv)->xhv_keys >> 1)) > (xhv)->xhv_max ) && \
++                           ((xhv)->xhv_max < MAX_BUCKET_MAX) )
+ #define HV_FILL_THRESHOLD 31
+ 
+ static const char S_strtab_error[]
+@@ -1426,6 +1432,8 @@ S_hsplit(pTHX_ HV *hv, STRLEN const oldsize, STRLEN newsize)
+     );
+ 
+     PERL_ARGS_ASSERT_HSPLIT;
++    if (newsize > MAX_BUCKET_MAX+1)
++            return;
+ 
+     PL_nomemok = TRUE;
+     Renew(a, PERL_HV_ARRAY_ALLOC_BYTES(newsize)
+-- 
+2.26.2
+
diff --git a/SOURCES/perl-5.33.0-Add-missing-MANIFEST-entry-from-fix-for-debugger.patch b/SOURCES/perl-5.33.0-Add-missing-MANIFEST-entry-from-fix-for-debugger.patch
new file mode 100644
index 0000000..13a082a
--- /dev/null
+++ b/SOURCES/perl-5.33.0-Add-missing-MANIFEST-entry-from-fix-for-debugger.patch
@@ -0,0 +1,30 @@
+From 3c53c6179afbdbef748c110abdb849cb463c2727 Mon Sep 17 00:00:00 2001
+From: Todd Rinaldo <toddr@cpan.org>
+Date: Thu, 30 Jul 2020 17:42:47 -0500
+Subject: [PATCH] Add missing MANIFEST entry from fix for debugger
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Add on fix to #17901
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ MANIFEST | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/MANIFEST b/MANIFEST
+index 990a75ad52..12601e46b4 100644
+--- a/MANIFEST
++++ b/MANIFEST
+@@ -4826,6 +4826,7 @@ lib/perl5db/t/symbol-table-bug	Tests for the Perl debugger
+ lib/perl5db/t/taint		Tests for the Perl debugger
+ lib/perl5db/t/test-a-statement-1	Tests for the Perl debugger
+ lib/perl5db/t/test-a-statement-2	Tests for the Perl debugger
++lib/perl5db/t/test-a-statement-3	Tests for the Perl debugger
+ lib/perl5db/t/test-dieLevel-option-1	Tests for the Perl debugger
+ lib/perl5db/t/test-frame-option-1	Tests for the Perl debugger
+ lib/perl5db/t/test-l-statement-1	Tests for the Perl debugger
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-After-running-an-action-in-the-debugger-turn-it-off.patch b/SOURCES/perl-5.33.0-After-running-an-action-in-the-debugger-turn-it-off.patch
new file mode 100644
index 0000000..9df2549
--- /dev/null
+++ b/SOURCES/perl-5.33.0-After-running-an-action-in-the-debugger-turn-it-off.patch
@@ -0,0 +1,90 @@
+From b248789b64d6bd277c52bfe608ed3192023af1bd Mon Sep 17 00:00:00 2001
+From: "E. Choroba" <choroba@matfyz.cz>
+Date: Fri, 26 Jun 2020 21:19:24 +0200
+Subject: [PATCH] After running an action in the debugger, turn it off
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+When running with "c", there was no problem, but when running with "n"
+or "s", once the action was executed, it kept executing on the
+following lines, which wasn't expected. Clearing $action here prevents
+this unwanted behaviour.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ lib/perl5db.pl                   |  3 ++-
+ lib/perl5db.t                    | 22 ++++++++++++++++++++++
+ lib/perl5db/t/test-a-statement-3 |  6 ++++++
+ 3 files changed, 30 insertions(+), 1 deletion(-)
+ create mode 100644 lib/perl5db/t/test-a-statement-3
+
+diff --git a/lib/perl5db.pl b/lib/perl5db.pl
+index 69a9bb6e64..e04a0e17fa 100644
+--- a/lib/perl5db.pl
++++ b/lib/perl5db.pl
+@@ -529,7 +529,7 @@ BEGIN {
+ use vars qw($VERSION $header);
+ 
+ # bump to X.XX in blead, only use X.XX_XX in maint
+-$VERSION = '1.57';
++$VERSION = '1.58';
+ 
+ $header = "perl5db.pl version $VERSION";
+ 
+@@ -2708,6 +2708,7 @@ If there are any preprompt actions, execute those as well.
+         # The &-call is here to ascertain the mutability of @_.
+         &DB::eval;
+     }
++    undef $action;
+ 
+     # Are we nested another level (e.g., did we evaluate a function
+     # that had a breakpoint in it at the debugger prompt)?
+diff --git a/lib/perl5db.t b/lib/perl5db.t
+index 421229a54a..913a301d98 100644
+--- a/lib/perl5db.t
++++ b/lib/perl5db.t
+@@ -2799,6 +2799,28 @@ SKIP:
+     );
+ }
+ 
++{
++    # GitHub #17901
++    my $wrapper = DebugWrap->new(
++        {
++            cmds =>
++            [
++                'a 4 $s++',
++                ('s') x 5,
++                'x $s',
++                'q'
++            ],
++            prog => '../lib/perl5db/t/test-a-statement-3',
++            switches => [ '-d' ],
++            stderr => 0,
++        }
++    );
++    $wrapper->contents_like(
++        qr/^0 +2$/m,
++        'Test that the a command runs only on the given lines.',
++    );
++}
++
+ {
+     # perl 5 RT #126735 regression bug.
+     local $ENV{PERLDB_OPTS} = "NonStop=0 RemotePort=non-existent-host.tld:9001";
+diff --git a/lib/perl5db/t/test-a-statement-3 b/lib/perl5db/t/test-a-statement-3
+new file mode 100644
+index 0000000000..b188c1c5c5
+--- /dev/null
++++ b/lib/perl5db/t/test-a-statement-3
+@@ -0,0 +1,6 @@
++use strict; use warnings;
++
++for my $x (1 .. 2) {
++    my $y = $x + 1;
++    my $x = $x - 1;
++}
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-Clearing-DB-action-at-the-end-is-no-longer-needed.patch b/SOURCES/perl-5.33.0-Clearing-DB-action-at-the-end-is-no-longer-needed.patch
new file mode 100644
index 0000000..fe36ec4
--- /dev/null
+++ b/SOURCES/perl-5.33.0-Clearing-DB-action-at-the-end-is-no-longer-needed.patch
@@ -0,0 +1,33 @@
+From 589464a875768e4b4a609d972488e3b592103097 Mon Sep 17 00:00:00 2001
+From: "E. Choroba" <choroba@matfyz.cz>
+Date: Mon, 27 Jul 2020 11:32:51 +0200
+Subject: [PATCH] Clearing DB::action at the end is no longer needed
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+as it's cleared right after it's been run.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ lib/perl5db.pl | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/lib/perl5db.pl b/lib/perl5db.pl
+index e04a0e17fa..af3b972da0 100644
+--- a/lib/perl5db.pl
++++ b/lib/perl5db.pl
+@@ -3347,10 +3347,6 @@ use B<o> I<inhibit_exit> to avoid stopping after program termination,
+ B<h q>, B<h R> or B<h o> to get additional info.
+ EOP
+ 
+-        # Set the DB::eval context appropriately.
+-        # At program termination disable any user actions.
+-        $DB::action = undef;
+-
+         $DB::package     = 'main';
+         $DB::usercontext = DB::_calc_usercontext($DB::package);
+     } ## end elsif ($package eq 'DB::fake')
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-IO-Handle-Fix-a-spurious-error-reported-for-regular-.patch b/SOURCES/perl-5.33.0-IO-Handle-Fix-a-spurious-error-reported-for-regular-.patch
new file mode 100644
index 0000000..f19fbce
--- /dev/null
+++ b/SOURCES/perl-5.33.0-IO-Handle-Fix-a-spurious-error-reported-for-regular-.patch
@@ -0,0 +1,74 @@
+From 8a2562bec7cd9f8eff6812f340f99dddd028bb33 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Thu, 6 Aug 2020 10:51:56 +0200
+Subject: [PATCH] IO::Handle: Fix a spurious error reported for regular file
+ handles
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+89341f87 fix for GH #6799 introduced a regression when calling error()
+on an IO::Handle object that was opened for reading a regular file:
+
+$ perl -e 'open my $f, q{<}, q{/etc/hosts} or die; print qq{error\n} if $f->error'
+error
+
+In case of a regular file opened for reading, IoOFP() returns NULL and
+PerlIO_error(NULL) reports -1. Compare to the case of a file opened
+for writing when both IoIFP() and IoOFP() return non-NULL, equaled
+pointer.
+
+This patch fixes handling the case of the NULL output stream.
+
+GH #18019
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ dist/IO/IO.xs     |  4 ++--
+ dist/IO/t/io_xs.t | 10 +++++++++-
+ 2 files changed, 11 insertions(+), 3 deletions(-)
+
+diff --git a/dist/IO/IO.xs b/dist/IO/IO.xs
+index 9158106416..fb009774c4 100644
+--- a/dist/IO/IO.xs
++++ b/dist/IO/IO.xs
+@@ -397,9 +397,9 @@ ferror(handle)
+     CODE:
+ 	if (in)
+ #ifdef PerlIO
+-	    RETVAL = PerlIO_error(in) || (in != out && PerlIO_error(out));
++	    RETVAL = PerlIO_error(in) || (out && in != out && PerlIO_error(out));
+ #else
+-	    RETVAL = ferror(in) || (in != out && ferror(out));
++	    RETVAL = ferror(in) || (out && in != out && ferror(out));
+ #endif
+ 	else {
+ 	    RETVAL = -1;
+diff --git a/dist/IO/t/io_xs.t b/dist/IO/t/io_xs.t
+index a8833b0651..4657088629 100644
+--- a/dist/IO/t/io_xs.t
++++ b/dist/IO/t/io_xs.t
+@@ -11,7 +11,7 @@ BEGIN {
+     }
+ }
+ 
+-use Test::More tests => 8;
++use Test::More tests => 10;
+ use IO::File;
+ use IO::Seekable;
+ 
+@@ -69,3 +69,11 @@ SKIP: {
+     ok(!$fh->error, "check clearerr removed the error");
+     close $fh; # silently ignore the error
+ }
++
++{
++    # [GH #18019] IO::Handle->error misreported an error after successully
++    # opening a regular file for reading. It was a regression in GH #6799 fix.
++    ok(open(my $fh, '<', __FILE__), "a regular file opened for reading");
++    ok(!$fh->error, "no spurious error reported by error()");
++    close $fh;
++}
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-IO-Handle-clear-the-error-on-both-input-and-output-s.patch b/SOURCES/perl-5.33.0-IO-Handle-clear-the-error-on-both-input-and-output-s.patch
new file mode 100644
index 0000000..a1c2177
--- /dev/null
+++ b/SOURCES/perl-5.33.0-IO-Handle-clear-the-error-on-both-input-and-output-s.patch
@@ -0,0 +1,80 @@
+From fc5f3468dcbee38eb202cfd552a5b8dbff990c7b Mon Sep 17 00:00:00 2001
+From: Tony Cook <tony@develop-help.com>
+Date: Tue, 12 May 2020 10:59:08 +1000
+Subject: [PATCH 2/2] IO::Handle: clear the error on both input and output
+ streams
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Similarly to GH #6799 clearerr() only cleared the error status
+of the input stream, so clear both.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ dist/IO/IO.xs     | 14 +++++++++++---
+ dist/IO/t/io_xs.t |  8 +++++---
+ 2 files changed, 16 insertions(+), 6 deletions(-)
+
+diff --git a/dist/IO/IO.xs b/dist/IO/IO.xs
+index 99d523d2c1..9158106416 100644
+--- a/dist/IO/IO.xs
++++ b/dist/IO/IO.xs
+@@ -410,13 +410,21 @@ ferror(handle)
+ 
+ int
+ clearerr(handle)
+-	InputStream	handle
++	SV *	handle
++    PREINIT:
++        IO *io = sv_2io(handle);
++        InputStream in = IoIFP(io);
++        OutputStream out = IoOFP(io);
+     CODE:
+ 	if (handle) {
+ #ifdef PerlIO
+-	    PerlIO_clearerr(handle);
++	    PerlIO_clearerr(in);
++            if (in != out)
++                PerlIO_clearerr(out);
+ #else
+-	    clearerr(handle);
++	    clearerr(in);
++            if (in != out)
++                clearerr(out);
+ #endif
+ 	    RETVAL = 0;
+ 	}
+diff --git a/dist/IO/t/io_xs.t b/dist/IO/t/io_xs.t
+index f890e92558..a8833b0651 100644
+--- a/dist/IO/t/io_xs.t
++++ b/dist/IO/t/io_xs.t
+@@ -11,7 +11,7 @@ BEGIN {
+     }
+ }
+ 
+-use Test::More tests => 7;
++use Test::More tests => 8;
+ use IO::File;
+ use IO::Seekable;
+ 
+@@ -58,12 +58,14 @@ SKIP: {
+     # This isn't really a Linux/BSD specific test, but /dev/full is (I
+     # hope) reasonably well defined on these.  Patches welcome if your platform
+     # also supports it (or something like it)
+-    skip "no /dev/full or not a /dev/full platform", 2
++    skip "no /dev/full or not a /dev/full platform", 3
+       unless $^O =~ /^(linux|netbsd|freebsd)$/ && -c "/dev/full";
+     open my $fh, ">", "/dev/full"
+-      or skip "Could not open /dev/full: $!", 2;
++      or skip "Could not open /dev/full: $!", 3;
+     $fh->print("a" x 1024);
+     ok(!$fh->flush, "should fail to flush");
+     ok($fh->error, "stream should be in error");
++    $fh->clearerr;
++    ok(!$fh->error, "check clearerr removed the error");
+     close $fh; # silently ignore the error
+ }
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-IO-Socket-UNIX-synchronize-behavior-with-module-docu.patch b/SOURCES/perl-5.33.0-IO-Socket-UNIX-synchronize-behavior-with-module-docu.patch
new file mode 100644
index 0000000..75be229
--- /dev/null
+++ b/SOURCES/perl-5.33.0-IO-Socket-UNIX-synchronize-behavior-with-module-docu.patch
@@ -0,0 +1,61 @@
+From c6439962c995d4d7052af9fb3f92da93c1584b84 Mon Sep 17 00:00:00 2001
+From: vividsnow <vividsnow@gmail.com>
+Date: Fri, 31 Jul 2020 00:37:58 +0300
+Subject: [PATCH] IO::Socket::UNIX: synchronize behavior with module
+ documentation (#17787)
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+* synchronize behavior with module documentation
+
+IO::Socket docs states that passing Blocking => 0 will be set socket to non-blocking mode
+
+* Update AUTHORS
+* bump version
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ AUTHORS                       | 1 +
+ dist/IO/lib/IO/Socket/UNIX.pm | 6 +++++-
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/AUTHORS b/AUTHORS
+index 577ba7d0ee..299fdec8a8 100644
+--- a/AUTHORS
++++ b/AUTHORS
+@@ -1293,6 +1293,7 @@ Ville Skyttä                   <scop@cs132170.pp.htv.fi>
+ Vincent Pit                    <perl@profvince.com>
+ Vishal Bhatia                  <vishal@deja.com>
+ Vitali Peil                    <vitali.peil@uni-bielefeld.de>
++vividsnow                      <vividsnow@gmail.com>
+ Vlad Harchev                   <hvv@hippo.ru>
+ Vladimir Alexiev               <vladimir@cs.ualberta.ca>
+ Vladimir Marek                 <vlmarek@volny.cz>
+diff --git a/dist/IO/lib/IO/Socket/UNIX.pm b/dist/IO/lib/IO/Socket/UNIX.pm
+index 04b36eaf74..14d0b27a8c 100644
+--- a/dist/IO/lib/IO/Socket/UNIX.pm
++++ b/dist/IO/lib/IO/Socket/UNIX.pm
+@@ -11,7 +11,7 @@ use IO::Socket;
+ use Carp;
+ 
+ our @ISA = qw(IO::Socket);
+-our $VERSION = "1.41";
++our $VERSION = "1.42";
+ 
+ IO::Socket::UNIX->register_domain( AF_UNIX );
+ 
+@@ -30,6 +30,10 @@ sub configure {
+     $sock->socket(AF_UNIX, $type, 0) or
+ 	return undef;
+ 
++    if(exists $arg->{Blocking}) {
++        $sock->blocking($arg->{Blocking}) or
++	    return undef;
++    }
+     if(exists $arg->{Local}) {
+ 	my $addr = sockaddr_un($arg->{Local});
+ 	$sock->bind($addr) or
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-MUTABLE_PTR-Rmv-non-standard-syntax.patch b/SOURCES/perl-5.33.0-MUTABLE_PTR-Rmv-non-standard-syntax.patch
new file mode 100644
index 0000000..dd5986a
--- /dev/null
+++ b/SOURCES/perl-5.33.0-MUTABLE_PTR-Rmv-non-standard-syntax.patch
@@ -0,0 +1,32 @@
+From 6c2255e0e80e0dc00c7fd96e073f1f524bbaa3e0 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Mon, 29 Jun 2020 09:21:24 -0600
+Subject: [PATCH] MUTABLE_PTR() Rmv non-standard syntax
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Variables in C are beginning with an underscore are reserved for use by
+the C implementation.  Change this non-conformant usage.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ handy.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/handy.h b/handy.h
+index 287e2e206d..890b2b11a2 100644
+--- a/handy.h
++++ b/handy.h
+@@ -54,7 +54,7 @@ Null SV pointer.  (No longer available when C<PERL_CORE> is defined.)
+  */
+ 
+ #if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN)
+-#  define MUTABLE_PTR(p) ({ void *_p = (p); _p; })
++#  define MUTABLE_PTR(p) ({ void *p_ = (p); p_; })
+ #else
+ #  define MUTABLE_PTR(p) ((void *) (p))
+ #endif
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-Update-pod-for-SvTRUE-to-indicate-single-param-evalu.patch b/SOURCES/perl-5.33.0-Update-pod-for-SvTRUE-to-indicate-single-param-evalu.patch
new file mode 100644
index 0000000..551b315
--- /dev/null
+++ b/SOURCES/perl-5.33.0-Update-pod-for-SvTRUE-to-indicate-single-param-evalu.patch
@@ -0,0 +1,33 @@
+From b26a606d84ae1a6da560c7cd71d1a33c0dc7178e Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Sun, 14 Jun 2020 12:26:02 -0600
+Subject: [PATCH] Update pod for SvTRUE, to indicate single param evaluation
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+5.32 changed this macro into an inline function so that 'sv' only gets
+evaluated once, but didn't update the documentation to reflect that.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ sv.h | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/sv.h b/sv.h
+index 3721b2fb1b..ad8accbf1a 100644
+--- a/sv.h
++++ b/sv.h
+@@ -1607,7 +1607,8 @@ false.  See C<L</SvOK>> for a defined/undefined test.  Handles 'get' magic
+ unless the scalar is already C<SvPOK>, C<SvIOK> or C<SvNOK> (the public, not the
+ private flags).
+ 
+-See C<L</SvTRUEx>> for a version which guarantees to evaluate C<sv> only once.
++As of Perl 5.32, this is guaranteed to evaluate C<sv> only once.  Prior to that
++release, use C<L</SvTRUEx>> for single evaluation.
+ 
+ =for apidoc Am|bool|SvTRUE_nomg|SV* sv
+ Returns a boolean indicating whether Perl would evaluate the SV as true or
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-XSUB.h-fix-MARK-and-items-variables-inside-BOOT-XSUB.patch b/SOURCES/perl-5.33.0-XSUB.h-fix-MARK-and-items-variables-inside-BOOT-XSUB.patch
new file mode 100644
index 0000000..fe4d653
--- /dev/null
+++ b/SOURCES/perl-5.33.0-XSUB.h-fix-MARK-and-items-variables-inside-BOOT-XSUB.patch
@@ -0,0 +1,45 @@
+From 313464947382fab07299af0061f419a55540356a Mon Sep 17 00:00:00 2001
+From: Tomasz Konojacki <me@xenu.pl>
+Date: Mon, 27 Apr 2020 08:31:47 +0200
+Subject: [PATCH] XSUB.h: fix MARK and items variables inside BOOT XSUBs
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+ax was incremented by Perl_xs_handshake() and because of that
+MARK and items were off by one inside BOOT XSUBs.
+
+fixes #17755
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ XSUB.h | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/XSUB.h b/XSUB.h
+index e3147ce9fb..5f17a5acde 100644
+--- a/XSUB.h
++++ b/XSUB.h
+@@ -160,16 +160,16 @@ is a lexical C<$_> in scope.
+    PL_xsubfilename. */
+ #define dXSBOOTARGSXSAPIVERCHK  \
+ 	I32 ax = XS_BOTHVERSION_SETXSUBFN_POPMARK_BOOTCHECK;	\
+-	SV **mark = PL_stack_base + ax; dSP; dITEMS
++	SV **mark = PL_stack_base + ax - 1; dSP; dITEMS
+ #define dXSBOOTARGSAPIVERCHK  \
+ 	I32 ax = XS_APIVERSION_SETXSUBFN_POPMARK_BOOTCHECK;	\
+-	SV **mark = PL_stack_base + ax; dSP; dITEMS
++	SV **mark = PL_stack_base + ax - 1; dSP; dITEMS
+ /* dXSBOOTARGSNOVERCHK has no API in xsubpp to choose it so do
+ #undef dXSBOOTARGSXSAPIVERCHK
+ #define dXSBOOTARGSXSAPIVERCHK dXSBOOTARGSNOVERCHK */
+ #define dXSBOOTARGSNOVERCHK  \
+ 	I32 ax = XS_SETXSUBFN_POPMARK;  \
+-	SV **mark = PL_stack_base + ax; dSP; dITEMS
++	SV **mark = PL_stack_base + ax - 1; dSP; dITEMS
+ 
+ #define dXSTARG SV * const targ = ((PL_op->op_private & OPpENTERSUB_HASTARG) \
+ 			     ? PAD_SV(PL_op->op_targ) : sv_newmortal())
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-ext-XS-APItest-t-utf8_warn_base.pl-Fix-a-couple-test.patch b/SOURCES/perl-5.33.0-ext-XS-APItest-t-utf8_warn_base.pl-Fix-a-couple-test.patch
new file mode 100644
index 0000000..338f368
--- /dev/null
+++ b/SOURCES/perl-5.33.0-ext-XS-APItest-t-utf8_warn_base.pl-Fix-a-couple-test.patch
@@ -0,0 +1,38 @@
+From 73b535d23d98bd3bdc31a27da26222e2e56166ac Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Tue, 30 Jun 2020 13:58:50 -0600
+Subject: [PATCH] ext/XS-APItest/t/utf8_warn_base.pl: Fix a couple tests
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These had invalid values, which didn't show up execpt on EBCDIC
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ ext/XS-APItest/t/utf8_warn_base.pl | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/ext/XS-APItest/t/utf8_warn_base.pl b/ext/XS-APItest/t/utf8_warn_base.pl
+index d86871cd0f..a0f732282e 100644
+--- a/ext/XS-APItest/t/utf8_warn_base.pl
++++ b/ext/XS-APItest/t/utf8_warn_base.pl
+@@ -486,7 +486,6 @@ my @tests;
+               : I8_to_native(
+                 "\xff\xa7\xbf\xbf\xbf\xbf\xbf\xbf\xbf\xbf\xbf\xbf\xbf\xbf"),
+               0x7FFFFFFFFFFFFFFF,
+-              (isASCII) ? 1 : 2,
+             ],
+             [ "first 64 bit code point",
+               (isASCII)
+@@ -525,7 +524,6 @@ my @tests;
+                     I8_to_native(
+                     "\xff\xa0\xa0\xa0\xa0\xa0\xa1\xa0\xa0\xa0\xa0\xa0\xa0\xa0"),
+                     0x800000000,
+-                      40000000
+                 ],
+                 [ "requires at least 32 bits",
+                     I8_to_native(
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-fix-C-i-obj-where-obj-is-a-lexical.patch b/SOURCES/perl-5.33.0-fix-C-i-obj-where-obj-is-a-lexical.patch
new file mode 100644
index 0000000..f7acd14
--- /dev/null
+++ b/SOURCES/perl-5.33.0-fix-C-i-obj-where-obj-is-a-lexical.patch
@@ -0,0 +1,193 @@
+From b334474a337421c6643b872388245fb2c11bf995 Mon Sep 17 00:00:00 2001
+From: Tony Cook <tony@develop-help.com>
+Date: Mon, 30 Mar 2020 16:32:46 +1100
+Subject: [PATCH] fix C<i $obj> where $obj is a lexical
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+the DB::eval function depends on the special behaviour of eval ""
+within the DB package, which evaluates the string within the context
+of the first non-DB sub or eval scope, working up the call stack.
+
+The debugger refactor moved handling for the 'i' command from the
+DB package to the DB::Obj package, so the eval in DB::eval was
+working in the context of the DB::Obj::cmd_i function, not in the
+calling scope.
+
+Fixed by moving the handling for the i command back to DB.
+
+Fixes #17661.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ MANIFEST               |  1 +
+ lib/perl5db.pl         | 65 +++++++++++++++++++++---------------------
+ lib/perl5db.t          | 20 +++++++++++++
+ lib/perl5db/t/gh-17661 | 14 +++++++++
+ 4 files changed, 68 insertions(+), 32 deletions(-)
+ create mode 100644 lib/perl5db/t/gh-17661
+
+diff --git a/MANIFEST b/MANIFEST
+index 8c71995174..96af3618bd 100644
+--- a/MANIFEST
++++ b/MANIFEST
+@@ -4808,6 +4808,7 @@ lib/perl5db/t/eval-line-bug	Tests for the Perl debugger
+ lib/perl5db/t/fact		Tests for the Perl debugger
+ lib/perl5db/t/filename-line-breakpoint		Tests for the Perl debugger
+ lib/perl5db/t/gh-17660		Tests for the Perl debugger
++lib/perl5db/t/gh-17661		Tests for the Perl debugger
+ lib/perl5db/t/load-modules	Tests for the Perl debugger
+ lib/perl5db/t/lsub-n		Test script used by perl5db.t
+ lib/perl5db/t/lvalue-bug	Tests for the Perl debugger
+diff --git a/lib/perl5db.pl b/lib/perl5db.pl
+index 96e56d559f..b647d24fb8 100644
+--- a/lib/perl5db.pl
++++ b/lib/perl5db.pl
+@@ -2512,6 +2512,37 @@ EOP
+     return;
+ }
+ 
++=head3 C<_DB__handle_i_command> - inheritance display
++
++Display the (nested) parentage of the module or object given.
++
++=cut
++
++sub _DB__handle_i_command {
++    my $self = shift;
++
++    my $line = $self->cmd_args;
++    require mro;
++    foreach my $isa ( split( /\s+/, $line ) ) {
++        $evalarg = "$isa";
++        # The &-call is here to ascertain the mutability of @_.
++        ($isa) = &DB::eval;
++        no strict 'refs';
++        print join(
++            ', ',
++            map {
++                "$_"
++                  . (
++                    defined( ${"$_\::VERSION"} )
++                    ? ' ' . ${"$_\::VERSION"}
++                    : undef )
++              } @{mro::get_linear_isa(ref($isa) || $isa)}
++        );
++        print "\n";
++    }
++    next CMD;
++}
++
+ # 't' is type.
+ # 'm' is method.
+ # 'v' is the value (i.e: method name or subroutine ref).
+@@ -2531,6 +2562,7 @@ BEGIN
+     'W' => { t => 'm', v => '_handle_W_command', },
+     'c' => { t => 's', v => \&_DB__handle_c_command, },
+     'f' => { t => 's', v => \&_DB__handle_f_command, },
++    'i' => { t => 's', v => \&_DB__handle_i_command, },
+     'm' => { t => 's', v => \&_DB__handle_m_command, },
+     'n' => { t => 'm', v => '_handle_n_command', },
+     'p' => { t => 'm', v => '_handle_p_command', },
+@@ -2551,7 +2583,7 @@ BEGIN
+         { t => 's', v => \&_DB__handle_restart_and_rerun_commands, },
+         } qw(R rerun)),
+     (map { $_ => {t => 'm', v => '_handle_cmd_wrapper_commands' }, }
+-        qw(a A b B e E h i l L M o O v w W)),
++        qw(a A b B e E h l L M o O v w W)),
+ );
+ };
+ 
+@@ -5468,37 +5500,6 @@ sub cmd_h {
+     }
+ } ## end sub cmd_h
+ 
+-=head3 C<cmd_i> - inheritance display
+-
+-Display the (nested) parentage of the module or object given.
+-
+-=cut
+-
+-sub cmd_i {
+-    my $cmd  = shift;
+-    my $line = shift;
+-
+-    require mro;
+-
+-    foreach my $isa ( split( /\s+/, $line ) ) {
+-        $evalarg = $isa;
+-        # The &-call is here to ascertain the mutability of @_.
+-        ($isa) = &DB::eval;
+-        no strict 'refs';
+-        print join(
+-            ', ',
+-            map {
+-                "$_"
+-                  . (
+-                    defined( ${"$_\::VERSION"} )
+-                    ? ' ' . ${"$_\::VERSION"}
+-                    : undef )
+-              } @{mro::get_linear_isa(ref($isa) || $isa)}
+-        );
+-        print "\n";
+-    }
+-} ## end sub cmd_i
+-
+ =head3 C<cmd_l> - list lines (command)
+ 
+ Most of the command is taken up with transforming all the different line
+diff --git a/lib/perl5db.t b/lib/perl5db.t
+index 913a301d98..ffa659a215 100644
+--- a/lib/perl5db.t
++++ b/lib/perl5db.t
+@@ -2946,6 +2946,26 @@ SKIP:
+        );
+ }
+ 
++{
++    # gh #17661
++    my $wrapper = DebugWrap->new(
++        {
++            cmds =>
++            [
++                'c',
++                'i $obj',
++                'q',
++            ],
++            prog => '../lib/perl5db/t/gh-17661',
++        }
++    );
++
++    $wrapper->output_like(
++        qr/C5, C1, C2, C3, C4/,
++        q/check for reasonable result/,
++       );
++}
++
+ SKIP:
+ {
+     $Config{usethreads}
+diff --git a/lib/perl5db/t/gh-17661 b/lib/perl5db/t/gh-17661
+new file mode 100644
+index 0000000000..0d85977b35
+--- /dev/null
++++ b/lib/perl5db/t/gh-17661
+@@ -0,0 +1,14 @@
++use v5.10.0;
++
++{ package C1; sub c1 { } our @ISA = qw(C2) }
++{ package C2; sub c2 { } our @ISA = qw(C3) }
++{ package C3; sub c3 { } our @ISA = qw(  ) }
++{ package C4; sub c4 { } our @ISA = qw(  ) }
++{ package C5; sub c5 { } our @ISA = qw(C1 C4) }
++
++my $obj = bless {}, 'C5';
++$main::global = bless {}, 'C5';
++
++$DB::single = 1;
++
++say "Done.";
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-make-fh-error-report-errors-from-both-input-and-outp.patch b/SOURCES/perl-5.33.0-make-fh-error-report-errors-from-both-input-and-outp.patch
new file mode 100644
index 0000000..8f52323
--- /dev/null
+++ b/SOURCES/perl-5.33.0-make-fh-error-report-errors-from-both-input-and-outp.patch
@@ -0,0 +1,87 @@
+From 89341f87f9fc65c4d7133e497bb04586e86b8052 Mon Sep 17 00:00:00 2001
+From: Tony Cook <tony@develop-help.com>
+Date: Tue, 12 May 2020 10:29:17 +1000
+Subject: [PATCH 1/2] make $fh->error report errors from both input and output
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+For character devices and sockets perl uses separate PerlIO objects
+for input and output so they can be buffered separately.
+
+The IO::Handle::error() method only checked the input stream, so
+if a write error occurs error() would still returned false.
+
+Change this so both the input and output streams are checked.
+
+fixes #6799
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ dist/IO/IO.xs     | 12 ++++++++----
+ dist/IO/t/io_xs.t | 19 ++++++++++++++++++-
+ 2 files changed, 26 insertions(+), 5 deletions(-)
+
+diff --git a/dist/IO/IO.xs b/dist/IO/IO.xs
+index 68b7352c38..99d523d2c1 100644
+--- a/dist/IO/IO.xs
++++ b/dist/IO/IO.xs
+@@ -389,13 +389,17 @@ ungetc(handle, c)
+ 
+ int
+ ferror(handle)
+-	InputStream	handle
++	SV *	handle
++    PREINIT:
++        IO *io = sv_2io(handle);
++        InputStream in = IoIFP(io);
++        OutputStream out = IoOFP(io);
+     CODE:
+-	if (handle)
++	if (in)
+ #ifdef PerlIO
+-	    RETVAL = PerlIO_error(handle);
++	    RETVAL = PerlIO_error(in) || (in != out && PerlIO_error(out));
+ #else
+-	    RETVAL = ferror(handle);
++	    RETVAL = ferror(in) || (in != out && ferror(out));
+ #endif
+ 	else {
+ 	    RETVAL = -1;
+diff --git a/dist/IO/t/io_xs.t b/dist/IO/t/io_xs.t
+index 1e3c49a4a7..f890e92558 100644
+--- a/dist/IO/t/io_xs.t
++++ b/dist/IO/t/io_xs.t
+@@ -11,7 +11,7 @@ BEGIN {
+     }
+ }
+ 
+-use Test::More tests => 5;
++use Test::More tests => 7;
+ use IO::File;
+ use IO::Seekable;
+ 
+@@ -50,3 +50,20 @@ SKIP:
+     ok($fh->sync, "sync to a read only handle")
+ 	or diag "sync(): ", $!;
+ }
++
++
++SKIP: {
++    # gh 6799
++    #
++    # This isn't really a Linux/BSD specific test, but /dev/full is (I
++    # hope) reasonably well defined on these.  Patches welcome if your platform
++    # also supports it (or something like it)
++    skip "no /dev/full or not a /dev/full platform", 2
++      unless $^O =~ /^(linux|netbsd|freebsd)$/ && -c "/dev/full";
++    open my $fh, ">", "/dev/full"
++      or skip "Could not open /dev/full: $!", 2;
++    $fh->print("a" x 1024);
++    ok(!$fh->flush, "should fail to flush");
++    ok($fh->error, "stream should be in error");
++    close $fh; # silently ignore the error
++}
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-reentr.c-Buffer-sizes-for-asctime_r-ctime_r-are-smal.patch b/SOURCES/perl-5.33.0-reentr.c-Buffer-sizes-for-asctime_r-ctime_r-are-smal.patch
new file mode 100644
index 0000000..7778210
--- /dev/null
+++ b/SOURCES/perl-5.33.0-reentr.c-Buffer-sizes-for-asctime_r-ctime_r-are-smal.patch
@@ -0,0 +1,58 @@
+From 81169c06a76f62ff987ed990ac910c2ae08b3f91 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Tue, 10 Mar 2020 15:19:57 -0600
+Subject: [PATCH] reentr.c: Buffer sizes for asctime_r,ctime_r are small
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The needed sizes of these are stated in the man pages, and are much
+smaller than were being allocated.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ reentr.c        | 4 ++--
+ regen/reentr.pl | 5 ++++-
+ 2 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/reentr.c b/reentr.c
+index 8ddda7bfc0..8438c8f90f 100644
+--- a/reentr.c
++++ b/reentr.c
+@@ -52,14 +52,14 @@ Perl_reentrant_size(pTHX) {
+ #  define REENTRANTUSUALSIZE	4096	/* Make something up. */
+ 
+ #  ifdef HAS_ASCTIME_R
+-	PL_reentrant_buffer->_asctime_size = REENTRANTSMALLSIZE;
++	PL_reentrant_buffer->_asctime_size = 26;
+ #  endif /* HAS_ASCTIME_R */
+ 
+ #  ifdef HAS_CRYPT_R
+ #  endif /* HAS_CRYPT_R */
+ 
+ #  ifdef HAS_CTIME_R
+-	PL_reentrant_buffer->_ctime_size = REENTRANTSMALLSIZE;
++	PL_reentrant_buffer->_ctime_size = 26;
+ #  endif /* HAS_CTIME_R */
+ 
+ #  ifdef HAS_GETGRNAM_R
+diff --git a/regen/reentr.pl b/regen/reentr.pl
+index f5788c7ad9..94721e9dec 100644
+--- a/regen/reentr.pl
++++ b/regen/reentr.pl
+@@ -495,8 +495,11 @@ for my $func (@seenf) {
+ 	char*	_${func}_buffer;
+ 	size_t	_${func}_size;
+ EOF
++            my $size = ($func =~ /^(asctime|ctime)$/)
++                       ? 26
++                       : "REENTRANTSMALLSIZE";
+ 	    push @size, <<EOF;
+-	PL_reentrant_buffer->_${func}_size = REENTRANTSMALLSIZE;
++	PL_reentrant_buffer->_${func}_size = $size;
+ EOF
+ 	    pushinitfree $func;
+ 	    pushssif $endif;
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-reentr.c-Prevent-infinite-looping.patch b/SOURCES/perl-5.33.0-reentr.c-Prevent-infinite-looping.patch
new file mode 100644
index 0000000..a67c259
--- /dev/null
+++ b/SOURCES/perl-5.33.0-reentr.c-Prevent-infinite-looping.patch
@@ -0,0 +1,46 @@
+From 981fbfc16220a15e72457d8ece4e014988746946 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Thu, 12 Mar 2020 12:48:47 -0600
+Subject: [PATCH] reentr.c: Prevent infinite looping
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This is an easy, though  paranoid hedge to prevent something that should
+never happen from causing an infinite loop if it were to happen.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ reentr.c        | 2 +-
+ regen/reentr.pl | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/reentr.c b/reentr.c
+index 8438c8f90f..2429aa2f5d 100644
+--- a/reentr.c
++++ b/reentr.c
+@@ -36,7 +36,7 @@
+ 
+ #define RenewDouble(data_pointer, size_pointer, type) \
+     STMT_START { \
+-	const size_t size = *(size_pointer) * 2; \
++	const size_t size = MAX(*(size_pointer), 1) * 2; \
+ 	Renew((data_pointer), (size), type); \
+ 	*(size_pointer) = size; \
+     } STMT_END
+diff --git a/regen/reentr.pl b/regen/reentr.pl
+index 94721e9dec..ba2e1c8fa6 100644
+--- a/regen/reentr.pl
++++ b/regen/reentr.pl
+@@ -818,7 +818,7 @@ print $c <<"EOF";
+ 
+ #define RenewDouble(data_pointer, size_pointer, type) \\
+     STMT_START { \\
+-	const size_t size = *(size_pointer) * 2; \\
++	const size_t size = MAX(*(size_pointer), 1) * 2; \\
+ 	Renew((data_pointer), (size), type); \\
+ 	*(size_pointer) = size; \\
+     } STMT_END
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.0-sv.h-Wanted-UOK-but-said-IOK.patch b/SOURCES/perl-5.33.0-sv.h-Wanted-UOK-but-said-IOK.patch
new file mode 100644
index 0000000..759ed92
--- /dev/null
+++ b/SOURCES/perl-5.33.0-sv.h-Wanted-UOK-but-said-IOK.patch
@@ -0,0 +1,31 @@
+From 530e9296a21b673d7e4c2b42f18d0d52d00f35c4 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Sun, 28 Jun 2020 12:03:54 -0600
+Subject: [PATCH] sv.h: Wanted UOK, but said IOK
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+I don't know the consequences of this bug
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ sv.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sv.h b/sv.h
+index 2f6431a826..3721b2fb1b 100644
+--- a/sv.h
++++ b/sv.h
+@@ -1711,7 +1711,7 @@ Like C<sv_catsv> but doesn't process magic.
+ #define SvNV(sv) (SvNOK_nog(sv) ? SvNVX(sv) : sv_2nv(sv))
+ 
+ #define SvIV_nomg(sv) (SvIOK(sv) ? SvIVX(sv) : sv_2iv_flags(sv, 0))
+-#define SvUV_nomg(sv) (SvIOK(sv) ? SvUVX(sv) : sv_2uv_flags(sv, 0))
++#define SvUV_nomg(sv) (SvUOK(sv) ? SvUVX(sv) : sv_2uv_flags(sv, 0))
+ #define SvNV_nomg(sv) (SvNOK(sv) ? SvNVX(sv) : sv_2nv_flags(sv, 0))
+ 
+ /* ----*/
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.1-sort-return-foo.patch b/SOURCES/perl-5.33.1-sort-return-foo.patch
new file mode 100644
index 0000000..8dbd121
--- /dev/null
+++ b/SOURCES/perl-5.33.1-sort-return-foo.patch
@@ -0,0 +1,77 @@
+From 390fe0c0d09aadc66f644e9eee4aa1245221188c Mon Sep 17 00:00:00 2001
+From: David Mitchell <davem@iabyn.com>
+Date: Tue, 25 Aug 2020 13:15:25 +0100
+Subject: [PATCH] sort { return foo() } ...
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+GH #18081
+
+A sub call via return in a sort block was called in void rather than
+scalar context, causing the comparison result to be discarded.
+
+This because when a sort block is called it is not a real function
+call, even though a sort block can be returned from. Instead, a
+CXt_NULL is pushed on the context stack. Because this isn't a sub-ish
+context type (unlike CXt_SUB, CXt_EVAL etc) there is no 'caller sub'
+on the context stack to be found to retrieve the caller's context
+(i.e. cx->cx_gimme).
+
+This commit fixes it by special-casing Perl_gimme_V().
+
+Ideally at some future point, a new context type, CXt_SORT, should be
+added. This would be used instead of CXt_NULL when a sort BLOCK is
+called. Like other sub-ish context types, it would have an old_cxsubix
+field and PL_curstackinfo->si_cxsubix would point to it. This would
+eliminate needing special-case handling in places like Perl_gimme_V().
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ inline.h    |  2 +-
+ t/op/sort.t | 12 +++++++++++-
+ 2 files changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/inline.h b/inline.h
+index a8240efb9c..6fbd5abfea 100644
+--- a/inline.h
++++ b/inline.h
+@@ -2086,7 +2086,7 @@ Perl_gimme_V(pTHX)
+         return gimme;
+     cxix = PL_curstackinfo->si_cxsubix;
+     if (cxix < 0)
+-        return G_VOID;
++        return PL_curstackinfo->si_type == PERLSI_SORT ? G_SCALAR: G_VOID;
+     assert(cxstack[cxix].blk_gimme & G_WANT);
+     return (cxstack[cxix].blk_gimme & G_WANT);
+ }
+diff --git a/t/op/sort.t b/t/op/sort.t
+index f2e139dff0..8e387fb90d 100644
+--- a/t/op/sort.t
++++ b/t/op/sort.t
+@@ -7,7 +7,7 @@ BEGIN {
+     set_up_inc('../lib');
+ }
+ use warnings;
+-plan(tests => 203);
++plan(tests => 204);
+ use Tie::Array; # we need to test sorting tied arrays
+ 
+ # these shouldn't hang
+@@ -1202,3 +1202,13 @@ SKIP:
+     $fillb = undef;
+     is $act, "01[sortb]2[fillb]";
+ }
++
++# GH #18081
++# sub call via return in sort block was called in void rather than scalar
++# context
++
++{
++    sub sort18081 { $a + 1 <=> $b + 1 }
++    my @a = sort { return &sort18081 } 6,1,2;
++    is "@a", "1 2 6", "GH #18081";
++}
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.2-Remove-Perl_av_top_index.patch b/SOURCES/perl-5.33.2-Remove-Perl_av_top_index.patch
new file mode 100644
index 0000000..06f6ce4
--- /dev/null
+++ b/SOURCES/perl-5.33.2-Remove-Perl_av_top_index.patch
@@ -0,0 +1,77 @@
+From bd5fa06648085e8c17efd55abeb6424aeeb1018e Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Tue, 29 Sep 2020 00:48:19 -0600
+Subject: [PATCH] Remove Perl_av_top_index
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+I created this in 87306e0674dfe3af29804b4641347cd5ac9b0521, thinking it
+was needed to preserve backward compatibility if someone were using this
+instead of the macro.  But it turned out that there never was such a
+function, it was inlined, and the name was S_av_top_index, so there is
+no reason to create a new function that no one has ever been able to
+call.  So just remove it, and let all accesses go through the macro
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ av.c      | 10 ----------
+ embed.fnc |  2 +-
+ proto.h   |  7 +++----
+ 3 files changed, 4 insertions(+), 15 deletions(-)
+
+diff --git a/av.c b/av.c
+index ada09cde9a..ad2429f90d 100644
+--- a/av.c
++++ b/av.c
+@@ -1095,16 +1095,6 @@ Perl_av_nonelem(pTHX_ AV *av, SSize_t ix) {
+     return sv;
+ }
+ 
+-SSize_t
+-Perl_av_top_index(pTHX_ AV *av)
+-{
+-    PERL_ARGS_ASSERT_AV_TOP_INDEX;
+-    assert(SvTYPE(av) == SVt_PVAV);
+-
+-    return AvFILL(av);
+-}
+-
+-
+ /*
+  * ex: set ts=8 sts=4 sw=4 et:
+  */
+diff --git a/embed.fnc b/embed.fnc
+index a6b4d0350f..f5c5b29c2d 100644
+--- a/embed.fnc
++++ b/embed.fnc
+@@ -637,7 +637,7 @@ Apd	|void	|av_push	|NN AV *av|NN SV *val
+ EXp	|void	|av_reify	|NN AV *av
+ ApdR	|SV*	|av_shift	|NN AV *av
+ Apd	|SV**	|av_store	|NN AV *av|SSize_t key|NULLOK SV *val
+-AMdRp	|SSize_t|av_top_index	|NN AV *av
++AmdR	|SSize_t|av_top_index	|NN AV *av
+ AidRp	|Size_t	|av_count	|NN AV *av
+ AmdR	|SSize_t|av_tindex	|NN AV *av
+ Apd	|void	|av_undef	|NN AV *av
+diff --git a/proto.h b/proto.h
+index c4490fc46e..2da1a07761 100644
+--- a/proto.h
++++ b/proto.h
+@@ -291,10 +291,9 @@ PERL_CALLCONV SV**	Perl_av_store(pTHX_ AV *av, SSize_t key, SV *val);
+ 			__attribute__warn_unused_result__; */
+ #define PERL_ARGS_ASSERT_AV_TINDEX
+ 
+-PERL_CALLCONV SSize_t	Perl_av_top_index(pTHX_ AV *av)
+-			__attribute__warn_unused_result__;
+-#define PERL_ARGS_ASSERT_AV_TOP_INDEX	\
+-	assert(av)
++/* PERL_CALLCONV SSize_t	av_top_index(pTHX_ AV *av)
++			__attribute__warn_unused_result__; */
++#define PERL_ARGS_ASSERT_AV_TOP_INDEX
+ 
+ PERL_CALLCONV void	Perl_av_undef(pTHX_ AV *av);
+ #define PERL_ARGS_ASSERT_AV_UNDEF	\
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.2-mro.xs-Fix-compiler-warning.patch b/SOURCES/perl-5.33.2-mro.xs-Fix-compiler-warning.patch
new file mode 100644
index 0000000..38438ea
--- /dev/null
+++ b/SOURCES/perl-5.33.2-mro.xs-Fix-compiler-warning.patch
@@ -0,0 +1,31 @@
+From fa353c3d2833fc326233e0eb583753b4d7887a63 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Sun, 4 Oct 2020 11:07:19 -0600
+Subject: [PATCH] mro.xs: Fix compiler warning
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes GH #18155
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ ext/mro/mro.xs | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ext/mro/mro.xs b/ext/mro/mro.xs
+index f21216af6e..8ce5844904 100644
+--- a/ext/mro/mro.xs
++++ b/ext/mro/mro.xs
+@@ -253,7 +253,7 @@ S_mro_get_linear_isa_c3(pTHX_ HV* stash, U32 level)
+                hierarchy is not C3-incompatible */
+             if(!winner) {
+                 SV *errmsg;
+-                I32 i;
++                Size_t i;
+ 
+                 errmsg = newSVpvf(
+                            "Inconsistent hierarchy during C3 merge of class '%" HEKf "':\n\t"
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.2-sv.c-Added-missing-braces-in-Perl_sv_inc_nomg.patch b/SOURCES/perl-5.33.2-sv.c-Added-missing-braces-in-Perl_sv_inc_nomg.patch
new file mode 100644
index 0000000..2351b3e
--- /dev/null
+++ b/SOURCES/perl-5.33.2-sv.c-Added-missing-braces-in-Perl_sv_inc_nomg.patch
@@ -0,0 +1,32 @@
+From 5777cf812c2812ea45eeb45e48979bab544d71af Mon Sep 17 00:00:00 2001
+From: TAKAI Kousuke <62541129+t-a-k@users.noreply.github.com>
+Date: Thu, 8 Oct 2020 19:02:10 +0900
+Subject: [PATCH] sv.c: Added missing braces in Perl_sv_inc_nomg().
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ sv.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/sv.c b/sv.c
+index 82248e3b1f..57fd65a5b8 100644
+--- a/sv.c
++++ b/sv.c
+@@ -8944,9 +8944,10 @@ Perl_sv_inc_nomg(pTHX_ SV *const sv)
+ 	if (SvIsUV(sv)) {
+ 	    if (SvUVX(sv) == UV_MAX)
+ 		sv_setnv(sv, UV_MAX_P1);
+-	    else
++            else {
+ 		(void)SvIOK_only_UV(sv);
+ 		SvUV_set(sv, SvUVX(sv) + 1);
++            }
+ 	} else {
+ 	    if (SvIVX(sv) == IV_MAX)
+ 		sv_setuv(sv, (UV)IV_MAX + 1);
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.2-sv.h-sv_collxfrm-didn-t-work-properly.patch b/SOURCES/perl-5.33.2-sv.h-sv_collxfrm-didn-t-work-properly.patch
new file mode 100644
index 0000000..efa0632
--- /dev/null
+++ b/SOURCES/perl-5.33.2-sv.h-sv_collxfrm-didn-t-work-properly.patch
@@ -0,0 +1,36 @@
+From e17dadf36f7b4348e59076240c880d0c78b33fa9 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Tue, 22 Sep 2020 08:47:52 -0600
+Subject: [PATCH] sv.h: sv_collxfrm didn't work properly
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It is supposed to be a wrapper for sv_collxfrm_flags, but it was just
+calling sv_cmp_flags instead.  The consequences are none except under
+'use locale' in which case you always got the C locale.  I did not add
+tests, because it is really a pain to write portable locale tests, and
+this doesn't seem to be much used.  In core the '_flags' form was always
+used.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ sv.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sv.h b/sv.h
+index 19ce718ac3..44414b35a9 100644
+--- a/sv.h
++++ b/sv.h
+@@ -2045,7 +2045,7 @@ Like C<sv_catsv> but doesn't process magic.
+ #define sv_eq(sv1, sv2) sv_eq_flags(sv1, sv2, SV_GMAGIC)
+ #define sv_cmp(sv1, sv2) sv_cmp_flags(sv1, sv2, SV_GMAGIC)
+ #define sv_cmp_locale(sv1, sv2) sv_cmp_locale_flags(sv1, sv2, SV_GMAGIC)
+-#define sv_collxfrm(sv, nxp) sv_cmp_flags(sv, nxp, SV_GMAGIC)
++#define sv_collxfrm(sv, nxp) sv_collxfrm_flags(sv, nxp, SV_GMAGIC)
+ #define sv_2bool(sv) sv_2bool_flags(sv, SV_GMAGIC)
+ #define sv_2bool_nomg(sv) sv_2bool_flags(sv, 0)
+ #define sv_insert(bigstr, offset, len, little, littlelen)		\
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.3-Perl_custom_op_get_field-remove-undef-behaviour.patch b/SOURCES/perl-5.33.3-Perl_custom_op_get_field-remove-undef-behaviour.patch
new file mode 100644
index 0000000..24528d3
--- /dev/null
+++ b/SOURCES/perl-5.33.3-Perl_custom_op_get_field-remove-undef-behaviour.patch
@@ -0,0 +1,76 @@
+From e050064b67c501e9fdc7bc3f513ba2b8b9e795f8 Mon Sep 17 00:00:00 2001
+From: David Mitchell <davem@iabyn.com>
+Date: Fri, 30 Oct 2020 20:50:58 +0000
+Subject: [PATCH] Perl_custom_op_get_field(): remove undef behaviour
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Thus function has a couple a switches with
+
+               default:
+                   NOT_REACHED; /* NOTREACHED */
+
+but clang is complaining that the value returned by the function is
+undefined if those default branches are taken, since the 'any' variable
+doesn't get set in that path.
+
+Replace the NOTREACHED with a croak("panic: ..."). It's possible (albeit
+not intended) for Perl_custom_op_get_field() to be called with a 'field'
+arg which triggers the default case. So if this ever happens, make it
+clear that something has gone wrong, rather than just silently
+continuing on non-debugging builds.
+
+In any case, this shuts up clang.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ op.c | 14 ++++++--------
+ 1 file changed, 6 insertions(+), 8 deletions(-)
+
+diff --git a/op.c b/op.c
+index c30c6b7c8f..2933e2ed7d 100644
+--- a/op.c
++++ b/op.c
+@@ -18100,6 +18100,7 @@ Perl_custom_op_get_field(pTHX_ const OP *o, const xop_flags_enum field)
+ 	else
+ 	    xop = INT2PTR(XOP *, SvIV(HeVAL(he)));
+     }
++
+     {
+ 	XOPRETANY any;
+ 	if(field == XOPe_xop_ptr) {
+@@ -18121,7 +18122,10 @@ Perl_custom_op_get_field(pTHX_ const OP *o, const xop_flags_enum field)
+ 		    any.xop_peep = xop->xop_peep;
+ 		    break;
+ 		default:
+-		    NOT_REACHED; /* NOTREACHED */
++                  field_panic:
++                    Perl_croak(aTHX_
++                        "panic: custom_op_get_field(): invalid field %d\n",
++                        (int)field);
+ 		    break;
+ 		}
+ 	    } else {
+@@ -18139,17 +18143,11 @@ Perl_custom_op_get_field(pTHX_ const OP *o, const xop_flags_enum field)
+ 		    any.xop_peep = XOPd_xop_peep;
+ 		    break;
+ 		default:
+-		    NOT_REACHED; /* NOTREACHED */
++                    goto field_panic;
+ 		    break;
+ 		}
+ 	    }
+ 	}
+-        /* On some platforms (HP-UX, IA64) gcc emits a warning for this function:
+-         * op.c: In function 'Perl_custom_op_get_field':
+-         * op.c:...: warning: 'any.xop_name' may be used uninitialized in this function [-Wmaybe-uninitialized]
+-         * This is because on those platforms (with -DEBUGGING) NOT_REACHED
+-         * expands to assert(0), which expands to ((0) ? (void)0 :
+-         * __assert(...)), and gcc doesn't know that __assert can never return. */
+ 	return any;
+     }
+ }
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.3-fetch-magic-on-the-first-stacked-filetest-not-the-la.patch b/SOURCES/perl-5.33.3-fetch-magic-on-the-first-stacked-filetest-not-the-la.patch
new file mode 100644
index 0000000..6b55c4a
--- /dev/null
+++ b/SOURCES/perl-5.33.3-fetch-magic-on-the-first-stacked-filetest-not-the-la.patch
@@ -0,0 +1,57 @@
+From f877e124a20d4f94c82c36e6b7a99b4e9663e204 Mon Sep 17 00:00:00 2001
+From: Tony Cook <tony@develop-help.com>
+Date: Tue, 10 Nov 2020 15:50:27 +1100
+Subject: [PATCH] fetch magic on the first stacked filetest, not the last
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+fixes #18293
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pp_sys.c        |  2 +-
+ t/op/filetest.t | 10 +++++++++-
+ 2 files changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/pp_sys.c b/pp_sys.c
+index 66c5d9aade..5c9f768eaf 100644
+--- a/pp_sys.c
++++ b/pp_sys.c
+@@ -3067,7 +3067,7 @@ S_try_amagic_ftest(pTHX_ char chr) {
+     SV *const arg = *PL_stack_sp;
+ 
+     assert(chr != '?');
+-    if (!(PL_op->op_private & OPpFT_STACKING)) SvGETMAGIC(arg);
++    if (!(PL_op->op_private & OPpFT_STACKED)) SvGETMAGIC(arg);
+ 
+     if (SvAMAGIC(arg))
+     {
+diff --git a/t/op/filetest.t b/t/op/filetest.t
+index fe9724c59a..7c471c050c 100644
+--- a/t/op/filetest.t
++++ b/t/op/filetest.t
+@@ -9,7 +9,7 @@ BEGIN {
+     set_up_inc(qw '../lib ../cpan/Perl-OSType/lib');
+ }
+ 
+-plan(tests => 57 + 27*14);
++plan(tests => 58 + 27*14);
+ 
+ if ($^O =~ /MSWin32|cygwin|msys/ && !is_miniperl) {
+   require Win32; # for IsAdminUser()
+@@ -385,3 +385,11 @@ SKIP: {
+     ok(!-f "TEST\0-", '-f on name with \0');
+     ok(!-r "TEST\0-", '-r on name with \0');
+ }
++
++{
++    # github #18293
++    "" =~ /(.*)/;
++    my $x = $1; # call magic on $1, setting the pv to ""
++    "test.pl" =~ /(.*)/;
++    ok(-f -r $1, "stacked handles on a name with magic");
++}
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.3-pp_split-add-TonyC-s-stack-not-refcounted-suggestion.patch b/SOURCES/perl-5.33.3-pp_split-add-TonyC-s-stack-not-refcounted-suggestion.patch
new file mode 100644
index 0000000..1b3b825
--- /dev/null
+++ b/SOURCES/perl-5.33.3-pp_split-add-TonyC-s-stack-not-refcounted-suggestion.patch
@@ -0,0 +1,54 @@
+From ab307de390c3459badcc89b3d77542b5b871b2e8 Mon Sep 17 00:00:00 2001
+From: Richard Leach <richardleach@users.noreply.github.com>
+Date: Tue, 20 Oct 2020 18:16:38 +0100
+Subject: [PATCH 2/2] pp_split: add TonyC's stack-not-refcounted-suggestion and
+ tests
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pp.c         | 5 ++++-
+ t/op/split.t | 5 +++++
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/pp.c b/pp.c
+index ce16c56e63..5b5e163011 100644
+--- a/pp.c
++++ b/pp.c
+@@ -6034,6 +6034,9 @@ PP(pp_split)
+             oldsave = PL_savestack_ix;
+         }
+ 
++	/* Some defence against stack-not-refcounted bugs */
++	(void)sv_2mortal(SvREFCNT_inc_simple_NN(ary));
++
+ 	if ((mg = SvTIED_mg((const SV *)ary, PERL_MAGIC_tied))) {
+ 	    PUSHMARK(SP);
+ 	    XPUSHs(SvTIED_obj(MUTABLE_SV(ary), mg));
+@@ -6356,7 +6359,7 @@ PP(pp_split)
+     }
+ 
+     PUTBACK;
+-    LEAVE_SCOPE(oldsave); /* may undo an earlier SWITCHSTACK */
++    LEAVE_SCOPE(oldsave);
+     SPAGAIN;
+     if (realarray) {
+         if (!mg) {
+diff --git a/t/op/split.t b/t/op/split.t
+index 1d78a45bde..7a321645ac 100644
+--- a/t/op/split.t
++++ b/t/op/split.t
+@@ -703,3 +703,8 @@ fresh_perl_is('my @ary; @ary = split(/\w(?{ @ary[1000] = 1 })/, "abc");',
+ fresh_perl_is('my @ary; @ary = split(/\w(?{ undef @ary })/, "abc");',
+         '',{},'(@ary = split ...) survives an (undef @ary)');
+ 
++# check the (@ary = split) optimisation survives stack-not-refcounted bugs
++fresh_perl_is('our @ary; @ary = split(/\w(?{ *ary = 0 })/, "abc");',
++        '',{},'(@ary = split ...) survives @ary destruction via typeglob');
++fresh_perl_is('my $ary = []; @$ary = split(/\w(?{ $ary = [] })/, "abc");',
++        '',{},'(@ary = split ...) survives @ary destruction via reassignment');
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.3-t-op-inc.t-t-op-hexfp.t-t-op-sprintf2.t-Add-missing-.patch b/SOURCES/perl-5.33.3-t-op-inc.t-t-op-hexfp.t-t-op-sprintf2.t-Add-missing-.patch
new file mode 100644
index 0000000..253b340
--- /dev/null
+++ b/SOURCES/perl-5.33.3-t-op-inc.t-t-op-hexfp.t-t-op-sprintf2.t-Add-missing-.patch
@@ -0,0 +1,71 @@
+From b52b6c4029b51818442d64c6104d26e12e140f09 Mon Sep 17 00:00:00 2001
+From: TAKAI Kousuke <62541129+t-a-k@users.noreply.github.com>
+Date: Thu, 5 Nov 2020 22:06:16 +0900
+Subject: [PATCH] t/op/inc.t, t/op/hexfp.t, t/op/sprintf2.t: Add missing d_
+ prefixes for Config variable names.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ t/op/hexfp.t    | 2 +-
+ t/op/inc.t      | 4 ++--
+ t/op/sprintf2.t | 4 ++--
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/t/op/hexfp.t b/t/op/hexfp.t
+index b0c85cfdc6..5fb80d3d74 100644
+--- a/t/op/hexfp.t
++++ b/t/op/hexfp.t
+@@ -246,7 +246,7 @@ SKIP: {
+     skip("non-80-bit-long-double", 4)
+         unless ($Config{uselongdouble} &&
+ 		($Config{nvsize} == 16 || $Config{nvsize} == 12) &&
+-		($Config{long_double_style_ieee_extended}));
++		($Config{d_long_double_style_ieee_extended}));
+     is(0x1p-1074,  4.94065645841246544e-324);
+     is(0x1p-1075,  2.47032822920623272e-324, '[perl #128919]');
+     is(0x1p-1076,  1.23516411460311636e-324);
+diff --git a/t/op/inc.t b/t/op/inc.t
+index 0bb8b85b13..3d5cc024d3 100644
+--- a/t/op/inc.t
++++ b/t/op/inc.t
+@@ -188,10 +188,10 @@ cmp_ok($a, '==', 2147483647, "postdecrement properly downgrades from double");
+ 
+ SKIP: {
+     if ($Config{uselongdouble} &&
+-        ($Config{long_double_style_ieee_doubledouble})) {
++        ($Config{d_long_double_style_ieee_doubledouble})) {
+         skip "the double-double format is weird", 1;
+     }
+-    unless ($Config{double_style_ieee}) {
++    unless ($Config{d_double_style_ieee}) {
+         skip "the doublekind $Config{doublekind} is not IEEE", 1;
+     }
+ 
+diff --git a/t/op/sprintf2.t b/t/op/sprintf2.t
+index bbc12ccd0a..38a550c281 100644
+--- a/t/op/sprintf2.t
++++ b/t/op/sprintf2.t
+@@ -701,7 +701,7 @@ SKIP: {
+     skip("uselongdouble=" . ($Config{uselongdouble} ? 'define' : 'undef')
+          . " longdblkind=$Config{longdblkind} os=$^O", 6)
+         unless ($Config{uselongdouble} &&
+-                ($Config{long_double_style_ieee_doubledouble})
++                ($Config{d_long_double_style_ieee_doubledouble})
+                 # Gating on 'linux' (ppc) here is due to the differing
+                 # double-double implementations: other (also big-endian)
+                 # double-double platforms (e.g. AIX on ppc or IRIX on mips)
+@@ -892,7 +892,7 @@ SKIP: {
+     skip("non-80-bit-long-double", 17)
+         unless ($Config{uselongdouble} &&
+ 		($Config{nvsize} == 16 || $Config{nvsize} == 12) &&
+-		($Config{long_double_style_ieee_extended}));
++		($Config{d_long_double_style_ieee_extended}));
+ 
+     {
+         # The last normal for this format.
+-- 
+2.25.4
+
diff --git a/SOURCES/perl-5.33.4-locale.c-Fix-typo-in-ifdef.patch b/SOURCES/perl-5.33.4-locale.c-Fix-typo-in-ifdef.patch
new file mode 100644
index 0000000..dfad1f2
--- /dev/null
+++ b/SOURCES/perl-5.33.4-locale.c-Fix-typo-in-ifdef.patch
@@ -0,0 +1,32 @@
+From 9289d4dc7a3d24b20c6e25045e687321ee3e8faf Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Mon, 30 Nov 2020 09:25:52 -0700
+Subject: [PATCH] locale.c: Fix typo in #ifdef
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This misspelling led to the code assuming that the platform didn't have
+a feature that, if used, would result in faster execution.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ locale.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/locale.c b/locale.c
+index 9500ab7960..5970423404 100644
+--- a/locale.c
++++ b/locale.c
+@@ -2621,7 +2621,7 @@ S_my_nl_langinfo(const int item, bool toggle)
+ #if defined(HAS_NL_LANGINFO) /* nl_langinfo() is available.  */
+ #  if   ! defined(HAS_THREAD_SAFE_NL_LANGINFO_L)      \
+      || ! defined(HAS_POSIX_2008_LOCALE)              \
+-     || ! defined(DUPLOCALE)
++     || ! defined(HAS_DUPLOCALE)
+ 
+     /* Here, use plain nl_langinfo(), switching to the underlying LC_NUMERIC
+      * for those items dependent on it.  This must be copied to a buffer before
+-- 
+2.26.2
+
diff --git a/SOURCES/perl-5.33.5-Fix-buggy-fc-in-Turkish-locale.patch b/SOURCES/perl-5.33.5-Fix-buggy-fc-in-Turkish-locale.patch
new file mode 100644
index 0000000..b8e11fe
--- /dev/null
+++ b/SOURCES/perl-5.33.5-Fix-buggy-fc-in-Turkish-locale.patch
@@ -0,0 +1,140 @@
+From 4cfbe5474a5c5f852a6dbf0138dc796c2800be93 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Wed, 30 Dec 2020 05:55:08 -0700
+Subject: [PATCH] Fix buggy fc() in Turkish locale
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+When Turkish handling was added, fc() wasn't properly updated
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pp.c      | 12 +++++++++---
+ t/op/lc.t | 23 ++++++++++++++++-------
+ 2 files changed, 25 insertions(+), 10 deletions(-)
+
+diff --git a/pp.c b/pp.c
+index 5e1706346d..23cc6c8adb 100644
+--- a/pp.c
++++ b/pp.c
+@@ -4813,7 +4813,7 @@ PP(pp_fc)
+                         do {
+                             extra++;
+ 
+-                            s_peek = (U8 *) memchr(s_peek + 1, 'i',
++                            s_peek = (U8 *) memchr(s_peek + 1, 'I',
+                                                    send - (s_peek + 1));
+                         } while (s_peek != NULL);
+                     }
+@@ -4828,8 +4828,14 @@ PP(pp_fc)
+                                               + 1 /* Trailing NUL */ );
+                     d = (U8*)SvPVX(dest) + len;
+ 
+-                    *d++ = UTF8_TWO_BYTE_HI(GREEK_SMALL_LETTER_MU);
+-                    *d++ = UTF8_TWO_BYTE_LO(GREEK_SMALL_LETTER_MU);
++                    if (*s == 'I') {
++                        *d++ = UTF8_TWO_BYTE_HI(LATIN_SMALL_LETTER_DOTLESS_I);
++                        *d++ = UTF8_TWO_BYTE_LO(LATIN_SMALL_LETTER_DOTLESS_I);
++                    }
++                    else {
++                        *d++ = UTF8_TWO_BYTE_HI(GREEK_SMALL_LETTER_MU);
++                        *d++ = UTF8_TWO_BYTE_LO(GREEK_SMALL_LETTER_MU);
++                    }
+                     s++;
+ 
+                     for (; s < send; s++) {
+diff --git a/t/op/lc.t b/t/op/lc.t
+index fce77f3d34..812c41d6b6 100644
+--- a/t/op/lc.t
++++ b/t/op/lc.t
+@@ -17,7 +17,7 @@ BEGIN {
+ 
+ use feature qw( fc );
+ 
+-plan tests => 139 + 2 * (4 * 256) + 15;
++plan tests => 139 + 2 * (5 * 256) + 17;
+ 
+ is(lc(undef),	   "", "lc(undef) is ''");
+ is(lcfirst(undef), "", "lcfirst(undef) is ''");
+@@ -352,13 +352,14 @@ foreach my $turkic (0 .. 1) {
+     my $locale = ($turkic) ? $turkic_locale : $non_turkic_locale;
+ 
+   SKIP: {
+-    skip "Can't find a $type UTF-8 locale", 4*256 unless defined $locale;
++    skip "Can't find a $type UTF-8 locale", 5*256 unless defined $locale;
+ 
+     use feature qw( unicode_strings );
+ 
+     no locale;
+ 
+     my @unicode_lc;
++    my @unicode_fc;
+     my @unicode_uc;
+     my @unicode_lcfirst;
+     my @unicode_ucfirst;
+@@ -366,6 +367,7 @@ foreach my $turkic (0 .. 1) {
+     # Get all the values outside of 'locale'
+     for my $i (0 .. 255) {
+         push @unicode_lc, lc(chr $i);
++        push @unicode_fc, fc(chr $i);
+         push @unicode_uc, uc(chr $i);
+         push @unicode_lcfirst, lcfirst(chr $i);
+         push @unicode_ucfirst, ucfirst(chr $i);
+@@ -373,6 +375,7 @@ foreach my $turkic (0 .. 1) {
+ 
+     if ($turkic) {
+         $unicode_lc[ord 'I'] = chr 0x131;
++        $unicode_fc[ord 'I'] = chr 0x131;
+         $unicode_lcfirst[ord 'I'] = chr 0x131;
+         $unicode_uc[ord 'i'] = chr 0x130;
+         $unicode_ucfirst[ord 'i'] = chr 0x130;
+@@ -384,6 +387,7 @@ foreach my $turkic (0 .. 1) {
+     for my $i (0 .. 255) {
+         is(lc(chr $i), $unicode_lc[$i], "In a $type UTF-8 locale, lc(chr $i) is the same as official Unicode");
+         is(uc(chr $i), $unicode_uc[$i], "In a $type UTF-8 locale, uc(chr $i) is the same as official Unicode");
++        is(fc(chr $i), $unicode_fc[$i], "In a $type UTF-8 locale, fc(chr $i) is the same as official Unicode");
+         is(lcfirst(chr $i), $unicode_lcfirst[$i], "In a $type UTF-8 locale, lcfirst(chr $i) is the same as official Unicode");
+         is(ucfirst(chr $i), $unicode_ucfirst[$i], "In a $type UTF-8 locale, ucfirst(chr $i) is the same as official Unicode");
+     }
+@@ -391,27 +395,32 @@ foreach my $turkic (0 .. 1) {
+ }
+ 
+ SKIP: {
+-    skip "Can't find a turkic UTF-8 locale", 15 unless defined $turkic_locale;
++    skip "Can't find a turkic UTF-8 locale", 17 unless defined $turkic_locale;
+ 
+     # These are designed to stress the calculation of space needed for the
+     # strings.  $filler contains a variety of characters that have special
+     # handling in the casing functions, and some regular chars as well.
++    # (0x49 = 'I')
+     my $filler_length = 10000;
+-    my $filler = uni_to_native("\x{df}\x{b5}\x{e0}\x{c1}\x{b6}\x{ff}") x $filler_length;
++    my $filler = uni_to_native("\x{df}\x{49}\x{69}\x{b5}\x{e0}\x{c1}\x{b6}\x{ff}") x $filler_length;
+ 
+     # These are the correct answers to what should happen when the given
+     # casing function is called on $filler;
+-    my $filler_lc = uni_to_native("\x{df}\x{b5}\x{e0}\x{e1}\x{b6}\x{ff}") x $filler_length;
+-    my $filler_fc = ("ss" . uni_to_native("\x{b5}\x{e0}\x{e1}\x{b6}\x{ff}")) x $filler_length;
+-    my $filler_uc = ("SS" . uni_to_native("\x{39c}\x{c0}\x{c1}\x{b6}\x{178}")) x $filler_length;
++    my $filler_lc = uni_to_native("\x{df}\x{131}\x{69}\x{b5}\x{e0}\x{e1}\x{b6}\x{ff}") x $filler_length;
++    my $filler_fc = ("ss" . uni_to_native("\x{131}\x{69}\x{3bc}\x{e0}\x{e1}\x{b6}\x{ff}")) x $filler_length;
++    my $filler_uc = ("SS" . uni_to_native("\x{49}\x{130}\x{39c}\x{c0}\x{c1}\x{b6}\x{178}")) x $filler_length;
+ 
+     use locale;
+     setlocale(&POSIX::LC_CTYPE, $turkic_locale);
+ 
+     is (lc "IIIIIII$filler", "\x{131}\x{131}\x{131}\x{131}\x{131}\x{131}\x{131}$filler_lc",
+         "lc non-UTF-8, in Turkic locale, beginning with a bunch of I's");
++    is (fc "IIIIIII$filler", "\x{131}\x{131}\x{131}\x{131}\x{131}\x{131}\x{131}$filler_fc",
++        "fc non-UTF-8, in Turkic locale, beginning with a bunch of I's");
+     is (lc "${filler}IIIIIII$filler", "$filler_lc\x{131}\x{131}\x{131}\x{131}\x{131}\x{131}\x{131}$filler_lc",
+         "lc non-UTF-8, in Turkic locale, a bunch of I's, but not at the beginning");
++    is (fc "${filler}IIIIIII$filler", "$filler_fc\x{131}\x{131}\x{131}\x{131}\x{131}\x{131}\x{131}$filler_fc",
++        "fc non-UTF-8, in Turkic locale, a bunch of I's, but not at the beginning");
+     is (lc "${filler}I\x{307}$filler", "${filler_lc}i$filler_lc",
+         "lc in Turkic locale with DOT ABOVE immediately following I");
+     is (lc "${filler}I\x{307}IIIIII$filler", "${filler_lc}i\x{131}\x{131}\x{131}\x{131}\x{131}\x{131}$filler_lc",
+-- 
+2.26.2
+
diff --git a/SOURCES/perl-5.33.5-Use-perl.h-versions-of-PERL_UNUSED_foo-in-XSUB.h.patch b/SOURCES/perl-5.33.5-Use-perl.h-versions-of-PERL_UNUSED_foo-in-XSUB.h.patch
new file mode 100644
index 0000000..31d7bf4
--- /dev/null
+++ b/SOURCES/perl-5.33.5-Use-perl.h-versions-of-PERL_UNUSED_foo-in-XSUB.h.patch
@@ -0,0 +1,43 @@
+From 036189b0a003875df7bf09c7f7fd702267f549e5 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Sat, 26 Dec 2020 08:44:08 -0700
+Subject: [PATCH] Use perl.h versions of PERL_UNUSED_foo in XSUB.h
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This commit was applied to perl.h, but not to XSUB.h:
+
+commit a730e3f230f364cffe49370f816f975ae7c9c403
+Author: Jarkko Hietaniemi <jhi@iki.fi>
+Date:   Thu Sep 4 09:08:33 2014 -0400
+
+Use sizeof() in UNUSED_ARG and UNUSED_VAR to avoid accessing the values.
+
+The values might even be uninitialized in the case of PERL_UNUSED_VAR.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ XSUB.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/XSUB.h b/XSUB.h
+index 616d813840..c1e3959885 100644
+--- a/XSUB.h
++++ b/XSUB.h
+@@ -108,10 +108,10 @@ is a lexical C<$_> in scope.
+ */
+ 
+ #ifndef PERL_UNUSED_ARG
+-#  define PERL_UNUSED_ARG(x) ((void)x)
++#  define PERL_UNUSED_ARG(x) ((void)sizeof(x))
+ #endif
+ #ifndef PERL_UNUSED_VAR
+-#  define PERL_UNUSED_VAR(x) ((void)x)
++#  define PERL_UNUSED_VAR(x) ((void)sizeof(x))
+ #endif
+ 
+ #define ST(off) PL_stack_base[ax + (off)]
+-- 
+2.26.2
+
diff --git a/SOURCES/perl-5.33.5-op.c-croak-on-my-_-when-use-utf8-is-in-effect.patch b/SOURCES/perl-5.33.5-op.c-croak-on-my-_-when-use-utf8-is-in-effect.patch
new file mode 100644
index 0000000..018dc6a
--- /dev/null
+++ b/SOURCES/perl-5.33.5-op.c-croak-on-my-_-when-use-utf8-is-in-effect.patch
@@ -0,0 +1,78 @@
+From 07319fdbb283f93cb655c3106b5237cbc7272038 Mon Sep 17 00:00:00 2001
+From: Tomasz Konojacki <me@xenu.pl>
+Date: Wed, 30 Dec 2020 14:03:02 +0100
+Subject: [PATCH] op.c: croak on "my $_" when "use utf8" is in effect
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes #18449
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ op.c         | 16 +++++++++-------
+ t/op/mydef.t | 11 +++++++++--
+ 2 files changed, 18 insertions(+), 9 deletions(-)
+
+diff --git a/op.c b/op.c
+index b2e12dd0c0..dce844d297 100644
+--- a/op.c
++++ b/op.c
+@@ -730,6 +730,7 @@ PADOFFSET
+ Perl_allocmy(pTHX_ const char *const name, const STRLEN len, const U32 flags)
+ {
+     PADOFFSET off;
++    bool is_idfirst, is_default;
+     const bool is_our = (PL_parser->in_my == KEY_our);
+ 
+     PERL_ARGS_ASSERT_ALLOCMY;
+@@ -738,14 +739,15 @@ Perl_allocmy(pTHX_ const char *const name, const STRLEN len, const U32 flags)
+ 	Perl_croak(aTHX_ "panic: allocmy illegal flag bits 0x%" UVxf,
+ 		   (UV)flags);
+ 
++    is_idfirst = flags & SVf_UTF8
++        ? isIDFIRST_utf8_safe((U8*)name + 1, name + len)
++        : isIDFIRST_A(name[1]);
++
++    /* $_, @_, etc. */
++    is_default = len == 2 && name[1] == '_';
++
+     /* complain about "my $<special_var>" etc etc */
+-    if (   len
+-        && !(  is_our
+-            || isALPHA(name[1])
+-            || (   (flags & SVf_UTF8)
+-                && isIDFIRST_utf8_safe((U8 *)name+1, name + len))
+-            || (name[1] == '_' && len > 2)))
+-    {
++    if (!is_our && (!is_idfirst || is_default)) {
+         const char * const type =
+               PL_parser->in_my == KEY_sigvar ? "subroutine signature" :
+               PL_parser->in_my == KEY_state  ? "\"state\""     : "\"my\"";
+diff --git a/t/op/mydef.t b/t/op/mydef.t
+index 42a81d9ab0..225ce98e51 100644
+--- a/t/op/mydef.t
++++ b/t/op/mydef.t
+@@ -6,10 +6,17 @@ BEGIN {
+     set_up_inc('../lib');
+ }
+ 
+-plan tests => 1;
+-
+ use strict;
+ 
+ eval 'my $_';
+ like $@, qr/^Can't use global \$_ in "my" at /;
+ 
++{
++    # using utf8 allows $_ to be declared with 'my'
++    # GH #18449
++    use utf8;
++    eval 'my $_;';
++    like $@, qr/^Can't use global \$_ in "my" at /;
++}
++
++done_testing;
+-- 
+2.26.2
+
diff --git a/SOURCES/perl-5.33.6-Add-missing-entries-to-perldiag-GH-18276.patch b/SOURCES/perl-5.33.6-Add-missing-entries-to-perldiag-GH-18276.patch
new file mode 100644
index 0000000..f8e0e97
--- /dev/null
+++ b/SOURCES/perl-5.33.6-Add-missing-entries-to-perldiag-GH-18276.patch
@@ -0,0 +1,100 @@
+From cac138107138a9814b32c4de74426225628f1646 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Sun, 17 Jan 2021 21:45:20 -0700
+Subject: [PATCH] Add missing entries to perldiag; GH #18276
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The ticket mentions yet another message, not addressed in this
+commit, "Insecure private-use override".  That message is part of a
+hook for a so-far unimplemented module, so it actually doesn't ever get
+raised.
+
+Committer: One correction per Grinnz comment in
+https://github.com/Perl/perl5/pull/18491
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pod/perldiag.pod | 45 +++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 45 insertions(+)
+
+diff --git a/pod/perldiag.pod b/pod/perldiag.pod
+index 9c91630d39..63f57f220e 100644
+--- a/pod/perldiag.pod
++++ b/pod/perldiag.pod
+@@ -2195,6 +2195,20 @@ single form when it must operate on them directly.  Either you've passed
+ an invalid file specification to Perl, or you've found a case the
+ conversion routines don't handle.  Drat.
+ 
++=item Error %s in expansion of %s
++
++(F) An error was encountered in handling a user-defined property
++(L<perlunicode/User-Defined Character Properties>).  These are
++programmer written subroutines, hence subject to errors that may
++prevent them from compiling or running.  The calls to these subs are
++C<eval>'d, and if there is a failure, this message is raised, using the
++contents of C<$@> from the failed C<eval>.
++
++Another possibility is that tainted data was encountered somewhere in
++the chain of expanding the property.  If so, the message wording will
++indicate that this is the problem.  See L</Insecure user-defined
++property %s>.
++
+ =item Eval-group in insecure regular expression
+ 
+ (F) Perl detected tainted data when trying to compile a regular
+@@ -2836,6 +2850,16 @@ not match 8 spaces.
+ text.  You should check the pattern to ensure that recursive patterns
+ either consume text or fail.
+ 
++=item Infinite recursion in user-defined property
++
++(F) A user-defined property (L<perlunicode/User-Defined Character
++Properties>) can depend on the definitions of other user-defined
++properties.  If the chain of dependencies leads back to this property,
++infinite recursion would occur, were it not for the check that raised
++this error.
++
++Restructure your property definitions to avoid this.
++
+ =item Infinite recursion via empty pattern
+ 
+ (F) You tried to use the empty pattern inside of a regex code block,
+@@ -6273,6 +6297,20 @@ lexicals that are initialized only once (see L<feature>):
+ This use of C<my()> in a false conditional was deprecated beginning in
+ Perl 5.10 and became a fatal error in Perl 5.30.
+ 
++=item Timeout waiting for another thread to define \p{%s}
++
++(F) The first time a user-defined property
++(L<perlunicode/User-Defined Character Properties>) is used, its
++definition is looked up and converted into an internal form for more
++efficient handling in subsequent uses.  There could be a race if two or
++more threads tried to do this processing nearly simultaneously.
++Instead, a critical section is created around this task, locking out all
++but one thread from doing it.  This message indicates that the thread
++that is doing the conversion is taking an unexpectedly long time.  The
++timeout exists solely to prevent deadlock; it's long enough that the
++system was likely thrashing and about to crash.  There is no real remedy but
++rebooting.
++
+ =item times not implemented
+ 
+ (F) Your version of the C library apparently doesn't do times().  I
+@@ -6846,6 +6884,13 @@ for the list of known options.
+ L<perlrun|perlrun/-C [numberE<sol>list]> documentation of the C<-C> switch
+ for the list of known options.
+ 
++=item Unknown user-defined property name \p{%s}
++
++(F) You specified to use a property within the C<\p{...}> which was a
++syntactically valid user-defined property, but no definition was found
++for it by the time one was required to proceed.  Check your spelling.
++See L<perlunicode/User-Defined Character Properties>.
++
+ =item Unknown verb pattern '%s' in regex; marked by S<<-- HERE> in m/%s/
+ 
+ (F) You either made a typo or have incorrectly put a C<*> quantifier
+-- 
+2.26.2
+
diff --git a/SOURCES/perl-5.33.6-t-run-locale.t-Rmv-LANGUAGE-from-environment.patch b/SOURCES/perl-5.33.6-t-run-locale.t-Rmv-LANGUAGE-from-environment.patch
new file mode 100644
index 0000000..bdc0c35
--- /dev/null
+++ b/SOURCES/perl-5.33.6-t-run-locale.t-Rmv-LANGUAGE-from-environment.patch
@@ -0,0 +1,32 @@
+From a2f57b06b018b254bee93e1a1265cfc09833366f Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Tue, 9 Feb 2021 11:32:15 -0700
+Subject: [PATCH] t/run/locale.t: Rmv LANGUAGE from environment
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This could cause interference with our tests on some platforms that have
+this environment variable.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ t/run/locale.t | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/t/run/locale.t b/t/run/locale.t
+index 8a04d1aea6..0f2a2ba457 100644
+--- a/t/run/locale.t
++++ b/t/run/locale.t
+@@ -38,7 +38,7 @@ if (defined $ARGV[0] && $ARGV[0] ne "") {
+ }
+ 
+ # reset the locale environment
+-delete local @ENV{'LANG', (grep /^LC_[A-Z]+$/, keys %ENV)};
++delete local @ENV{'LANGUAGE', 'LANG', (grep /^LC_[A-Z]+$/, keys %ENV)};
+ 
+ # If user wants this to happen, they set the environment variable AND use
+ # 'debug'
+-- 
+2.26.2
+
diff --git a/SOURCES/perl-5.33.7-regcomp.c-Remove-memory-leak.patch b/SOURCES/perl-5.33.7-regcomp.c-Remove-memory-leak.patch
new file mode 100644
index 0000000..44dc94e
--- /dev/null
+++ b/SOURCES/perl-5.33.7-regcomp.c-Remove-memory-leak.patch
@@ -0,0 +1,74 @@
+From 5f41fa466a67b5535aa8bcf4b814f242545ac7bd Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Sat, 27 Feb 2021 11:43:41 -0700
+Subject: [PATCH] regcomp.c: Remove memory leak
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This fixes GH #18604.  There was a path through the code where a
+particular SV did not get its reference count decremented.
+
+I did an audit of the function and came up with several other
+possiblities that are included in this commit.
+
+Further, there would be leaks for some instances of finding syntax
+errors in the input pattern, or when warnings are fatalized.  Those
+would require mortalizing some SVs, but that is beyond the scope of this
+commit.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ regcomp.c     | 7 +++++++
+ t/op/svleak.t | 3 ++-
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/regcomp.c b/regcomp.c
+index e44c7a37e5..f5e5f581dc 100644
+--- a/regcomp.c
++++ b/regcomp.c
+@@ -18765,6 +18765,12 @@ S_regclass(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth,
+ 	RExC_end = save_end;
+ 	RExC_in_multi_char_class = 0;
+         SvREFCNT_dec_NN(multi_char_matches);
++        SvREFCNT_dec(properties);
++        SvREFCNT_dec(cp_list);
++        SvREFCNT_dec(simple_posixes);
++        SvREFCNT_dec(posixes);
++        SvREFCNT_dec(nposixes);
++        SvREFCNT_dec(cp_foldable_list);
+         return ret;
+     }
+ 
+@@ -20122,6 +20128,7 @@ S_regclass(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth,
+                                            RExC_parse - orig_parse);;
+     SvREFCNT_dec(cp_list);;
+     SvREFCNT_dec(only_utf8_locale_list);
++    SvREFCNT_dec(upper_latin1_only_utf8_matches);
+     return ret;
+ }
+ 
+diff --git a/t/op/svleak.t b/t/op/svleak.t
+index 6acc298c3d..3df4838be8 100644
+--- a/t/op/svleak.t
++++ b/t/op/svleak.t
+@@ -15,7 +15,7 @@ BEGIN {
+ 
+ use Config;
+ 
+-plan tests => 150;
++plan tests => 151;
+ 
+ # 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
+@@ -278,6 +278,7 @@ eleak(2,0,'/[[:ascii:]]/');
+ eleak(2,0,'/[[.zog.]]/');
+ eleak(2,0,'/[.zog.]/');
+ eleak(2,0,'/|\W/', '/|\W/ [perl #123198]');
++eleak(2,0,'/a\sb/', '/a\sb/ [GH #18604]');
+ eleak(2,0,'no warnings; /(?[])/');
+ eleak(2,0,'no warnings; /(?[[a]+[b]])/');
+ eleak(2,0,'no warnings; /(?[[a]-[b]])/');
+-- 
+2.26.2
+
diff --git a/SOURCES/perl-5.33.8-Fix-broken-left-shift-of-IV_MIN-under-use-integer.patch b/SOURCES/perl-5.33.8-Fix-broken-left-shift-of-IV_MIN-under-use-integer.patch
new file mode 100644
index 0000000..5ce6046
--- /dev/null
+++ b/SOURCES/perl-5.33.8-Fix-broken-left-shift-of-IV_MIN-under-use-integer.patch
@@ -0,0 +1,62 @@
+From 4e82c85b1c9c9b30253b8624470da6f20a6c0604 Mon Sep 17 00:00:00 2001
+From: Karl Williamson <khw@cpan.org>
+Date: Mon, 15 Mar 2021 21:01:47 -0600
+Subject: [PATCH] Fix broken left shift of IV_MIN under 'use integer'
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This fixes GH 18639
+
+When I wrote this code, I conflated casting and complementing.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ pp.c       | 3 ---
+ t/op/bop.t | 9 ++++++++-
+ 2 files changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/pp.c b/pp.c
+index d365afea4c..baf0777a47 100644
+--- a/pp.c
++++ b/pp.c
+@@ -2007,9 +2007,6 @@ static IV S_iv_shift(IV iv, int shift, bool left)
+      * 18446744073709551552
+      * */
+     if (left) {
+-        if (iv == IV_MIN) { /* Casting this to a UV is undefined behavior */
+-            return 0;
+-        }
+         return (IV) (((UV) iv) << shift);
+     }
+ 
+diff --git a/t/op/bop.t b/t/op/bop.t
+index 07f057d0a9..31b6531a03 100644
+--- a/t/op/bop.t
++++ b/t/op/bop.t
+@@ -18,7 +18,7 @@ BEGIN {
+ # If you find tests are failing, please try adding names to tests to track
+ # down where the failure is, and supply your new names as a patch.
+ # (Just-in-time test naming)
+-plan tests => 502;
++plan tests => 503;
+ 
+ # numerics
+ ok ((0xdead & 0xbeef) == 0x9ead);
+@@ -33,6 +33,13 @@ ok ((33023 >> 7) == 257);
+ # signed vs. unsigned
+ ok ((~0 > 0 && do { use integer; ~0 } == -1));
+ 
++{   # GH #18639
++    my $iv_min = -(~0 >> 1) - 1;
++    my $shifted;
++    { use integer; $shifted = $iv_min << 0 };
++    is($shifted, $iv_min, "IV_MIN << 0 yields IV_MIN under 'use integer'");
++}
++
+ my $bits = 0;
+ for (my $i = ~0; $i; $i >>= 1) { ++$bits; }
+ my $cusp = 1 << ($bits - 1);
+-- 
+2.26.3
+
diff --git a/SOURCES/perl-5.8.0-libdir64.patch b/SOURCES/perl-5.8.0-libdir64.patch
new file mode 100644
index 0000000..a29ee87
--- /dev/null
+++ b/SOURCES/perl-5.8.0-libdir64.patch
@@ -0,0 +1,47 @@
+diff -up perl-5.28.0-RC1/Configure.orig   perl-5.28.0-RC1/Configure
+--- perl-5.28.0-RC1/Configure.orig   2018-05-21 12:44:04.000000000 +0200
++++ perl-5.28.0-RC1/Configure	2018-05-22 12:21:53.908599933 +0200
+@@ -7269,8 +7269,8 @@ esac'
+ : Reproduce behavior of 5.005 and earlier, maybe drop that in 5.7.
+ case "$installstyle" in
+ '')	case "$prefix" in
+-		*perl*) dflt='lib';;
+-		*) dflt='lib/perl5' ;;
++		*perl*) dflt='lib64';;
++		*) dflt='lib64/perl5' ;;
+ 	esac
+ 	;;
+ *)	dflt="$installstyle" ;;
+@@ -7336,8 +7336,8 @@ esac
+ : /opt/perl/lib/perl5... would be redundant.
+ : The default "style" setting is made in installstyle.U
+ case "$installstyle" in
+-*lib/perl5*) set dflt privlib lib/$package/$version ;;
+-*)	 set dflt privlib lib/$version ;;
++*lib64/perl5*) set dflt privlib lib64/$package/$version ;;
++*)	 set dflt privlib lib64/$version ;;
+ esac
+ eval $prefixit
+ $cat <<EOM
+@@ -7584,8 +7584,8 @@ siteprefixexp="$ansexp"
+ prog=`echo $package | $sed 's/-*[0-9.]*$//'`
+ case "$sitelib" in
+ '') case "$installstyle" in
+-	*lib/perl5*) dflt=$siteprefix/lib/$package/site_$prog/$version ;;
+-	*)	 dflt=$siteprefix/lib/site_$prog/$version ;;
++	*lib64/perl5*) dflt=$siteprefix/lib64/$package/site_$prog/$version ;;
++	*)	 dflt=$siteprefix/lib64/site_$prog/$version ;;
+ 	esac
+ 	;;
+ *)	dflt="$sitelib"
+@@ -8001,8 +8001,8 @@ case "$vendorprefix" in
+ 	'')
+ 		prog=`echo $package | $sed 's/-*[0-9.]*$//'`
+ 		case "$installstyle" in
+-		*lib/perl5*) dflt=$vendorprefix/lib/$package/vendor_$prog/$version ;;
+-		*)	     dflt=$vendorprefix/lib/vendor_$prog/$version ;;
++		*lib64/perl5*) dflt=$vendorprefix/lib64/$package/vendor_$prog/$version ;;
++		*)	     dflt=$vendorprefix/lib64/vendor_$prog/$version ;;
+ 		esac
+ 		;;
+ 	*)	dflt="$vendorlib"
diff --git a/SOURCES/perl-USE_MM_LD_RUN_PATH.patch b/SOURCES/perl-USE_MM_LD_RUN_PATH.patch
new file mode 100644
index 0000000..c982eb4
--- /dev/null
+++ b/SOURCES/perl-USE_MM_LD_RUN_PATH.patch
@@ -0,0 +1,109 @@
+diff -up perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm.usem perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm
+--- perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm.usem	2011-05-08 05:10:08.000000000 +0200
++++ perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm	2011-05-17 11:14:22.169115984 +0200
+@@ -89,6 +89,11 @@ libraries.  LD_RUN_PATH is a colon separ
+ in LDLOADLIBS. It is passed as an environment variable to the process
+ that links the shared library.
+ 
++Fedora extension: This generation of LD_RUN_PATH is disabled by default.
++To use the generated LD_RUN_PATH for all links, set the USE_MM_LD_RUN_PATH
++MakeMaker object attribute / argument, (or set the $USE_MM_LD_RUN_PATH
++environment variable).
++
+ =head2 BSLOADLIBS
+ 
+ List of those libraries that are needed but can be linked in
+diff -up perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm.usem perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
+--- 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
+@@ -317,7 +317,7 @@ sub full_setup {
+     PERM_DIR PERM_RW PERM_RWX MAGICXS
+     PL_FILES PM PM_FILTER PMLIBDIRS PMLIBPARENTDIRS POLLUTE
+     PREREQ_FATAL PREREQ_PM PREREQ_PRINT PRINT_PREREQ PUREPERL_ONLY
+-    SIGN SKIP TEST_REQUIRES TYPEMAPS UNINST VERSION VERSION_FROM XS
++    SIGN SKIP TEST_REQUIRES TYPEMAPS UNINST USE_MM_LD_RUN_PATH VERSION VERSION_FROM XS
+     XSBUILD XSMULTI XSOPT XSPROTOARG XS_VERSION
+     clean depend dist dynamic_lib linkext macro realclean tool_autosplit
+ 
+@@ -501,7 +501,27 @@ sub new {
+     # PRINT_PREREQ is RedHatism.
+     if ("@ARGV" =~ /\bPRINT_PREREQ\b/) {
+         $self->_PRINT_PREREQ;
+-   }
++    }
++
++    # USE_MM_LD_RUN_PATH - another RedHatism to disable automatic RPATH generation
++    if ( ( ! $self->{USE_MM_LD_RUN_PATH} )
++       &&( ("@ARGV" =~ /\bUSE_MM_LD_RUN_PATH(=([01]))?\b/)
++        ||( exists( $ENV{USE_MM_LD_RUN_PATH} )
++           &&( $ENV{USE_MM_LD_RUN_PATH} =~ /([01])?$/ )
++           )
++        )
++       )
++    {
++       my $v = $1;
++       if( $v )
++       {
++           $v = ($v=~/=([01])$/)[0];
++       }else
++       {
++           $v = 1;
++       };
++       $self->{USE_MM_LD_RUN_PATH}=$v;
++    };
+ 
+     print "MakeMaker (v$VERSION)\n" if $Verbose;
+     if (-f "MANIFEST" && ! -f "Makefile" && ! $UNDER_CORE){
+@@ -2821,6 +2841,40 @@ precedence.  A typemap in the current di
+ precedence, even if it isn't listed in TYPEMAPS.  The default system
+ typemap has lowest precedence.
+ 
++=item USE_MM_LD_RUN_PATH
++
++boolean
++The Fedora perl MakeMaker distribution differs from the standard
++upstream release in that it disables use of the MakeMaker generated
++LD_RUN_PATH by default, UNLESS this attribute is specified , or the
++USE_MM_LD_RUN_PATH environment variable is set during the MakeMaker run.
++
++The upstream MakeMaker will set the ld(1) environment variable LD_RUN_PATH
++to the concatenation of every -L ld(1) option directory in which a -l ld(1)
++option library is found, which is used as the ld(1) -rpath option if none
++is specified. This means that, if your application builds shared libraries
++and your MakeMaker application links to them, that the absolute paths of the
++libraries in the build tree will be inserted into the RPATH header of all
++MakeMaker generated binaries, and that such binaries will be unable to link
++to these libraries if they do not still reside in the build tree directories
++(unlikely) or in the system library directories (/lib or /usr/lib), regardless
++of any LD_LIBRARY_PATH setting. So if you specified -L../mylib -lmylib , and
++ your 'libmylib.so' gets installed into /some_directory_other_than_usr_lib,
++ your MakeMaker application will be unable to link to it, even if LD_LIBRARY_PATH
++is set to include /some_directory_other_than_usr_lib, because RPATH overrides
++LD_LIBRARY_PATH.
++
++So for Fedora MakeMaker builds LD_RUN_PATH is NOT generated by default for
++every link. You can still use explicit -rpath ld options or the LD_RUN_PATH
++environment variable during the build to generate an RPATH for the binaries.
++
++You can set the USE_MM_LD_RUN_PATH attribute to 1 on the MakeMaker command
++line or in the WriteMakefile arguments to enable generation of LD_RUN_PATH
++for every link command.
++
++USE_MM_LD_RUN_PATH will default to 1 (LD_RUN_PATH will be used) IF the
++$USE_MM_LD_RUN_PATH environment variable is set during a MakeMaker run.
++
+ =item VENDORPREFIX
+ 
+ Like PERLPREFIX, but only for the vendor install locations.
+diff -up perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm.usem perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+--- perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm.usem	2011-05-08 05:10:08.000000000 +0200
++++ perl-5.14.0/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm	2011-05-17 11:14:22.172115972 +0200
+@@ -1045,7 +1045,7 @@ $(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $
+     }
+ 
+     my $ld_run_path_shell = "";
+-    if ($self->{LD_RUN_PATH} ne "") {
++    if (($self->{LD_RUN_PATH} ne "") && ($self->{USE_MM_LD_RUN_PATH})) {
+         $ld_run_path_shell = 'LD_RUN_PATH="$(LD_RUN_PATH)" ';
+     }
+ 
diff --git a/SOURCES/perl-example.stp b/SOURCES/perl-example.stp
new file mode 100644
index 0000000..040f8e3
--- /dev/null
+++ b/SOURCES/perl-example.stp
@@ -0,0 +1,21 @@
+/*
+    Example of the perl systemtap tapset shows a nested view of perl subroutine
+    calls and returns across the whole system.
+
+    To run:
+        stap perl-example.stp (for all perl processes)
+    For specific perl process:
+        stap perl-example.stp -c COMMAND
+*/
+
+probe perl.sub.call
+{
+    printf("%s => sub: %s, filename: %s, line: %d, package: %s\n",
+        thread_indent(1), sub, filename, lineno, package)
+}
+
+probe perl.sub.return
+{
+    printf("%s <= sub: %s, filename: %s, line: %d, package: %s\n",
+        thread_indent(-1), sub, filename, lineno, package)
+}
diff --git a/SOURCES/perl-perlbug-tag.patch b/SOURCES/perl-perlbug-tag.patch
new file mode 100644
index 0000000..9988d86
--- /dev/null
+++ b/SOURCES/perl-perlbug-tag.patch
@@ -0,0 +1,21 @@
+diff -up perl-5.28.0-RC1/utils/perlbug.PL.orig perl-5.28.0-RC1/utils/perlbug.PL
+--- perl-5.28.0-RC1/utils/perlbug.PL.orig	2018-05-21 12:44:04.000000000 +0200
++++ perl-5.28.0-RC1/utils/perlbug.PL	2018-05-22 12:17:58.584993588 +0200
+@@ -288,17 +288,6 @@ sub Init {
+     $ok = '';
+     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 ) {
+-		my $date = localtime $patchlevel_date;
+-		print <<"EOF";
+-"perlbug -ok" and "perlbug -nok" do not report on Perl versions which
+-are more than 60 days old.  This Perl version was constructed on
+-$date.  If you really want to report this, use
+-"perlbug -okay" or "perlbug -nokay".
+-EOF
+-		exit();
+-	    }
+ 	    # force these options
+ 	    unless ($opt{n}) {
+ 		$opt{S} = 1; # don't prompt for send
diff --git a/SOURCES/perl.stp b/SOURCES/perl.stp
new file mode 100644
index 0000000..dbc51a8
--- /dev/null
+++ b/SOURCES/perl.stp
@@ -0,0 +1,71 @@
+/*
+   This probe will fire when the perl script enters a subroutine.
+ */
+
+probe perl.sub.call = process("LIBRARY_PATH").mark("sub__entry")
+{
+
+  sub = user_string($arg1)
+  filename = user_string($arg2)
+  lineno = $arg3
+  package = user_string($arg4)
+
+}
+
+/*
+   This probe will fire when the return from a subroutine has been
+   hit.
+ */
+
+probe perl.sub.return = process("LIBRARY_PATH").mark("sub__return")
+{
+
+  sub = user_string($arg1)
+  filename = user_string($arg2)
+  lineno = $arg3
+  package = user_string($arg4)
+
+}
+
+/*
+   This probe will fire when the Perl interperter changes state.
+ */
+
+probe perl.phase.change = process("LIBRARY_PATH").mark("phase__change")
+{
+  newphase = user_string($arg1)
+  oldphase = user_string($arg2)
+
+}
+
+
+/*
+   Fires when Perl has successfully loaded an individual file.
+ */
+
+probe perl.loaded.file = process("LIBRARY_PATH").mark("loaded__file")
+{
+  filename = user_string($arg1)
+
+}
+
+
+/*
+   Fires when Perl is about to load an individual file.
+ */
+
+probe perl.loading.file = process("LIBRARY_PATH").mark("loading__file")
+{
+  filename = user_string($arg1)
+
+}
+
+
+/*
+   Traces the execution of each opcode in the Perl runloop.
+ */
+
+probe perl.op.entry = process("LIBRARY_PATH").mark("op__entry")
+{
+  opname = user_string($arg1)
+}
diff --git a/SPECS/perl.spec b/SPECS/perl.spec
new file mode 100644
index 0000000..2b02a61
--- /dev/null
+++ b/SPECS/perl.spec
@@ -0,0 +1,9112 @@
+%global perl_version    5.32.1
+%global perl_epoch      4
+%global perl_arch_stem -thread-multi
+%global perl_archname %{_arch}-%{_os}%{perl_arch_stem}
+
+%global multilib_64_archs aarch64 %{power64} s390x sparc64 x86_64 
+%global parallel_tests 1
+%global tapsetdir   %{_datadir}/systemtap/tapset
+
+%global dual_life 0
+%global rebuild_from_scratch %{defined perl_bootstrap}
+
+# This overrides filters from build root (/usr/lib/rpm/macros.d/macros.perl)
+# intentionally (unversioned perl(DB) is removed and versioned one is kept).
+# Filter provides from *.pl files, bug #924938
+%global __provides_exclude_from .*%{_docdir}|.*%{perl_archlib}/.*\\.pl$|.*%{perl_privlib}/.*\\.pl$
+%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)
+# same as we provide in /usr/lib/rpm/macros.d/macros.perl
+%global perl5_testdir   %{_libexecdir}/perl5-tests
+
+# Optional features
+# Run C++ tests
+%bcond_without perl_enables_cplusplus_test
+# We can bootstrap without gdbm
+%bcond_without gdbm
+# Support for groff, bug #135101
+%bcond_without perl_enables_groff
+# Run Turkish locale tests
+%bcond_without perl_enables_turkish_test
+# Run syslog tests
+%bcond_with perl_enables_syslog_test
+# SystemTap support
+%bcond_without perl_enables_systemtap
+# <> operator uses File::Glob nowadays. CSH is not needed.
+%bcond_with perl_enables_tcsh
+# We can skip %%check phase
+%bcond_without test
+
+Name:           perl
+# These are all found licenses. They are distributed among various
+# subpackages.
+# dist/Tie-File/lib/Tie/File.pm:        GPLv2+ or Artistic
+# cpan/Getopt-Long/lib/Getopt/Long.pm:  GPLv2+ or Artistic
+# cpan/Compress-Raw-Zlib/Zlib.xs:       (GPL+ or Artistic) and zlib
+# cpan/Digest-MD5/MD5.xs:               (GPL+ or Artistic) and BSD
+# cpan/Time-Piece/Piece.xs:             (GPL+ or Artistic) and BSD
+# dist/PathTools/Cwd.xs:                (GPL+ or Artistic) and BSD
+# util.c:                               (GPL+ or Artistic) and BSD
+# cpan/perlfaq/lib/perlfaq4.pod:        (GPL+ or Artistic) and Public Domain
+# cpan/Test-Simple/lib/Test/Tutorial.pod:   (GPL+ or Artistic) and
+#                                           Public Domain
+# cpan/MIME-Base64/Base64.xs:           (GPL+ or Artistic) and MIT
+# cpan/Test-Simple/lib/ok.pm:           CC0
+# cpan/Text-Tabs/lib/Text/Wrap.pm:      TTWL
+# cpan/Encode/bin/encguess:             Artistic 2.0
+# cpan/libnet/lib/Net/libnetFAQ.pod:    Artistic    (CPAN RT#117888)
+# cpan/Unicode-Collate/Collate/allkeys.txt:     Unicode
+# inline.h:                             MIT
+# lib/unicore:                          UCD
+# ext/SDBM_File/sdbm.{c,h}:             Public domain
+# regexec.c, regcomp.c:                 HSRL
+# cpan/Locale-Maketext-Simple/lib/Locale/Maketext/Simple.pm:    MIT (with
+#                                       exception for Perl)
+# time64.c:                             MIT
+# perly.h:                              GPLv3+ with Bison exception
+# pod/perlpodstyle.pod:                 MIT
+# pod/perlunicook.pod:                  (GPL+ or Artistic) and Public Domain
+# pod/perlgpl.pod:                      GPL text
+# pod/perlartistic.pod:                 Artistic text
+# ext/File-Glob/bsd_glob.{c,h}:         BSD
+# Other files:                          GPL+ or Artistic
+## Not in a binary package
+# ebcdic_tables.h:                                  MIT
+# cpan/podlators/t/docs/pod.t:                      MIT
+# cpan/podlators/t/docs/pod-spelling.t:             MIT
+# cpan/podlators/t/docs/spdx-license.t:             MIT
+# cpan/podlators/t/docs/synopsis.t:                 MIT
+# cpan/podlators/t/docs/urls.t :                    MIT
+# cpan/podlators/t/lib/Test/RRA.pm:                 MIT
+# cpan/podlators/t/lib/Test/RRA/Config.pm:          MIT
+# cpan/podlators/t/lib/Test/RRA/ModuleVersion.pm:   MIT
+# cpan/podlators/t/style/minimum-version.t:         MIT
+# cpan/podlators/t/style/module-version.t:          MIT
+# cpan/podlators/t/style/strict.t:                  MIT
+# cpan/Term-ANSIColor/t/lib/Test/RRA/Config.pm:     MIT
+## Unbundled
+# cpan/Compress-Raw-Bzip2/bzip2-src:    BSD
+# cpan/Compress-Raw-Zlib/zlib-src:      zlib
+# perl.h (EBDIC parts)                              MIT
+## perl sub-package notice
+# perluniprops.pod is generated from lib/unicore sources:   UCD
+# uni_keywords.h is generated from lib/unicore sources:     UCD
+#
+# This sub-subpackage doesn't contain any copyrightable material.
+# Nevertheless, it needs a License tag, so we'll use the generic
+# "perl" license.
+License:        GPL+ or Artistic
+Epoch:          %{perl_epoch}
+Version:        %{perl_version}
+# release number must be even higher, because dual-lived modules will be broken otherwise
+Release:        471%{?dist}
+Summary:        Practical Extraction and Report Language
+Url:            https://www.perl.org/
+Source0:        https://www.cpan.org/src/5.0/perl-%{perl_version}.tar.xz
+Source3:        macros.perl
+#Systemtap tapset and example that make use of systemtap-sdt-devel
+# build requirement. Written by lberk; Not yet upstream.
+Source4:        perl.stp
+Source5:        perl-example.stp
+# Tom Christiansen confirms Pod::Html uses the same license as perl
+Source6:        Pod-Html-license-clarification
+
+# Pregenerated dependencies for bootstrap.
+# If your RPM tool fails on including the source file, then you forgot to
+# define _sourcedir macro to point to the directory with the sources.
+Source7:        gendep.macros
+%if %{defined perl_bootstrap}
+%include %{SOURCE7}
+%endif
+
+# Removes date check, Fedora/RHEL specific
+Patch1:         perl-perlbug-tag.patch
+
+# Fedora/RHEL only (64bit only)
+Patch2:         perl-5.8.0-libdir64.patch
+
+# Fedora/RHEL specific (use libresolv instead of libbind), bug #151127
+Patch3:         perl-5.10.0-libresolv.patch
+
+# FIXME: May need the "Fedora" references removed before upstreaming
+# patches ExtUtils-MakeMaker
+Patch4:         perl-USE_MM_LD_RUN_PATH.patch
+
+# Provide maybe_command independently, bug #1129443
+Patch5:         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.
+Patch6:         perl-5.10.0-x86_64-io-test-failure.patch
+
+# switch off test, which is failing only on koji (fork)
+Patch7:         perl-5.14.1-offtest.patch
+
+# Define SONAME for libperl.so
+Patch8:         perl-5.16.3-create_libperl_soname.patch
+
+# Install libperl.so to -Dshrpdir value
+Patch9:         perl-5.22.0-Install-libperl.so-to-shrpdir-on-Linux.patch
+
+# Make *DBM_File desctructors thread-safe, bug #1107543, RT#61912
+Patch10:        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
+Patch11:        perl-5.22.1-Replace-EU-MM-dependnecy-with-EU-MM-Utils-in-IPC-Cmd.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/>
+Patch12:        perl-5.27.8-hints-linux-Add-lphtread-to-lddlflags.patch
+
+# Pass the correct CFLAGS to dtrace
+Patch13:        perl-5.28.0-Pass-CFLAGS-to-dtrace.patch
+
+# Do not use C compiler reserved identifiers, in upstream after 5.33.0
+Patch14:        perl-5.33.0-MUTABLE_PTR-Rmv-non-standard-syntax.patch
+
+# Fix SvUV_nomg() macro definition, in upstream after 5.33.0
+Patch15:        perl-5.33.0-sv.h-Wanted-UOK-but-said-IOK.patch
+
+# Fix SvTRUE() documentation, in upstream after 5.33.0
+Patch16:        perl-5.33.0-Update-pod-for-SvTRUE-to-indicate-single-param-evalu.patch
+
+# Fix ext/XS-APItest/t/utf8_warn_base.pl tests, in upstream after 5.33.0
+Patch17:        perl-5.33.0-ext-XS-APItest-t-utf8_warn_base.pl-Fix-a-couple-test.patch
+
+# Fix IO::Handle::error() to report write errors, GH#6799, in upstream after 5.33.0
+Patch18:        perl-5.33.0-make-fh-error-report-errors-from-both-input-and-outp.patch
+Patch19:        perl-5.33.0-IO-Handle-clear-the-error-on-both-input-and-output-s.patch
+
+# Fix setting a non-blocking mode in IO::Socket::UNIX, GH#17787,
+# in upstream after 5.33.0
+Patch21:        perl-5.33.0-IO-Socket-UNIX-synchronize-behavior-with-module-docu.patch
+
+# Fix running actions after stepping in a debugger, GH#17901,
+# in upstream after 5.33.0
+Patch22:        perl-5.33.0-After-running-an-action-in-the-debugger-turn-it-off.patch
+Patch23:        perl-5.33.0-Clearing-DB-action-at-the-end-is-no-longer-needed.patch
+Patch24:        perl-5.33.0-Add-missing-MANIFEST-entry-from-fix-for-debugger.patch
+
+# Fix a buffer size for asctime_r() and ctime_r() functions,
+# in upstream after 5.33.0
+Patch25:        perl-5.33.0-reentr.c-Buffer-sizes-for-asctime_r-ctime_r-are-smal.patch
+
+# Prevent from an integer overflow in RenewDouble() macro,
+# in upstream after 5.33.0
+Patch26:        perl-5.33.0-reentr.c-Prevent-infinite-looping.patch
+
+# Fix a number of arguments passed to a BOOT XS subroutine, GH#17755,
+# in upstream after 5.33.0
+Patch28:        perl-5.33.0-XSUB.h-fix-MARK-and-items-variables-inside-BOOT-XSUB.patch
+
+# Fix an IO::Handle spurious error reported for regular file handles,
+# GH#18019, in upstream after 5.33.0
+Patch29:        perl-5.33.0-IO-Handle-Fix-a-spurious-error-reported-for-regular-.patch
+
+# Fix inheritance resolution of lexial objects in a debugger, GH#17661,
+# in upstream after 5.33.0
+Patch30:        perl-5.33.0-fix-C-i-obj-where-obj-is-a-lexical.patch
+
+# Fix sorting with a block that calls return, GH#18081,
+# in upstream after 5.33.1
+Patch35:        perl-5.33.1-sort-return-foo.patch
+
+# Fix sv_collxfrm macro to respect locale, in upstream after 5.33.2
+Patch38:        perl-5.33.2-sv.h-sv_collxfrm-didn-t-work-properly.patch
+
+# Fix an iterator signedness in handling an mro exception, GH#18155,
+# in upstream after 5.33.2
+Patch39:        perl-5.33.2-mro.xs-Fix-compiler-warning.patch
+
+# Fix a code flow in Perl_sv_inc_nomg(), in upstream after 5.33.2
+Patch40:        perl-5.33.2-sv.c-Added-missing-braces-in-Perl_sv_inc_nomg.patch
+
+# Fix an undefined behavior in Perl_custom_op_get_field(),
+# in upstream after 5.33.3
+Patch41:        perl-5.33.3-Perl_custom_op_get_field-remove-undef-behaviour.patch
+
+# Fix Config variable names in in t/op tests, in upstream after 5.33.3
+Patch42:        perl-5.33.3-t-op-inc.t-t-op-hexfp.t-t-op-sprintf2.t-Add-missing-.patch
+
+# Fix fetching a magic on the stacked file test operators,
+# in upstream after 5.33.3
+Patch43:        perl-5.33.3-fetch-magic-on-the-first-stacked-filetest-not-the-la.patch
+
+# Fix a crash in optimizing split(), GH#18232, in upstream after 5.33.3
+Patch44:        perl-5.32.0-Add-av_count.patch
+Patch45:        perl-5.33.2-Remove-Perl_av_top_index.patch
+Patch46:        perl-5.32.0-pp_split-no-SWITCHSTACK-in-ary-split-.-optimisation.patch
+Patch47:        perl-5.33.3-pp_split-add-TonyC-s-stack-not-refcounted-suggestion.patch
+
+# Make accessing environment by DynaLoader thread-safe,
+# in upstream after 5.33.4
+Patch48:        perl-5.32.1-DynaLoader-use-PerlEnv_getenv.patch
+
+# Use duplocale() if available, in upstream after 5.33.4
+Patch49:        perl-5.33.4-locale.c-Fix-typo-in-ifdef.patch
+
+# Fix fc() in Turkish locale, in upstream after 5.33.5
+Patch50:        perl-5.33.5-Fix-buggy-fc-in-Turkish-locale.patch
+
+# Fix croaking on "my $_" when "use utf8" is in effect, GH#18449,
+# in upstream after 5.33.5
+Patch51:        perl-5.33.5-op.c-croak-on-my-_-when-use-utf8-is-in-effect.patch
+
+# Fix PERL_UNUSED_ARG() definition in XSUB.h, in upstream after 5.33.5
+Patch52:        perl-5.33.5-Use-perl.h-versions-of-PERL_UNUSED_foo-in-XSUB.h.patch
+
+# Add missing entries to perldiag, GH#18276, in upstream after 5.33.6
+Patch53:        perl-5.33.6-Add-missing-entries-to-perldiag-GH-18276.patch
+
+# Protect locale tests from LANGUAGE environment variable,
+# in upstream after 5.33.6
+Patch54:        perl-5.33.6-t-run-locale.t-Rmv-LANGUAGE-from-environment.patch
+
+# Prevent the number of buckets in a hash from getting too large,
+# in upstream after 5.33.6
+Patch55:        perl-5.32.1-hv.c-add-a-guard-clause-to-prevent-the-number-of-buc.patch
+
+# Fix a memory leak when compiling a regular expression, GH#18604,
+# in upstream after 5.33.7
+Patch56:        perl-5.33.7-regcomp.c-Remove-memory-leak.patch
+
+# Fix dumping a hash entry of PL_strtab type, in upstream after 5.33.7
+Patch57:        perl-5.32.1-Perl_do_sv_dump-handle-PL_strtab.patch
+
+# Fix an arithmetic left shift of a minimal integer value, GH#18639,
+# in upstream after 5.33.8
+Patch58:        perl-5.33.8-Fix-broken-left-shift-of-IV_MIN-under-use-integer.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
+
+# Update some of the bundled modules
+# see http://fedoraproject.org/wiki/Perl/perl.spec for instructions
+
+BuildRequires:  bash
+BuildRequires:  bzip2-devel
+BuildRequires:  coreutils
+BuildRequires:  findutils
+BuildRequires:  gcc
+%if %{with gdbm}
+BuildRequires:  gdbm-devel
+%endif
+# glibc-common for iconv
+BuildRequires:  glibc-common
+%if %{with perl_enables_groff}
+# Build-require groff tools for populating %%Config correctly, bug #135101
+BuildRequires:  groff-base
+%endif
+BuildRequires:  libdb-devel
+BuildRequires:  make
+%if !%{defined perl_bootstrap}
+BuildRequires:  perl-interpreter
+BuildRequires:  perl-generators
+%endif
+BuildRequires:  sed
+%if %{with perl_enables_systemtap}
+BuildRequires:  systemtap-sdt-devel
+%endif
+BuildRequires:  tar
+%if %{with perl_enables_tcsh}
+BuildRequires:  tcsh
+%endif
+BuildRequires:  zlib-devel
+
+# For tests
+%if %{with test}
+%if %{with perl_enables_cplusplus_test}
+# An optional ExtUtils-CBuilder's test
+BuildRequires:  gcc-c++
+%endif
+BuildRequires:  procps
+%if %{with perl_enables_turkish_test}
+# An optional t/re/fold_grind_T.t test
+BuildRequires:  glibc-langpack-tr
+%endif
+%if %{with perl_enables_syslog_test}
+BuildRequires:  rsyslog
+%endif
+%endif
+
+
+# compat macro needed for rebuild
+%global perl_compat perl(:MODULE_COMPAT_5.32.1)
+
+Requires:       %perl_compat
+Requires:       perl-interpreter%{?_isa} = %{perl_epoch}:%{perl_version}-%{release}
+Requires:       perl-libs%{?_isa} = %{perl_epoch}:%{perl_version}-%{release}
+Requires:       perl-devel%{?_isa} = %{perl_epoch}:%{perl_version}-%{release}
+Requires:       perl-macros
+Requires:       perl-utils
+%if %{defined perl_bootstrap}
+%gendep_perl
+%endif
+
+Requires:       perl-Archive-Tar, perl-Attribute-Handlers, perl-autodie,
+Requires:       perl-AutoLoader, perl-AutoSplit,
+Requires:       perl-B, perl-base, perl-Benchmark, perl-bignum, perl-blib,
+Requires:       perl-Carp, perl-Class-Struct,
+Requires:       perl-Compress-Raw-Bzip2, perl-Compress-Raw-Zlib,
+Requires:       perl-Config-Extensions, perl-Config-Perl-V, perl-constant,
+Requires:       perl-CPAN, perl-CPAN-Meta, perl-CPAN-Meta-Requirements,
+Requires:       perl-CPAN-Meta-YAML,
+Requires:       perl-Data-Dumper, perl-DB_File, perl-DBM_Filter,
+Requires:       perl-debugger, perl-deprecate,
+Requires:       perl-Devel-Peek, perl-Devel-PPPort, perl-Devel-SelfStubber,
+Requires:       perl-diagnostics, perl-Digest, perl-Digest-MD5, perl-Digest-SHA,
+Requires:       perl-DirHandle,
+Requires:       perl-doc,
+Requires:       perl-Dumpvalue,
+Requires:       perl-DynaLoader,
+Requires:       perl-Encode, perl-Encode-devel, perl-encoding,
+Requires:       perl-encoding-warnings, perl-English,
+Requires:       perl-Env, perl-Errno, perl-experimental, perl-Exporter,
+Requires:       perl-ExtUtils-CBuilder, perl-ExtUtils-Constant,
+Requires:       perl-ExtUtils-Command,
+Requires:       perl-ExtUtils-Embed, perl-ExtUtils-Install,
+Requires:       perl-ExtUtils-MakeMaker, perl-ExtUtils-Manifest,
+Requires:       perl-ExtUtils-Miniperl, perl-ExtUtils-ParseXS,
+Requires:       perl-Fcntl, perl-fields,
+Requires:       perl-File-Basename, perl-File-Compare, perl-File-Copy,
+Requires:       perl-File-DosGlob, perl-File-Fetch,
+Requires:       perl-File-Find, perl-File-Path, perl-File-stat, perl-File-Temp,
+Requires:       perl-FileCache, perl-FileHandle, perl-filetest,
+Requires:       perl-Filter, perl-Filter-Simple,
+Requires:       perl-FindBin,
+%if %{with gdbm}
+Requires:       perl-GDBM_File,
+%endif
+Requires:       perl-Getopt-Long, perl-Getopt-Std,
+Requires:       perl-Hash-Util, perl-Hash-Util-FieldHash, perl-HTTP-Tiny,
+Requires:       perl-if, perl-IO, perl-IO-Compress, perl-IO-Socket-IP,
+Requires:       perl-IO-Zlib, perl-IPC-Cmd, perl-IPC-Open3, perl-IPC-SysV,
+Requires:       perl-I18N-Collate, perl-I18N-Langinfo, perl-I18N-LangTags,
+Requires:       perl-JSON-PP,
+Requires:       perl-less,
+Requires:       perl-lib, perl-libnet, perl-libnetcfg,
+Requires:       perl-locale, perl-Locale-Maketext, perl-Locale-Maketext-Simple,
+Requires:       perl-Math-BigInt, perl-Math-BigInt-FastCalc, perl-Math-BigRat,
+Requires:       perl-Math-Complex, perl-Memoize, perl-meta-notation,
+Requires:       perl-MIME-Base64,
+Requires:       perl-Module-CoreList, perl-Module-CoreList-tools,
+Requires:       perl-Module-Load, perl-Module-Load-Conditional,
+Requires:       perl-Module-Loaded, perl-Module-Metadata,
+Requires:       perl-mro,
+%if %{with gdbm}
+Requires:       perl-NDBM_File,
+%endif
+Requires:       perl-Net, perl-Net-Ping, perl-NEXT,
+%if %{with gdbm}
+Requires:       perl-ODBM_File,
+%endif
+Requires:       perl-Opcode, perl-open, perl-overload, perl-overloading,
+Requires:       perl-parent, perl-PathTools, perl-Params-Check, perl-perlfaq,
+Requires:       perl-PerlIO-via-QuotedPrint, perl-Perl-OSType,
+Requires:       perl-ph,
+Requires:       perl-Pod-Checker, perl-Pod-Escapes, perl-Pod-Functions,
+Requires:       perl-Pod-Html, perl-Pod-Perldoc,
+Requires:       perl-Pod-Simple, perl-Pod-Usage, perl-podlators, perl-POSIX,
+Requires:       perl-Safe, perl-Scalar-List-Utils,
+Requires:       perl-Search-Dict, perl-SelectSaver,
+Requires:       perl-SelfLoader, perl-sigtrap, perl-Socket, perl-sort,
+Requires:       perl-Storable,
+Requires:       perl-subs,
+Requires:       perl-Symbol, perl-Sys-Hostname, perl-Sys-Syslog,
+Requires:       perl-Term-ANSIColor, perl-Term-Cap, perl-Term-Complete,
+Requires:       perl-Term-ReadLine,
+Requires:       perl-Test, perl-Test-Harness, perl-Test-Simple,
+Requires:       perl-Text-Abbrev, perl-Text-Balanced, perl-Text-ParseWords,
+Requires:       perl-Text-Tabs+Wrap,
+Requires:       perl-Thread, perl-Thread-Queue, perl-Thread-Semaphore,
+Requires:       perl-threads, perl-threads-shared,
+Requires:       perl-Tie, perl-Tie-File, perl-Tie-Memoize, perl-Tie-RefHash,
+Requires:       perl-Time, perl-Time-HiRes, perl-Time-Local, perl-Time-Piece,
+Requires:       perl-Unicode-Collate, perl-Unicode-Normalize, perl-Unicode-UCD,
+Requires:       perl-User-pwent,
+Requires:       perl-vars, perl-version, perl-vmsish,
+
+# Full EVR is for compatibility with systems that swapped perl and perl-core
+# <https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules>,
+# bug #1464903.
+Provides:       perl-core = %{perl_version}-%{release}
+Provides:       perl-core%{?_isa} = %{perl_version}-%{release}
+# perl was renamed to perl-interpreter and perl-core renamed to perl
+Obsoletes:      perl-core < 5.26.0-395
+
+
+%description
+Perl is a high-level programming language with roots in C, sed, awk and shell
+scripting. Perl is good at handling processes and files, and is especially
+good at handling text. Perl's hallmarks are practicality and efficiency.
+While it is used to do a lot of different things, Perl's most common
+applications are system administration utilities and web programming.
+
+This is a metapackage with all the Perl bits and core modules that can be
+found in the upstream tarball from perl.org.
+
+If you need only a specific feature, you can install a specific package
+instead. E.g. to handle Perl scripts with %{_bindir}/perl interpreter,
+install perl-interpreter package. See perl-interpreter description for more
+details on the Perl decomposition into packages.
+
+
+%package interpreter
+Summary:        Standalone executable Perl interpreter
+License:        GPL+ or Artistic
+# perl-interpreter denotes a package with the perl executable.
+# Full EVR is for compatibility with systems that swapped perl and perl-core
+# <https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules>,
+# bug #1464903.
+Version:        %{perl_version}
+Epoch:          %{perl_epoch}
+
+Requires:       perl-libs%{?_isa} = %{perl_epoch}:%{perl_version}-%{release}
+# Require this till perl-interpreter sub-package provides any modules
+Requires:       %perl_compat
+Suggests:       perl-doc = %{perl_version}-%{release}
+%if %{defined perl_bootstrap}
+%gendep_perl_interpreter
+%endif
+
+# We need this to break the dependency loop, and ensure that perl-libs 
+# gets installed before perl-interpreter.
+Requires(post): perl-libs
+# Same as perl-libs. We need macros in basic buildroot.
+Requires(post): perl-macros
+
+# suidperl isn't created by upstream since 5.12.0
+Obsoletes:      perl-suidperl <= 4:5.12.2
+# perl was renamed to perl-interpreter and perl-core renamed to perl
+# <https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules>,
+# bug #1464903.
+Obsoletes:      perl < 4:5.26.0-395
+
+%description interpreter
+This is a Perl interpreter as a standalone executable %{_bindir}/perl
+required for handling Perl scripts. It does not provide all the other Perl
+modules or tools.
+
+Install this package if you want to program in Perl or enable your system to
+handle Perl scripts with %{_bindir}/perl interpreter.
+
+If your script requires some Perl modules, you can install them with
+"perl(MODULE)" where "MODULE" is a name of required module. E.g. install
+"perl(Test::More)" to make Test::More Perl module available.
+
+If you need all the Perl modules that come with upstream Perl sources, so
+called core modules, install perl package.
+
+If you only need perl run-time as a shared library, i.e. Perl interpreter
+embedded into another application, the only essential package is perl-libs.
+
+Perl header files can be found in perl-devel package.
+
+Perl utils like "h2ph" or "perlbug" can be found in perl-utils package.
+
+Perl debugger, usually invoked with "perl -d", is available in perl-debugger
+package.
+
+
+%package libs
+Summary:        The libraries for the perl run-time
+License:        (GPL+ or Artistic) and BSD and HSRL and MIT and UCD and Public domain
+# Compat provides
+Provides:       %perl_compat
+Provides:       perl(:MODULE_COMPAT_5.32.0)
+# Interpreter version to fulfil required genersted from "require 5.006;"
+Provides:       perl(:VERSION) = %{perl_version}
+# Integeres are 64-bit on all platforms
+Provides:       perl(:WITH_64BIT)
+# Threading provides
+Provides:       perl(:WITH_ITHREADS)
+Provides:       perl(:WITH_THREADS)
+# Largefile provides
+Provides:       perl(:WITH_LARGEFILES)
+# PerlIO provides
+Provides:       perl(:WITH_PERLIO)
+# A file provide for bytes module
+Provides:       perl(bytes_heavy.pl)
+# Loaded by charnames, unicore/Name.pm does not declare unicore::Name module
+Provides:       perl(unicore::Name)
+# Keep utf8 modules in perl-libs because a sole regular expression like /\pN/
+# causes loading utf8 and unicore/Heave.pl and unicore/lib files.
+Provides:       perl(utf8_heavy.pl)
+# utf8 and utf8_heavy.pl require Carp, re, strict, warnings, XSLoader
+# For AnyDBM_File
+Suggests:       perl(DB_File)
+# XSLoader requires DynaLoder
+Requires:       perl(DynaLoader)
+# Encode is loaded in BOOT section of PerlIO::encoding
+Requires:       perl(Encode)
+# File::Spec loaded by _charnames.pm that is loaded by \N{}
+Requires:       perl(File::Spec)
+%if %{with gdbm}
+# For AnyDBM_File
+Suggests:       perl(GDBM_File)
+Recommends:     perl(NDBM_File)
+Suggests:       perl(ODBM_File)
+%endif
+# Term::Cap is optional
+%if %{defined perl_bootstrap}
+%gendep_perl_libs
+%endif
+
+# Remove private redefinitions
+# XSLoader redefines DynaLoader name space for compatibility, but it still
+# loads DynaLoader.pm (though DynaLoader.xs is compiled into libperl).
+%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\((charnames|DynaLoader)\\)$
+
+%description libs
+The is a perl run-time (interpreter as a shared library and include
+directories).
+
+
+%package devel
+Summary:        Header files for use in perl development
+# l1_char_class_tab.h is generated from lib/unicore sources:    UCD
+License:        (GPL+ or Artistic) and UCD
+%if %{with perl_enables_systemtap}
+Requires:       systemtap-sdt-devel
+%endif
+Requires:       perl(ExtUtils::ParseXS)
+Requires:       %perl_compat
+# Match library and header files when downgrading releases
+Requires:       perl-libs%{?_isa} = %{perl_epoch}:%{perl_version}-%{release}
+Recommends:     perl-doc = %{perl_version}-%{release}
+# Devel::PPPort for h2xs script
+Requires:       perl(Devel::PPPort)
+# Compiler and linker options stored into perl and used when building XS
+# modules refer to hardering profiles like
+# /usr/lib/rpm/redhat/redhat-hardened-cc1 that are delivered by
+# redhat-rpm-config. Bug #1557667.
+Requires:       redhat-rpm-config
+# ExtUtils::Embed -e ldopts include libcrypt, bug #1666098
+Requires:       libxcrypt-devel%{?_isa}
+
+%if %{defined perl_bootstrap}
+%gendep_perl_devel
+%endif
+
+%description devel
+This package contains header files and development modules.
+Most perl packages will need to install perl-devel to build.
+
+
+%package macros
+Summary:        Macros for rpmbuild
+License:        GPL+ or Artistic
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl-interpreter
+%if %{defined perl_bootstrap}
+%gendep_perl_macros
+%endif
+
+%description macros
+RPM macros that are handy when building binary RPM packages.
+
+
+%package tests
+Summary:        The Perl test suite
+License:        GPL+ or Artistic
+# right?
+AutoReqProv:    0
+Requires:       %perl_compat
+# FIXME - note this will need to change when doing the core/minimal swizzle
+Requires:       perl
+%if %{defined perl_bootstrap}
+%gendep_perl_tests
+%endif
+
+%description tests
+This package contains the test suite included with Perl %{perl_version}.
+
+Install this if you want to test your Perl installation (binary and core
+modules).
+
+
+%package utils
+Summary:        Utilities packaged with the Perl distribution
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        %{perl_version}
+BuildArch:      noarch
+# Match library exactly for perlbug version string
+Requires:       perl-libs = %{perl_epoch}:%{perl_version}-%{release}
+# Keep /usr/sbin/sendmail and Module::CoreList optional for the perlbug tool
+%if %{defined perl_bootstrap}
+%gendep_perl_utils
+%endif
+Conflicts:      perl < 4:5.22.0-351
+
+%description utils
+Several utilities which come with Perl distribution like h2ph, perlbug,
+perlthanks, and pl2pm. Some utilities are provided by more specific
+packages like perldoc by perl-Pod-Perldoc and splain by perl-diagnostics.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Archive-Tar
+Summary:        A module for Perl manipulation of .tar files
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.36
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(IO::Zlib) >= 1.01
+# Optional run-time:
+Requires:       perl(IO::Compress::Bzip2) >= 2.015
+# IO::String not used if perl supports useperlio which is true
+# Use Compress::Zlib's version for IO::Uncompress::Bunzip2
+Requires:       perl(IO::Uncompress::Bunzip2) >= 2.015
+%if !%{defined perl_bootstrap}
+Requires:       perl(Text::Diff)
+%endif
+%if %{defined perl_bootstrap}
+%gendep_perl_Archive_Tar
+%endif
+
+%description Archive-Tar
+Archive::Tar provides an object oriented mechanism for handling tar files.  It
+provides class methods for quick and easy files handling while also allowing
+for the creation of tar file objects for custom manipulation.  If you have the
+IO::Zlib module installed, Archive::Tar will also support compressed or
+gzipped tar files.
+%endif
+
+%package Attribute-Handlers
+Summary:        Simpler definition of attribute handlers
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.01
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Attribute_Handlers
+%endif
+Conflicts:      perl < 4:5.22.0-351
+
+%description Attribute-Handlers
+This Perl module, when inherited by a package, allows that package's class to
+define attribute handler subroutines for specific attributes. Variables and
+subroutines subsequently defined in that package, or in packages derived from
+that package may be given attributes with the same names as the attribute
+handler subroutines, which will then be called in one of the compilation
+phases (i.e. in a "BEGIN", "CHECK", "INIT", or "END" block).
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package autodie
+Summary:        Replace functions with ones that succeed or die
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.32
+Requires:       %perl_compat
+BuildArch:      noarch
+Requires:       perl(B)
+Requires:       perl(Fcntl)
+Requires:       perl(overload)
+Requires:       perl(POSIX)
+%if %{defined perl_bootstrap}
+%gendep_perl_autodie
+%endif
+Conflicts:      perl < 4:5.16.2-259
+
+%description autodie
+The "autodie" and "Fatal" pragma provides a convenient way to replace
+functions that normally return false on failure with equivalents that throw an
+exception on failure.
+
+However "Fatal" has been obsoleted by the new autodie pragma. Please use
+autodie in preference to "Fatal".
+%endif
+
+%package AutoLoader
+Summary:        Load subroutines only on demand
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        5.74
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_AutoLoader
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description AutoLoader
+The AutoLoader module works with the AutoSplit module and the "__END__" token
+to defer the loading of some subroutines until they are used rather than
+loading them all at once.
+
+%package AutoSplit
+Summary:        Split a package for automatic loading
+License:        GPL+ or Artistic
+Epoch:          0
+# Real version 1.06
+Version:        5.74
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_AutoSplit
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description AutoSplit
+Split up your program into files that the AutoLoader module can handle. It is
+used by both the standard Perl libraries and by the ExtUtils::MakeMaker
+utility, to automatically configure libraries for automatic loading.
+
+%package autouse
+Summary:        Postpone load of modules until a function is used
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.11
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(warnings)
+%if %{defined perl_bootstrap}
+%gendep_perl_autouse
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description autouse
+If a module is not loaded yet, then the autouse declaration declares functions
+in the current package. When these functions are called, they load the package
+and substitute themselves with the correct definitions.
+
+%package B
+Summary:        Perl compiler backend
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.80
+Requires:       %perl_compat
+Requires:       perl(Data::Dumper)
+Requires:       perl(overloading)
+Requires:       perl(XSLoader)
+%if %{defined perl_bootstrap}
+%gendep_perl_B
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description B
+The "B" module supplies classes which allow a Perl program to delve into its
+own innards. It is the module used to implement the backends of the Perl
+compiler.
+
+%package base
+Summary:        Establish an ISA relationship with base classes at compile time
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.27
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_base
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description base
+"base" module allows you to both load one or more modules, while setting up
+inheritance from those modules at the same time.  Unless you are using the
+"fields" pragma, consider this module discouraged in favor of the
+lighter-weight "parent".
+
+%package Benchmark
+Summary:        Benchmark running times of Perl code
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.23
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Benchmark
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Benchmark
+The Benchmark module encapsulates a number of routines to help you figure out
+how long it takes to execute some code.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package bignum
+Summary:        Transparent big number support for Perl
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.51
+Requires:       %perl_compat
+Requires:       perl(Carp)
+# Math::BigInt::Lite is optional
+Requires:       perl(Math::BigRat)
+Requires:       perl(warnings)
+BuildArch:      noarch
+%if %{defined perl_bootstrap}
+%gendep_perl_bignum
+%endif
+Conflicts:      perl < 4:5.22.0-348
+
+%description bignum
+This package attempts to make it easier to write scripts that use BigInts and
+BigFloats in a transparent way.
+%endif
+
+%package blib
+Summary:        Use uninstalled version of a package
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.07
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_blib
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description blib
+This module looks for MakeMaker-like "blib" directory structure starting in
+given or current directory and working back up to five levels of directories.
+It is intended for use on command line with -M option as a way of testing
+arbitrary scripts against an uninstalled version of a package.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Carp
+Summary:        Alternative warn and die for modules
+Epoch:          0
+# Real version 1.50
+Version:        1.50
+License:        GPL+ or Artistic
+Requires:       %perl_compat
+Provides:       perl(Carp::Heavy) = %{version}
+%if %{defined perl_bootstrap}
+%gendep_perl_Carp
+%endif
+BuildArch:      noarch
+
+# Do not export unversioned module
+%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(Carp\\)\\s*$
+
+%description Carp
+The Carp routines are useful in your own modules because they act like
+die() or warn(), but with a message which is more likely to be useful to a
+user of your module. In the case of cluck, confess, and longmess that
+context is a summary of every call in the call-stack. For a shorter message
+you can use carp or croak which report the error as being from where your
+module was called. There is no guarantee that that is where the error was,
+but it is a good educated guess.
+%endif
+
+%package Class-Struct
+Summary:        Declare struct-like data types as Perl classes
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.66
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Class_Struct
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Class-Struct
+Class::Struct module exports a single function struct(). Given a list of
+element names and types, and optionally a class name, struct() creates a
+Perl 5 class that implements a struct-like data structure.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Compress-Raw-Bzip2
+Summary:        Low-Level Interface to bzip2 compression library
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.093
+Requires:       perl(Exporter), perl(File::Temp)
+%if %{defined perl_bootstrap}
+%gendep_perl_Compress_Raw_Bzip2
+%endif
+
+%description Compress-Raw-Bzip2
+This module provides a Perl interface to the bzip2 compression library.
+It is used by IO::Compress::Bzip2.
+
+%package Compress-Raw-Zlib
+Summary:        Low-Level Interface to the zlib compression library
+License:        (GPL+ or Artistic) and zlib
+Epoch:          0
+Version:        2.093
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Compress_Raw_Zlib
+%endif
+
+%description Compress-Raw-Zlib
+This module provides a Perl interface to the zlib compression library.
+It is used by IO::Compress::Zlib.
+%endif
+
+%package Config-Extensions
+Summary:        Hash lookup of which Perl core extensions were built
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.03
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Config_Extensions
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Config-Extensions
+The Config::Extensions module provides a hash %%Extensions containing all the
+core extensions that were enabled for this perl.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Config-Perl-V
+Summary:        Structured data retrieval of perl -V output
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.32
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Config_Perl_V
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-347
+
+%description Config-Perl-V
+The command "perl -V" will return you an excerpt from the %%Config::Config
+hash combined with the output of "perl -V" that is not stored inside the hash,
+but only available to the perl binary itself. This package provides Perl
+module that will return you the output of "perl -V" in a structure.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package constant
+Summary:        Perl pragma to declare constants
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.33
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_constant
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.16.3-264
+
+%description constant
+This pragma allows you to declare constants at compile-time:
+
+use constant PI => 4 * atan2(1, 1);
+
+When you declare a constant such as "PI" using the method shown above,
+each machine your script runs upon can have as many digits of accuracy
+as it can use. Also, your program will be easier to read, more likely
+to be maintained (and maintained correctly), and far less likely to
+send a space probe to the wrong planet because nobody noticed the one
+equation in which you wrote 3.14195.
+
+When a constant is used in an expression, Perl replaces it with its
+value at compile time, and may then optimize the expression further.
+In particular, any code in an "if (CONSTANT)" block will be optimized
+away if the constant is false.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package CPAN
+Summary:        Query, download and build perl modules from CPAN sites
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.27
+Requires:       make
+Requires:       %perl_compat
+# Some subpackaged modules are not dual-lived. E.g. "open". If a distribution
+# on CPAN declares a dependency on such module, CPAN client will fail,
+# because the only provider is a perl distribution.
+# Another issue is with dual-lived modules whose distribution actually does
+# not declare all needed core dependencies and the installation would also
+# fail.
+# As a result, any CPAN client must run-require the complete perl.
+Requires:       perl
+# Prefer Archive::Tar and Compress::Zlib over tar and gzip
+Requires:       perl(Archive::Tar) >= 1.50
+Requires:       perl(base)
+Requires:       perl(Data::Dumper)
+%if !%{defined perl_bootstrap}
+Requires:       perl(Devel::Size)
+%endif
+Requires:       perl(ExtUtils::Manifest)
+%if !%{defined perl_bootstrap}
+Requires:       perl(File::HomeDir) >= 0.65
+%endif
+Requires:       perl(File::Temp) >= 0.16
+Requires:       perl(lib)
+Requires:       perl(Net::Config)
+Requires:       perl(Net::FTP)
+Requires:       perl(POSIX)
+Requires:       perl(Term::ReadLine)
+%if !%{defined perl_bootstrap}
+Requires:       perl(URI)
+Requires:       perl(URI::Escape)
+%endif
+Requires:       perl(User::pwent)
+# Optional but higly recommended:
+%if !%{defined perl_bootstrap}
+Requires:       perl(Archive::Zip)
+Requires:       perl(Compress::Bzip2)
+Requires:       perl(CPAN::Meta) >= 2.110350
+%endif
+Requires:       perl(Compress::Zlib)
+Requires:       perl(Digest::MD5)
+# CPAN encourages Digest::SHA strongly because of integrity checks
+Requires:       perl(Digest::SHA)
+Requires:       perl(Dumpvalue)
+Requires:       perl(ExtUtils::CBuilder)
+%if ! %{defined perl_bootstrap}
+# Avoid circular deps local::lib -> Module::Install -> CPAN when bootstraping
+# local::lib recommended by CPAN::FirstTime default choice, bug #1122498
+Requires:       perl(local::lib)
+%endif
+Requires:       perl(Module::Build)
+%if ! %{defined perl_bootstrap}
+Requires:       perl(Text::Glob)
+%endif
+Provides:       cpan = %{version}
+%if %{defined perl_bootstrap}
+%gendep_perl_CPAN
+%endif
+BuildArch:      noarch
+
+%description CPAN
+The CPAN module automates or at least simplifies the make and install of
+perl modules and extensions. It includes some primitive searching
+capabilities and knows how to use LWP, HTTP::Tiny, Net::FTP and certain
+external download clients to fetch distributions from the net.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package CPAN-Meta
+Summary:        Distribution metadata for a CPAN dist
+Epoch:          0
+Version:        2.150010
+License:        GPL+ or Artistic
+Requires:       %perl_compat
+Requires:       perl(CPAN::Meta::YAML) >= 0.011
+Requires:       perl(Encode)
+Requires:       perl(JSON::PP) >= 2.27300
+%if %{defined perl_bootstrap}
+%gendep_perl_CPAN_Meta
+%endif
+BuildArch:      noarch
+
+%description CPAN-Meta
+Software distributions released to the CPAN include a META.json or, for
+older distributions, META.yml, which describes the distribution, its
+contents, and the requirements for building and installing the
+distribution. The data structure stored in the META.json file is described
+in CPAN::Meta::Spec.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package CPAN-Meta-Requirements
+Summary:        Set of version requirements for a CPAN dist
+Epoch:          0
+# Real version 2.140
+Version:        2.140
+License:        GPL+ or Artistic
+Requires:       %perl_compat
+BuildArch:      noarch
+# CPAN-Meta-Requirements used to have six decimal places
+%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(CPAN::Meta::Requirements\\)
+Provides:       perl(CPAN::Meta::Requirements) = %{version}000
+%if %{defined perl_bootstrap}
+%gendep_perl_CPAN_Meta_Requirements
+%endif
+
+%description CPAN-Meta-Requirements
+A CPAN::Meta::Requirements object models a set of version constraints like
+those specified in the META.yml or META.json files in CPAN distributions.
+It can be built up by adding more and more constraints, and it will reduce
+them to the simplest representation.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package CPAN-Meta-YAML
+Version:        0.018
+Epoch:          0
+Summary:        Read and write a subset of YAML for CPAN Meta files
+License:        GPL+ or Artistic
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_CPAN_Meta_YAML
+%endif
+
+%description CPAN-Meta-YAML
+This module implements a subset of the YAML specification for use in reading
+and writing CPAN metadata files like META.yml and MYMETA.yml. It should not be
+used for any other general YAML parsing or generation task.
+%endif
+
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Data-Dumper
+Summary:        Stringify perl data structures, suitable for printing and eval
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.174
+Requires:       %perl_compat
+Requires:       perl(B::Deparse)
+Requires:       perl(bytes)
+Requires:       perl(Scalar::Util)
+Requires:       perl(XSLoader)
+%if %{defined perl_bootstrap}
+%gendep_perl_Data_Dumper
+%endif
+
+%description Data-Dumper
+Given a list of scalars or reference variables, writes out their contents
+in perl syntax. The references can also be objects. The content of each
+variable is output in a single Perl statement. Handles self-referential
+structures correctly.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package DB_File
+Summary:        Perl5 access to Berkeley DB version 1.x
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.853
+Requires:       %perl_compat
+Requires:       perl(Fcntl)
+Requires:       perl(XSLoader)
+%if %{defined perl_bootstrap}
+%gendep_perl_DB_File
+%endif
+Conflicts:      perl < 4:5.16.3-264
+
+%description DB_File
+DB_File is a module which allows Perl programs to make use of the facilities
+provided by Berkeley DB version 1.x (if you have a newer version of DB, you
+will be limited to functionality provided by interface of version 1.x). The
+interface defined here mirrors the Berkeley DB interface closely.
+%endif
+
+%package DBM_Filter
+Summary:        Filter DBM keys and values
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.06
+Requires:       %perl_compat
+Requires:       perl(Compress::Zlib)
+Requires:       perl(Encode)
+%if %{defined perl_bootstrap}
+%gendep_perl_DBM_Filter
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+# Remove private redefinitions
+# DBM_Filter redefines Tie::Hash, but does not load it.
+%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(Tie::Hash\\)$
+
+%description DBM_Filter
+This module provides an interface that allows filters to be applied to tied
+hashes associated with DBM files.
+
+%package debugger
+Summary:        Perl debugger
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.56
+BuildArch:      noarch
+# File provides
+Provides:       perl(dumpvar.pl) = %{perl_version}
+Provides:       perl(perl5db.pl) = %{version}
+Requires:       %perl_compat
+Recommends:     perl(Carp)
+Recommends:     perl(Config)
+Requires:       perl(Cwd)
+Recommends:     perl(Devel::Peek)
+Requires:       perl(feature)
+Recommends:     perl(IO::Handle)
+Recommends:     perl(File::Basename)
+Recommends:     perl(File::Path)
+Requires:       perl(IO::Socket)
+Requires:       perl(meta_notation) = %{perl_version}
+Requires:       perl(mro)
+%if !%{defined perl_bootstrap}
+Suggests:       perl(PadWalker) >= 0.08
+%endif
+Recommends:     perl(POSIX)
+Requires:       perl(Term::ReadLine)
+# ??? Term::Rendezvous
+Requires:       perl(threads)
+Requires:       perl(threads::shared)
+Requires:       perl(vars)
+Requires:       perl(warnings)
+%if %{defined perl_bootstrap}
+%gendep_perl_debugger
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description debugger
+This is the perl debugger. It is loaded automatically by Perl when you invoke
+a script with "perl -d". There is also "DB" module contained for
+a programmatic interface to the debugging API.
+
+%package deprecate
+Summary:        Perl pragma for deprecating the inclusion of a module in core
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.04
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(Config)
+%if %{defined perl_bootstrap}
+%gendep_perl_deprecate
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description deprecate
+"deprecate" pragma simplifies the maintenance of dual-life modules that will no
+longer be included in the Perl core in a future Perl release, but are
+still included currently. The purpose of the pragma is to alert users to the
+status of such a module by issuing a warning that encourages them to install
+the module from CPAN, so that a future upgrade to a perl which omits the
+module will not break their code.
+
+%package Devel-Peek
+Summary:        A data debugging tool for the XS programmer
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.28
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Devel_Peek
+%endif
+Conflicts:      perl < 4:5.22.0-351
+
+%description Devel-Peek
+Devel::Peek contains functions which allows raw Perl data types to be
+manipulated from a Perl script. This is used by those who do XS programming to
+check that the data they are sending from C to Perl looks as they think it
+should look.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Devel-PPPort
+Summary:        Perl Pollution Portability header generator
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        3.57
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Devel_PPPort
+%endif
+Conflicts:      perl < 4:5.20.1-310
+
+%description Devel-PPPort
+Perl's API has changed over time, gaining new features, new functions,
+increasing its flexibility, and reducing the impact on the C name space
+environment (reduced pollution). The header file written by this module,
+typically ppport.h, attempts to bring some of the newer Perl API features
+to older versions of Perl, so that you can worry less about keeping track
+of old releases, but users can still reap the benefit.
+%endif
+
+%package Devel-SelfStubber
+Summary:        Generate stubs for a SelfLoading module
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.06
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Devel_SelfStubber
+%endif
+Conflicts:      perl < 4:5.22.0-351
+
+%description Devel-SelfStubber
+Devel::SelfStubber prints the stubs you need to put in the module before the
+__DATA__ token (or you can get it to print the entire module with stubs
+correctly placed). The stubs ensure that if a method is called, it will get
+loaded. They are needed specifically for inherited autoloaded methods.
+
+%package diagnostics
+Summary:        Produce verbose warning diagnostics
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.37
+BuildArch:      noarch
+Requires:       %perl_compat
+# Match library exactly for diagnostics messages
+Requires:       perl-libs = %{perl_epoch}:%{perl_version}-%{release}
+Requires:       perl(Getopt::Std)
+%if %{defined perl_bootstrap}
+%gendep_perl_diagnostics
+%endif
+Conflicts:      perl-utils < 5.30.1-451
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description diagnostics
+The diagnostics module extends the terse diagnostics normally emitted by both
+the perl compiler and the perl interpreter (from running perl with a -w switch
+or "use warnings"), augmenting them with the more explicative and endearing
+descriptions found in perldiag. splain tool explains perl messages found on
+standard input.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Digest
+Summary:        Modules that calculate message digests
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          0
+Version:        1.17
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(MIME::Base64)
+%if %{defined perl_bootstrap}
+%gendep_perl_Digest
+%endif
+
+%description Digest
+The Digest:: modules calculate digests, also called "fingerprints" or
+"hashes", of some data, called a message. The digest is (usually)
+some small/fixed size string. The actual size of the digest depend of
+the algorithm used. The message is simply a sequence of arbitrary
+bytes or bits.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Digest-MD5
+Summary:        Perl interface to the MD5 Algorithm
+License:        (GPL+ or Artistic) and BSD
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          0
+# Real version 2.55_01
+Version:        2.55
+Requires:       %perl_compat
+Requires:       perl(XSLoader)
+# Recommended
+Requires:       perl(Digest::base) >= 1.00
+%if %{defined perl_bootstrap}
+%gendep_perl_Digest_MD5
+%endif
+
+%description Digest-MD5
+The Digest::MD5 module allows you to use the RSA Data Security Inc. MD5
+Message Digest algorithm from within Perl programs. The algorithm takes as
+input a message of arbitrary length and produces as output a 128-bit
+"fingerprint" or "message digest" of the input.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Digest-SHA
+Summary:        Perl extension for SHA-1/224/256/384/512
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        6.02
+Requires:       %perl_compat
+Requires:       perl(Carp)
+# Recommended
+Requires:       perl(Digest::base)
+%if %{defined perl_bootstrap}
+%gendep_perl_Digest_SHA
+%endif
+
+%description Digest-SHA
+Digest::SHA is a complete implementation of the NIST Secure Hash
+Standard.  It gives Perl programmers a convenient way to calculate
+SHA-1, SHA-224, SHA-256, SHA-384, and SHA-512 message digests.  The
+module can handle all types of input, including partial-byte data.
+%endif
+
+%package DirHandle
+Summary:        Supply object methods for directory handles
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.05
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(warnings)
+%if %{defined perl_bootstrap}
+%gendep_perl_DirHandle
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description DirHandle
+There is no reason to use this module nowadays. The DirHandle module provides
+an alternative interface to the opendir(), closedir(), readdir(), and
+rewinddir() functions. Since Perl 5.6, opendir() alone has been all you need
+for lexical handles.
+
+%package doc
+Summary:        Perl language documentation
+License:        (GPL+ or Artistic) and UCD and Public Domain
+Epoch:          0
+Version:        %{perl_version}
+BuildArch:      noarch
+Requires:       %perl_compat
+# For perldoc tool
+Recommends:     perl-Pod-Perldoc
+Conflicts:      perl < 4:5.30.1-451
+
+%description doc
+This is a documentation for Perl language. It's provided in POD and manual
+page format.
+
+%package Dumpvalue
+Summary:        Screen dump of Perl data
+License:        GPL+ or Artistic
+Epoch:          0
+# Real version 1.21
+Version:        2.27
+BuildArch:      noarch
+Requires:       %perl_compat
+Recommends:     perl(Devel::Peek)
+%if %{defined perl_bootstrap}
+%gendep_perl_Dumpvalue
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description Dumpvalue
+Dumpvalue module enables you to print a content of variables and other Perl
+data structures.
+
+%package DynaLoader
+Summary:        Dynamically load C libraries into Perl code
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.47
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_DynaLoader
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description DynaLoader
+The DynaLoader module defines a standard generic interface to the dynamic
+linking mechanisms available on many platforms. Its primary purpose is to
+implement automatic dynamic loading of Perl modules. For a simpler interface,
+see XSLoader module.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Encode
+Summary:        Character encodings in Perl
+License:        (GPL+ or Artistic) and Artistic 2.0 and UCD
+Epoch:          4
+Version:        3.06
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Encode
+%endif
+Conflicts:      perl < 4:5.16.2-256
+
+%description Encode
+The Encode module provides the interface between Perl strings and the rest
+of the system. Perl strings are sequences of characters.
+
+%package encoding
+Summary:        Write your Perl script in non-ASCII or non-UTF-8
+License:        GPL+ or Artistic
+Epoch:          4
+Version:        3.00
+# Keeping this sub-package arch-specific because it installs files into
+# arch-specific directories.
+Requires:       %perl_compat
+Requires:       perl(Carp)
+# Config not needed on perl ≥ 5.008
+# Consider Filter::Util::Call as mandatory, bug #1165183, CPAN RT#100427
+Requires:       perl(Filter::Util::Call)
+# I18N::Langinfo is optional
+# PerlIO::encoding is optional
+Requires:       perl(utf8)
+%if %{defined perl_bootstrap}
+%gendep_perl_encoding
+%endif
+Conflicts:      perl-Encode < 2:2.60-314
+
+%description encoding
+With the encoding pragma, you can write your Perl script in any encoding you
+like (so long as the Encode module supports it) and still enjoy Unicode
+support.
+
+However, this encoding module is deprecated under perl 5.18. It uses
+a mechanism provided by perl that is deprecated under 5.18 and higher, and may
+be removed in a future version.
+
+The easiest and the best alternative is to write your script in UTF-8.
+
+%package Encode-devel
+Summary:        Character encodings in Perl
+License:        (GPL+ or Artistic) and UCD
+Epoch:          4
+Version:        3.06
+Requires:       %perl_compat
+Requires:       %{name}-Encode = %{epoch}:%{version}-%{release}
+Recommends:     perl-devel
+%if %{defined perl_bootstrap}
+%gendep_perl_Encode_devel
+%endif
+BuildArch:      noarch
+
+%description Encode-devel
+enc2xs builds a Perl extension for use by Encode from either Unicode Character
+Mapping files (.ucm) or Tcl Encoding Files (.enc). You can use enc2xs to add
+your own encoding to perl. No knowledge of XS is necessary.
+%endif
+
+%package encoding-warnings
+Summary:        Warn on implicit encoding conversions
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.13
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_encoding_warnings
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description encoding-warnings
+As of Perl 5.26.0, this module has no effect. The internal Perl feature that
+was used to implement this module has been removed.  Hence, if you load this
+module on Perl 5.26.0, you will get one warning that the module is no longer
+supported; and the module will do nothing thereafter.
+
+%package English
+Summary:        Nice English or awk names for ugly punctuation variables
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.11
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(warnings)
+%if %{defined perl_bootstrap}
+%gendep_perl_English
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description English
+This module provides aliases for the built-in variables whose names no one
+seems to like to read.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Env
+Summary:        Perl module that imports environment variables as scalars or arrays
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.04
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Env
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.16.2-265
+
+%description Env
+Perl maintains environment variables in a special hash named %%ENV. For when
+this access method is inconvenient, the Perl module Env allows environment
+variables to be treated as scalar or array variables.
+%endif
+
+%package Errno
+Summary:        System errno constants
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.30
+Requires:       %perl_compat
+# Errno.pm bakes in kernel version at build time and compares it against
+# $Config{osvers} at run time. Match exact interpreter build. Bug #1393421.
+Requires:       perl-libs%{?_isa} = %{perl_epoch}:%{perl_version}-%{release}
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_Errno
+%endif
+Conflicts:      perl < 4:5.22.0-351
+
+%description Errno
+"Errno" defines and conditionally exports all the error constants defined in
+your system "errno.h" include file. It has a single export tag, ":POSIX",
+which will export all POSIX defined error numbers.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package experimental
+Summary:        Experimental features made easy
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.020
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_experimental
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.20.0-303
+
+%description experimental
+This pragma provides an easy and convenient way to enable or disable
+experimental features.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Exporter
+Summary:        Implements default import method for modules
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        5.74
+Requires:       %perl_compat
+Requires:       perl(Carp) >= 1.05
+%if %{defined perl_bootstrap}
+%gendep_perl_Exporter
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.16.2-265
+
+%description Exporter
+The Exporter module implements an import method which allows a module to
+export functions and variables to its users' name spaces. Many modules use
+Exporter rather than implementing their own import method because Exporter
+provides a highly flexible interface, with an implementation optimized for
+the common case.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package ExtUtils-CBuilder
+Summary:        Compile and link C code for Perl modules
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        0.280234
+BuildArch:      noarch
+# C and C++ compilers are highly recommended because compiling code is the
+# purpose of ExtUtils::CBuilder, bug #1547165
+Requires:       gcc
+Requires:       gcc-c++
+Requires:       perl-devel
+Requires:       %perl_compat
+Requires:       perl(DynaLoader)
+Requires:       perl(ExtUtils::Mksymlists)
+Requires:       perl(File::Spec) >= 3.13
+Requires:       perl(Perl::OSType) >= 1
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_CBuilder
+%endif
+
+%description ExtUtils-CBuilder
+This module can build the C portions of Perl modules by invoking the
+appropriate compilers and linkers in a cross-platform manner. It was motivated
+by the Module::Build project, but may be useful for other purposes as well.
+%endif
+
+%package ExtUtils-Constant
+Summary:        Generate XS code to import C header constants
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.25
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Data::Dumper)
+# ExtUtils::Constant::Aaargh56Hash not used on recent Perls
+# FileHandle not used on recent Perls
+# POSIX not used on recent Perls
+Conflicts:      perl-interpreter < 4:5.30.1-451
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_Constant
+%endif
+
+%description ExtUtils-Constant
+ExtUtils::Constant facilitates generating C and XS wrapper code to allow
+Perl modules to AUTOLOAD constants defined in C library header files.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package ExtUtils-Command
+Summary:        Perl routines to replace common UNIX commands in Makefiles
+License:        GPL+ or Artistic
+Epoch:          2
+Version:        7.44
+BuildArch:      noarch
+Requires:       %perl_compat
+Conflicts:      perl < 4:5.20.1-312
+Requires:       perl(File::Find)
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_Command
+%endif
+
+%description ExtUtils-Command
+This Perl module is used to replace common UNIX commands. In all cases the
+functions work with @ARGV rather than taking arguments. This makes them
+easier to deal with in Makefiles.
+%endif
+
+%package ExtUtils-Embed
+Summary:        Utilities for embedding Perl in C/C++ applications
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.35
+Requires:       perl-devel
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_Embed
+%endif
+BuildArch:      noarch
+
+%description ExtUtils-Embed
+Utilities for embedding Perl in C/C++ applications.
+
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package ExtUtils-Install
+Summary:        Install files from here to there
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.14
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(AutoSplit)
+Requires:       perl(File::Compare)
+Requires:       perl(Data::Dumper)
+Recommends:     perl(POSIX)
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_Install
+%endif
+
+%description ExtUtils-Install
+Handles the installing and uninstalling of perl modules, scripts, man
+pages, etc.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package ExtUtils-MakeMaker
+Summary:        Create a module Makefile
+License:        GPL+ or Artistic
+Epoch:          2
+Version:        7.44
+# These dependencies are weak in order to relieve building noarch
+# packages from perl-devel and gcc. See bug #1547165.
+# If an XS module is built, the generated Makefile executes gcc.
+Recommends:     gcc
+# If an XS module is built, code generated from XS will be compiled and it
+# includes Perl header files.
+Recommends:     perl-devel
+Requires:       %perl_compat
+Requires:       perl(Data::Dumper)
+Requires:       perl(DynaLoader)
+Requires:       perl(ExtUtils::Command)
+Requires:       perl(ExtUtils::Install)
+Requires:       perl(ExtUtils::Manifest)
+Requires:       perl(File::Find)
+Requires:       perl(Getopt::Long)
+# Optional Pod::Man is needed for generating manual pages from POD
+Requires:       perl(Pod::Man)
+Requires:       perl(POSIX)
+Requires:       perl(Test::Harness)
+Requires:       perl(version)
+# If an XS module is compiled, xsubpp(1) is needed
+Requires:       perl-ExtUtils-ParseXS
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_MakeMaker
+%endif
+BuildArch:      noarch
+
+# Filter false DynaLoader provides. Versioned perl(DynaLoader) keeps
+# unfiltered on perl package, no need to reinject it.
+%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(DynaLoader\\)\\s*$
+%global __provides_exclude %__provides_exclude|^perl\\(ExtUtils::MakeMaker::_version\\)
+
+%description ExtUtils-MakeMaker
+Create a module Makefile.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package ExtUtils-Manifest
+Summary:        Utilities to write and check a MANIFEST file
+License:        GPL+ or Artistic
+Epoch:          1
+Version:        1.72
+Requires:       %perl_compat
+Requires:       perl(File::Path)
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_Manifest
+%endif
+BuildArch:      noarch
+
+%description ExtUtils-Manifest
+%{summary}.
+%endif
+
+%package ExtUtils-Miniperl
+Summary:        Write the C code for perlmain.c
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.09
+Requires:       perl-devel
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_Miniperl
+%endif
+BuildArch:      noarch
+
+%description ExtUtils-Miniperl
+writemain() takes an argument list of directories containing archive libraries
+that relate to perl modules and should be linked into a new perl binary. It
+writes a corresponding perlmain.c file that is a plain C file containing all
+the bootstrap code to make the If the first argument to writemain() is a
+reference to a scalar it is used as the file name to open for output. Any other
+reference is used as the file handle to write to. Otherwise output defaults to
+STDOUT.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package ExtUtils-MM-Utils
+Summary:        ExtUtils::MM methods without dependency on ExtUtils::MakeMaker
+License:        GPL+ or Artistic
+Epoch:          1
+# Real version 7.11
+# Dual-life ExtUtils-MakeMaker generate it with its version
+Version:        7.44
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_MM_Utils
+%endif
+
+%description ExtUtils-MM-Utils
+This is a collection of ExtUtils::MM subroutines that are used by many
+other modules but that do not need full-featured ExtUtils::MakeMaker. The
+issue with ExtUtils::MakeMaker is it pulls in Perl header files and that
+is an overkill for small subroutines.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package ExtUtils-ParseXS
+Summary:        Module and a script for converting Perl XS code into C code
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        3.40
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_ExtUtils_ParseXS
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+BuildArch:      noarch
+
+%description ExtUtils-ParseXS
+ExtUtils::ParseXS will compile XS code into C code by embedding the constructs
+necessary to let C functions manipulate Perl values and creates the glue
+necessary to let Perl access those functions.
+%endif
+
+%package Fcntl
+Summary:        File operation options
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.13
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Fcntl
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Fcntl
+Fcntl module provides file operation related options.
+
+%package fields
+Summary:        Compile-time class fields
+License:        GPL+ or Artistic
+Epoch:          0
+# Real version 2.24
+Version:        2.27
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(base)
+Requires:       perl(Carp)
+Requires:       perl(Hash::Util)
+%if %{defined perl_bootstrap}
+%gendep_perl_fields
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description fields
+The "fields" pragma enables compile-time and run-time verified class fields.
+
+%package File-Basename
+Summary:        Parse file paths into directory, file name, and suffix
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.85
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(re)
+%if %{defined perl_bootstrap}
+%gendep_perl_File_Basename
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description File-Basename
+These routines allow you to parse file paths into their directory, file name,
+and suffix.
+
+%package File-Compare
+Summary:        Compare files or file handles
+License:        GPL+ or Artistic
+Epoch:          0
+# Normalized version
+Version:        1.100.600
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_File_Compare
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description File-Compare
+A File::Compare Perl module provides functions for comparing a content of two
+files specified by a file name or a file handle.
+
+%package File-Copy
+Summary:        Copy files or file handles
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.34
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(File::Basename)
+%if %{defined perl_bootstrap}
+%gendep_perl_File_Copy
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description File-Copy
+A File::Copy module provides two basic functions, copy and move, which are
+useful for getting the contents of a file from one place to another.
+
+%package File-DosGlob
+Summary:        DOS-like globbing
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.12
+Requires:       %perl_compat
+Requires:       perl(Text::ParseWords)
+%if %{defined perl_bootstrap}
+%gendep_perl_File_DosGlob
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description File-DosGlob
+This Perl module implements DOS-like globbing with a few enhancements. It
+is largely compatible with perlglob.exe in all but one respect--it understands
+wild cards in directory components.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package File-Fetch
+Summary:        Generic file fetching mechanism
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.56
+Requires:       perl(IPC::Cmd) >= 0.36
+Requires:       perl(Module::Load::Conditional) >= 0.04
+Requires:       perl(Params::Check) >= 0.07
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_File_Fetch
+%endif
+BuildArch:      noarch
+
+%description File-Fetch
+File::Fetch is a generic file fetching mechanism.
+%endif
+
+%package File-Find
+Summary:        Traverse a directory tree
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.37
+Requires:       %perl_compat
+Recommends:     perl(Scalar::Util)
+%if %{defined perl_bootstrap}
+%gendep_perl_File_Find
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description File-Find
+These are functions for searching through directory trees doing work on each
+file found similar to the Unix find command.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package File-Path
+Summary:        Create or remove directory trees
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.16
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_File_Path
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.16.2-265
+
+%description File-Path
+This module provides a convenient way to create directories of arbitrary
+depth and to delete an entire directory subtree from the file system.
+%endif
+
+%package File-stat
+Summary:        By-name interface to Perl built-in stat functions
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.09
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Symbol)
+%if %{defined perl_bootstrap}
+%gendep_perl_File_stat
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description File-stat
+This module overrides the core stat() and lstat() functions, replacing them
+with versions that return File::stat objects. This object has methods that
+return the similarly named structure field name from the stat(2) function.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package File-Temp
+Summary:        Return name and handle of a temporary file safely
+License:        GPL+ or Artistic
+Epoch:          1
+# Normalized version
+Version:        0.230.900
+Requires:       %perl_compat
+BuildArch:      noarch
+Requires:       perl(File::Path) >= 2.06
+Requires:       perl(POSIX)
+%if %{defined perl_bootstrap}
+%gendep_perl_File_Temp
+%endif
+Conflicts:      perl < 4:5.16.2-265
+
+%description File-Temp
+File::Temp can be used to create and open temporary files in a safe way.
+There is both a function interface and an object-oriented interface. The
+File::Temp constructor or the tempfile() function can be used to return the
+name and the open file handle of a temporary file. The tempdir() function
+can be used to create a temporary directory.
+%endif
+
+%package FileCache
+Summary:        Keep more files open than the system permits
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.10
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_FileCache
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description FileCache
+The "cacheout" function will make sure that there's a file handle open
+for reading or writing available as the path name you give it. It
+automatically closes and re-opens files if you exceed your system
+maximum number of file descriptors, or the suggested maximum.
+
+%package FileHandle
+Summary:        Object methods for file handles
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.03
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Exporter)
+Recommends:     perl(Fcntl)
+%if %{defined perl_bootstrap}
+%gendep_perl_FileHandle
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description FileHandle
+This is an object-oriented interface for opening files and performing
+input/output operations on them.
+
+%package filetest
+Summary:        Perl pragma to control the filetest permission operators
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.03
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_filetest
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description filetest
+The default behavior of file test operators (e.g. "-r") is to use the simple
+mode bits as returned by the stat() family of system calls. However, many
+operating systems have additional features to define more complex access
+rights, for example ACLs (Access Control Lists). For such environments, "use
+filetest" may help the permission operators to return results more consistent
+with other tools.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+# FIXME Filter-Simple? version?
+%package Filter
+Summary:        Perl source filters
+License:        GPL+ or Artistic
+Epoch:          2
+Version:        1.59
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Filter
+%endif
+
+%description Filter
+Source filters alter the program text of a module before Perl sees it, much as
+a C preprocessor alters the source text of a C program before the compiler
+sees it.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Filter-Simple
+Summary:        Simplified Perl source filtering
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.96
+BuildArch:      noarch
+Requires:       %perl_compat
+Conflicts:      perl < 4:5.20.1-312
+Requires:       perl(Text::Balanced) >= 1.97
+Requires:       perl(warnings)
+%if %{defined perl_bootstrap}
+%gendep_perl_Filter_Simple
+%endif
+
+%description Filter-Simple
+The Filter::Simple Perl module provides a simplified interface to
+Filter::Util::Call; one that is sufficient for most common cases.
+%endif
+
+%package FindBin
+Summary:        Locate a directory of an original Perl script
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.51
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_FindBin
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description FindBin
+Locates the full path to the script bin directory to allow the use of paths
+relative to the bin directory.
+
+%if %{with gdbm}
+%package GDBM_File
+Summary:        Perl5 access to the gdbm library
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.18
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_GDBM_File
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description GDBM_File
+GDBM_File is a module which allows Perl programs to make use of the facilities
+provided by the GNU gdbm library.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Getopt-Long
+Summary:        Extended processing of command line options
+License:        GPLv2+ or Artistic
+Epoch:          1
+Version:        2.51
+Requires:       %perl_compat
+Requires:       perl(overload)
+Requires:       perl(Text::ParseWords)
+# Recommended:
+Requires:       perl(Pod::Usage) >= 1.14
+%if %{defined perl_bootstrap}
+%gendep_perl_Getopt_Long
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.16.3-268
+
+%description Getopt-Long
+The Getopt::Long module implements an extended getopt function called
+GetOptions(). It parses the command line from @ARGV, recognizing and removing
+specified options and their possible values.  It adheres to the POSIX syntax
+for command line options, with GNU extensions. In general, this means that
+options have long names instead of single letters, and are introduced with
+a double dash "--". Support for bundling of command line options, as was the
+case with the more traditional single-letter approach, is provided but not
+enabled by default.
+%endif
+
+%package Getopt-Std
+Summary:        Process single-character switches with switch clustering
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.12
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Getopt_Std
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Getopt-Std
+The Getopt::Std module provides functions for processing single-character
+switches with switch clustering. Pass one argument which is a string
+containing all switches to be recognized.
+
+%package Hash-Util
+Summary:        General-utility hash subroutines
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.23
+Requires:       %perl_compat
+Requires:       perl(Hash::Util::FieldHash)
+Requires:       perl(XSLoader)
+%if %{defined perl_bootstrap}
+%gendep_perl_Hash_Util
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Hash-Util
+Hash::Util contains special functions for manipulating hashes that don't
+really warrant a keyword.
+
+%package Hash-Util-FieldHash
+Summary:        Support for inside-out classes
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.20
+Requires:       %perl_compat
+Requires:       perl(XSLoader)
+%if %{defined perl_bootstrap}
+%gendep_perl_Hash_Util_FieldHash
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Hash-Util-FieldHash
+Hash::Util::FieldHash offers a number of functions in support of the
+inside-out technique of class construction.
+
+%package if
+Summary:        Use a Perl module if a condition holds
+License:        GPL+ or Artistic
+Epoch:          0
+# Normalized 0.0608
+Version:        0.60.800
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_if
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description if
+The "if" module is used to conditionally load another module.
+
+%package IO
+Summary:        Perl input/output modules
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.43
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_IO
+%endif
+Conflicts:      perl < 4:5.22.0-351
+
+%description IO
+This is a collection of Perl input/output modules.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package IO-Compress
+Summary:        IO::Compress wrapper for modules
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.093
+Requires:       %perl_compat
+Obsoletes:      perl-Compress-Zlib <= 2.020
+Provides:       perl(IO::Uncompress::Bunzip2)
+%if %{defined perl_bootstrap}
+%gendep_perl_IO_Compress
+%endif
+BuildArch:      noarch
+
+%description IO-Compress
+This module is the base class for all IO::Compress and IO::Uncompress modules.
+This module is not intended for direct use in application code. Its sole
+purpose is to to be sub-classed by IO::Compress modules.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package IO-Socket-IP
+Summary:        Drop-in replacement for IO::Socket::INET supporting both IPv4 and IPv6
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.39
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_IO_Socket_IP
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.20.0-303
+
+%description IO-Socket-IP
+This module provides a protocol-independent way to use IPv4 and IPv6
+sockets, as a drop-in replacement for IO::Socket::INET. Most constructor
+arguments and methods are provided in a backward-compatible way.
+%endif
+
+%package IO-Zlib
+Summary:        Perl IO:: style interface to Compress::Zlib
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        1.10
+BuildRequires:  gzip
+# The code defaults to Compress::Zlib, but a user can override it to gzip by
+# importing :gzip_external symbol
+Requires:       gzip
+Requires:       perl(Compress::Zlib) >= 2
+# IO::Handle used if gzip backend is requested
+Requires:       perl(IO::Handle)
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_IO_Zlib
+%endif
+BuildArch:      noarch
+
+%description IO-Zlib
+IO::Zlib provides an IO:: style interface to Compress::Zlib and hence to
+gzip/zlib-compressed files. It provides many of the same methods as the
+IO::Handle interface.
+
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package IPC-Cmd
+Summary:        Finding and running system commands made easy
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          2
+Version:        1.04
+Requires:       perl(ExtUtils::MM::Utils)
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_IPC_Cmd
+%endif
+BuildArch:      noarch
+
+%description IPC-Cmd
+IPC::Cmd allows you to run commands, interactively if desired, in a platform
+independent way, but have them still work.
+%endif
+
+%package IPC-Open3
+Summary:        Open a process for reading, writing, and error handling
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.21
+Requires:       %perl_compat
+Requires:       perl(Fcntl)
+Requires:       perl(IO::Pipe)
+Requires:       perl(POSIX)
+Requires:       perl(warnings)
+%if %{defined perl_bootstrap}
+%gendep_perl_IPC_Open3
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description IPC-Open3
+These are functions that spawn a given command and connects the standard
+output of the command for reading, standard output for writing, and standard
+error output for handling the errors.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package IPC-SysV
+Summary:        Object interface to System V IPC
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.07
+Requires:       %perl_compat
+Requires:       perl(DynaLoader)
+%if %{defined perl_bootstrap}
+%gendep_perl_IPC_SysV
+%endif
+Conflicts:      perl < 4:5.22.0-351
+
+%description IPC-SysV
+This is an object interface for System V messages, semaphores, and
+inter-process calls.
+%endif
+
+%package I18N-Collate
+Summary:        Compare 8-bit scalar data according to the current locale
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.02
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_I18N_Collate
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description I18N-Collate
+This module provides you with objects that will collate according to your
+national character set. This module is deprecated. See the perllocale manual
+page for further information.
+
+%package I18N-Langinfo
+Summary:        Query locale information
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.19
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_I18N_Langinfo
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description I18N-Langinfo
+The langinfo() function queries various locale information that can be used to
+localize output and user interfaces. It uses the current underlying locale,
+regardless of whether or not it was called from within the scope of "use
+locale".
+
+%package I18N-LangTags
+Summary:        Functions for dealing with RFC 3066 language tags
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.44
+Requires:       %perl_compat
+Requires:       perl(integer)
+Requires:       perl(warnings)
+%if %{defined perl_bootstrap}
+%gendep_perl_I18N_LangTags
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description I18N-LangTags
+Language tags are a formalism, described in RFC 3066, for declaring what
+language form (language and possibly dialect) a given chunk of information is
+in. This library provides functions for common tasks involving language tags
+as they are needed in a variety of protocols and applications.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package HTTP-Tiny
+Summary:        A small, simple, correct HTTP/1.1 client
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.076
+Requires:       perl(bytes)
+Requires:       perl(Carp)
+Requires:       perl(IO::Socket)
+Requires:       perl(Time::Local)
+%if %{defined perl_bootstrap}
+%gendep_perl_HTTP_Tiny
+%endif
+BuildArch:      noarch
+
+%description HTTP-Tiny
+This is a very simple HTTP/1.1 client, designed primarily for doing simple GET 
+requests without the overhead of a large framework like LWP::UserAgent.
+It is more correct and more complete than HTTP::Lite. It supports proxies 
+(currently only non-authenticating ones) and redirection. It also correctly 
+resumes after EINTR.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package JSON-PP
+Summary:        JSON::XS compatible pure-Perl module
+Epoch:          1
+Version:        4.04
+License:        GPL+ or Artistic
+BuildArch:      noarch
+Requires:       %perl_compat 
+Requires:       perl(Data::Dumper)
+Requires:       perl(Encode)
+Requires:       perl(Math::BigFloat)
+Requires:       perl(Math::BigInt)
+Requires:       perl(Scalar::Util)
+Requires:       perl(subs)
+%if %{defined perl_bootstrap}
+%gendep_perl_JSON_PP
+%endif
+Conflicts:      perl-JSON < 2.50
+
+%description JSON-PP
+JSON::XS is the fastest and most proper JSON module on CPAN. It is written by
+Marc Lehmann in C, so must be compiled and installed in the used environment.
+JSON::PP is a pure-Perl module and is compatible with JSON::XS.
+%endif
+
+%package less
+Summary:        Perl pragma to request less of something
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.03
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_less
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description less
+"use less ...;" is a Perl user-pragma. If you're very lucky some code you're
+using will know that you asked for less CPU usage or RAM or fat or... we just
+can't know.
+
+%package lib
+Summary:        Manipulate @INC at compile time
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.65
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_lib
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description lib
+This module simplifies the manipulation of @INC at compile time.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package libnet
+Summary:        Perl clients for various network protocols
+License:        (GPL+ or Artistic) and Artistic
+Epoch:          0
+Version:        3.11
+Requires:       %perl_compat
+Requires:       perl(File::Basename)
+Requires:       perl(IO::Socket) >= 1.05
+# Prefer IO::Socket::IP over IO::Socket::INET6 and IO::Socket::INET
+Requires:       perl(IO::Socket::IP) >= 0.20
+Requires:       perl(POSIX)
+Requires:       perl(Socket) >= 2.016
+Requires:       perl(utf8)
+%if %{defined perl_bootstrap}
+%gendep_perl_libnet
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-347
+
+%description libnet
+This is a collection of Perl modules which provides a simple and
+consistent programming interface (API) to the client side of various
+protocols used in the internet community.
+%endif
+
+%package libnetcfg
+Summary:        Configure libnet
+License:        GPL+ or Artistic
+Epoch:          %perl_epoch
+Version:        %perl_version
+# Net::Config is optional
+BuildArch:      noarch
+%if %{defined perl_bootstrap}
+%gendep_perl_libnetcfg
+%endif
+Conflicts:      perl-devel < 4:5.22.0-347
+
+%description libnetcfg
+The libnetcfg utility can be used to configure the libnet.
+
+%package locale
+Summary:        Pragma to use or avoid POSIX locales for built-in operations
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.09
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(POSIX)
+%if %{defined perl_bootstrap}
+%gendep_perl_locale
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description locale
+This pragma tells the compiler to enable (or disable) the use of POSIX locales
+for built-in operations (for example, LC_CTYPE for regular expressions,
+LC_COLLATE for string comparison, and LC_NUMERIC for number formatting). Each
+"use locale" or "no locale" affects statements to the end of the enclosing
+block.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Locale-Maketext
+Summary:        Framework for localization
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.29
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Locale_Maketext
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.16.3-268
+
+%description Locale-Maketext
+It is a common feature of applications (whether run directly, or via the Web)
+for them to be "localized" -- i.e., for them to present an English interface
+to an English-speaker, a German interface to a German-speaker, and so on for
+all languages it's programmed with. Locale::Maketext is a framework for
+software localization; it provides you with the tools for organizing and
+accessing the bits of text and text-processing code that you need for
+producing localized applications.
+%endif
+
+%package Locale-Maketext-Simple
+Summary:        Simple interface to Locale::Maketext::Lexicon
+License:        MIT
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        0.21
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Locale_Maketext_Simple
+%endif
+BuildArch:      noarch
+
+%description Locale-Maketext-Simple
+This module is a simple wrapper around Locale::Maketext::Lexicon, designed
+to alleviate the need of creating Language Classes for module authors.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Math-BigInt
+Summary:        Arbitrary-size integer and float mathematics
+License:        GPL+ or Artistic
+Epoch:          1
+# Real version 1.999818
+Version:        1.9998.18
+Requires:       %perl_compat
+Requires:       perl(Carp)
+# File::Spec not used on recent perl
+%if %{defined perl_bootstrap}
+%gendep_perl_Math_BigInt
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-347
+
+# Do not export unversioned module
+%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(Math::BigInt\\)\\s*$
+
+%description Math-BigInt
+This provides Perl modules for arbitrary-size integer and float mathematics.
+
+%package Math-BigInt-FastCalc
+Summary:        Math::BigInt::Calc XS implementation
+License:        GPL+ or Artistic
+Epoch:          0
+# Version normalized to dot format
+# Real version 0.5009
+Version:        0.500.900
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Math_BigInt_FastCalc
+%endif
+Conflicts:      perl < 4:5.22.0-348
+
+%description Math-BigInt-FastCalc
+This package provides support for faster big integer calculations.
+
+%package Math-BigRat
+Summary:        Arbitrary big rational numbers
+License:        GPL+ or Artistic
+Epoch:          0
+# Real version 0.2614
+Version:        0.2614
+Requires:       %perl_compat
+Requires:       perl(Math::BigInt)
+%if %{defined perl_bootstrap}
+%gendep_perl_Math_BigRat
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-348
+
+%description Math-BigRat
+Math::BigRat complements Math::BigInt and Math::BigFloat by providing support
+for arbitrary big rational numbers.
+%endif
+
+%package Math-Complex
+Summary:        Complex numbers and trigonometric functions
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.59
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Math_Complex
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-348
+
+%description Math-Complex
+This package lets you create and manipulate complex numbers. By default, Perl
+limits itself to real numbers, but an extra "use" statement brings full
+complex support, along with a full set of mathematical functions typically
+associated with and/or extended to complex numbers.
+
+%package Memoize
+Summary:        Transparently speed up functions by caching return values
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.03
+Requires:       %perl_compat
+# Keep Time::HiRes optional
+%if %{defined perl_bootstrap}
+%gendep_perl_Memoize
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-350
+
+%description Memoize
+Memoizing a function makes it faster by trading space for time. It does
+this by caching the return values of the function in a table. If you call
+the function again with the same arguments, memoize jumps in and gives
+you the value out of the table, instead of letting the function compute
+the value all over again.
+
+%package meta-notation
+Summary:        Change nonprintable characters below 0x100 into printables
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        %{perl_version}
+BuildArch:      noarch
+Provides:       perl(meta_notation) = %{perl_version}
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_meta_notation
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description meta-notation
+Returns a copy of the input string with the nonprintable characters below
+0x100 changed into printables. Any ASCII printables or above 0xFF are
+unchanged.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package MIME-Base64
+Summary:        Encoding and decoding of Base64 and quoted-printable strings
+# cpan/MIME-Base64/Base64.xs:   (GPL+ or Artistic) and MIT (Bellcore's part)
+# Other files:                  GPL+ or Artistic
+License:        (GPL+ or Artistic) and MIT
+Epoch:          0
+Version:        3.15
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_MIME_Base64
+%endif
+Conflicts:      perl < 4:5.22.0-347
+
+%description MIME-Base64
+This package contains a Base64 encoder/decoder and a quoted-printable
+encoder/decoder. These encoding methods are specified in RFC 2045 - MIME
+(Multipurpose Internet Mail Extensions).
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Module-CoreList
+Summary:        What modules are shipped with versions of perl
+License:        GPL+ or Artistic
+Epoch:          1
+Version:        5.20210123
+Requires:       %perl_compat
+Requires:       perl(List::Util)
+Requires:       perl(version) >= 0.88
+%if %{defined perl_bootstrap}
+%gendep_perl_Module_CoreList
+%endif
+BuildArch:      noarch
+
+%description Module-CoreList
+Module::CoreList provides information on which core and dual-life modules
+are shipped with each version of perl.
+
+
+%package Module-CoreList-tools
+Summary:        Tool for listing modules shipped with perl
+License:        GPL+ or Artistic
+Epoch:          1
+Version:        5.20210123
+Requires:       %perl_compat
+Requires:       perl(feature)
+Requires:       perl(version) >= 0.88
+Requires:       perl-Module-CoreList = %{epoch}:%{version}-%{release}
+%if %{defined perl_bootstrap}
+%gendep_perl_Module_CoreList_tools
+%endif
+# The files were distributed with perl.spec's subpackage
+# perl-Module-CoreList <= 1:5.020001-309
+Conflicts:      perl-Module-CoreList < 1:5.020001-310
+BuildArch:      noarch
+
+%description Module-CoreList-tools
+This package provides a corelist(1) tool which can be used to query what
+modules were shipped with given perl version.
+%endif
+
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Module-Load
+Summary:        Runtime require of both modules and files
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        0.34
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Module_Load
+%endif
+BuildArch:      noarch
+
+%description Module-Load
+Module::Load eliminates the need to know whether you are trying to require
+either a file or a module.
+%endif
+
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Module-Load-Conditional
+Summary:        Looking up module information / loading at runtime
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.70
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Module_Load_Conditional
+%endif
+BuildArch:      noarch
+
+%description Module-Load-Conditional
+Module::Load::Conditional provides simple ways to query and possibly load any
+of the modules you have installed on your system during runtime.
+%endif
+
+
+%package Module-Loaded
+Summary:        Mark modules as loaded or unloaded
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        0.08
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Module_Loaded
+%endif
+BuildArch:      noarch
+
+%description Module-Loaded
+When testing applications, often you find yourself needing to provide
+functionality in your test environment that would usually be provided by
+external modules. Rather than munging the %%INC by hand to mark these external
+modules as loaded, so they are not attempted to be loaded by perl, this module
+offers you a very simple way to mark modules as loaded and/or unloaded.
+
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Module-Metadata
+Summary:        Gather package and POD information from perl module files
+Epoch:          0
+Version:        1.000037
+License:        GPL+ or Artistic
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Module_Metadata
+%endif
+
+%description Module-Metadata
+Gather package and POD information from perl module files
+%endif
+
+%package mro
+Summary:        Method resolution order
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.23
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_mro
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description mro
+The "mro" name space provides several utilities for dealing with method
+resolution order and method caching in general.
+
+%if %{with gdbm}
+%package NDBM_File
+Summary:        Tied access to ndbm files
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.15
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_NDBM_File
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description NDBM_File
+NDBM_File establishes a connection between a Perl hash variable and a file in
+ndbm format. You can manipulate the data in the file just as if it were in
+a Perl hash, but when your program exits, the data will remain in the file, to
+be used the next time your program runs.
+%endif
+
+%package Net
+Summary:        By-name interface to Perl built-in network resolver
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.02
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Socket)
+%if %{defined perl_bootstrap}
+%gendep_perl_Net
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Net
+This package provide object-oriented interface to Perl built-in gethost*(),
+getnet*(), getproto*(), and getserv*() functions.
+
+%package Net-Ping
+Summary:        Check a remote host for reachability
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.72
+Requires:       %perl_compat
+# Keep Net::Ping::External optional
+%if %{defined perl_bootstrap}
+%gendep_perl_Net_Ping
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-350
+
+%description Net-Ping
+Net::Ping module contains methods to test the reachability of remote hosts on
+a network.
+
+%package NEXT
+Summary:        Pseudo-class that allows method redispatch
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.67
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_NEXT
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description NEXT
+The NEXT module adds a pseudo-class named "NEXT" to any program that uses it.
+If a method "m" calls "$self->NEXT::m()", the call to "m" is redispatched as
+if the calling method had not originally been found.
+
+%if %{with gdbm}
+%package ODBM_File
+Summary:        Tied access to odbm files
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.16
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_ODBM_File
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description ODBM_File
+ODBM_File establishes a connection between a Perl hash variable and a file in
+odbm format. You can manipulate the data in the file just as if it were in
+a Perl hash, but when your program exits, the data will remain in the file, to
+be used the next time your program runs.
+%endif
+
+%package Opcode
+Summary:        Disable named opcodes when compiling a perl code
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.48
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Opcode
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Opcode
+The Opcode module allows you to define an operator mask to be in effect when
+perl next compiles any code. Attempting to compile code which contains
+a masked opcode will cause the compilation to fail with an error. The code
+will not be executed.
+
+%package open
+Summary:        Perl pragma to set default PerlIO layers for input and output
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.12
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(Encode)
+Requires:       perl(encoding)
+%if %{defined perl_bootstrap}
+%gendep_perl_open
+%endif
+Conflicts:      perl < 4:5.20.2-326
+BuildArch:      noarch
+
+%description open
+The "open" pragma serves as one of the interfaces to declare default "layers"
+(also known as "disciplines") for all I/O.
+
+%package overload
+Summary:        Overloading Perl operations
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.31
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(mro)
+Requires:       perl(Scalar::Util)
+Requires:       perl(overloading)
+%if %{defined perl_bootstrap}
+%gendep_perl_overload
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description overload
+The "overload" pragma allows overloading of Perl operators for a class. To
+overload built-in functions, see "Overriding Built-in Functions" in perlsub
+POD instead.
+
+%package overloading
+Summary:        Perl pragma to lexically control overloading
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.02
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_overloading
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description overloading
+Overloading pragma allows you to lexically disable or enable overloading.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package parent
+Summary:        Establish an ISA relationship with base classes at compile time
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        0.238
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_parent
+%endif
+BuildArch:      noarch
+
+%description parent
+parent allows you to both load one or more modules, while setting up
+inheritance from those modules at the same time. Mostly similar in effect to:
+
+    package Baz;
+
+    BEGIN {
+        require Foo;
+        require Bar;
+
+        push @ISA, qw(Foo Bar);
+    }
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Params-Check
+Summary:        Generic input parsing/checking mechanism
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        0.38
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Params_Check
+%endif
+BuildArch:      noarch
+
+%description Params-Check
+Params::Check is a generic input parsing/checking mechanism.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package PathTools
+Summary:        PathTools Perl module (Cwd, File::Spec)
+License:        (GPL+ or Artistic) and BSD
+Epoch:          0
+Version:        3.78
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(Errno)
+Requires:       perl(Scalar::Util)
+# XSLoader is optional only because miniperl does not support XS. With perl we
+# almost certainly want it.
+Recommends:     perl(XSLoader)
+%if %{defined perl_bootstrap}
+%gendep_perl_PathTools
+%endif
+
+%description PathTools
+PathTools Perl module (Cwd, File::Spec).
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package perlfaq
+Summary:        Frequently asked questions about Perl
+# Code examples are Public Domain
+License:        (GPL+ or Artistic) and Public Domain
+Epoch:          0
+Version:        5.20200523
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_perlfaq
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-347
+
+%description perlfaq
+The perlfaq comprises several documents that answer the most commonly asked
+questions about Perl and Perl programming.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package PerlIO-via-QuotedPrint
+Summary:        PerlIO layer for quoted-printable strings
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.08
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_PerlIO_via_QuotedPrint
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-347
+
+%description PerlIO-via-QuotedPrint
+This module implements a PerlIO layer that works on files encoded in the
+quoted-printable format. It will decode from quoted-printable while
+reading from a handle, and it will encode as quoted-printable while
+writing to a handle.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Perl-OSType
+Summary:        Map Perl operating system names to generic types
+Version:        1.010
+Epoch:          0
+License:        GPL+ or Artistic
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Perl_OSType
+%endif
+BuildArch:      noarch
+
+%description Perl-OSType
+Modules that provide OS-specific behaviors often need to know if the current
+operating system matches a more generic type of operating systems. For example,
+'linux' is a type of 'Unix' operating system and so is 'freebsd'.
+This module provides a mapping between an operating system name as given by $^O
+and a more generic type. The initial version is based on the OS type mappings
+provided in Module::Build and ExtUtils::CBuilder (thus, Microsoft operating
+systems are given the type 'Windows' rather than 'Win32').
+%endif
+
+%package ph
+Summary:        Selected system header files converted to Perl headers
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        %{perl_version}
+Requires:       %perl_compat
+# Match header files used when building perl.
+Requires:       perl-libs%{?_isa} = %{perl_epoch}:%{perl_version}-%{release}
+Requires:       perl(warnings)
+# We deliver this package only for these three files mentioned in
+# a documentation.
+Provides:       perl(sys/ioctl.ph) = %{perl_version}
+Provides:       perl(sys/syscall.ph) = %{perl_version}
+Provides:       perl(syscall.ph) = %{perl_version}
+%if %{defined perl_bootstrap}
+%gendep_perl_ph
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description ph
+Contemporary Perl still refers to some Perl header (ph) files although it does
+not build them anymore. This is a prebuilt collection of the referred files.
+If you miss other ones, you can generate them with h2ph tool from perl-utils
+package.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Pod-Checker
+Summary:        Check POD documents for syntax errors
+Epoch:          4
+Version:        1.73
+License:        GPL+ or Artistic
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Pod_Checker
+%endif
+BuildArch:      noarch
+
+%description Pod-Checker
+Module and tools to verify POD documentation contents for compliance with the
+Plain Old Documentation format specifications.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Pod-Escapes
+Summary:        Resolve POD escape sequences
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        1.07
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Pod_Escapes
+%endif
+BuildArch:      noarch
+
+%description Pod-Escapes
+This module provides things that are useful in decoding Pod E<...> sequences.
+%endif
+
+%package Pod-Functions
+Summary:        Group Perl functions as in perlfunc POD
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.13
+BuildArch:      noarch
+Requires:       %perl_compat
+# Match perl the functions come from
+Requires:       perl-libs = %{perl_epoch}:%{perl_version}-%{release}
+%if %{defined perl_bootstrap}
+%gendep_perl_Pod_Functions
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description Pod-Functions
+This module enumerates the Perl functions that are documented in perlfunc POD.
+
+%package Pod-Html
+Summary:        Convert POD files to HTML
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.25
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Pod_Html
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-350
+
+%description Pod-Html
+This package converts files from POD format (see perlpod) to HTML format. It
+can automatically generate indexes and cross-references, and it keeps a cache
+of things it knows how to cross-reference.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Pod-Perldoc
+Summary:        Look up Perl documentation in Pod format
+License:        GPL+ or Artistic
+Epoch:          0
+# Real version 3.2801
+Version:        3.28.01
+%if %{with perl_enables_groff}
+# Pod::Perldoc::ToMan executes roff
+Requires:       groff-base
+%endif
+Requires:       %perl_compat
+Requires:       perl(File::Temp) >= 0.22
+Requires:       perl(HTTP::Tiny)
+Requires:       perl(IO::Handle)
+Requires:       perl(IPC::Open3)
+# POD2::Base is optional
+# Pod::Checker is not needed if Pod::Simple::Checker is available
+Requires:       perl(Pod::Simple::Checker)
+Requires:       perl(Pod::Simple::RTF) >= 3.16
+Requires:       perl(Pod::Simple::XMLOutStream) >= 3.16
+Requires:       perl(Text::ParseWords)
+# Tk is optional
+Requires:       perl(Symbol)
+%if %{defined perl_bootstrap}
+%gendep_perl_Pod_Perldoc
+%endif
+BuildArch:      noarch
+
+%description Pod-Perldoc
+perldoc looks up a piece of documentation in .pod format that is embedded
+in the perl installation tree or in a perl script, and displays it via
+"groff -man | $PAGER". This is primarily used for the documentation for
+the perl library modules.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Pod-Simple
+Summary:        Framework for parsing POD documentation
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          1
+Version:        3.40
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Pod_Simple
+%endif
+BuildArch:      noarch
+
+%description Pod-Simple
+Pod::Simple is a Perl library for parsing text in the Pod ("plain old
+documentation") markup language that is typically used for writing
+documentation for Perl and for Perl modules.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Pod-Usage
+Summary:        Print a usage message from embedded pod documentation
+License:        GPL+ or Artistic
+Epoch:          4
+Version:        1.69
+Requires:       %perl_compat
+# Pod::Usage executes perldoc from perl-Pod-Perldoc by default
+Requires:       perl-Pod-Perldoc
+Requires:       perl(Pod::Text)
+%if %{defined perl_bootstrap}
+%gendep_perl_Pod_Usage
+%endif
+BuildArch:      noarch
+
+%description Pod-Usage
+pod2usage will print a usage message for the invoking script (using its
+embedded POD documentation) and then exit the script with the desired exit
+status. The usage message printed may have any one of three levels of
+"verboseness": If the verbose level is 0, then only a synopsis is printed.
+If the verbose level is 1, then the synopsis is printed along with a
+description (if present) of the command line options and arguments. If the
+verbose level is 2, then the entire manual page is printed.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package podlators
+Summary:        Format POD source into various output formats
+License:        (GPL+ or Artistic) and MIT
+Epoch:          1
+Version:        4.14
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(File::Spec) >= 0.8
+Requires:       perl(Pod::Simple) >= 3.06
+%if %{defined perl_bootstrap}
+%gendep_perl_podlators
+%endif
+Conflicts:      perl < 4:5.16.1-234
+
+%description podlators
+This package contains Pod::Man and Pod::Text modules which convert POD input
+to *roff source output, suitable for man pages, or plain text.  It also
+includes several sub-classes of Pod::Text for formatted output to terminals
+with various capabilities.
+%endif
+
+%package POSIX
+Summary:        Perl interface to IEEE Std 1003.1
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.94
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_POSIX
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description POSIX
+The POSIX module permits you to access all (or nearly all) the standard POSIX
+1003.1 identifiers. Many of these identifiers have been given Perl interfaces.
+
+%package Safe
+Summary:        Compile and execute code in restricted compartments
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.41
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Safe
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Safe
+The Safe extension module allows the creation of compartments in which Perl
+code can be evaluated. Please note that the restriction is not suitable for
+security purposes.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Scalar-List-Utils
+Summary:        A selection of general-utility scalar and list subroutines
+License:        GPL+ or Artistic
+Epoch:          4
+Version:        1.55
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Scalar_List_Utils
+%endif
+
+%description Scalar-List-Utils
+Scalar::Util and List::Util contain a selection of subroutines that people have
+expressed would be nice to have in the perl core, but the usage would not
+really be high enough to warrant the use of a keyword, and the size so small
+such that being individual extensions would be wasteful.
+%endif
+
+%package Search-Dict
+Summary:        Search for a key in a dictionary file
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.07
+Requires:       %perl_compat
+Requires:       perl(feature)
+%if %{defined perl_bootstrap}
+%gendep_perl_Search_Dict
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Search-Dict
+This module sets file position in a file handle to be first line greater than
+or equal (string-wise) to a key.
+
+%package SelectSaver
+Summary:        Save and restore selected file handle
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.02
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_SelectSaver
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description SelectSaver
+A "SelectSaver" object contains a reference to the file handle that was
+selected when it was created. When the object is destroyed, it re-selects the
+file handle that was selected when it was created.
+
+%package SelfLoader
+Summary:        Load functions only on demand
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.26
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_SelfLoader
+%endif
+Conflicts:      perl < 4:5.22.0-351
+
+%description SelfLoader
+This Perl module tells its users that functions in a package are to be
+autoloaded from after the "__DATA__" token. See also "Autoloading" in
+perlsub.
+
+%package sigtrap
+Summary:        Perl pragma to enable simple signal handling
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.09
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(meta_notation) = %{perl_version}
+Requires:       perl(Symbol)
+%if %{defined perl_bootstrap}
+%gendep_perl_sigtrap
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description sigtrap
+The sigtrap pragma is a simple interface for installing signal handlers.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Socket
+Summary:        C socket.h defines and structure manipulators
+License:        GPL+ or Artistic
+Epoch:          4
+Version:        2.029
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Socket
+%endif
+
+%description Socket
+This module is just a translation of the C socket.h file.  Unlike the old
+mechanism of requiring a translated socket.ph file, this uses the h2xs program
+(see the Perl source distribution) and your native C compiler.  This means
+that it has a far more likely chance of getting the numbers right.  This
+includes all of the commonly used pound-defines like AF_INET, SOCK_STREAM, etc.
+%endif
+
+%package sort
+Summary:        Perl pragma to control sort() behavior
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.04
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(warnings)
+%if %{defined perl_bootstrap}
+%gendep_perl_sort
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description sort
+With the "sort" pragma you can control the behavior of the builtin "sort()"
+function.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Storable
+Summary:        Persistence for Perl data structures
+License:        GPL+ or Artistic
+Epoch:          1
+Version:        3.21
+Requires:       %perl_compat
+# Carp substitutes missing Log::Agent
+Requires:       perl(Carp)
+Requires:       perl(Config)
+# Fcntl is optional, but locking is good
+Requires:       perl(Fcntl)
+Requires:       perl(IO::File)
+%if %{defined perl_bootstrap}
+%gendep_perl_Storable
+%endif
+Conflicts:      perl < 4:5.16.3-274
+
+%description Storable
+The Storable package brings persistence to your Perl data structures
+containing scalar, array, hash or reference objects, i.e. anything that
+can be conveniently stored to disk and retrieved at a later time.
+%endif
+
+%package subs
+Summary:        Perl pragma to predeclare subroutine names
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.03
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_subs
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description subs
+This will predeclare all the subroutines whose names are in the list,
+allowing you to use them without parentheses (as list operators) even
+before they're declared.
+
+%package Symbol
+Summary:        Manipulate Perl symbols and their names
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.08
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Symbol
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description Symbol
+The Symbol module provides functions for manipulating Perl symbols.
+
+%package Sys-Hostname
+Summary:        Try every conceivable way to get a hostname
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.23
+Requires:       %perl_compat
+Suggests:       perl(POSIX)
+Requires:       perl(XSLoader)
+%if %{defined perl_bootstrap}
+%gendep_perl_Sys_Hostname
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Sys-Hostname
+It attempts several methods of getting the system hostname and then caches the
+result.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Sys-Syslog
+Summary:        Perl interface to the UNIX syslog(3) calls
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.36
+Requires:       %perl_compat
+Requires:       perl(XSLoader)
+%if %{defined perl_bootstrap}
+%gendep_perl_Sys_Syslog
+%endif
+Conflicts:      perl < 4:5.16.3-269
+
+%description Sys-Syslog
+Sys::Syslog is an interface to the UNIX syslog(3) function. Call syslog() with
+a string priority and a list of printf() arguments just like at syslog(3).
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Term-ANSIColor
+Summary:        Color screen output using ANSI escape sequences
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        5.01
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_Term_ANSIColor
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.18.2-302
+
+%description Term-ANSIColor
+This module has two interfaces, one through color() and colored() and the
+other through constants. It also offers the utility functions uncolor(),
+colorstrip(), colorvalid(), and coloralias(), which have to be explicitly
+imported to be used.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Term-Cap
+Summary:        Perl termcap interface
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.17
+Requires:       %perl_compat
+# ncurses for infocmp tool
+Requires:       ncurses
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_Term_Cap
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-347
+
+%description Term-Cap
+These are low-level functions to extract and use capabilities from a terminal
+capability (termcap) database.
+%endif
+
+%package Term-Complete
+Summary:        Perl word completion
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.403
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Term_Complete
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Term-Complete
+"Complete" routine provides word completion on a list of words in the array.
+
+%package Term-ReadLine
+Summary:        Perl interface to various read-line packages
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.17
+Requires:       %perl_compat
+Requires:       perl(Term::Cap)
+%if %{defined perl_bootstrap}
+%gendep_perl_Term_ReadLine
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Term-ReadLine
+This package is just a front end to some other packages. It's a stub to
+set up a common interface to the various read-line implementations found
+on CPAN (under the "Term::ReadLine::*" name space).
+
+%package Test
+Summary:        Simple framework for writing test scripts
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.31
+Requires:       %perl_compat
+# Algorithm::Diff 1.15 is optional
+Requires:       perl(File::Temp)
+%if %{defined perl_bootstrap}
+%gendep_perl_Test
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-351
+
+%description Test
+The Test Perl module simplifies the task of writing test files for Perl modules,
+such that their output is in the format that Test::Harness expects to see.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Test-Harness
+Summary:        Run Perl standard test scripts with statistics
+License:        GPL+ or Artistic
+Epoch:          1
+Version:        3.42
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Test_Harness
+%endif
+BuildArch:      noarch
+
+%description Test-Harness
+Run Perl standard test scripts with statistics.
+Use TAP::Parser, Test::Harness package was whole rewritten.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Test-Simple
+Summary:        Basic utilities for writing tests
+License:        (GPL+ or Artistic) and CC0 and Public Domain
+Epoch:          3
+Version:        1.302175
+Requires:       %perl_compat
+Requires:       perl(Data::Dumper)
+%if %{defined perl_bootstrap}
+%gendep_perl_Test_Simple
+%endif
+BuildArch:      noarch
+
+%description Test-Simple
+Basic utilities for writing tests.
+%endif
+
+%package Text-Abbrev
+Summary:        Create an abbreviation table from a list
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.02
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Text_Abbrev
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Text-Abbrev
+It stores all unambiguous truncations of each element of a list as keys in
+an associative array. The values are the original list elements.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Text-Balanced
+Summary:        Extract delimited text sequences from strings
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.03
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Text_Balanced
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.22.0-347
+
+%description Text-Balanced
+These Perl subroutines may be used to extract a delimited substring, possibly
+after skipping a specified prefix string.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Text-ParseWords
+Summary:        Parse text into an array of tokens or array of arrays
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        3.30
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_Text_ParseWords
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.16.2-256
+
+%description Text-ParseWords
+Parse text into an array of tokens or array of arrays.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Text-Tabs+Wrap
+Summary:        Expand tabs and do simple line wrapping
+License:        TTWL
+Epoch:          0
+Version:        2013.0523
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Text_Tabs_Wrap
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.20.2-325
+
+%description Text-Tabs+Wrap
+Text::Tabs performs the same job that the UNIX expand(1) and unexpand(1)
+commands do: adding or removing tabs from a document.
+
+Text::Wrap::wrap() will reformat lines into paragraphs. All it does is break
+up long lines, it will not join short lines together.
+%endif
+
+%package Thread
+Summary:        Manipulate threads in Perl (for old code only)
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        3.05
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Thread
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description Thread
+This Thread module served as the front end to the old-style thread model,
+called 5005threads, that has been removed in version 5.10.
+
+For old code and interim backwards compatibility, the Thread module has been
+reworked to function as a front end for the new interpreter threads (ithreads)
+model. However, some previous functionality is not available. Further, the
+data sharing models between the two thread models are completely different,
+and anything to do with data sharing has to be thought differently.
+
+You are strongly encouraged to migrate any existing threaded code to the new
+model (i.e., use the threads and threads::shared modules) as soon as possible.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Thread-Queue
+Summary:        Thread-safe queues
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        3.14
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_Thread_Queue
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.16.2-257
+
+%description Thread-Queue
+This module provides thread-safe FIFO queues that can be accessed safely by
+any number of threads.
+%endif
+
+%package Tie
+Summary:        Base classes for tying variables
+License:        GPL+ or Artistic
+Epoch:          0
+# Version from Tie::StdHandle
+Version:        4.6
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Tie
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description Tie
+These are Perl modules that helps connecting classes with arrays, hashes,
+handles, and scalars.
+
+%package Tie-File
+Summary:        Access the lines of a disk file via a Perl array
+License:        GPLv2+ or Artistic
+Epoch:          0
+Version:        1.06
+Requires:       %perl_compat
+# Symbol is not used on Perl >= 5.6.0
+%if %{defined perl_bootstrap}
+%gendep_perl_Tie_File
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Tie-File
+Tie::File represents a regular text file as a Perl array. Each element in the
+array corresponds to a record in the file. The first line of the file is
+element 0 of the array; the second line is element 1, and so on.  The file is
+not loaded into memory, so this will work even for gigantic files.  Changes to
+the array are reflected in the file immediately.
+
+%package Tie-Memoize
+Summary:        Add data to a hash when needed
+License:        GPLv2+ or Artistic
+Epoch:          0
+Version:        1.1
+Requires:       %perl_compat
+Requires:       perl(Carp)
+Requires:       perl(Tie::ExtraHash)
+%if %{defined perl_bootstrap}
+%gendep_perl_Tie_Memoize
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Tie-Memoize
+This package allows a tied hash to load its values automatically on the first
+access, and to use the cached value on the following accesses.
+
+%package Tie-RefHash
+Summary:        Use references as hash keys
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.39
+Requires:       %perl_compat
+# Scalar::Util || overload
+Requires:       perl(overload)
+Suggests:       perl(Scalar::Util)
+%if %{defined perl_bootstrap}
+%gendep_perl_Tie_RefHash
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Tie-RefHash
+This module provides the ability to use references as hash keys if you first
+"tie" the hash variable to this module. Normally, only the keys of the tied
+hash itself are preserved as references; to use references as keys in
+hashes-of-hashes, use Tie::RefHash::Nestable, included as part of
+Tie::RefHash.
+
+%package Time
+Summary:        By-name interface to Perl built-in time functions
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.03
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Time
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Time
+This package provides an object-oriented interface to Perl built-in gmtime()
+and localtime () functions.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Time-HiRes
+Summary:        High resolution alarm, sleep, gettimeofday, interval timers
+License:        GPL+ or Artistic
+Epoch:          4
+Version:        1.9764
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_Time_HiRes
+%endif
+Conflicts:      perl < 4:5.16.3-271
+
+%description Time-HiRes
+The Time::HiRes module implements a Perl interface to the usleep, nanosleep,
+ualarm, gettimeofday, and setitimer/getitimer system calls, in other words,
+high resolution time and timers.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Time-Local
+Summary:        Efficiently compute time from local and GMT time
+License:        GPL+ or Artistic
+Epoch:          2
+# Real version 1.28
+Version:        1.280
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Time_Local
+%endif
+BuildArch:      noarch
+Conflicts:      perl < 4:5.16.3-262
+
+%description Time-Local
+This module provides functions that are the inverse of built-in perl functions
+localtime() and gmtime(). They accept a date as a six-element array, and
+return the corresponding time(2) value in seconds since the system epoch
+(Midnight, January 1, 1970 GMT on Unix, for example). This value can be
+positive or negative, though POSIX only requires support for positive values,
+so dates before the system's epoch may not work on all operating systems.
+%endif
+
+%package Time-Piece
+Summary:        Time objects from localtime and gmtime
+License:        (GPL+ or Artistic) and BSD
+Epoch:          0
+Version:        1.3401
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_Time_Piece
+%endif
+
+%description Time-Piece
+The Time::Piece module replaces the standard localtime and gmtime functions
+with implementations that return objects.  It does so in a backwards compatible
+manner, so that using localtime or gmtime as documented in perlfunc still
+behave as expected.
+
+%package Thread-Semaphore
+Summary:        Thread-safe semaphores
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        2.13
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_Thread_Semaphore
+%endif
+BuildArch:      noarch
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description Thread-Semaphore
+Semaphores provide a mechanism to regulate access to resources. Unlike locks,
+semaphores aren't tied to particular scalars, and so may be used to control
+access to anything you care to use them for. Semaphores don't limit their
+values to zero and one, so they can be used to control access to some resource
+that there may be more than one of (e.g., file handles). Increment and
+decrement amounts aren't fixed at one either, so threads can reserve or return
+multiple resources at once.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package threads
+Summary:        Perl interpreter-based threads
+License:        GPL+ or Artistic
+Epoch:          1
+Version:        2.25
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_threads
+%endif
+
+%description threads
+Since Perl 5.8, thread programming has been available using a model called
+interpreter threads  which provides a new Perl interpreter for each thread,
+and, by default, results in no data or state information being shared between
+threads.
+
+(Prior to Perl 5.8, 5005threads was available through the Thread.pm API. This
+threading model has been deprecated, and was removed as of Perl 5.10.0.)
+
+As just mentioned, all variables are, by default, thread local. To use shared
+variables, you need to also load threads::shared.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package threads-shared
+Summary:        Perl extension for sharing data structures between threads
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.61
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_threads_shared
+%endif
+
+%description threads-shared
+By default, variables are private to each thread, and each newly created thread
+gets a private copy of each existing variable. This module allows you to share
+variables across different threads (and pseudo-forks on Win32). It is used
+together with the threads module.  This module supports the sharing of the
+following data types only: scalars and scalar refs, arrays and array refs, and
+hashes and hash refs.
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Unicode-Collate
+Summary:        Unicode Collation Algorithm
+License:        (GPL+ or Artistic) and Unicode
+Epoch:          0
+Version:        1.27
+Requires:       %perl_compat
+Requires:       perl(Unicode::Normalize)
+%if %{defined perl_bootstrap}
+%gendep_perl_Unicode_Collate
+%endif
+Conflicts:      perl < 4:5.22.0-347
+
+%description Unicode-Collate
+This package is Perl implementation of Unicode Technical Standard #10 (Unicode
+Collation Algorithm).
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package Unicode-Normalize
+Summary:        Unicode Normalization Forms
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.27
+Requires:       %perl_compat
+# unicore/CombiningClass.pl and unicore/Decomposition.pl from perl, perl is
+# auto-detected.
+%if %{defined perl_bootstrap}
+%gendep_perl_Unicode_Normalize
+%endif
+Conflicts:      perl < 4:5.22.0-347
+
+%description Unicode-Normalize
+This package provides Perl functions that can convert strings into various
+Unicode normalization forms as defined in Unicode Standard Annex #15.
+%endif
+
+%package Unicode-UCD
+Summary:        Unicode character database
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        0.75
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Storable)
+%if %{defined perl_bootstrap}
+%gendep_perl_Unicode_UCD
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description Unicode-UCD
+The Unicode::UCD module offers a series of functions that provide a simple
+interface to the Unicode Character Database.
+
+%package User-pwent
+Summary:        By-name interface to Perl built-in user name resolver
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.03
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_User_pwent
+%endif
+Conflicts:      perl-interpreter < 4:5.30.1-451
+
+%description User-pwent
+This package provides an object-oriented interface to Perl build-in getgr*()
+and getpw*() functions.
+
+%package vars
+Summary:        Perl pragma to predeclare global variable names
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.05
+BuildArch:      noarch
+Requires:       %perl_compat
+Requires:       perl(Carp)
+%if %{defined perl_bootstrap}
+%gendep_perl_vars
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description vars
+This pragma will predeclare all the variables whose names are in the
+list, allowing you to use them under "use strict", and disabling any
+typo warnings for them.
+
+For use with variables in the current package for a single scope, the
+functionality provided by this pragma has been superseded by "our"
+declarations, available in Perl v5.6.0 or later, and use of this pragma is
+discouraged.
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%package version
+Summary:        Perl extension for Version Objects
+License:        GPL+ or Artistic
+# Epoch bump for clean upgrade over old standalone package
+Epoch:          7
+# real version 0.9924
+Version:        0.99.24
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_version
+%endif
+BuildArch:      noarch
+
+%description version
+Perl extension for Version Objects
+%endif
+
+%package vmsish
+Summary:        Perl pragma to control VMS-specific language features
+License:        GPL+ or Artistic
+Epoch:          0
+Version:        1.04
+BuildArch:      noarch
+Requires:       %perl_compat
+%if %{defined perl_bootstrap}
+%gendep_perl_vmsish
+%endif
+Conflicts:      perl < 4:5.30.1-451
+
+%description vmsish
+The "vmsish" pragma control VMS-specific features of the Perl language. If
+you're not running VMS, this module does nothing.
+
+%prep
+%setup -q -n perl-%{perl_version}
+%patch1 -p1
+%ifarch %{multilib_64_archs}
+%patch2 -p1
+%endif
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%patch15 -p1
+%patch16 -p1
+%patch17 -p1
+%patch18 -p1
+%patch19 -p1
+%patch21 -p1
+%patch22 -p1
+%patch23 -p1
+%patch24 -p1
+%patch25 -p1
+%patch26 -p1
+%patch28 -p1
+%patch29 -p1
+%patch30 -p1
+%patch35 -p1
+%patch38 -p1
+%patch39 -p1
+%patch40 -p1
+%patch41 -p1
+%patch42 -p1
+%patch43 -p1
+%patch44 -p1
+%patch45 -p1
+%patch46 -p1
+%patch47 -p1
+%patch48 -p1
+%patch49 -p1
+%patch50 -p1
+%patch51 -p1
+%patch52 -p1
+%patch53 -p1
+%patch54 -p1
+%patch55 -p1
+%patch56 -p1
+%patch57 -p1
+%patch58 -p1
+%patch200 -p1
+%patch201 -p1
+
+%if !%{defined perl_bootstrap}
+# Local patch tracking
+perl -x patchlevel.h \
+    'Fedora Patch1: Removes date check, Fedora/RHEL specific' \
+%ifarch %{multilib_64_archs}
+    'Fedora Patch2: support for libdir64' \
+%endif
+    'Fedora Patch3: use libresolv instead of libbind' \
+    'Fedora Patch4: USE_MM_LD_RUN_PATH' \
+    'Fedora Patch5: Provide MM::maybe_command independently (bug #1129443)' \
+    'Fedora Patch6: Dont run one io test due to random builder failures' \
+    'Fedora Patch8: Define SONAME for libperl.so' \
+    'Fedora Patch9: Install libperl.so to -Dshrpdir value' \
+    'Fedora Patch10: Make *DBM_File desctructors thread-safe (RT#61912)' \
+    'Fedora Patch11: Replace EU::MakeMaker dependency with EU::MM::Utils in IPC::Cmd (bug #1129443)' \
+    'Fedora Patch12: Link XS modules to pthread library to fix linking with -z defs' \
+    'Fedora Patch13: Pass the correct CFLAGS to dtrace' \
+    'Fedora Patch14: Do not use C compiler reserved identifiers' \
+    'Fedora Patch15: Fix SvUV_nomg() macro definition' \
+    'Fedora Patch16: Fix SvTRUE() documentation' \
+    'Fedora Patch17: Fix ext/XS-APItest/t/utf8_warn_base.pl tests' \
+    'Fedora Patch18: Fix IO::Handle::error() to report write errors (GH#6799)' \
+    'Fedora Patch19: Fix IO::Handle::error() to report write errors (GH#6799)' \
+    'Fedora Patch21: Fix setting a non-blocking mode in IO::Socket::UNIX (GH#17787)' \
+    'Fedora Patch22: Fix running actions after stepping in a debugger (GH#17901)' \
+    'Fedora Patch23: Fix running actions after stepping in a debugger (GH#17901)' \
+    'Fedora Patch24: Fix running actions after stepping in a debugger (GH#17901)' \
+    'Fedora Patch25: Fix a buffer size for asctime_r() and ctime_r() functions' \
+    'Fedora Patch26: Prevent from an integer overflow in RenewDouble() macro' \
+    'Fedora Patch28: Fix a number of arguments passed to a BOOT XS subroutine (GH#17755)' \
+    'Fedora Patch29: Fix an IO::Handle spurious error reported for regular file handles (GH#18019)' \
+    'Fedora Patch30: Fix inheritance resolution of lexial objects in a debugger (GH#17661)' \
+    'Fedora Patch35: Fix sorting with a block that calls return (GH#18081)' \
+    'Fedora Patch38: Fix sv_collxfrm macro to respect locale' \
+    'Fedora Patch39: Fix an iterator signedness in handling an mro exception (GH#18155)' \
+    'Fedora Patch40: Fix a code flow in Perl_sv_inc_nomg()' \
+    'Fedora Patch41: Fix an undefined behavior in Perl_custom_op_get_field()' \
+    'Fedora Patch42: Fix Config variable names in in t/op tests' \
+    'Fedora Patch43: Fix fetching a magic on the stacked file test operators' \
+    'Fedora Patch44: Fix a crash in optimizing split() (GH#18232)' \
+    'Fedora Patch45: Fix a crash in optimizing split() (GH#18232)' \
+    'Fedora Patch46: Fix a crash in optimizing split() (GH#18232)' \
+    'Fedora Patch47: Fix a crash in optimizing split() (GH#18232)' \
+    'Fedora Patch48: Make accessing environment by DynaLoader thread-safe' \
+    'Fedora Patch49: Use duplocale() if available' \
+    'Fedora Patch50: Fix fc() in Turkish locale' \
+    'Fedora Patch51: Fix croaking on "my $_" when "use utf8" is in effect (GH#18449)' \
+    'Fedora Patch52: Fix PERL_UNUSED_ARG() definition in XSUB.h' \
+    'Fedora Patch53: Add missing entries to perldiag (GH#18276)' \
+    'Fedora Patch54: Protect locale tests from LANGUAGE environment variable' \
+    'Fedora Patch55: Prevent the number of buckets in a hash from getting too large' \
+    'Fedora Patch56: Fix a memory leak when compiling a regular expression (GH#18604)' \
+    'Fedora Patch57: Fix dumping a hash entry of PL_strtab type' \
+    'Fedora Patch57: Fix an arithmetic left shift of a minimal integer value (GH#18639)' \
+    '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}
+%endif
+
+#copy the example script
+install -m 0644 %{SOURCE5} .
+
+#copy Pod-Html license clarification
+cp %{SOURCE6} .
+
+#
+# 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()
+{
+        iconv -f "${2:-iso-8859-1}" -t utf-8 < "$1" > "${1}_"
+        touch -r "$1" "${1}_"
+        mv -f "${1}_" "$1"
+}
+# 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
+
+find . -name \*.orig -exec rm -fv {} \;
+
+# Configure Compress::Zlib to use system zlib
+sed -i 's|BUILD_ZLIB      = True|BUILD_ZLIB      = False|
+    s|INCLUDE         = ./zlib-src|INCLUDE         = %{_includedir}|
+    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
+
+%if !%{with gdbm}
+# Do not install anything requiring NDBM_File if NDBM is not available.
+rm -rf 'cpan/Memoize/Memoize/NDBM_File.pm'
+sed -i '\|cpan/Memoize/Memoize/NDBM_File.pm|d' MANIFEST
+%endif
+
+
+%build
+echo "RPM Build arch: %{_arch}"
+
+# use "lib", not %%{_lib}, for privlib, sitelib, and vendorlib
+# To build production version, we would need -DDEBUGGING=-g
+
+# Perl INC path (perl -V) in search order:
+# - /usr/local/share/perl5            -- for CPAN     (site lib)
+# - /usr/local/lib[64]/perl5          -- for CPAN     (site arch)
+# - /usr/share/perl5/vendor_perl      -- 3rd party    (vendor lib)
+# - /usr/lib[64]/perl5/vendor_perl    -- 3rd party    (vendor arch)
+# - /usr/share/perl5                  -- Fedora       (priv lib)
+# - /usr/lib[64]/perl5                -- Fedora       (arch lib)
+
+%global privlib     %{_prefix}/share/perl5
+%global archlib     %{_libdir}/perl5
+
+%global perl_vendorlib  %{privlib}/vendor_perl
+%global perl_vendorarch %{archlib}/vendor_perl
+
+%global perl_abi    %(echo '%{perl_version}' | sed 's/^\\([^.]*\\.[^.]*\\).*/\\1/')
+
+# ldflags is not used when linking XS modules.
+# Only ldflags is used when linking miniperl.
+# Only ccflags and ldflags are used for Configure's compiler checks.
+# Set optimize=none to prevent from injecting upstream's value.
+/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}" \
+        -DDEBUGGING=-g \
+        -Dversion=%{perl_version} \
+        -Dmyhostname=localhost \
+        -Dperladmin=root@localhost \
+        -Dcc='%{__cc}' \
+        -Dcf_by='Red Hat, Inc.' \
+        -Dprefix=%{_prefix} \
+%if %{without perl_enables_groff}
+        -Dman1dir="%{_mandir}/man1" \
+        -Dman3dir="%{_mandir}/man3" \
+%endif
+        -Dvendorprefix=%{_prefix} \
+        -Dsiteprefix=%{_prefix}/local \
+        -Dsitelib="%{_prefix}/local/share/perl5/%{perl_abi}" \
+        -Dsitearch="%{_prefix}/local/%{_lib}/perl5/%{perl_abi}" \
+        -Dprivlib="%{privlib}" \
+        -Dvendorlib="%{perl_vendorlib}" \
+        -Darchlib="%{archlib}" \
+        -Dvendorarch="%{perl_vendorarch}" \
+        -Darchname=%{perl_archname} \
+%ifarch %{multilib_64_archs}
+        -Dlibpth="/usr/local/lib64 /lib64 %{_prefix}/lib64" \
+%endif
+%ifarch sparc sparcv9
+        -Ud_longdbl \
+%endif
+        -Duseshrplib \
+        -Dusethreads \
+        -Duseithreads \
+%if %{with perl_enables_systemtap}
+        -Dusedtrace='/usr/bin/dtrace' \
+%else
+        -Uusedtrace \
+%endif
+        -Duselargefiles \
+        -Dd_semctl_semun \
+        -Di_db \
+%if %{with gdbm}
+        -Ui_ndbm \
+        -Di_gdbm \
+%endif
+        -Di_shadow \
+        -Di_syslog \
+        -Dman3ext=3pm \
+        -Duseperlio \
+        -Dinstallusrbinperl=n \
+        -Ubincompat5005 \
+        -Uversiononly \
+        -Dpager='/usr/bin/less -isr' \
+        -Dd_gethostent_r_proto -Ud_endhostent_r_proto -Ud_sethostent_r_proto \
+        -Ud_endprotoent_r_proto -Ud_setprotoent_r_proto \
+        -Ud_endservent_r_proto -Ud_setservent_r_proto \
+        -Dscriptdir='%{_bindir}' \
+        -Dusesitecustomize \
+        -Duse64bitint
+
+# -Duseshrplib creates libperl.so, -Ubincompat5005 help create DSO -> libperl.so
+
+BUILD_BZIP2=0
+BZIP2_LIB=%{_libdir}
+export BUILD_BZIP2 BZIP2_LIB
+
+# Prepare a symlink from proper DSO name to libperl.so now so that new perl
+# can be executed from make.
+%global soname libperl.so.%{perl_abi}
+test -L %soname || ln -s libperl.so %soname
+
+%ifarch sparc64 %{arm}
+make
+%else
+make %{?_smp_mflags}
+%endif
+
+%install
+make install DESTDIR=$RPM_BUILD_ROOT
+
+%global build_archlib $RPM_BUILD_ROOT%{archlib}
+%global build_privlib $RPM_BUILD_ROOT%{privlib}
+%global build_bindir  $RPM_BUILD_ROOT%{_bindir}
+%global new_perl LD_PRELOAD="%{build_archlib}/CORE/libperl.so" \\\
+    LD_LIBRARY_PATH="%{build_archlib}/CORE" \\\
+    PERL5LIB="%{build_archlib}:%{build_privlib}" \\\
+    %{build_bindir}/perl
+
+# Make proper DSO names, move libperl to standard path.
+mv "%{build_archlib}/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}" "%{build_archlib}/CORE/libperl.so"
+# XXX: Remove the soname named file from CORE directory that was created as
+# a symlink in build section and installed as a regular file by perl build
+# system.
+rm -f "%{build_archlib}/CORE/%{soname}"
+
+install -p -m 755 utils/pl2pm %{build_bindir}/pl2pm
+
+# perlfunc/ioctl() recommends sys/ioctl.ph.
+# perlfaq5 recommends sys/syscall.ph.
+# perlfunc/syscall() recommends syscall.ph.
+for i in sys/ioctl.h sys/syscall.h syscall.h
+do
+    %{new_perl} %{build_bindir}/h2ph -a -d %{build_archlib} $i || true
+done
+
+# vendor directories (in this case for third party rpms)
+# perl doesn't create the auto subdirectory, but modules put things in it,
+# so we need to own it.
+
+mkdir -p $RPM_BUILD_ROOT%{perl_vendorarch}/auto
+mkdir -p $RPM_BUILD_ROOT%{perl_vendorlib}
+
+#
+# perl RPM macros
+#
+mkdir -p ${RPM_BUILD_ROOT}%{_rpmmacrodir}
+install -p -m 644 %{SOURCE3} ${RPM_BUILD_ROOT}%{_rpmmacrodir}
+
+#
+# Core modules removal
+#
+# Dual-living binaries clashes on debuginfo files between perl and standalone
+# packages. Excluding is not enough, we need to remove them. This is
+# a work-around for rpmbuild bug #878863.
+find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -delete
+chmod -R u+w $RPM_BUILD_ROOT/*
+
+# miniperl? As an interpreter? How odd. Anyway, a symlink does it:
+rm %{build_privlib}/ExtUtils/xsubpp
+ln -s ../../../bin/xsubpp %{build_privlib}/ExtUtils/
+
+# Don't need the .packlist
+rm %{build_archlib}/.packlist
+
+# Do not distribute File::Spec::VMS as it works on VMS only (bug #973713)
+# We cannot remove it in %%prep because dist/Cwd/t/Spec.t test needs it.
+rm %{build_archlib}/File/Spec/VMS.pm
+rm $RPM_BUILD_ROOT%{_mandir}/man3/File::Spec::VMS.3*
+
+# Fix some manpages to be UTF-8
+mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1/
+pushd $RPM_BUILD_ROOT%{_mandir}/man1/
+  for i in perl588delta.1 perldelta.1 ; do
+    iconv -f MS-ANSI -t UTF-8 $i --output new-$i
+    rm $i
+    mv new-$i $i
+  done
+popd
+
+# for now, remove Bzip2:
+# Why? Now is missing Bzip2 files and provides
+##find $RPM_BUILD_ROOT -name Bzip2 | xargs rm -r
+##find $RPM_BUILD_ROOT -name '*B*zip2*'| xargs rm
+
+# tests -- FIXME need to validate that this all works as expected
+mkdir -p %{buildroot}%{perl5_testdir}/perl-tests
+
+# "core"
+tar -cf - t/ | ( cd %{buildroot}%{perl5_testdir}/perl-tests && tar -xf - )
+
+# "dual-lifed"
+for dir in `find ext/ -type d -name t -maxdepth 2` ; do
+
+    tar -cf - $dir | ( cd %{buildroot}%{perl5_testdir}/perl-tests/t && tar -xf - )
+done
+
+# Normalize shell bangs in tests.
+# brp-mangle-shebangs executed by rpm-build chokes on t/TEST.
+%{new_perl} -MConfig -i -pn \
+    -e 's"\A#!(?:perl|\./perl|/perl|/usr/bin/perl|/usr/bin/env perl)\b"$Config{startperl}"' \
+    $(find %{buildroot}%{perl5_testdir}/perl-tests -type f)
+
+%if %{with perl_enables_systemtap}
+# Systemtap tapset install
+mkdir -p %{buildroot}%{tapsetdir}
+%ifarch %{multilib_64_archs}
+%global libperl_stp libperl%{perl_version}-64.stp
+%else
+%global libperl_stp libperl%{perl_version}-32.stp
+%endif
+
+sed \
+  -e "s|LIBRARY_PATH|%{_libdir}/%{soname}|" \
+  %{SOURCE4} \
+  > %{buildroot}%{tapsetdir}/%{libperl_stp}
+%endif
+
+# TODO: Canonicalize test files (rewrite intrerpreter path, fix permissions)
+# XXX: We cannot rewrite ./perl before %%check phase. Otherwise the test
+# would run against system perl at build-time.
+# See __spec_check_pre global macro in macros.perl.
+#T_FILES=`find %%{buildroot}%%{perl5_testdir} -type f -name '*.t'`
+#%%fix_shbang_line $T_FILES
+#%%{__chmod} +x $T_FILES
+#%%{_fixperms} %%{buildroot}%%{perl5_testdir}
+#
+# lib/perl5db.t will fail if Term::ReadLine::Gnu is available
+%check
+%if %{with test}
+%{new_perl} -I/lib regen/lib_cleanup.pl
+pushd t
+%{new_perl} -I../lib porting/customized.t --regen
+popd
+%if %{parallel_tests}
+    JOBS=$(printf '%%s' "%{?_smp_mflags}" | sed 's/.*-j\([0-9][0-9]*\).*/\1/')
+    LC_ALL=C TEST_JOBS=$JOBS make test_harness
+%else
+    LC_ALL=C make test
+%endif
+%endif
+
+%ldconfig_scriptlets libs
+
+%files
+# Main perl package is an empty meta package.
+%if !(%{dual_life} || %{rebuild_from_scratch})
+# These excludes are here to work around a bug in debuginfo generator
+# <https://github.com/rpm-software-management/rpm/issues/1094> that would
+# otherwise leave debuginfo files in the buildroot tree. It seems that
+# the excludes in noarch files sections are ignorered by the debuginfo
+# generator.
+%exclude %{archlib}/auto/Compress/Raw/Bzip2/Bzip2.so
+%exclude %{archlib}/auto/Compress/Raw/Zlib/Zlib.so
+%exclude %{archlib}/auto/Cwd/Cwd.so
+%exclude %{archlib}/auto/DB_File/DB_File.so
+%exclude %{archlib}/auto/Data/Dumper/Dumper.so
+%exclude %{archlib}/auto/Digest/MD5/MD5.so
+%exclude %{archlib}/auto/Digest/SHA/SHA.so
+%exclude %{archlib}/auto/Filter/Util/Call/Call.so
+%exclude %{archlib}/auto/IPC/SysV/SysV.so
+%exclude %{archlib}/auto/List/Util/Util.so
+%exclude %{archlib}/auto/MIME/Base64/Base64.so
+%exclude %{archlib}/auto/Math/BigInt/FastCalc/FastCalc.so
+%exclude %{archlib}/auto/Socket/Socket.so
+%exclude %{archlib}/auto/Storable/Storable.so
+%exclude %{archlib}/auto/Time/HiRes/HiRes.so
+%endif
+
+%files interpreter
+%{_bindir}/perl
+%{_bindir}/perl%{perl_version}
+%{_mandir}/man1/perl.1*
+%{_mandir}/man1/perlrun.1*
+%dir %{privlib}/pod
+%{privlib}/pod/perl.pod
+%{privlib}/pod/perlrun.pod
+
+%files libs
+%license Artistic Copying
+%doc AUTHORS README Changes
+%dir %{archlib}
+%{archlib}/attributes.pm
+%dir %{archlib}/auto
+%dir %{archlib}/auto/attributes
+%{archlib}/auto/attributes/attributes.so
+%dir %{archlib}/auto/File
+%dir %{archlib}/auto/File/Glob
+%{archlib}/auto/File/Glob/Glob.so
+%{archlib}/auto/PerlIO
+%{archlib}/auto/re
+%{archlib}/auto/SDBM_File
+%{archlib}/Config.*
+%{archlib}/Config_git.pl
+%{archlib}/Config_heavy.pl
+%dir %{archlib}/CORE
+%{archlib}/CORE/libperl.so
+%dir %{archlib}/File
+%{archlib}/File/Glob.pm
+%{archlib}/PerlIO
+%{archlib}/re.pm
+%{archlib}/SDBM_File.pm
+%{_libdir}/libperl.so.*
+%dir %{perl_vendorarch}
+%dir %{perl_vendorarch}/auto
+%dir %{privlib}
+%{privlib}/AnyDBM_File.pm
+%{privlib}/bytes.pm
+%{privlib}/bytes_heavy.pl
+%{privlib}/_charnames.pm
+%{privlib}/charnames.pm
+%{privlib}/CORE.pod
+%{privlib}/feature.pm
+%{privlib}/integer.pm
+%{privlib}/Internals.pod
+%{privlib}/PerlIO.pm
+%{privlib}/strict.pm
+%{privlib}/unicore
+%{privlib}/UNIVERSAL.pm
+%{privlib}/utf8.pm
+%{privlib}/warnings
+%{privlib}/warnings.pm
+%dir %{privlib}/Tie
+%{privlib}/Tie/Hash.pm
+%dir %{privlib}/Tie/Hash
+%{privlib}/Tie/Hash/NamedCapture.pm
+%{privlib}/XSLoader.pm
+%dir %{perl_vendorlib}
+%{_mandir}/man3/AnyDBM_File.*
+%{_mandir}/man3/attributes.*
+%{_mandir}/man3/bytes.*
+%{_mandir}/man3/charnames.*
+%{_mandir}/man3/Config.*
+%{_mandir}/man3/CORE.*
+%{_mandir}/man3/feature.3*
+%{_mandir}/man3/File::Glob.*
+%{_mandir}/man3/integer.*
+%{_mandir}/man3/Internals.*
+%{_mandir}/man3/PerlIO.*
+%{_mandir}/man3/PerlIO::encoding.*
+%{_mandir}/man3/PerlIO::mmap.*
+%{_mandir}/man3/PerlIO::scalar.*
+%{_mandir}/man3/PerlIO::via.*
+%{_mandir}/man3/re.*
+%{_mandir}/man3/SDBM_File.3*
+%{_mandir}/man3/strict.*
+%{_mandir}/man3/Tie::Hash.*
+%{_mandir}/man3/Tie::Hash::*
+%{_mandir}/man3/utf8.*
+%{_mandir}/man3/warnings.*
+%{_mandir}/man3/warnings::*
+%{_mandir}/man3/UNIVERSAL.*
+%{_mandir}/man3/XSLoader.*
+
+%files devel
+%{_bindir}/h2xs
+%{_mandir}/man1/h2xs*
+%{_bindir}/perlivp
+%{_mandir}/man1/perlivp*
+%{archlib}/CORE/*.h
+%dir %{privlib}/ExtUtils
+%{privlib}/ExtUtils/typemap
+%{_libdir}/libperl.so
+%if %{with perl_enables_systemtap}
+%dir %{_datadir}/systemtap
+%dir %{_datadir}/systemtap/tapset
+%{tapsetdir}/%{libperl_stp}
+%doc perl-example.stp
+%endif
+
+%files macros
+%{_rpmmacrodir}/macros.perl
+
+%files tests
+%{perl5_testdir}/
+
+%files utils
+%{_bindir}/h2ph
+%{_bindir}/perlbug
+%{_bindir}/perlthanks
+%{_bindir}/pl2pm
+%dir %{privlib}/pod
+%{privlib}/pod/perlutil.pod
+%{_mandir}/man1/h2ph.*
+%{_mandir}/man1/perlbug.*
+%{_mandir}/man1/perlthanks.*
+%{_mandir}/man1/perlutil.*
+%{_mandir}/man1/pl2pm.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Archive-Tar
+%{_bindir}/ptar
+%{_bindir}/ptardiff
+%{_bindir}/ptargrep
+%dir %{privlib}/Archive
+%{privlib}/Archive/Tar 
+%{privlib}/Archive/Tar.pm
+%{_mandir}/man1/ptar.1*
+%{_mandir}/man1/ptardiff.1*
+%{_mandir}/man1/ptargrep.1*
+%{_mandir}/man3/Archive::Tar* 
+%else
+%exclude %{_bindir}/ptar
+%exclude %{_bindir}/ptardiff
+%exclude %{_bindir}/ptargrep
+%exclude %dir %{privlib}/Archive
+%exclude %{privlib}/Archive/Tar
+%exclude %{privlib}/Archive/Tar.pm
+%exclude %{_mandir}/man1/ptar.1*
+%exclude %{_mandir}/man1/ptardiff.1*
+%exclude %{_mandir}/man1/ptargrep.1*
+%exclude %{_mandir}/man3/Archive::Tar*
+%endif
+
+%files Attribute-Handlers
+%{privlib}/Attribute
+%{_mandir}/man3/Attribute::Handlers.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files autodie
+%{privlib}/autodie/
+%{privlib}/autodie.pm
+%{privlib}/Fatal.pm
+%{_mandir}/man3/autodie.3*
+%{_mandir}/man3/autodie::*
+%{_mandir}/man3/Fatal.3*
+%else
+%exclude %{privlib}/autodie/
+%exclude %{privlib}/autodie.pm
+%exclude %{privlib}/Fatal.pm
+%exclude %{_mandir}/man3/autodie.3*
+%exclude %{_mandir}/man3/autodie::*
+%exclude %{_mandir}/man3/Fatal.3*
+%endif
+
+%files AutoLoader
+%{privlib}/AutoLoader.pm
+%{_mandir}/man3/AutoLoader.3*
+
+%files AutoSplit
+%{privlib}/AutoSplit.pm
+%{_mandir}/man3/AutoSplit.3*
+
+%files autouse
+%{privlib}/autouse.pm
+%{_mandir}/man3/autouse.3*
+
+%files B
+%{archlib}/auto/B
+%{archlib}/B
+%{archlib}/B.pm
+%{archlib}/O.pm
+%{privlib}/B
+%{_mandir}/man3/B.*
+%{_mandir}/man3/B::*
+%{_mandir}/man3/O.*
+
+%files base
+%{privlib}/base.pm
+%{_mandir}/man3/base.3*
+
+%files Benchmark
+%{privlib}/Benchmark.pm
+%{_mandir}/man3/Benchmark.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files bignum
+%{privlib}/bigint.pm
+%{privlib}/bignum.pm
+%{privlib}/bigrat.pm
+%dir %{privlib}/Math
+%{privlib}/Math/BigFloat
+%dir %{privlib}/Math/BigInt
+%{privlib}/Math/BigInt/Trace.pm
+%{_mandir}/man3/bigint.*
+%{_mandir}/man3/bignum.*
+%{_mandir}/man3/bigrat.*
+%else
+%exclude %{privlib}/bigint.pm
+%exclude %{privlib}/bignum.pm
+%exclude %{privlib}/bigrat.pm
+%exclude %{privlib}/Math/BigFloat
+%exclude %{privlib}/Math/BigInt/Trace.pm
+%exclude %{_mandir}/man3/bigint.*
+%exclude %{_mandir}/man3/bignum.*
+%exclude %{_mandir}/man3/bigrat.*
+%endif
+
+%files blib
+%{privlib}/blib.pm
+%{_mandir}/man3/blib.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Carp
+%{privlib}/Carp
+%{privlib}/Carp.*
+%{_mandir}/man3/Carp.*
+%else
+%exclude %{privlib}/Carp
+%exclude %{privlib}/Carp.*
+%exclude %{_mandir}/man3/Carp.*
+%endif
+
+%files Class-Struct
+%{privlib}/Class
+%{_mandir}/man3/Class::Struct.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Compress-Raw-Bzip2
+%dir %{archlib}/Compress
+%dir %{archlib}/Compress/Raw
+%{archlib}/Compress/Raw/Bzip2.pm
+%dir %{archlib}/auto/Compress
+%dir %{archlib}/auto/Compress/Raw
+%{archlib}/auto/Compress/Raw/Bzip2
+%{_mandir}/man3/Compress::Raw::Bzip2*
+%else
+%exclude %dir %{archlib}/Compress
+%exclude %dir %{archlib}/Compress/Raw
+%exclude %{archlib}/Compress/Raw/Bzip2.pm
+%exclude %dir %{archlib}/auto/Compress
+%exclude %dir %{archlib}/auto/Compress/Raw
+%exclude %{archlib}/auto/Compress/Raw/Bzip2
+%exclude %{_mandir}/man3/Compress::Raw::Bzip2*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Compress-Raw-Zlib
+%dir %{archlib}/Compress
+%dir %{archlib}/Compress/Raw
+%{archlib}/Compress/Raw/Zlib.pm
+%dir %{archlib}/auto/Compress
+%dir %{archlib}/auto/Compress/Raw
+%{archlib}/auto/Compress/Raw/Zlib
+%{_mandir}/man3/Compress::Raw::Zlib*
+%else
+%exclude %dir %{archlib}/Compress
+%exclude %dir %{archlib}/Compress/Raw
+%exclude %{archlib}/Compress/Raw/Zlib.pm
+%exclude %dir %{archlib}/auto/Compress
+%exclude %dir %{archlib}/auto/Compress/Raw
+%exclude %{archlib}/auto/Compress/Raw/Zlib
+%exclude %{_mandir}/man3/Compress::Raw::Zlib*
+%endif
+
+%files Config-Extensions
+%dir %{privlib}/Config
+%{privlib}/Config/Extensions.pm
+%{_mandir}/man3/Config::Extensions.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Config-Perl-V
+%dir %{privlib}/Config
+%{privlib}/Config/Perl
+%{_mandir}/man3/Config::Perl::V.*
+%else
+%exclude %{privlib}/Config/Perl
+%exclude %{_mandir}/man3/Config::Perl::V.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files constant
+%{privlib}/constant.pm
+%{_mandir}/man3/constant.3*
+%else
+%exclude %{privlib}/constant.pm
+%exclude %{_mandir}/man3/constant.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files CPAN
+%{_bindir}/cpan
+%dir %{privlib}/App
+%{privlib}/App/Cpan.pm
+%{privlib}/CPAN
+%{privlib}/CPAN.pm
+%{_mandir}/man1/cpan.1*
+%{_mandir}/man3/App::Cpan.*
+%{_mandir}/man3/CPAN.*
+%{_mandir}/man3/CPAN:*
+%exclude %{privlib}/CPAN/Meta/
+%exclude %{privlib}/CPAN/Meta.pm
+%exclude %{_mandir}/man3/CPAN::Meta*
+%else
+%exclude %{_bindir}/cpan
+%exclude %dir %{privlib}/App
+%exclude %{privlib}/App/Cpan.pm
+%exclude %{privlib}/CPAN
+%exclude %{privlib}/CPAN.pm
+%exclude %{_mandir}/man1/cpan.1*
+%exclude %{_mandir}/man3/App::Cpan.*
+%exclude %{_mandir}/man3/CPAN.*
+%exclude %{_mandir}/man3/CPAN:*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files CPAN-Meta
+%dir %{privlib}/CPAN/Meta
+%{privlib}/CPAN/Meta.pm
+%{privlib}/CPAN/Meta/Converter.pm
+%{privlib}/CPAN/Meta/Feature.pm
+%dir %{privlib}/CPAN/Meta/History
+%{privlib}/CPAN/Meta/History/Meta*
+%{privlib}/CPAN/Meta/History.pm
+%{privlib}/CPAN/Meta/Merge.pm
+%{privlib}/CPAN/Meta/Prereqs.pm
+%{privlib}/CPAN/Meta/Spec.pm
+%{privlib}/CPAN/Meta/Validator.pm
+%dir %{privlib}/Parse/
+%dir %{privlib}/Parse/CPAN/
+%{privlib}/Parse/CPAN/Meta.pm
+%{_mandir}/man3/CPAN::Meta*
+%{_mandir}/man3/Parse::CPAN::Meta.3*
+%exclude %{_mandir}/man3/CPAN::Meta::YAML*
+%exclude %{_mandir}/man3/CPAN::Meta::Requirements*
+%else
+%exclude %dir %{privlib}/CPAN
+%exclude %{privlib}/CPAN/Meta.pm
+%exclude %dir %{privlib}/CPAN/Meta
+%exclude %{privlib}/CPAN/Meta/Converter.pm
+%exclude %{privlib}/CPAN/Meta/Feature.pm
+%exclude %dir %{privlib}/CPAN/Meta/History
+%exclude %{privlib}/CPAN/Meta/History.pm
+%exclude %{privlib}/CPAN/Meta/Merge.pm
+%exclude %{privlib}/CPAN/Meta/Prereqs.pm
+%exclude %{privlib}/CPAN/Meta/Spec.pm
+%exclude %{privlib}/CPAN/Meta/Validator.pm
+%exclude %dir %{privlib}/Parse
+%exclude %dir %{privlib}/Parse/CPAN
+%exclude %{privlib}/Parse/CPAN/Meta.pm
+%exclude %{_mandir}/man3/CPAN::Meta*
+%exclude %{_mandir}/man3/Parse::CPAN::Meta.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files CPAN-Meta-Requirements
+%dir %{privlib}/CPAN
+%dir %{privlib}/CPAN/Meta
+%{privlib}/CPAN/Meta/Requirements.pm
+%{_mandir}/man3/CPAN::Meta::Requirements.3*
+%else
+%exclude %dir %{privlib}/CPAN
+%exclude %dir %{privlib}/CPAN/Meta
+%exclude %{privlib}/CPAN/Meta/Requirements.pm
+%exclude %{_mandir}/man3/CPAN::Meta::Requirements.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files CPAN-Meta-YAML
+%dir %{privlib}/CPAN
+%dir %{privlib}/CPAN/Meta
+%{privlib}/CPAN/Meta/YAML.pm
+%{_mandir}/man3/CPAN::Meta::YAML*
+%else
+%exclude %dir %{privlib}/CPAN
+%exclude %dir %{privlib}/CPAN/Meta
+%exclude %{privlib}/CPAN/Meta/YAML.pm
+%exclude %{_mandir}/man3/CPAN::Meta::YAML*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Data-Dumper
+%dir %{archlib}/auto/Data
+%dir %{archlib}/auto/Data/Dumper
+%{archlib}/auto/Data/Dumper/Dumper.so
+%dir %{archlib}/Data
+%{archlib}/Data/Dumper.pm
+%{_mandir}/man3/Data::Dumper.3*
+%else
+%exclude %dir %{archlib}/auto/Data
+%exclude %dir %{archlib}/auto/Data/Dumper
+%exclude %{archlib}/auto/Data/Dumper/Dumper.so
+%exclude %dir %{archlib}/Data
+%exclude %{archlib}/Data/Dumper.pm
+%exclude %{_mandir}/man3/Data::Dumper.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files DB_File
+%{archlib}/DB_File.pm
+%dir %{archlib}/auto/DB_File
+%{archlib}/auto/DB_File/DB_File.so
+%{_mandir}/man3/DB_File*
+%else
+%exclude %{archlib}/DB_File.pm
+%exclude %dir %{archlib}/auto/DB_File
+%exclude %{archlib}/auto/DB_File/DB_File.so
+%exclude %{_mandir}/man3/DB_File*
+%endif
+
+%files DBM_Filter
+%{privlib}/DBM_Filter
+%{privlib}/DBM_Filter.pm
+%{_mandir}/man3/DBM_Filter.*
+%{_mandir}/man3/DBM_Filter::*
+
+%files debugger
+%{privlib}/DB.pm
+%{privlib}/dumpvar.pl
+%{privlib}/perl5db.pl
+%dir %{privlib}/pod
+%{privlib}/pod/perldebug.pod
+%{_mandir}/man1/perldebug.*
+%{_mandir}/man3/DB.*
+
+%files deprecate
+%{privlib}/deprecate.pm
+%{_mandir}/man3/deprecate.*
+
+%files Devel-Peek
+%dir %{archlib}/Devel
+%{archlib}/Devel/Peek.pm
+%dir %{archlib}/auto/Devel
+%{archlib}/auto/Devel/Peek
+%{_mandir}/man3/Devel::Peek.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Devel-PPPort
+%dir %{archlib}/Devel
+%{archlib}/Devel/PPPort.pm
+%{_mandir}/man3/Devel::PPPort.3*
+%else
+%exclude %{archlib}/Devel/PPPort.pm
+%exclude %{_mandir}/man3/Devel::PPPort.3*
+%endif
+
+%files Devel-SelfStubber
+%dir %{privlib}/Devel
+%{privlib}/Devel/SelfStubber.pm
+%{_mandir}/man3/Devel::SelfStubber.*
+
+%files diagnostics
+%{_bindir}/splain
+%{privlib}/diagnostics.pm
+%dir %{privlib}/pod
+%{privlib}/pod/perldiag.pod
+%{_mandir}/man1/perldiag.*
+%{_mandir}/man1/splain.*
+%{_mandir}/man3/diagnostics.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Digest
+%{privlib}/Digest.pm
+%dir %{privlib}/Digest
+%{privlib}/Digest/base.pm
+%{privlib}/Digest/file.pm
+%{_mandir}/man3/Digest.3*
+%{_mandir}/man3/Digest::base.3*
+%{_mandir}/man3/Digest::file.3*
+%else
+%exclude %{privlib}/Digest.pm
+%exclude %dir %{privlib}/Digest
+%exclude %{privlib}/Digest/base.pm
+%exclude %{privlib}/Digest/file.pm
+%exclude %{_mandir}/man3/Digest.3*
+%exclude %{_mandir}/man3/Digest::base.3*
+%exclude %{_mandir}/man3/Digest::file.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Digest-MD5
+%dir %{archlib}/Digest
+%{archlib}/Digest/MD5.pm
+%dir %{archlib}/auto/Digest
+%{archlib}/auto/Digest/MD5
+%{_mandir}/man3/Digest::MD5.3*
+%else
+%exclude %dir %{archlib}/Digest
+%exclude %{archlib}/Digest/MD5.pm
+%exclude %dir %{archlib}/auto/Digest
+%exclude %{archlib}/auto/Digest/MD5
+%exclude %{_mandir}/man3/Digest::MD5.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Digest-SHA
+%{_bindir}/shasum
+%dir %{archlib}/Digest
+%{archlib}/Digest/SHA.pm
+%dir %{archlib}/auto/Digest
+%{archlib}/auto/Digest/SHA
+%{_mandir}/man1/shasum.1*
+%{_mandir}/man3/Digest::SHA.3*
+%else
+%exclude %{_bindir}/shasum
+%exclude %dir %{archlib}/Digest
+%exclude %{archlib}/Digest/SHA.pm
+%exclude %dir %{archlib}/auto/Digest
+%exclude %{archlib}/auto/Digest/SHA
+%exclude %{_mandir}/man1/shasum.1*
+%exclude %{_mandir}/man3/Digest::SHA.3*
+%endif
+
+%files DirHandle
+%{privlib}/DirHandle.pm
+%{_mandir}/man3/DirHandle.3*
+
+%files doc
+%dir %{privlib}/pod
+%{privlib}/pod/perl5*delta.pod
+%{privlib}/pod/perlaix.pod
+%{privlib}/pod/perlamiga.pod
+%{privlib}/pod/perlandroid.pod
+%{privlib}/pod/perlapi.pod
+%{privlib}/pod/perlapio.pod
+%{privlib}/pod/perlartistic.pod
+%{privlib}/pod/perlbook.pod
+%{privlib}/pod/perlboot.pod
+%{privlib}/pod/perlbot.pod
+%{privlib}/pod/perlbs2000.pod
+%{privlib}/pod/perlcall.pod
+%{privlib}/pod/perlcheat.pod
+%{privlib}/pod/perlclib.pod
+%{privlib}/pod/perlcn.pod
+%{privlib}/pod/perlcommunity.pod
+%{privlib}/pod/perlcygwin.pod
+%{privlib}/pod/perldata.pod
+%{privlib}/pod/perldbmfilter.pod
+%{privlib}/pod/perldebguts.pod
+%{privlib}/pod/perldebtut.pod
+%{privlib}/pod/perldelta.pod
+%{privlib}/pod/perldeprecation.pod
+%{privlib}/pod/perldos.pod
+%{privlib}/pod/perldsc.pod
+%{privlib}/pod/perldtrace.pod
+%{privlib}/pod/perlebcdic.pod
+%{privlib}/pod/perlembed.pod
+%{privlib}/pod/perlexperiment.pod
+%{privlib}/pod/perlfork.pod
+%{privlib}/pod/perlform.pod
+%{privlib}/pod/perlfreebsd.pod
+%{privlib}/pod/perlfunc.pod
+%{privlib}/pod/perlgit.pod
+%{privlib}/pod/perlgov.pod
+%{privlib}/pod/perlgpl.pod
+%{privlib}/pod/perlguts.pod
+%{privlib}/pod/perlhack.pod
+%{privlib}/pod/perlhacktips.pod
+%{privlib}/pod/perlhacktut.pod
+%{privlib}/pod/perlhaiku.pod
+%{privlib}/pod/perlhist.pod
+%{privlib}/pod/perlhpux.pod
+%{privlib}/pod/perlhurd.pod
+%{privlib}/pod/perlintern.pod
+%{privlib}/pod/perlinterp.pod
+%{privlib}/pod/perlintro.pod
+%{privlib}/pod/perliol.pod
+%{privlib}/pod/perlipc.pod
+%{privlib}/pod/perlirix.pod
+%{privlib}/pod/perljp.pod
+%{privlib}/pod/perlko.pod
+%{privlib}/pod/perllexwarn.pod
+%{privlib}/pod/perllinux.pod
+%{privlib}/pod/perllocale.pod
+%{privlib}/pod/perllol.pod
+%{privlib}/pod/perlmacos.pod
+%{privlib}/pod/perlmacosx.pod
+%{privlib}/pod/perlmod.pod
+%{privlib}/pod/perlmodinstall.pod
+%{privlib}/pod/perlmodlib.pod
+%{privlib}/pod/perlmodstyle.pod
+%{privlib}/pod/perlmroapi.pod
+%{privlib}/pod/perlnetware.pod
+%{privlib}/pod/perlnewmod.pod
+%{privlib}/pod/perlnumber.pod
+%{privlib}/pod/perlobj.pod
+%{privlib}/pod/perlootut.pod
+%{privlib}/pod/perlop.pod
+%{privlib}/pod/perlopenbsd.pod
+%{privlib}/pod/perlopentut.pod
+%{privlib}/pod/perlos2.pod
+%{privlib}/pod/perlos390.pod
+%{privlib}/pod/perlos400.pod
+%{privlib}/pod/perlpacktut.pod
+%{privlib}/pod/perlperf.pod
+%{privlib}/pod/perlplan9.pod
+%{privlib}/pod/perlpod.pod
+%{privlib}/pod/perlpodspec.pod
+%{privlib}/pod/perlpolicy.pod
+%{privlib}/pod/perlport.pod
+%{privlib}/pod/perlpragma.pod
+%{privlib}/pod/perlqnx.pod
+%{privlib}/pod/perlre.pod
+%{privlib}/pod/perlreapi.pod
+%{privlib}/pod/perlrebackslash.pod
+%{privlib}/pod/perlrecharclass.pod
+%{privlib}/pod/perlref.pod
+%{privlib}/pod/perlreftut.pod
+%{privlib}/pod/perlreguts.pod
+%{privlib}/pod/perlrepository.pod
+%{privlib}/pod/perlrequick.pod
+%{privlib}/pod/perlreref.pod
+%{privlib}/pod/perlretut.pod
+%{privlib}/pod/perlriscos.pod
+%{privlib}/pod/perlsec.pod
+%{privlib}/pod/perlsecpolicy.pod
+%{privlib}/pod/perlsolaris.pod
+%{privlib}/pod/perlsource.pod
+%{privlib}/pod/perlstyle.pod
+%{privlib}/pod/perlsub.pod
+%{privlib}/pod/perlsymbian.pod
+%{privlib}/pod/perlsyn.pod
+%{privlib}/pod/perlsynology.pod
+%{privlib}/pod/perlthrtut.pod
+%{privlib}/pod/perltie.pod
+%{privlib}/pod/perltoc.pod
+%{privlib}/pod/perltodo.pod
+%{privlib}/pod/perltooc.pod
+%{privlib}/pod/perltoot.pod
+%{privlib}/pod/perltrap.pod
+%{privlib}/pod/perltru64.pod
+%{privlib}/pod/perltw.pod
+%{privlib}/pod/perlunicode.pod
+%{privlib}/pod/perlunicook.pod
+%{privlib}/pod/perlunifaq.pod
+%{privlib}/pod/perluniintro.pod
+%{privlib}/pod/perluniprops.pod
+%{privlib}/pod/perlunitut.pod
+%{privlib}/pod/perlvar.pod
+%{privlib}/pod/perlvms.pod
+%{privlib}/pod/perlvos.pod
+%{privlib}/pod/perlwin32.pod
+%{_mandir}/man1/perl5*delta.*
+%{_mandir}/man1/perlaix.*
+%{_mandir}/man1/perlamiga.*
+%{_mandir}/man1/perlandroid.*
+%{_mandir}/man1/perlapi.*
+%{_mandir}/man1/perlapio.*
+%{_mandir}/man1/perlartistic.*
+%{_mandir}/man1/perlbook.*
+%{_mandir}/man1/perlboot.*
+%{_mandir}/man1/perlbot.*
+%{_mandir}/man1/perlbs2000.*
+%{_mandir}/man1/perlcall.*
+%{_mandir}/man1/perlcheat.*
+%{_mandir}/man1/perlclib.*
+%{_mandir}/man1/perlcn.*
+%{_mandir}/man1/perlcommunity.*
+%{_mandir}/man1/perlcygwin.*
+%{_mandir}/man1/perldata.*
+%{_mandir}/man1/perldbmfilter.*
+%{_mandir}/man1/perldebguts.*
+%{_mandir}/man1/perldebtut.*
+%{_mandir}/man1/perldelta.*
+%{_mandir}/man1/perldeprecation.*
+%{_mandir}/man1/perldos.*
+%{_mandir}/man1/perldsc.*
+%{_mandir}/man1/perldtrace.*
+%{_mandir}/man1/perlebcdic.*
+%{_mandir}/man1/perlembed.*
+%{_mandir}/man1/perlexperiment.*
+%{_mandir}/man1/perlfork.*
+%{_mandir}/man1/perlform.*
+%{_mandir}/man1/perlfreebsd.*
+%{_mandir}/man1/perlfunc.*
+%{_mandir}/man1/perlgit.*
+%{_mandir}/man1/perlgov.*
+%{_mandir}/man1/perlgpl.*
+%{_mandir}/man1/perlguts.*
+%{_mandir}/man1/perlhack.*
+%{_mandir}/man1/perlhacktips.*
+%{_mandir}/man1/perlhacktut.*
+%{_mandir}/man1/perlhaiku.*
+%{_mandir}/man1/perlhist.*
+%{_mandir}/man1/perlhpux.*
+%{_mandir}/man1/perlhurd.*
+%{_mandir}/man1/perlintern.*
+%{_mandir}/man1/perlinterp.*
+%{_mandir}/man1/perlintro.*
+%{_mandir}/man1/perliol.*
+%{_mandir}/man1/perlipc.*
+%{_mandir}/man1/perlirix.*
+%{_mandir}/man1/perljp.*
+%{_mandir}/man1/perlko.*
+%{_mandir}/man1/perllexwarn.*
+%{_mandir}/man1/perllinux.*
+%{_mandir}/man1/perllocale.*
+%{_mandir}/man1/perllol.*
+%{_mandir}/man1/perlmacos.*
+%{_mandir}/man1/perlmacosx.*
+%{_mandir}/man1/perlmod.*
+%{_mandir}/man1/perlmodinstall.*
+%{_mandir}/man1/perlmodlib.*
+%{_mandir}/man1/perlmodstyle.*
+%{_mandir}/man1/perlmroapi.*
+%{_mandir}/man1/perlnetware.*
+%{_mandir}/man1/perlnewmod.*
+%{_mandir}/man1/perlnumber.*
+%{_mandir}/man1/perlobj.*
+%{_mandir}/man1/perlootut.*
+%{_mandir}/man1/perlop.*
+%{_mandir}/man1/perlopenbsd.*
+%{_mandir}/man1/perlopentut.*
+%{_mandir}/man1/perlos2.*
+%{_mandir}/man1/perlos390.*
+%{_mandir}/man1/perlos400.*
+%{_mandir}/man1/perlpacktut.*
+%{_mandir}/man1/perlperf.*
+%{_mandir}/man1/perlplan9.*
+%{_mandir}/man1/perlpod.*
+%{_mandir}/man1/perlpodspec.*
+%{_mandir}/man1/perlpolicy.*
+%{_mandir}/man1/perlport.*
+%{_mandir}/man1/perlpragma.*
+%{_mandir}/man1/perlqnx.*
+%{_mandir}/man1/perlre.*
+%{_mandir}/man1/perlreapi.*
+%{_mandir}/man1/perlrebackslash.*
+%{_mandir}/man1/perlrecharclass.*
+%{_mandir}/man1/perlref.*
+%{_mandir}/man1/perlreftut.*
+%{_mandir}/man1/perlreguts.*
+%{_mandir}/man1/perlrepository.*
+%{_mandir}/man1/perlrequick.*
+%{_mandir}/man1/perlreref.*
+%{_mandir}/man1/perlretut.*
+%{_mandir}/man1/perlriscos.*
+%{_mandir}/man1/perlsec.*
+%{_mandir}/man1/perlsecpolicy.*
+%{_mandir}/man1/perlsolaris.*
+%{_mandir}/man1/perlsource.*
+%{_mandir}/man1/perlstyle.*
+%{_mandir}/man1/perlsub.*
+%{_mandir}/man1/perlsymbian.*
+%{_mandir}/man1/perlsyn.*
+%{_mandir}/man1/perlsynology.*
+%{_mandir}/man1/perlthrtut.*
+%{_mandir}/man1/perltie.*
+%{_mandir}/man1/perltoc.*
+%{_mandir}/man1/perltodo.*
+%{_mandir}/man1/perltooc.*
+%{_mandir}/man1/perltoot.*
+%{_mandir}/man1/perltrap.*
+%{_mandir}/man1/perltru64.*
+%{_mandir}/man1/perltw.*
+%{_mandir}/man1/perlunicode.*
+%{_mandir}/man1/perlunicook.*
+%{_mandir}/man1/perlunifaq.*
+%{_mandir}/man1/perluniintro.*
+%{_mandir}/man1/perluniprops.*
+%{_mandir}/man1/perlunitut.*
+%{_mandir}/man1/perlvar.*
+%{_mandir}/man1/perlvms.*
+%{_mandir}/man1/perlvos.*
+%{_mandir}/man1/perlwin32.*
+
+%files Dumpvalue
+%{privlib}/Dumpvalue.pm
+%{_mandir}/man3/Dumpvalue.3*
+
+%files DynaLoader
+%{archlib}/DynaLoader.pm
+%{_mandir}/man3/DynaLoader.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Encode
+%{_bindir}/encguess
+%{_bindir}/piconv
+%{archlib}/Encode*
+%{archlib}/auto/Encode*
+%{privlib}/Encode
+%exclude %{privlib}/Encode/*.e2x
+%exclude %{privlib}/Encode/encode.h
+%{_mandir}/man1/encguess.1*
+%{_mandir}/man1/piconv.1*
+%{_mandir}/man3/Encode*.3*
+%else
+%exclude %{_bindir}/encguess
+%exclude %{_bindir}/piconv
+%exclude %{archlib}/Encode*
+%exclude %{archlib}/auto/Encode*
+%exclude %{privlib}/Encode
+%exclude %{_mandir}/man1/encguess.1*
+%exclude %{_mandir}/man1/piconv.1*
+%exclude %{_mandir}/man3/Encode*.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files encoding
+%{archlib}/encoding.pm
+%{_mandir}/man3/encoding.3*
+%else
+%exclude %{archlib}/encoding.pm
+%exclude %{_mandir}/man3/encoding.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Encode-devel
+%{_bindir}/enc2xs
+%dir %{privlib}/Encode
+%{privlib}/Encode/*.e2x
+%{privlib}/Encode/encode.h
+%{_mandir}/man1/enc2xs.1*
+%else
+%exclude %{_bindir}/enc2xs
+%exclude %dir %{privlib}/Encode
+%exclude %{privlib}/Encode/*.e2x
+%exclude %{privlib}/Encode/encode.h
+%exclude %{_mandir}/man1/enc2xs.1*
+%endif
+
+%files encoding-warnings
+%dir %{privlib}/encoding
+%{privlib}/encoding/warnings.pm
+%{_mandir}/man3/encoding::warnings.3*
+
+%files English
+%{privlib}/English.pm
+%{_mandir}/man3/English.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Env
+%{privlib}/Env.pm
+%{_mandir}/man3/Env.3*
+%else
+%exclude %{privlib}/Env.pm
+%exclude %{_mandir}/man3/Env.3*
+%endif
+
+%files Errno
+%{archlib}/Errno.pm
+%{_mandir}/man3/Errno.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Exporter
+%{privlib}/Exporter*
+%{_mandir}/man3/Exporter*
+%else
+%exclude %{privlib}/Exporter*
+%exclude %{_mandir}/man3/Exporter*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files experimental
+%{privlib}/experimental*
+%{_mandir}/man3/experimental*
+%else
+%exclude %{privlib}/experimental*
+%exclude %{_mandir}/man3/experimental*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files ExtUtils-CBuilder
+%dir %{privlib}/ExtUtils
+%{privlib}/ExtUtils/CBuilder
+%{privlib}/ExtUtils/CBuilder.pm
+%{_mandir}/man3/ExtUtils::CBuilder*
+%else
+%exclude %{privlib}/ExtUtils/CBuilder
+%exclude %{privlib}/ExtUtils/CBuilder.pm
+%exclude %{_mandir}/man3/ExtUtils::CBuilder*
+%endif
+
+%files ExtUtils-Constant
+%dir %{privlib}/ExtUtils
+%{privlib}/ExtUtils/Constant
+%{privlib}/ExtUtils/Constant.pm
+%{_mandir}/man3/ExtUtils::Constant::*
+%{_mandir}/man3/ExtUtils::Constant.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files ExtUtils-Command
+%dir %{privlib}/ExtUtils
+%{privlib}/ExtUtils/Command.pm
+%{_mandir}/man3/ExtUtils::Command.*
+%else
+%exclude %{privlib}/ExtUtils/Command.pm
+%exclude %{_mandir}/man3/ExtUtils::Command.*
+%endif
+
+%files ExtUtils-Embed
+%dir %{privlib}/ExtUtils
+%{privlib}/ExtUtils/Embed.pm
+%{_mandir}/man3/ExtUtils::Embed*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files ExtUtils-Install
+%dir %{privlib}/ExtUtils
+%{privlib}/ExtUtils/Install.pm
+%{privlib}/ExtUtils/Installed.pm
+%{privlib}/ExtUtils/Packlist.pm
+%{_mandir}/man3/ExtUtils::Install.3*
+%{_mandir}/man3/ExtUtils::Installed.3*
+%{_mandir}/man3/ExtUtils::Packlist.3*
+%else
+%exclude %{privlib}/ExtUtils/Install.pm
+%exclude %{privlib}/ExtUtils/Installed.pm
+%exclude %{privlib}/ExtUtils/Packlist.pm
+%exclude %{_mandir}/man3/ExtUtils::Install.3*
+%exclude %{_mandir}/man3/ExtUtils::Installed.3*
+%exclude %{_mandir}/man3/ExtUtils::Packlist.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files ExtUtils-Manifest
+%dir %{privlib}/ExtUtils
+%{privlib}/ExtUtils/Manifest.pm
+%{privlib}/ExtUtils/MANIFEST.SKIP
+%{_mandir}/man3/ExtUtils::Manifest.3*
+%else
+%exclude %{privlib}/ExtUtils/Manifest.pm
+%exclude %{privlib}/ExtUtils/MANIFEST.SKIP
+%exclude %{_mandir}/man3/ExtUtils::Manifest.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files ExtUtils-MakeMaker
+%{_bindir}/instmodsh
+%dir %{privlib}/ExtUtils
+%{privlib}/ExtUtils/Command/
+%{privlib}/ExtUtils/Liblist
+%{privlib}/ExtUtils/Liblist.pm
+%{privlib}/ExtUtils/MakeMaker
+%{privlib}/ExtUtils/MakeMaker.pm
+%{privlib}/ExtUtils/MM.pm
+%{privlib}/ExtUtils/MM_*.pm
+%{privlib}/ExtUtils/MY.pm
+%{privlib}/ExtUtils/Mkbootstrap.pm
+%{privlib}/ExtUtils/Mksymlists.pm
+%{privlib}/ExtUtils/testlib.pm
+%{_mandir}/man1/instmodsh.1*
+%{_mandir}/man3/ExtUtils::Command::MM*
+%{_mandir}/man3/ExtUtils::Liblist.3*
+%{_mandir}/man3/ExtUtils::MM.3*
+%{_mandir}/man3/ExtUtils::MM_*
+%{_mandir}/man3/ExtUtils::MY.3*
+%{_mandir}/man3/ExtUtils::MakeMaker*
+%{_mandir}/man3/ExtUtils::Mkbootstrap.3*
+%{_mandir}/man3/ExtUtils::Mksymlists.3*
+%{_mandir}/man3/ExtUtils::testlib.3*
+%else
+%exclude %{_bindir}/instmodsh
+%exclude %{privlib}/ExtUtils/Command
+%exclude %{privlib}/ExtUtils/Liblist
+%exclude %{privlib}/ExtUtils/Liblist.pm
+%exclude %{privlib}/ExtUtils/MakeMaker
+%exclude %{privlib}/ExtUtils/MakeMaker.pm
+%exclude %{privlib}/ExtUtils/MM.pm
+%exclude %{privlib}/ExtUtils/MM_*.pm
+%exclude %{privlib}/ExtUtils/MY.pm
+%exclude %{privlib}/ExtUtils/Mkbootstrap.pm
+%exclude %{privlib}/ExtUtils/Mksymlists.pm
+%exclude %{privlib}/ExtUtils/testlib.pm
+%exclude %{_mandir}/man1/instmodsh.1*
+%exclude %{_mandir}/man3/ExtUtils::Command::MM*
+%exclude %{_mandir}/man3/ExtUtils::Liblist.3*
+%exclude %{_mandir}/man3/ExtUtils::MM.3*
+%exclude %{_mandir}/man3/ExtUtils::MM_*
+%exclude %{_mandir}/man3/ExtUtils::MY.3*
+%exclude %{_mandir}/man3/ExtUtils::MakeMaker*
+%exclude %{_mandir}/man3/ExtUtils::Mkbootstrap.3*
+%exclude %{_mandir}/man3/ExtUtils::Mksymlists.3*
+%exclude %{_mandir}/man3/ExtUtils::testlib.3*
+%endif
+
+%files ExtUtils-Miniperl
+%dir %{privlib}/ExtUtils
+%{privlib}/ExtUtils/Miniperl.pm
+%{_mandir}/man3/ExtUtils::Miniperl.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files ExtUtils-MM-Utils
+%dir %{privlib}/ExtUtils
+%dir %{privlib}/ExtUtils/MM
+%{privlib}/ExtUtils/MM/Utils.pm
+%{_mandir}/man3/ExtUtils::MM::Utils.*
+%else
+%exclude %dir %{privlib}/ExtUtils/MM
+%exclude %{privlib}/ExtUtils/MM/Utils.pm
+%exclude %{_mandir}/man3/ExtUtils::MM::Utils.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files ExtUtils-ParseXS
+%dir %{privlib}/ExtUtils
+%dir %{privlib}/ExtUtils/ParseXS
+%{privlib}/ExtUtils/ParseXS.pm
+%{privlib}/ExtUtils/ParseXS.pod
+%{privlib}/ExtUtils/ParseXS/Constants.pm
+%{privlib}/ExtUtils/ParseXS/CountLines.pm
+%{privlib}/ExtUtils/ParseXS/Eval.pm
+%{privlib}/ExtUtils/ParseXS/Utilities.pm
+%dir %{privlib}/ExtUtils/Typemaps
+%{privlib}/ExtUtils/Typemaps.pm
+%{privlib}/ExtUtils/Typemaps/Cmd.pm
+%{privlib}/ExtUtils/Typemaps/InputMap.pm
+%{privlib}/ExtUtils/Typemaps/OutputMap.pm
+%{privlib}/ExtUtils/Typemaps/Type.pm
+%{privlib}/ExtUtils/xsubpp
+%dir %{privlib}/pod
+%{privlib}/pod/perlxs.pod
+%{privlib}/pod/perlxstut.pod
+%{privlib}/pod/perlxstypemap.pod
+%{_bindir}/xsubpp
+%{_mandir}/man1/perlxs*
+%{_mandir}/man1/xsubpp*
+%{_mandir}/man3/ExtUtils::ParseXS.3*
+%{_mandir}/man3/ExtUtils::ParseXS::Constants.3*
+%{_mandir}/man3/ExtUtils::ParseXS::Eval.3*
+%{_mandir}/man3/ExtUtils::ParseXS::Utilities.3*
+%{_mandir}/man3/ExtUtils::Typemaps.3*
+%{_mandir}/man3/ExtUtils::Typemaps::Cmd.3*
+%{_mandir}/man3/ExtUtils::Typemaps::InputMap.3*
+%{_mandir}/man3/ExtUtils::Typemaps::OutputMap.3*
+%{_mandir}/man3/ExtUtils::Typemaps::Type.3*
+%else
+%exclude %dir %{privlib}/ExtUtils/ParseXS
+%exclude %{privlib}/ExtUtils/ParseXS.pm
+%exclude %{privlib}/ExtUtils/ParseXS.pod
+%exclude %{privlib}/ExtUtils/ParseXS/Constants.pm
+%exclude %{privlib}/ExtUtils/ParseXS/CountLines.pm
+%exclude %{privlib}/ExtUtils/ParseXS/Eval.pm
+%exclude %{privlib}/ExtUtils/ParseXS/Utilities.pm
+%exclude %dir %{privlib}/ExtUtils/Typemaps
+%exclude %{privlib}/ExtUtils/Typemaps.pm
+%exclude %{privlib}/ExtUtils/Typemaps/Cmd.pm
+%exclude %{privlib}/ExtUtils/Typemaps/InputMap.pm
+%exclude %{privlib}/ExtUtils/Typemaps/OutputMap.pm
+%exclude %{privlib}/ExtUtils/Typemaps/Type.pm
+%exclude %{privlib}/ExtUtils/xsubpp
+%exclude %{privlib}/pod/perlxs.pod
+%exclude %{privlib}/pod/perlxstut.pod
+%exclude %{privlib}/pod/perlxstypemap.pod
+%exclude %{_bindir}/xsubpp
+%exclude %{_mandir}/man1/perlxs*
+%exclude %{_mandir}/man1/xsubpp*
+%exclude %{_mandir}/man3/ExtUtils::ParseXS.3*
+%exclude %{_mandir}/man3/ExtUtils::ParseXS::Constants.3*
+%exclude %{_mandir}/man3/ExtUtils::ParseXS::Eval.3*
+%exclude %{_mandir}/man3/ExtUtils::ParseXS::Utilities.3*
+%exclude %{_mandir}/man3/ExtUtils::Typemaps.3*
+%exclude %{_mandir}/man3/ExtUtils::Typemaps::Cmd.3*
+%exclude %{_mandir}/man3/ExtUtils::Typemaps::InputMap.3*
+%exclude %{_mandir}/man3/ExtUtils::Typemaps::OutputMap.3*
+%exclude %{_mandir}/man3/ExtUtils::Typemaps::Type.3*
+%endif
+
+%files Fcntl
+%{archlib}/Fcntl.pm
+%{archlib}/auto/Fcntl
+%{_mandir}/man3/Fcntl.3*
+
+%files fields
+%{privlib}/fields.pm
+%{_mandir}/man3/fields.3*
+
+%files File-Basename
+%dir %{privlib}/File
+%{privlib}/File/Basename.pm
+%{_mandir}/man3/File::Basename.3*
+
+%files File-Compare
+%dir %{privlib}/File
+%{privlib}/File/Compare.pm
+%{_mandir}/man3/File::Compare.3*
+
+%files File-Copy
+%dir %{privlib}/File
+%{privlib}/File/Copy.pm
+%{_mandir}/man3/File::Copy.3*
+
+%files File-DosGlob
+%dir %{archlib}/File
+%{archlib}/File/DosGlob.pm
+%dir %{archlib}/auto/File
+%{archlib}/auto/File/DosGlob
+%{_mandir}/man3/File::DosGlob.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files File-Fetch
+%dir %{privlib}/File
+%{privlib}/File/Fetch.pm
+%{_mandir}/man3/File::Fetch.3*
+%else
+%exclude %{privlib}/File/Fetch.pm
+%exclude %{_mandir}/man3/File::Fetch.3*
+%endif
+
+%files File-Find
+%dir %{privlib}/File
+%{privlib}/File/Find.pm
+%{_mandir}/man3/File::Find.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files File-Path
+%dir %{privlib}/File
+%{privlib}/File/Path.pm
+%{_mandir}/man3/File::Path.3*
+%else
+%exclude %{privlib}/File/Path.pm
+%exclude %{_mandir}/man3/File::Path.3*
+%endif
+
+%files File-stat
+%dir %{privlib}/File
+%{privlib}/File/stat.pm
+%{_mandir}/man3/File::stat.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files File-Temp
+%dir %{privlib}/File
+%{privlib}/File/Temp.pm
+%{_mandir}/man3/File::Temp.3*
+%else
+%exclude %{privlib}/File/Temp.pm
+%exclude %{_mandir}/man3/File::Temp.3*
+%endif
+
+%files FileCache
+%{privlib}/FileCache.pm
+%{_mandir}/man3/FileCache.3*
+
+%files FileHandle
+%{privlib}/FileHandle.pm
+%{_mandir}/man3/FileHandle.3*
+
+%files filetest
+%{privlib}/filetest.pm
+%{_mandir}/man3/filetest.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Filter
+%dir %{archlib}/auto/Filter
+%{archlib}/auto/Filter/Util
+%dir %{archlib}/Filter
+%{archlib}/Filter/Util
+%{privlib}/pod/perlfilter.pod
+%{_mandir}/man1/perlfilter.*
+%{_mandir}/man3/Filter::Util::*
+%else
+%exclude %dir %{archlib}/auto/Filter
+%exclude %{archlib}/auto/Filter/Util
+%exclude %dir %{archlib}/Filter
+%exclude %{archlib}/Filter/Util
+%exclude %{privlib}/pod/perlfilter.pod
+%exclude %{_mandir}/man1/perlfilter.*
+%exclude %{_mandir}/man3/Filter::Util::*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Filter-Simple
+%dir %{privlib}/Filter
+%{privlib}/Filter/Simple.pm
+%{_mandir}/man3/Filter::Simple.3*
+%else
+%exclude %dir %{privlib}/Filter
+%exclude %{privlib}/Filter/Simple.pm
+%exclude %{_mandir}/man3/Filter::Simple.3*
+%endif
+
+%files FindBin
+%{privlib}/FindBin.pm
+%{_mandir}/man3/FindBin.*
+
+%if %{with gdbm}
+%files GDBM_File
+%{archlib}/GDBM_File.pm
+%{archlib}/auto/GDBM_File
+%{_mandir}/man3/GDBM_File.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Getopt-Long
+%dir %{privlib}/Getopt
+%{privlib}/Getopt/Long.pm
+%{_mandir}/man3/Getopt::Long.3*
+%else
+%exclude %{privlib}/Getopt/Long.pm
+%exclude %{_mandir}/man3/Getopt::Long.3*
+%endif
+
+%files Getopt-Std
+%dir %{privlib}/Getopt
+%{privlib}/Getopt/Std.pm
+%{_mandir}/man3/Getopt::Std.3*
+
+%files Hash-Util
+%dir %{archlib}/Hash
+%{archlib}/Hash/Util.pm
+%dir %{archlib}/auto/Hash
+%dir %{archlib}/auto/Hash/Util
+%{archlib}/auto/Hash/Util/Util.so
+%{_mandir}/man3/Hash::Util.3*
+
+%files Hash-Util-FieldHash
+%dir %{archlib}/auto/Hash
+%dir %{archlib}/auto/Hash/Util
+%{archlib}/auto/Hash/Util/FieldHash
+%dir %{archlib}/Hash
+%dir %{archlib}/Hash/Util
+%{archlib}/Hash/Util/FieldHash.pm
+%{_mandir}/man3/Hash::Util::FieldHash.3*
+
+%files if
+%{privlib}/if.pm
+%{_mandir}/man3/if.3*
+
+%files IO
+%dir %{archlib}/IO
+%{archlib}/IO.pm
+%{archlib}/IO/Dir.pm
+%{archlib}/IO/File.pm
+%{archlib}/IO/Handle.pm
+%{archlib}/IO/Pipe.pm
+%{archlib}/IO/Poll.pm
+%{archlib}/IO/Seekable.pm
+%{archlib}/IO/Select.pm
+%dir %{archlib}/IO/Socket
+%{archlib}/IO/Socket/INET.pm
+%{archlib}/IO/Socket/UNIX.pm
+%{archlib}/IO/Socket.pm
+%dir %{archlib}/auto/IO
+%{archlib}/auto/IO/IO.so
+%{_mandir}/man3/IO.*
+%{_mandir}/man3/IO::Dir.*
+%{_mandir}/man3/IO::File.*
+%{_mandir}/man3/IO::Handle.*
+%{_mandir}/man3/IO::Pipe.*
+%{_mandir}/man3/IO::Poll.*
+%{_mandir}/man3/IO::Seekable.*
+%{_mandir}/man3/IO::Select.*
+%{_mandir}/man3/IO::Socket::INET.*
+%{_mandir}/man3/IO::Socket::UNIX.*
+%{_mandir}/man3/IO::Socket.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files IO-Compress
+# IO-Compress
+%{_bindir}/streamzip
+%{_bindir}/zipdetails
+%dir %{privlib}/IO
+%dir %{privlib}/IO/Compress
+%{privlib}/IO/Compress/FAQ.pod
+%{_mandir}/man1/streamzip.*
+%{_mandir}/man1/zipdetails.*
+%{_mandir}/man3/IO::Compress::FAQ.*
+# Compress-Zlib
+%dir %{privlib}/Compress
+%{privlib}/Compress/Zlib.pm
+%{_mandir}/man3/Compress::Zlib*
+#IO-Compress-Base
+%dir %{privlib}/File
+%{privlib}/File/GlobMapper.pm
+%{privlib}/IO/Compress/Base
+%{privlib}/IO/Compress/Base.pm
+%dir %{privlib}/IO/Uncompress
+%{privlib}/IO/Uncompress/AnyUncompress.pm
+%{privlib}/IO/Uncompress/Base.pm
+%{_mandir}/man3/File::GlobMapper.*
+%{_mandir}/man3/IO::Compress::Base.*
+%{_mandir}/man3/IO::Uncompress::AnyUncompress.*
+%{_mandir}/man3/IO::Uncompress::Base.*
+# IO-Compress-Zlib
+%{privlib}/IO/Compress/Adapter
+%{privlib}/IO/Compress/Deflate.pm
+%{privlib}/IO/Compress/Bzip2.pm
+%{privlib}/IO/Compress/Gzip
+%{privlib}/IO/Compress/Gzip.pm
+%{privlib}/IO/Compress/RawDeflate.pm
+%{privlib}/IO/Compress/Zip
+%{privlib}/IO/Compress/Zip.pm
+%{privlib}/IO/Compress/Zlib
+%{privlib}/IO/Uncompress/Adapter/
+%{privlib}/IO/Uncompress/AnyInflate.pm
+%{privlib}/IO/Uncompress/Bunzip2.pm
+%{privlib}/IO/Uncompress/Gunzip.pm
+%{privlib}/IO/Uncompress/Inflate.pm
+%{privlib}/IO/Uncompress/RawInflate.pm
+%{privlib}/IO/Uncompress/Unzip.pm
+%{_mandir}/man3/IO::Compress::Deflate*
+%{_mandir}/man3/IO::Compress::Gzip*
+%{_mandir}/man3/IO::Compress::Bzip2*
+%{_mandir}/man3/IO::Compress::RawDeflate*
+%{_mandir}/man3/IO::Compress::Zip*
+%{_mandir}/man3/IO::Uncompress::AnyInflate*
+%{_mandir}/man3/IO::Uncompress::Bunzip2*
+%{_mandir}/man3/IO::Uncompress::Gunzip*
+%{_mandir}/man3/IO::Uncompress::Inflate*
+%{_mandir}/man3/IO::Uncompress::RawInflate*
+%{_mandir}/man3/IO::Uncompress::Unzip*
+%else
+%exclude %{_bindir}/streamzip
+%exclude %{_bindir}/zipdetails
+%exclude %dir %{privlib}/IO
+%exclude %dir %{privlib}/IO/Compress
+%exclude %{privlib}/IO/Compress/FAQ.pod
+%exclude %{_mandir}/man1/streamzip.*
+%exclude %{_mandir}/man1/zipdetails.*
+%exclude %{_mandir}/man3/IO::Compress::FAQ.*
+# Compress-Zlib
+%exclude %dir %{privlib}/Compress
+%exclude %{privlib}/Compress/Zlib.pm
+%exclude %{_mandir}/man3/Compress::Zlib*
+# IO-Compress-Base
+%exclude %{privlib}/File/GlobMapper.pm
+%exclude %dir %{privlib}/IO
+%exclude %dir %{privlib}/IO/Compress
+%exclude %{privlib}/IO/Compress/Base
+%exclude %{privlib}/IO/Compress/Base.pm
+%exclude %dir %{privlib}/IO/Uncompress
+%exclude %{privlib}/IO/Uncompress/AnyUncompress.pm
+%exclude %{privlib}/IO/Uncompress/Base.pm
+%exclude %{_mandir}/man3/File::GlobMapper.*
+%exclude %{_mandir}/man3/IO::Compress::Base.*
+%exclude %{_mandir}/man3/IO::Uncompress::AnyUncompress.*
+%exclude %{_mandir}/man3/IO::Uncompress::Base.*
+# IO-Compress-Zlib
+%exclude %dir %{privlib}/IO
+%exclude %dir %{privlib}/IO/Compress
+%exclude %{privlib}/IO/Compress/Adapter
+%exclude %{privlib}/IO/Compress/Deflate.pm
+%exclude %{privlib}/IO/Compress/Gzip
+%exclude %{privlib}/IO/Compress/Gzip.pm
+%exclude %{privlib}/IO/Compress/RawDeflate.pm
+%exclude %{privlib}/IO/Compress/Bzip2.pm
+%exclude %{privlib}/IO/Compress/Zip
+%exclude %{privlib}/IO/Compress/Zip.pm
+%exclude %{privlib}/IO/Compress/Zlib
+%exclude %dir %{privlib}/IO/Uncompress
+%exclude %{privlib}/IO/Uncompress/Adapter
+%exclude %{privlib}/IO/Uncompress/AnyInflate.pm
+%exclude %{privlib}/IO/Uncompress/Bunzip2.pm
+%exclude %{privlib}/IO/Uncompress/Gunzip.pm
+%exclude %{privlib}/IO/Uncompress/Inflate.pm
+%exclude %{privlib}/IO/Uncompress/RawInflate.pm
+%exclude %{privlib}/IO/Uncompress/Unzip.pm
+%exclude %{_mandir}/man3/IO::Compress::Deflate*
+%exclude %{_mandir}/man3/IO::Compress::Bzip2*
+%exclude %{_mandir}/man3/IO::Compress::Gzip*
+%exclude %{_mandir}/man3/IO::Compress::RawDeflate*
+%exclude %{_mandir}/man3/IO::Compress::Zip*
+%exclude %{_mandir}/man3/IO::Uncompress::AnyInflate*
+%exclude %{_mandir}/man3/IO::Uncompress::Bunzip2*
+%exclude %{_mandir}/man3/IO::Uncompress::Gunzip*
+%exclude %{_mandir}/man3/IO::Uncompress::Inflate*
+%exclude %{_mandir}/man3/IO::Uncompress::RawInflate*
+%exclude %{_mandir}/man3/IO::Uncompress::Unzip*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files IO-Socket-IP
+%dir %{privlib}/IO
+%dir %{privlib}/IO/Socket
+%{privlib}/IO/Socket/IP.pm
+%{_mandir}/man3/IO::Socket::IP.*
+%else
+%exclude %dir %{privlib}/IO
+%exclude %dir %{privlib}/IO/Socket
+%exclude %{privlib}/IO/Socket/IP.pm
+%exclude %{_mandir}/man3/IO::Socket::IP.*
+%endif
+
+%files IO-Zlib
+%dir %{privlib}/IO
+%{privlib}/IO/Zlib.pm
+%{_mandir}/man3/IO::Zlib.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files HTTP-Tiny
+%dir %{privlib}/HTTP
+%{privlib}/HTTP/Tiny.pm
+%{_mandir}/man3/HTTP::Tiny*
+%else
+%exclude %dir %{privlib}/HTTP
+%exclude %{privlib}/HTTP/Tiny.pm
+%exclude %{_mandir}/man3/HTTP::Tiny*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files IPC-Cmd
+%dir %{privlib}/IPC
+%{privlib}/IPC/Cmd.pm
+%{_mandir}/man3/IPC::Cmd.3*
+%else
+%exclude %{privlib}/IPC/Cmd.pm
+%exclude %{_mandir}/man3/IPC::Cmd.3*
+%endif
+
+%files IPC-Open3
+%dir %{privlib}/IPC
+%{privlib}/IPC/Open2.pm
+%{privlib}/IPC/Open3.pm
+%{_mandir}/man3/IPC::Open2.3*
+%{_mandir}/man3/IPC::Open3.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files IPC-SysV
+%{archlib}/auto/IPC
+%dir %{archlib}/IPC
+%{archlib}/IPC/Msg.pm
+%{archlib}/IPC/Semaphore.pm
+%{archlib}/IPC/SharedMem.pm
+%{archlib}/IPC/SysV.pm
+%{_mandir}/man3/IPC::Msg.*
+%{_mandir}/man3/IPC::Semaphore.*
+%{_mandir}/man3/IPC::SharedMem.*
+%{_mandir}/man3/IPC::SysV.*
+%else
+%exclude %{archlib}/auto/IPC
+%exclude %dir %{archlib}/IPC
+%exclude %{archlib}/IPC/Msg.pm
+%exclude %{archlib}/IPC/Semaphore.pm
+%exclude %{archlib}/IPC/SharedMem.pm
+%exclude %{archlib}/IPC/SysV.pm
+%exclude %{_mandir}/man3/IPC::Msg.*
+%exclude %{_mandir}/man3/IPC::Semaphore.*
+%exclude %{_mandir}/man3/IPC::SharedMem.*
+%exclude %{_mandir}/man3/IPC::SysV.*
+%endif
+
+%files I18N-Collate
+%dir %{privlib}/I18N
+%{privlib}/I18N/Collate.pm
+%{_mandir}/man3/I18N::Collate.*
+
+%files I18N-Langinfo
+%{archlib}/auto/I18N
+%{archlib}/I18N
+%{_mandir}/man3/I18N::Langinfo.*
+
+%files I18N-LangTags
+%dir %{privlib}/I18N
+%{privlib}/I18N/LangTags
+%{privlib}/I18N/LangTags.pm
+%{_mandir}/man3/I18N::LangTags.*
+%{_mandir}/man3/I18N::LangTags::*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files JSON-PP
+%{_bindir}/json_pp
+%dir %{privlib}/JSON
+%{privlib}/JSON/PP
+%{privlib}/JSON/PP.pm
+%{_mandir}/man1/json_pp.1*
+%{_mandir}/man3/JSON::PP.3*
+%{_mandir}/man3/JSON::PP::Boolean.3pm*
+%else
+%exclude %{_bindir}/json_pp
+%exclude %dir %{privlib}/JSON
+%exclude %{privlib}/JSON/PP
+%exclude %{privlib}/JSON/PP.pm
+%exclude %{_mandir}/man1/json_pp.1*
+%exclude %{_mandir}/man3/JSON::PP.3*
+%exclude %{_mandir}/man3/JSON::PP::Boolean.3pm*
+%endif
+
+%files less
+%{privlib}/less.pm
+%{_mandir}/man3/less.*
+
+%files lib
+%{archlib}/lib.pm
+%{_mandir}/man3/lib.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files libnet
+%dir %{privlib}/Net
+%{privlib}/Net/Cmd.pm
+%{privlib}/Net/Config.pm
+%{privlib}/Net/Domain.pm
+%{privlib}/Net/FTP
+%{privlib}/Net/FTP.pm
+%{privlib}/Net/libnetFAQ.pod
+%{privlib}/Net/NNTP.pm
+%{privlib}/Net/Netrc.pm
+%{privlib}/Net/POP3.pm
+%{privlib}/Net/SMTP.pm
+%{privlib}/Net/Time.pm
+%{_mandir}/man3/Net::Cmd.*
+%{_mandir}/man3/Net::Config.*
+%{_mandir}/man3/Net::Domain.*
+%{_mandir}/man3/Net::FTP.*
+%{_mandir}/man3/Net::libnetFAQ.*
+%{_mandir}/man3/Net::NNTP.*
+%{_mandir}/man3/Net::Netrc.*
+%{_mandir}/man3/Net::POP3.*
+%{_mandir}/man3/Net::SMTP.*
+%{_mandir}/man3/Net::Time.*
+%else
+%exclude %{privlib}/Net/Cmd.pm
+%exclude %{privlib}/Net/Config.pm
+%exclude %{privlib}/Net/Domain.pm
+%exclude %{privlib}/Net/FTP
+%exclude %{privlib}/Net/FTP.pm
+%exclude %{privlib}/Net/libnetFAQ.pod
+%exclude %{privlib}/Net/NNTP.pm
+%exclude %{privlib}/Net/Netrc.pm
+%exclude %{privlib}/Net/POP3.pm
+%exclude %{privlib}/Net/SMTP.pm
+%exclude %{privlib}/Net/Time.pm
+%exclude %{_mandir}/man3/Net::Cmd.*
+%exclude %{_mandir}/man3/Net::Config.*
+%exclude %{_mandir}/man3/Net::Domain.*
+%exclude %{_mandir}/man3/Net::FTP.*
+%exclude %{_mandir}/man3/Net::libnetFAQ.*
+%exclude %{_mandir}/man3/Net::NNTP.*
+%exclude %{_mandir}/man3/Net::Netrc.*
+%exclude %{_mandir}/man3/Net::POP3.*
+%exclude %{_mandir}/man3/Net::SMTP.*
+%exclude %{_mandir}/man3/Net::Time.*
+%endif
+
+%files libnetcfg
+%{_bindir}/libnetcfg
+%{_mandir}/man1/libnetcfg*
+
+%files locale
+%{privlib}/locale.pm
+%{_mandir}/man3/locale.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Locale-Maketext
+%dir %{privlib}/Locale
+%dir %{privlib}/Locale/Maketext
+%{privlib}/Locale/Maketext.*
+%{privlib}/Locale/Maketext/Cookbook.*
+%{privlib}/Locale/Maketext/Guts.*
+%{privlib}/Locale/Maketext/GutsLoader.*
+%{privlib}/Locale/Maketext/TPJ13.*
+%{_mandir}/man3/Locale::Maketext.*
+%{_mandir}/man3/Locale::Maketext::Cookbook.*
+%{_mandir}/man3/Locale::Maketext::Guts.*
+%{_mandir}/man3/Locale::Maketext::GutsLoader.*
+%{_mandir}/man3/Locale::Maketext::TPJ13.*
+%else
+%exclude %dir %{privlib}/Locale
+%exclude %dir %{privlib}/Locale/Maketext
+%exclude %{privlib}/Locale/Maketext.*
+%exclude %{privlib}/Locale/Maketext/Cookbook.*
+%exclude %{privlib}/Locale/Maketext/Guts.*
+%exclude %{privlib}/Locale/Maketext/GutsLoader.*
+%exclude %{privlib}/Locale/Maketext/TPJ13.*
+%exclude %{_mandir}/man3/Locale::Maketext.*
+%exclude %{_mandir}/man3/Locale::Maketext::Cookbook.*
+%exclude %{_mandir}/man3/Locale::Maketext::Guts.*
+%exclude %{_mandir}/man3/Locale::Maketext::GutsLoader.*
+%exclude %{_mandir}/man3/Locale::Maketext::TPJ13.*
+%endif
+
+%files Locale-Maketext-Simple
+%dir %{privlib}/Locale
+%dir %{privlib}/Locale/Maketext
+%{privlib}/Locale/Maketext/Simple.pm
+%{_mandir}/man3/Locale::Maketext::Simple.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Math-BigInt
+%dir %{privlib}/Math
+%{privlib}/Math/BigFloat.pm
+%{privlib}/Math/BigInt.pm
+%dir %{privlib}/Math/BigInt
+%{privlib}/Math/BigInt/Calc.pm
+%{privlib}/Math/BigInt/Lib.pm
+%{_mandir}/man3/Math::BigFloat.*
+%{_mandir}/man3/Math::BigInt.*
+%{_mandir}/man3/Math::BigInt::Calc.*
+%{_mandir}/man3/Math::BigInt::Lib.*
+%else
+%exclude %{privlib}/Math/BigFloat.pm
+%exclude %{privlib}/Math/BigInt.pm
+%exclude %dir %exclude %{privlib}/Math/BigInt
+%exclude %{privlib}/Math/BigInt/Calc.pm
+%exclude %{privlib}/Math/BigInt/Lib.pm
+%exclude %{_mandir}/man3/Math::BigFloat.*
+%exclude %{_mandir}/man3/Math::BigInt.*
+%exclude %{_mandir}/man3/Math::BigInt::Calc.*
+%exclude %{_mandir}/man3/Math::BigInt::Lib.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Math-BigInt-FastCalc
+%{archlib}/Math
+%{archlib}/auto/Math
+%{_mandir}/man3/Math::BigInt::FastCalc.*
+%else
+%exclude %{archlib}/Math
+%exclude %{archlib}/auto/Math
+%exclude %{_mandir}/man3/Math::BigInt::FastCalc.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Math-BigRat
+%dir %{privlib}/Math
+%{privlib}/Math/BigRat.pm
+%{_mandir}/man3/Math::BigRat.*
+%else
+%exclude %{privlib}/Math/BigRat.pm
+%exclude %{_mandir}/man3/Math::BigRat.*
+%endif
+
+%files Math-Complex
+%dir %{privlib}/Math
+%{privlib}/Math/Complex.pm
+%{privlib}/Math/Trig.pm
+%{_mandir}/man3/Math::Complex.*
+%{_mandir}/man3/Math::Trig.*
+
+%files Memoize
+%{privlib}/Memoize
+%{privlib}/Memoize.pm
+%{_mandir}/man3/Memoize::*
+%{_mandir}/man3/Memoize.*
+
+%files meta-notation
+%{privlib}/meta_notation.pm
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files MIME-Base64
+%{archlib}/auto/MIME
+%{archlib}/MIME
+%{_mandir}/man3/MIME::*
+%else
+%exclude %{archlib}/auto/MIME
+%exclude %{archlib}/MIME
+%exclude %{_mandir}/man3/MIME::*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Module-CoreList
+%dir %{privlib}/Module
+%{privlib}/Module/CoreList
+%{privlib}/Module/CoreList.pm
+%{privlib}/Module/CoreList.pod
+%{_mandir}/man3/Module::CoreList*
+%else
+%exclude %{privlib}/Module/CoreList
+%exclude %{privlib}/Module/CoreList.pm
+%exclude %{privlib}/Module/CoreList.pod
+%exclude %{_mandir}/man3/Module::CoreList*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Module-CoreList-tools
+%{_bindir}/corelist
+%{_mandir}/man1/corelist*
+%else
+%exclude %{_bindir}/corelist
+%exclude %{_mandir}/man1/corelist*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Module-Load
+%dir %{privlib}/Module
+%{privlib}/Module/Load.pm
+%{_mandir}/man3/Module::Load.*
+%else
+%exclude %{privlib}/Module/Load.pm
+%exclude %{_mandir}/man3/Module::Load.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Module-Load-Conditional
+%dir %{privlib}/Module
+%{privlib}/Module/Load
+%{_mandir}/man3/Module::Load::Conditional* 
+%else
+%exclude %{privlib}/Module/Load
+%exclude %{_mandir}/man3/Module::Load::Conditional*
+%endif
+
+%files Module-Loaded
+%dir %{privlib}/Module
+%{privlib}/Module/Loaded.pm
+%{_mandir}/man3/Module::Loaded*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Module-Metadata
+%dir %{privlib}/Module
+%{privlib}/Module/Metadata.pm
+%{_mandir}/man3/Module::Metadata.3pm*
+%else
+%exclude %{privlib}/Module/Metadata.pm
+%exclude %{_mandir}/man3/Module::Metadata.3pm*
+%endif
+
+%files mro
+%{archlib}/auto/mro
+%{archlib}/mro.pm
+%{_mandir}/man3/mro.3*
+
+%if %{with gdbm}
+%files NDBM_File
+%{archlib}/NDBM_File.pm
+%{archlib}/auto/NDBM_File
+%{_mandir}/man3/NDBM_File.3*
+%endif
+
+%files Net
+%dir %{privlib}/Net
+%{privlib}/Net/hostent.pm
+%{privlib}/Net/netent.pm
+%{privlib}/Net/protoent.pm
+%{privlib}/Net/servent.pm
+%{_mandir}/man3/Net::hostent.3*
+%{_mandir}/man3/Net::netent.3*
+%{_mandir}/man3/Net::protoent.3*
+%{_mandir}/man3/Net::servent.3*
+
+%files Net-Ping
+%dir %{privlib}/Net
+%{privlib}/Net/Ping.pm
+%{_mandir}/man3/Net::Ping.*
+
+%files NEXT
+%{privlib}/NEXT.pm
+%{_mandir}/man3/NEXT.*
+
+%if %{with gdbm}
+%files ODBM_File
+%{archlib}/ODBM_File.pm
+%{archlib}/auto/ODBM_File
+%{_mandir}/man3/ODBM_File.3*
+%endif
+
+%files open
+%{privlib}/open.pm
+%{_mandir}/man3/open.3*
+
+%files Opcode
+%{archlib}/auto/Opcode
+%{archlib}/Opcode.pm
+%{archlib}/ops.pm
+%{_mandir}/man3/Opcode.3*
+%{_mandir}/man3/ops.3*
+
+%files overload
+%{privlib}/overload.pm
+%{_mandir}/man3/overload.3*
+
+%files overloading
+%dir %{privlib}/overload
+%{privlib}/overload/numbers.pm
+%{privlib}/overloading.pm
+%{_mandir}/man3/overloading.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files parent
+%{privlib}/parent.pm
+%{_mandir}/man3/parent.3*
+%else
+%exclude %{privlib}/parent.pm
+%exclude %{_mandir}/man3/parent.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Params-Check
+%{privlib}/Params/
+%{_mandir}/man3/Params::Check*
+%else
+%exclude %{privlib}/Params/
+%exclude %{_mandir}/man3/Params::Check*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files PathTools
+%{archlib}/Cwd.pm
+%dir %{archlib}/File
+%{archlib}/File/Spec*
+%{archlib}/auto/Cwd
+%{_mandir}/man3/Cwd*
+%{_mandir}/man3/File::Spec*
+%else
+%exclude %{archlib}/Cwd.pm
+%exclude %{archlib}/File/Spec*
+%exclude %{archlib}/auto/Cwd/
+%exclude %{_mandir}/man3/Cwd*
+%exclude %{_mandir}/man3/File::Spec*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Perl-OSType
+%dir %{privlib}/Perl
+%{privlib}/Perl/OSType.pm
+%{_mandir}/man3/Perl::OSType.3pm*
+%else
+%exclude %dir %{privlib}/Perl
+%exclude %{privlib}/Perl/OSType.pm
+%exclude %{_mandir}/man3/Perl::OSType.3pm*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files perlfaq
+%{privlib}/perlfaq.pm
+%dir %{privlib}/pod
+%{privlib}/pod/perlfaq*
+%{privlib}/pod/perlglossary.pod
+%{_mandir}/man1/perlfaq*
+%{_mandir}/man1/perlglossary.*
+%else
+%exclude %{privlib}/perlfaq.pm
+%exclude %{privlib}/pod/perlfaq*
+%exclude %{privlib}/pod/perlglossary.pod
+%exclude %{_mandir}/man1/perlfaq*
+%exclude %{_mandir}/man1/perlglossary.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files PerlIO-via-QuotedPrint
+%{privlib}/PerlIO
+%{_mandir}/man3/PerlIO::via::QuotedPrint.*
+%else
+%exclude %{privlib}/PerlIO
+%exclude %{_mandir}/man3/PerlIO::via::QuotedPrint.*
+%endif
+
+%files ph
+%{archlib}/asm
+%{archlib}/asm-generic
+%{archlib}/bits
+%{archlib}/features*.ph
+%{archlib}/gnu
+%{archlib}/_h2ph_pre.ph
+%ifnarch ppc64le
+%{archlib}/linux
+%endif
+%{archlib}/stdc-predef.ph
+%{archlib}/sys
+%{archlib}/syscall.ph
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Pod-Checker
+%{_bindir}/podchecker
+%dir %{privlib}/Pod
+%{privlib}/Pod/Checker.pm
+%{_mandir}/man1/podchecker.*
+%{_mandir}/man3/Pod::Checker.*
+%else
+%exclude %{_bindir}/podchecker
+%exclude %{privlib}/Pod/Checker.pm
+%exclude %{_mandir}/man1/podchecker.*
+%exclude %{_mandir}/man3/Pod::Checker.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Pod-Escapes
+%dir %{privlib}/Pod
+%{privlib}/Pod/Escapes.pm
+%{_mandir}/man3/Pod::Escapes.*
+%else
+%exclude %{privlib}/Pod/Escapes.pm
+%exclude %{_mandir}/man3/Pod::Escapes.*
+%endif
+
+%files Pod-Functions
+%dir %{privlib}/Pod
+%{privlib}/Pod/Functions.pm
+
+%files Pod-Html
+%license Pod-Html-license-clarification
+%dir %{privlib}/Pod
+%{_bindir}/pod2html
+%{privlib}/Pod/Html.pm
+%{_mandir}/man1/pod2html.1*
+%{_mandir}/man3/Pod::Html.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Pod-Perldoc
+%{_bindir}/perldoc
+%{privlib}/pod/perldoc.pod
+%dir %{privlib}/Pod
+%{privlib}/Pod/Perldoc
+%{privlib}/Pod/Perldoc.pm
+%{_mandir}/man1/perldoc.1*
+%{_mandir}/man3/Pod::Perldoc*
+%else
+%exclude %{_bindir}/perldoc
+%exclude %{privlib}/pod/perldoc.pod
+%exclude %{privlib}/Pod/Perldoc.pm
+%exclude %{privlib}/Pod/Perldoc/
+%exclude %{_mandir}/man1/perldoc.1*
+%exclude %{_mandir}/man3/Pod::Perldoc*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Pod-Usage
+%{_bindir}/pod2usage
+%dir %{privlib}/Pod
+%{privlib}/Pod/Usage.pm
+%{_mandir}/man1/pod2usage.*
+%{_mandir}/man3/Pod::Usage.*
+%else
+%exclude %{_bindir}/pod2usage
+%exclude %dir %{privlib}/Pod
+%exclude %{privlib}/Pod/Usage.pm
+%exclude %{_mandir}/man1/pod2usage.*
+%exclude %{_mandir}/man3/Pod::Usage.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files podlators
+%{_bindir}/pod2man
+%{_bindir}/pod2text
+%{privlib}/pod/perlpodstyle.pod
+%dir %{privlib}/Pod
+%{privlib}/Pod/Man.pm
+%{privlib}/Pod/ParseLink.pm
+%{privlib}/Pod/Text
+%{privlib}/Pod/Text.pm
+%{_mandir}/man1/pod2man.1*
+%{_mandir}/man1/pod2text.1*
+%{_mandir}/man1/perlpodstyle.1*
+%{_mandir}/man3/Pod::Man*
+%{_mandir}/man3/Pod::ParseLink*
+%{_mandir}/man3/Pod::Text*
+%else
+%exclude %{_bindir}/pod2man
+%exclude %{_bindir}/pod2text
+%exclude %{privlib}/pod/perlpodstyle.pod
+%exclude %{privlib}/Pod/Man.pm
+%exclude %{privlib}/Pod/ParseLink.pm
+%exclude %{privlib}/Pod/Text
+%exclude %{privlib}/Pod/Text.pm
+%exclude %{_mandir}/man1/pod2man.1*
+%exclude %{_mandir}/man1/pod2text.1*
+%exclude %{_mandir}/man1/perlpodstyle.1*
+%exclude %{_mandir}/man3/Pod::Man*
+%exclude %{_mandir}/man3/Pod::ParseLink*
+%exclude %{_mandir}/man3/Pod::Text*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Pod-Simple
+%dir %{privlib}/Pod
+%{privlib}/Pod/Simple
+%{privlib}/Pod/Simple.pm
+%{privlib}/Pod/Simple.pod
+%{_mandir}/man3/Pod::Simple*
+%else
+%exclude %{privlib}/Pod/Simple/
+%exclude %{privlib}/Pod/Simple.pm
+%exclude %{privlib}/Pod/Simple.pod
+%exclude %{_mandir}/man3/Pod::Simple*
+%endif
+
+%files POSIX
+%{archlib}/auto/POSIX
+%{archlib}/POSIX.*
+%{_mandir}/man3/POSIX.*
+
+%files Safe
+%{privlib}/Safe.pm
+%{_mandir}/man3/Safe.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Scalar-List-Utils
+%{archlib}/List
+%{archlib}/Scalar
+%{archlib}/Sub
+%{archlib}/auto/List
+%{_mandir}/man3/List::Util*
+%{_mandir}/man3/Scalar::Util*
+%{_mandir}/man3/Sub::Util*
+%else
+%exclude %{archlib}/List/
+%exclude %{archlib}/Scalar/
+%exclude %{archlib}/Sub/
+%exclude %{archlib}/auto/List/
+%exclude %{_mandir}/man3/List::Util*
+%exclude %{_mandir}/man3/Scalar::Util*
+%exclude %{_mandir}/man3/Sub::Util*
+%endif
+
+%files Search-Dict
+%{privlib}/Search
+%{_mandir}/man3/Search::*
+
+%files SelectSaver
+%{privlib}/SelectSaver.pm
+%{_mandir}/man3/SelectSaver.*
+
+%files SelfLoader
+%{privlib}/SelfLoader.pm
+%{_mandir}/man3/SelfLoader.*
+
+%files sigtrap
+%{privlib}/sigtrap.pm
+%{_mandir}/man3/sigtrap.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Socket
+%dir %{archlib}/auto/Socket
+%{archlib}/auto/Socket/Socket.*
+%{archlib}/Socket.pm
+%{_mandir}/man3/Socket.3*
+%else
+%exclude %dir %{archlib}/auto/Socket
+%exclude %{archlib}/auto/Socket/Socket.*
+%exclude %{archlib}/Socket.pm
+%exclude %{_mandir}/man3/Socket.3*
+%endif
+
+%files sort
+%{privlib}/sort.pm
+%{_mandir}/man3/sort.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Storable
+%{archlib}/Storable.pm
+%{archlib}/auto/Storable
+%{_mandir}/man3/Storable.*
+%else
+%exclude %{archlib}/Storable.pm
+%exclude %{archlib}/auto/Storable/
+%exclude %{_mandir}/man3/Storable.*
+%endif
+
+%files subs
+%{privlib}/subs.pm
+%{_mandir}/man3/subs.*
+
+%files Symbol
+%{privlib}/Symbol.pm
+%{_mandir}/man3/Symbol.*
+
+%files Sys-Hostname
+%dir %{archlib}/auto/Sys
+%{archlib}/auto/Sys/Hostname
+%dir %{archlib}/Sys
+%{archlib}/Sys/Hostname.pm
+%{_mandir}/man3/Sys::Hostname.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Sys-Syslog
+%dir %{archlib}/Sys
+%{archlib}/Sys/Syslog.pm
+%dir %{archlib}/auto/Sys
+%{archlib}/auto/Sys/Syslog
+%{_mandir}/man3/Sys::Syslog.*
+%else
+# %%dir %%{archlib}/Sys not excluded. It would be removed from the previous packagge.
+%exclude %{archlib}/Sys/Syslog.pm
+# %%dir %%{archlib}/auto/Sys not excluded. It would be removed from the previous packagge.
+%exclude %{archlib}/auto/Sys/Syslog/
+%exclude %{_mandir}/man3/Sys::Syslog.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Term-ANSIColor
+%dir %{privlib}/Term
+%{privlib}/Term/ANSIColor.pm
+%{_mandir}/man3/Term::ANSIColor*
+%else
+%exclude %{privlib}/Term/ANSIColor.pm
+%exclude %{_mandir}/man3/Term::ANSIColor*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Term-Cap
+%dir %{privlib}/Term
+%{privlib}/Term/Cap.pm
+%{_mandir}/man3/Term::Cap.*
+%else
+%exclude %{privlib}/Term/Cap.pm
+%exclude %{_mandir}/man3/Term::Cap.*
+%endif
+
+%files Term-Complete
+%dir %{privlib}/Term
+%{privlib}/Term/Complete.pm
+%{_mandir}/man3/Term::Complete.*
+
+%files Term-ReadLine
+%dir %{privlib}/Term
+%{privlib}/Term/ReadLine.pm
+%{_mandir}/man3/Term::ReadLine.*
+
+%files Test
+%{privlib}/Test.pm
+%{_mandir}/man3/Test.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Test-Harness
+%{_bindir}/prove
+%dir %{privlib}/App
+%{privlib}/App/Prove*
+%{privlib}/TAP*
+%dir %{privlib}/Test
+%{privlib}/Test/Harness*
+%{_mandir}/man1/prove.1*
+%{_mandir}/man3/App::Prove*
+%{_mandir}/man3/TAP*
+%{_mandir}/man3/Test::Harness*
+%else
+%exclude %{_bindir}/prove
+%exclude %dir %{privlib}/App
+%exclude %{privlib}/App/Prove*
+%exclude %{privlib}/TAP*
+%exclude %dir %{privlib}/Test
+%exclude %{privlib}/Test/Harness*
+%exclude %{_mandir}/man1/prove.1*
+%exclude %{_mandir}/man3/App::Prove*
+%exclude %{_mandir}/man3/TAP*
+%exclude %{_mandir}/man3/Test::Harness*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Test-Simple
+%{privlib}/ok*
+%dir %{privlib}/Test
+%{privlib}/Test/More*
+%{privlib}/Test/Builder*
+%{privlib}/Test/Tester*
+%{privlib}/Test/Simple*
+%{privlib}/Test/Tutorial*
+%{privlib}/Test/use
+%{privlib}/Test2*
+%{_mandir}/man3/ok*
+%{_mandir}/man3/Test::More*
+%{_mandir}/man3/Test::Builder*
+%{_mandir}/man3/Test::Tester*
+%{_mandir}/man3/Test::Simple*
+%{_mandir}/man3/Test::Tutorial*
+%{_mandir}/man3/Test::use::*
+%{_mandir}/man3/Test2*
+%else
+%exclude %{privlib}/ok*
+%exclude %dir %{privlib}/Test
+%exclude %{privlib}/Test/More*
+%exclude %{privlib}/Test/Builder*
+%exclude %{privlib}/Test/Tester*
+%exclude %{privlib}/Test/Simple*
+%exclude %{privlib}/Test/Tutorial*
+%exclude %{privlib}/Test/use
+%exclude %{privlib}/Test2*
+%exclude %{_mandir}/man3/ok*
+%exclude %{_mandir}/man3/Test::More*
+%exclude %{_mandir}/man3/Test::Builder*
+%exclude %{_mandir}/man3/Test::Tester*
+%exclude %{_mandir}/man3/Test::Simple*
+%exclude %{_mandir}/man3/Test::Tutorial*
+%exclude %{_mandir}/man3/Test::use::*
+%exclude %{_mandir}/man3/Test2*
+%endif
+
+%files Text-Abbrev
+%dir %{privlib}/Text
+%{privlib}/Text/Abbrev.pm
+%{_mandir}/man3/Text::Abbrev.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Text-Balanced
+%dir %{privlib}/Text
+%{privlib}/Text/Balanced.pm
+%{_mandir}/man3/Text::Balanced.*
+%else
+%exclude %{privlib}/Text/Balanced.pm
+%exclude %{_mandir}/man3/Text::Balanced.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Text-ParseWords
+%dir %{privlib}/Text
+%{privlib}/Text/ParseWords.pm
+%{_mandir}/man3/Text::ParseWords.*
+%else
+%exclude %{privlib}/Text/ParseWords.pm
+%exclude %{_mandir}/man3/Text::ParseWords.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Text-Tabs+Wrap
+%dir %{privlib}/Text
+%{privlib}/Text/Tabs.pm
+%{privlib}/Text/Wrap.pm
+%{_mandir}/man3/Text::Tabs.*
+%{_mandir}/man3/Text::Wrap.*
+%else
+%exclude %{privlib}/Text/Tabs.pm
+%exclude %{privlib}/Text/Wrap.pm
+%exclude %{_mandir}/man3/Text::Tabs.*
+%exclude %{_mandir}/man3/Text::Wrap.*
+%endif
+
+%files Thread
+%{privlib}/Thread.pm
+%{_mandir}/man3/Thread.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Thread-Queue
+%dir %{privlib}/Thread
+%{privlib}/Thread/Queue.pm
+%{_mandir}/man3/Thread::Queue.*
+%else
+%exclude %{privlib}/Thread/Queue.pm
+%exclude %{_mandir}/man3/Thread::Queue.*
+%endif
+
+%files Thread-Semaphore
+%dir %{privlib}/Thread
+%{privlib}/Thread/Semaphore.pm
+%{_mandir}/man3/Thread::Semaphore.*
+
+%files Tie
+%dir %{privlib}/Tie
+%{privlib}/Tie/Array.pm
+%{privlib}/Tie/Handle.pm
+%{privlib}/Tie/Scalar.pm
+%{privlib}/Tie/StdHandle.pm
+%{privlib}/Tie/SubstrHash.pm
+%{_mandir}/man3/Tie::Array.*
+%{_mandir}/man3/Tie::Handle.*
+%{_mandir}/man3/Tie::Scalar.*
+%{_mandir}/man3/Tie::StdHandle.*
+%{_mandir}/man3/Tie::SubstrHash.*
+
+%files Tie-File
+%dir %{privlib}/Tie
+%{privlib}/Tie/File.pm
+%{_mandir}/man3/Tie::File.*
+
+%files Tie-Memoize
+%dir %{privlib}/Tie
+%{privlib}/Tie/Memoize.pm
+%{_mandir}/man3/Tie::Memoize.*
+
+%files Tie-RefHash
+%dir %{privlib}/Tie
+%{privlib}/Tie/RefHash.pm
+%{_mandir}/man3/Tie::RefHash.*
+
+%files Time
+%dir %{privlib}/Time
+%{privlib}/Time/gmtime.pm
+%{privlib}/Time/localtime.pm
+%{privlib}/Time/tm.pm
+%{_mandir}/man3/Time::gmtime.*
+%{_mandir}/man3/Time::localtime.*
+%{_mandir}/man3/Time::tm.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Time-HiRes
+%dir %{archlib}/Time
+%{archlib}/Time/HiRes.pm
+%dir %{archlib}/auto/Time
+%{archlib}/auto/Time/HiRes
+%{_mandir}/man3/Time::HiRes.*
+%else
+%exclude %dir %{archlib}/Time
+%exclude %{archlib}/Time/HiRes.pm
+%exclude %dir %{archlib}/auto/Time
+%exclude %{archlib}/auto/Time/HiRes
+%exclude %{_mandir}/man3/Time::HiRes.*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Time-Local
+%dir %{privlib}/Time
+%{privlib}/Time/Local.pm
+%{_mandir}/man3/Time::Local.*
+%else
+%exclude %{privlib}/Time/Local.pm
+%exclude %{_mandir}/man3/Time::Local.*
+%endif
+
+%files Time-Piece
+%dir %{archlib}/Time
+%{archlib}/Time/Piece.pm 
+%{archlib}/Time/Seconds.pm
+%dir %{archlib}/auto/Time
+%{archlib}/auto/Time/Piece
+%{_mandir}/man3/Time::Piece.3*
+%{_mandir}/man3/Time::Seconds.3*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files threads
+%dir %{archlib}/auto/threads
+%{archlib}/auto/threads/threads*
+%{archlib}/threads.pm
+%{_mandir}/man3/threads.3*
+%else
+%dir %exclude %{archlib}/auto/threads
+%exclude %{archlib}/auto/threads/threads*
+%exclude %{archlib}/threads.pm
+%exclude %{_mandir}/man3/threads.3*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files threads-shared
+%dir %{archlib}/auto/threads
+%{archlib}/auto/threads/shared*
+%dir %{archlib}/threads
+%{archlib}/threads/shared*
+%{_mandir}/man3/threads::shared*
+%else
+%exclude %{archlib}/auto/threads/shared*
+%exclude %dir %{archlib}/threads
+%exclude %{archlib}/threads/shared*
+%exclude %{_mandir}/man3/threads::shared*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Unicode-Collate
+%dir %{archlib}/auto/Unicode
+%{archlib}/auto/Unicode/Collate
+%dir %{archlib}/Unicode
+%{archlib}/Unicode/Collate
+%{archlib}/Unicode/Collate.pm
+%dir %{privlib}/Unicode
+%{privlib}/Unicode/Collate
+%{_mandir}/man3/Unicode::Collate.*
+%{_mandir}/man3/Unicode::Collate::*
+%else
+%dir %exclude %{archlib}/auto/Unicode
+%exclude %{archlib}/auto/Unicode/Collate
+%dir %exclude %{archlib}/Unicode
+%exclude %{archlib}/Unicode/Collate
+%exclude %{archlib}/Unicode/Collate.pm
+%exclude %{privlib}/Unicode/Collate
+%exclude %{_mandir}/man3/Unicode::Collate.*
+%exclude %{_mandir}/man3/Unicode::Collate::*
+%endif
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files Unicode-Normalize
+%dir %{archlib}/auto/Unicode
+%{archlib}/auto/Unicode/Normalize
+%dir %{archlib}/Unicode
+%{archlib}/Unicode/Normalize.pm
+%{_mandir}/man3/Unicode::Normalize.*
+%else
+%exclude %{archlib}/auto/Unicode/Normalize
+%exclude %{archlib}/Unicode/Normalize.pm
+%exclude %{_mandir}/man3/Unicode::Normalize.*
+%endif
+
+%files Unicode-UCD
+%dir %{privlib}/Unicode
+%{privlib}/Unicode/UCD.pm
+%{_mandir}/man3/Unicode::UCD.*
+
+%files User-pwent
+%{privlib}/User
+%{_mandir}/man3/User::*
+
+%files vars
+%{privlib}/vars.pm
+%{_mandir}/man3/vars.*
+
+%if %{dual_life} || %{rebuild_from_scratch}
+%files version
+%{privlib}/version.pm
+%{privlib}/version.pod
+%{privlib}/version/
+%{_mandir}/man3/version.3*
+%{_mandir}/man3/version::Internals.3*
+%else
+%exclude %{privlib}/version.pm
+%exclude %{privlib}/version.pod
+%exclude %{privlib}/version/
+%exclude %{_mandir}/man3/version.3*
+%exclude %{_mandir}/man3/version::Internals.3*
+%endif
+
+%files vmsish
+%{privlib}/vmsish.pm
+%{_mandir}/man3/vmsish.*
+
+# Old changelog entries are preserved in CVS.
+%changelog
+* Wed Jun 23 2021 Petr Pisar <ppisar@redhat.com> - 4:5.32.1-471
+- XSLoader requires DynaLoader
+
+* Wed Jun 16 2021 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.32.1-470
+- Updated list of *.ph files (bug#1972637)
+
+* Wed Mar 31 2021 Petr Pisar <ppisar@redhat.com> - 4:5.32.1-469
+- Fix dumping a hash entry of PL_strtab type
+- Fix an arithmetic left shift of a minimal integer value (GH#18639)
+
+* Thu Mar 04 2021 Petr Pisar <ppisar@redhat.com> - 4:5.32.1-468
+- Protect locale tests from LANGUAGE environment variable
+- Prevent the number of buckets in a hash from getting too large
+- Fix a memory leak when compiling a regular expression (GH#18604)
+
+* Tue Feb 09 2021 Petr Pisar <ppisar@redhat.com> - 4:5.32.1-467
+- Fix a crash in optimizing split() (GH#18232)
+- Make accessing environment by DynaLoader thread-safe
+- Use duplocale() if available
+- Fix fc() in Turkish locale
+- Fix croaking on "my $_" when "use utf8" is in effect (GH#18449)
+- Fix PERL_UNUSED_ARG() definition in XSUB.h
+- Add missing entries to perldiag (GH#18276)
+
+* Mon Jan 25 2021 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.32.1-466
+- 5.32.1 bump (see <https://metacpan.org/pod/release/SHAY/perl-5.32.1/pod/perldelta.pod>
+  or release notes)
+
+* Wed Dec 02 2020 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.32.0-465
+- Run-require perl(Encode) by perl-libs
+
+* Thu Nov 12 2020 Petr Pisar <ppisar@redhat.com> - 4:5.32.0-464
+- Fix an undefined behavior in Perl_custom_op_get_field()
+- Fix Config variable names in in t/op tests
+- Fix fetching a magic on the stacked file test operators
+
+* Wed Sep 23 2020 Petr Pisar <ppisar@redhat.com> - 4:5.32.0-463
+- Run-require complete perl by perl-CPAN
+- Fix ownership of /usr/share/perl5/{ExtUtils,File,Module,Text,Time} directories
+- Fix a buffer overflow when compiling a regular expression with a bracketed
+  character class with a white space
+- Fix a mismatch with the recursive subpatterns (GH#18096)
+- Update perl-IO-Zlib metadata
+- Fix sv_collxfrm macro to respect locale
+- Fix an iterator signedness in handling an mro exception (GH#18155)
+- Fix a code flow in Perl_sv_inc_nomg()
+
+* Thu Aug 27 2020 Petr Pisar <ppisar@redhat.com> - 4:5.32.0-462
+- Fix inheritance resolution of lexial objects in a debugger (GH#17661)
+- Fix a misoptimization when assignig a list in a list context (GH#17816)
+- Fix handling left-hand-side undef when assigning a list (GH#16685)
+- Fix a memory leak when compiling a long regular expression (GH#18054)
+- Fix handling exceptions in a global destruction (GH#18063)
+- Fix sorting with a block that calls return (GH#18081)
+
+* Fri Aug 21 2020 Jeff Law <law@redhat.com> - 4:5.32.0-461
+- Re-enable LTO
+
+* Thu Aug 06 2020 Petr Pisar <ppisar@redhat.com> - 4:5.32.0-460
+- Fix an IO::Handle spurious error reported for regular file handles (GH#18019)
+
+* Wed Aug 05 2020 Petr Pisar <ppisar@redhat.com> - 4:5.32.0-459
+- Do not use C compiler reserved identifiers
+- Fix SvUV_nomg() macro definition
+- Fix SvTRUE() documentation
+- Fix ext/XS-APItest/t/utf8_warn_base.pl tests
+- Fix IO::Handle::error() to report write errors (GH#6799)
+- Fix a link to Unicode Technical Standard #18 (GH#17881)
+- Fix setting a non-blocking mode in IO::Socket::UNIX (GH#17787)
+- Fix running actions after stepping in a debugger (GH#17901)
+- Fix a buffer size for asctime_r() and ctime_r() functions
+- Prevent from an integer overflow in RenewDouble() macro
+- Fix a buffer overread in when reallocating formats (GH#17844)
+- Fix a number of arguments passed to a BOOT XS subroutine (GH#17755)
+
+* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4:5.32.0-458
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
+
+* Tue Jun 30 2020 Jeff Law <law@redhat.com> - 4:5.32.0-457
+- Disable LTO
+
+* Fri Jun 26 2020 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.32.0-456
+- Perl 5.32 re-rebuild of bootstrapped packages
+
+* Mon Jun 22 2020 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.32.0-455
+- 5.32.0 bump (see <https://metacpan.org/pod/release/XSAWYERX/perl-5.32.0/pod/perldelta.pod>
+  or release notes)
+
+* Tue Jun 02 2020 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.30.3-454
+- 5.30.3 bump (see <https://metacpan.org/pod/release/XSAWYERX/perl-5.30.3/pod/perldelta.pod>
+  for release notes)
+- Security release fixes CVE-2020-10543, CVE-2020-10878 and CVE-2020-12723
+
+* Fri Mar 27 2020 Petr Pisar <ppisar@redhat.com> - 4:5.30.2-453
+- Make perl-macros package noarch
+- Fix a directory ownership in perl-Sys-Hostname
+- Work around a glibc bug in caching LC_MESSAGES (GH#17081)
+- Fix POSIX:setlocale() documentation
+- Prevent from an integer overflow in POSIX::SigSet()
+- Fix thread-safety of IO::Handle (GH#14816)
+- Close :unix PerlIO layers properly (bug #987118)
+- Fix sorting tied arrays (GH#17496)
+- Fix a spurious warning about a multidimensional syntax (GH#16535)
+- Normalize "#!/perl" shebangs in the tests
+- Fix a warning about an uninitialized value in B::Deparse (GH#17537)
+
+* Mon Mar 16 2020 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.30.2-452
+- 5.30.2 bump (see <https://metacpan.org/pod/release/SHAY/perl-5.30.2/pod/perldelta.pod>
+  for release notes)
+
+* Mon Feb 03 2020 Petr Pisar <ppisar@redhat.com> - 4:5.30.1-451
+- Subpackage AutoLoader and AutoSplit
+- Subpackage ExtUtils-Constant
+- Subpackage NEXT
+- Subpackage Tie-RefHash
+- Subpackage autouse
+- Subpackage base and fields
+- Subpackage Dumpvalue
+- Subpackage encoding-warnings
+- Subpackage if
+- Subpackage I18N-Collate
+- Subpackage I18N-LangTags
+- Subpackage lib
+- Subpackage Safe
+- Subpackage Search-Dict
+- Subpackage Term-Complete
+- Subpackage Term-ReadLine
+- Subpackage Text-Abbrev
+- Subpackage Thread-Semaphore
+- Subpackage Tie-File
+- Move attributes module into perl-libs
+- Subpackage GDBM_File
+- Subpackage NDBM_File
+- Subpackage ODBM_File
+- Move File::Glob module into perl-libs
+- Subpackage File-DosGlob
+- Subpackage File-Find
+- Subpackage IPC-Open3
+- Subpackage B
+- Subpackage Fcntl
+- Subpackage FileCache
+- Subpackage Hash-Util
+- Subpackage Hash-Util-FieldHash
+- Subpackage I18N-Langinfo
+- Subpackage mro
+- Subpackage Opcode
+- Move PerlIO to perl-libs
+- Subpackage POSIX
+- Subpackage Sys-Hostname
+- Move Tie::Hash::NamedCapture to perl-libs
+- Subpackage Tie-Memoize
+- Subpackage Benchmark
+- Subpackage blib
+- Move charnames to perl-libs
+- Subpackage File-stat
+- Subpackage Class-Struct
+- Subpackage Net::*ent modules into perl-Net
+- Subpackage User::* modules into perl-User-pwent
+- Subpackage Time
+- Subpackage base Tie::* modules into perl-Tie
+- Move Config to perl-libs
+- Move warnings::register to perl-libs
+- Subpackage DBM_Filter modules
+- Subpackage FileHandle
+- Subpackage Thread
+- Subpackage Unicode::UCD
+- Subpackage diagnostics and move splain tool from perl-utils there
+- Subpackage FindBin
+- Subpackage File::Basename
+- Subpackage File::Compare
+- Subpackage File::Copy
+- Subpackage overload
+- Subpackage overloading
+- Subpackage Config::Extensions
+- Subpackage English
+- Subpackage Getopt::Std
+- Subpackage locale
+- Subpackage deprecate
+- Move AnyDBM_File, SDBM_File, Tie::Hash to perl-libs because of dbmopen function
+- Subpackage DirHandle
+- Subpackage Symbol
+- Subpackage SelectSaver
+- Move UNIVERSAL to perl-libs
+- Subpackage DynaLoader
+- Subpackage filetest
+- Subpackage less
+- Subpackage meta_notation
+- Subpackage sigtrap
+- Subpackage sort
+- Subpackage subs
+- Subpackage vars
+- Subpackage vmsish
+- Subpackage Pod-Functions
+- Move feature to perl-libs
+- Move debugger files into perl-debugger
+- Move perlxs* POD to perl-ExtUtils-ParseXS
+- Move ExtUtils/typemap to perl-devel
+- Remove ExtUtils::XSSymSet manual without the code (GH#17424)
+- Reduce and move remaining ph files to perl-ph
+- Move most of the generic POD files to perl-doc
+
+* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4:5.30.1-450
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
+* Fri Nov 29 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.1-449
+- Fix a memory leak when compiling a regular expression with a non-word class
+  (GH#17218)
+
+* Tue Nov 12 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.1-448
+- Fix overloading for binary and octal floats (RT#125557)
+- Fix handling undefined array members in Dumpvalue (RT#134441)
+- Fix taint mode documentation regarding @INC
+- Fix handling a layer argument in Tie::StdHandle::BINMODE() (RT#132475)
+- Fix an unintended upgrade to UTF-8 in the middle of a transliteration
+- Fix a race in File::stat() tests (GH#17234)
+- Fix a buffer overread when parsing a number (GH#17279)
+- Fix GCC 10 version detection (GH#17295)
+
+* Mon Nov 11 2019 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.30.1-447
+- 5.30.1 bump (see <https://metacpan.org/pod/release/SHAY/perl-5.30.1/pod/perldelta.pod>
+  for release notes)
+
+* Wed Sep 11 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.0-446
+- Fix a memory leak when matching a UTF-8 regular expression (RT#134390)
+- Fix a detection for futimes (RT#134432)
+
+* Mon Sep 02 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.0-445
+- Adjust spec file to rpm-build-4.15.0-0.rc1.1
+- Fix parsing a Unicode property name when compiling a regular expression
+- Fix a buffer overread when parsing a Unicode property while compiling
+  a regular expression (RT#134133)
+- Do not interpret 0x and 0b prefixes when numifying strings (RT#134230)
+- Fix a buffer overread when compiling a regular expression with many escapes
+  (RT#134325)
+- Fix a buffer overflow when compiling a regular expression with many branches
+  (RT#134329)
+- Correct a misspelling in perlrebackslash documentation (RT#134395)
+
+* Thu Aug 22 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.0-444
+- Fix a NULL pointer dereference in PerlIOVia_pushed()
+- Fix a crash when setting $@ on unwinding a call stack (RT#134266)
+- Fix parsing a denominator when parsing a Unicode property name
+- Fix a documentation about a future API change
+- Do not run File-Find tests in parallel
+
+* Wed Aug 07 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.0-443
+- Fix propagating non-string variables in an exception value (RT#134291)
+- Include trailing zero in scalars holding trie data (RT#134207)
+- Fix a use after free in /(?{...})/ (RT#134208)
+- Fix a use after free in debugging output of a collation
+- Fix file mode of a perl-example.stp example
+
+* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4:5.30.0-442
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
+
+* Wed Jul 17 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.0-441
+- Fix a test for a crash in SIGALARM handler when waiting on a child process to
+  be closed (RT#122112)
+- Fix a crash on an uninitialized warning when processing a multideref node
+  (RT#134275)
+- Preserve append mode when opening anonymous files (RT#134221)
+- Run Turkish locale tests
+
+* Tue Jun 25 2019 Petr Pisar <ppisar@redhat.com> - 4:5.30.0-440
+- Fix an out-of-buffer read while parsing a Unicode property name (RT#134134)
+- Do not panic when outputting a warning (RT#134059)
+- Fix memory handling when parsing string literals
+- Fix an undefined behavior in shifting IV variables
+- Fix stacking file test operators (CPAN RT#127073)
+- Fix a crash in SIGALARM handler when waiting on a child process to be closed
+  (RT#122112)
+- Fix a crash with a negative precision in sprintf function (RT#134008)
+- Fix an erroneous assertion on OP_SCALAR (RT#134048)
+- Prevent from wrapping a width in a numeric format string (RT#133913)
+- Fix subroutine protypes to track reference aliases (RT#134072)
+- Improve retrieving a scalar value of a variable modified in a signal handler
+  (RT#134035)
+- Fix changing packet destination sent from a UDP IO::Socket object (RT#133936)
+- Fix a stack underflow in readline() if passed an empty array as an argument
+  (#RT133989)
+- Fix setting supplementar group IDs (RT#134169)
+- Fix %%{^CAPTURE_ALL} to be an alias for %%- variable (RT#131867)
+- Fix %%{^CAPTURE} value when used after @{^CAPTURE} (RT#134193)
+
+* Tue Jun 11 2019 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.30.0-439
+- Define %%perl_vendor*, %%perl_archlib, %%perl_privlib, because in rpm
+  4.15 those are no longer defined
+
+* Sun Jun 02 2019 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.30.0-438
+- Perl 5.30 re-rebuild of bootstrapped packages
+
+* Wed May 22 2019 Jitka Plesnikova <jplesnik@redhat.com>, Petr Pisar <ppisar@redhat.com> - 4:5.30.0-437
+- 5.30.0 bump (see <https://metacpan.org/pod/release/XSAWYERX/perl-5.30.0/pod/perldelta.pod>
+  for release notes)
+- Make site paths specific to Perl minor version (e.g.
+  /usr/local/share/perl5/5.30) to prevent from an ABI clash after upgrade
+  to an ABI-incompatible Perl
+
+* Tue Apr 23 2019 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.28.2-436
+- 5.28.2 bump (see <https://metacpan.org/pod/release/SHAY/perl-5.28.2/pod/perldelta.pod>
+  for release notes)
+
+* Fri Apr 05 2019 Petr Pisar <ppisar@redhat.com> - 4:5.28.1-435
+- Fix a leak when compiling a typed hash dereference
+- Fix a buffer overread when handling a scope error in qr/\(?{/ (RT#133879)
+- Fix a buffer overread when parsing a regular expression with an unknown
+  character name (RT#133880)
+- Fix mbstate_t initialization in POSIX::mblen (RT#133928)
+- Fix a memory leak when cloning a regular expression
+- Fix a memory leak when spawning threads in a BEGIN phase
+- Fix a memory leak when assigning a regular expression to a non-copy-on-write string
+- Fix a memory leak when assignig to a localized ${^WARNING_BITS}
+- Fix a memory leak when parsing misindented here-documents
+- Fix a memory leak in package name lookup (RT#133977)
+- Fix a memory leak when deletion in a tied hash dies
+- Fix a crash when matching case insensitively (RT#133892)
+- Fix a memory leak when warning about malformed UTF-8 string
+
+* Tue Mar 05 2019 Björn Esser <besser82@fedoraproject.org> - 4:5.28.1-434
+- Add explicit Requires: libxcrypt-devel to devel sub-package (bug #1666098)
+
+* Fri Feb 22 2019 Petr Pisar <ppisar@redhat.com> - 4:5.28.1-433
+- Fix a crash when parsing #line directives with large numbers in eval
+  (RT#131562)
+- Fix setting magic when changing $^R (RT#133782)
+- Fix a race when loading XS modules
+- Fix extending a stack in Perl parser (RT#133778)
+
+* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4:5.28.1-432
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
+
+* Wed Jan 16 2019 Petr Pisar <ppisar@redhat.com> - 4:5.28.1-431
+- Remove a fix for an undefined C behavior in NULL pointer arithmetics
+  (RT#133223) because it changes perl ABI
+
+* Mon Jan 14 2019 Petr Pisar <ppisar@redhat.com> - 4:5.28.1-430
+- Adjust tests to gdbm-1.15 using an upstream fix (RT#133295)
+- Do not close an IPC pipe that already has a desired descriptor (RT#133726)
+- Fix reporting a line number for non-terminated prototypes (RT#133524)
+- Fix first eof() return value (RT#133721)
+- Fix a crash when compiling a malformed form (RT#132158)
+- Fix an undefined C behavior in NULL pointer arithmetics (RT#133223)
+- Prevent long jumps from clobbering local variables (RT#133575)
+- Fix a mismatch with a case-insesitive regular expression on a text with ligatures
+  (RT#133756)
+- Fix the interpreter path if procfs is not mounted (RT#133573)
+
+* Mon Jan 14 2019 Björn Esser <besser82@fedoraproject.org> - 4:5.28.1-429
+- Rebuilt for libcrypt.so.2 (#1666033)
+
+* Sun Jan 13 2019 Björn Esser <besser82@fedoraproject.org> - 4:5.28.1-428
+- Add BuildRequires: gcc-c++ for tests
+
+* Fri Nov 30 2018 Petr Pisar <ppisar@redhat.com> - 4:5.28.1-427
+- Fix script run matching to allow ASCII digits in scripts that use their own in
+  addition (RT#133547)
+- Fix PathTools tests to cope with ESTALE error (RT#133534)
+- Fix an undefined behaviour in S_hv_delete_common()
+- Fix in-place edit to replace files on a successful perl exit status
+  (bug #1650041)
+- Fix compiling regular expressions that contain both compile- and run-time
+  compiled code blocks (RT#133687)
+
+* Fri Nov 30 2018 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.28.1-426
+- 5.28.1 bump
+- Fix CVE-2018-18312 (heap-buffer-overflow write in regcomp.c)
+
+* Fri Nov 02 2018 Petr Pisar <ppisar@redhat.com> - 4:5.28.0-425
+- Install Encode developmental files when installing complete Perl
+
+* Thu Oct 25 2018 Jitka Plesnikova <jplesnik@redhat.com> -  4:5.28.0-424
+- Fix annocheck failure by passing CFLAGS to dtrace
+
+* Mon Sep 24 2018 Petr Pisar <ppisar@redhat.com> - 4:5.28.0-423
+- Fix upack "u" of invalid data (RT#132655)
+
+* Mon Sep 10 2018 Petr Pisar <ppisar@redhat.com> - 4:5.28.0-422
+- Revert a fix for a buffer overrun in deprecated S_is_utf8_common()
+  (bug #1627091)
+
+* Wed Sep 05 2018 Petr Pisar <ppisar@redhat.com> - 4:5.28.0-421
+- Fix a buffer overrun in deprecated S_is_utf8_common()
+- Fix a buffer overrun in deprecated utf8_to_uvchr()
+- Fix a time race in Time-HiRes/t/itimer.t test
+- Fix matching an ASCII digit followed by a non-ASCII digit using a script run
+- Fix Time::Piece to handle objects in overloaded methods correctly
+- Fix an assignment to a lexical variable in multiconcatenation expressions
+  (RT#133441)
+- Fix a spurious warning about uninitialized value in warn (RT#132683)
+- Require Devel::PPPort by perl-devel for h2xs script
+
+* Wed Aug 01 2018 Petr Pisar <ppisar@redhat.com> - 4:5.28.0-420
+- Fix a file descriptor leak in in-place edits (RT#133314)
+
+* Tue Jul 17 2018 Petr Pisar <ppisar@redhat.com> - 4:5.28.0-419
+- Fix index() and rindex() optimization in given-when boolean context
+  (RT#133368)
+- Fix build conditions in locale.c
+
+* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4:5.28.0-418
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
+
+* Mon Jul 09 2018 Petr Pisar <ppisar@redhat.com> - 4:5.28.0-417
+- Adjust tests to gdbm-1.15 (RT#133295)
+- Fix an integer wrap when allocating memory for an environment variable
+  (RT#133204)
+- Fix printing a warning about a wide character when matching a regular
+  expression while ISO-8859-1 locale is in effect
+- Fix invoking a check for wide characters while ISO-8859-1 locale is in effect
+
+* Wed Jun 27 2018 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.28.0-416
+- Stop providing old perl(MODULE_COMPAT_5.26.*)
+
+* Tue Jun 26 2018 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.28.0-415
+- 5.28.0 bump (see <https://metacpan.org/pod/release/XSAWYERX/perl-5.28.0/pod/perldelta.pod>
+  for release notes)
+
+* Fri May 25 2018 Petr Pisar <ppisar@redhat.com> - 4:5.26.2-414
+- Fix an infinite loop in the regular expression compiler (RT#133185)
+
+* Fri May 18 2018 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.26.2-413
+- Correct license tags of perl-libs (bug #1579524)
+
+* Thu Apr 19 2018 Petr Pisar <ppisar@redhat.com> - 4:5.26.2-412
+- perl-devel requires redhat-rpm-config because of hardened compiler profiles
+  (bug #1557667)
+- Do not clobber file bytes in :encoding layer (RT#132833)
+- Fix line numbers in multi-line s/// (RT#131930)
+- Fix parsing extended bracketed character classes (RT#132167)
+- Fix a possibly unitialized memory read in the Perl parser (RT#133074)
+
+* Mon Apr 16 2018 Petr Pisar <ppisar@redhat.com> - 4:5.26.2-411
+- 5.26.2 bump
+
+* Mon Mar 26 2018 Petr Pisar <ppisar@redhat.com> - 4:5.26.2-410.RC1
+- 5.26.2-RC1 bump
+- Fix CVE-2018-6913 (heap buffer overflow in pp_pack.c) (bug #1567776)
+- Fix CVE-2018-6798 (heap read overflow in regexec.c) (bug #1567777)
+- Fix CVE-2018-6797 (heap write overflow in regcomp.c) (bug #1567778)
+
+* Thu Mar  1 2018 Florian Weimer <fweimer@redhat.com> - 4:5.26.1-409
+- Rebuild to pick up new build flags from redhat-rpm-config
+
+* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 4:5.26.1-408
+- Escape macros in %%changelog
+
+* Tue Feb 06 2018 Petr Pisar <ppisar@redhat.com> - 4:5.26.1-407
+- Fix parsing braced subscript after parentheses (RT#8045)
+- Fix a heap use after free when moving a stack (RT#131954)
+- Call ldconfig scriptlets using a macro
+
+* Thu Feb 01 2018 Petr Pisar <ppisar@redhat.com> - 4:5.26.1-406
+- Correct shell bangs in tests
+
+* Mon Jan 29 2018 Petr Pisar <ppisar@redhat.com> - 4:5.26.1-405
+- Link XS modules to pthread library to fix linking with -z defs
+
+* Sat Jan 20 2018 Björn Esser <besser82@fedoraproject.org> - 4:5.26.1-404
+- Add patch to conditionalize a fix for an old and long fixed bug
+  in libcrypt / glibc (rhbz#1536752)
+
+* Mon Jan 15 2018 Petr Pisar <ppisar@redhat.com> - 4:5.26.1-403
+- Rebuild against glibc without nsl library
+
+* Tue Jan 09 2018 Petr Pisar <ppisar@redhat.com> - 4:5.26.1-402
+- Remove invalid macro definitions from macros.perl (bug #1532539)
+- Fix an overflow in the lexer when reading a new line (RT#131793)
+- Fix Term::ReadLine not to create spurious &STDERR files (RT#132008)
+- Fix a crash when a match for inversely repeated group fails (RT#132017)
+- Fix an overflow when parsing a character range with no preceding character
+  (RT#132245)
+- Fix walking symbol table for ISA in Carp
+- Fix handling file names with null bytes in stat and lstat functions
+  (RT#131895)
+- Fix a crash when untying an object witout a stash
+- Fix deparsing of transliterations with unprintable characters (RT#132405)
+- Fix error reporting on do() on a directory (RT#125774)
+- Fix stack manipulation when a lexical subroutine is defined in a do block in
+  a member of an iteration list (RT#132442)
+- Fix setting $! when statting a closed file handle (RT#108288)
+- Fix tainting of s/// with overloaded replacement (RT#115266)
+- Expand system() arguments before a fork (RT#121105)
+- Avoid undefined behavior when copying memory in Glob and pp_caller (RT#131746)
+
+* Mon Sep 25 2017 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.26.1-401
+- Update perl(:MODULE_COMPAT)
+
+* Mon Sep 25 2017 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.26.1-400
+- 5.26.1 bump (see <http://search.cpan.org/dist/perl-5.26.1/pod/perldelta.pod>
+  for release notes)
+
+* Tue Aug 22 2017 Petr Pisar <ppisar@redhat.com> - 4:5.26.0-399
+- Fix unreliable Time-HiRes tests (CPAN RT#122819)
+- Do not require $Config{libs} providers by perl-devel package (bug #1481324)
+
+* Tue Aug 08 2017 Petr Pisar <ppisar@redhat.com> - 4:5.26.0-398
+- Fix reporting malformed UTF-8 character (RT#131646)
+- Fix File::Glob rt131211.t test random failures
+- Fix t/op/hash.t test random failures
+- Parse caret variables with subscripts as normal variables inside ${...}
+  escaping (RT#131664)
+- Do not display too many bytes when reporting malformed UTF-8 character
+- Fix select called with a repeated magical variable (RT#131645)
+- Fix error message for "our sub foo::bar" (RT#131679)
+- Fix executing arybase::_tie_it() in Safe compartement (RT#131588)
+- Fix handling attribute specification on our variables (RT#131597)
+- Fix splitting non-ASCII strings if unicode_strings feature is enabled (RT#130907)
+- Fix compiler warnings in code generated by ExtUtils::Constant
+  (CPAN RT#63832, CPAN RT#101487)
+- Fix GCC version detection for -D_FORTIFY_SOURCE override (RT#131809)
+
+* Sat Jul 29 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 4:5.26.0-397
+- Enable separate debuginfo back
+
+* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4:5.26.0-396
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Wed Jun 28 2017 Petr Pisar <ppisar@redhat.com> - 4:5.26.0-395
+- perl package installs all core modules, interpreter moved to
+  perl-interpreter package, perl-core package is obsolete
+  <https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules>
+  (bug #1464903)
+
+* Mon Jun 19 2017 Petr Pisar <ppisar@redhat.com> - 4:5.26.0-394
+- Make File::Glob more resistant against degenerative matching (RT#131211)
+- Fix a crash when calling a subroutine from a stash (RT#131085)
+- Fix an improper cast of a negative integer to an unsigned 8-bit type (RT#131190)
+- Fix cloning :via handles on thread creation (RT#131221)
+- Fix glob UTF-8 flag on a glob reassignment (RT#131263)
+- Fix a buffer overflow in my_atof2() (RT#131526)
+- Fix handling backslashes in PATH environment variable when executing
+  "perl -S" (RT#129183)
+- Fix a conditional jump on uninitilized memory in re_intuit_start() (RT#131575)
+- Fix spurious "Assuming NOT a POSIX class" warning (RT#131522)
+- Provide perl-interpreter RPM dependency symbol
+  <https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules>
+
+* Tue Jun 06 2017 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.26.0-393
+- Stop providing old perl(MODULE_COMPAT_5.24.*)
+
+* Thu Jun 01 2017 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.26.0-392
+- 5.26.0 bump (see <http://search.cpan.org/dist/perl-5.26.0/pod/perldelta.pod>
+  for release notes)
+- Update sub-packages
+- Update or remove patches
+- Enable hardening (bug #1238804)
+- Use 64 bit ints on 32 bit platforms (bug #1268828)
+
+* Fri Mar 31 2017 Petr Pisar <ppisar@redhat.com> - 4:5.24.1-391
+- Introduce build-conditions for groff, systemtap, syslog tests, and tcsh
+
+* Wed Mar 08 2017 Petr Pisar <ppisar@redhat.com> - 4:5.24.1-390
+- Fix a null-pointer dereference on malformed code (RT#130815)
+- Fix an use-after-free in substr() that modifies a magic variable (RT#129340)
+- Fix a memory leak leak in Perl_reg_named_buff_fetch() (RT#130822)
+- Fix an invalid memory read when parsing a loop variable (RT#130814)
+- Fix a heap-use-after-free in four-arguments substr call (RT#130624)
+
+* Fri Feb 17 2017 Petr Pisar <ppisar@redhat.com> - 4:5.24.1-389
+- Adapt Compress::Raw::Zlib to zlib-1.2.11 (bug #1420326)
+- Fix a heap buffer overflow when evaluating regexps with embedded code blocks
+  from more than one source (RT#129881)
+- Fix a memory leak in list assignment from or to magic values (RT#130766)
+
+* Fri Feb 10 2017 Petr Pisar <ppisar@redhat.com> - 4:5.24.1-388
+- Adapt tests to zlib-1.2.11 (bug #1420326)
+- Fix a crash when compiling a regexp with impossible quantifiers (RT#130561)
+- Fix a buffer overrun with format and "use bytes" (RT#130703)
+- Fix a buffer overflow when studying some regexps repeatedly
+  (RT#129281, RT#129061)
+
+* Thu Jan 26 2017 Petr Pisar <ppisar@redhat.com> - 4:5.24.1-387
+- Fix UTF-8 string handling in & operator (RT#129287)
+- Fix recreation of *:: (RT#129869)
+- Fix a memory leak in B::RHE->HASH method (RT#130504)
+- Fix parsing goto statements in multicalled subroutine (RT#113938)
+- Fix a heap overlow in parsing $# (RT#129274)
+
+* Fri Jan 20 2017 Petr Pisar <ppisar@redhat.com> - 4:5.24.1-386
+- Fix a buffer overflow in split in scalar context (RT#130262)
+- Fix a heap overflow with pack "W" (RT129149)
+- Fix a use-after-free when processing scalar variables in forms (RT#129125)
+- Fix a heap overflow if invalid octal or hexadecimal number is used in
+  transliteration expression (RT#129342)
+- Fix out-of-bound read in case of unmatched regexp backreference (RT#129377)
+
+* Mon Jan 16 2017 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.24.1-385
+- 5.24.1 bump (see <http://search.cpan.org/dist/perl-5.24.1/pod/perldelta.pod>
+  for release notes)
+
+* Thu Jan 12 2017 Igor Gnatenko <ignatenko@redhat.com> - 4:5.24.0-384
+- Rebuild for readline 7.x
+
+* Fri Jan 06 2017 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-383
+- Remove bundled Math-BigInt-FastCalc (bug #1408463)
+- Remove bundled Math-BigRat (bug #1408467)
+- Remove bundled bignum (bug #1409585)
+
+* Mon Dec 19 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-382
+- Fix a crash in optimized evaluation of "or ((0) x 0))" (RT#130247)
+- Fix a memory leak in IO::Poll (RT#129788)
+- Fix regular expression matching (RT#130307)
+
+* Thu Dec 01 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-381
+- Fix crash in Storable when deserializing malformed code reference
+  (RT#68348, RT#130098)
+- Fix crash on explicit return from regular expression substitution (RT#130188)
+- Tighten dependencies between architecture specific sub-packages to ISA
+- Fix assigning split() return values to an array
+- Fix const correctness in hv_func.h (bug #1242980)
+
+* Wed Nov 09 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-380
+- Tie perl-Errno release to interpreter build because of kernel version check
+  (bug #1393421)
+
+* Thu Nov 03 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-379
+- Fix crash in "evalbytes S" (RT#129196)
+- Fix crash in splice (RT#129164, RT#129166, RT#129167)
+- Fix string overrun in Perl_gv_fetchmethod_pvn_flags (RT#129267)
+- Fix crash when matching UTF-8 string with non-UTF-8 substrings (RT#129350)
+- Fix parsing perl options in shell bang line (RT#129336)
+- Fix firstchar bitmap under UTF-8 with prefix optimization (RT#129950)
+- Avoid infinite loop in h2xs tool if enum and type have the same name
+  (RT130001)
+- Fix stack handling when calling chdir without an argument (RT#129130)
+
+* Fri Sep 02 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-378
+- perl-core depends on Parse::CPAN::Meta module instead of package name to allow
+  upgrading perl-CPAN-Meta to 2.150010 (bug #1370681)
+
+* Tue Aug 02 2016 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.24.0-377
+- Avoid loading of modules from current directory, CVE-2016-1238, (bug #1360425)
+
+* Thu Jul 28 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-376
+- Fix handling \N{} in tr for characters in range 128--255 (RT#128734)
+
+* Tue Jul 26 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-375
+- Fix building without perl in the build root
+- Own systemtap directories by perl-devel
+
+* Tue Jul 12 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-374
+- Fix a crash in lexical scope warnings (RT#128597)
+
+* Fri Jul 08 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-373
+- Fix a crash in "Subroutine redefined" warning (RT#128257)
+
+* Thu Jul 07 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-372
+- Fix a crash when vivifying a stub in a deleted package (RT#128532)
+
+* Thu Jul 07 2016 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.24.0-371
+- Do not let XSLoader load relative paths (CVE-2016-6185)
+
+* Mon Jul 04 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-370
+- Fix line numbers with perl -x (RT#128508)
+
+* Fri Jun 24 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-369
+- Do not crash when inserting a non-stash into a stash (RT#128238)
+
+* Wed Jun 22 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-368
+- Do not use unitialized memory in $h{\const} warnings (RT#128189)
+- Fix precedence in hv_ename_delete (RT#128086)
+- Do not treat %%: as a stash (RT#128238)
+
+* Mon Jun 20 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-367
+- Fix compiling regular expressions like /\X*(?0)/ (RT#128109)
+
+* Thu Jun 16 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-366
+- Do not mangle errno from failed socket calls (RT#128316)
+
+* Tue Jun 14 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-365
+- Fix a memory leak when compiling a regular expression with a POSIX class
+  (RT#128313)
+
+* Thu May 19 2016 Petr Pisar <ppisar@redhat.com> - 4:5.24.0-364
+- Remove reflexive dependencies
+- Use pregenerated dependencies on bootstrapping
+- Specify more build-time dependencies
+
+* Wed May 18 2016 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.24.0-363
+- Stop providing old perl(MODULE_COMPAT_5.22.*)
+- Update license tags
+
+* Wed May 11 2016 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.24.0-362
+- 5.24.0 bump (see <http://search.cpan.org/dist/perl-5.24.0/pod/perldelta.pod>
+  for release notes)
+- Update sub-packages; Update or remove patches
+
+* Mon May 02 2016 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.22.6-361
+- 5.22.2 bump (see <http://search.cpan.org/dist/perl-5.22.2/pod/perldelta.pod>
+  for release notes)
+
+* Mon Apr 18 2016 Petr Pisar <ppisar@redhat.com> - 4:5.22.1-360
+- Weak perl-Encode-devel dependency on perl-devel to Recommends level
+  (bug #1129443)
+- Remove perl-ExtUtils-ParseXS dependency on perl-devel (bug #1129443)
+- Require perl-devel by perl-ExtUtils-MakeMaker
+- Provide MM::maybe_command independently (bug #1129443)
+- Replace ExtUtils::MakeMaker dependency with ExtUtils::MM::Utils in IPC::Cmd
+  (bug #1129443)
+- Remove perl-ExtUtils-Install dependency on perl-devel (bug #1129443)
+- Remove perl-ExtUtils-Manifest dependency on perl-devel (bug #1129443)
+
+* Tue Mar 15 2016 Petr Pisar <ppisar@redhat.com> - 4:5.22.1-359
+- Do not filter FCGI dependency, CGI is non-core now
+
+* Fri Mar 04 2016 Petr Pisar <ppisar@redhat.com> - 4:5.22.1-358
+- Remove bundled perl-IPC-SysV (bug #1308527)
+
+* Wed Mar 02 2016 Petr Pisar <ppisar@redhat.com> - 4:5.22.1-357
+- Fix CVE-2016-2381 (ambiguous environment variables handling) (bug #1313702)
+
+* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4:5.22.1-356
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
+* Tue Dec 15 2015 Petr Pisar <ppisar@redhat.com> - 4:5.22.1-355
+- Remove bundled Math-BigInt (bug #1277203)
+
+* Mon Dec 14 2015 Jitka Plesnikova <jplesnik@redhat.com> - 5.22.1-354
+- 5.22.1 bump (see <http://search.cpan.org/dist/perl-5.22.1/pod/perldelta.pod>
+  for release notes)
+
+* Tue Oct 20 2015 Petr Pisar <ppisar@redhat.com> - 4:5.22.0-353
+- Rebuild to utilize perl(:VERSION) dependency symbol
+
+* Tue Oct 13 2015 Petr Pisar <ppisar@redhat.com> - 4:5.22.0-352
+- Do not own IO::Socket::IP manual page by perl-IO
+
+* Fri Oct 09 2015 Petr Pisar <ppisar@redhat.com> - 4:5.22.0-351
+- Sub-package Attribute-Handlers
+- Sub-package Devel-Peek
+- Sub-package Devel-SelfStubber
+- Sub-package SelfLoader
+- Sub-package IO
+- Sub-package Errno
+- Correct perl-Digest-SHA dependencies
+- Correct perl-Pod-Perldoc dependencies
+- Move utf8 and dependencies to perl-libs
+- Correct perl-devel and perl-CPAN dependencies
+- Sub-package IPC-SysV
+- Sub-package Test
+- Sub-package utilities (splain) into perl-utils
+- Provide perl version in perl(:VERSION) dependency symbol
+
+* Fri Aug 07 2015 Petr Pisar <ppisar@redhat.com> - 4:5.22.0-350
+- Sub-package Memoize
+- Sub-package Net-Ping
+- Sub-package Pod-Html
+
+* Thu Jul 16 2015 Petr Pisar <ppisar@redhat.com> - 4:5.22.0-349
+- Disable hardening due to some run-time failures (bug #1238804)
+
+* Mon Jul 13 2015 Petr Pisar <ppisar@redhat.com> - 4:5.22.0-348
+- Sub-package bignum
+- Sub-package Math-BigRat
+- Sub-package Math-BigInt-FastCalc
+- Sub-package Math-Complex
+- Remove bundled perl-Config-Perl-V (bug #1238203)
+- Remove bundled perl-MIME-Base64 (bug #1238222)
+- Remove bundled perl-PerlIO-via-QuotedPrint (bug #1238229)
+- Remove bundled perl-Pod-Escapes (bug #1238237)
+- Remove bundled perl-Term-Cap (bug #1238248)
+- Remove bundled perl-Text-Balanced (bug #1238269)
+- Remove bundled perl-libnet (bug #1238689)
+- Remove bundled perl-perlfaq (bug #1238703)
+- Remove bundled perl-Unicode-Normalize (bug #1238730)
+- Remove bundled perl-Unicode-Collate (bug #1238760)
+
+* Wed Jul 08 2015 Petr Pisar <ppisar@redhat.com> - 4:5.22.0-347
+- Store distribution's linker and compiler flags to more Config's options
+  in order to apply them when linking executable programs (bug #1238804)
+- Sub-package Config-Perl-V (bug #1238203)
+- Sub-package MIME-Base64 (bug #1238222)
+- Sub-package PerlIO-via-QuotedPrint (bug #1238229)
+- Update Pod-Escapes metadata (bug #1238237)
+- Sub-package Term-Cap (bug #1238248)
+- Sub-package Text-Balanced (bug #1238269)
+- Sub-package libnet (bug #1238689)
+- Sub-package perlfaq (bug #1238703)
+- Sub-package Unicode-Normalize (bug #1238730)
+- Sub-package Unicode-Collate (bug #1238760)
+- Sub-package Math-BigInt
+- Do not provide Net/libnet.cfg (bug #1238689)
+- Revert downstream change in Net::Config default configuration
+- Move libnetcfg tool from perl-devel into perl-libnetcfg sub-package
+
+* Thu Jun 18 2015 Petr Pisar <ppisar@redhat.com> - 4:5.22.0-346
+- Subpackage "open" module in order to keep deprecated "encoding" module
+  optional (bug #1228378)
+- Control building dual-lived sub-packages by perl_bootstrap macro
+- Make PadlistNAMES() lvalue again (bug #1231165)
+- Make magic vtable writable as a work-around for Coro (bug #1231165)
+- Explain file break-down into RPM packages in perl package description
+
+* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4:5.22.0-345
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
+* Wed Jun 10 2015 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.22.0-244
+- Stop providing old perl(MODULE_COMPAT_5.20.*)
+
+* Thu Jun 04 2015 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.22.0-243
+- Move ok and Test::Use::ok to perl-Test-Simple
+
+* Wed Jun 03 2015 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.22.0-242
+- Move bin/encguess to perl-Encode
+
+* Mon Jun 01 2015 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.22.0-241
+- 5.22.0 bump (see <http://search.cpan.org/dist/perl-5.22.0/pod/perldelta.pod>
+  for release notes)
+- Update sub-packages and erase the removed modules from the core
+- Clean patches, not needed with new version
+- Update patches to work with new version
+
+* Wed Apr 15 2015 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.20.2-328
+- Sub-package perl-CGI-Fast and perl-Module-Build-Deprecated
+- Add missing dual-life modules to perl-core
+
+* Thu Apr 02 2015 Petr Šabata <contyk@redhat.com> - 4:5.20.2-327
+- Bump to make koji happy
+
+* Thu Apr 02 2015 Petr Šabata <contyk@redhat.com> - 4:5.20.2-326
+- Correct license tags of the main package, CGI, Compress-Raw-Zlib,
+  Digest-MD5, Test-Simple and Time-Piece
+- Package a Pod-Html license clarification email
+
+* Wed Mar 25 2015 Petr Pisar <ppisar@redhat.com> - 4:5.20.2-325
+- Sub-package Text-Tabs+Wrap (bug #910798)
+
+* Thu Mar 19 2015 Lubomir Rintel <lkundrak@v3.sk> - 4:5.20.2-324
+- Add systemtap probes for new dtrace markers
+
+* Mon Mar 16 2015 Petr Pisar <ppisar@redhat.com> - 4:5.20.2-323
+- Move perl(:MODULE_COMPAT_*) symbol and include directories to perl-libs
+  package (bug #1174951)
+
+* Sat Feb 21 2015 Till Maas <opensource@till.name> - 4:5.20.2-322
+- Rebuilt for Fedora 23 Change
+  https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code
+
+* Wed Feb 18 2015 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.20.2-321
+- Provide 5.20.2 MODULE_COMPAT
+- Clean list of provided files
+- Update names of changed patches
+
+* Tue Feb 17 2015 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.20.2-320
+- 5.20.2 bump (see <http://search.cpan.org/dist/perl-5.20.2/pod/perldelta.pod>
+  for release notes)
+- Regenerate a2p.c (BZ#1177672)
+
+* Mon Feb 16 2015 Petr Pisar <ppisar@redhat.com> - 4:5.20.1-319
+- Improve h2ph fix for GCC 5.0
+
+* Thu Feb 12 2015 Petr Pisar <ppisar@redhat.com> - 4:5.20.1-318
+- Fix regressions with GCC 5.0
+
+* Tue Feb 03 2015 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.20.1-317
+- Sub-package inc-latest module
+
+* Fri Jan 23 2015 Petr Pisar <ppisar@redhat.com> - 4:5.20.1-316
+- Delete dual-living programs clashing on debuginfo files (bug #878863)
+
+* Mon Dec 01 2014 Petr Pisar <ppisar@redhat.com> - 4:5.20.1-315
+- Report inaccesible file on failed require (bug #1166504)
+- Use stronger algorithm needed for FIPS in t/op/taint.t (bug #1128032)
+
+* Wed Nov 19 2014 Petr Pisar <ppisar@redhat.com> - 4:5.20.1-314
+- Consider Filter::Util::Call dependency as mandatory (bug #1165183)
+- Sub-package encoding module
+- Own upper directories by each package that installs a file there and
+  remove empty directories (bug #1165013)
+
+* Thu Nov 13 2014 Petr Pisar <ppisar@redhat.com> - 4:5.20.1-313
+- Freeze epoch at perl-Pod-Checker and perl-Pod-Usage (bug #1163490)
+- Remove bundled perl-ExtUtils-Command (bug #1158536)
+- Remove bundled perl-Filter-Simple (bug #1158542)
+
+* Wed Nov 12 2014 Petr Pisar <ppisar@redhat.com> - 4:5.20.1-312
+- Do not double-own perl-Pod-Usage' and perl-Pod-Checker' files by
+  perl-Pod-Parser on bootstrap
+- Sub-package ExtUtils-Command (bug #1158536)
+- Sub-package Filter-Simple (bug #1158542)
+- Build-require groff-base instead of big groff
+
+* Wed Oct 29 2014 Petr Pisar <ppisar@redhat.com> - 4:5.20.1-311
+- Remove bundled perl-Devel-PPPort (bug #1143999)
+- Remove bundled perl-B-Debug (bug #1142952)
+- Remove bundled perl-ExtUtils-CBuilder (bug #1144033)
+- Remove bundled perl-ExtUtils-Install (bug #1144068)
+
+* Thu Oct 23 2014 Petr Pisar <ppisar@redhat.com> - 4:5.20.1-310
+- Move all Module-CoreList files into perl-Module-CoreList
+- Sub-package corelist(1) into perl-Module-CoreList-tools (bug #1142757)
+- Remove bundled perl-Module-CoreList, and perl-Module-CoreList-tools
+  (bug #1142757)
+- Sub-package Devel-PPPort (bug #1143999)
+- Sub-package B-Debug (bug #1142952)
+- Use native version for perl-ExtUtils-CBuilder
+- Specify all dependencies for perl-ExtUtils-Install (bug #1144068)
+- Require perl-ExtUtils-ParseXS by perl-ExtUtils-MakeMaker because of xsubpp
+
+* Tue Sep 16 2014 Petr Šabata <contyk@redhat.com> - 4:5.20.1-309
+- Provide 5.20.0 MODULE_COMPAT
+
+* Mon Sep 15 2014 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.20.1-308
+- 5.20.1 bump (see <http://search.cpan.org/dist/perl-5.20.1/pod/perldelta.pod>
+  for release notes)
+- Sub-package perl-ExtUtils-Miniperl (bug #1141222)
+
+* Wed Sep 10 2014 Petr Pisar <ppisar@redhat.com> - 4:5.20.0-307
+- Specify all dependencies for perl-CPAN (bug #1090112)
+- Disable non-core modules at perl-CPAN when bootstrapping
+- Remove bundled perl-CPAN (bug #1090112)
+
+* Sun Sep 07 2014 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.20.0-306
+- Stop providing old perl(MODULE_COMPAT_5.18.*)
+
+* Mon Aug 18 2014 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.20.0-305
+- Update to Perl 5.20.0
+- Clean patches, not needed with new version
+- Update patches to work with new version
+- Update version of sub-packages, remove the deleted sub-packages
+- Sub-package perl-IO-Socket-IP, perl-experimental
+- Disable BR perl(local::lib) for cpan tool when bootstraping
+
+* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4:5.18.2-304
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Fri Aug 08 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-303
+- Declare dependencies for cpan tool (bug #1122498)
+- Use stronger algorithm needed for FIPS in t/op/crypt.t (bug #1128032)
+- Make *DBM_File desctructors thread-safe (bug #1107543)
+
+* Tue Jul 29 2014 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.18.2-302
+- Sub-package perl-Term-ANSIColor and remove it (bug #1121924)
+
+* 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
+- Correct perl-App-s2p license to ((GPL+ or Artistic) and App-s2p)
+
+* Thu Jun 19 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-300
+- Sub-package perl-App-find2perl (bug #1111196)
+- Sub-package perl-App-a2p (bug #1111232)
+- Sub-package perl-App-s2p (bug #1111242)
+
+* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4:5.18.2-299
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Thu Apr 10 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-298
+- Pass -fwrapv to stricter GCC 4.9 (bug #1082957)
+
+* Fri Apr 04 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-297
+- Fix t/comp/parser.t not to load system modules (bug #1084399)
+
+* Mon Feb 03 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-296
+- Move macro files into %%{_rpmconfigdir}/macros.d
+
+* Wed Jan 29 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-295
+- Provide perl(CPAN::Meta::Requirements) with six decimal places
+
+* Tue Jan 21 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-294
+- Drop perl-Test-Simple-tests package is it is not delivered by dual-lived
+  version
+- Hide dual-lived perl-Object-Accessor
+
+* Tue Jan 14 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-293
+- Use a macro to cover all 64-bit PowerPC architectures (bug #1052709)
+
+* Tue Jan 14 2014 Petr Pisar <ppisar@redhat.com> - 4:5.18.2-292
+- Use upstream patch to fix a test failure in perl5db.t when TERM=vt100
+
+* Tue Dec 10 2013 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.18.2-291
+- 5.18.2 bump (see <http://search.cpan.org/dist/perl-5.18.2/pod/perldelta.pod>
+  for release notes)
+
+* Mon Dec 02 2013 Petr Pisar <ppisar@redhat.com> - 4:5.18.1-290
+- Document Math::BigInt::CalcEmu requires Math::BigInt (bug #959096)
+
+* Tue Oct 22 2013 Petr Pisar <ppisar@redhat.com> - 4:5.18.1-289
+- perl_default_filter macro does not need to filter private libraries from
+  provides (bug #1020809)
+- perl_default_filter anchors the filter regular expressions
+- perl_default_filter appends the filters instead of redefining them
+
+* Mon Sep 09 2013 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.18.1-288
+- Fix rules for parsing numeric escapes in regexes (bug #978233)
+- Fix crash with \&$glob_copy (bug #989486)
+- Fix coreamp.t's rand test (bug #970567)
+- Reap child in case where exception has been thrown (bug #988805)
+- Fix using regexes with multiple code blocks (bug #982131)
+
+* Tue Aug 13 2013 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.18.1-287
+- 5.18.1 bump (see <http://search.cpan.org/dist/perl-5.18.1/pod/perldelta.pod>
+  for release notes)
+- Disable macro %%{rebuild_from_scratch}
+- Fix regex seqfault 5.18 regression (bug #989921)
+- Fixed interpolating downgraded variables into upgraded (bug #970913)
+- SvTRUE returns correct value (bug #967463)
+- Fixed doc command in perl debugger (bug #967461)
+- Fixed unaligned access in slab allocator (bug #964950)
+
+* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4:5.18.0-286
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
+
+* Mon Jul 15 2013 Petr Pisar <ppisar@redhat.com> - 4:5.18.0-285
+- Stop providing old perl(MODULE_COMPAT_5.16.*)
+
+* Fri Jul 12 2013 Petr Pisar <ppisar@redhat.com> - 4:5.18.0-284
+- Perl 5.18 rebuild
+
+* Tue Jul 09 2013 Petr Pisar <ppisar@redhat.com> - 4:5.18.0-283
+- Define SONAME for libperl.so and move the libary into standard path
+- Link XS modules to libperl.so on Linux (bug #960048)
+
+* Mon Jul 08 2013 Petr Pisar <ppisar@redhat.com> - 4:5.18.0-282
+- Do not load system Term::ReadLine::Gnu while running tests
+- Disable ornaments on perl5db AutoTrace tests
+
+* Thu Jul 04 2013 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.18.0-281
+- Update to Perl 5.18.0
+- Clean patches, not needed with new version
+
+* Wed Jun 26 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-280
+- Edit local patch level before compilation
+
+* Fri Jun 14 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-279
+- Do not distribute File::Spec::VMS (bug #973713)
+- Remove bundled CPANPLUS-Dist-Build (bug #973041)
+
+* Wed Jun 12 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-278
+- Update SystemTap scripts to recognize new phase__change marker and new probe
+  arguments (bug #971094)
+- Update h2ph(1) documentation (bug #948538)
+- Update pod2html(1) documentation (bug #948538)
+- Do not double-own archlib directory (bug #894195)
+
+* Tue Jun 11 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-277
+- Move CPANPLUS-Dist-Build files from perl-CPANPLUS
+- Move CPAN-Meta-Requirements files from CPAN-Meta
+- Add perl-Scalar-List-Utils to perl-core dependencies
+
+* Thu Jun 06 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-276
+- Require $Config{libs} providers (bug #905482)
+
+* Thu May 30 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-275
+- Correct typo in perl-Storable file list (bug #966865)
+- Remove bundled Storable (bug #966865)
+
+* Wed May 29 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-274
+- Sub-package Storable (bug #966865)
+
+* Mon May 13 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-273
+- Use lib64 directories on aarch64 architecture (bug #961900)
+
+* Fri May 10 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-272
+- Make regular expression engine safe in a signal handler (bug #849703)
+- Remove bundled ExtUtils-ParseXS, and Time-HiRes
+
+* Fri Apr 26 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-271
+- Sub-package Time-HiRes (bug #957048)
+- Remove bundled Getopt-Long, Locale-Maketext, and Sys-Syslog
+
+* Wed Apr 10 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-270
+- Fix leaking tied hashes (bug #859910)
+- Fix dead lock in PerlIO after fork from thread (bug #947444)
+- Add proper conflicts to perl-Getopt-Long, perl-Locale-Maketext, and
+  perl-Sys-Syslog
+
+* Tue Apr 09 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-269
+- Sub-package Sys-Syslog (bug #950057)
+
+* Fri Apr 05 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-268
+- Sub-package Getopt-Long (bug #948855)
+- Sub-package Locale-Maketext (bug #948974)
+
+* Fri Apr 05 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-267
+- Remove bundled constant, DB_File, Digest-MD5, Env, Exporter, File-Path,
+  File-Temp, Module-Load, Log-Message-Simple, Pod-Simple, Test-Harness,
+  Text-ParseWords
+
+* Mon Mar 25 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-266
+- Filter provides from *.pl files (bug #924938)
+
+* Fri Mar 22 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-265
+- Conflict perl-autodie with older perl (bug #911226)
+- Sub-package Env (bug #924619)
+- Sub-package Exporter (bug #924645)
+- Sub-package File-Path (bug #924782)
+- Sub-package File-Temp (bug #924822)
+
+* Thu Mar 21 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-264
+- Sub-package constant (bug #924169)
+- Sub-package DB_File (bug #924351)
+
+* Tue Mar 19 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-263
+- Correct perl-Digest-MD5 dependencies
+- Remove bundled Archive-Extract, File-Fetch, HTTP-Tiny,
+  Module-Load-Conditional, Time-Local
+
+* Fri Mar 15 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-262
+- Correct dependencies of perl-HTTP-Tiny
+- Sub-package Time-Local (bug #922054)
+
+* Thu Mar 14 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.3-261
+- 5.16.3 bump (see <http://search.cpan.org/dist/perl-5.16.3/pod/perldelta.pod>
+  for release notes)
+- Remove bundled autodie, B-Lint, CPANPLUS, Encode, File-CheckTree, IPC-Cmd,
+  Params-Check, Text-Soundex, Thread-Queue
+
+* Tue Mar 05 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-260
+- Fix CVE-2013-1667 (DoS in rehashing code) (bug #918008)
+
+* Mon Feb 18 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-259
+- Sub-package autodie (bug #911226)
+- Add NAME headings to CPAN modules (bug #908113)
+
+* Thu Feb 14 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-258
+- Fix perl-Encode-devel dependency declaration
+
+* Thu Feb 14 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-257
+- Sub-package Thread-Queue (bug #911062)
+
+* Wed Feb 13 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-256
+- Sub-package File-CheckTree (bug #909144)
+- Sub-package Text-ParseWords
+- Sub-package Encode (bug #859149)
+
+* Fri Feb 08 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-255
+- Remove bundled Log-Message
+- Remove bundled Term-UI
+
+* Thu Feb 07 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-254
+- Correct perl-podlators dependencies
+- Obsolete perl-ExtUtils-Typemaps by perl-ExtUtils-ParseXS (bug #891952)
+
+* Tue Feb 05 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-253
+- Sub-package Pod-Checker and Pod-Usage (bugs #907546, #907550)
+
+* Mon Feb 04 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-252
+- Remove bundled PathTools
+
+* Wed Jan 30 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-251
+- Sub-package B-Lint (bug #906015)
+
+* Wed Jan 30 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-250
+- Sub-package Text-Soundex (bug #905889)
+- Fix conflict declaration at perl-Pod-LaTeX (bug #904085)
+- Remove bundled Module-Pluggable (bug #903624)
+
+* Tue Jan 29 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-249
+- Run-require POD convertors by Module-Build and ExtUtils-MakeMaker to
+  generate documentation when building other packages
+
+* Fri Jan 25 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-248
+- Sub-package Pod-LaTeX (bug #904085)
+
+* Wed Jan 16 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-247
+- Remove bundled Pod-Parser
+
+* Fri Jan 11 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-246
+- Fix CVE-2012-6329 (misparsing of maketext strings) (bug #884354)
+
+* Thu Jan 10 2013 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-245
+- Do not package App::Cpan(3pm) to perl-Test-Harness (bug #893768)
+
+* Tue Dec 18 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-244
+- Remove bundled Archive-Tar
+- Remove bundled CPAN-Meta-YAML
+- Remove bundled Module-Metadata
+
+* Tue Dec 18 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.2-243
+- Remove bundled Filter modules
+
+* Mon Nov 05 2012 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.16.2-242
+- 5.16.2 bump (see
+  http://search.cpan.org/dist/perl-5.16.1/pod/perldelta.pod for release
+  notes)
+
+* Wed Oct 31 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-241
+- Remove bundled podlators (bug #856516)
+
+* Wed Oct 17 2012 Jitka Plesnikova <jplesnik@redhat.com> - 4:5.16.1-240
+- Do not crash when vivifying $| (bug #865296)
+
+* Mon Sep 24 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-239
+- Conflict perl-podlators with perl before sub-packaging (bug #856516)
+
+* Fri Sep 21 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-238
+- Do not leak with attribute on my variable (bug #858966)
+- Allow operator after numeric keyword argument (bug #859328)
+- Extend stack in File::Glob::glob (bug #859332)
+
+* Thu Sep 20 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-237
+- Put perl-podlators into perl-core list (bug #856516)
+
+* Tue Sep 18 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-236
+- Remove bundled perl-ExtUtils-Manifest
+- perl-PathTools uses Carp
+
+* Fri Sep 14 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-235
+- Override the Pod::Simple::parse_file to set output to STDOUT by default
+  (bug #826872)
+
+* Wed Sep 12 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-234
+- Sub-package perl-podlators (bug #856516)
+
+* Tue Sep 11 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-233
+- Do not access freed memory when cloning thread (bug #825749)
+- Match non-breakable space with /[\h]/ in ASCII mode (bug #844919)
+- Clear $@ before `do' I/O error (bug #834226)
+- Do not truncate syscall() return value to 32 bits (bug #838551)
+
+* Wed Sep 05 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-232
+- Move App::Cpan from perl-Test-Harness to perl-CPAN (bug #854577)
+
+* Fri Aug 24 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.1-231
+- Remove perl-devel dependency from perl-Test-Harness and perl-Test-Simple
+
+* Mon Aug 13 2012 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.16.0-230
+- define perl_compat by macro for rebuilds
+- sub-packages depend on compat rather than on nvr
+
+* Thu Aug  9 2012 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.16.0-229
+- apply conditionals for dual life patches
+
+* Thu Aug 09 2012 Jitka Plesnikova <jplesnik@redhat.com> 4:5.16.1-228
+- 5.16.1 bump (see
+  http://search.cpan.org/dist/perl-5.16.1/pod/perldelta.pod for release
+  notes)
+- Fixed reopening by scalar handle (bug #834221)
+- Fixed tr/// multiple transliteration (bug #831679)
+- Fixed heap-overflow in gv_stashpv (bug #826516)
+
+* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4:5.16.0-227
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Fri Jul 13 2012 Paul Howarth <paul@city-fan.org> 4:5.16.0-226
+- Move the rest of ExtUtils-ParseXS into its sub-package, so that the main
+  perl package doesn't need to pull in perl-devel (bug #839953)
+
+* Mon Jul 02 2012 Jitka Plesnikova <jplesnik@redhat.com> 4:5.16.0-225
+- Fix broken atof (bug #835452)
+
+* Wed Jun 27 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.0-224
+- perl-Pod-Perldoc must require groff-base because Pod::Perldoc::ToMan executes
+  roff
+
+* Mon Jun 25 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.0-223
+- Test::Build requires Data::Dumper
+- Sub-package perl-Pod-Parser
+
+* Thu Jun 07 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.0-222
+- Remove MODULE_COMPAT_5.14.* Provides
+
+* Wed Jun 06 2012 Petr Pisar <ppisar@redhat.com> - 4:5.16.0-221
+- Perl 5.16 rebuild
+
+* 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
+
+* Thu Apr 19 2012 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-215
+- Rebuild perl against Berkeley database version 5 (bug #768846)
+
+* Fri Apr 13 2012 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-214
+- perl-Data-Dumper requires Scalar::Util (bug #811239)
+
+* Tue Apr 10 2012 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-213
+- Sub-package Data::Dumper (bug #811239)
+
+* Tue Feb 21 2012 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-212
+- Sub-package Filter (bug #790349)
+
+* Mon Feb 06 2012 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-211
+- Fix searching for Unicode::Collate::Locale data (bug #756118)
+- Run safe signal handlers before returning from sigsuspend() and pause()
+  (bug #771228)
+- Correct perl-Scalar-List-Utils files list
+- Stop !$^V from leaking (bug #787613)
+
+* Tue Jan 10 2012 Paul Howarth <paul@city-fan.org> - 4:5.14.2-210
+- Rebuild again now that perl dependency generator is fixed (#772632, #772699)
+
+* Fri Jan 06 2012 Iain Arnell <iarnell@gmail.com> -4:5.14.2-209
+- perl-ExtUtils-MakeMaker sub-package requires ExtUtils::Install
+
+* Fri Jan  6 2012 Paul Howarth <paul@city-fan.org> - 4:5.14.2-208
+- Rebuild for gcc 4.7
+
+* Tue Dec 20 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-207
+- Fix interrupted reading. Thanks to Šimon Lukašík for reporting this issue
+  and thanks to Marcela Mašláňová for finding fix. (bug #767931)
+
+* Wed Dec 14 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-206
+- Fix leak with non-matching named captures (bug #767597)
+
+* Tue Nov 29 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-205
+- Sub-package ExtUtils::Install
+- Sub-package ExtUtils::Manifest
+- Do not provide private perl(ExtUtils::MakeMaker::_version)
+
+* Thu Nov 24 2011 Ville Skyttä <ville.skytta@iki.fi> - 4:5.14.2-204
+- Add $RPM_LD_FLAGS to lddlflags.
+
+* Wed Nov 23 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-203
+- Sub-package Socket
+
+* Mon Nov 21 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-202
+- Sub-package Pod::Perldoc
+
+* Fri Nov 18 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-201
+- Increase epoch of perl-Module-CoreList to overcome version regression in
+  upstream (bug #754641)
+
+* Thu Nov  3 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.2-200
+- perl(DBIx::Simple) is not needed in spec requirement in CPANPLUS. It's generated
+  automatically.
+
+* Wed Nov 02 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-199
+- Provide perl(DB) by perl
+
+* Mon Oct 24 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-198
+- Do not warn about missing site directories (bug #732799)
+
+* Thu Oct 20 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.2-197
+- cleaned spec (thanks to Grigory Batalov)
+-  Module-Metadata sub-package contained perl_privlib instead of privlib
+-  %%files parent section was repeated twice
+
+* Fri Oct 14 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-196
+- Filter false perl(DynaLoader) provide from perl-ExtUtils-MakeMaker
+  (bug #736714)
+- Change Perl_repeatcpy() prototype to allow repeat count above 2^31
+  (bug #720610)
+- Do not own site directories located in /usr/local (bug #732799)
+
+* Tue Oct 04 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-195
+- Fix CVE-2011-3597 (code injection in Digest) (bug #743010)
+- Sub-package Digest and thus Digest::MD5 module (bug #743247)
+
+* Tue Oct 04 2011 Iain Arnell <iarnell@gmail.com> 4:5.14.2-194
+- add provide for perl(:MODULE_COMPAT_5.14.2)
+
+* Mon Oct 03 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.2-193
+- 5.14.2 bump (see
+  https://metacpan.org/module/FLORA/perl-5.14.2/pod/perldelta.pod for release
+  notes).
+- Fixes panics when processing regular expression with \b class and /aa
+  modifier (bug #731062)
+- Fixes CVE-2011-2728 (File::Glob bsd_glob() crash with certain glob flags)
+  (bug #742987)
+
+* Mon Oct 03 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.1-192
+- Enable GDBM support again to build against new gdbm 1.9.1
+
+* Fri Sep 30 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.1-191
+- Disable NDBM support temporarily too as it's provided by gdbm package
+
+* Wed Sep 21 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.1-190
+- Disable GDBM support temporarily to build new GDBM
+
+* Thu Sep 15 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.1-189
+- Correct perl-CGI list of Provides
+- Make tests optional
+- Correct perl-ExtUtils-ParseXS Provides
+- Correct perl-Locale-Codes Provides
+- Correct perl-Module-CoreList version
+- Automate perl-Test-Simple-tests Requires version
+
+* Tue Sep 13 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.1-188
+- Make gdbm support optional to bootstrap with new gdbm
+- Split Carp into standalone sub-package to dual-live with newer versions
+  (bug #736768)
+
+* Tue Aug 30 2011 Petr Pisar <ppisar@redhat.com> - 4:5.14.1-187
+- Split Locale::Codes into standalone sub-package to dual-live with newer
+  versions (bug #717863)
+
+* Sun Aug 14 2011 Iain Arnell <iarnell@gmail.com> 4:5.14.1-186
+- perl needs to own vendorarch/auto directory
+
+* Fri Aug 05 2011 Petr Sabata <contyk@redhat.com> - 4:5.14.1-185
+- Move xsubpp to ExtUtils::ParseXS (#728393)
+
+* Fri Jul 29 2011 Iain Arnell <iarnell@gmail.com> 4:5.14.1-184
+- fix Compress-Raw-Bzip2 pacakging
+- ensure that we never bundle bzip2 or zlib
+
+* Tue Jul 26 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.1-183
+- remove from provides MODULE_COMPAT 5.12.*
+
+* Fri Jul 22 2011 Paul Howarth <paul@city-fan.org> - 4:5.14.1-182
+- Have perl-Module-Build explicitly require perl(CPAN::Meta) >= 2.110420,
+  needed for creation of MYMETA files by Build.PL; the dual-life version of
+  the package already has this dependency
+
+* Tue Jul 19 2011 Petr Sabata <contyk@redhat.com> - 4:5.14.1-181
+- Temporarily provide 5.12.* MODULE_COMPAT
+
+* Sat Jul 16 2011 Iain Arnell <iarnell@gmail.com> 4:5.14.1-180
+- fix escaping of the __provides_exclude_from macro
+
+* Wed Jul 13 2011 Iain Arnell <iarnell@gmail.com> 4:5.14.1-179
+- Parse-CPAN-Meta explicitly requires CPAN::Meta::YAML and JSON::PP
+- Exclude CPAN::Meta* from CPAN sub-package
+- Don't try to normalize CPAN-Meta, JSON-PP, and Parse-CPAN-Meta versions;
+  their dual-life packages aren't and have much higher numbers already
+
+* Mon Jun 27 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.1-178
+- update macros -> add %%perl_bootstrap 1 and example for readability
+- add into Module::Build dependency on perl-devel (contains macros.perl)
+- create new sub-package macros, because we need macros in minimal buildroot
+
+* Thu Jun 23 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.1-175
+- remove from macros BSD, because there exists BSD::Resources
+
+* Tue Jun 21 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.1-174
+- remove old MODULE_COMPATs
+
+* Mon Jun 20 2011 Iain Arnell <iarnell@gmail.com> 4:5.14.1-173
+- move ptargrep to Archive-Tar sub-package
+- fix version numbers in last two changelog entries
+
+* Mon Jun 20 2011 Paul Howarth <paul@city-fan.org> - 4:5.14.1-172
+- add provide for perl(:MODULE_COMPAT_5.14.1)
+
+* Mon Jun 20 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.1-171
+- update to 5.14.1 - no new modules, just serious bugfixes and doc
+- switch off fork test, which is failing only on koji
+
+* Thu Jun 16 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.0-170
+- try to update to latest ExtUtils::MakeMaker, no luck -> rebuild with current 
+  version, fix bug RT#67618 in modules
+
+* Wed Jun 15 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.0-169
+- filter even Mac:: requires, polish filter again for correct installation
+- add sub-package Compress-Raw-Bzip2, solve Bzip2 conflicts after install
+- and add IO::Uncompress::Bunzip2 correctly into IO-Compress
+
+* Mon Jun 13 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.0-167
+- Perl 5.14 mass rebuild, bump release, remove releases in subpackages
+
+* Thu Jun 09 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.0-165
+- Perl 5.14 mass rebuild
+
+* Thu Jun 09 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.0-163
+- Perl 5.14 mass rebuild
+
+* Thu Jun  9 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.0-162
+- add new sub-packages, remove BR in them
+
+* Wed Jun  1 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.0-161
+- arm can't do parallel builds
+- add require EE::MM into IPC::Cmd 711486
+
+* Mon May 16 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.14.0-161
+- test build of released 5.14.0
+- remove Class::ISA from sub-packages
+- patches 8+ are part of new release
+- remove vendorarch/auto/Compress/Zlib
+
+* Wed Apr 13 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.3-160
+- add provides UNIVERSAL and DB back into perl
+
+* Thu Apr 07 2011 Petr Pisar <ppisar@redhat.com> - 4:5.12.3-159
+- Remove rpath-make patch because we use --enable-new-dtags linker option
+
+* Fri Apr  1 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.3-158
+- 692900 - lc launders tainted flag, RT #87336
+
+* Fri Apr  1 2011 Robin Lee <cheeselee@fedoraproject.org> - 4:5.12.3-157
+- Cwd.so go to the PathTools sub-package
+
+* Tue Mar 15 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.3-156
+- sub-package Path-Tools
+
+* Sat Feb 19 2011 Iain Arnell <iarnell@gmail.com> 4:5.12.3-154
+- sub-package Scalar-List-Utils
+
+* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4:5.12.3-153
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Thu Jan 27 2011 Petr Pisar <ppisar@redhat.com> - 4:5.12.3-152
+- Document ExtUtils::ParseXS upgrade in local patch tracking
+
+* Wed Jan 26 2011 Tom Callaway <spot@fedoraproject.org> - 4:5.12.3-151
+- update ExtUtils::ParseXS to 2.2206 (current) to fix Wx build
+
+* Wed Jan 26 2011 Petr Pisar <ppisar@redhat.com> - 4:5.12.3-150
+- Make %%global perl_default_filter lazy
+- Do not hard-code tapsetdir path
+
+* Tue Jan 25 2011 Lukas Berk <lberk@redhat.com> - 4:5.12.3-149
+- added systemtap tapset to make use of systemtap-sdt-devel
+- added an example systemtap script
+
+* Mon Jan 24 2011 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.3-148
+- stable update 5.12.3
+- add COMPAT
+
+* Thu Dec  9 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.2-146
+- 463773 revert change. txt files are needed for example by UCD::Unicode,
+ PDF::API2,...
+
+* Thu Dec  9 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.2-145
+- required systemtap-sdt-devel on request in 661553
+
+* Mon Nov 29 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.2-144
+- create sub-package for CGI 3.49
+
+* Tue Nov 09 2010 Petr Pisar <ppisar@redhat.com> - 4:5.12.2-143
+- Sub-package perl-Class-ISA (bug #651317)
+
+* Mon Nov 08 2010 Petr Pisar <ppisar@redhat.com> - 4:5.12.2-142
+- Make perl(ExtUtils::ParseXS) version 4 digits long (bug #650882)
+
+* Tue Oct 19 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.2-141
+- 643447 fix redefinition of constant C in h2ph (visible in git send mail,
+  XML::Twig test suite)
+- remove ifdef for s390
+
+* Thu Oct 07 2010 Petr Pisar <ppisar@redhat.com> - 4:5.12.2-140
+- Package Test-Simple tests to dual-live with standalone package (bug #640752)
+ 
+* Wed Oct  6 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.2-139
+- remove removal of NDBM
+
+* Tue Oct 05 2010 Petr Pisar <ppisar@redhat.com> - 4:5.12.2-138
+- Consolidate Requires filtering
+- Consolidate libperl.so* Provides
+
+* Fri Oct  1 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.2-137
+- filter useless requires, provide libperl.so
+
+* Fri Oct 01 2010 Petr Pisar <ppisar@redhat.com> - 4:5.12.2-136
+- Reformat perl-threads description
+- Fix threads directories ownership
+
+* Thu Sep 30 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.2-135
+- sub-package threads
+
+* Thu Sep 23 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.2-134
+- add vendor path, clean paths in Configure in spec file
+- create sub-package threads-shared
+
+* Tue Sep  7 2010 Petr Pisar <ppisar@redhat.com> - 4:5.12.2-133
+- Do not leak when destroying thread (RT #77352, RHBZ #630667)
+
+* Tue Sep  7 2010 Petr Sabata <psabata@redhat.com> - 5:5.12.2-132
+- Fixing release number for modules
+
+* Tue Sep  7 2010 Petr Sabata <psabata@redhat.com> - 4:5.12.2-1
+- Update to 5.12.2
+- Removed one hardcoded occurence of perl version in build process
+- Added correct path to dtrace binary
+- BuildRequires: systemtap-sdt-devel
+
+* Tue Sep  7 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.1-131
+- run Configure with -Dusedtrace for systemtap support
+
+* Wed Aug 18 2010 Petr Pisar <ppisar@redhat.com> - 4:5.12.1-130
+- Run tests in parallel
+- Add "-Wl,--enable-new-dtags" to linker to allow to override perl's rpath by
+  LD_LIBRARY_PATH used in tests. Otherwise tested perl would link to old
+  in-system libperl.so.
+- Normalize spec file indentation
+
+* Mon Jul 26 2010  Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.1-129
+- 617956 move perlxs* docs files into perl-devel
+
+* Thu Jul 15 2010  Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.1-128
+- 614662 wrong perl-suidperl version in obsolete
+
+* Sun Jul 11 2010 Dan Horák <dan[at]danny.cz> - 4:5.12.1-127
+- add temporary compat provides needed on s390(x)
+
+* Fri Jul 09 2010 Petr Pisar <ppisar@redhat.com> - 4:5.12.1-126
+- Add Digest::SHA requirement to perl-CPAN and perl-CPANPLUS (bug #612563)
+
+* Thu Jul  8 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.1-125
+- 607505 add another dir into Module::Build (thanks to Paul Howarth)
+
+* Mon Jun 28 2010 Ralf Corsépius <corsepiu@fedoraproject.org> -  4:5.12.1-124
+- Address perl-Compress-Raw directory ownership (BZ 607881).
+
+* Thu Jun 10 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.1-123
+- remove patch with debugging symbols, which should be now ok without it
+- update to 5.12.1
+- MODULE_COMPAT
+
+* Tue Apr 27 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.0-122
+- packages in buildroot needs MODULE_COMPAT 5.10.1, add it back for rebuild
+
+* Sun Apr 25 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.0-121
+- rebuild with tests in test buildroot
+
+* Fri Apr 23 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.0-120-test
+- MODULE_COMPAT 5.12.0
+- remove BR man
+- clean configure
+- fix provides/requires in IO-Compress
+
+* Wed Apr 14 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.0-119.1
+- rebuild 5.12.0 without MODULE_COMPAT
+
+* Wed Apr 14 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.12.0-119
+- initial 5.12.0 build
+
+* Tue Apr  6 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.1-118
+- 463773 remove useless txt files from installation
+- 575842 remove PERL_USE_SAFE_PUTENV, use perl putenv
+
+* Tue Mar 16 2010 Chris Weyl <cweyl@alumni.drew.edu> - 4:5.10.1-117
+- package tests in their own subpackage
+
+* Mon Mar 15 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.1-116
+- add noarch into correct sub-packages
+- move Provides/Obsoletes into correct modules from main perl
+
+* Thu Mar 11 2010 Paul Howarth <paul@city-fan.org> - 4:5.10.1-115
+- restore missing version macros for Compress::Raw::Zlib, IO::Compress::Base
+  and IO::Compress::Zlib
+
+* Thu Mar 11 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.1-114
+- clean spec a little more
+- rebuild with new gdbm
+
+* Fri Mar  5 2010 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.1-112
+- fix license according to advice from legal
+- clean unused patches
+
+* Wed Feb 24 2010 Chris Weyl <cweyl@alumni.drew.edu> - 4:5.10.1-111
+- update subpackage tests macros to handle packages with an epoch properly
+
+* Fri Feb 05 2010 Chris Weyl <cweyl@alumni.drew.edu> - 4:5.10.1-110
+- add initial EXPERIMENTAL tests subpackage rpm macros to macros.perl
+
+* Tue Dec 22 2009 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.1-109
+- 547656 CVE-2009-3626 perl: regexp matcher crash on invalid UTF-8 characters  
+- 549306 version::Internals should be packaged in perl-version subpackage
+- Parse-CPAN-Meta updated and separate package is dead
+
+* Mon Dec 21 2009 Chris Weyl <cweyl@alumni.drew.edu> - 4:5.10.1-107
+- subpackage parent and Parse-CPAN-Meta; add them to core's dep list
+
+* Fri Dec 18 2009 Ralf Corsépius <corsepiu@fedoraproject.org> - 4:5.10.1-106
+- exclude "parent".
+
+* Fri Dec 18 2009 Ralf Corsépius <corsepiu@fedoraproject.org> - 4:5.10.1-105
+- exclude Parse-CPAN-Meta.
+
+* Mon Dec  7 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.1-104
+- do not pack Bzip2 manpages either (#544582)
+
+* Mon Dec  7 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.1-103
+- do not pack Bzip2 modules (#544582)
+- hack: cheat about Compress::Raw::Zlib version (#544582)
+
+* Thu Dec  3 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.1-102
+- switch off check for ppc64 and s390x
+- remove the hack for "make test," it is no longer needed
+
+* Thu Dec  3 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.1-101
+- be more careful with the libperl.so compatibility symlink (#543936)
+
+* Wed Dec  2 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.1-100
+- new upstream version
+- release number must be high, because of stale version numbers of some
+  of the subpackages
+- drop upstreamed patches
+- update the versions of bundled modules
+- shorten the paths in @INC
+- build without DEBUGGING
+- implement compatibility measures for the above two changes, for a short
+  transition period
+- provide perl(:MODULE_COMPAT_5.10.0), for that transition period only
+
+* Tue Dec  1 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-87
+- fix patch-update-Compress-Raw-Zlib.patch (did not patch Zlib.pm)
+- update Compress::Raw::Zlib to 2.023
+- update IO::Compress::Base, and IO::Compress::Zlib to 2.015 (#542645)
+
+* Mon Nov 30 2009 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-86
+- 542645 update IO-Compress-Base
+
+* Tue Nov 24 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-85
+- back out perl-5.10.0-spamassassin.patch (#528572)
+
+* Thu Oct 01 2009 Chris Weyl <cweyl@alumni.drew.edu> - 4:5.10.0-84
+- add /perl(UNIVERSAL)/d; /perl(DB)/d to perl_default_filter auto-provides
+  filtering
+
+* Thu Oct  1 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-83
+- update Storable to 2.21
+
+* Mon Aug 31 2009 Chris Weyl <cweyl@alumni.drew.edu> - 4:5.10.0-82
+- update our Test-Simple update to 0.92 (patch by Iain Arnell), #519417
+- update Module-Pluggable to 3.9
+
+* Thu Aug 27 2009 Chris Weyl <cweyl@alumni.drew.edu> - 4:5.10.0-81
+- fix macros.perl *sigh*
+
+* Mon Aug 24 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-80
+- Remove -DDEBUGGING=-g, we are not ready yet.
+
+* Fri Aug 21 2009 Chris Weyl <cweyl@alumni.drew.edu> - 4:5.10.0-79
+- add helper filtering macros to -devel, for perl-* package invocation
+  (#502402)
+
+* Fri Jul 31 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-78
+- Add configure option -DDEBUGGING=-g (#156113)
+
+* Tue Jul 28 2009 arcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-77
+- 510127 spam assassin suffer from tainted bug
+
+* Mon Jul 27 2009 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-76
+- 494773 much better swap logic to support reentrancy and fix assert failure (rt #60508)
+
+* Sat Jul 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4:5.10.0-75
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
+* Fri Jul 10 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-74
+- fix generated .ph files so that they no longer cause warnings (#509676)
+- remove PREREQ_FATAL from Makefile.PL's processed by miniperl
+- update to latest Scalar-List-Utils (#507378)
+- perl-skip-prereq.patch: skip more prereq declarations in Makefile.PL files
+
+* Tue Jul  7 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-73
+- re-enable tests
+
+* Tue Jul  7 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-72
+- move -DPERL_USE_SAFE_PUTENV to ccflags (#508496)
+
+* Mon Jun  8 2009 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-71
+- #504386 update of Compress::Raw::Zlib 2.020
+
+* Thu Jun  4 2009 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-70
+- update File::Spec (PathTools) to 3.30
+
+* Wed Jun  3 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-69
+- fix #221113, $! wrongly set when EOF is reached
+
+* Fri Apr 10 2009 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-68
+- do not use quotes in patchlevel.h; it breaks installation from cpan (#495183)
+
+* Tue Apr  7 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-67
+- update CGI to 3.43, dropping upstreamed perl-CGI-escape.patch
+
+* Tue Apr  7 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-66
+- fix CGI::escape for all strings (#472571)
+- perl-CGI-t-util-58.patch: Do not distort lib/CGI/t/util-58.t
+  http://rt.perl.org/rt3/Ticket/Display.html?id=64502
+
+* Fri Mar 27 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-65
+- Move the gargantuan Changes* collection to -devel (#492605)
+
+* Tue Mar 24 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-64
+- update module autodie
+
+* Mon Mar 23 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-63
+- update Digest::SHA (fixes 489221)
+
+* Wed Mar 11 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-62
+- drop 26_fix_pod2man_upgrade (don't need it)
+- fix typo in %%define ExtUtils_CBuilder_version
+
+* Wed Mar 11 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-61
+- apply Change 34507: Fix memory leak in single-char character class optimization
+- Reorder @INC, based on b9ba2fadb18b54e35e5de54f945111a56cbcb249
+- fix Archive::Extract to fix test failure caused by tar >= 1.21
+- Merge useful Debian patches
+
+* Tue Mar 10 2009 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-60
+- remove compatibility obsolete sitelib directories
+- use a better BuildRoot
+- drop a redundant mkdir in %%install
+- call patchlevel.h only once; rm patchlevel.bak
+- update modules Sys::Syslog, Module::Load::Conditional, Module::CoreList,
+  Test::Harness, Test::Simple, CGI.pm (dropping the upstreamed patch),
+  File::Path (that includes our perl-5.10.0-CVE-2008-2827.patch),
+  constant, Pod::Simple, Archive::Tar, Archive::Extract, File::Fetch,
+  File::Temp, IPC::Cmd, Time::HiRes, Module::Build, ExtUtils::CBuilder
+- standardize the patches for updating embedded modules
+- work around a bug in Module::Build tests bu setting TMPDIR to a directory
+  inside the source tree
+
+* Sun Mar 08 2009 Robert Scheck <robert@fedoraproject.org> - 4:5.10.0-59
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
+
+* Mon Feb 16 2009 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-58
+- add /usr/lib/perl5/site_perl to otherlibs (bz 484053)
+
+* Mon Feb 16 2009 Dennis Gilmore <dennis@ausil.us> - 4:5.10.0-57
+- build sparc64 without _smp_mflags
+
+* Sat Feb 07 2009 Dennis Gilmore <dennis@ausil.us> - 4:5.10.0-56
+- limit sparc builds to -j12
+
+* Tue Feb  3 2009 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-55
+- update IPC::Cmd to v 0.42
+
+* Mon Jan 19 2009 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-54
+- 455410 http://rt.perl.org/rt3/Public/Bug/Display.html?id=54934
+  Attempt to free unreferenced scalar fiddling with the symbol table
+  Keep the refcount of the globs generated by PerlIO::via balanced.
+
+* Mon Dec 22 2008 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-53
+- add missing XHTML.pm into Pod::Simple
+
+* Fri Dec 12 2008 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-52
+- 295021 CVE-2007-4829 perl-Archive-Tar directory traversal flaws
+- add another source for binary files, which test untaring links
+
+* Fri Nov 28 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-51
+- to fix Fedora bz 473223, which is really perl bug #54186 (http://rt.perl.org/rt3//Public/Bug/Display.html?id=54186)
+  we apply Changes 33640, 33881, 33896, 33897
+
+* Mon Nov 24 2008 Marcela Mašláňová <mmaslano@redhat.com> - 4:5.10.0-50
+- change summary according to RFC fix summary discussion at fedora-devel :)
+
+* Thu Oct 23 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-49
+- update File::Temp to 0.20
+
+* Sun Oct 12 2008 Lubomir Rintel <lkundrak@v3.sk> - 4:5.10.0-48
+- Include fix for rt#52740 to fix a crash when using Devel::Symdump and
+  Compress::Zlib together
+
+* Tue Oct 07 2008 Marcela Mašláňová <mmaslano@redhat.com> 4:5.10.0-47.fc10
+- rt#33242, rhbz#459918. Segfault after reblessing objects in Storable.
+- rhbz#465728 upgrade Simple::Pod to 3.07
+
+* Wed Oct  1 2008 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-46
+- also preserve the timestamp of AUTHORS; move the fix to the recode
+  function, which is where the stamps go wrong
+
+* Wed Oct  1 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-45
+- give Changes*.gz the same datetime to avoid multilib conflict
+
+* Wed Sep 17 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-44.fc10
+- remove Tar.pm from Archive-Extract
+- fix version of Test::Simple in spec
+- update Test::Simple
+- update Archive::Tar to 1.38
+
+* Tue Sep 16 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-43.fc10
+- 462444 update Test::Simple to 0.80
+
+* Thu Aug 14 2008 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-42.fc10
+- move libnet to the right directory, along Net/Config.pm
+
+* Wed Aug 13 2008 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-41.fc10
+- do not create directory .../%%{version}/auto
+
+* Tue Aug  5 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-40.fc10
+- 457867 remove required IPC::Run from CPANPLUS - needed only by win32
+- 457771 add path
+
+* Fri Aug  1 2008 Stepan Kasal <skasal@redhat.com> 4:5.10.0-39.fc10
+- CGI.pm bug in exists() on tied param hash (#457085)
+- move the enc2xs templates (../Encode/*.e2x) to -devel, (#456534)
+
+* Mon Jul 21 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-38
+- 455933 update to CGI-3.38
+- fix fuzz problems (patch6)
+- 217833 pos() function handle unicode characters correct
+
+* Thu Jul 10 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-36
+- rebuild for new db4 4.7
+
+* Wed Jul  9 2008 Stepan Kasal <skasal@redhat.com> 4:5.10.0-35
+- remove db4 require, it is handled automatically
+
+* Thu Jul  3 2008 Stepan Kasal <skasal@redhat.com> 4:5.10.0-34
+- 453646 use -DPERL_USE_SAFE_PUTENV. Without fail some modules f.e. readline.
+
+* Tue Jul  1 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-33
+- 451078 update Test::Harness to 3.12 for more testing. Removed verbose 
+test, new Test::Harness has possibly verbose output, but updated package
+has a lot of features f.e. TAP::Harness. Carefully watched all new bugs 
+related to tests!
+
+* Fri Jun 27 2008 Stepan Kasal <skasal@redhat.com> 4:5.10.0-32
+- bump the release number, so that it is not smaller than in F-9
+
+* Tue Jun 24 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-28
+- CVE-2008-2827 perl: insecure use of chmod in rmtree
+
+* Wed Jun 11 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-27
+- 447371 wrong access permission rt49003
+
+* Tue Jun 10 2008 Stepan Kasal <skasal@redhat.com> 4:5.10.0-26
+- make config parameter list consistent for 32bit and 64bit platforms,
+  add config option -Dinc_version_list=none (#448735)
+- use perl_archname consistently
+- cleanup of usage of *_lib macros in %%install
+
+* Fri Jun  6 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-25
+- 449577 rebuild for FTBFS
+
+* Mon May 26 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-24
+- 448392 upstream fix for assertion
+
+* Thu May 22 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-23
+- sparc64 breaks with the rpath hack patch applied
+
+* Mon May 19 2008 Marcela Maslanova <mmaslano@redhat.com>
+- 447142 upgrade CGI to 3.37 (this actually happened in -21 in rawhide.)
+
+* Sat May 17 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-21
+- sparc64 fails two tests under mysterious circumstances. we need to get the
+  rest of the tree moving, so we temporarily disable the tests on that arch.
+
+* Tue Mar 18 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-20
+- create the vendor_perl/%%{perl_version}/%%{perl_archname}/auto directory 
+  in %%{_libdir} so we own it properly
+
+* Tue Mar 18 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-19
+- fix CPANPLUS-Dist-Build Provides/Obsoletes (bz 437615)
+- bump version on Module-CoreList subpackage
+
+* Tue Mar 18 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-18
+- forgot to create the auto directory for multilib vendor_perl dirs
+
+* Tue Mar 18 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-17
+- own multilib vendor_perl directories
+- mark Module::CoreList patch in patchlevel.h
+
+* Tue Mar 18 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-16
+- 437817: RFE: Upgrade Module::CoreList to 2.14
+
+* Wed Mar 12 2008 Marcela Maslanova <mmaslano@redhat.com> 4:5.10.0-15
+- xsubpp now lives in perl-devel instead of perl.
+
+* Sat Mar  8 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-14
+- back out Archive::Extract patch, causing odd test failure
+
+* Sat Mar  8 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-13
+- add missing lzma test file
+
+* Fri Mar  7 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-12
+- conditionalize multilib patch report in patchlevel.h
+- Update Archive::Extract to 0.26
+- Update Module::Load::Conditional to 0.24
+
+* Fri Mar  7 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-11
+- only do it once, and do it for all our patches
+
+* Fri Mar  7 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-10
+- note 32891 in patchlevel.h
+
+* Fri Mar  7 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-9
+- get rid of bad conflicts on perl-File-Temp
+
+* Fri Mar  7 2008 Tom "spot" Callaway <tcallawa@redhat.com> 4:5.10.0-8
+- use /usr/local for sitelib/sitearch dirs
+- patch 32891 for significant performance improvement
+
+* Fri Feb 22 2008 Stepan Kasal <skasal@redhat.com> - 4:5.10.0-7
+- Add perl-File-Temp provides/obsoletes/conflicts (#433836),
+  reported by Bill McGonigle <bill@bfccomputing.com>
+- escape the macros in Jan 30 entry
+
+* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 4:5.10.0-6
+- Autorebuild for GCC 4.3
+
+* Wed Jan 30 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-5
+- disable some futime tests in t/io/fs.t because they started failing on x86_64
+  in the Fedora builders, and no one can figure out why. :/
+
+* Wed Jan 30 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-4
+- create %%{_prefix}/lib/perl5/vendor_perl/%%{perl_version}/auto and own it
+  in base perl (resolves bugzilla 214580)
+
+* Thu Jan 10 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-3
+- Update Sys::Syslog to 0.24, to fix test failures
+
+* Wed Jan 9 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-2
+- add some BR for tests
+
+* Tue Jan 8 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 4:5.10.0-1
+- 5.10.0 final
+- clear out all the unnecessary patches (down to 8 patches!)
+- get rid of super perl debugging mode
+- add new subpackages
+
+* Thu Nov 29 2007 Robin Norwood <rnorwood@redhat.com> - 4:5.10.0_RC2-0.1
+- first attempt at building 5.10.0
+
+