]> git.pld-linux.org Git - packages/perl.git/blobdiff - perl.spec
- BR: rpm-perlprov (for /usr/lib/rpm/perl.prov)
[packages/perl.git] / perl.spec
index c767965e33244822cff9248db36b2e7027d50d21..63e947788bef17677ef16e928977759c0f81736f 100644 (file)
--- a/perl.spec
+++ b/perl.spec
@@ -3,13 +3,10 @@
 %bcond_without tests           # do not perform "make test"
 %bcond_without threads         # build without support for threads
 %bcond_without gdbm            # build without the GDBM_File module
+%bcond_without microperl       # don't build microperl
 #
 # TODO:
-# - 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...
 # - fix "FIXME"s, review "XXX"s
-# - fix perl.prov's handling in rpm -- it should use the __perl macro
 # - add the {O,N}DBM_File modules
 # - review the perldiag.pod issue
 # - consider disabling ithreads by default
 #
 # 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?)
 #
 
 %define _abi   5.8.0
@@ -57,13 +50,13 @@ Summary(sv):        Programmeringsspr
 Summary(tr):   Kabuk yorumlama dili
 Summary(zh_CN):        Perl ±à³ÌÓïÑÔ¡£
 Name:          perl
-Version:       5.8.3
-Release:       0.1%{!?with_threads:_nothr}
+Version:       5.8.4
+Release:       9%{!?with_threads:_nothr}
 Epoch:         1
-License:       GPL or Artistic
+License:       GPL v1+ or Artistic
 Group:         Development/Languages/Perl
-Source0:       http://www.cpan.org/src/%{name}-%{version}.tar.gz
-# Source0-md5: 6d2b389f8c6424b7af303f417947714f
+Source0:       http://www.cpan.org/src/%{name}-%{version}.tar.bz2
+# Source0-md5: 3eb135afd0114f4e1acdd4ad6b8fd947
 Source1:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
 # Source1-md5: de47d7893f49ad7f41ba69c78511c0db
 Patch0:                %{name}_581-noroot_install.patch
@@ -72,20 +65,26 @@ Patch3:             %{name}_580-errno_h-parsing.patch
 Patch4:                %{name}_580-use-LD_PRELOAD-for-libperl.so.patch
 Patch5:                %{name}_581-soname.patch
 Patch6:                %{name}-test-noproc.patch
-#Patch8:               %{name}_580-microperl_uconfig.patch
+Patch7:                %{name}_584-microperl_uconfig.patch
 URL:           http://www.perl.com/
 # required for proper Provides generation (older are not supported by spec)
 BuildRequires: rpm-build >= 4.3-0.20040107.4
+BuildRequires: rpm-perlprov
 %{?with_gdbm:BuildRequires:    gdbm-devel}
-Requires:      %{name}-base = %{epoch}:%{version}
-Requires:      %{name}-modules = %{epoch}:%{version}
-Requires:      perl-doc-reference
+Requires:      %{name}-base = %{epoch}:%{version}-%{release}
+Requires:      %{name}-modules = %{epoch}:%{version}-%{release}
+Requires:      %{name}-doc-reference = %{epoch}:%{version}-%{release}
 Requires:      perldoc
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                __perl          %{_builddir}/%{name}-%{version}/runperl
 %define                __perl_provides %{__perl} /usr/lib/rpm/perl.prov
 
+# gcc 3.3.x miscompiles pp_hot.c
+# (in PUSHSUB in entersub two SvREFCNT_inc()s are working as one)
+# -fno-strict-aliasing is already used to build perl and doesn't help
+%define                specflags_ppc   -O1
+
 %description
 Perl is an interpreted language optimized for scanning arbitrary text
 files, extracting information from those text files, and printing
@@ -269,11 +268,20 @@ Provides: perl-File-Spec = 0.87
 Provides:      perl-File-Temp = 0.14
 Provides:      perl-IO = 1.21
 Provides:      perl-Safe = 2.10
-Provides:      perl-Socket = 1.76
+Provides:      perl-Socket = 1.77
 Provides:      perl-Tie-File = 0.97
 Provides:      perl(largefiles)
