]> git.pld-linux.org Git - packages/perl.git/blobdiff - perl.spec
- obsolete old versions of provided modules
[packages/perl.git] / perl.spec
index bb3538c1472d05e523abac32255d50e7da04ae2c..6c88bdfa11895ce5c07606568c5bede6e47aeb3f 100644 (file)
--- a/perl.spec
+++ b/perl.spec
@@ -1,6 +1,3 @@
-# unpackaged:
-#   /usr/lib/perl5/5.10.0/i686-pld-linux-thread-multi/.packlist
-#   /usr/lib/perl5/5.10.0/i686-pld-linux-thread-multi/auto/sdbm/extralibs.ld
 #
 # Conditional build:
 %bcond_without tests           # do not perform "make test"
@@ -9,16 +6,19 @@
 %bcond_with    microperl       # build microperl (needs fixing)
 #
 # TODO:
-# - fix "FIXME"s, review "XXX"s
+# - fix "FIXME"s
 # - 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
+# - 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)
 #   and perl development modules (like MakeMaker, Devel...)
-# - subpackage for perl-ExtUtils-MakeMaker, (instmodsh conflicts with perl-ExtUtils-MakeMaker)
+# - subpackage for perl-ExtUtils-MakeMaker, (instmodsh conflicts with
+#   perl-ExtUtils-MakeMaker)
 # - resolve ugly perl-base/perl-dirs dependency loop
 #   (in fact perl-dirs dep in perl-base could be dropped and perl-dirs
 #    deps in external modules autogenerated - perhaps with proper ">= version")
@@ -29,7 +29,7 @@
 # NOTE
 # - modules in 5.10.0: http://search.cpan.org/~rgarcia/perl-5.10.0/
 
-%define                abi     5.12.0
+%define                abi     5.18.0
 %define                perlthread      %{?with_threads:-thread-multi}
 
 %define                perl_privlib    %{_datadir}/perl5/%{ver}
@@ -43,8 +43,8 @@
 %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.12.0
-%define                rel     0.1
+%define                ver     5.18.0
+%define                rel     5
 Summary:       Practical Extraction and Report Language (Perl)
 Summary(cs.UTF-8):     Programovací jazyk Perl
 Summary(da.UTF-8):     Programmeringssproget Perl
@@ -72,8 +72,8 @@ Release:      %{rel}%{!?with_threads:_nothr}
 Epoch:         1
 License:       GPL v1+ or Artistic
 Group:         Development/Languages/Perl
-Source0:       http://www.cpan.org/modules/by-authors/id/J/JE/JESSE/%{name}-%{ver}.tar.bz2
-# Source0-md5: 3e15696f4160775a90f6b2fb3ccc98c2
+Source0:       http://www.cpan.org/src/5.0/%{name}-%{ver}.tar.gz
+# Source0-md5: 197ce31e84936bc0a83b03b2ee714cff
 Source1:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
 # Source1-md5: de47d7893f49ad7f41ba69c78511c0db
 Source2:       %{name}.prov
@@ -83,8 +83,8 @@ Patch3:               %{name}_581-soname.patch
 Patch4:                %{name}-test-noproc.patch
 Patch5:                %{name}_585-microperl_uconfig.patch
 Patch6:                %{name}-write-permissions.patch
-Patch7:                %{name}-timer-test.patch
-Patch9:                %{name}-t-syslog.patch
+Patch7:                %{name}-t-syslog.patch
+Patch8:                %{name}-fix-pointer-arithmetic.patch
 URL:           http://dev.perl.org/perl5/
 %ifarch ppc
 # gcc 3.3.x miscompiles pp_hot.c
@@ -93,6 +93,7 @@ BuildRequires:        gcc >= 5:4.1
 %{?with_gdbm:BuildRequires:    gdbm-devel}
 # asm-generic, merged x86 asm dirs
 BuildRequires: linux-libc-headers >= 7:2.6.24
+%{?with_tests:BuildRequires:   procps}
 # required for proper Provides generation (older are not supported by spec)
 BuildRequires: rpm-build >= 4.3-0.20040107.4
 BuildRequires: rpmbuild(macros) >= 1.426
