Fixed compatibility with packages built under previous version, thanks to code taken from NetBSD/pkgsrc. --HG-- extra : convert_revision : e463c7fcdc7e043c417fccfde26dd9f9f8a5a3cb
81 lines
2.5 KiB
Plaintext
81 lines
2.5 KiB
Plaintext
# Template build file for 'perl'.
|
|
pkgname=perl
|
|
version=5.10.1
|
|
distfiles="http://www.cpan.org/src/$pkgname-$version.tar.gz"
|
|
build_style=configure
|
|
configure_script="./Configure"
|
|
short_desc="Practical Extraction and Report Language"
|
|
maintainer="Juan RP <xtraeme@gmail.com>"
|
|
checksum=cb7f26ea4b2b28d6644354d87a269d01cac1b635287dae64e88eeafa24b44f35
|
|
long_desc="
|
|
Perl is a general-purpose programming language originally developed
|
|
for text manipulation and now used for a wide range of tasks including
|
|
system administration, web development, network programming, GUI
|
|
development, and more. The language is intended to be practical (easy
|
|
to use, efficient, complete) rather than beautiful (tiny, elegant,
|
|
minimal). Its major features are that it's easy to use, supports both
|
|
procedural and object-oriented (OO) programming, has powerful built-in
|
|
support for text processing, and has one of the world's most impressive
|
|
collections of third-party modules."
|
|
|
|
Add_dependency full glibc
|
|
Add_dependency full gdbm
|
|
Add_dependency full db
|
|
|
|
pre_configure()
|
|
{
|
|
local p5_base p5_apiver args
|
|
|
|
cd $wrksrc || return 1
|
|
# Taken from NetBSD.
|
|
p5_base="/usr/lib/perl5"
|
|
p5_apiver="$(awk '/\#define[ ]*PERL_API_REVISION/ { R = $3 } \
|
|
/\#define[ ]*PERL_API_VERSION/ { r = "."$3 } \
|
|
/\#define[ ]*PERL_API_SUBVERSION/ { s = "."$3 } \
|
|
END { printf "%s%s%s\n", R, r, s }' patchlevel.h)"
|
|
|
|
args="-Dusethreads -des -Dprefix=/usr \
|
|
-Duselargefiles -Uusesfio -Dinstallstyle=lib/perl5 \
|
|
-Uinstallusrbinperl -Duseshrplib \
|
|
-Dman1dir=/usr/share/man/man1 \
|
|
-Dman3dir=/usr/share/man/man3 \
|
|
-Dprivlib=${p5_base}/${p5_apiver} \
|
|
-Dsitelib=${p5_base}/site_perl/${p5_apiver} \
|
|
-Dvendorlib=${p5_base}/vendor_perl/${p5_apiver}"
|
|
export configure_args="${args}"
|
|
}
|
|
|
|
pre_build()
|
|
{
|
|
# This fixes the definitions that the perl binary uses to look at
|
|
# prefix and not XBPS_DESTDIR/MASTERDIR.
|
|
|
|
if [ "$XBPS_DESTDIR" != "/xbps" ]; then
|
|
sed -i -e "s|$XBPS_DESTDIR\/$pkgname-$version|/usr|g" \
|
|
$wrksrc/config.h
|
|
fi
|
|
|
|
sed -i -e "s|/usr/usr|/usr|g" $wrksrc/config.h
|
|
|
|
if [ "$XBPS_MASTERDIR" != "/" ]; then
|
|
sed -i -e "s|$XBPS_MASTERDIR||g" $wrksrc/config.h
|
|
fi
|
|
}
|
|
|
|
post_install()
|
|
{
|
|
# Remove hardcoded paths of XBPS_DESTDIR.
|
|
local FILES="Config.pm Config_heavy.pl .packlist"
|
|
local opmult="${xbps_machine}-linux-thread-multi"
|
|
local thrdir="${DESTDIR}/usr/lib/perl5/${version}/${opmult}"
|
|
|
|
for f in ${FILES}; do
|
|
sed -i -e "s|$DESTDIR||g" ${thrdir}/${f}
|
|
done
|
|
for f in $(find $DESTDIR/usr/bin/ -type f -print); do
|
|
if $(echo $f|grep -q $DESTDIR); then
|
|
sed -i -e "s|$DESTDIR||g" $f
|
|
fi
|
|
done
|
|
}
|