You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
142 lines
5.3 KiB
142 lines
5.3 KiB
## |
|
## 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 |
|
|
|
|