%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
Summary(zh_CN): Perl ±à³ÌÓïÑÔ¡£
Name: perl
Version: 5.8.4
-Release: 1%{!?with_threads:_nothr}
+Release: 9%{!?with_threads:_nothr}
Epoch: 1
License: GPL v1+ or Artistic
Group: Development/Languages/Perl
Patch4: %{name}_580-use-LD_PRELOAD-for-libperl.so.patch
Patch5: %{name}_581-soname.patch
Patch6: %{name}-test-noproc.patch
-Patch8: %{name}_584-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
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
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?
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
Summary: Modules from the core perl distribution
Summary(pl): Modu³y z podstawowej dystrybucji perla
Group: Libraries
-Requires: %{name}-base = %{epoch}:%{version}
+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-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
%package perldoc
Summary: perldoc - Look up Perl documentation in pod format
Summary(pl): perldoc - przeszukiwanie dokumentacji Perla w formacie pod
-Provides: perldoc = 3.12@%{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
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
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:
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:
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)
%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} \
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} \
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"
%defattr(644,root,root,755)
%doc README AUTHORS
-
%files base
%defattr(644,root,root,755)
%doc doc-base/*