-# broken, unsupported module
+# broken, unsupported modules
 Obsoletes:     perl-SOAP
+Obsoletes:     perl-Sort-PolySort
+# for older modules, now included
+#Obsoletes:    perl-File-Compare <= 1.1003
+#Obsoletes:    perl-File-Spec <= 0.87
+#Obsoletes:    perl-File-Temp <= 0.14
+#Obsoletes:    perl-IO <= 1.21
+#Obsoletes:    perl-Safe <= 2.10
+#Obsoletes:    perl-Socket <= 1.77
+#Obsoletes:    perl-Tie-File <= 0.97
 
 %description base
 Base components, files, core modules, etc. -- a minimal usable perl
@@ -289,7 +297,7 @@ perla, nadaj
 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}
+Requires:      %{name}-base = %{epoch}:%{version}-%{release}
 # 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?
@@ -309,7 +317,7 @@ Summary(pt_BR):     Arquivos de desenvolvimento e cabe
 Group:         Development/Libraries
 Requires:      %{name}-base = %{epoch}:%{version}
 Requires:      %{name}-modules = %{epoch}:%{version}
-Requires:      %{name}-tools-pod
+Requires:      %{name}-tools-pod = %{epoch}:%{version}
 Provides:      perl-CPAN = 1.76_01
 Provides:      perl-Devel-DProf = 20030813.00
 Provides:      perl-Devel-PPPort = 2.011
@@ -357,11 +365,11 @@ Extraction and Report Language) i jego interpretera.
 Summary:       Modules from the core perl distribution
 Summary(pl):   Modu³y z podstawowej dystrybucji perla
 Group:         Libraries
-Requires:      %{name}-base = %{epoch}:%{version}
-Provides:      perl-Attribute-Handlers = 0.78
-Provides:      perl-CGI = 3.01
+Requires:      %{name}-base = %{epoch}:%{version}-%{release}
+Provides:      perl-Attribute-Handlers = 0.78_01
+Provides:      perl-CGI = 3.04
 Provides:      perl-Class-ISA = 0.32
-Provides:      perl-Digest = 1.05
+Provides:      perl-Digest = 1.06
 Provides:      perl-Digest-MD5 = 2.33
 Provides:      perl-Filter-Simple = 0.78
 Provides:      perl-FindBin = 1.44
@@ -369,10 +377,10 @@ Provides: perl-FindBin = 1.44
 Provides:      perl-I18N-LangTags = 0.29
 Provides:      perl-IPC-SysV = 1.04
 Provides:      perl-Locale-Codes = 2.06
-Provides:      perl-Locale-Maketext = 1.06
-Provides:      perl-MIME-Base64 = 2.21
-Provides:      perl-Math-BigInt = 1.68
-Provides:      perl-Math-BigRat = 0.10
+Provides:      perl-Locale-Maketext = 1.08
+Provides:      perl-MIME-Base64 = 3.01
+Provides:      perl-Math-BigInt = 1.70
+Provides:      perl-Math-BigRat = 0.12
 Provides:      perl-Math-Trig = 1.02
 Provides:      perl-Memoize = 1.01
 Provides:      perl-NEXT = 0.60
@@ -380,8 +388,8 @@ Provides:   perl-PerlIO-via-QuotedPrint = 0.06
 Provides:      perl-Pod-LaTeX = 0.55
 Provides:      perl-Pod-Parser = 1.14
 Provides:      perl-Scalar-List-Utils = 1.13
-Provides:      perl-Storable = 2.09
-Provides:      perl-Term-ANSIColor = 1.07
+Provides:      perl-Storable = 2.12
+Provides:      perl-Term-ANSIColor = 1.08
 Provides:      perl-Term-Cap = 1.08
 Provides:      perl-Test = 1.24
 Provides:      perl-Test-Harness = 2.40
@@ -391,12 +399,49 @@ Provides: perl-Text-ParseWords = 3.21
 Provides:      perl-Text-Soundex = 1.01
 # XXX: I'm not sure what to do with this one...
 #Provides:     perl-Text-Tabs+Wrap = 2001.09291