@@ -100,7 +101,6 @@ Requires:   %{name}-base = %{epoch}:%{ver}-%{release}
 Requires:      %{name}-modules = %{epoch}:%{ver}-%{release}
 Suggests:      %{name}-doc-reference = %{epoch}:%{ver}-%{release}
 Suggests:      perldoc
-Obsoletes:     sperl
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                __perl          %{_builddir}/perl-%{ver}/runperl
@@ -305,9 +305,16 @@ Provides:  %perl_modversion File::Spec
 Provides:      %perl_modversion File::Temp
 Provides:      %perl_modversion IO
 Provides:      %perl_modversion PerlIO::via::QuotedPrint
-Provides:      %perl_modversion Safe
 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
+Obsoletes:     sperl
 Conflicts:     perl < 1:5.8.0
 
 %description base
@@ -329,12 +336,31 @@ Requires: %{name}-base = %{epoch}:%{ver}-%{release}
 Requires:      %{name}-modules = %{epoch}:%{ver}-%{release}
 Requires:      %{name}-tools-pod = %{epoch}:%{ver}-%{release}
 Provides:      %perl_modversion CPAN
-Provides:      %perl_modversion Devel::DProf
-Provides:      %perl_modversion Devel::PPPort
+Provides:      %perl_modversion CPAN::Meta
+Provides:      %perl_modversion CPAN::Meta::YAML
 Provides:      %perl_modversion Devel::Peek
+Provides:      %perl_modversion Devel::PPPort
+Provides:      %perl_modversion ExtUtils::CBuilder
+Provides:      %perl_modversion ExtUtils::Command
 Provides:      %perl_modversion ExtUtils::Embed
+Provides:      %perl_modversion ExtUtils::Install
 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-lib-devel
 
 %description devel
@@ -377,26 +403,42 @@ Summary:  Modules from the core Perl distribution
 Summary(pl.UTF-8):     Moduły z podstawowej dystrybucji Perla
 Group:         Libraries
 Requires:      %{name}-base = %{epoch}:%{ver}-%{release}
+Provides:      %perl_modversion Archive::Tar
 Provides:      %perl_modversion Attribute::Handlers
 Provides:      %perl_modversion CGI
-Provides:      %perl_modversion Class::ISA
+Provides:      %perl_modversion Compress::Raw::Bzip2
+Provides:      %perl_modversion Compress::Raw::Zlib
 Provides:      %perl_modversion Digest
 Provides:      %perl_modversion Digest::MD5
+Provides:      %perl_modversion Digest::SHA
 Provides:      %perl_modversion Filter::Simple
 Provides:      %perl_modversion FindBin
 Provides:      %perl_modversion I18N::LangTags
 Provides:      %perl_modversion IPC::SysV
+Provides:      %perl_modversion JSON::PP
+Provides:      %perl_modversion Locale::Codes
 Provides:      %perl_modversion Locale::Maketext
-Provides:      %perl_modversion MIME::Base64
+Provides:      %perl_modversion Locale::Maketext::Simple
 Provides:      %perl_modversion Math::BigInt
 Provides:      %perl_modversion Math::BigRat
 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 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 Storable
+Provides:      %perl_modversion Sys::Syslog
 Provides:      %perl_modversion Term::ANSIColor
 Provides:      %perl_modversion Term::Cap
 Provides:      %perl_modversion Test
@@ -406,11 +448,67 @@ Provides: %perl_modversion Text::Balanced
 Provides:      %perl_modversion Text::ParseWords
 Provides:      %perl_modversion Text::Soundex
 Provides:      %perl_modversion Time::HiRes
-Provides:      %perl_modversion UNIVERSAL
+Provides:      %perl_modversion Time::Piece
 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-lib
 
 %description modules
@@ -427,6 +525,7 @@ Summary(pl.UTF-8):  perldoc - przeszukiwanie dokumentacji Perla w formacie pod
 Group:         Development/Tools
 Requires:      %{name}-modules = %{epoch}:%{ver}-%{release}
 Requires:      %{name}-tools-pod
+Requires:      groff
 Provides:      perldoc = 3.14_02@%{ver}
 
 %description perldoc
@@ -590,7 +689,7 @@ z biblioteki GNU gdbm.
 %patch5 -p1
 %patch6 -p1
 %patch7 -p1
-%patch9 -p1
+%patch8 -p1
 
 cat > runperl <<'EOF'
 #!/bin/sh
