Sophie

Sophie

distrib > * > 2008.0 > x86_64 > by-pkgid > 4c28fc3052a652da2553e831b24cbdf7 > files > 23

perl-5.8.8-12.2mdv2008.0.src.rpm

%define threading 0
%define debugging 0

%if %threading
%define thread_arch -thread-multi
%else
%define thread_arch %{nil}
%endif

%if %debugging
%else
# we don't want -g since it turns -DDEBUGGING on
%define debugcflags %{nil}
%endif

%define arch %(echo %{_arch} | sed -e "s/amd64/x86_64/")
%define full_arch %{arch}-%{_os}%{thread_arch}
# Don't change to %{_libdir} as perl is clean and has arch-dependent subdirs
%define perl_root %{_prefix}/lib/perl5

%define subrel 2

Summary: The Perl programming language
Name: perl
Version: 5.8.8
Release: %mkrel 12
%define rel %{nil}
License: GPL or Artistic
Group: Development/Perl
Url: http://www.perl.org/
Epoch: 2
# ftp://ftp.funet.fi/pub/languages/perl/snap/perl@17574.tbz
#ftp://ftp.funet.fi/pub/languages/perl/CPAN/src/perl-%{version}.tar.bz2
# taken from debian
Source0: perl-%{version}%{rel}.tar.bz2
Source1: perl-headers-wanted
Source2: perl-5.8.0-RC2-special-h2ph-not-failing-on-machine_ansi_header.patch
Patch3: perl-5.8.1-RC3-norootcheck.patch
Patch6: perl-5.8.8-RC1-fix-LD_RUN_PATH-for-MakeMaker.patch
Patch14: perl-5.8.1-RC3-install-files-using-chmod-644.patch
Patch15: perl-5.8.3-lib64.patch
Patch16: perl-5.8.5-RC1-perldoc-use-nroff-compatibility-option.patch
#(peroyvind) use -fPIC in stead of -fpic or else compile will fail on sparc (taken from redhat)
Patch21: perl-5.8.1-RC4-fpic-fPIC.patch
Patch23: perl-5.8.8-patchlevel.patch
Patch24: perl-5.8.4-no-test-fcgi.patch
Patch29: perl-5.8.8-rpmdebug.patch
Patch32: perl-5.8.7-incversionlist.patch
Patch33: perl-5.8.8-26536.patch
Patch34: perl-27210
Patch35: perl-27211
Patch36: perl-27359
Patch37: perl-27363
Patch38: perl-donot-defer-sig11.patch
Patch39: perlio-encoding.patch
Patch40: perl-5.8.8-rh-CVE-2007-5116.patch
Patch41: perl-5.8.8-fix_gcc_4.2.2_build.patch
Patch42: perl-5.8.8-deb-CVE-2008-1927.patch

Buildroot: %{_tmppath}/%{name}
Requires: perl-base = %{epoch}:%{version}-%{release}
Provides: perl(getopts.pl)
Provides: perl(ctime.pl)
Provides: perl(flush.pl)
Provides: perl(find.pl)
Provides: perl(attributes) perl(fields) perl(locale) perl(subs)
Provides:  perl-MIME-Base64 perl-libnet perl-Storable perl-Digest-MD5 perl-Time-HiRes perl-Locale-Codes perl-Test-Simple perl-Test-Builder-Tester
Obsoletes: perl-MIME-Base64 perl-libnet perl-Storable perl-Digest-MD5 perl-Time-HiRes perl-Locale-Codes perl-Test-Simple perl-Test-Builder-Tester
Conflicts: perl-Parse-RecDescent < 1.80-6mdk
Conflicts: perl-Filter < 1.28-6mdk
Conflicts: apache-mod_perl <= 1.3.24_1.26-1mdk
%define _requires_exceptions Mac\\|VMS\\|perl >=\\|perl(Errno)\\|perl(Fcntl)\\|perl(IO)\\|perl(IO::File)\\|perl(IO::Socket::INET)\\|perl(IO::Socket::UNIX)\\|perl(Tk)\\|perl(Tk::Pod)

# for NDBM
BuildRequires: db1-devel 
BuildRequires: db2-devel 
BuildRequires: gdbm-devel
%if "%{_lib}" == "lib64"
BuildRequires: devel(libgdbm_compat(64bit))  
%else
BuildRequires: devel(libgdbm_compat)
%endif
BuildRequires: rpm-mandriva-setup-build >= 1.8

BuildRequires: man

%package base
Version: %{version}
Summary: The Perl programming language (base)
Provides: perl(v5.6.0) perl(base) perl(bytes) perl(constant) perl(integer) perl(lib) perl(overload) perl(strict) perl(utf8) perl(vars) perl(warnings) perl(Carp::Heavy)
Group: Development/Perl
Url: http://www.perl.org/
# explicit file provides
Provides: /usr/bin/perl