-Provides:      perl-Time-HiRes = 1.52
+Provides:      perl-Time-HiRes = 1.59
 Provides:      perl-UNIVERSAL = 1.01
 Provides:      perl-Unicode-Collate = 0.33
 Provides:      perl-Unicode-Normalize = 0.28
 Provides:      perl-libnet = 1.1.1
+Obsoletes:     perl-Encode-compat
 Obsoletes:     perl-lib
+# for older modules included into perl
+#Obsoletes:    perl-Attribute-Handlers <= 0.78_01
+#Obsoletes:    perl-CGI <= 3.04
+#Obsoletes:    perl-Class-ISA <= 0.32
+#Obsoletes:    perl-Digest <= 1.06
+#Obsoletes:    perl-Digest-MD5 <= 2.33
+#Obsoletes:    perl-Filter-Simple <= 0.78
+#Obsoletes:    perl-FindBin <= 1.44
+#Obsoletes:    perl-I18N-LangTags <= 0.29
+#Obsoletes:    perl-IPC-SysV <= 1.04
+#Obsoletes:    perl-Locale-Codes <= 2.06
+#Obsoletes:    perl-Locale-Maketext <= 1.08
+#Obsoletes:    perl-MIME-Base64 <= 3.01
+#Obsoletes:    perl-Math-BigInt <= 1.70
+#Obsoletes:    perl-Math-BigRat <= 0.12
+#Obsoletes:    perl-Math-Trig <= 1.02
+#Obsoletes:    perl-Memoize <= 1.01
+#Obsoletes:    perl-NEXT <= 0.60
+#Obsoletes:    perl-PerlIO-via-QuotedPrint <= 0.06
+#Obsoletes:    perl-Pod-LaTeX <= 0.55
+#Obsoletes:    perl-Pod-Parser <= 1.14
+#Obsoletes:    perl-Scalar-List-Utils <= 1.13
+#Obsoletes:    perl-Storable <= 2.12
+#Obsoletes:    perl-Term-ANSIColor <= 1.08
+#Obsoletes:    perl-Term-Cap <= 1.08
+#Obsoletes:    perl-Test <= 1.24
+#Obsoletes:    perl-Test-Harness <= 2.40
+#Obsoletes:    perl-Test-Simple <= 0.47
+#Obsoletes:    perl-Text-Balanced <= 1.95
+#Obsoletes:    perl-Text-ParseWords <= 3.21
+#Obsoletes:    perl-Text-Soundex <= 1.01
+#Obsoletes:    perl-Time-HiRes <= 1.59
+#Obsoletes:    perl-UNIVERSAL <= 1.01
+#Obsoletes:    perl-Unicode-Collate <= 0.33
+#Obsoletes:    perl-Unicode-Normalize <= 0.28
+#Obsoletes:    perl-libnet <= 1.1.1
 
 %description modules
 Practical Extraction and Report Language - modules from the core
@@ -409,9 +454,10 @@ dystrybucji.
 %package perldoc
 Summary:       perldoc - Look up Perl documentation in pod format
 Summary(pl):   perldoc - przeszukiwanie dokumentacji Perla w formacie pod
-Provides:      perldoc = 3.11@%{version}
-Requires:      %{name}-modules
 Group:         Development/Tools
+Requires:      %{name}-modules = %{epoch}:%{version}-%{release}
+Requires:      %{name}-tools-pod = %{epoch}:%{version}-%{release}
+Provides:      perldoc = 3.12@%{version}
 
 %description perldoc
 perldoc looks up a piece of documentation in .pod format that is
@@ -440,7 +486,7 @@ Summary(sv):        sperl, att anv
 Summary(uk):   SUID-×ÅÒӦѠÍÏ×É Perl
 Summary(zh_CN):        sperl£¬ÓÃÀ´Óë setuid perl ½Å±¾Ò»ÆðʹÓÃ
 Group:         Development/Languages/Perl
-Requires:      %{name}-base = %{epoch}:%{version}
+Requires:      %{name}-base = %{epoch}:%{version}-%{release}
 Obsoletes:     perl-suidperl
 
 %description -n sperl
