void-packages/srcpkgs/perl/template

221 lines
6.4 KiB
Plaintext

# Template build file for 'perl'.
pkgname=perl
version=5.16.2
revision=1
makedepends="gdbm-devel db-devel less groff"
short_desc="Practical Extraction and Report Language"
maintainer="Juan RP <xtraeme@gmail.com>"
homepage="http://www.perl.org"
license="GPL-2"
distfiles="http://www.cpan.org/src/5.0/perl-${version}.tar.bz2"
checksum=5ba91d9aa40220c615b644bb48fa5df7fbca4afb1c9e911bdc0ce2a93f072d7d
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."
# Before updating this package to a new major version, run ${FILESDIR}/provides.pl
# against ${wrksrc} to find the list of built in packages.
_provides="
perl-Archive-Extract-0.58_1
perl-Archive-Tar-1.82_1
perl-Attribute-Handlers-0.93_1
perl-AutoLoader-5.72_1
perl-B-Debug-1.17_1
perl-B-Deparse-1.14_01_1
perl-B-Lint-1.14_1
perl-CGI-3.59_1
perl-CPAN-1.9800_1
perl-CPAN-Meta-2.120630_1
perl-CPAN-Meta-YAML-0.007_1
perl-CPANPLUS-0.9121_1
perl-CPANPLUS-Dist-Build-0.62_1
perl-Carp-1.26_1
perl-Compress-Raw-Bzip2-2.048_1
perl-Compress-Raw-Zlib-2.048_1
perl-DB_File-1.826_1
perl-Data-Dumper-2.135_06_1
perl-Devel-PPPort-3.20_1
perl-Devel-SelfStubber-1.05_1
perl-Digest-1.17_1
perl-Digest-MD5-2.51_1
perl-Digest-SHA-5.71_1
perl-Dumpvalue-1.17_1
perl-Encode-2.44_1
perl-Env-1.03_1
perl-Exporter-5.66_1
perl-ExtUtils-CBuilder-0.280206_1
perl-ExtUtils-Command-1.17_1
perl-ExtUtils-Constant-0.23_1
perl-ExtUtils-Install-1.58_1
perl-ExtUtils-MakeMaker-6.63_02_1
perl-ExtUtils-Manifest-1.61_1
perl-ExtUtils-ParseXS-3.16_1
perl-File-CheckTree-4.41_1
perl-File-Fetch-0.32_1
perl-File-Path-2.08_01_1
perl-File-Temp-0.22_1
perl-Filter-Simple-0.88_1
perl-Filter-Util-Call-1.40_1
perl-Getopt-Long-2.38_1
perl-HTTP-Tiny-0.017_1
perl-I18N-Collate-1.02_1
perl-I18N-LangTags-0.38_1
perl-IO-1.25_06_1
perl-IO-Compress-2.048_1
perl-IO-Zlib-1.10_1
perl-IPC-Cmd-0.76_1
perl-IPC-SysV-2.03_1
perl-JSON-PP-2.27200_1
perl-Locale-Codes-3.21_1
perl-Locale-Maketext-1.22_1
perl-Locale-Maketext-Simple-0.21_1
perl-Log-Message-0.04_1
perl-Log-Message-Simple-0.08_1
perl-MIME-Base64-3.13_1
perl-Math-BigInt-1.998_1
perl-Math-BigInt-FastCalc-0.30_1
perl-Math-BigRat-0.2603_1
perl-Math-Complex-1.59_1
perl-Memoize-1.02_1
perl-Module-Build-0.39_01_1
perl-Module-CoreList-2.76_1
perl-Module-Load-0.22_1
perl-Module-Load-Conditional-0.46_1
perl-Module-Loaded-0.08_1
perl-Module-Metadata-1.000009_1
perl-Module-Pluggable-4.0_1
perl-NEXT-0.65_1
perl-Net-Ping-2.38_1
perl-Object-Accessor-0.42_1
perl-Package-Constants-0.02_1
perl-Params-Check-0.32_1
perl-Parse-CPAN-Meta-1.4402_1
perl-PathTools-3.39_02_1
perl-Perl-OSType-1.002_1
perl-PerlIO-via-QuotedPrint-0.06_1
perl-Pod-Escapes-1.04_1
perl-Pod-LaTeX-0.60_1
perl-Pod-Parser-1.51_1
perl-Pod-Perldoc-3.17_1
perl-Pod-Simple-3.20_1
perl-Safe-2.31_01_1
perl-Scalar-List-Utils-1.25_1
perl-Search-Dict-1.04_1
perl-SelfLoader-1.20_1
perl-Socket-2.001_1
perl-Storable-2.34_1
perl-Sys-Syslog-0.29_1
perl-Term-ANSIColor-3.01_1
perl-Term-Cap-1.13_1
perl-Term-Complete-1.402_1
perl-Term-ReadLine-1.09_1
perl-Term-UI-0.30_1
perl-Test-1.25_02_1
perl-Test-Harness-3.23_1
perl-Test-Simple-0.98_1
perl-Text-Abbrev-1.02_1
perl-Text-Balanced-2.02_1
perl-Text-ParseWords-3.27_1
perl-Text-Soundex-3.03_01_1
perl-Text-Tabs+Wrap-2009.0305_1
perl-Thread-Queue-2.12_1
perl-Thread-Semaphore-2.12_1
perl-Tie-File-0.98_1
perl-Tie-RefHash-1.39_1
perl-Time-HiRes-1.9725_1
perl-Time-Local-1.2000_1
perl-Time-Piece-1.20_01_1
perl-Unicode-Collate-0.89_1
perl-Unicode-Normalize-1.14_1
perl-Version-Requirements-0.101022_1
perl-Win32-0.44_1
perl-Win32API-File-0.1200_1
perl-XSLoader-0.16_1
perl-autodie-2.10_1
perl-autouse-1.07_1
perl-base-2.18_1
perl-bignum-0.29_1
perl-constant-1.23_1
perl-encoding-warnings-0.11_1
perl-if-0.0602_1
perl-lib-0.63_1
perl-libnet-1.22_1
perl-parent-0.225_1
perl-perlfaq-5.0150039_1
perl-podlators-2.4.0_1
perl-threads-1.86_1
perl-threads-shared-1.40_1
perl-version-0.99_1
"
for _f in ${_provides}; do
_p=$($XBPS_PKGDB_CMD getpkgname ${_f})
provides="${provides} ${_f}"
replaces="${replaces} ${_p}>=0"
done
do_build() {
./Configure \
-des -Dusethreads -Duseshrplib \
-Dinstallprefix=/usr \
-Dprefix=/usr -Dvendorprefix=/usr \
-Dprivlib=/usr/share/perl5/core_perl \
-Darchlib=/usr/lib/perl5/core_perl \
-Dsitelib=/usr/share/perl5/site_perl \
-Dsitearch=/usr/lib/perl5/site_perl \
-Dvendorlib=/usr/share/perl5/vendor_perl \
-Dvendorarch=/usr/lib/perl5/vendor_perl \
-Dscriptdir=/usr/lib/perl5/core_perl/bin \
-Dsitescript=/usr/lib/perl5/site_perl/bin \
-Dvendorscript=/usr/lib/perl5/vendor_perl/bin \
-Dinc_version_list=none -Dman1ext=1p -Dman3ext=3p \
-Dcccdlflags="-fPIC" -Doptimize="${XBPS_CFLAGS}"
make ${makejobs}
}
do_install() {
# We use the same defaults than Arch Linux.
make DESTDIR=${DESTDIR} install
# Make a link from perl${version} to perl.
cd ${DESTDIR}/usr/bin && ln -sf perl${version} perl
### CPAN Settings ###
# Set CPAN default config to use the site directories.
sed -e '/(makepl_arg =>/ s/""/"INSTALLDIRS=site"/' \
-e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \
-i ${DESTDIR}/usr/share/perl5/core_perl/CPAN/FirstTime.pm
### CPANPLUS Settings ###
# Set CPANPLUS default config to use the site directories.
sed -e "/{'makemakerflags'}/ s/'';/'INSTALLDIRS=site';/" \
-e "/{'buildflags'}/ s/'';/'installdirs=site';/" \
-i ${DESTDIR}/usr/share/perl5/core_perl/CPANPLUS/Config.pm
# Profile script so set paths to perl scripts.
vinstall ${FILESDIR}/perlbin.sh 644 etc/profile.d
# Remove all pod files *except* those under
# /usr/share/perl5/core_perl/pod/ (FS#16488)
rm -f ${DESTDIR}/usr/share/perl5/core_perl/*.pod
for d in ${DESTDIR}/usr/share/perl5/core_perl/*; do
if [ -d $d -a $(basename $d) != "pod" ]; then
find $d -name *.pod -delete
fi
done
find ${DESTDIR}/usr/lib -name *.pod -delete
find ${DESTDIR} -name .packlist -delete
# Make a symlink so that libperl.so is accesible.
cd ${DESTDIR}/usr/lib && \
ln -sf ./perl5/core_perl/CORE/libperl.so libperl.so
}