# - add the {O,N}DBM_File modules
# - `diagnostics.pm' (perl-base) requires `perldiag.pod' (perl-perldoc)
# move .pod file to -base or S: perl-perldoc in -base
-# - consider disabling ithreads by default; packages that require it:
-# maatkit (dunno, seems complicated), munin-plugins-muninexchange (fixable),
-# whohas (easy to fix), slimrat (no way to fix)
# - what about "prove" (binary+manual)? (conflicts with standalone Test-Harness)
# - patch MakeMaker to get rid of empty *.bs files (MM_Unix::dynamic_bs())
# - consider separating C/XS development files (*.h, libperl.so)
# - change all "R/BR: perl" to one of perl-{base,modules,devel}
#
# NOTE
-# - modules in 5.10.0: http://search.cpan.org/~rgarcia/perl-5.10.0/
+# - modules in 5.20.0: http://search.cpan.org/~rjbs/perl-5.20.0/
-%define abi 5.18.0
+%define abi 5.22.0
%define perlthread %{?with_threads:-thread-multi}
%define perl_privlib %{_datadir}/perl5/%{ver}
%define perl_vendorarch %{_libdir}/perl5/vendor_perl/%{abi}/%{_target_platform}%{perlthread}
# extract module version from source
-%define perl_modver() %([ -f %{SOURCE3} ] && awk -vp=%1 '$1 == p{print $3}' %{SOURCE3} || echo ERROR)
-%define perl_modversion() %([ -f %{SOURCE3} ] && awk -vp=%1 '$1 == p{m=$1; gsub(/::/, "-", m); printf("perl-%s = %s\\n", m, $3)}END{if (!m) printf("# Error looking up [%s]\\n", p)}' %{SOURCE3} || echo ERROR)
-
-%define ver 5.18.0
-%define rel 7
+%define perl_modver() %([ -f %{SOURCE3} ] && awk -vp=%1 '$1 == p { print $3 }' %{SOURCE3} || echo ERROR)
+%define perl_modverrel() %([ -f %{SOURCE3} ] && awk -vp=%1 -vr=%2 '$1 == p { print $3"-"r }' %{SOURCE3} || echo ERROR)
+%define perl_modversion() %([ -f %{SOURCE3} ] && awk -vp=%1 '$1 == p { m=$1; gsub(/::/, "-", m); printf("perl-%s = %s\\n", m, $3)}END{if (!m) printf("# Error looking up [%s]\\n", p) }' %{SOURCE3} || echo ERROR)
+%define perl_mod2ver() %([ -f %{SOURCE4} ] && awk -vp=%1 '$1 == p { print $4 }' %{SOURCE4} || echo ERROR)
+%define perl_mod2verrel() %([ -f %{SOURCE4} ] && awk -vp=%1 -vr=%2 '$1 == p { print $4"-"r }' %{SOURCE4} || echo ERROR)
+%define perl_mod2version() %([ -f %{SOURCE4} ] && awk -vp=%1 '$1 == p { m=$2; printf("perl-%s = %s\\n", p, $4)}END{if (!m) printf("# Error looking up [%s]\\n", p) }' %{SOURCE4} || echo ERROR)
+
+%define ver 5.22.0
+%define rel 2
Summary: Practical Extraction and Report Language (Perl)
Summary(cs.UTF-8): Programovací jazyk Perl
Summary(da.UTF-8): Programmeringssproget Perl
Epoch: 1
License: GPL v1+ or Artistic
Group: Development/Languages/Perl
-Source0: http://www.cpan.org/src/5.0/%{name}-%{ver}.tar.gz
-# Source0-md5: 197ce31e84936bc0a83b03b2ee714cff
+Source0: http://www.cpan.org/src/5.0/%{name}-%{ver}.tar.xz
+# Source0-md5: ff0f09b17de426eff323426cb140ee79
Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
# Source1-md5: de47d7893f49ad7f41ba69c78511c0db
Source2: %{name}.prov
Source3: %{name}-modules
+Source4: %{name}-modules2
Patch2: %{name}_580-errno_h-parsing.patch
Patch3: %{name}_581-soname.patch
Patch4: %{name}-test-noproc.patch
+# Test regen.t checks result of this patch.
+# To run test manually run, from BUILD/perl-*:
+# LD_LIBRARY_PATH=$(pwd) ./preload ./libperl.so ./perl t/porting/regen.t
+# Make sure sha output from test matches sha from uconfig.h
Patch5: %{name}_585-microperl_uconfig.patch
Patch6: %{name}-write-permissions.patch
Patch7: %{name}-t-syslog.patch
-Patch8: %{name}-fix-pointer-arithmetic.patch
+Patch8: %{name}-Destroy-GDBM-NDBM-ODBM-SDBM-_File-objects.patch
Patch9: %{name}-switch.patch
Patch10: %{name}-invalid-void-use.patch
URL: http://dev.perl.org/perl5/
Requires: %{perl_vendorarch}
Requires: %{perl_vendorlib}
Provides: perl(largefiles)
+Provides: %perl_mod2version IO-Compress
+Provides: %perl_mod2version PathTools
Provides: %perl_modversion File::Compare
-Provides: %perl_modversion File::Spec
Provides: %perl_modversion File::Temp
Provides: %perl_modversion IO
+Provides: %perl_modversion IO::Zlib
+Provides: %perl_modversion IPC::Cmd
Provides: %perl_modversion PerlIO::via::QuotedPrint
Provides: %perl_modversion Socket
Provides: %perl_modversion Tie::File
-Obsoletes: perl-File-Compare < %perl_modver File::Compare
-Obsoletes: perl-File-Spec < %perl_modver File::Spec
-Obsoletes: perl-File-Temp < %perl_modver File::Temp
-Obsoletes: perl-IO < %perl_modver IO
-Obsoletes: perl-PerlIO-via-QuotedPrint < %perl_modver PerlIO::via::QuotedPrint
-Obsoletes: perl-Socket < %perl_modver Socket
-Obsoletes: perl-Tie-File < %perl_modver Tie::File
+Provides: %perl_modversion Tie::RefHash
+Provides: %perl_modversion parent
+Obsoletes: perl-File-Compare < %perl_modverrel File::Compare 99
+Obsoletes: perl-File-Temp < %perl_modverrel File::Temp 99
+Obsoletes: perl-IO < %perl_modverrel IO 99
+Obsoletes: perl-IO-Compress < %perl_mod2verrel IO-Compress 99
+Obsoletes: perl-IO-Zlib < %perl_modverrel IO::Zlib 99
+Obsoletes: perl-IPC-Cmd < %perl_modverrel IPC::Cmd 99
+Obsoletes: perl-PathTools < %perl_mod2verrel PathTools 99
+Obsoletes: perl-PerlIO-via-QuotedPrint < %perl_modverrel PerlIO::via::QuotedPrint 99
+Obsoletes: perl-Socket < %perl_modverrel Socket 99
+Obsoletes: perl-Tie-File < %perl_modverrel Tie::File 99
+Obsoletes: perl-Tie-RefHash < %perl_modverrel Tie::RefHash 99
+Obsoletes: perl-parent < %perl_modverrel parent 99
Obsoletes: sperl
Conflicts: perl < 1:5.8.0
Provides: %perl_modversion CPAN
Provides: %perl_modversion CPAN::Meta
Provides: %perl_modversion CPAN::Meta::YAML
-Provides: %perl_modversion Devel::Peek
Provides: %perl_modversion Devel::PPPort
+Provides: %perl_modversion Devel::Peek
Provides: %perl_modversion ExtUtils::CBuilder
Provides: %perl_modversion ExtUtils::Command
Provides: %perl_modversion ExtUtils::Embed
Provides: %perl_modversion ExtUtils::MakeMaker
Provides: %perl_modversion ExtUtils::Manifest
Provides: %perl_modversion ExtUtils::ParseXS
-Provides: %perl_modversion Module::Build
-Obsoletes: perl-CPAN < %perl_modver CPAN
-Obsoletes: perl-CPAN-Meta < %perl_modver CPAN::Meta
-Obsoletes: perl-CPAN-Meta-YAML < %perl_modver CPAN::Meta::YAML
-Obsoletes: perl-Devel-Peek < %perl_modver Devel::Peek
-Obsoletes: perl-Devel-PPPort < %perl_modver Devel::PPPort
-Obsoletes: perl-ExtUtils-CBuilder < %perl_modver ExtUtils::CBuilder
-Obsoletes: perl-ExtUtils-Command < %perl_modver ExtUtils::Command
-Obsoletes: perl-ExtUtils-Embed < %perl_modver ExtUtils::Embed
-Obsoletes: perl-ExtUtils-Install < %perl_modver ExtUtils::Install
-Obsoletes: perl-ExtUtils-MakeMaker < %perl_modver ExtUtils::MakeMaker
-Obsoletes: perl-ExtUtils-Manifest < %perl_modver ExtUtils::Manifest
-Obsoletes: perl-ExtUtils-ParseXS < %perl_modver ExtUtils::ParseXS
-Obsoletes: perl-Module-Build < %perl_modver Module::Build
+Obsoletes: perl-CPAN < %perl_modverrel CPAN 99
+Obsoletes: perl-CPAN-Meta < %perl_modverrel CPAN::Meta 99
+Obsoletes: perl-CPAN-Meta-YAML < %perl_modverrel CPAN::Meta::YAML 99
+Obsoletes: perl-Devel-PPPort < %perl_modverrel Devel::PPPort 99
+Obsoletes: perl-Devel-Peek < %perl_modverrel Devel::Peek 99
+Obsoletes: perl-ExtUtils-CBuilder < %perl_modverrel ExtUtils::CBuilder 99
+Obsoletes: perl-ExtUtils-Command < %perl_modverrel ExtUtils::Command 99
+Obsoletes: perl-ExtUtils-Embed < %perl_modverrel ExtUtils::Embed 99
+Obsoletes: perl-ExtUtils-Install < %perl_modverrel ExtUtils::Install 99
+Obsoletes: perl-ExtUtils-MakeMaker < %perl_modverrel ExtUtils::MakeMaker 99
+Obsoletes: perl-ExtUtils-Manifest < %perl_modverrel ExtUtils::Manifest 99
+Obsoletes: perl-ExtUtils-ParseXS < %perl_modverrel ExtUtils::ParseXS 99
Obsoletes: perl-lib-devel
%description devel
Summary(pl.UTF-8): Moduły z podstawowej dystrybucji Perla
Group: Libraries
Requires: %{name}-base = %{epoch}:%{ver}-%{release}
+Suggests: perl-Encode >= 1:2.44
+Suggests: perl-Version-Requirements
+Provides: %perl_mod2version Scalar-List-Utils
Provides: %perl_modversion Archive::Tar
Provides: %perl_modversion Attribute::Handlers
-Provides: %perl_modversion CGI
Provides: %perl_modversion Compress::Raw::Bzip2
Provides: %perl_modversion Compress::Raw::Zlib
Provides: %perl_modversion Digest
Provides: %perl_modversion Locale::Codes
Provides: %perl_modversion Locale::Maketext
Provides: %perl_modversion Locale::Maketext::Simple
+Provides: %perl_modversion MIME::Base64
Provides: %perl_modversion Math::BigInt
+Provides: %perl_modversion Math::BigInt::FastCalc
Provides: %perl_modversion Math::BigRat
+Provides: %perl_modversion Math::Complex
Provides: %perl_modversion Math::Trig
Provides: %perl_modversion Memoize
-Provides: %perl_modversion MIME::Base64
Provides: %perl_modversion Module::CoreList
Provides: %perl_modversion Module::Load
Provides: %perl_modversion Module::Load::Conditional
Provides: %perl_modversion Module::Metadata
-Provides: %perl_modversion Module::Pluggable
Provides: %perl_modversion NEXT
+Provides: %perl_modversion Params::Check
Provides: %perl_modversion Parse::CPAN::Meta
Provides: %perl_modversion Perl::OSType
Provides: %perl_modversion Pod::Escapes
-Provides: %perl_modversion Pod::LaTeX
Provides: %perl_modversion Pod::Parser
Provides: %perl_modversion Pod::Simple
Provides: %perl_modversion Safe
Provides: %perl_modversion Test::Simple
Provides: %perl_modversion Text::Balanced
Provides: %perl_modversion Text::ParseWords
-Provides: %perl_modversion Text::Soundex
Provides: %perl_modversion Time::HiRes
Provides: %perl_modversion Time::Piece
+Provides: %perl_modversion UNIVERSAL
Provides: %perl_modversion Unicode::Collate
Provides: %perl_modversion Unicode::Normalize
-Provides: %perl_modversion UNIVERSAL
Provides: %perl_modversion bignum
Provides: %perl_modversion libnet
Provides: %perl_modversion version
-Obsoletes: perl-Archive-Tar < %perl_modver Archive::Tar
-Obsoletes: perl-Attribute-Handlers < %perl_modver Attribute::Handlers
-Obsoletes: perl-CGI < %perl_modver CGI
-Obsoletes: perl-Compress-Raw-Bzip2 < %perl_modver Compress::Raw::Bzip2
-Obsoletes: perl-Compress-Raw-Zlib < %perl_modver Compress::Raw::Zlib
-Obsoletes: perl-Digest < %perl_modver Digest
-Obsoletes: perl-Digest-MD5 < %perl_modver Digest::MD5
-Obsoletes: perl-Digest-SHA < %perl_modver Digest::SHA
-Obsoletes: perl-Filter-Simple < %perl_modver Filter::Simple
-Obsoletes: perl-FindBin < %perl_modver FindBin
-Obsoletes: perl-I18N-LangTags < %perl_modver I18N::LangTags
-Obsoletes: perl-IPC-SysV < %perl_modver IPC::SysV
-Obsoletes: perl-JSON-PP < %perl_modver JSON::PP
-Obsoletes: perl-Locale-Codes < %perl_modver Locale::Codes
-Obsoletes: perl-Locale-Maketext < %perl_modver Locale::Maketext
-Obsoletes: perl-Locale-Maketext-Simple < %perl_modver Locale::Maketext::Simple
-Obsoletes: perl-Math-BigInt < %perl_modver Math::BigInt
-Obsoletes: perl-Math-BigRat < %perl_modver Math::BigRat
-Obsoletes: perl-Math-Trig < %perl_modver Math::Trig
-Obsoletes: perl-Memoize < %perl_modver Memoize
-Obsoletes: perl-MIME-Base64 < %perl_modver MIME::Base64
-Obsoletes: perl-Module-CoreList < %perl_modver Module::CoreList
-Obsoletes: perl-Module-Load < %perl_modver Module::Load
-Obsoletes: perl-Module-Load-Conditional < %perl_modver Module::Load::Conditional
-Obsoletes: perl-Module-Metadata < %perl_modver Module::Metadata
-Obsoletes: perl-Module-Pluggable < %perl_modver Module::Pluggable
-Obsoletes: perl-NEXT < %perl_modver NEXT
-Obsoletes: perl-Parse-CPAN-Meta < %perl_modver Parse::CPAN::Meta
-Obsoletes: perl-Perl-OSType < %perl_modver Perl::OSType
-Obsoletes: perl-Pod-Escapes < %perl_modver Pod::Escapes
-Obsoletes: perl-Pod-LaTeX < %perl_modver Pod::LaTeX
-Obsoletes: perl-Pod-Parser < %perl_modver Pod::Parser
-Obsoletes: perl-Pod-Simple < %perl_modver Pod::Simple
-Obsoletes: perl-Safe < %perl_modver Safe
-Obsoletes: perl-Storable < %perl_modver Storable
-Obsoletes: perl-Sys-Syslog < %perl_modver Sys::Syslog
-Obsoletes: perl-Term-ANSIColor < %perl_modver Term::ANSIColor
-Obsoletes: perl-Term-Cap < %perl_modver Term::Cap
-Obsoletes: perl-Test < %perl_modver Test
-Obsoletes: perl-Test-Harness < %perl_modver Test::Harness
-Obsoletes: perl-Test-Simple < %perl_modver Test::Simple
-Obsoletes: perl-Text-Balanced < %perl_modver Text::Balanced
-Obsoletes: perl-Text-ParseWords < %perl_modver Text::ParseWords
-Obsoletes: perl-Text-Soundex < %perl_modver Text::Soundex
-Obsoletes: perl-Time-HiRes < %perl_modver Time::HiRes
-Obsoletes: perl-Time-Piece < %perl_modver Time::Piece
-Obsoletes: perl-Unicode-Collate < %perl_modver Unicode::Collate
-Obsoletes: perl-Unicode-Normalize < %perl_modver Unicode::Normalize
-Obsoletes: perl-UNIVERSAL < %perl_modver UNIVERSAL
-Obsoletes: perl-bignum < %perl_modver bignum
-Obsoletes: perl-libnet < %perl_modver libnet
-Obsoletes: perl-version < %perl_modver version
-Suggests: perl-Encode >= 1:2.44
-Suggests: perl-Version-Requirements
+Obsoletes: perl-Archive-Tar < %perl_modverrel Archive::Tar 99
+Obsoletes: perl-Attribute-Handlers < %perl_modverrel Attribute::Handlers 99
+Obsoletes: perl-Compress-Raw-Bzip2 < %perl_modverrel Compress::Raw::Bzip2 99
+Obsoletes: perl-Compress-Raw-Zlib < %perl_modverrel Compress::Raw::Zlib 99
+Obsoletes: perl-Digest < %perl_modverrel Digest 99
+Obsoletes: perl-Digest-MD5 < %perl_modverrel Digest::MD5 99
+Obsoletes: perl-Digest-SHA < %perl_modverrel Digest::SHA 99
+Obsoletes: perl-Filter-Simple < %perl_modverrel Filter::Simple 99
+Obsoletes: perl-FindBin < %perl_modverrel FindBin 99
+Obsoletes: perl-I18N-LangTags < %perl_modverrel I18N::LangTags 99
+Obsoletes: perl-IPC-SysV < %perl_modverrel IPC::SysV 99
+Obsoletes: perl-JSON-PP < %perl_modverrel JSON::PP 99
+Obsoletes: perl-Locale-Codes < %perl_modverrel Locale::Codes 99
+Obsoletes: perl-Locale-Maketext < %perl_modverrel Locale::Maketext 99
+Obsoletes: perl-Locale-Maketext-Simple < %perl_modverrel Locale::Maketext::Simple 99
+Obsoletes: perl-MIME-Base64 < %perl_modverrel MIME::Base64 99
+Obsoletes: perl-Math-BigInt < %perl_modverrel Math::BigInt 99
+Obsoletes: perl-Math-BigInt-FastCalc < %perl_modverrel Math::BigInt::FastCalc 99
+Obsoletes: perl-Math-BigRat < %perl_modverrel Math::BigRat 99
+Obsoletes: perl-Math-Complex < %perl_modverrel Math::Complex 99
+Obsoletes: perl-Math-Trig < %perl_modverrel Math::Trig 99
+Obsoletes: perl-Memoize < %perl_modverrel Memoize 99
+Obsoletes: perl-Module-CoreList < %perl_modverrel Module::CoreList 99
+Obsoletes: perl-Module-Load < %perl_modverrel Module::Load 99
+Obsoletes: perl-Module-Load-Conditional < %perl_modverrel Module::Load::Conditional 99
+Obsoletes: perl-Module-Metadata < %perl_modverrel Module::Metadata 99
+Obsoletes: perl-NEXT < %perl_modverrel NEXT 99
+Obsoletes: perl-Params::Check < %perl_modverrel Params::Check 99
+Obsoletes: perl-Parse-CPAN-Meta < %perl_modverrel Parse::CPAN::Meta 99
+Obsoletes: perl-Perl-OSType < %perl_modverrel Perl::OSType 99
+Obsoletes: perl-Pod-Escapes < %perl_modverrel Pod::Escapes 99
+Obsoletes: perl-Pod-Parser < %perl_modverrel Pod::Parser 99
+Obsoletes: perl-Pod-Simple < %perl_modverrel Pod::Simple 99
+Obsoletes: perl-Safe < %perl_modverrel Safe 99
+Obsoletes: perl-Scalar-List-Utils < %perl_mod2verrel Scalar-List-Utils 99
+Obsoletes: perl-Storable < %perl_modverrel Storable 99
+Obsoletes: perl-Sys-Syslog < %perl_modverrel Sys::Syslog 99
+Obsoletes: perl-Term-ANSIColor < %perl_modverrel Term::ANSIColor 99
+Obsoletes: perl-Term-Cap < %perl_modverrel Term::Cap 99
+Obsoletes: perl-Test < %perl_modverrel Test 99
+Obsoletes: perl-Test-Harness < %perl_modverrel Test::Harness 99
+Obsoletes: perl-Test-Simple < %perl_modverrel Test::Simple 99
+Obsoletes: perl-Text-Balanced < %perl_modverrel Text::Balanced 99
+Obsoletes: perl-Text-ParseWords < %perl_modverrel Text::ParseWords 99
+Obsoletes: perl-Time-HiRes < %perl_modverrel Time::HiRes 99
+Obsoletes: perl-Time-Piece < %perl_modverrel Time::Piece 99
+Obsoletes: perl-UNIVERSAL < %perl_modverrel UNIVERSAL 99
+Obsoletes: perl-Unicode-Collate < %perl_modverrel Unicode::Collate 99
+Obsoletes: perl-Unicode-Normalize < %perl_modverrel Unicode::Normalize 99
+Obsoletes: perl-bignum < %perl_modverrel bignum 99
+Obsoletes: perl-libnet < %perl_modverrel libnet 99
+Obsoletes: perl-version < %perl_modverrel version 99
Obsoletes: perl-lib
%description modules
%description tools
Various tools from the core Perl distribution:
-a2p - Awk to Perl translator
-find2perl - translate find command lines to Perl code
-psed, s2p - a stream editor
+encguess - guess encodning
and others.
%description tools -l pl.UTF-8
Różne narzędzia z podstawowej dystrybucji Perla:
-a2p - translator skryptów Awka do Perla
-find2perl - tłumaczenie linii poleceń programu find na kod w Perlu
-psed, s2p - edytor strumieniowy
+encguess - odgaduje kodowanie znaków
i inne.
%package tools-devel
Summary(pl.UTF-8): Narzędzia do przetwarzania plików w formacie POD
Group: Applications
Requires: %{name}-modules = %{epoch}:%{ver}-%{release}
+Requires: perl-Encode >= 2:2.49-%{ver}.%{rel}
%description tools-pod
Tools for manipulating files in the POD (Plain Old Documentation)
Summary: Encode - character encodings
Summary(pl.UTF-8): Encode - kodowania znaków
Version: %perl_modver Encode
+Release: %{ver}.%{rel}
+Epoch: 2
Group: Libraries
-Requires: %{name}-base = %{epoch}:%{ver}-%{release}
+Requires: %{name}-base = 1:%{ver}-%{rel}
Obsoletes: perl-Encode-compat
%description Encode
Summary: GDBM_File - Perl5 access to the gdbm library
Summary(pl.UTF-8): GDBM_File - dostęp do biblioteki gdbm w Perlu
Version: %perl_modver GDBM_File
-Epoch: 2
+Release: %{ver}.%{rel}
+Epoch: 3
Group: Libraries
-Requires: %{name}-base = 1:%{ver}-%{release}
+Requires: %{name}-base = 1:%{ver}-%{rel}
%description GDBM_File
GDBM_File is a module which allows Perl programs to make use of the
## use symlinks instead of hardlinks
%{__ln_s} -f perl%{ver} $RPM_BUILD_ROOT%{_bindir}/perl
%{__ln_s} -f c2ph $RPM_BUILD_ROOT%{_bindir}/pstruct
-%{__ln_s} -f psed $RPM_BUILD_ROOT%{_bindir}/s2p
## install directory needed by packages dependant on TAP::Harness
install -d $RPM_BUILD_ROOT%{perl_privlib}/TAP/Harness
cd "$owd"
## remove man pages for other operating systems
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/perl{aix,amiga,bs2000,ce,cygwin,dgux,dos}* \
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/perl{aix,amiga,bs2000,ce,cygwin,dos}* \
$RPM_BUILD_ROOT%{_mandir}/man1/perl{freebsd,hpux,macos,os2,os390}* \
$RPM_BUILD_ROOT%{_mandir}/man1/perl{qnx,solaris,vms,vos,win32}*
## We already have these *.pod files as man pages
%{__rm} $RPM_BUILD_ROOT%{perl_privlib}/{Encode,Test,Net,Locale{,/Maketext},version}/*.pod
-%{__rm} $RPM_BUILD_ROOT%{perl_privlib}/pod/a2p.pod
%{__rm} $RPM_BUILD_ROOT%{perl_privlib}/*.pod
%{__rm} $RPM_BUILD_ROOT%{perl_archlib}/*.pod
# cpan tools, we use rpm instead of cpan for managing packages (some search tool would be nice to have but...)
%{__rm} $RPM_BUILD_ROOT%{_bindir}/cpan*
%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/cpan*
-# others
-%{__rm} $RPM_BUILD_ROOT%{_bindir}/config_data
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/config_data*
owd=$(pwd)
%{__rm} $RPM_BUILD_ROOT%{_mandir}/README.perl-non-english-man-pages
-# update and check perl-modules file
+# update and check perl-modules files
echo '# Module versions from Perl %{ver} distribution.' > perl-modules
for m in $(awk '!/^#/ && !/^$/{print $1}' %{SOURCE3}); do
case $m in
- Devel::DProf)
-# + perl -ilib -MDevel::DProf -e print 'Devel-DProf = ',$Devel::DProf::VERSION
-# DProf: run perl with -d to use DProf.
-# Compilation failed in require.
-# BEGIN failed--compilation aborted.
- v=$(%{__perl} -e 'do "Devel/DProf.pm"; print $Devel::DProf::VERSION')
- ;;
libnet)
- v=$(awk '/^libnet /{print $2; exit}' cpan/libnet/Changes)
+ v=$(awk '/VERSION/ {print $3; exit}' cpan/libnet/Makefile.PL | tr -d "',")
+ ;;
+ # special cased since do eval on VERSION
+ ExtUtils::CBuilder|Compress::Raw::Bzip2|Compress::Raw::Zlib)
+ v=$(%{__perl} -M$m -e "print version->parse(\$$m::VERSION)->numify")
+ ;;
+ *)
+ v=$(%{__perl} -M$m -e "print \$$m::VERSION")
;;
+ esac
+ echo "$m = $v"
+done | LC_ALL=C sort >> perl-modules
+
+echo '# Non-straight named module versions from Perl %{ver} distribution.' > perl-modules2
+for m in $(awk '!/^#/ && !/^$/{print $1"!"$2}' %{SOURCE4}); do
+ mn="${m##*!}"
+ mp="${m%%!*}"
+ case $m in
*)
- v=$(%{__perl} -M$m -e "print $m->VERSION" )
+ v=$(%{__perl} -M$mn -e "print \$$mn::VERSION")
;;
esac
- echo "$m = $v" >> perl-modules
-done
+ echo "$mp $mn = $v"
+done | LC_ALL=C sort >> perl-modules2
-egrep -v '^([ ]*$|[;#])' %{SOURCE3} > .mods1
-egrep -v '^([ ]*$|[;#])' perl-modules > .mods2
-if ! cmp -s .mods1 .mods2; then
+if ! cmp -s %{SOURCE3} perl-modules; then
: %{SOURCE3} outdated with $(pwd)/perl-modules
exit 1
fi
-
-# remove empty .bs files
-find $RPM_BUILD_ROOT -name \*.bs -size 0 -print0 | xargs -0 %{__rm}
+if ! cmp -s %{SOURCE4} perl-modules2; then
+ : %{SOURCE4} outdated with $(pwd)/perl-modules2
+ exit 1
+fi
%clean
rm -rf $RPM_BUILD_ROOT
%{_mandir}/man3/constant.*
%{perl_privlib}/diagnostics.pm
%{_mandir}/man3/diagnostics.*
+%{perl_privlib}/experimental.pm
+%{_mandir}/man3/experimental.*
%{perl_privlib}/feature.pm
%{_mandir}/man3/feature.*
%{perl_privlib}/fields.pm
%attr(755,root,root) %{perl_archlib}/auto/Socket/*.so
%{_mandir}/man3/Socket.*
+%dir %{perl_archlib}/Sub
+%{perl_archlib}/Sub/Util.pm
+%{_mandir}/man3/Sub::Util*
+
%dir %{perl_archlib}/Tie
%dir %{perl_archlib}/Tie/Hash
%{perl_archlib}/Tie/Hash/NamedCapture.pm
%{perl_privlib}/DB.*
%{_mandir}/man3/DB.*
-%{perl_privlib}/inc
-%{_mandir}/man3/inc::latest*
-%{perl_privlib}/Module/Build*
-%{_mandir}/man3/Module::Build*
-
%{perl_archlib}/O.*
%{_mandir}/man3/O.*
%{_mandir}/man3/less.*
%{perl_privlib}/locale.pm
%{_mandir}/man3/locale.*
+%{perl_privlib}/meta_notation.pm
+%{perl_privlib}/ok.pm
+%{_mandir}/man3/ok.*
%{perl_privlib}/open.pm
%{_mandir}/man3/open.*
%{perl_privlib}/sigtrap.pm
%{perl_privlib}/utf8.pm
%{_mandir}/man3/utf8.*
%{perl_privlib}/version.pm
+%dir %{perl_privlib}/version
+%{perl_privlib}/version/regex.pm
+%{perl_privlib}/version/vpp.pm
%{_mandir}/man3/version*
%{perl_archlib}/attributes.pm
%dir %{perl_archlib}/auto/Compress/Raw
%dir %{perl_archlib}/auto/Compress/Raw/*/
%attr(755,root,root) %{perl_archlib}/auto/Compress/Raw/*/*.so
-%{perl_archlib}/auto/Compress/Raw/*/*.ix
%{_mandir}/man3/Compress*
%{perl_archlib}/Data
%attr(755,root,root) %{perl_archlib}/auto/Sys/*/*.so
%{_mandir}/man3/Sys::*
-%{perl_archlib}/Text
-%dir %{perl_archlib}/auto/Text
-%dir %{perl_archlib}/auto/Text/Soundex
-%attr(755,root,root) %{perl_archlib}/auto/Text/Soundex/*.so
-#%{_mandir}/man3/Text::Soundex* # listed later
-
%{perl_privlib}/Time
%{perl_archlib}/Time
%dir %{perl_archlib}/auto/Time
%{_mandir}/man3/Attribute*
%{perl_privlib}/Benchmark*
%{_mandir}/man3/Benchmark*
-%{perl_privlib}/CGI*
-%{_mandir}/man3/CGI*
%{perl_privlib}/Config
%{_mandir}/man3/Config::*
%{perl_privlib}/DirHandle*
%{_mandir}/man3/FindBin.*
%{perl_privlib}/JSON
%{_mandir}/man3/JSON*
-%{perl_privlib}/Log
-%{_mandir}/man3/Log::*
%{perl_privlib}/Locale
%{_mandir}/man3/Locale::*
%{perl_privlib}/Memoize*
%{perl_privlib}/Net/*.pm
%{perl_privlib}/Net/FTP
%{_mandir}/man3/Net::*
-%{perl_privlib}/Object
-%{_mandir}/man3/Object::*
-%{perl_privlib}/Package
-%{_mandir}/man3/Package::*
%{perl_privlib}/Params
%{_mandir}/man3/Params::*
%{perl_privlib}/Parse
%files tools
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/a2p
-%{_mandir}/man1/a2p.*
%attr(755,root,root) %{_bindir}/corelist
%{_mandir}/man1/corelist.*
-%attr(755,root,root) %{_bindir}/find2perl
-%{_mandir}/man1/find2perl.*
+%attr(755,root,root) %{_bindir}/encguess
+%{_mandir}/man1/encguess.*
%attr(755,root,root) %{_bindir}/instmodsh
%{_mandir}/man1/instmodsh.*
%attr(755,root,root) %{_bindir}/json_pp
%{_mandir}/man1/json_pp.*
%attr(755,root,root) %{_bindir}/libnetcfg
%{_mandir}/man1/libnetcfg.*
-%attr(755,root,root) %{_bindir}/psed
-%{_mandir}/man1/psed.*
%attr(755,root,root) %{_bindir}/ptar
%{_mandir}/man1/ptar.*
%attr(755,root,root) %{_bindir}/ptargrep
%{_mandir}/man1/ptargrep.*
%attr(755,root,root) %{_bindir}/ptardiff
%{_mandir}/man1/ptardiff.*
-%attr(755,root,root) %{_bindir}/s2p
-%{_mandir}/man1/s2p.*
%attr(755,root,root) %{_bindir}/shasum
%{_mandir}/man1/shasum.*
%attr(755,root,root) %{_bindir}/zipdetails