@@ -495,7 +541,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}-devel = %{epoch}:%{version}
+Requires:      %{name}-devel = %{epoch}:%{version}-%{release}
 
 %description tools
 Various tools from the core perl distribution:
@@ -519,8 +565,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 = %{epoch}:%{version}
-Requires:      %{name}-devel = %{epoch}:%{version}
+Requires:      %{name}-base = %{epoch}:%{version}-%{release}
+Requires:      %{name}-devel = %{epoch}:%{version}-%{release}
 
 %description tools-devel
 Various tools from the core perl distribution:
@@ -556,7 +602,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}-modules = %{epoch}:%{version}
+Requires:      %{name}-modules = %{epoch}:%{version}-%{release}
 
 %description tools-pod
 Tools for manipulating files in the POD (Plain Old Documentation)
@@ -616,24 +662,26 @@ microperlu - popraw je.
 %patch4 -p1
 %patch5 -p1
 %patch6 -p1
-#%patch8 -p1
+%patch7 -p1
 
 %build
 sh Configure \
        -des \
-       -Dcc=%{__cc} \
+       -Dcc="%{__cc}" \
        -Darchname=%{_target_platform} \
        -Dcccdlflags='-fPIC' \
        -Dccdlflags='-rdynamic' \
+       -Dldlibpthname=none \
        -Doptimize="%{rpmcflags}" \
+       %{?debug:-DDEBUGGING} \
        -Duseshrplib \
        -Dd_dosuid \
        -Dman1dir=%{_mandir}/man1 -Dman1ext=1 \
        -Dman3dir=%{_mandir}/man3 -Dman3ext=3perl \
        -Dvendorman1=%{_mandir}/man1 -Dvendorman1ext=1p \
        -Dvendorman3=%{_mandir}/man3 -Dvendorman3ext=3pm \
-       -Dsiteman1=%{_usr}/local/share/man/man1 -Dsiteman1ext=1p \
-       -Dsiteman3=%{_usr}/local/share/man/man3p -Dsiteman3ext=3pm \
+       -Dsiteman1=%{_usr}/local/man/man1 -Dsiteman1ext=1p \
+       -Dsiteman3=%{_usr}/local/man/man3 -Dsiteman3ext=3pm \
        -Dprefix=%{_prefix} -Dvendorprefix=%{_prefix} -Dsiteprefix=%{_usr}/local \
        -Dlibpth="%{_libdir} /%{_lib}" \
        -Dprivlib=%{perl_privlib}     -Darchlib=%{perl_archlib} \
@@ -667,7 +715,10 @@ EOF
        LIBPERL_SONAME=libperl.so.%{_abi}
 
 ## microperl
+%if %{with microperl}
 rm -f uconfig.h
+#chmod u+w uconfig.sh
+#echo "usemallocwrap='define'" >> uconfig.sh
 %{__make} -f Makefile.micro \
        archlib=%{perl_archlib} \
        archlibexp=%{perl_archlib} \
@@ -678,7 +729,9 @@ rm -f uconfig.h
        bin=%{_bindir} \
        scriptdir=%{_bindir} \
        scriptdirexp=%{_bindir} \
+       usemallocwrap='define' \
        OPTIMIZE="%{rpmcflags}"
+%endif
 
 %{?with_tests:%{__make} test}
 #%{?with_tests:%{__make} minitest}
@@ -697,13 +750,13 @@ install -d $RPM_BUILD_ROOT%{_mandir}/{ja,ko,zh_CN,zh_TW}/man1
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
-install microperl $RPM_BUILD_ROOT%{_bindir}
+%{?with_microperl:install microperl $RPM_BUILD_ROOT%{_bindir}}
 
 ## use symlinks instead of hardlinks
