7e35ac
%global base_version 3.15
7e35ac
Name:           perl-Storable
7e35ac
Epoch:          1
7e35ac
Version:        3.21
7e35ac
Release:        457%{?dist}
7e35ac
Summary:        Persistence for Perl data structures
7e35ac
# Storable.pm:  GPL+ or Artistic
7e35ac
License:        GPL+ or Artistic
7e35ac
URL:            https://metacpan.org/release/Storable
7e35ac
Source0:        https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX/Storable-%{base_version}.tar.gz
7e35ac
# Fix deep cloning regular expression objects, RT#134179,
7e35ac
# in Perl upstream after 5.31.0
7e35ac
Patch0:         Storable-3.15-perl-134179-include-regexps-in-the-seen-objects-tabl.patch
7e35ac
# Fix array length check in a store hook, in Perl upstream after 5.31.2
7e35ac
Patch1:         Storable-3.16-Storable-make-count-large-enough.patch
7e35ac
# Fix a buffer overflow when processing a vstring longer than 2^31-1,
7e35ac
# Perl GH#17306, in perl upstream after 5.31.6
7e35ac
Patch2:         perl-5.31.6-disallow-vstring-magic-strings-over-2GB-1.patch
7e35ac
# Unbundled from perl 5.32.0
7e35ac
Patch3:         Storable-3.15-Upgrade-to-3.21.patch
7e35ac
BuildRequires:  gcc
7e35ac
BuildRequires:  make
7e35ac
BuildRequires:  perl-devel
7e35ac
BuildRequires:  perl-generators
7e35ac
BuildRequires:  perl-interpreter
7e35ac
BuildRequires:  perl(Config)
7e35ac
BuildRequires:  perl(Cwd)
7e35ac
BuildRequires:  perl(ExtUtils::MakeMaker) >= 6.76
7e35ac
BuildRequires:  perl(File::Copy)
7e35ac
BuildRequires:  perl(File::Spec) >= 0.8
7e35ac
BuildRequires:  perl(strict)
7e35ac
BuildRequires:  perl(warnings)
7e35ac
# Win32 not used on Linux
7e35ac
# Win32API::File not used on Linux
7e35ac
# Run-time:
7e35ac
BuildRequires:  perl(Carp)
7e35ac
BuildRequires:  perl(Exporter)
7e35ac
# Fcntl is optional, but locking is good
7e35ac
BuildRequires:  perl(Fcntl)
7e35ac
BuildRequires:  perl(IO::File)
7e35ac
# Log::Agent is optional
7e35ac
BuildRequires:  perl(XSLoader)
7e35ac
# Tests:
7e35ac
BuildRequires:  perl(base)
7e35ac
BuildRequires:  perl(bytes)
7e35ac
BuildRequires:  perl(File::Temp)
7e35ac
BuildRequires:  perl(integer)
7e35ac
BuildRequires:  perl(overload)
7e35ac
BuildRequires:  perl(utf8)
7e35ac
BuildRequires:  perl(Test::More)
7e35ac
BuildRequires:  perl(threads)
7e35ac
BuildRequires:  perl(Safe)
7e35ac
BuildRequires:  perl(Scalar::Util)
7e35ac
BuildRequires:  perl(Tie::Array)
7e35ac
# Optional tests:
7e35ac
# gzip not used
7e35ac
# Data::Dump not used
7e35ac
# Data::Dumper not used
7e35ac
BuildRequires:  perl(B::Deparse) >= 0.61
7e35ac
BuildRequires:  perl(Digest::MD5)
7e35ac
BuildRequires:  perl(Hash::Util)
7e35ac
# Test::LeakTrace omitted because it's not a core module requried for building
7e35ac
# core Storable.
7e35ac
BuildRequires:  perl(Tie::Hash)
7e35ac
Requires:       perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
7e35ac
Requires:       perl(Config)
7e35ac
# Fcntl is optional, but locking is good
7e35ac
Requires:       perl(Fcntl)
7e35ac
Requires:       perl(IO::File)
7e35ac
7e35ac
%{?perl_default_filter}
7e35ac
7e35ac
%description
7e35ac
The Storable package brings persistence to your Perl data structures
7e35ac
containing scalar, array, hash or reference objects, i.e. anything that
7e35ac
can be conveniently stored to disk and retrieved at a later time.
7e35ac
7e35ac
%prep
7e35ac
%setup -q -n Storable-%{base_version}
7e35ac
%patch0 -p3
7e35ac
%patch1 -p3
7e35ac
%patch2 -p3
7e35ac
%patch3 -p1
7e35ac
7e35ac
%build
7e35ac
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 OPTIMIZE="$RPM_OPT_FLAGS"
7e35ac
%{make_build}
7e35ac
7e35ac
%install
7e35ac
%{make_install}
7e35ac
find $RPM_BUILD_ROOT -type f -name '*.bs' -size 0 -delete
7e35ac
find $RPM_BUILD_ROOT -type f -name '*.3pm' -size 0 -delete
7e35ac
%{_fixperms} $RPM_BUILD_ROOT/*
7e35ac
7e35ac
%check
7e35ac
unset PERL_CORE PERL_TEST_MEMORY PERL_RUN_SLOW_TESTS
7e35ac
make test
7e35ac
7e35ac
%files
7e35ac
%doc ChangeLog README
7e35ac
%{perl_vendorarch}/auto/*
7e35ac
%{perl_vendorarch}/Storable*
7e35ac
%{_mandir}/man3/*
7e35ac
7e35ac
%changelog
7e35ac
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.21-457
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
7e35ac
7e35ac
* Mon Jun 22 2020 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.21-456
7e35ac
- Upgrade to 3.21 as provided in perl-5.32.0
7e35ac
7e35ac
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.15-443
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
7e35ac
7e35ac
* Mon Nov 25 2019 Petr Pisar <ppisar@redhat.com> - 1:3.15-442
7e35ac
- Fix a buffer overflow when processing a vstring longer than 2^31-1
7e35ac
  (Perl GH#17306)
7e35ac
7e35ac
* Thu Aug 08 2019 Petr Pisar <ppisar@redhat.com> - 1:3.15-441
7e35ac
- Fix array length check in a store hook
7e35ac
7e35ac
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.15-440
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
7e35ac
7e35ac
* Tue Jun 11 2019 Petr Pisar <ppisar@redhat.com> - 1:3.15-439
7e35ac
- Fix deep cloning regular expression objects (RT#134179)
7e35ac
7e35ac
* Thu May 30 2019 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.15-438
7e35ac
- Increase release to favour standalone package
7e35ac
7e35ac
* Wed Apr 24 2019 Petr Pisar <ppisar@redhat.com> - 1:3.15-1
7e35ac
- 3.15 bump
7e35ac
7e35ac
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.11-7
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
7e35ac
7e35ac
* Mon Jan 07 2019 Petr Pisar <ppisar@redhat.com> - 1:3.11-6
7e35ac
- Storable-3.11 source archive repackaged without a t/CVE-2015-1592.inc file
7e35ac
  (RT#133706)
7e35ac
7e35ac
* Mon Aug 27 2018 Petr Pisar <ppisar@redhat.com> - 1:3.11-5
7e35ac
- Fix recursion check (RT#133326)
7e35ac
7e35ac
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.11-4
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
7e35ac
7e35ac
* Tue Jun 26 2018 Jitka Plesnikova <jplesnik@redhat.com> - 1:3.11-3
7e35ac
- Perl 5.28 rebuild
7e35ac
7e35ac
* Tue Jun 05 2018 Petr Pisar <ppisar@redhat.com> - 1:3.11-2
7e35ac
- Do not package empty Storable::Limit(3pm) manual page
7e35ac
7e35ac
* Mon Apr 30 2018 Petr Pisar <ppisar@redhat.com> - 1:3.11-1
7e35ac
- 3.11 bump
7e35ac
7e35ac
* Mon Apr 23 2018 Petr Pisar <ppisar@redhat.com> - 1:3.09-1
7e35ac
- 3.09 bump
7e35ac
7e35ac
* Thu Apr 19 2018 Petr Pisar <ppisar@redhat.com> - 1:3.06-1
7e35ac
- 3.06 bump
7e35ac
7e35ac
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.62-396
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
7e35ac
7e35ac
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.62-395
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
7e35ac
7e35ac
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.62-394
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
7e35ac
7e35ac
* Sat Jun 03 2017 Jitka Plesnikova <jplesnik@redhat.com> - 1:2.62-393
7e35ac
- Perl 5.26 rebuild
7e35ac
7e35ac
* Thu May 11 2017 Petr Pisar <ppisar@redhat.com> - 1:2.62-1
7e35ac
- Upgrade to 2.62 as provided in perl-5.25.12
7e35ac
7e35ac
* Mon Feb 06 2017 Petr Pisar <ppisar@redhat.com> - 1:2.56-368
7e35ac
- Fix a stack buffer overflow in deserialization of hooks (RT#130635)
7e35ac
- Fix a memory leak of a class name from retrieve_hook() on an exception
7e35ac
  (RT#130635)
7e35ac
7e35ac
* Tue Dec 20 2016 Petr Pisar <ppisar@redhat.com> - 1:2.56-367
7e35ac
- Fix crash in Storable when deserializing malformed code reference
7e35ac
  (RT#68348, RT#130098)
7e35ac
7e35ac
* Wed Aug 03 2016 Jitka Plesnikova <jplesnik@redhat.com> - 1:2.56-366
7e35ac
- Avoid loading optional modules from default . (CVE-2016-1238)
7e35ac
7e35ac
* Sat May 14 2016 Jitka Plesnikova <jplesnik@redhat.com> - 1:2.56-365
7e35ac
- Increase release to favour standalone package
7e35ac
7e35ac
* Wed May 11 2016 Jitka Plesnikova <jplesnik@redhat.com> - 2.56-1
7e35ac
- 2.56 bump in order to dual-live with perl 5.24
7e35ac
7e35ac
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1:2.53-347
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
7e35ac
7e35ac
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:2.53-346
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
7e35ac
7e35ac
* Thu Jun 04 2015 Jitka Plesnikova <jplesnik@redhat.com> - 1:2.53-345
7e35ac
- Increase release to favour standalone package
7e35ac
7e35ac
* Wed Jun 03 2015 Jitka Plesnikova <jplesnik@redhat.com> - 1:2.53-2
7e35ac
- Perl 5.22 rebuild
7e35ac
7e35ac
* Wed May 06 2015 Petr Pisar <ppisar@redhat.com> - 1:2.53-1
7e35ac
- 2.53 bump in order to dual-live with perl 5.22
7e35ac
7e35ac
* Wed Sep 03 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1:2.51-4
7e35ac
- Increase Epoch to favour standalone package
7e35ac
7e35ac
* Tue Aug 26 2014 Jitka Plesnikova <jplesnik@redhat.com> - 2.51-3
7e35ac
- Perl 5.20 rebuild
7e35ac
7e35ac
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.51-2
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
7e35ac
7e35ac
* Mon Jul 07 2014 Petr Pisar <ppisar@redhat.com> - 2.51-1
7e35ac
- 2.51 bump
7e35ac
7e35ac
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.45-3
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
7e35ac
7e35ac
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.45-2
7e35ac
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
7e35ac
7e35ac
* Mon Jul 15 2013 Petr Pisar <ppisar@redhat.com> - 2.45-1
7e35ac
- 2.45 bump
7e35ac
7e35ac
* Fri Jul 12 2013 Petr Pisar <ppisar@redhat.com> - 2.39-3
7e35ac
- Link minimal build-root packages against libperl.so explicitly
7e35ac
7e35ac
* Tue Jun 11 2013 Petr Pisar <ppisar@redhat.com> - 2.39-2
7e35ac
- Do not export private libraries
7e35ac
7e35ac
* Fri May 24 2013 Petr Pisar <ppisar@redhat.com> 2.39-1
7e35ac
- Specfile autogenerated by cpanspec 1.78.