%package devel
Version: %{version}
Summary: The Perl programming language (devel)
Group: Development/Perl
Url: http://www.perl.org/
Requires: %{name} = %{epoch}:%{version}-%{release}

%package doc
Version: %{version}
Summary: The Perl programming language (documentation)
Group: Development/Perl
Url: http://www.perl.org/
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: groff-for-man

%package suid
Version: %{version}
Summary: The Perl programming language (suidperl)
Group: Development/Perl
Url: http://www.perl.org/
Requires: %{name}-base = %{epoch}:%{version}-%{release}

%description
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 is especially good at handling text.  Perl's hallmarks are
practicality and efficiency.  While it is used to do a lot of
different things, Perl's most common applications (and what it excels
at) are probably system administration utilities and web programming.
A large proportion of the CGI scripts on the web are written in Perl.
You need the perl package installed on your system so that your
system can handle Perl scripts.

You need perl-base to have a full perl.

%description base
This is the base package for %{name}.

%description devel
This is the devel package for %{name}.

%description doc
This is the documentation package for %{name}.
It contains also the 'perldoc' program.

%description suid
This is the package that provides suidperl, a secure way to
write suid perl scripts.

%prep
%setup -q -n %{name}-%{version}%{rel} -a 2
%patch3 -p1
%patch6 -p0
%patch14 -p1
%patch15 -p1
%patch16 -p0
%patch21 -p1 -b .peroyvind
%patch23 -p0
%patch24 -p0
%patch29 -p0
%patch32 -p0
%patch33 -p1
%patch34 -p1
%patch35 -p1
%patch36 -p1
%patch37 -p1
%patch38 -p0
%patch39 -p0
%patch40 -p1
%patch41 -p0
%patch42 -p1 -b .cve-2008-1927

%build
%ifarch ppc
   RPM_OPT_FLAGS=`echo "$RPM_OPT_FLAGS"|sed -e 's/-O2/-O1/g'`
%endif

sh Configure -des \
  -Dinc_version_list="5.8.7 5.8.7/%{full_arch} 5.8.6 5.8.6/%{full_arch} 5.8.5 5.8.4 5.8.3 5.8.2 5.8.1 5.8.0 5.6.1 5.6.0" \
  -Darchname=%{arch}-%{_os} \
  -Dcc='%{__cc}' \
%if %debugging
  -Doptimize=-g -DDEBUGGING \
%else
  -Doptimize="$RPM_OPT_FLAGS" \
%endif
  -Dprefix=%_prefix -Dvendorprefix=%_prefix \
  -Dsiteprefix=%_prefix -Dsitebin=%_prefix/local/bin \
  -Dsiteman1dir=%_prefix/local/share/man/man1 \
  -Dsiteman3dir=%_prefix/local/share/man/man3 \
  -Dman3ext=3pm \
  -Dcf_by=Mandriva -Dmyhostname=localhost -Dperladmin=root@localhost -Dcf_email=root@localhost  \
  -Dd_dosuid \
  -Ud_csh \
  -Duseshrplib \
%if %threading
  -Duseithreads \
%endif
%ifarch sparc
  -Ud_longdbl \
%endif

make

%check
# for test, building a perl with no rpath
# for test, unset RPM_BUILD_ROOT so that the MakeMaker trick is not triggered
rm -f perl
RPM_BUILD_ROOT="" make test_harness_notty CCDLFLAGS= 
rm -f perl
make perl

%install
rm -rf $RPM_BUILD_ROOT

%makeinstall_std

install -d $RPM_BUILD_ROOT%{perl_root}/vendor_perl/%{version}/%{full_arch}/auto

# We prefer 0755 instead of 0555
find $RPM_BUILD_ROOT -name "*.so" | xargs chmod 0755

# Delete CGI stuff, because CGI.pm is now a seperate package
find $RPM_BUILD_ROOT -name "CGI*" | xargs rm -rf

cp -f utils/h2ph utils/h2ph_patched
bzcat %{SOURCE2} | patch -p1

%if 1
# TODO figure out why the cleaner version with LD_PRELOAD doesn't work here.
LD_LIBRARY_PATH=. ./perl -Ilib utils/h2ph_patched -a -d $RPM_BUILD_ROOT%{perl_root}/%{version}/%{full_arch} `cat %{SOURCE1}` > /dev/null ||:
%else
LD_PRELOAD=`pwd`/libperl.so ./perl -Ilib utils/h2ph_patched -a -d $RPM_BUILD_ROOT%{perl_root}/%{version}/%{full_arch} `cat %{SOURCE1}` > /dev/null ||:
%endif

(
    # i don't like hardlinks, having symlinks instead:
    cd $RPM_BUILD_ROOT%{_bindir}
    ln -sf perl5 perl
    ln -s perl%{version} perl5
)

rm -f $RPM_BUILD_ROOT%{_bindir}/perlivp $RPM_BUILD_ROOT%{_mandir}/man1/perlivp.1