-%{__ln_s} -f  perl%{version} $RPM_BUILD_ROOT%{_bindir}/perl
-%{__ln_s} -f sperl%{version} $RPM_BUILD_ROOT%{_bindir}/suidperl
-%{__ln_s} -f  c2ph           $RPM_BUILD_ROOT%{_bindir}/pstruct
-%{__ln_s} -f  psed           $RPM_BUILD_ROOT%{_bindir}/s2p
+%{__ln_s} -f perl%{version} $RPM_BUILD_ROOT%{_bindir}/perl
+%{__ln_s} -f perl%{version} $RPM_BUILD_ROOT%{_bindir}/suidperl
+%{__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
@@ -810,11 +863,11 @@ 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 Email Error \
        Exporter ExtUtils File Filesys Font Games Getopt GnuPG Graph \
-       Graphics HTML HTTP I18N IO/Socket IPC Image Inline Language \
+       Graphics HTML HTTP I18N IO/Socket IPC Image Inline Jabber Language \
        Lingua/{EN,Stem/Snowball} List Locale LockFile Log MIME Mail \
        Math/{BigInt,Fractal} Modem Module Net/SMTP NetServer Netscape \
        News Number Object OLE Parse Pod PostScript Proc RADIUS RPC \
-       RPM Regexp SOAP/Transport SQL Schedule Set Sort Speech \
+       RPM RTF Regexp SOAP/Transport SQL Schedule Set Sort Speech \
        Spreadsheet Statistics String Sub Sys Template TeX Test \
        Text/Query Tie Time Tree UNIVERSAL Unicode WWW \
        XML/{Filter,Handler,Parser,XPath} \
@@ -823,10 +876,11 @@ install -d AI/NeuralNet Algorithm Apache Archive Array Astro Attribute \
 cd $RPM_BUILD_ROOT%{perl_vendorarch}
 install -d Algorithm Astro Audio Authen B BSD Bit Compress Convert \
        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,Convert,Crypt/OpenSSL,Data} \
-       auto/{Devel,Digest,File,IPC,Inline,Locale,Math/BigInt,Net,Regexp} \
-       auto/{Speech/Recognizer,String,Sys,Term,Text,Unicode,XML}
+       Net Speech/Recognizer String Sys Template Term Text Unicode XML \
+       auto/{Astro,Audio,Authen,BSD,Bit,Clone,Compress,Convert} \
+       auto/{Crypt/OpenSSL,Data,Devel,Digest,File,IPC,Inline,Locale} \
+       auto/{Math/BigInt,Net,Regexp,Speech/Recognizer,String,Sys,Term,Text} \
+       auto/{Unicode,XML}
 
 cd "$owd"
 
@@ -863,7 +917,6 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %doc README AUTHORS
 
-
 %files base
 %defattr(644,root,root,755)
 %doc doc-base/*
@@ -1185,6 +1238,10 @@ rm -rf $RPM_BUILD_ROOT
 %{perl_archlib}/auto/Digest/MD5/*.bs
 %{_mandir}/man3/Digest*
 
+# FIXME: Changes file
+%{perl_privlib}/DBM_Filter*
+%{_mandir}/man3/DBM_Filter*
+
 # FIXME: *.h to devel(?), check out the use for *.e2x files
 %{perl_privlib}/Encode
 %{perl_archlib}/Encode*
@@ -1359,7 +1416,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n sperl
 %defattr(644,root,root,755)
 %attr(4755,root,root) %{_bindir}/sperl%{version}
-%attr(4755,root,root) %{_bindir}/suidperl
+%attr(755,root,root)  %{_bindir}/suidperl
 
 %files tools
 %defattr(644,root,root,755)
@@ -1369,6 +1426,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/cpan.*
 %attr(755,root,root) %{_bindir}/find2perl
 %{_mandir}/man1/find2perl.*
+%attr(755,root,root) %{_bindir}/instmodsh
 %attr(755,root,root) %{_bindir}/libnetcfg
 %{_mandir}/man1/libnetcfg.*
 %attr(755,root,root) %{_bindir}/piconv
@@ -1410,7 +1468,9 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/pod*
 %{_mandir}/man1/pod*
 
+%if %{with microperl}
 %files -n microperl
 %defattr(644,root,root,755)
 %doc README.micro Todo.micro
 %attr(755,root,root) %{_bindir}/microperl
+%endif
This page took 0.0525 seconds and 4 git commands to generate.