|
|
f40119 |
# Don not run gnupg1 tests by default, they need network access
|
|
|
f40119 |
# (Socket::inet_aton('pool.sks-keyservers.net')).
|
|
|
f40119 |
%bcond_with perl_CPAN_enables_gnupg_test
|
|
|
f40119 |
# Run optional test
|
|
|
f40119 |
%if ! (0%{?rhel})
|
|
|
f40119 |
%bcond_without perl_CPAN_enables_optional_test
|
|
|
f40119 |
%else
|
|
|
f40119 |
%bcond_with perl_CPAN_enables_optional_test
|
|
|
f40119 |
%endif
|
|
|
f40119 |
|
|
|
f40119 |
%global cpan_version 2.16
|
|
|
f40119 |
|
|
|
f40119 |
Name: perl-CPAN
|
|
|
f40119 |
Version: 2.18
|
|
|
f40119 |
Release: 397%{?dist}
|
|
|
f40119 |
Summary: Query, download and build perl modules from CPAN sites
|
|
|
f40119 |
License: GPL+ or Artistic
|
|
|
f40119 |
URL: http://search.cpan.org/dist/CPAN/
|
|
|
f40119 |
Source0: http://www.cpan.org/authors/id/A/AN/ANDK/CPAN-%{cpan_version}.tar.gz
|
|
|
f40119 |
# Upgrade to CPAN-2.18 as provided in perl-5.25.12 to properly dual-live after
|
|
|
f40119 |
# upgrading perl to 5.26
|
|
|
f40119 |
Patch0: CPAN-2.16-Rebase-to-2.18-from-perl-5.25.12.patch
|
|
|
f40119 |
# Create site paths for the first time, bug #1158873, CPAN RT#99905
|
|
|
f40119 |
Patch1: CPAN-2.18-Attemp-to-create-site-library-directories-on-first-t.patch
|
|
|
f40119 |
# Change configuration directory name
|
|
|
f40119 |
Patch2: CPAN-2.18-Replace-configuration-directory-string-with-a-marke.patch
|
|
|
f40119 |
# Do not search cpan -j file in @INC, CPAN RT#116507, proposed in
|
|
|
f40119 |
# <https://github.com/andk/cpanpm/pull/105>
|
|
|
f40119 |
Patch3: CPAN-2.18-For-cpan-j-make-the-file-an-absolute-path.patch
|
|
|
f40119 |
BuildArch: noarch
|
|
|
f40119 |
BuildRequires: coreutils
|
|
|
f40119 |
BuildRequires: findutils
|
|
|
f40119 |
BuildRequires: make
|
|
|
f40119 |
BuildRequires: perl-interpreter
|
|
|
f40119 |
BuildRequires: perl-generators
|
|
|
f40119 |
BuildRequires: perl(Config)
|
|
|
f40119 |
BuildRequires: perl(ExtUtils::MakeMaker)
|
|
|
f40119 |
BuildRequires: perl(File::Basename)
|
|
|
f40119 |
BuildRequires: perl(File::Path)
|
|
|
f40119 |
BuildRequires: perl(strict)
|
|
|
f40119 |
BuildRequires: perl(vars)
|
|
|
f40119 |
BuildRequires: sed
|
|
|
f40119 |
# Optional:
|
|
|
f40119 |
BuildRequires: perl(File::Spec)
|
|
|
f40119 |
# YAML::Syck is not not used because @ST_PREFS is empty in Makefile.PL
|
|
|
f40119 |
|
|
|
f40119 |
# Run-time:
|
|
|
f40119 |
# Prefer Archive::Tar and Compress::Zlib over tar and gzip
|
|
|
f40119 |
BuildRequires: perl(Archive::Tar) >= 1.50
|
|
|
f40119 |
%if !%{defined perl_bootstrap}
|
|
|
f40119 |
# Prefer Archive::Zip over unzip
|
|
|
f40119 |
BuildRequires: perl(Archive::Zip)
|
|
|
f40119 |
%endif
|
|
|
f40119 |
BuildRequires: perl(autouse)
|
|
|
f40119 |
BuildRequires: perl(base)
|
|
|
f40119 |
BuildRequires: perl(Carp)
|
|
|
f40119 |
BuildRequires: perl(constant)
|
|
|
f40119 |
BuildRequires: perl(Compress::Zlib)
|
|
|
f40119 |
BuildRequires: perl(CPAN::Meta::Requirements) >= 2.121
|
|
|
f40119 |
BuildRequires: perl(Cwd)
|
|
|
f40119 |
BuildRequires: perl(Data::Dumper)
|
|
|
f40119 |
# Devel::Size not used at tests
|
|
|
f40119 |
BuildRequires: perl(DirHandle)
|
|
|
f40119 |
BuildRequires: perl(Dumpvalue)
|
|
|
f40119 |
BuildRequires: perl(Exporter)
|
|
|
f40119 |
# ExtUtils::Manifest not used at tests
|
|
|
f40119 |
BuildRequires: perl(Fcntl)
|
|
|
f40119 |
BuildRequires: perl(File::Copy)
|
|
|
f40119 |
BuildRequires: perl(File::Find)
|
|
|
f40119 |
# File::HomeDir 0.65 not used at tests
|
|
|
f40119 |
BuildRequires: perl(File::Spec::Functions)
|
|
|
f40119 |
BuildRequires: perl(File::Temp) >= 0.16
|
|
|
f40119 |
BuildRequires: perl(FileHandle)
|
|
|
f40119 |
BuildRequires: perl(Getopt::Std)
|
|
|
f40119 |
# HTTP::Date is optional, prefer in-core Time::Local
|
|
|
f40119 |
# HTTP::Request is optional
|
|
|
f40119 |
BuildRequires: perl(HTTP::Tiny) >= 0.005
|
|
|
f40119 |
BuildRequires: perl(if)
|
|
|
f40119 |
BuildRequires: perl(lib)
|
|
|
f40119 |
# local::lib is optional
|
|
|
f40119 |
# LWP is optional, prefer HTTP::Tiny and Net::FTP
|
|
|
f40119 |
# LWP::UserAgent is optional
|
|
|
f40119 |
# Mac::BuildTools not needed
|
|
|
f40119 |
# Mac::Files not needed
|
|
|
f40119 |
# Module::Signature is optional
|
|
|
f40119 |
# Net::Config not used at tests
|
|
|
f40119 |
# Net::FTP not used at tests
|
|
|
f40119 |
BuildRequires: perl(Net::Ping)
|
|
|
f40119 |
BuildRequires: perl(overload)
|
|
|
f40119 |
BuildRequires: perl(POSIX)
|
|
|
f40119 |
BuildRequires: perl(Safe)
|
|
|
f40119 |
BuildRequires: perl(Sys::Hostname)
|
|
|
f40119 |
BuildRequires: perl(Term::ReadLine)
|
|
|
f40119 |
BuildRequires: perl(Text::ParseWords)
|
|
|
f40119 |
BuildRequires: perl(Text::Wrap)
|
|
|
f40119 |
# Time::Local not used at tests
|
|
|
f40119 |
# URI not used at tests
|
|
|
f40119 |
# URI::Escape not used at tests
|
|
|
f40119 |
# URI::URL 0.08 is optional
|
|
|
f40119 |
# User::pwent not used at tests
|
|
|
f40119 |
BuildRequires: perl(warnings)
|
|
|
f40119 |
# Optional:
|
|
|
f40119 |
BuildRequires: perl(CPAN::Meta) >= 2.110350
|
|
|
f40119 |
# Crypt::OpenPGP not used at tests
|
|
|
f40119 |
# Digest::MD5 not used at tests
|
|
|
f40119 |
BuildRequires: perl(Digest::SHA)
|
|
|
f40119 |
# Keep MIME::Base64 optional
|
|
|
f40119 |
%if !%{defined perl_bootstrap}
|
|
|
f40119 |
BuildRequires: perl(Module::Build)
|
|
|
f40119 |
%endif
|
|
|
f40119 |
|
|
|
f40119 |
# Tests:
|
|
|
f40119 |
# CPAN::Checksums not used
|
|
|
f40119 |
BuildRequires: perl(FindBin)
|
|
|
f40119 |
BuildRequires: perl(Pod::Usage)
|
|
|
f40119 |
BuildRequires: perl(Test::More)
|
|
|
f40119 |
|
|
|
f40119 |
%if %{with perl_CPAN_enables_optional_test}
|
|
|
f40119 |
# Optional tests:
|
|
|
f40119 |
%if %{with perl_CPAN_enables_gnupg_test}
|
|
|
f40119 |
BuildRequires: %{_bindir}/gpg
|
|
|
f40119 |
# Digest::SHA1 not needed if Digest::SHA is available
|
|
|
f40119 |
# Digest::SHA::PurePerl not needed if Digest::SHA is available
|
|
|
f40119 |
%endif
|
|
|
f40119 |
%if !%{defined perl_bootstrap}
|
|
|
f40119 |
BuildRequires: perl(Expect)
|
|
|
f40119 |
%endif
|
|
|
f40119 |
BuildRequires: perl(Hash::Util)
|
|
|
f40119 |
%if !%{defined perl_bootstrap}
|
|
|
f40119 |
# Kwalify not yet packaged
|
|
|
f40119 |
%if %{with perl_CPAN_enables_gnupg_test}
|
|
|
f40119 |
BuildRequires: perl(Module::Signature) >= 0.66
|
|
|
f40119 |
%endif
|
|
|
f40119 |
BuildRequires: perl(Perl::Version)
|
|
|
f40119 |
%endif
|
|
|
f40119 |
%if %{with perl_CPAN_enables_gnupg_test}
|
|
|
f40119 |
BuildRequires: perl(Socket)
|
|
|
f40119 |
%endif
|
|
|
f40119 |
%if !%{defined perl_bootstrap}
|
|
|
f40119 |
BuildRequires: perl(Sort::Versions)
|
|
|
f40119 |
# Test::MinimumVersion not used
|
|
|
f40119 |
# Test::Perl::Critic not used
|
|
|
f40119 |
BuildRequires: perl(Test::Pod) >= 1.00
|
|
|
f40119 |
BuildRequires: perl(Test::Pod::Coverage) >= 0.18
|
|
|
f40119 |
BuildRequires: perl(YAML) >= 0.60
|
|
|
f40119 |
%endif
|
|
|
f40119 |
%endif
|
|
|
f40119 |
|
|
|
f40119 |
Requires: make
|
|
|
f40119 |
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
|
|
|
f40119 |
Requires: perl(Archive::Tar) >= 1.50
|
|
|
f40119 |
Requires: perl(CPAN::Meta::Requirements) >= 2.121
|
|
|
f40119 |
Requires: perl(Data::Dumper)
|
|
|
f40119 |
%if !%{defined perl_bootstrap}
|
|
|
f40119 |
Requires: perl(Devel::Size)
|
|
|
f40119 |
%endif
|
|
|
f40119 |
Requires: perl(ExtUtils::Manifest)
|
|
|
f40119 |
%if !%{defined perl_bootstrap}
|
|
|
f40119 |
Requires: perl(File::HomeDir) >= 0.65
|
|
|
f40119 |
%endif
|
|
|
f40119 |
Requires: perl(File::Temp) >= 0.16
|
|
|
f40119 |
Requires: perl(lib)
|
|
|
f40119 |
Requires: perl(Net::Config)
|
|
|
f40119 |
Requires: perl(Net::FTP)
|
|
|
f40119 |
Requires: perl(POSIX)
|
|
|
f40119 |
Requires: perl(Term::ReadLine)
|
|
|
f40119 |
Requires: perl(Time::Local)
|
|
|
f40119 |
%if !%{defined perl_bootstrap}
|
|
|
f40119 |
Requires: perl(URI)
|
|
|
f40119 |
Requires: perl(URI::Escape)
|
|
|
f40119 |
%endif
|
|
|
f40119 |
Requires: perl(User::pwent)
|
|
|
f40119 |
# Optional but highly recommended:
|
|
|
f40119 |
%if !%{defined perl_bootstrap}
|
|
|
f40119 |
# Prefer Archive::Zip over unzip
|
|
|
f40119 |
Requires: perl(Archive::Zip)
|
|
|
f40119 |
Requires: perl(Compress::Bzip2)
|
|
|
f40119 |
Requires: perl(CPAN::Meta) >= 2.110350
|
|
|
f40119 |
%endif
|
|
|
f40119 |
Requires: perl(Compress::Zlib)
|
|
|
f40119 |
Requires: perl(Digest::MD5)
|
|
|
f40119 |
# CPAN encourages Digest::SHA strongly because of integrity checks
|
|
|
f40119 |
Requires: perl(Digest::SHA)
|
|
|
f40119 |
Requires: perl(Dumpvalue)
|
|
|
f40119 |
Requires: perl(ExtUtils::CBuilder)
|
|
|
f40119 |
%if ! %{defined perl_bootstrap}
|
|
|
f40119 |
# Avoid circular deps local::lib -> Module::Install -> CPAN when bootstraping
|
|
|
f40119 |
# local::lib recommended by CPAN::FirstTime default choice, bug #1122498
|
|
|
f40119 |
Requires: perl(local::lib)
|
|
|
f40119 |
%endif
|
|
|
f40119 |
%if ! %{defined perl_bootstrap}
|
|
|
f40119 |
Requires: perl(Module::Build)
|
|
|
f40119 |
Recommends: perl(Term::ReadKey)
|
|
|
f40119 |
Requires: perl(Text::Glob)
|
|
|
f40119 |
# Text::Levenshtein::XS or Text::Levenshtein::Damerau::XS or Text::Levenshtein
|
|
|
f40119 |
# or Text::Levenshtein::Damerau::PP
|
|
|
f40119 |
Suggests: perl(Text::Levenshtein::Damerau::XS)
|
|
|
f40119 |
# YAML::Syck or YAML or Data::Dumper
|
|
|
f40119 |
Suggests: perl(YAML::Syck)
|
|
|
f40119 |
%endif
|
|
|
f40119 |
Provides: cpan = %{version}
|
|
|
f40119 |
|
|
|
f40119 |
# Filter non-Linux dependencies
|
|
|
f40119 |
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\(Mac::BuildTools\\)
|
|
|
f40119 |
# Filter under-specified dependencies
|
|
|
f40119 |
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\(CPAN::Meta::Requirements\\)
|
|
|
f40119 |
|
|
|
f40119 |
|
|
|
f40119 |
%description
|
|
|
f40119 |
The CPAN module automates or at least simplifies the make and install of
|
|
|
f40119 |
perl modules and extensions. It includes some primitive searching
|
|
|
f40119 |
capabilities and knows how to use LWP, HTTP::Tiny, Net::FTP and certain
|
|
|
f40119 |
external download clients to fetch distributions from the net.
|
|
|
f40119 |
|
|
|
f40119 |
%prep
|
|
|
f40119 |
%setup -q -n CPAN-%{cpan_version}
|
|
|
f40119 |
%patch0 -p1
|
|
|
f40119 |
%patch1 -p1
|
|
|
f40119 |
%patch2 -p1
|
|
|
f40119 |
%patch3 -p1
|
|
|
f40119 |
# Change configuration name
|
|
|
f40119 |
find -type f -exec sed -i -e 's/XCPANCONFIGNAMEX/cpan/g' {} \;
|
|
|
f40119 |
# Remove bundled modules
|
|
|
f40119 |
rm -r ./inc/*
|
|
|
f40119 |
sed -i -e '/inc\//d' MANIFEST
|
|
|
f40119 |
|
|
|
f40119 |
%build
|
|
|
f40119 |
perl Makefile.PL INSTALLDIRS=vendor
|
|
|
f40119 |
make %{?_smp_mflags}
|
|
|
f40119 |
|
|
|
f40119 |
%install
|
|
|
f40119 |
make pure_install DESTDIR=$RPM_BUILD_ROOT
|
|
|
f40119 |
find $RPM_BUILD_ROOT -type f -name .packlist -delete
|
|
|
f40119 |
%{_fixperms} $RPM_BUILD_ROOT/*
|
|
|
f40119 |
|
|
|
f40119 |
%check
|
|
|
f40119 |
make test
|
|
|
f40119 |
|
|
|
f40119 |
%files
|
|
|
f40119 |
%doc Changes PAUSE*.pub README Todo
|
|
|
f40119 |
%{_bindir}/*
|
|
|
f40119 |
%{perl_vendorlib}/*
|
|
|
f40119 |
%{_mandir}/man1/*
|
|
|
f40119 |
%{_mandir}/man3/*
|
|
|
f40119 |
|
|
|
f40119 |
%changelog
|
|
|
f40119 |
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.18-397
|
|
|
f40119 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
f40119 |
|
|
|
f40119 |
* Tue Dec 19 2017 Petr Pisar <ppisar@redhat.com> - 2.18-396
|
|
|
f40119 |
- Rebase patches to prevent from installing back-up files
|
|
|
f40119 |
|
|
|
f40119 |
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.18-395
|
|
|
f40119 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
|
f40119 |
|
|
|
f40119 |
* Wed Jun 07 2017 Jitka Plesnikova <jplesnik@redhat.com> - 2.18-394
|
|
|
f40119 |
- Perl 5.26 re-rebuild of bootstrapped packages
|
|
|
f40119 |
|
|
|
f40119 |
* Sat Jun 03 2017 Jitka Plesnikova <jplesnik@redhat.com> - 2.18-393
|
|
|
f40119 |
- Perl 5.26 rebuild
|
|
|
f40119 |
|
|
|
f40119 |
* Fri May 12 2017 Jitka Plesnikova <jplesnik@redhat.com> - 2.18-2
|
|
|
f40119 |
- Don't BR: perl(Module::Build) when bootstrapping
|
|
|
f40119 |
|
|
|
f40119 |
* Wed May 10 2017 Petr Pisar <ppisar@redhat.com> - 2.18-1
|
|
|
f40119 |
- Upgrade to CPAN-2.18 as provided in perl-5.25.12
|
|
|
f40119 |
|
|
|
f40119 |
* Wed Feb 15 2017 Petr Pisar <ppisar@redhat.com> - 2.16-1
|
|
|
f40119 |
- 2.16 bump
|
|
|
f40119 |
|
|
|
f40119 |
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.14-5
|
|
|
f40119 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
|
|
f40119 |
|
|
|
f40119 |
* Mon Jan 09 2017 Petr Pisar <ppisar@redhat.com> - 2.14-4
|
|
|
f40119 |
- Use Perl porter's fix for searching cpan -j file (CPAN RT#116507)
|
|
|
f40119 |
- Fix logging fatal errors (https://github.com/andk/cpanpm/pull/104)
|
|
|
f40119 |
|
|
|
f40119 |
* Tue Oct 18 2016 Petr Pisar <ppisar@redhat.com> - 2.14-3
|
|
|
f40119 |
- Apply remains of CVE-2016-1238 fix from perl (CPAN RT#116507)
|
|
|
f40119 |
- Do not search cpan -j file in @INC (CPAN RT#116507)
|
|
|
f40119 |
|
|
|
f40119 |
* Wed Oct 12 2016 Petr Pisar <ppisar@redhat.com> - 2.14-2
|
|
|
f40119 |
- Fix CVE-2016-1238 properly (CPAN RT#116507)
|
|
|
f40119 |
|
|
|
f40119 |
* Mon Jun 27 2016 Petr Pisar <ppisar@redhat.com> - 2.14-1
|
|
|
f40119 |
- 2.14 bump
|
|
|
f40119 |
- Fix installation from a working directory (CPAN RT#115734)
|
|
|
f40119 |
- Fix "cpan -O" invocation (CPAN RT#115786)
|
|
|
f40119 |
- Do not use Net::FTP if ftp_proxy variable points to an HTTP server
|
|
|
f40119 |
(CPAN RT#110833)
|
|
|
f40119 |
- Recognize URL schemata disregarding the case
|
|
|
f40119 |
- Fix CVE-2016-1238 (loading optional modules from current working directory)
|
|
|
f40119 |
- Recognize exact version dependency operator (CPAN RT#47934)
|
|
|
f40119 |
- Cope with non-digit version strings
|
|
|
f40119 |
|
|
|
f40119 |
* Wed May 18 2016 Jitka Plesnikova <jplesnik@redhat.com> - 2.11-366
|
|
|
f40119 |
- Perl 5.24 re-rebuild of bootstrapped packages
|
|
|
f40119 |
|
|
|
f40119 |
* Sat May 14 2016 Jitka Plesnikova <jplesnik@redhat.com> - 2.11-365
|
|
|
f40119 |
- Increase release to favour standalone package
|
|
|
f40119 |
|
|
|
f40119 |
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.11-349
|
|
|
f40119 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
|
|
f40119 |
|
|
|
f40119 |
* Tue Dec 15 2015 Petr Pisar <ppisar@redhat.com> - 2.11-348
|
|
|
f40119 |
- Require make package
|
|
|
f40119 |
|
|
|
f40119 |
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.11-347
|
|
|
f40119 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
|
|
f40119 |
|
|
|
f40119 |
* Wed Jun 10 2015 Jitka Plesnikova <jplesnik@redhat.com> - 2.11-346
|
|
|
f40119 |
- Perl 5.22 re-rebuild of bootstrapped packages
|
|
|
f40119 |
|
|
|
f40119 |
* Thu Jun 04 2015 Jitka Plesnikova <jplesnik@redhat.com> - 2.11-345
|
|
|
f40119 |
- Increase release to favour standalone package
|
|
|
f40119 |
|
|
|
f40119 |
* Thu Jun 04 2015 Jitka Plesnikova <jplesnik@redhat.com> - 2.11-2
|
|
|
f40119 |
- Perl 5.22 rebuild
|
|
|
f40119 |
|
|
|
f40119 |
* Wed May 06 2015 Petr Pisar <ppisar@redhat.com> - 2.11-1
|
|
|
f40119 |
- 2.11 bump in order to dual-live with perl 5.22
|
|
|
f40119 |
|
|
|
f40119 |
* Fri Mar 13 2015 Petr Pisar <ppisar@redhat.com> - 2.10-1
|
|
|
f40119 |
- 2.10 bump
|
|
|
f40119 |
|
|
|
f40119 |
* Wed Jan 28 2015 Petr Pisar <ppisar@redhat.com> - 2.05-309
|
|
|
f40119 |
- Allow changing the configuration directory name
|
|
|
f40119 |
|
|
|
f40119 |
* Thu Oct 30 2014 Petr Pisar <ppisar@redhat.com> - 2.05-308
|
|
|
f40119 |
- Create site paths for the first time (bug #1158873)
|
|
|
f40119 |
|
|
|
f40119 |
* Wed Sep 10 2014 Petr Pisar <ppisar@redhat.com> 2.05-307
|
|
|
f40119 |
- Synchronize to perl.spec modifications
|
|
|
f40119 |
- Disable non-core modules when bootstrapping
|
|
|
f40119 |
|
|
|
f40119 |
* Tue Apr 22 2014 Petr Pisar <ppisar@redhat.com> 2.05-1
|
|
|
f40119 |
- Specfile autogenerated by cpanspec 1.78.
|