%ifarch ppc
perl -ni -e 'print if !/sub __syscall_nr/' $RPM_BUILD_ROOT%{perl_root}/%{version}/%{full_arch}/asm/unistd.ph
%endif

%ifarch ppc
perl -ni -e 'print unless m/sub __syscall_nr/' $RPM_BUILD_ROOT/%{perl_root}/%{version}/%{full_arch}/asm/unistd.ph
%endif

# call spec-helper before creating the file list
# (spec-helper removes some files, and compress some others)
s=/usr/share/spec-helper/spec-helper ; [ -x $s ] && $s

(
   cat > perl-base.list <<EOF
%{_bindir}/perl
%{_bindir}/perl5
%{_bindir}/perl%{version}
%dir %{perl_root}
%dir %{perl_root}/%{version}
%dir %{perl_root}/%{version}/File
%{perl_root}/%{version}/File/Basename.pm
%{perl_root}/%{version}/File/Find.pm
%{perl_root}/%{version}/File/Path.pm
%{perl_root}/%{version}/File/Spec.pm
%dir %{perl_root}/%{version}/File/Spec
%{perl_root}/%{version}/File/Spec/Unix.pm
%dir %{perl_root}/%{version}/Getopt
%{perl_root}/%{version}/Getopt/Long.pm
%{perl_root}/%{version}/Getopt/Std.pm
%dir %{perl_root}/%{version}/Time
%{perl_root}/%{version}/Time/Local.pm
%{perl_root}/%{version}/AutoLoader.pm
%dir %{perl_root}/%{version}/Carp
%{perl_root}/%{version}/Carp.pm
%{perl_root}/%{version}/Carp/Heavy.pm
%{perl_root}/%{version}/DirHandle.pm
%{perl_root}/%{version}/%{full_arch}/Errno.pm
%dir %{perl_root}/%{version}/Exporter
%{perl_root}/%{version}/Exporter/Heavy.pm
%{perl_root}/%{version}/Exporter.pm
%{perl_root}/%{version}/FileHandle.pm
%{perl_root}/%{version}/PerlIO.pm
%{perl_root}/%{version}/SelectSaver.pm
%{perl_root}/%{version}/Symbol.pm
%{perl_root}/%{version}/base.pm
%{perl_root}/%{version}/bytes.pm
%{perl_root}/%{version}/constant.pm
%{perl_root}/%{version}/integer.pm
%{perl_root}/%{version}/overload.pm
%{perl_root}/%{version}/strict.pm
%{perl_root}/%{version}/utf8.pm
%{perl_root}/%{version}/utf8_heavy.pl
%{perl_root}/%{version}/unicore/Exact.pl
%{perl_root}/%{version}/unicore/Canonical.pl
%{perl_root}/%{version}/unicore/PVA.pl
%{perl_root}/%{version}/unicore/To/Lower.pl
%{perl_root}/%{version}/unicore/To/Fold.pl
%{perl_root}/%{version}/unicore/To/Upper.pl
%{perl_root}/%{version}/unicore/lib/gc_sc/Word.pl
%{perl_root}/%{version}/unicore/lib/gc_sc/Digit.pl
%{perl_root}/%{version}/vars.pm
%dir %{perl_root}/%{version}/warnings
%{perl_root}/%{version}/warnings/register.pm
%{perl_root}/%{version}/warnings.pm
%dir %{perl_root}/%{version}/%{full_arch}
%dir %{perl_root}/%{version}/%{full_arch}/Data
%{perl_root}/%{version}/%{full_arch}/lib.pm
%{perl_root}/%{version}/%{full_arch}/Cwd.pm
%{perl_root}/%{version}/%{full_arch}/Data/Dumper.pm
%{perl_root}/%{version}/%{full_arch}/Fcntl.pm
%dir %{perl_root}/%{version}/%{full_arch}/File
%{perl_root}/%{version}/%{full_arch}/File/Glob.pm
%{perl_root}/%{version}/%{full_arch}/IO.pm
%dir %{perl_root}/%{version}/%{full_arch}/IO
%{perl_root}/%{version}/%{full_arch}/IO/File.pm
%{perl_root}/%{version}/%{full_arch}/IO/Handle.pm
%{perl_root}/%{version}/%{full_arch}/IO/Seekable.pm
%{perl_root}/%{version}/%{full_arch}/IO/Select.pm
%{perl_root}/%{version}/%{full_arch}/IO/Socket.pm
%dir %{perl_root}/%{version}/%{full_arch}/auto
%dir %{perl_root}/%{version}/%{full_arch}/auto/Cwd
%{perl_root}/%{version}/%{full_arch}/auto/Cwd/Cwd.so
%dir %{perl_root}/%{version}/%{full_arch}/auto/DynaLoader
%{perl_root}/%{version}/%{full_arch}/auto/DynaLoader/dl_findfile.al
%dir %{perl_root}/%{version}/%{full_arch}/auto/Data
%dir %{perl_root}/%{version}/%{full_arch}/auto/Data/Dumper
%{perl_root}/%{version}/%{full_arch}/auto/Data/Dumper/Dumper.so
%dir %{perl_root}/%{version}/%{full_arch}/auto/Fcntl
%{perl_root}/%{version}/%{full_arch}/auto/Fcntl/Fcntl.so
%dir %{perl_root}/%{version}/%{full_arch}/auto/File
%dir %{perl_root}/%{version}/%{full_arch}/auto/File/Glob
%{perl_root}/%{version}/%{full_arch}/auto/File/Glob/Glob.so
%dir %{perl_root}/%{version}/%{full_arch}/auto/IO
%{perl_root}/%{version}/%{full_arch}/auto/IO/IO.so
%dir %{perl_root}/%{version}/%{full_arch}/auto/POSIX
%{perl_root}/%{version}/%{full_arch}/auto/POSIX/POSIX.so
%{perl_root}/%{version}/%{full_arch}/auto/POSIX/autosplit.ix
%{perl_root}/%{version}/%{full_arch}/auto/POSIX/load_imports.al
%{perl_root}/%{version}/%{full_arch}/auto/POSIX/tmpfile.al
%dir %{perl_root}/%{version}/%{full_arch}/auto/Socket
%{perl_root}/%{version}/%{full_arch}/auto/Socket/Socket.so
%dir %{perl_root}/%{version}/%{full_arch}/auto/Storable
%{perl_root}/%{version}/%{full_arch}/auto/Storable/Storable.so
%{perl_root}/%{version}/%{full_arch}/auto/Storable/autosplit.ix
%{perl_root}/%{version}/%{full_arch}/auto/Storable/store.al
%{perl_root}/%{version}/%{full_arch}/auto/Storable/_store.al
%{perl_root}/%{version}/%{full_arch}/auto/Storable/retrieve.al
%{perl_root}/%{version}/%{full_arch}/auto/Storable/_retrieve.al
%dir %{perl_root}/%{version}/%{full_arch}/auto/re
%{perl_root}/%{version}/%{full_arch}/auto/re/re.so
%{perl_root}/%{version}/%{full_arch}/Config.pm
%{perl_root}/%{version}/%{full_arch}/DynaLoader.pm
%{perl_root}/%{version}/%{full_arch}/POSIX.pm
%{perl_root}/%{version}/%{full_arch}/Socket.pm
%{perl_root}/%{version}/%{full_arch}/Storable.pm
%{perl_root}/%{version}/%{full_arch}/re.pm
%{perl_root}/%{version}/%{full_arch}/XSLoader.pm
%dir %{perl_root}/%{version}/%{full_arch}/CORE
%{perl_root}/%{version}/%{full_arch}/CORE/libperl.so
%dir %{perl_root}/%{version}/%{full_arch}/asm
%dir %{perl_root}/%{version}/%{full_arch}/bits
%dir %{perl_root}/%{version}/%{full_arch}/sys
%{perl_root}/%{version}/%{full_arch}/asm/unistd.ph
%ifarch ia64
%{perl_root}/%{version}/%{full_arch}/asm/break.ph
%endif
%ifarch x86_64
%{perl_root}/%{version}/%{full_arch}/asm-i386/unistd.ph
%{perl_root}/%{version}/%{full_arch}/asm-x86_64/unistd.ph
%{perl_root}/%{version}/%{full_arch}/bits/wordsize.ph
%endif
%ifarch ppc64
%{perl_root}/%{version}/%{full_arch}/asm-ppc/unistd.ph
%{perl_root}/%{version}/%{full_arch}/asm-ppc64/unistd.ph
%{perl_root}/%{version}/%{full_arch}/bits/wordsize.ph
%endif
%{perl_root}/%{version}/%{full_arch}/bits/syscall.ph
%{perl_root}/%{version}/%{full_arch}/sys/syscall.ph
%{perl_root}/%{version}/%{full_arch}/_h2ph_pre.ph
%{perl_root}/%{version}/%{full_arch}/syscall.ph
EOF

# these two normally belong in perl.list, but for some reason the docdir
# isn't being created or working properly and as a result the build fails
# this is a maintainer issue, so if someone figures it out and wants it back,
# great, otherwise they remain out for the time being
#%doc README
#%doc Artistic
   cat > perl.list <<EOF
%{_bindir}/a2p
%{_bindir}/perlbug
%{_bindir}/find2perl
%{_bindir}/pod2man
%{_bindir}/pod2html
%{_bindir}/pod2text
%{_bindir}/pod2latex
%{_bindir}/splain
%{_bindir}/s2p
%{_mandir}/man3/*
%exclude %{_mandir}/man3/Pod::Perldoc::ToChecker.3pm*
%exclude %{_mandir}/man3/Pod::Perldoc::ToMan.3pm*
%exclude %{_mandir}/man3/Pod::Perldoc::ToNroff.3pm*
%exclude %{_mandir}/man3/Pod::Perldoc::ToPod.3pm*
%exclude %{_mandir}/man3/Pod::Perldoc::ToRtf.3pm*
%exclude %{_mandir}/man3/Pod::Perldoc::ToText.3pm*
%exclude %{_mandir}/man3/Pod::Perldoc::ToTk.3pm*
%exclude %{_mandir}/man3/Pod::Perldoc::ToXml.3pm*
%exclude %{perl_root}/%{version}/Pod/Perldoc.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc
%exclude %{perl_root}/%{version}/Pod/Perldoc/BaseTo.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc/GetOptsOO.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc/ToChecker.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc/ToMan.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc/ToNroff.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc/ToPod.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc/ToRtf.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc/ToText.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc/ToTk.pm
%exclude %{perl_root}/%{version}/Pod/Perldoc/ToXml.pm
EOF

   cat > perl-doc.list <<EOF
%{_bindir}/perldoc
%{_mandir}/man1/perldoc.1*
%{perl_root}/%{version}/Pod/Perldoc.pm
%{perl_root}/%{version}/Pod/Perldoc
%{perl_root}/%{version}/Pod/Perldoc/BaseTo.pm
%{perl_root}/%{version}/Pod/Perldoc/GetOptsOO.pm
%{perl_root}/%{version}/Pod/Perldoc/ToChecker.pm
%{perl_root}/%{version}/Pod/Perldoc/ToMan.pm
%{perl_root}/%{version}/Pod/Perldoc/ToNroff.pm
%{perl_root}/%{version}/Pod/Perldoc/ToPod.pm
%{perl_root}/%{version}/Pod/Perldoc/ToRtf.pm
%{perl_root}/%{version}/Pod/Perldoc/ToText.pm
%{perl_root}/%{version}/Pod/Perldoc/ToTk.pm
%{perl_root}/%{version}/Pod/Perldoc/ToXml.pm
%{_mandir}/man3/Pod::Perldoc*
EOF

   cat > perl-devel.list <<EOF
%{_bindir}/cpan
%{_bindir}/pstruct
%{_bindir}/perlcc
%{_bindir}/piconv
%{_bindir}/dprofpp
%{_bindir}/c2ph
%{_bindir}/h2xs
%{_bindir}/enc2xs
%{_bindir}/instmodsh
%{_bindir}/libnetcfg
%{_bindir}/h2ph
%{_bindir}/pl2pm
%{_bindir}/podchecker
%{_bindir}/podselect
%{_bindir}/pod2usage
%{_bindir}/psed
%{_bindir}/prove
%{_bindir}/xsubpp
%{perl_root}/%{version}/Encode/encode.h
%{perl_root}/%{version}/%{full_arch}/auto/DynaLoader/DynaLoader.a
%{perl_root}/%{version}/%{full_arch}/CORE/EXTERN.h
%{perl_root}/%{version}/%{full_arch}/CORE/INTERN.h
%{perl_root}/%{version}/%{full_arch}/CORE/XSUB.h
%{perl_root}/%{version}/%{full_arch}/CORE/av.h
%{perl_root}/%{version}/%{full_arch}/CORE/cc_runtime.h
%{perl_root}/%{version}/%{full_arch}/CORE/cop.h
%{perl_root}/%{version}/%{full_arch}/CORE/cv.h
%{perl_root}/%{version}/%{full_arch}/CORE/dosish.h
%{perl_root}/%{version}/%{full_arch}/CORE/embed.h
%{perl_root}/%{version}/%{full_arch}/CORE/embedvar.h
%{perl_root}/%{version}/%{full_arch}/CORE/fakesdio.h
%{perl_root}/%{version}/%{full_arch}/CORE/fakethr.h
%{perl_root}/%{version}/%{full_arch}/CORE/form.h
%{perl_root}/%{version}/%{full_arch}/CORE/gv.h
%{perl_root}/%{version}/%{full_arch}/CORE/handy.h
%{perl_root}/%{version}/%{full_arch}/CORE/hv.h
%{perl_root}/%{version}/%{full_arch}/CORE/intrpvar.h
%{perl_root}/%{version}/%{full_arch}/CORE/iperlsys.h
%{perl_root}/%{version}/%{full_arch}/CORE/keywords.h
%{perl_root}/%{version}/%{full_arch}/CORE/malloc_ctl.h
%{perl_root}/%{version}/%{full_arch}/CORE/mg.h
%{perl_root}/%{version}/%{full_arch}/CORE/nostdio.h
%{perl_root}/%{version}/%{full_arch}/CORE/op.h
%{perl_root}/%{version}/%{full_arch}/CORE/opcode.h
%{perl_root}/%{version}/%{full_arch}/CORE/opnames.h
%{perl_root}/%{version}/%{full_arch}/CORE/pad.h
%{perl_root}/%{version}/%{full_arch}/CORE/patchlevel.h
%{perl_root}/%{version}/%{full_arch}/CORE/perlapi.h
%{perl_root}/%{version}/%{full_arch}/CORE/perlio.h
%{perl_root}/%{version}/%{full_arch}/CORE/perliol.h
%{perl_root}/%{version}/%{full_arch}/CORE/perlsdio.h
%{perl_root}/%{version}/%{full_arch}/CORE/perlsfio.h
%{perl_root}/%{version}/%{full_arch}/CORE/perlvars.h
%{perl_root}/%{version}/%{full_arch}/CORE/perly.h
%{perl_root}/%{version}/%{full_arch}/CORE/pp.h
%{perl_root}/%{version}/%{full_arch}/CORE/pp_proto.h
%{perl_root}/%{version}/%{full_arch}/CORE/proto.h
%{perl_root}/%{version}/%{full_arch}/CORE/reentr.h
%{perl_root}/%{version}/%{full_arch}/CORE/reentr.inc
%{perl_root}/%{version}/%{full_arch}/CORE/regcomp.h
%{perl_root}/%{version}/%{full_arch}/CORE/regexp.h
%{perl_root}/%{version}/%{full_arch}/CORE/regnodes.h
%{perl_root}/%{version}/%{full_arch}/CORE/scope.h
%{perl_root}/%{version}/%{full_arch}/CORE/sperl.o
%{perl_root}/%{version}/%{full_arch}/CORE/sv.h
%{perl_root}/%{version}/%{full_arch}/CORE/thrdvar.h
%{perl_root}/%{version}/%{full_arch}/CORE/thread.h
%{perl_root}/%{version}/%{full_arch}/CORE/uconfig.h
%{perl_root}/%{version}/%{full_arch}/CORE/unixish.h
%{perl_root}/%{version}/%{full_arch}/CORE/utf8.h
%{perl_root}/%{version}/%{full_arch}/CORE/utfebcdic.h
%{perl_root}/%{version}/%{full_arch}/CORE/util.h
%{perl_root}/%{version}/%{full_arch}/CORE/warnings.h
EOF

   rel_perl_root=`echo %{perl_root} | sed "s,/,,"`
   rel_mandir=`echo %{_mandir} | sed "s,/,,"`
   (cd $RPM_BUILD_ROOT ; find $rel_perl_root/%{version} "(" -name "*.pod" -o -iname "Changes*" -o -iname "ChangeLog*" -o -iname "README*" ")" -a -not -name perldiag.pod -printf "%%%%doc /%%p\n") >> perl-doc.list
   (cd $RPM_BUILD_ROOT ; find $rel_mandir/man1 ! -name "perlivp.1*" ! -type d -printf "/%%p*\n") >> perl.list
   (cd $RPM_BUILD_ROOT ; find $rel_perl_root/%{version} ! -type d -printf "/%%p\n") >> perl.list
   (cd $RPM_BUILD_ROOT ; find $rel_perl_root/%{version} -type d -printf "%%%%dir /%%p\n") >> perl.list
   perl -ni -e 'BEGIN { open F, "perl-base.list"; $s{$_} = 1 foreach <F>; } print unless $s{$_}' perl.list
   perl -ni -e 'BEGIN { open F, "perl-devel.list"; $s{$_} = 1 foreach <F>; } print unless $s{$_}' perl.list
   perl -ni -e 'BEGIN { open F, "perl-doc.list"; !/perldiag/ and m|(/.*\n)| and $s{$1} = 1 foreach <F>; } print unless $s{$_}' perl.list
   # i'm not sure why this is happening, but perl.list is full of *.bs files that are supposed to be *.so files
   # so the build fails without this little tweak -- vdanen 11/05/2007
   perl -pi -e 's|\.bs|\.so|g' perl.list
   perl -pi -e "s|/usr/lib/perl5/5.8.8/%{_arch}-linux/.packlist||" perl.list
)

%clean
rm -rf $RPM_BUILD_ROOT

%files -f perl.list
%defattr(-,root,root)

%files base -f perl-base.list
%defattr(-,root,root)
%{perl_root}/vendor_perl

%files devel -f perl-devel.list
%defattr(-,root,root)

%files doc -f perl-doc.list
%defattr(-,root,root)

%files suid
%{_bindir}/suidperl
%attr(4711,root,root) %{_bindir}/sperl%{version}




%changelog
* Thu May 08 2008 Gustavo De Nardin <gustavodn@mandriva.com> 5.8.8-12.2mdv2008.0
- P42: security fix for CVE-2008-1927

* Mon Nov 05 2007 Vincent Danen <vdanen@mandriva.com> 5.8.8-12.1mdv2008.0
- P40: security fix for CVE-2007-5116
- P41: fix build with gcc 4.2.2
- fix manpage extension
- fix a wierd quirk with the filelist
- need to comment out the docs for the perl package or the build
  fails; this should jave been compiled at least once witht he
  new gcc, lzma, and other rpm-related changes =(

* Mon Apr 30 2007 Pixel <pixel@mandriva.com> 5.8.8-12mdv2008.0
+ Revision: 19552
- explicit file provide /usr/bin/perl

* Mon Apr 23 2007 Pixel <pixel@mandriva.com> 2:5.8.8-11mdv2008.0
+ Revision: 17453
- remove bad provides libperl.so from perl
  (libperl.so is still provided by perl-base)

  + Mandriva <devel@mandriva.com>


* Fri Mar 16 2007 Pixel <pixel@mandriva.com> 5.8.8-10mdv2007.1
+ Revision: 145069
- move some more files (needed to run XFdrake)

* Mon Feb 12 2007 Pixel <pixel@mandriva.com> 2:5.8.8-9mdv2007.1
+ Revision: 118871
- fix segfault (bugzilla #28537, perl #41442)

  + Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
    - ppc64 fixes from Gwenole Beauchesne (from CS3).
      Bunzip patches.
    - Import perl

* Sat Sep 09 2006 Thierry Vignaud <tvignaud@mandriva.com> 5.8.8-7mdv2007.0
- patch 38: do not defer sig11 (aka segfaulting, #18087)

* Mon May 15 2006 Oden Eriksson <oeriksson@mandriva.com> 2:5.8.8-6mdk
- rebuilt due to missing perl-doc package for x86_64

* Sat May 13 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.8-5mdk
- Rebuild with new rpm-mandriva-setup

* Thu May 04 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.8-4mdk
- Drop patch 20 (loading of .pm.gz files, no longer used in gi, could
  be done in pure perl with @INC hooks)

* Sun Mar 12 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.8-3mdk
- Remove PERL_DISABLE_PMC from the CCFLAGS, as requested by Audrey Tang
- Remove german translations

* Fri Mar 03 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.8-2mdk
- Integrate upstream patches:
- patch 34 (#27210): buglet in c2ph
- patch 35 (#27211): buglet in Net::NNTP
- patch 36 (#27359): make -d:Foo=bar work again
- patch 37 (#27363): include predefined gcc macros in translated system headers

* Wed Feb 01 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.8-1mdk
- 5.8.8
- Remove patch 12 (MakeMaker hack for old rpm conventions)
- Rediff patch 23
- Remove patches 34 and 35, integrated upstream

* Thu Jan 26 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.8-0.RC1.4mdk
- Turn on -g optimisation so perl is built without -DDEBUGGING

* Tue Jan 24 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.8-0.RC1.3mdk
- Add patch 34 (upstream 26920) : restore compatibility with swig
- Add patch 35 (upstream 26940) : fix suidperl bug

* Tue Jan 24 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.8-0.RC1.2mdk
- Add patch 33 (upstream 26536) to fix bug 20129

* Fri Jan 20 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.8-0.RC1.1mdk
- New version
- Rediff patches 20, 23, 29
- Remove half of patch 6, integrated upstream
- Remove patches 22, 26, 27, 28, 30, 31, 33, 34, integrated upstream
- Remove patch 25, obsolete
- Obsoletes perl-Test-Builder-Tester

* Thu Jan 19 2006 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.7-9mdk
- lib64 fix to buildrequires (Per Øyvind Karlsen)
- Patch 34: upstream 26812, h2ph improvement, fixes build on linux-sparc64

* Thu Dec 01 2005 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.7-8mdk
- Patch 33: fix for CVE-2005-3962

* Mon Nov 28 2005 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.7-7mdk
- Upgrade core modules List::Util and Getopt::Long to latest CPAN versions
  (patches 30 and 31)
- Always set up @INC correctly even if older directories don't exist on the
  build machine (patch 32)

* Fri Nov 18 2005 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.7-6mdk
- Patch 29: patch default MANIFEST.SKIP allow Module::Signature to work even
  when building rpms with debug packages enabled

* Fri Oct 21 2005 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.7-5mdk
- BuildRequires recent rpm-mandriva-setup-build

* Tue Oct 18 2005 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.7-4mdk
- Upgrade to Storable 2.15 (patch 28)
- Fix installation of sperl as setuid

* Wed Aug 10 2005 Pixel <pixel@mandriva.com> 5.8.7-3mdk
- on x86_64, bits/syscall.ph requires bits/wordsize.ph

* Tue Aug 02 2005 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.7-2mdk
- Add patch 27 (CAN-2005-0448)

* Wed Jun 01 2005 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 5.8.7-1mdk
- 5.8.7
- Define sitebin to /usr/local/bin and siteman* to /usr/local/man/...
- Replace Mandrakelinux by Mandriva Linux

* Thu May 19 2005 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 2:5.8.7-0.RC1.1mdk
- 5.8.7 RC1
- Remove patch 27, 28, 29, 30, merged upstream

* Sat Apr 23 2005 Rafael Garcia-Suarez <rgarciasuarez@mandriva.com> 5.8.6-7mdk
- Put sperl and suidperl in their own package perl-suid

* Mon Feb 14 2005 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.6-6mdk
- Add patches 28 et 30 (security updates)

* Mon Jan 31 2005 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.6-5mdk
- Fix local root exploit and buffer overflow (patch 28) (perlbug #33990)

* Wed Jan 26 2005 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.6-4mdk
- Move the Pod::Perldoc::* modules to perl-doc
- Add Artistic licence in doc

* Fri Jan 07 2005 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.6-3mdk
- Fixes (or workarounds) for build issues on x86_64
- add a "debugging" flag to build perls with -D enabled

* Wed Dec 01 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.6-2mdk
- Integrate patch 23565 from the maint branch (as patch 27):
  MakeMaker's default MANIFEST.SKIP was borked

* Mon Nov 29 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.6-1mdk
- 5.8.6
- use "make test_harness_notty" for testing
- fix invocation of h2ph with correct libperl.so

* Fri Nov 12 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.6-0.RC1.1mdk
- New version 5.8.6-RC1
- Remove support for threads
- Remove bincompat directories (since we break binary compatibility)
- Remove patch 27, merged upstream

* Tue Nov 09 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.5-4mdk
- Upgrade to MIME::Base64 3.05 (for perl-MIME-tools, security update)
- BuildRequire: libgdbm_compat (bugs #12036 and #12136)

* Fri Aug 06 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.5-3mdk
- Fix for generation of unistd.ph on ppc (Christiaan Welvaart)

* Thu Jul 29 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.5-2mdk
- Add a patch to prevent including an empty rpath in .so files produced
  by MakeMaker

* Wed Jul 21 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.5-1mdk
- 5.8.5.
- Move unicore/PVA.pl into perl-base.

* Fri Jul 09 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.5-0.RC2.1mdk
- RC2. Remove patch #23063.

* Thu Jul 08 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.5-0.RC1.2mdk
- Merged patch #23063: perl wasn't able to upgrade a literal undef to
  UTF-8 anymore. This broke Gtk2.

* Thu Jul 08 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.5-0.RC1.1mdk
- New version
- Remove patches merged upstream
- Fix CPAN signature test when Module::Signature is installed

* Tue Jun 29 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-13mdk
- Move Getopt::Std from perl to perl-base
- Move some changelogs from perl to perl-doc

* Sat Jun 19 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-12mdk
- Move CORE/config.h from perl-devel to perl. This is necessary for MakeMaker
  (and thus CPAN.pm) to work.

* Wed Jun 16 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-11mdk
- Carp::Heavy should be in perl-base, as it's required by Carp.pm
- Add manually a provides for perl(Carp::Heavy)

* Mon Jun 14 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-10mdk
- Further h2ph patches.

* Sun Jun 13 2004 Robert Vojta <robert.vojta@mandrake.org> 5.8.4-9mdk
- patches 42 and 43 temporarily disabled (see #10035)

* Sat Jun 12 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-8mdk
- Remove redundant BuildRequires
- Add two more h2ph patches from the development branch

* Sat Jun 12 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-7mdk
- Add BuildRequires glibc-devel

* Fri Jun 11 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-6mdk
- integrate patch #22925 from the development branch :
  Make h2ph able to understand a limited set of inline functions.
  This fixes the generation of some .ph files.

* Wed Jun 09 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-5mdk
- Restore loading of .pm.gz files by adjusting patch #20

* Wed Jun 09 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-4mdk
- Add compilation flag -DPERL_DISABLE_PMC
- Rebuild with new gcc

* Thu May 27 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-3mdk
- Add a bunch of patches from the maintainance branch

* Thu May 06 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-2mdk
- psed(1) wasn't installed
- the manpage for perlivp(1) (which isn't installed) was installed
- remove perldiag.pod from perl-doc

* Fri Apr 23 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-1mdk
- 5.8.4
- remove setuidperl, it was a transient RC2 tryout
- the only setuid executable is sperl5.8.4
- force gcc optimisation level to -O1 on ppc
- disable test lib/CGI/t/fast.t, which may fail if perl-FCGI is already
  installed on the system.

* Sat Apr 17 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-0.RC2.1mdk
- RC2
- remove setuid bit on sperl and suidperl
- new setuid executable setuidperl
- use 'make test_harness' instead of 'make test'
- add a note in the 'perl -V' output to mention MandrakeSoft patches

* Wed Apr 07 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-0.RC1.2mdk
- Restore 5.8.1/i386-linux in the inc_version_list, at least until
  all the packages from the CPAN are upgraded

* Wed Apr 07 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 5.8.4-0.RC1.1mdk
- changed perl URL
- FHS-compliance patch is no longer needed
- A more recent Getopt::Long is now bundled with perl, remove it
- remove 5.8.1/i386-linux from the inc_version_list, because 5.8.1 is
  binary incompatible with every other 5.8.x
- Add Errno.pm to perl-base