diff --git a/SPECS/perl-Archive-Extract.spec b/SPECS/perl-Archive-Extract.spec new file mode 100644 index 0000000..6c196cd --- /dev/null +++ b/SPECS/perl-Archive-Extract.spec @@ -0,0 +1,412 @@ +# Enable LZMA and XZ support via pure-Perl implementation +%if 0%{?rhel} +%bcond_with perl_Archive_Extract_enables_perl_xz +%else +%bcond_without perl_Archive_Extract_enables_perl_xz +%endif + +Name: perl-Archive-Extract +# Epoch to compete with core module from perl.spec +Epoch: 1 +Version: 0.80 +Release: 6%{?dist} +Summary: Generic archive extracting mechanism +License: GPL+ or Artistic +Group: Development/Libraries +URL: http://search.cpan.org/dist/Archive-Extract/ +Source0: http://www.cpan.org/authors/id/B/BI/BINGOS/Archive-Extract-%{version}.tar.gz +BuildArch: noarch +BuildRequires: findutils +BuildRequires: make +BuildRequires: perl-interpreter +BuildRequires: perl-generators +BuildRequires: perl(ExtUtils::MakeMaker) +BuildRequires: perl(strict) +# Run-time: +# Prefer Archive::Tar to suppress warnings, bug #1217352, CPAN RT#104121 +BuildRequires: perl(Archive::Tar) +BuildRequires: perl(Carp) +BuildRequires: perl(constant) +BuildRequires: perl(Cwd) +BuildRequires: perl(deprecate) +BuildRequires: perl(File::Basename) +BuildRequires: perl(File::Path) +BuildRequires: perl(File::Spec) >= 0.82 +BuildRequires: perl(FileHandle) +BuildRequires: perl(if) +BuildRequires: perl(IPC::Cmd) >= 0.64 +BuildRequires: perl(Locale::Maketext::Simple) +BuildRequires: perl(Module::Load::Conditional) >= 0.66 +BuildRequires: perl(Params::Check) >= 0.07 +BuildRequires: perl(vars) +# Tests: +BuildRequires: perl(Data::Dumper) +BuildRequires: perl(File::Spec::Unix) +BuildRequires: perl(lib) +BuildRequires: perl(Test::More) +Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version)) +Requires: perl(deprecate) +# Prefer Archive::Tar to suppress warnings, bug #1217352, CPAN RT#104121 +Requires: perl(Archive::Tar) +Requires: perl(File::Spec) >= 0.82 +Requires: perl(IPC::Cmd) >= 0.64 +Requires: perl(Module::Load::Conditional) >= 0.66 +Requires: perl(Params::Check) >= 0.07 +# Decompressors: +Requires: %{name}-bz2 +Requires: %{name}-gz +Requires: %{name}-lzma +Requires: %{name}-tar +Requires: %{name}-tbz +Requires: %{name}-tgz +Requires: %{name}-txz +Requires: %{name}-Z +Requires: %{name}-zip +Requires: %{name}-xz + +# Filter under-specified dependencies +%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\((File::Spec|IPC::Cmd|Module::Load::Conditional|Params::Check)\\)$ + +%description +Archive::Extract is a generic archive extraction mechanism. It allows you to +extract any archive file of the type .tar, .tar.gz, .gz, .Z, tar.bz2, .tbz, +.bz2, .zip, .xz,, .txz, .tar.xz, or .lzma without having to worry how it does +so, or use different interfaces for each type by using either perl modules, or +command-line tools on your system. + +# Decompressors: +# bz2: bunzip2 || IO::Uncompress::Bunzip2 +%package bz2-bunzip2 +Summary: Bzip2 decompressor for %{name} via bunzip2 +Provides: %{name}-bz2 +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: bzip2 +%description bz2-bunzip2 +%{summary}. + +%package bz2-IO-Uncompress-Bunzip2 +Summary: Bzip2 decompressor for %{name} via IO::Uncompress::Bunzip2 +Provides: %{name}-bz2 +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(IO::Uncompress::Bunzip2) +%description bz2-IO-Uncompress-Bunzip2 +%{summary}. + +# gz: gzip || Compress::Zlib +%package gz-gzip +Summary: Gzip decompressor for %{name} via gzip +Provides: %{name}-gz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: gzip +%description gz-gzip +%{summary}. + +%package gz-Compress-Zlib +Summary: Gzip decompressor for %{name} via Compress::Zlib +Provides: %{name}-gz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(Compress::Zlib) +%description gz-Compress-Zlib +%{summary}. + +# lzma: unlzma || IO::Uncompress::UnLzma || Compress::unLZMA +%package lzma-unlzma +Summary: Lzma decompressor for %{name} via unlzma +Provides: %{name}-lzma +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: xz-lzma-compat +%description lzma-unlzma +%{summary}. + +%if %{with perl_Archive_Extract_enables_perl_xz} +%package lzma-IO-Uncompress-UnLzma +Summary: Lzma decompressor for %{name} via IO::Uncompress::UnLzma +Provides: %{name}-lzma +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(IO::Uncompress::UnLzma) +# perl-Extract-Archive-lzma-Compress-unLZMA removed because Compress::unLZMA +# is not yet packaged +Obsoletes: perl-Archive-Extract-lzma-Compress-unLZMA < 1:0.80-6 +%description lzma-IO-Uncompress-UnLzma +%{summary}. +%endif + +%if %{with perl_Archive_Extract_enables_perl_xz} +# Compress::unLZMA not yet packaged +#%%package lzma-Compress-unLZMA +#Summary: Lzma decompressor for %%{name} via Compress::unLZMA +#Provides: %%{name}-lzma +#Requires: %%{name} = %%{epoch}:%%{version}-%%{release} +#Requires: perl(Compress::unLZMA) +#%%description lzma-Compress-unLZMA +#%%{summary}. +%endif + +# tar: tar || Archive::Tar +%package tar-tar +Summary: Tar decompressor for %{name} via tar +Provides: %{name}-tar +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: tar +%description tar-tar +%{summary}. + +%package tar-Archive-Tar +Summary: Tar decompressor for %{name} via Archive::Tar +Provides: %{name}-tar +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(Archive::Tar) +%description tar-Archive-Tar +%{summary}. + +# tbz: (tar && bunzip2) || (Archive::Tar && IO::Uncompress::Bunzip2) +%package tbz-tar-bunzip2 +Summary: Bzipped-tar decompressor for %{name} via tar an bunzip2 +Provides: %{name}-tbz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: tar +Requires: bzip2 +%description tbz-tar-bunzip2 +%{summary}. + +%package tbz-Archive-Tar-IO-Uncompress-Bunzip2 +Summary: Bzipped-tar decompressor for %{name} via Archive::Tar and IO::Uncompress::Bunzip2 +Provides: %{name}-tbz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(Archive::Tar) +Requires: perl(IO::Uncompress::Bunzip2) +%description tbz-Archive-Tar-IO-Uncompress-Bunzip2 +%{summary}. + +# tgz: (tar && gzip) || (Archive::Tar && (Compress::Zlib || IO::Zlib)) +%package tgz-tar-gzip +Summary: Gzipped-tar decompressor for %{name} via tar and gzip +Provides: %{name}-tgz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: tar +Requires: gzip +%description tgz-tar-gzip +%{summary}. + +%package tgz-Archive-Tar-Compress-Zlib +Summary: Gzipped-tar decompressor for %{name} via Archive::Tar and Compress::Zlib +Provides: %{name}-tgz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(Archive::Tar) +Requires: perl(Compress::Zlib) +%description tgz-Archive-Tar-Compress-Zlib +%{summary}. + +%package tgz-Archive-Tar-IO-Zlib +Summary: Gzipped-tar decompressor for %{name} via Archive::Tar and IO::Zlib +Provides: %{name}-tgz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(Archive::Tar) +Requires: perl(IO::Zlib) +%description tgz-Archive-Tar-IO-Zlib +%{summary}. + +# txz: (tar && unxz) || (Archive::Tar && IO::Uncompress::UnXz) +%package txz-tar-unxz +Summary: Xzed-tar decompressor for %{name} via tar and unxz +Provides: %{name}-txz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: tar +Requires: xz +%description txz-tar-unxz +%{summary}. + +%if %{with perl_Archive_Extract_enables_perl_xz} +%package txz-Archive-Tar-IO-Uncompress-UnXz +Summary: Xzed-tar decompressor for %{name} via Archive::Tar and IO::Uncompress::UnXz +Provides: %{name}-txz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(Archive::Tar) +Requires: perl(IO::Uncompress::UnXz) +%description txz-Archive-Tar-IO-Uncompress-UnXz +%{summary}. +%endif + +# Z: uncompress || Compress::Zlib +%package Z-uncompress +Summary: Z decompressor for %{name} via uncompress +Provides: %{name}-Z +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: ncompress +%description Z-uncompress +%{summary}. + +%package Z-Compress-Zlib +Summary: Z decompressor for %{name} via Compress::Zlib +Provides: %{name}-Z +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(Compress::Zlib) +%description Z-Compress-Zlib +%{summary}. + +# zip: unzip || Archive::Zip +%package zip-unzip +Summary: ZIP decompressor for %{name} via unzip +Provides: %{name}-zip +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: unzip +%description zip-unzip +%{summary}. + +%package zip-Archive-Zip +Summary: ZIP decompressor for %{name} via Archive::Zip +Provides: %{name}-zip +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(Archive::Zip) +%description zip-Archive-Zip +%{summary}. + +# xz: unxz || IO::Uncompress::UnXz +%package xz-unxz +Summary: Xz decompressor for %{name} via unxz +Provides: %{name}-xz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: xz +%description xz-unxz +%{summary}. + +%if %{with perl_Archive_Extract_enables_perl_xz} +%package xz-IO-Uncompress-UnXz +Summary: Xz decompressor for %{name} via IO::Uncompress::UnXz +Provides: %{name}-xz +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: perl(IO::Uncompress::UnXz) +%description xz-IO-Uncompress-UnXz +%{summary}. +%endif + +%prep +%setup -q -n Archive-Extract-%{version} + +%build +perl Makefile.PL INSTALLDIRS=vendor +make %{?_smp_mflags} + +%install +make pure_install DESTDIR=$RPM_BUILD_ROOT +find $RPM_BUILD_ROOT -type f -name .packlist -delete +%{_fixperms} $RPM_BUILD_ROOT/* + +%check +make test + +%files +%doc CHANGES README +%{perl_vendorlib}/* +%{_mandir}/man3/* + +%files bz2-bunzip2 +%files bz2-IO-Uncompress-Bunzip2 +%files gz-gzip +%files gz-Compress-Zlib +%files lzma-unlzma +%if %{with perl_Archive_Extract_enables_perl_xz} +%files lzma-IO-Uncompress-UnLzma +%endif +%if %{with perl_Archive_Extract_enables_perl_xz} +#%%files lzma-Compress-unLZMA +%endif +%files tar-tar +%files tar-Archive-Tar +%files tbz-tar-bunzip2 +%files tbz-Archive-Tar-IO-Uncompress-Bunzip2 +%files tgz-tar-gzip +%files tgz-Archive-Tar-Compress-Zlib +%files tgz-Archive-Tar-IO-Zlib +%files txz-tar-unxz +%if %{with perl_Archive_Extract_enables_perl_xz} +%files txz-Archive-Tar-IO-Uncompress-UnXz +%endif +%files Z-uncompress +%files Z-Compress-Zlib +%files zip-unzip +%files zip-Archive-Zip +%files xz-unxz +%if %{with perl_Archive_Extract_enables_perl_xz} +%files xz-IO-Uncompress-UnXz +%endif + +%changelog +* Thu Sep 06 2018 Petr Pisar - 1:0.80-6 +- Remove perl-Extract-Archive-lzma-Compress-unLZMA subpackage because + Compress::unLZMA is not packaged (bug #1625872) +- Remove perl-Archive-Extract-lzma-IO-Uncompress-UnLzma, + perl-Archive-Extract-txz-Archive-Tar-IO-Uncompress-UnXz, and + perl-Archive-Extract-xz-IO-Uncompress-UnXz subpackages (bug #1625872) + +* Thu Feb 08 2018 Fedora Release Engineering - 1:0.80-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 1:0.80-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sun Jun 04 2017 Jitka Plesnikova - 1:0.80-3 +- Perl 5.26 rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 1:0.80-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Jan 19 2017 Petr Pisar - 1:0.80-1 +- 0.80 bump + +* Fri Jul 29 2016 Petr Pisar - 1:0.78-1 +- 0.78 bump + +* Sat May 14 2016 Jitka Plesnikova - 1:0.76-3 +- Perl 5.24 rebuild + +* Thu Feb 04 2016 Fedora Release Engineering - 1:0.76-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Jul 07 2015 Petr Pisar - 1:0.76-1 +- 0.76 bump + +* Thu Jun 18 2015 Fedora Release Engineering - 1:0.74-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Wed Jun 03 2015 Jitka Plesnikova - 1:0.74-4 +- Perl 5.22 rebuild + +* Thu Apr 30 2015 Petr Pisar - 1:0.74-3 +- Fix a typo, unxz is provided by xz + +* Thu Apr 30 2015 Petr Pisar - 1:0.74-2 +- Prefer Archive::Tar (bug #1217352) + +* Fri Nov 21 2014 Petr Pisar - 1:0.74-1 +- 0.74 bump + +* Wed Aug 27 2014 Jitka Plesnikova - 1:0.72-3 +- Perl 5.20 rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 1:0.72-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu Jan 30 2014 Petr Pisar - 1:0.72-1 +- 0.72 bump + +* Mon Nov 18 2013 Petr Pisar - 1:0.70-1 +- 0.70 bump + +* Sat Aug 03 2013 Fedora Release Engineering - 1:0.68-291 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Mon Jul 15 2013 Petr Pisar - 1:0.68-290 +- Increase release to favour standalone package + +* Fri Jul 12 2013 Petr Pisar - 1:0.68-3 +- Perl 5.18 rebuild + +* Tue May 28 2013 Petr Pisar - 1:0.68-2 +- Correct typo in dependencies + +* Fri Mar 15 2013 Petr Pisar - 1:0.68-1 +- 0.68 bump + +* Mon Feb 11 2013 Petr Pisar 0.66-1 +- Specfile autogenerated by cpanspec 1.78.