@@ -600,6 +699,15 @@ exec %{buildroot}%{_bindir}/perl ${1:+"$@"}
 EOF
 chmod a+x runperl
 
+# perl_585-microperl_uconfig.patch removes some variables
+# that are later verified by porting/checkcfgvar.t
+#
+# Disabling test for now but should also check if
+# perl porting/checkcfgvar.pl --regen --default=undef
+# makes better sense.
+rm t/porting/checkcfgvar.t
+sed -i -e '/^t\/porting\/checkcfgvar\.t.*/d' MANIFEST
+
 %build
 unset LD_SYMBOLIC_FUNCTIONS || :
 sh Configure \
@@ -658,116 +766,113 @@ sh Configure \
 #%{?with_tests:%{__make} minitest}
 
 %install
-if [ ! -f makeinstall.stamp -o ! -d $RPM_BUILD_ROOT ]; then
-       rm -rf makeinstall.stamp installed.stamp $RPM_BUILD_ROOT
-
-       %{__make} install \
-               DESTDIR=$RPM_BUILD_ROOT
-       touch makeinstall.stamp
-fi
+rm -rf $RPM_BUILD_ROOT
 
-if [ ! -f installed.stamp ]; then
-       %{?with_microperl:install microperl $RPM_BUILD_ROOT%{_bindir}}
-       install -d $RPM_BUILD_ROOT%{_mandir}/{ja,ko,zh_CN,zh_TW}/man1
-
-       ## 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
-
-       ## Fix lib
-       %{__rm} $RPM_BUILD_ROOT%{perl_archlib}/CORE/libperl.so
-       mv $RPM_BUILD_ROOT%{perl_archlib}/CORE/libperl.so.%{abi} $RPM_BUILD_ROOT%{_libdir}
-       %{__ln_s} ../../../../libperl.so.%{abi} $RPM_BUILD_ROOT%{perl_archlib}/CORE/libperl.so.%{abi}
-       %{__ln_s} libperl.so.%{abi} $RPM_BUILD_ROOT%{_libdir}/libperl.so
-       # installed as non-executable - let rpm generate deps
-       chmod 755 $RPM_BUILD_ROOT%{_libdir}/libperl.so.%{abi}
-
-       ## Fix Config.pm: remove buildroot path and change man pages extensions
-       %{__perl} -pi -e 's,%{buildroot}/*,/,g'                 $RPM_BUILD_ROOT%{perl_archlib}/Config.pm
-       %{__perl} -pi -e "s,^man1ext='1',man1ext='1p',"         $RPM_BUILD_ROOT%{perl_archlib}/Config_heavy.pl
-       %{__perl} -pi -e "s,^man3ext='3perl',man3ext='3pm',"    $RPM_BUILD_ROOT%{perl_archlib}/Config_heavy.pl
-
-       ## Generate the *.ph files
-       owd=$(pwd)
-       cd /usr/include
-       H2PH=$RPM_BUILD_ROOT%{_bindir}/h2ph
-       PHDIR=$RPM_BUILD_ROOT%{perl_archlib}
-       WANTED='
-               syscall.h
-               syslog.h
-               termios.h
-               wait.h
-               asm/termios.h
-               sys/ioctl.h
-               sys/socket.h
-               sys/syscall.h
-               sys/time.h
-               linux/posix_types.h
-               linux/stddef.h
-       '
-       # why it returns non-zero???
-       %{__perl} $H2PH -a -d $PHDIR $WANTED || :
-       cd "$owd"
-
-       ## remove man pages for other operating systems
-       %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/perl{aix,amiga,apollo,beos,bs2000,ce,cygwin,dgux,dos}* \
-               $RPM_BUILD_ROOT%{_mandir}/man1/perl{freebsd,hpux,macos,mpeix,os2,os390}* \
-               $RPM_BUILD_ROOT%{_mandir}/man1/perl{qnx,solaris,vmesa,vms,vos,win32}*
-
-       ## symlink perldelta.1.gz -> perlFOOdelta.1.gz
-       [ -e $RPM_BUILD_ROOT%{_mandir}/man1/perl%(echo %{ver} | tr -d .)delta.1 ] || exit 1
-       rm $RPM_BUILD_ROOT%{_mandir}/man1/perldelta.1
-       echo ".so perl%(echo %{ver} | tr -d .)delta.1" >$RPM_BUILD_ROOT%{_mandir}/man1/perldelta.1
-
-       ## These File::Spec submodules are for non-Unix systems
-       %{__rm} $RPM_BUILD_ROOT%{perl_archlib}/File/Spec/[EMOVW]*.pm
-       rm $RPM_BUILD_ROOT%{_mandir}/man3/File::Spec::{Epoc,Mac,OS2,VMS,Win32}.3perl*
-
-       ## We already have these *.pod files as man pages
-       %{__rm} $RPM_BUILD_ROOT%{perl_privlib}/{Encode,Test,Net,Locale{,/Maketext}}/*.pod
-       rm $RPM_BUILD_ROOT%{perl_privlib}/pod/a2p.pod
-       %{__rm} $RPM_BUILD_ROOT%{perl_privlib}/*.pod
-       %{__rm} $RPM_BUILD_ROOT%{perl_archlib}/*.pod
-
-       install -d doc-base/{Getopt/Long,Switch} \
-               doc-devel/ExtUtils \
-               doc-modules/{Attribute/Handlers,Filter/Simple,I18N/LangTags,Locale/{Codes,Maketext},Memoize,NEXT} \
-               doc-modules/{Net/Ping,Term/ANSIColor,Test/Simple,Text/{Balanced,TabsWrap},Unicode/Collate,unicore}
-
-       # needed only for tests
-       %{__rm} $RPM_BUILD_ROOT%{perl_privlib}/Unicode/Collate/keys.txt
-       mv -f $RPM_BUILD_ROOT%{perl_privlib}/unicore/ReadMe.txt \
-               doc-modules/unicore
-       # source for *.pl
-       %{__rm} $RPM_BUILD_ROOT%{perl_privlib}/unicore/{*.txt,mktables}
-       # 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*
-       %{__rm} $RPM_BUILD_ROOT%{_mandir}/man3/XS::APItest*
-       %{__rm} $RPM_BUILD_ROOT%{_mandir}/man3/XS::Typemap*
-
-       owd=$(pwd)
-
-       ## non-english man pages
-       %{__bzip2} -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
-
-       mv -f $RPM_BUILD_ROOT%{_mandir}/man1/perlcn.* $RPM_BUILD_ROOT%{_mandir}/zh_CN/man1
-       mv -f $RPM_BUILD_ROOT%{_mandir}/man1/perljp.* $RPM_BUILD_ROOT%{_mandir}/ja/man1
-       mv -f $RPM_BUILD_ROOT%{_mandir}/man1/perlko.* $RPM_BUILD_ROOT%{_mandir}/ko/man1
-       mv -f $RPM_BUILD_ROOT%{_mandir}/man1/perltw.* $RPM_BUILD_ROOT%{_mandir}/zh_TW/man1
-
-       # `perl -MExtUtils::Embed -e ldopts` includes -Wl,--as-needed
-       # which is then forced upon anyone embedding perl.
-       sed -i -e 's#^\(ld.*=.*\)-Wl,--as-needed\(.*\)#\1 \2#g' $RPM_BUILD_ROOT%{perl_archlib}/Config*.pl
-
-       rm -rf $RPM_BUILD_ROOT%{_mandir}/README.perl-non-english-man-pages
-
-       touch installed.stamp
-fi
+%{__make} install \
+       DESTDIR=$RPM_BUILD_ROOT
+
+%{?with_microperl:install microperl $RPM_BUILD_ROOT%{_bindir}}
+install -d $RPM_BUILD_ROOT%{_mandir}/{ja,ko,zh_CN,zh_TW}/man1
+
+## 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
+## install directory needed by packages dependant on Encode
+install -d $RPM_BUILD_ROOT%{perl_vendorlib}/Encode
+
+## Fix lib
+%{__rm} $RPM_BUILD_ROOT%{perl_archlib}/CORE/libperl.so
+mv $RPM_BUILD_ROOT%{perl_archlib}/CORE/libperl.so.%{abi} $RPM_BUILD_ROOT%{_libdir}
+%{__ln_s} ../../../../libperl.so.%{abi} $RPM_BUILD_ROOT%{perl_archlib}/CORE/libperl.so.%{abi}
+%{__ln_s} libperl.so.%{abi} $RPM_BUILD_ROOT%{_libdir}/libperl.so
+# installed as non-executable - let rpm generate deps
+chmod 755 $RPM_BUILD_ROOT%{_libdir}/libperl.so.%{abi}
+
+## Fix Config.pm: remove buildroot path and change man pages extensions
+%{__perl} -pi -e 's,%{buildroot}/*,/,g'                        $RPM_BUILD_ROOT%{perl_archlib}/Config.pm
+%{__perl} -pi -e "s,^man1ext='1',man1ext='1p',"                $RPM_BUILD_ROOT%{perl_archlib}/Config_heavy.pl
+%{__perl} -pi -e "s,^man3ext='3perl',man3ext='3pm',"   $RPM_BUILD_ROOT%{perl_archlib}/Config_heavy.pl
+
+## Generate the *.ph files
+owd=$(pwd)
+cd /usr/include
+H2PH=$RPM_BUILD_ROOT%{_bindir}/h2ph
+PHDIR=$RPM_BUILD_ROOT%{perl_archlib}
+WANTED='
+       syscall.h
+       syslog.h
+       termios.h
+       wait.h
+       asm/termios.h
+       sys/ioctl.h
+       sys/socket.h
+       sys/syscall.h
+       sys/time.h
+       linux/posix_types.h
+       linux/stddef.h
+'
+# why it returns non-zero???
+%{__perl} $H2PH -a -d $PHDIR $WANTED || :
+cd "$owd"
+
+## remove man pages for other operating systems
+%{__rm}        $RPM_BUILD_ROOT%{_mandir}/man1/perl{aix,amiga,bs2000,ce,cygwin,dgux,dos}* \
+       $RPM_BUILD_ROOT%{_mandir}/man1/perl{freebsd,hpux,macos,os2,os390}* \
+       $RPM_BUILD_ROOT%{_mandir}/man1/perl{qnx,solaris,vms,vos,win32}*
+
+## symlink perldelta.1.gz -> perlFOOdelta.1.gz
+[ -e $RPM_BUILD_ROOT%{_mandir}/man1/perl%(echo %{ver} | tr -d .)delta.1 ] || exit 1
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/perldelta.1
+echo ".so perl%(echo %{ver} | tr -d .)delta.1" >$RPM_BUILD_ROOT%{_mandir}/man1/perldelta.1
+
+## These File::Spec submodules are for non-Unix systems
+%{__rm} $RPM_BUILD_ROOT%{perl_archlib}/File/Spec/[EMOVW]*.pm
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man3/File::Spec::{Epoc,Mac,OS2,VMS,Win32}.3perl*
+
+## 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
+
+install -d doc-base/{Getopt/Long,Switch} \
+       doc-devel/ExtUtils \
+       doc-modules/{Attribute/Handlers,Filter/Simple,I18N/LangTags,Locale/{Codes,Maketext},Memoize,NEXT} \
+       doc-modules/{Net/Ping,Term/ANSIColor,Test/Simple,Text/{Balanced,TabsWrap},Unicode/Collate,unicore}
+
+# needed only for tests
+%{__rm} $RPM_BUILD_ROOT%{perl_privlib}/Unicode/Collate/keys.txt
+# source for *.pl
+%{__rm} $RPM_BUILD_ROOT%{perl_privlib}/unicore/*.txt
+# lib/Unicode/UCD.pm opens them via openunicode():
+cp -p lib/unicore/{Blocks,CaseFolding,SpecialCasing}.txt $RPM_BUILD_ROOT%{perl_privlib}/unicore
+
+# 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)
+
+## non-english man pages
+%{__bzip2} -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
+
+mv -f $RPM_BUILD_ROOT%{_mandir}/man1/perlcn.* $RPM_BUILD_ROOT%{_mandir}/zh_CN/man1
+mv -f $RPM_BUILD_ROOT%{_mandir}/man1/perljp.* $RPM_BUILD_ROOT%{_mandir}/ja/man1
+mv -f $RPM_BUILD_ROOT%{_mandir}/man1/perlko.* $RPM_BUILD_ROOT%{_mandir}/ko/man1
+mv -f $RPM_BUILD_ROOT%{_mandir}/man1/perltw.* $RPM_BUILD_ROOT%{_mandir}/zh_TW/man1
+
+# `perl -MExtUtils::Embed -e ldopts` includes -Wl,--as-needed
+# which is then forced upon anyone embedding perl.
+sed -i -e 's#^\(ld.*=.*\)-Wl,--as-needed\(.*\)#\1 \2#g' $RPM_BUILD_ROOT%{perl_archlib}/Config*.pl
+
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/README.perl-non-english-man-pages
 
 # update and check perl-modules file
 echo '# Module versions from Perl %{ver} distribution.' > perl-modules
@@ -797,6 +902,9 @@ if ! cmp -s .mods1 .mods2; then
        exit 1
 fi
 
+# remove empty .bs files
+find $RPM_BUILD_ROOT -name \*.bs -size 0 -print0 | xargs -0 %{__rm}
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -831,6 +939,7 @@ rm -rf $RPM_BUILD_ROOT
 %dir %{perl_archlib}/auto
 
 ## pragmas
+%{perl_privlib}/_charnames*
 %{perl_privlib}/autodie*
 %{_mandir}/man3/autodie*
 %{perl_privlib}/base.pm
@@ -877,17 +986,20 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man3/English*
 %{perl_privlib}/Getopt*
 %{_mandir}/man3/Getopt*
+%{perl_privlib}/HTTP*
+%{_mandir}/man3/HTTP*
+# FIXME: README and Changes files
 %{perl_privlib}/IPC
 %{_mandir}/man3/IPC::Open*
 %{_mandir}/man3/IPC::Cmd*
-%{perl_privlib}/Safe*
-%{_mandir}/man3/Safe*
 %{perl_privlib}/SelectSaver.pm
 %{_mandir}/man3/SelectSaver.*
 %{perl_privlib}/Symbol.pm
 %{_mandir}/man3/Symbol.*
 %{perl_privlib}/Tie
 %{_mandir}/man3/Tie::*
+%{perl_privlib}/UNIVERSAL.*
+%{_mandir}/man3/UNIVERSAL.*
 %{perl_privlib}/XSLoader*
 %{_mandir}/man3/XSLoader*
 
@@ -895,7 +1007,6 @@ rm -rf $RPM_BUILD_ROOT
 %{perl_archlib}/Config*
 %{_mandir}/man3/Config.*
 %{perl_archlib}/DynaLoader*
-%{perl_archlib}/auto/DynaLoader
 %{_mandir}/man3/DynaLoader*
 %{perl_archlib}/Errno*
 %{_mandir}/man3/Errno*
@@ -931,6 +1042,10 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{perl_archlib}/auto/Opcode/*.so
 %{_mandir}/man3/Opcode.*
 
+%dir %{perl_privlib}/Perl
+%{perl_privlib}/Perl/OSType.pm
+%{_mandir}/man3/Perl::OSType*
+
 %{perl_privlib}/PerlIO*
 %{perl_archlib}/PerlIO
 %dir %{perl_archlib}/auto/PerlIO
@@ -941,10 +1056,10 @@ rm -rf $RPM_BUILD_ROOT
 %{perl_archlib}/POSIX*
 %dir %{perl_archlib}/auto/POSIX
 %attr(755,root,root) %{perl_archlib}/auto/POSIX/*.so
-%{perl_archlib}/auto/POSIX/*.al
-%{perl_archlib}/auto/POSIX/*.ix
-%{perl_archlib}/auto/POSIX/SigAction
-%{perl_archlib}/auto/POSIX/SigRt
+#%{perl_archlib}/auto/POSIX/*.al
+#%{perl_archlib}/auto/POSIX/*.ix
+#%{perl_archlib}/auto/POSIX/SigAction
+#%{perl_archlib}/auto/POSIX/SigRt
 %{_mandir}/man3/POSIX.*
 
 %{perl_archlib}/Socket.*
@@ -952,10 +1067,25 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{perl_archlib}/auto/Socket/*.so
 %{_mandir}/man3/Socket.*
 
+%dir %{perl_archlib}/Tie
+%dir %{perl_archlib}/Tie/Hash
+%{perl_archlib}/Tie/Hash/NamedCapture.pm
+%dir %{perl_archlib}/auto/Tie
+%dir %{perl_archlib}/auto/Tie/Hash
+%dir %{perl_archlib}/auto/Tie/Hash/NamedCapture
+%attr(755,root,root) %{perl_archlib}/auto/Tie/Hash/NamedCapture/*.so
+
+%{perl_archlib}/arybase.pm
+%dir %{perl_archlib}/auto/arybase
+%attr(755,root,root) %{perl_archlib}/auto/arybase/*.so
+%{_mandir}/man3/arybase.*
+
 %files Encode
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/enc2xs
 %attr(755,root,root) %{_bindir}/piconv
+# for dependant packages (ex. perl-Encode-Locale)
+%{perl_vendorlib}/Encode
 # FIXME: *.h to devel(?), check out the use for *.e2x files
 %{perl_privlib}/Encode
 %{perl_archlib}/Encode*
@@ -1004,13 +1134,6 @@ rm -rf $RPM_BUILD_ROOT
 %{perl_archlib}/O.*
 %{_mandir}/man3/O.*
 
-%{perl_privlib}/B
-%{perl_archlib}/B
-%{perl_archlib}/B.pm
-%dir %{perl_archlib}/auto/B
-%attr(755,root,root) %{perl_archlib}/auto/B/*.so
-%{_mandir}/man3/B[.:]*
-
 %{perl_privlib}/Devel
 %{perl_archlib}/Devel
 %dir %{perl_archlib}/auto/Devel
@@ -1041,7 +1164,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/perlcheat.*
 %{_mandir}/man1/perlclib.*
 %{_mandir}/man1/perlcommunity.*
-%{_mandir}/man1/perlcompile.*
+#%{_mandir}/man1/perlcompile.*
 %{_mandir}/man1/perld[!o]*
 %{_mandir}/man1/perli[!v]*
 
@@ -1096,7 +1219,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{perl_archlib}/auto/attributes/*.so
 %{_mandir}/man3/attributes.*
 %{perl_archlib}/mro.pm
-%dir %attr(755,root,root) %{perl_archlib}/auto/mro
+%dir %{perl_archlib}/auto/mro
 %attr(755,root,root) %{perl_archlib}/auto/mro/*.so
 %{_mandir}/man3/mro.*
 %{perl_archlib}/re.pm
@@ -1130,15 +1253,20 @@ rm -rf $RPM_BUILD_ROOT
 %{perl_archlib}/linux
 %{perl_archlib}/sys
 
+%{perl_privlib}/B
+%{perl_archlib}/B
+%{perl_archlib}/B.pm
+%dir %{perl_archlib}/auto/B
+%attr(755,root,root) %{perl_archlib}/auto/B/*.so
+%{_mandir}/man3/B[.:]*
+
 %{perl_privlib}/Compress
 %{perl_archlib}/Compress
 %dir %{perl_archlib}/auto/Compress
 %dir %{perl_archlib}/auto/Compress/Raw
 %dir %{perl_archlib}/auto/Compress/Raw/*/
