X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=perl.spec;h=440962c0b518729d9ba680604565d86b35209889;hb=78261efe85396830b2dd926754c45ed225d39246;hp=09053cee140cbc7f889e1cf2ce699a8cf1f759e2;hpb=cdfacc8a3e7b61f84233ac74a9b257062ba91fb2;p=packages%2Fperl.git diff --git a/perl.spec b/perl.spec index 09053ce..440962c 100644 --- a/perl.spec +++ b/perl.spec @@ -3,23 +3,40 @@ # _without_tests - do not perform "make test" # _without_threads - build without support for threads # _without_largefiles - build without large file support +# _without_gdbm - build without the GDBM_File module # # TODO: -# - Think about unicore. If uf8*.pm, encode.pm, charnamess.pm (and +# - Think about unicore. If uf8*.pm, encode.pm, charnames.pm (and # probably others) are in the perl-base package, unicore should also # be there. But it's 5MB... -# - Think about the package separation. Split between perl, perl-base -# and perl-modules is far from obvius. -# - find out why *.so and *.bs files for some pragmas are ,,listed twice'' -# - merge some fixes from 5.6.1 on HEAD +# - profile the perl-base vs. perl-modules separation # - fix "FIXME"s, review "XXX"s # - fix perl.prov's handling in rpm -- it should use the __perl macro -# - include gdbm-dependent modules, they aren't distributed standalone -# anymore -# - *TESTING* +# - fix some duplicate files (are there any left?) +# - add the {O,N}DBM_File modules +# - review the perldiag.pod issue +# - consider disabling ithreads by default +# - consider introducing perl-dirs # +# TODO for perl-dependent packages: +# - change all "R/BR: perl" to one of perl-{base,modules,devel} +# - use the requires_eq(perl-base) for all packages strictly depending +# on the perl version used for building (files in perl_vendorarch +# directories; dependency on libperl.so.* often doesn't exist) +# (should this be done on Ra-branch, too?) +# + +%if 0%(if [ "%{__perl_requires}" != "%%{__perl_requires}" ]; then echo 1; fi) +%undefine __perl_requires +%define __perl_provides %{_builddir}/%{name}-%{version}/find-perl-provides.sh +%else +%define __find_provides %{_builddir}/%{name}-%{version}/find-perl-provides.sh +%endif + +# temporary (I hope) hack, the above doesn't work with rpm-4.3-0.20030610 +%define _noautoreq 'perl(.*)' 'perl-base .*' + -%define __find_provides %{_builddir}/%{name}-%{version}/find-perl-provides.sh %define perlthread %{?!_without_threads:-thread-multi} %define perl_privlib %{_datadir}/perl5/%{version} @@ -52,36 +69,31 @@ Summary(tr): Kabuk yorumlama dili Summary(zh_CN): Perl ±à³ÌÓïÑÔ¡£ Name: perl Version: 5.8.0 -Release: 0.20%{?_without_threads:_nothr}%{?_without_largefiles:_nolfs} +Release: 0.43%{?_without_threads:_nothr}%{?_without_largefiles:_nolfs} Epoch: 1 License: GPL v1+ or Artistic Group: Development/Languages/Perl Source0: http://www.cpan.org/src/%{name}-%{version}.tar.gz -Source1: %{name}-non-english-man-pages.tar.bz2 +# Source0-md5: d9bdb180620306023fd35901a2878b62 +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: find-perl-provides.sh Patch0: %{name}_580-noroot_install.patch +Patch1: %{name}_580-INC.patch Patch2: %{name}_580-MakeMaker.patch -# failed -#Patch5: %{name}-syslog.patch -# failed -#Patch6: %{name}-CGI-upload-tmpdir.patch -# what is this f* one for?! -#Patch7: %{name}-LD_RUN_PATH.patch -Patch8: %{name}_580-errno_h-parsing.patch -Patch9: %{name}_580-use-LD_PRELOAD-for-libperl.so.patch -# *weird* -#Patch10: %{name}-sitearch.patch -Patch11: %{name}_580-soname.patch -# failed; is it still necessary? -#Patch13: %{name}-gcc3.patch -Patch14: %{name}_580-perluniintro.patch -Patch15: %{name}_580-Safe.patch +Patch3: %{name}_580-errno_h-parsing.patch +Patch4: %{name}_580-use-LD_PRELOAD-for-libperl.so.patch +Patch5: %{name}_580-soname.patch +Patch6: %{name}_580-perluniintro.patch +Patch7: %{name}_580-Safe.patch +Patch8: %{name}_580-microperl_uconfig.patch URL: http://www.perl.com/ -%{?!_without_largefiles:Provides: perl(largefiles)} -Requires: %{name}-base = %{version} -Requires: %{name}-modules = %{version} +Requires: %{name}-base = %{epoch}:%{version} +Requires: %{name}-modules = %{epoch}:%{version} +Requires: perl-doc-reference Requires: perldoc +%{?!_without_gdbm:BuildRequires: gdbm-devel} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -266,6 +278,9 @@ Provides: perl-File-Compare = 1.1003 Provides: perl-File-Spec = 0.83 Provides: perl-File-Temp = 0.13 Provides: perl-Safe = 2.09 +%{?!_without_largefiles:Provides: perl(largefiles)} +# broken, unsupported module +Obsoletes: perl-SOAP %description base Base components, files, core modules, etc. -- a minimal usable perl @@ -273,17 +288,34 @@ installation. You are encouraged to install a full perl (the perl package) whenever possible. %description base -l pl -Podstawowe sk³adniki, pliki, g³ówne modu³y itp. - minimalna u¿ywalna -instalacja Perla. Zaleca siê instalacjê pe³nego Perla (pakietu perl) -je¶li to tylko mo¿liwe. +Podstawowe sk³adniki, pliki, g³ówne modu³y itp. - minimalna instalacja +perla, nadaj±ca siê do u¿ytku. Zaleca siê instalacjê pe³nego perla +(pakietu perl), je¶li to tylko mo¿liwe. + +%package GDBM_File +Summary: GDBM_File - Perl5 access to the gdbm library +Summary(pl): GDBM_File - dostêp do biblioteki gdbm w Perlu +Group: Libraries +Requires: %{name}-base = %{epoch}:%{version} +# FIXME: Set Version: 1.06 and Release: 1 instead of inheriting +# values from the main package. Why this causes setting +# version and release macros up to the end of this spec? + +%description GDBM_File +GDBM_File is a module which allows Perl programs to make use of the +facilities provided by the GNU gdbm library. + +%description GDBM_File -l pl +GDBM_File jest modu³em, który umo¿liwia programom w Perlu korzystanie +z biblioteki GNU gdbm. %package devel Summary: Perl development files Summary(pl): Pliki potrzebne przy tworzeniu w³asnych aplikacji w perlu Summary(pt_BR): Arquivos de desenvolvimento e cabeçalhos para o perl Group: Development/Libraries -Requires: %{name}-base = %{version} -Requires: %{name}-modules = %{version} +Requires: %{name}-base = %{epoch}:%{version} +Requires: %{name}-modules = %{epoch}:%{version} Requires: %{name}-tools-pod Provides: perl-CPAN = 1.61 Provides: perl-Devel-DProf = 20000000.00_01 @@ -305,6 +337,7 @@ Perla oraz kompilowania modu Summary: Perl documentation in POD format Summary(pl): Dokumentacja Perla w formacie POD Group: Documentation +Requires: perldoc Obsoletes: perl-pod %description doc-pod @@ -318,7 +351,6 @@ POD. Summary: Perl reference documentation Summary(pl): Dokumentacja Perla Group: Documentation -Requires: man %description doc-reference Reference documentation for the Practical Extraction and Report Language @@ -331,8 +363,8 @@ Extraction and Report Language) i jego interpretera. %package modules Summary: Modules from the core perl distribution Summary(pl): Modu³y z podstawowej dystrybucji perla -Group: Development/Libraries -Requires: %{name}-base = %{version} +Group: Libraries +Requires: %{name}-base = %{epoch}:%{version} Provides: perl-Attribute-Handlers = 0.77 Provides: perl-CGI = 2.81 Provides: perl-Class-ISA = 0.32 @@ -397,7 +429,7 @@ used for the documentation for the perl library modules. perldoc wyszukuje fragment dokumentacji w formacie .pod osadzony w drzewie instalacji perla lub w skypcie perlowym i wy¶wietla go przez "pod2man | nroff -man | $PAGER". Program ten u¿ywany jest g³ównie do -dokumentacji modu³ów z bibliotek Perla. +dokumentacji modu³ów z bibliotek perla. %package -n sperl Summary: Perl setuid root binaries for use with setuid Perl scripts @@ -407,14 +439,14 @@ Summary(fr): sperl, Summary(it): sperl, da usare con gli script di Perl setuid Summary(ja): Setuid Perl scripts ¤È°ì½ï¤Ë»ÈÍѤ¹¤ë¤¿¤á¤Î suidperl Summary(ko): Setuid ÆÞ ½ºÅ©¸³Æ®¿Í ÇÔ²² »ç¿ëµÇ´Â suidperl -Summary(pl): Binaria setuid root Perla dla setuid-owych skryptów Perla +Summary(pl): Binaria setuid root perla dla setuid-owych skryptów perla Summary(pt): O suidperl, para usar com os programas de Perl 'setuid' Summary(ru): SUID ×ÅÒÓÉÑ ÑÚÙËÁ Perl Summary(sv): sperl, att användas med setuid perlskript Summary(uk): SUID-×ÅÒÓ¦Ñ ÍÏ×É Perl Summary(zh_CN): sperl£¬ÓÃÀ´Óë setuid perl ½Å±¾Ò»ÆðʹÓà Group: Development/Languages/Perl -Requires: %{name}-base = %{version} +Requires: %{name}-base = %{epoch}:%{version} Obsoletes: perl-suidperl %description -n sperl @@ -444,7 +476,7 @@ perl %description -n sperl -l pl sperl jest to kopia setuid root programu binarnego perl umo¿liwiaj±ca bezpieczniejsze (miejmy nadziejê) uruchamianie setuidowych skryptów -Perla. +perla. %description -n sperl -l pt O suidperl é uma cópia do perl com 'setuid' que permite uma execução @@ -469,7 +501,7 @@ setuid perl Summary: Various tools from the core perl distribution Summary(pl): Ró¿ne narzêdzia z podstawowej dystrybucji perla Group: Applications -Requires: %{name}-base = %{version} +Requires: %{name}-base = %{epoch}:%{version} %description tools Various tools from the core perl distribution: @@ -479,8 +511,8 @@ Various tools from the core perl distribution: piconv - iconv(1), reinvented in perl psed, s2p - a stream editor -%description modules -l pl -Ró¿ne narzêdzia z podstawowej dystrybucji Perla: +%description tools -l pl +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 @@ -491,8 +523,8 @@ R Summary: Developer's tools from the core perl distribution Summary(pl): Narzêdzia z podstawowej dystrybucji perla, przeznaczone dla programistów Group: Development/Tools -Requires: %{name}-base = %{version} -Requires: %{name}-devel = %{version} +Requires: %{name}-base = %{epoch}:%{version} +Requires: %{name}-devel = %{epoch}:%{version} %description tools-devel Various tools from the core perl distribution: @@ -508,7 +540,7 @@ Various tools from the core perl distribution: splain - force verbose warning diagnostics %description tools-devel -l pl -Ró¿ne narzêdzia z podstawowej dystrybucji Perla: +Ró¿ne narzêdzia z podstawowej dystrybucji perla: c2ph, pstruct - zrzucanie struktur C w postaci generowanej z tablic symboli z cc -g -S @@ -519,7 +551,7 @@ R h2xs - konwerter plików nag³ówkowych .h z C na rozszerzenia Perla perlcc - generator binarek z programów w Perlu - perlivp - procedura weryfikacji instalacji Perla + perlivp - procedura weryfikacji instalacji perla pl2pm - zgrubne narzêdzie do t³umaczenia plików pl Perla 4 na modu³y .pm Perla 5 splain - wymuszenie obszernych ostrze¿eñ diagnostycznych @@ -528,7 +560,7 @@ R Summary: Tools for manipulating files in the POD format Summary(pl): Narzêdzia do przetwarzania plików w formacie POD Group: Applications -Requires: %{name}-base = %{version} +Requires: %{name}-base = %{epoch}:%{version} %description tools-pod Tools for manipulating files in the POD (Plain Old Documentation) @@ -542,7 +574,7 @@ format: podchecker - check the syntax of POD format documentation files podselect - print selected sections of pod documentation -%description tools-pod +%description tools-pod -l pl Narzêdzia do przetwarzania plików w formacie POD (Plain Old Documentation): @@ -583,12 +615,14 @@ microperlu - popraw je. %prep %setup -q %patch0 -p1 +%patch1 -p0 %patch2 -p0 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 +%patch6 -p0 +%patch7 -p1 %patch8 -p1 -%patch9 -p1 -%patch11 -p1 -%patch14 -p0 -%patch15 -p1 install -m 0755 %{SOURCE2} $PWD/find-perl.prov install -m 0755 %{SOURCE3} $PWD/find-perl-provides.sh @@ -614,8 +648,10 @@ sh Configure \ -Dsitelib=%{perl_sitelib} -Dsitearch=%{perl_sitearch} \ -Dvendorlib=%{perl_vendorlib} -Dvendorarch=%{perl_vendorarch} \ -Dinstallprefix=$RPM_BUILD_ROOT%{_prefix} \ - -Ui_dbm -Ui_gdbm -Ui_ndbm -Ui_db \ - -Dlibswanted="dl m c crypt" \ + -Ui_db \ + %{?_without_gdbm: -Ui_dbm -Ui_gdbm -Ui_ndbm} \ + %{?!_without_gdbm: -Ui_dbm -Di_gdbm -Ui_ndbm} \ + -Dlibswanted="dl m c crypt %{?!_without_dbm:gdbm}" \ -%{?_without_threads:U}%{?!_without_threads:D}usethreads \ -%{?_without_largefiles:U}%{?!_without_largefiles:D}uselargefiles @@ -627,8 +663,30 @@ sh Configure \ # -Ud_longdbl # %endif +## {Scalar,List}::Util should be in perl_archlib (it's a bit tricky and should +## probably be done in %%prep, but then Configure would complain (->MANIFEST)) +mv ext/List/Util/lib/List/Util.pm ext/List/Util +rm -f ext/List/Util/Makefile.PL +cat < ext/List/Util/Makefile.PL +use ExtUtils::MakeMaker; +WriteMakefile(NAME=>"List::Util", VERSION_FROM=>"Util.pm"); +EOF + %{__make} -%{__make} -f Makefile.micro + +## microperl +rm -f uconfig.h +%{__make} -f Makefile.micro \ + archlib=%{perl_archlib} \ + archlibexp=%{perl_archlib} \ + privlib=%{perl_privlib} \ + privlibexp=%{perl_privlib} \ + archname=%{_target_platform}%{perlthread} \ + osname=%{_host} \ + bin=%{_bindir} \ + scriptdir=%{_bindir} \ + scriptdirexp=%{_bindir} \ + OPTIMIZE="%{rpmcflags}" %{?!_without_tests:%{__make} test} #%{?!_without_tests:%{__make} minitest} @@ -638,7 +696,6 @@ rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT %{__make} install -install miniperl $RPM_BUILD_ROOT%{_bindir} install microperl $RPM_BUILD_ROOT%{_bindir} ## use symlinks instead of hardlinks @@ -647,14 +704,14 @@ install microperl $RPM_BUILD_ROOT%{_bindir} %{__ln_s} -f c2ph $RPM_BUILD_ROOT%{_bindir}/pstruct %{__ln_s} -f psed $RPM_BUILD_ROOT%{_bindir}/s2p -## Fix lib -rm -f $RPM_BUILD_ROOT%{perl_archlib}/CORE/libperl.so* -install libperl.so.%{version} $RPM_BUILD_ROOT%{_libdir} -%{__ln_s} -f libperl.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libperl.so - - %define __perl LD_LIBRARY_PATH="%{_builddir}/%{name}-%{version}" PERL5LIB="%{buildroot}/%{perl_privlib}:%{buildroot}/%{perl_archlib}" %{buildroot}/%{_bindir}/perl +## Fix lib +rm -f $RPM_BUILD_ROOT%{perl_archlib}/CORE/libperl.so +%{__ln_s} `%{__perl} -e '$_="'%{perl_archlib}/CORE/libperl.so.%{version}'";s|^'%{_libdir}'/*||;print'` \ + $RPM_BUILD_ROOT%{_libdir}/libperl.so.%{version} +%{__ln_s} libperl.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libperl.so + ## 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.pm @@ -697,9 +754,8 @@ rm -f $RPM_BUILD_ROOT%{perl_privlib}/{Encode,Test,Net,Locale{,/Maketext}}/*.pod rm -f $RPM_BUILD_ROOT%{perl_privlib}/*.pod rm -f $RPM_BUILD_ROOT%{perl_archlib}/*.pod - -## directories for modules installed using CPAN.pm -install -d $RPM_BUILD_ROOT{%{perl_sitelib},%{perl_sitearch}/auto} +## this object file looks unused; why is it there? +rm -f $RPM_BUILD_ROOT%{perl_archlib}/CORE/sperl.o ## dir tree for other perl modules install -d $RPM_BUILD_ROOT{%{perl_vendorlib},%{perl_vendorarch},%{perl_vendorarch}/auto} @@ -707,33 +763,45 @@ install -d $RPM_BUILD_ROOT{%{perl_vendorlib},%{perl_vendorarch},%{perl_vendorarc cd $RPM_BUILD_ROOT%{perl_vendorlib} install -d AI/NeuralNet Algorithm Apache Archive Array Astro Attribute \ Audio Authen B Bundle Business CGI Cache Chart Class Config \ - Convert Crypt DBD Data Date Devel Device Digest Error ExtUtils File \ - Filesys Font Games Getopt GnuPG Graph HTML HTTP I18N IO/Socket IPC \ - Image Inline Language Lingua/EN List Locale LockFile Log MIME Mail \ - Math Module Net/SMTP NetServer Netscape News Number OLE Parse Pod \ - PostScript Proc RADIUS RPC RPM Regexp SOAP/Transport SQL Schedule \ - Set Sort Speech Spreadsheet Statistics String Sub Sys TeX Test \ + Convert Crypt DBD Data Date Devel Device Digest Error ExtUtils \ + File Filesys Font Games Getopt GnuPG Graph Graphics HTML HTTP I18N \ + IO/Socket IPC Image Inline Language Lingua/{EN,Stem/Snowball} \ + List Locale LockFile Log MIME Mail Math/BigInt Modem Module Net/SMTP \ + NetServer Netscape News Number OLE Parse Pod PostScript Proc \ + RADIUS RPC RPM Regexp SOAP/Transport SQL Schedule Set Sort \ + Speech Spreadsheet Statistics String Sub Sys TeX Test \ Text/Query Tie Time Tree Unicode WWW XML/{Filter,Handler,Parser} \ - auto/{AI,Array,Crypt,Data,Mail,Net,Schedule,Statistics,Text,WWW} + auto/{AI,Array,Config,Crypt,Data,Mail,Net,Schedule,Statistics,Text,WWW} cd $RPM_BUILD_ROOT%{perl_vendorarch} -install -d Astro Audio Authen B BSD Bit Compress Crypt/OpenSSL Data Devel \ - Digest File IPC Inline Locale Math Net Speech/Recognizer String Term \ - Text Unicode XML \ +install -d Algorithm Astro Audio Authen B BSD Bit Compress Crypt/OpenSSL \ + Data Devel Digest File IPC Inline Locale Math/BigInt Net \ + Speech/Recognizer String Sys Term Text Unicode XML \ auto/{Astro,Audio,Authen,BSD,Bit,Compress,Crypt/OpenSSL,Data,Devel} \ - auto/{Digest,File,IPC,Inline,Locale,Math,Net,Speech/Recognizer,String} \ - auto/{Term,Text,Unicode,XML} + auto/{Digest,File,IPC,Inline,Locale,Math/BigInt,Net,Regexp} \ + auto/{Speech/Recognizer,String,Sys,Term,Text,Unicode,XML} ) ## non-english man pages %{__bzip2} -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir} +## examples and demos +install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-modules-%{version} +mv $RPM_BUILD_ROOT%{perl_privlib}/CGI/eg \ + $RPM_BUILD_ROOT%{_examplesdir}/%{name}-modules-%{version}/CGI +mv $RPM_BUILD_ROOT%{perl_privlib}/Attribute/Handlers/demo \ + $RPM_BUILD_ROOT%{_examplesdir}/%{name}-modules-%{version}/Attribute-Handlers +rm -f $RPM_BUILD_ROOT%{_mandir}/man3/Attribute::Handlers::demo* +rm -f $RPM_BUILD_ROOT%{perl_privlib}/Class/ISA/test.pl +rmdir $RPM_BUILD_ROOT%{perl_privlib}/Class/ISA +mv $RPM_BUILD_ROOT%{perl_privlib}/Net/demos \ + $RPM_BUILD_ROOT%{_examplesdir}/%{name}-modules-%{version}/Net %clean rm -rf $RPM_BUILD_ROOT -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig +%post base -p /sbin/ldconfig +%postun base -p /sbin/ldconfig %files %defattr(644,root,root,755) @@ -743,17 +811,6 @@ rm -rf $RPM_BUILD_ROOT %lang(ko) %doc README.ko %lang(tw) %doc README.tw -%dir %{perl_sitelib} -%dir %{_usr}/local/lib/perl5 -%dir %{_usr}/local/lib/perl5/%{version} -%dir %{perl_sitearch} -%dir %{perl_sitearch}/auto -%{perl_vendorlib} -%dir %{_libdir}/perl5/vendor_perl -%dir %{_libdir}/perl5/vendor_perl/%{version} -%{perl_vendorarch} -#%dir %{perl_vendorarch}/auto - %files base %defattr(644,root,root,755) @@ -770,25 +827,27 @@ rm -rf $RPM_BUILD_ROOT %dir %{perl_archlib} %dir %{perl_archlib}/auto +%dir %{perl_archlib}/CORE +%attr(755,root,root) %{perl_archlib}/CORE/libperl.so.%{version} +%attr(755,root,root) %{_libdir}/libperl.so* + +%dir %{_libdir}/perl5/vendor_perl +%dir %{_libdir}/perl5/vendor_perl/%{version} +%{perl_vendorarch} +%{perl_vendorlib} + # pragmas %{perl_privlib}/[a-z]*.pm %{perl_privlib}/[a-z]*.pl %{perl_privlib}/warnings -%{perl_archlib}/[a-z]*.pm -%{perl_archlib}/threads +%{perl_archlib}/[a-r]*.pm %dir %{perl_archlib}/auto/attrs -%dir %{perl_archlib}/auto/re -%dir %{perl_archlib}/auto/threads -%dir %{perl_archlib}/auto/threads/shared -%attr(755,root,root) %{perl_archlib}/auto/attrs/*.so -%attr(755,root,root) %{perl_archlib}/auto/re/*.so -%attr(755,root,root) %{perl_archlib}/auto/threads/*.so -%attr(755,root,root) %{perl_archlib}/auto/threads/shared/*.so %{perl_archlib}/auto/attrs/*.bs +%attr(755,root,root) %{perl_archlib}/auto/attrs/*.so +%dir %{perl_archlib}/auto/re %{perl_archlib}/auto/re/*.bs -%{perl_archlib}/auto/threads/*.bs -%{perl_archlib}/auto/threads/shared/*.bs -%{_mandir}/man3/[a-z]* +%attr(755,root,root) %{perl_archlib}/auto/re/*.so +%{_mandir}/man3/[a-su-w]* # arch-_IN_dependent modules %{perl_privlib}/Auto* @@ -849,7 +908,9 @@ rm -rf $RPM_BUILD_ROOT %dir %{perl_archlib}/auto/PerlIO/*/ %attr(755,root,root) %{perl_archlib}/auto/PerlIO/*/*.so %{perl_archlib}/auto/PerlIO/*/*.bs -%{_mandir}/man3/PerlIO* +%{_mandir}/man3/PerlIO.* +%{_mandir}/man3/PerlIO::[es]* +%{_mandir}/man3/PerlIO::via.* %{perl_archlib}/POSIX* %dir %{perl_archlib}/auto/POSIX @@ -859,25 +920,22 @@ rm -rf $RPM_BUILD_ROOT %{perl_archlib}/auto/POSIX/*.ix %{_mandir}/man3/POSIX.* -%attr(755,root,root) %{_libdir}/lib*.so.%{version} + +%if %{?!_without_gdbm:1}0 +%files GDBM_File +%defattr(644,root,root,755) +%{perl_archlib}/GDBM_File.* +%dir %{perl_archlib}/auto/GDBM_File +%attr(755,root,root) %{perl_archlib}/auto/GDBM_File/*.so +%{perl_archlib}/auto/GDBM_File/*.bs +%{_mandir}/man3/GDBM_File.* +%endif %files devel %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/[acdefh]* -%attr(755,root,root) %{_bindir}/perlcc -%attr(755,root,root) %{_bindir}/pl2pm -%attr(755,root,root) %{_bindir}/pstruct -%attr(755,root,root) %{_bindir}/[sx]* -%{_mandir}/man1/[acdefh]* -%{_mandir}/man1/perlcc.* -%{_mandir}/man1/perldebguts.* -%{_mandir}/man1/pl2pm.* -%{_mandir}/man1/pstruct.* -%{_mandir}/man1/[sx]* - -%attr(755,root,root) %{_libdir}/lib*.so -%{perl_archlib}/CORE +%attr(755,root,root) %{_libdir}/libperl.so +%{perl_archlib}/CORE/*.h # FIXME: Changes file to _docdir (and rm MANIFEST.SKIP?) %{perl_privlib}/ExtUtils @@ -926,17 +984,19 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %{perl_privlib}/pod/perl.pod %{perl_privlib}/pod/perl[5abceghijklmnopqrstuvwx]*.pod -%{perl_privlib}/pod/perld[^i]*.pod -%{perl_privlib}/pod/perlf[^au]*.pod +%{perl_privlib}/pod/perld[!i]*.pod +%{perl_privlib}/pod/perlf[!au]*.pod %files doc-reference %defattr(644,root,root,755) -%{_mandir}/man1/perl[5adefghilmnoprstuvwx]* +%{_mandir}/man1/perl[5aefghlmnoprstuvwx]* %{_mandir}/man1/perlbo* %{_mandir}/man1/perlcall.* %{_mandir}/man1/perlclib.* %{_mandir}/man1/perlcompile.* +%{_mandir}/man1/perld[!o]* +%{_mandir}/man1/perli[!v]* %lang(cn) %{_mandir}/man1/perlcn.* %lang(jp) %{_mandir}/man1/perljp.* %lang(ko) %{_mandir}/man1/perlko.* @@ -944,10 +1004,23 @@ rm -rf $RPM_BUILD_ROOT %files modules %defattr(644,root,root,755) +%{_examplesdir}/%{name}-modules-%{version} + # XXX: should it really be in this package? %{perl_privlib}/unicore -# *.ph files (could be made a separate package, but an autohelper's support is needed) +%if %{?!_without_threads:1}0 +%{perl_archlib}/threads* +%dir %{perl_archlib}/auto/threads +%dir %{perl_archlib}/auto/threads/shared +%{perl_archlib}/auto/threads/*.bs +%{perl_archlib}/auto/threads/shared/*.bs +%attr(755,root,root) %{perl_archlib}/auto/threads/*.so +%attr(755,root,root) %{perl_archlib}/auto/threads/shared/*.so +%{_mandir}/man3/t* +%endif + +## *.ph files (could be made a separate package, but an autohelper's support is needed) %{perl_archlib}/*.ph %{perl_archlib}/asm %{perl_archlib}/bits @@ -970,7 +1043,7 @@ rm -rf $RPM_BUILD_ROOT %{perl_archlib}/auto/Digest/MD5/*.bs %{_mandir}/man3/Digest* -## FIXME: *.h to devel(?), check out the use for *.e2x files +# FIXME: *.h to devel(?), check out the use for *.e2x files %{perl_privlib}/Encode %{perl_archlib}/Encode* %dir %{perl_archlib}/auto/Encode @@ -1012,8 +1085,7 @@ rm -rf $RPM_BUILD_ROOT %{perl_archlib}/auto/IPC/*/*.bs %{_mandir}/man3/IPC::[MS]* -# FIXME: List/Util.pm should be archlib; patch needed -%{perl_privlib}/List +%{perl_archlib}/List %dir %{perl_archlib}/auto/List %dir %{perl_archlib}/auto/List/*/ %attr(755,root,root) %{perl_archlib}/auto/List/*/*.so @@ -1073,15 +1145,12 @@ rm -rf $RPM_BUILD_ROOT %{perl_privlib}/AnyDBM* %{_mandir}/man3/AnyDBM* -# FIXME: move */demo to %_exapmlesdir or /dev/null %{perl_privlib}/Attribute %{_mandir}/man3/Attribute* %{perl_privlib}/Benchmark* %{_mandir}/man3/Benchmark* -# FIXME: move */eg to %_examplesdir or /dev/null %{perl_privlib}/CGI* %{_mandir}/man3/CGI* -# FIXME: move test.pl to %_examplesdir or /dev/null %{perl_privlib}/Class %{_mandir}/man3/Class::* %{perl_privlib}/DirHandle* @@ -1105,7 +1174,7 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man3/Memoize* %{perl_privlib}/NEXT* %{_mandir}/man3/NEXT* -# FIXME: README and Changes files, */demos to %_examplesdir or /dev/null +# FIXME: README and Changes files %{perl_privlib}/Net %{_mandir}/man3/Net::* %{perl_privlib}/PerlIO @@ -1135,9 +1204,10 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man3/Test* %{perl_privlib}/Text %{_mandir}/man3/Text::* -# XXX: to perl-base? +%if %{?!_without_threads:1}0 %{perl_privlib}/Thread* %{_mandir}/man3/Thread* +%endif %{perl_privlib}/Tie %{_mandir}/man3/Tie::* %{perl_privlib}/Time @@ -1153,6 +1223,7 @@ rm -rf $RPM_BUILD_ROOT %files perldoc %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/perldoc +%dir %{perl_privlib}/pod %{perl_privlib}/pod/perldiag.pod %{perl_privlib}/pod/perlfaq*.pod %{perl_privlib}/pod/perlfunc.pod @@ -1203,6 +1274,8 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/pl2pm.* %attr(755,root,root) %{_bindir}/splain %{_mandir}/man1/splain.* +%attr(755,root,root) %{_bindir}/xsubpp +%{_mandir}/man1/xsubpp.* %files tools-pod %defattr(644,root,root,755)