- Reformatted the specfile.
- Added the Source0 URL. - Dropped the MANIFEST.all file for the perl package. - Dropped the MANIFEST.suidperl file for the suidperl subpackage.
This commit is contained in:
parent
10b38cf466
commit
14d24343d9
175
perl.spec
175
perl.spec
@ -5,7 +5,7 @@
|
|||||||
%define multilib_64_archs x86_64 s390x ppc64 sparc64
|
%define multilib_64_archs x86_64 s390x ppc64 sparc64
|
||||||
|
|
||||||
%define perlver 5.8.6
|
%define perlver 5.8.6
|
||||||
%define perlrel 15
|
%define perlrel 16
|
||||||
%define perlepoch 3
|
%define perlepoch 3
|
||||||
|
|
||||||
Provides: perl(:WITH_PERLIO)
|
Provides: perl(:WITH_PERLIO)
|
||||||
@ -32,19 +32,18 @@ Provides: perl(:WITH_LARGEFILES)
|
|||||||
Provides: perl(:WITHOUT_LARGEFILES)
|
Provides: perl(:WITHOUT_LARGEFILES)
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Summary: The Perl programming language.
|
|
||||||
Name: perl
|
Name: perl
|
||||||
Version: %{perlver}
|
Version: %{perlver}
|
||||||
Release: %{perlrel}
|
Release: %{perlrel}
|
||||||
Epoch: %{perlepoch}
|
Epoch: %{perlepoch}
|
||||||
License: Artistic or GPL
|
Summary: The Perl programming language
|
||||||
|
|
||||||
Group: Development/Languages
|
Group: Development/Languages
|
||||||
|
License: Artistic or GPL
|
||||||
Url: http://www.perl.org/
|
Url: http://www.perl.org/
|
||||||
|
|
||||||
Source0: perl-5.8.6.tar.gz
|
Source0: http://www.cpan.org/authors/id/N/NW/NWCLARK/perl-5.8.6.tar.gz
|
||||||
Source1: clean-manifest.pl
|
|
||||||
Source9: MANIFEST.suidperl
|
|
||||||
Source10: system-owned-directories
|
|
||||||
Source11: filter-depends.sh
|
Source11: filter-depends.sh
|
||||||
Source12: perl-5.8.0-libnet.cfg
|
Source12: perl-5.8.0-libnet.cfg
|
||||||
|
|
||||||
@ -60,19 +59,8 @@ Patch13: perl-5.8.3-perlbug-tag.patch
|
|||||||
Patch14: perl-5.8.5-dashI.patch
|
Patch14: perl-5.8.5-dashI.patch
|
||||||
Patch15: perl-5.8.5-incorder.patch
|
Patch15: perl-5.8.5-incorder.patch
|
||||||
|
|
||||||
%define __perl_requires %{SOURCE11}
|
# Configure doesn't listen well when we say no ndbm. When it links in,
|
||||||
|
# it then conflicts with berkeley db. oops.
|
||||||
Conflicts: perl-NDBM_File <= 1:1.75-34.99.6
|
|
||||||
|
|
||||||
Obsoletes: perl-Digest-MD5
|
|
||||||
Obsoletes: perl-MIME-Base64
|
|
||||||
Obsoletes: perl-libnet
|
|
||||||
Obsoletes: perl-Storable
|
|
||||||
Obsoletes: perl-CGI
|
|
||||||
Obsoletes: perl-CPAN
|
|
||||||
Obsoletes: perl-DB_File
|
|
||||||
|
|
||||||
# Configure doesn't listen well when we say no ndbm. When it links in, it then conflicts with berkeley db. oops.
|
|
||||||
Patch16: perl-5.8.0-nondbm.patch
|
Patch16: perl-5.8.0-nondbm.patch
|
||||||
|
|
||||||
# make sure we get the proper ldflags on libperl.so
|
# make sure we get the proper ldflags on libperl.so
|
||||||
@ -120,7 +108,9 @@ Patch32003: perl-5.8.6-libresolv.patch
|
|||||||
# Patch202: perl-5.8.0-Safe2.09.patch
|
# Patch202: perl-5.8.0-Safe2.09.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
BuildRequires: gawk, grep, tcsh, gdbm-devel, db4-devel, dos2unix, man, groff
|
BuildRequires: gawk, grep, tcsh, dos2unix, man, groff
|
||||||
|
BuildRequires: gdbm-devel, db4-devel
|
||||||
|
|
||||||
|
|
||||||
# By definition of 'do' (see 'man perlfunc') this package provides all
|
# By definition of 'do' (see 'man perlfunc') this package provides all
|
||||||
# versions of perl previous to it.
|
# versions of perl previous to it.
|
||||||
@ -181,6 +171,19 @@ Provides: perl(Carp::Heavy)
|
|||||||
# Provides: perl(LWP::UserAgent)
|
# Provides: perl(LWP::UserAgent)
|
||||||
# Provides: perl(URI::URL)
|
# Provides: perl(URI::URL)
|
||||||
|
|
||||||
|
Conflicts: perl-NDBM_File <= 1:1.75-34.99.6
|
||||||
|
|
||||||
|
Obsoletes: perl-Digest-MD5
|
||||||
|
Obsoletes: perl-MIME-Base64
|
||||||
|
Obsoletes: perl-libnet
|
||||||
|
Obsoletes: perl-Storable
|
||||||
|
Obsoletes: perl-CGI
|
||||||
|
Obsoletes: perl-CPAN
|
||||||
|
Obsoletes: perl-DB_File
|
||||||
|
|
||||||
|
%define __perl_requires %{SOURCE11}
|
||||||
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Perl is a high-level programming language with roots in C, sed, awk
|
Perl is a high-level programming language with roots in C, sed, awk
|
||||||
and shell scripting. Perl is good at handling processes and files,
|
and shell scripting. Perl is good at handling processes and files,
|
||||||
@ -195,6 +198,7 @@ scripts.
|
|||||||
Install this package if you want to program in Perl or enable your
|
Install this package if you want to program in Perl or enable your
|
||||||
system to handle Perl scripts.
|
system to handle Perl scripts.
|
||||||
|
|
||||||
|
|
||||||
%if %{suidperl}
|
%if %{suidperl}
|
||||||
%package suidperl
|
%package suidperl
|
||||||
Summary: suidperl, for use with setuid perl scripts
|
Summary: suidperl, for use with setuid perl scripts
|
||||||
@ -206,8 +210,9 @@ suidperl is a setuid binary copy of perl that allows for (hopefully)
|
|||||||
more secure running of setuid perl scripts.
|
more secure running of setuid perl scripts.
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n perl-5.8.6
|
%setup -q
|
||||||
%patch5 -p1
|
%patch5 -p1
|
||||||
# %%patch8 -p1
|
# %%patch8 -p1
|
||||||
%patch11 -p1
|
%patch11 -p1
|
||||||
@ -228,40 +233,30 @@ more secure running of setuid perl scripts.
|
|||||||
%patch29 -p1
|
%patch29 -p1
|
||||||
|
|
||||||
%patch100 -p1
|
%patch100 -p1
|
||||||
|
|
||||||
%ifarch %{multilib_64_archs}
|
%ifarch %{multilib_64_archs}
|
||||||
%patch101 -p1
|
%patch101 -p1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%patch32002 -p1
|
%patch32002 -p1
|
||||||
|
|
||||||
%patch32003 -p1
|
%patch32003 -p1
|
||||||
|
|
||||||
find . -name \*.orig -exec rm -fv {} \;
|
find . -name \*.orig -exec rm -fv {} \;
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
|
||||||
echo "RPM Build arch: %{_arch}"
|
echo "RPM Build arch: %{_arch}"
|
||||||
|
|
||||||
rm -rf $RPM_BUILD_ROOT
|
|
||||||
|
|
||||||
# yes; don't use %_libdir so that noarch packages from other OSs
|
# yes; don't use %_libdir so that noarch packages from other OSs
|
||||||
# arches work correctly :\ the Configure lines below hardcode lib for
|
# arches work correctly :\ the Configure lines below hardcode lib for
|
||||||
# similar reasons.
|
# similar reasons.
|
||||||
|
|
||||||
%ifarch %{multilib_64_archs}
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/usr/lib/perl5/%{perlver}
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/usr/lib/perl5/site_perl/%{perlver}
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/usr/lib/perl5/vendor_perl/%{perlver}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
sh Configure -des -Doptimize="$RPM_OPT_FLAGS" \
|
sh Configure -des -Doptimize="$RPM_OPT_FLAGS" \
|
||||||
-Dversion=5.8.6 \
|
-Dversion=%{perlver} \
|
||||||
-Dmyhostname=localhost \
|
-Dmyhostname=localhost \
|
||||||
-Dperladmin=root@localhost \
|
-Dperladmin=root@localhost \
|
||||||
-Dcc='%{__cc}' \
|
-Dcc='%{__cc}' \
|
||||||
-Dcf_by='Red Hat, Inc.' \
|
-Dcf_by='Red Hat, Inc.' \
|
||||||
-Dinstallprefix=$RPM_BUILD_ROOT%{_prefix} \
|
-Dinstallprefix=%{_prefix} \
|
||||||
-Dprefix=%{_prefix} \
|
-Dprefix=%{_prefix} \
|
||||||
%ifarch %{multilib_64_archs}
|
%ifarch %{multilib_64_archs}
|
||||||
-Dlibpth="/usr/local/lib64 /lib64 /usr/lib64" \
|
-Dlibpth="/usr/local/lib64 /lib64 /usr/lib64" \
|
||||||
@ -304,20 +299,37 @@ sh Configure -des -Doptimize="$RPM_OPT_FLAGS" \
|
|||||||
-Ubincompat5005 \
|
-Ubincompat5005 \
|
||||||
-Uversiononly \
|
-Uversiononly \
|
||||||
-Dpager='/usr/bin/less -isr' \
|
-Dpager='/usr/bin/less -isr' \
|
||||||
-Dd_gethostent_r_proto -Ud_endhostent_r_proto -Ud_endprotoent_r_proto -Ud_endservent_r_proto \
|
-Dd_gethostent_r_proto -Ud_endhostent_r_proto -Ud_sethostent_r_proto \
|
||||||
-Ud_sethostent_r_proto -Ud_setprotoent_r_proto -Ud_setservent_r_proto \
|
-Ud_endprotoent_r_proto -Ud_setprotoent_r_proto \
|
||||||
|
-Ud_endservent_r_proto -Ud_setservent_r_proto \
|
||||||
-Dinc_version_list='%{perlmodcompat}'
|
-Dinc_version_list='%{perlmodcompat}'
|
||||||
|
|
||||||
make
|
make
|
||||||
|
|
||||||
|
# perl 5.8.6 - some tests fail (see bug #127023 comments #{31,32,34})
|
||||||
make test || /bin/true
|
make test || /bin/true
|
||||||
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
rm -rf $RPM_BUILD_ROOT
|
rm -rf $RPM_BUILD_ROOT
|
||||||
mkdir -p $RPM_BUILD_ROOT
|
|
||||||
|
|
||||||
make install -f Makefile
|
make install DESTDIR=$RPM_BUILD_ROOT
|
||||||
|
|
||||||
|
|
||||||
|
%ifarch %{multilib_64_archs}
|
||||||
|
mkdir -p -m 755 $RPM_BUILD_ROOT/usr/lib/perl5/%{perlver}
|
||||||
|
mkdir -p -m 755 $RPM_BUILD_ROOT/usr/lib/perl5/site_perl/%{perlver}
|
||||||
|
mkdir -p -m 755 $RPM_BUILD_ROOT/usr/lib/perl5/vendor_perl/%{perlver}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch %{multilib_64_archs}
|
||||||
|
mkdir -p -m 755 ${RPM_BUILD_ROOT}/usr/lib64/perl5/vendor_perl/%{perlver}/%{_arch}-%{_os}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Compatibility directories
|
||||||
|
#
|
||||||
pushd $RPM_BUILD_ROOT/%{_libdir}/perl5
|
pushd $RPM_BUILD_ROOT/%{_libdir}/perl5
|
||||||
for i in %{perlmodcompat}; do
|
for i in %{perlmodcompat}; do
|
||||||
mkdir -pm 755 $i/%{_arch}-%{_os}%{thread_arch}/CORE
|
mkdir -pm 755 $i/%{_arch}-%{_os}%{thread_arch}/CORE
|
||||||
@ -328,14 +340,11 @@ for i in %{perlmodcompat}; do
|
|||||||
done
|
done
|
||||||
popd
|
popd
|
||||||
|
|
||||||
%ifarch %{multilib_64_archs}
|
|
||||||
mkdir -p ${RPM_BUILD_ROOT}/usr/lib64/perl5/vendor_perl/%{perlver}/%{_arch}-%{_os}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
|
install -p -m 755 utils/pl2pm ${RPM_BUILD_ROOT}%{_bindir}/pl2pm
|
||||||
install -m 755 utils/pl2pm ${RPM_BUILD_ROOT}%{_bindir}/pl2pm
|
|
||||||
|
|
||||||
# build MANIFEST.all
|
|
||||||
|
#
|
||||||
|
|
||||||
%define new_perl_lib $RPM_BUILD_ROOT%{_libdir}/perl5/%{perlver}:$RPM_BUILD_ROOT/usr/lib/perl5/%{perlver}
|
%define new_perl_lib $RPM_BUILD_ROOT%{_libdir}/perl5/%{perlver}:$RPM_BUILD_ROOT/usr/lib/perl5/%{perlver}
|
||||||
%define comp_perl_lib $RPM_BUILD_ROOT/usr/lib/perl5/%{perlver}:$RPM_BUILD_ROOT/usr/lib/perl5/%{perlver}
|
%define comp_perl_lib $RPM_BUILD_ROOT/usr/lib/perl5/%{perlver}:$RPM_BUILD_ROOT/usr/lib/perl5/%{perlver}
|
||||||
@ -351,7 +360,6 @@ do
|
|||||||
-d $RPM_BUILD_ROOT%{_libdir}/perl5/%{perlver}/%{_arch}-%{_os}%{thread_arch} $i || /bin/true
|
-d $RPM_BUILD_ROOT%{_libdir}/perl5/%{perlver}/%{_arch}-%{_os}%{thread_arch} $i || /bin/true
|
||||||
done
|
done
|
||||||
|
|
||||||
%{new_perl} -p -i -e "s|$RPM_BUILD_ROOT||g;" %{new_arch_lib}/Config.pm
|
|
||||||
|
|
||||||
for dir in $(%{new_perl} -le 'print join("\n", @INC)' | grep '^/usr/lib')
|
for dir in $(%{new_perl} -le 'print join("\n", @INC)' | grep '^/usr/lib')
|
||||||
do
|
do
|
||||||
@ -369,60 +377,61 @@ for i in %{perlver} %{perlmodcompat} ; do
|
|||||||
done
|
done
|
||||||
|
|
||||||
|
|
||||||
%ifarch %{multilib_64_archs}
|
#
|
||||||
mkdir -pm 755 $RPM_BUILD_ROOT/usr/lib/perl5/site_perl/%{perlver}
|
# libnet configuration file
|
||||||
mkdir -pm 755 $RPM_BUILD_ROOT/usr/lib/perl5/vendor_perl/%{perlver}
|
#
|
||||||
%endif
|
mkdir -p -m 755 $RPM_BUILD_ROOT/%{_libdir}/perl5/%{perlver}/Net
|
||||||
|
install -p -m 644 %{SOURCE12} $RPM_BUILD_ROOT/%{_libdir}/perl5/%{perlver}/Net/libnet.cfg
|
||||||
mkdir -p $RPM_BUILD_ROOT/%{_libdir}/perl5/%{perlver}/Net
|
|
||||||
install -m 0644 %{SOURCE12} $RPM_BUILD_ROOT/%{_libdir}/perl5/%{perlver}/Net/libnet.cfg
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Core modules removal:
|
||||||
|
# *NDBM* - removed
|
||||||
|
# *HiRes* - perl-Time-HiRes
|
||||||
|
# *Filter* - perl-Filter and perl-Filter-Simple
|
||||||
|
#
|
||||||
find $RPM_BUILD_ROOT -name '*HiRes*' | xargs rm -rfv
|
find $RPM_BUILD_ROOT -name '*HiRes*' | xargs rm -rfv
|
||||||
find $RPM_BUILD_ROOT -name '*Filter*' | xargs rm -rfv
|
find $RPM_BUILD_ROOT -name '*Filter*' | xargs rm -rfv
|
||||||
find $RPM_BUILD_ROOT -name '*NDBM*' | xargs rm -rfv
|
find $RPM_BUILD_ROOT -name '*NDBM*' | xargs rm -rfv
|
||||||
|
|
||||||
|
|
||||||
find $RPM_BUILD_ROOT -type f -name '*.bs' -a -empty -exec rm -f {} ';'
|
find $RPM_BUILD_ROOT -type f -name '*.bs' -a -empty -exec rm -f {} ';'
|
||||||
|
|
||||||
find $RPM_BUILD_ROOT -type f -or -type l > MANIFEST.all
|
|
||||||
find $RPM_BUILD_ROOT -type d -printf "%%%%dir %p\n" >> MANIFEST.all
|
|
||||||
|
|
||||||
%{new_perl} -i -p -e "s|$RPM_BUILD_ROOT||g;" MANIFEST.all
|
|
||||||
|
|
||||||
# add .gz to all the entries in the man directories. necessary since
|
|
||||||
# brp-compress takes place after the manifest is built but the %files
|
|
||||||
# section must match what it ends up renaming files into
|
|
||||||
%{new_perl} -i -p -e 's((^/usr/share/man/.*))($1.gz)g' MANIFEST.all
|
|
||||||
|
|
||||||
for i in %{SOURCE10}
|
|
||||||
do
|
|
||||||
%{new_perl} %{SOURCE1} %{_arch} $i MANIFEST.all MANIFEST.all.tmp %{_libdir} %{thread_arch}
|
|
||||||
mv MANIFEST.all.tmp MANIFEST.all
|
|
||||||
done
|
|
||||||
|
|
||||||
%if %{suidperl}
|
|
||||||
%{new_perl} %{SOURCE1} %{_arch} %{SOURCE9} MANIFEST.all MANIFEST.all.tmp %{_libdir} %{thread_arch}
|
|
||||||
mv MANIFEST.all.tmp MANIFEST.all
|
|
||||||
%endif
|
|
||||||
|
|
||||||
# fix the rest of the stuff
|
|
||||||
find $RPM_BUILD_ROOT%{_libdir}/perl* \
|
|
||||||
-name .packlist -o -name perllocal.pod -o -name config.h | \
|
|
||||||
%{new_perl_flags} xargs $RPM_BUILD_ROOT/%{_bindir}/perl -I lib/ -i -p -e "s|$RPM_BUILD_ROOT||g;" MANIFEST.all
|
|
||||||
|
|
||||||
chmod -R u+w $RPM_BUILD_ROOT/*
|
chmod -R u+w $RPM_BUILD_ROOT/*
|
||||||
|
|
||||||
|
|
||||||
%clean
|
%clean
|
||||||
rm -rf $RPM_BUILD_ROOT
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
%files -f MANIFEST.all
|
|
||||||
%defattr(-,root,root,-)
|
|
||||||
|
|
||||||
%if %{suidperl}
|
%files
|
||||||
%files -f %{SOURCE9} suidperl
|
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
|
%{_mandir}/man1/*.1*
|
||||||
|
%{_mandir}/man3/*.3*
|
||||||
|
%{_bindir}/*
|
||||||
|
%{_libdir}/perl5/
|
||||||
|
%ifarch %{multilib_64_archs}
|
||||||
|
/usr/lib/perl5/
|
||||||
|
%endif
|
||||||
|
%if %{suidperl}
|
||||||
|
%exclude %{_bindir}/suidperl
|
||||||
|
%exclude %{_bindir}/sperl%{perlver}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%if %{suidperl}
|
||||||
|
%files suidperl
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_bindir}/suidperl
|
||||||
|
%{_bindir}/sperl%{perlver}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Aug 9 2005 Jose Pedro Oliveira <jpo at di.uminho.pt> - 3:5.8.6-16
|
||||||
|
- Reformatted the specfile.
|
||||||
|
- Added the Source0 URL.
|
||||||
|
- Dropped the MANIFEST.all file for the perl package.
|
||||||
|
- Dropped the MANIFEST.suidperl file for the suidperl subpackage.
|
||||||
|
|
||||||
* Wed May 18 2005 Warren Togami <wtogami@redhat.com> - 3:5.8.6-15
|
* Wed May 18 2005 Warren Togami <wtogami@redhat.com> - 3:5.8.6-15
|
||||||
- remove unused /tmp/MANIFEST.all (#151801)
|
- remove unused /tmp/MANIFEST.all (#151801)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user