-%dir %{perl_archlib}/auto/Compress/Zlib
 %attr(755,root,root) %{perl_archlib}/auto/Compress/Raw/*/*.so
 %{perl_archlib}/auto/Compress/Raw/*/*.ix
-%{perl_archlib}/auto/Compress/Zlib/*.ix
 %{_mandir}/man3/Compress*
 
 %{perl_archlib}/Data
@@ -1180,7 +1308,6 @@ rm -rf $RPM_BUILD_ROOT
 %dir %{perl_archlib}/auto/I18N
 %dir %{perl_archlib}/auto/I18N/*/
 %attr(755,root,root) %{perl_archlib}/auto/I18N/*/*.so
-%{perl_archlib}/auto/I18N/*/*.ix
 %{_mandir}/man3/I18N::*
 
 %{perl_archlib}/IPC
@@ -1217,15 +1344,12 @@ rm -rf $RPM_BUILD_ROOT
 %{perl_archlib}/Storable.*
 %dir %{perl_archlib}/auto/Storable
 %attr(755,root,root) %{perl_archlib}/auto/Storable/*.so
-%{perl_archlib}/auto/Storable/*.al
-%{perl_archlib}/auto/Storable/*.ix
 %{_mandir}/man3/Storable.*
 
 %{perl_archlib}/Sys
 %dir %{perl_archlib}/auto/Sys
 %dir %{perl_archlib}/auto/Sys/*/
 %attr(755,root,root) %{perl_archlib}/auto/Sys/*/*.so
-%{perl_archlib}/auto/Sys/*/*.ix
 %{_mandir}/man3/Sys::*
 
 %{perl_archlib}/Text
