Files
void-packages/templates/perl/template
Juan RP 10b9e57c61 perl: update to 5.10.1, enable shared libperl.
Fixed compatibility with packages built under previous version,
thanks to code taken from NetBSD/pkgsrc.

--HG--
extra : convert_revision : e463c7fcdc7e043c417fccfde26dd9f9f8a5a3cb
2009-10-16 00:57:59 +02:00

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
}