|
|
|
##
|
|
|
|
## perl.spec -- OpenPKG RPM Specification
|
|
|
|
## Copyright (c) 2000-2002 Cable & Wireless Deutschland GmbH
|
|
|
|
## Copyright (c) 2000-2002 The OpenPKG Project <http://www.openpkg.org/>
|
|
|
|
## Copyright (c) 2000-2002 Ralf S. Engelschall <rse@engelschall.com>
|
|
|
|
##
|
|
|
|
## Permission to use, copy, modify, and distribute this software for
|
|
|
|
## any purpose with or without fee is hereby granted, provided that
|
|
|
|
## the above copyright notice and this permission notice appear in all
|
|
|
|
## copies.
|
|
|
|
##
|
|
|
|
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
|
|
|
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
|
|
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
|
|
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
|
|
|
|
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
|
|
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
|
|
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
|
|
|
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
|
|
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
|
|
## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
|
|
|
## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
|
|
## SUCH DAMAGE.
|
|
|
|
##
|
|
|
|
|
|
|
|
# package information
|
|
|
|
Name: perl
|
|
|
|
Summary: Practical Extraction and Reporting Language
|
|
|
|
URL: http://www.perl.com/
|
|
|
|
Vendor: The Perl Project
|
|
|
|
Packager: The OpenPKG Project
|
|
|
|
Distribution: OpenPKG [REL]
|
|
|
|
Group: Language
|
|
|
|
License: GPL/Artistic
|
|
|
|
Version: 5.6.1
|
|
|
|
Release: 20020619
|
|
|
|
|
|
|
|
# list of sources
|
|
|
|
Source0: ftp://ftp.cpan.org/pub/CPAN/src/%{name}-%{version}.tar.gz
|
|
|
|
Patch0: perl.patch
|
|
|
|
|
|
|
|
# build information
|
|
|
|
Prefix: %{l_prefix}
|
|
|
|
BuildRoot: %{l_buildroot}
|
|
|
|
BuildPreReq: OpenPKG, openpkg >= 20020206, gcc
|
|
|
|
PreReq: OpenPKG, openpkg >= 20020206
|
|
|
|
AutoReq: no
|
|
|
|
AutoReqProv: no
|
|
|
|
|
|
|
|
%description
|
|
|
|
Perl ("Practical Reporting and Extraction Language") is a very
|
|
|
|
sophisticated and flexible (but this way also complex) programming
|
|
|
|
language. This is the original implementation of the Perl 5 interpreter
|
|
|
|
from Larry Wall and his community.
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q
|
|
|
|
%patch0 -p0
|
|
|
|
chmod -R u+w .
|
|
|
|
# Support both "ld: Software Generation Utilities" and "ld:
|
|
|
|
# Solaris Link Editors" in the internal outputs of the Solaris
|
|
|
|
# 2.8 ld (latest patch-cluster as of February 2002 with patch
|
|
|
|
# #109147-14 or newer), because Perl's Configure else thinks the
|
|
|
|
# Solaris ld is GNU ld and horribly horses up...
|
|
|
|
%{l_shtool} subst -e 's;ld: Software Generation Utilities;ld: So;g' hints/solaris_2.sh
|
|
|
|
|
|
|
|
%build
|
|
|
|
# Eval hack for obsolete Linux versions (like Debian 2.2) with too old
|
|
|
|
# binutils where our GCC 3.0 makes trouble on Perl loading DSO based modules.
|
|
|
|
# In order to avoid having to require the user to update to binutils 2.11,
|
|
|
|
# we have to force Perl to use the system-supplied compiler... :-(
|
|
|
|
cc="%{l_cc}"
|
|
|
|
cflags="%{l_cflags -O}"
|
|
|
|
case "%{l_target}" in
|
|
|
|
*-linux* )
|
|
|
|
v=unknown
|
|
|
|
if [ -f /etc/debian_version ]; then
|
|
|
|
v=`/usr/bin/dpkg -l binutils | grep binutils | awk '{ print $3; }'`
|
|
|
|
elif [ -f /etc/redhat-release ]; then
|
|
|
|
v=`/bin/rpm -q --qf '%{VERSION}' binutils`
|
|
|
|
elif [ -f /etc/SuSE-release ]; then
|
|
|
|
v=`/bin/rpm -q --qf '%{VERSION}' binutils`
|
|
|
|
else
|
|
|
|
v=`(ld --version | grep "^GNU ld " | sed -e 's;^GNU ld ;;') 2>/dev/null`
|
|
|
|
fi
|
|
|
|
case "$v" in
|
|
|
|
2.1[1-9].* ) ;;
|
|
|
|
* ) cc=`%{l_shtool} path -p/bin:/usr/bin:$PATH cc`; cflags="-O" ;;
|
|
|
|
esac
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
# configure the Perl package
|
|
|
|
./Configure \
|
|
|
|
-d -e -s \
|
|
|
|
-Dprefix=%{l_prefix} \
|
|
|
|
-Dinstallprefix=$RPM_BUILD_ROOT%{l_prefix} \
|
|
|
|
-Dcc="$cc" -Doptimize="$cflags" \
|
|
|
|
-Dlocincpth="%{l_prefix}/include" \
|
|
|
|
-Dldflags="-L%{l_prefix}/lib" \
|
|
|
|
-Dlibpth="%{l_prefix}/lib /lib /usr/lib /usr/ccs/lib" \
|
|
|
|
-Uinstallusrbinperl \
|
|
|
|
-Ui_db
|
|
|
|
|
|
|
|
# build the Perl package
|
|
|
|
%{l_make} %{l_mflags -O} -f Makefile
|
|
|
|
|
|
|
|
%install
|
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
|
|
|
|
# install the Perl package via standard procedure
|
|
|
|
%{l_make} %{l_mflags} -f Makefile install
|
|
|
|
|
|
|
|
# install Perl versions of system header files
|
|
|
|
( cd /usr/include
|
|
|
|
eval `$RPM_BUILD_ROOT%{l_prefix}/bin/perl -V:installsitearch`
|
|
|
|
echo *.h sys/*.h |\
|
|
|
|
xargs $RPM_BUILD_ROOT%{l_prefix}/bin/h2ph \
|
|
|
|
-d "$RPM_BUILD_ROOT$installsitearch"
|
|
|
|
)
|
|
|
|
|
|
|
|
# post-adjustments to installation tree
|
|
|
|
rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/perl%{version}
|
|
|
|
|
|
|
|
# re-adjust configuration as mentioned in Perl's INSTALL document
|
|
|
|
$RPM_BUILD_ROOT%{l_prefix}/bin/perl -pi.orig \
|
|
|
|
-e "s:$RPM_BUILD_ROOT%{l_prefix}:%{l_prefix}:g" \
|
|
|
|
$RPM_BUILD_ROOT%{l_prefix}/lib/perl5/%{version}/*/Config.pm \
|
|
|
|
`find $RPM_BUILD_ROOT%{l_prefix}/lib/perl5/%{version}/ -type f -name ".packlist" -print`
|
|
|
|
find $RPM_BUILD_ROOT%{l_prefix}/lib/perl5/ -name "*.orig" -print | xargs rm -f
|
|
|
|
|
|
|
|
# strip binary files
|
|
|
|
strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2> /dev/null || true
|
|
|
|
|
|
|
|
# determine installed files
|
|
|
|
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
|
|
|
|
|
|
|
|
%files -f files
|
|
|
|
|
|
|
|
%clean
|
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
|