@@ -1263,8 +1387,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man3/Benchmark*
 %{perl_privlib}/CGI*
 %{_mandir}/man3/CGI*
-%{perl_privlib}/Class/ISA*
-%{_mandir}/man3/Class::ISA*
 %{perl_privlib}/Config
 %{_mandir}/man3/Config::*
 %{perl_privlib}/DirHandle*
@@ -1277,8 +1399,8 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man3/Fatal.*
 %{perl_privlib}/FindBin.*
 %{_mandir}/man3/FindBin.*
-# FIXME: README and Changes files
-%{perl_privlib}/IPC
+%{perl_privlib}/JSON
+%{_mandir}/man3/JSON*
 %{perl_privlib}/Log
 %{_mandir}/man3/Log::*
 %{perl_privlib}/Locale
@@ -1286,8 +1408,8 @@ rm -rf $RPM_BUILD_ROOT
 %{perl_privlib}/Memoize*
 %{_mandir}/man3/Memoize*
 %dir %{perl_privlib}/Module
-%{perl_privlib}/Module/[CLP]*
-%{_mandir}/man3/Module::[CLP]*
+%{perl_privlib}/Module/[CLMP]*
+%{_mandir}/man3/Module::[CLMP]*
 %{perl_privlib}/NEXT.pm
 %{_mandir}/man3/NEXT*
 # FIXME: README and Changes files
@@ -1305,20 +1427,19 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man3/Parse::CPAN::Meta*
 %{perl_privlib}/Pod
 %{_mandir}/man3/Pod::*
+%{perl_privlib}/Safe*
+%{_mandir}/man3/Safe*
 %{perl_archlib}/Scalar
 %{_mandir}/man3/Scalar::*
 %{perl_privlib}/Search
 %{_mandir}/man3/Search::*
 %{perl_privlib}/SelfLoader.*
 %{_mandir}/man3/SelfLoader.*
-%{perl_privlib}/Shell.*
-%{_mandir}/man3/Shell.*
+#%{perl_privlib}/Shell.*
+#%{_mandir}/man3/Shell.*
 %{perl_privlib}/TAP
 %{_mandir}/man3/TAP::*
 # FIXME: README and Changes files
-%{perl_privlib}/Switch.*
-%{_mandir}/man3/Switch.*
-# FIXME: README and Changes files
 %{perl_privlib}/Term
 %{_mandir}/man3/Term::*
 # FIXME: README and Changes files
@@ -1330,9 +1451,6 @@ rm -rf $RPM_BUILD_ROOT
 %{perl_privlib}/Thread*
 %{_mandir}/man3/Thread*
 %endif
-# XXX: to perl-base?
-%{perl_privlib}/UNIVERSAL.*
-%{_mandir}/man3/UNIVERSAL.*
 # FIXME: README and Changes files
 %{perl_privlib}/User
 %{_mandir}/man3/User::*
@@ -1340,6 +1458,7 @@ rm -rf $RPM_BUILD_ROOT
 %files perldoc
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/perldoc
+%{perl_privlib}/perlfaq.pm
 %dir %{perl_privlib}/pod
 %{perl_privlib}/pod/perldiag.pod
 %{perl_privlib}/pod/perlfaq*.pod
@@ -1356,18 +1475,24 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/find2perl.*
 %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
+%{_mandir}/man1/zipdetails.1.gz
 
 %files tools-devel
 %defattr(644,root,root,755)
@@ -1377,8 +1502,8 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/pstruct
 %{_mandir}/man1/c2ph.*
 %{_mandir}/man1/pstruct.*
-%attr(755,root,root) %{_bindir}/dprofpp
-%{_mandir}/man1/dprofpp.*
+#%attr(755,root,root) %{_bindir}/dprofpp
+#%{_mandir}/man1/dprofpp.*
 %attr(755,root,root) %{_bindir}/h2ph
 %{_mandir}/man1/h2ph.*
 %attr(755,root,root) %{_bindir}/h2xs
This page took 0.101674 seconds and 4 git commands to generate.