diff options
-rw-r--r-- | abs/core/perl/ChangeLog | 39 | ||||
-rw-r--r-- | abs/core/perl/PKGBUILD | 217 | ||||
-rw-r--r-- | abs/core/perl/perl.install | 50 | ||||
-rwxr-xr-x | abs/core/perl/perlbin.sh | 19 |
4 files changed, 223 insertions, 102 deletions
diff --git a/abs/core/perl/ChangeLog b/abs/core/perl/ChangeLog new file mode 100644 index 0000000..ef05507 --- /dev/null +++ b/abs/core/perl/ChangeLog @@ -0,0 +1,39 @@ + +2010-05-23 kevin <kevin@archlinux.org> + + * perl 5.12.1-2 + - Francois updated the provides array. + +2010-05-23 kevin <kevin@archlinux.org> + + * perl 5.12.1-1 + +2010-05-16 kevin <kevin@archlinux.org> + + * perl 5.12.0-2 + +2010-05-12 kevin <kevin@archlinux.org> + + - FS#19411. Removed the for loop in perlbin.sh which didn't work on zsh. + This makes the loop variables unnecessary so the script no longer + pollutes the user's environment. + - FS#19427. Added /usr/*/perl5/site_perl/5.10.1 to otherlibdirs to support + user built modules. + +2010-05-09 kevin <kevin@archlinux.org> + + * perl 5.12.0-1 + - Modified perlbin.sh to only add existing dirs to PATH. Fixes FS#17402, + path points to non-existant directories + +2010-05-07 kevin <kevin@archlinux.org> + + - Added this changelog. + - Added -Dinc_version_list=none to fix FS#19136, double entry in @INC. + This removes the duplicates and versioned directory entries. + - Change scriptdirs to /usr/lib/perl5/{core,vendor,site}_perl/bin to fix + Fix FS#13808, binaries don't follow FHS. + - Stopped using versioned directories in sitelib and sitearch. + + +# vim: set ft=changelog ts=4 sw=4 et: diff --git a/abs/core/perl/PKGBUILD b/abs/core/perl/PKGBUILD index 1525f15..188e37c 100644 --- a/abs/core/perl/PKGBUILD +++ b/abs/core/perl/PKGBUILD @@ -1,69 +1,159 @@ -# $Id: PKGBUILD 8709 2008-08-16 04:12:51Z eric $ -# Maintainer: judd <jvinet@zeroflux.org> +# $Id: PKGBUILD 96229 2010-10-19 12:28:45Z allan $ +# Maintainer: kevin <kevin.archlinux.org> +# Contributor: judd <jvinet.zeroflux.org> +# Contributor: francois <francois.archlinux.org> pkgname=perl -pkgver=5.10.0 -pkgrel=14 -pkgdesc="Practical Extraction and Report Language" -arch=('i686' 'x86_64') +pkgver=5.12.1 +pkgrel=3 +pkgdesc="A highly capable, feature-rich programming language" +arch=(i686 x86_64) license=('GPL' 'PerlArtistic') url="http://www.perl.org" groups=('base') -depends=('gdbm' 'db>=4.7' 'coreutils' 'glibc' 'sh') -# for site_perl this is needed! -#test without options=('emptydirs') -source=(http://cpan.perl.org/src/5.0/perl-${pkgver}.tar.gz -# http://search.cpan.org/CPAN/authors/id/P/PM/PMQS/DB_File-1.814.tar.gz - perlbin.sh perl-5.8.6-picdl.patch0 - perl-5.10.0-archlinux-inc-order.patch) +depends=('gdbm' 'db>=4.8' 'coreutils' 'glibc' 'sh') +source=(http://www.cpan.org/src/5.0/perl-${pkgver}.tar.bz2 perlbin.sh) install=perl.install provides=( -# extra -perl-archive-tar perl-compress-raw-zlib perl-compress-zlib -perl-extutils-cbuilder perl-io-compress-base perl-io-compress-zlib perl-io-zlib -perl-module-pluggable perl-pod-escapes perl-pod-simple perl-module-build -perl-version - -# aur -perl-archive-extract perl-cpanplus perl-digest-sha perl-extutils-parsexs -perl-file-fetch perl-ipc-cmd perl-locale-maketext-simple perl-log-message -perl-log-message-simple perl-module-corelist perl-module-load -perl-module-load-conditional perl-module-loaded perl-module-pluggable -perl-object-accessor perl-params-check perl-term-ui perl-time-piece +perl-archive-extract=0.38 +perl-archive-tar=1.54 +perl-attribute-handlers=0.87 +perl-autodie=2.06_01 +perl-autoloader=5.70 +perl-base=2.15 +perl-b-debug=1.12 +perl-bignum=0.23 +perl-b-lint=1.11_01 +perl-cgi=3.49 +perl-class-isa=0.36 +perl-compress-raw-bzip2=2.024 +perl-compress-raw-zlib=2.024 +perl-constant=1.20 +perl-cpan=1.94_56 +perl-cpanplus=0.90 +perl-cpanplus-dist-build=0.46 +perl-data-dumper=2.125 +perl-db_file=1.820 +perl-devel-dprof=20080331.00 +perl-devel-peek=1.04 +perl-devel-ppport=3.19 +perl-digest=1.16 +perl-digest-md5=2.39 +perl-digest-sha=5.47 +perl-encode=2.39 +perl-encoding-warnings=0.11 +perl-exporter=5.64_01 +perl-extutils-cbuilder=0.27 +perl-extutils-command=1.16 +perl-extutils-constant=0.22 +perl-extutils-embed=1.28 +perl-extutils-install=1.55 +perl-extutils-makemaker=6.56 +perl-extutils-manifest=1.57 +perl-extutils-parsexs=2.21 +perl-file-fetch=0.24 +perl-file-path=2.08_01 +perl-file-temp=0.22 +perl-filter=1.37 +perl-filter-simple=0.84 +perl-getopt-long=2.38 +perl-if=0.05 +perl-io=1.25_02 +perl-io-compress=2.024 +perlio-via-quotedprint=0.06 +perl-io-zlib=1.10 +perl-ipc-cmd=0.54 +perl-ipc-sysv=2.01 +perl-libnet=1.22 +perl-locale-codes=2.07 +perl-locale-maketext=1.14 +perl-locale-maketext-simple=0.21 +perl-log-message=0.02 +perl-log-message-simple=0.06 +perl-math-bigint=1.89_01 +perl-math-bigint-fastcalc=0.19 +perl-math-bigrat=0.24 +perl-math-complex=1.56 +perl-memoize=1.01_03 +perl-mime-base64=3.08 +perl-module-build=0.3603 +perl-module-corelist=2.29 +perl-module-load=0.16 +perl-module-load-conditional=0.34 +perl-module-loaded=0.06 +perl-module-pluggable=3.9 +perl-net-ping=2.36 +perl-next=0.64 +perl-object-accessor=0.36 +perl-package-constants=0.02 +perl-params-check=0.26 +perl-parent=0.223 +perl-parse-cpan-meta=1.40 +perl-pathtools=3.31 +perl-pod-escapes=1.04 +perl-pod-latex=0.58 +perl-podlators=2.3.1 +perl-pod-parser=1.37 +perl-pod-perldoc=3.15_02 +perl-pod-plainer=1.02 +perl-pod-simple=3.14 +perl-safe=2.27 +perl-scalar-list-utils=1.22 +perl-selfloader=1.17 +perl-shell=0.72_01 +perl-storable=2.22 +perl-switch=2.16 +perl-sys-syslog=0.27 +perl-term-ansicolor=2.02 +perl-term-cap=1.12 +perl-term-ui=0.20 +perl-test=1.25_02 +perl-test-harness=3.17 +perl-test-simple=0.94 +perl-text-balanced=2.02 +perl-text-parsewords=3.27 +perl-text-soundex=3.03_01 +perl-text-tabs+wraps=2009.0305 +perl-thread-queue=2.11 +perl-threads=1.75 +perl-thread-semaphore=2.09 +perl-threads-shared=1.32 +perl-tie-file=0.97_02 +perl-tie-refhash=1.38 +perl-time-hires=1.9719 +perl-time-local=1.1901_01 +perl-time-piece=1.15_01 +perl-unicode-collate=0.52_01 +perl-unicode-normalize=1.03 +perl-version=0.82 +perl-win32=0.39 +perl-win32api-file=0.1101 +perl-xsloader=0.10 ) +options=('!makeflags' '!purge') build() { - cd ${startdir}/src/${pkgname}-${pkgver} - - # Update some modules provided with perl: - # replace the old DB_File with the newest one from CPAN, - # since it supports sleepycat's db 4.1.x -# cd ext -# rm -rf DB_File -# mv $startdir/src/DB_File-1.814 ./DB_File - - cd ${startdir}/src/${pkgname}-${pkgver} - patch -Np0 -i ../perl-5.10.0-archlinux-inc-order.patch + cd ${srcdir}/${pkgname}-${pkgver} if [ "${CARCH}" = "x86_64" ]; then # for x86_64 arch_opts="-Dcccdlflags='-fPIC'" - patch -Np0 -i ../perl-5.8.6-picdl.patch0 || return 1 else # for i686 arch_opts="" fi - ./Configure -des -Dusethreads -Doptimize="${CFLAGS}" -Dprefix=/usr \ - -Dinstallprefix=${startdir}/pkg/usr -Dvendorprefix=/usr \ + ./Configure -des -Dusethreads -Duseshrplib -Doptimize="${CFLAGS}" \ + -Dprefix=/usr -Dinstallprefix=${pkgdir}/usr -Dvendorprefix=/usr \ -Dprivlib=/usr/share/perl5/core_perl \ -Darchlib=/usr/lib/perl5/core_perl \ - -Dsitelib=/usr/share/perl5/site_perl/${pkgver} \ - -Dsitearch=/usr/lib/perl5/site_perl/${pkgver} \ + -Dsitelib=/usr/share/perl5/site_perl \ + -Dsitearch=/usr/lib/perl5/site_perl \ -Dvendorlib=/usr/share/perl5/vendor_perl \ -Dvendorarch=/usr/lib/perl5/vendor_perl \ - -Dotherlibdirs=/usr/lib/perl5/current:/usr/lib/perl5/site_perl/current \ - -Dscriptdir='/usr/bin/perlbin/core' \ - -Dsitescript='/usr/bin/perlbin/site' \ - -Dvendorscript='/usr/bin/perlbin/vendor' \ + -Dotherlibdirs=/usr/lib/perl5/site_perl/5.10.1:/usr/share/perl5/site_perl/5.10.1:/usr/lib/perl5/current:/usr/lib/perl5/site_perl/current \ + -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=1perl -Dman3ext=3perl ${arch_opts} make || return 1 @@ -71,32 +161,43 @@ build() { ### Perl Settings ### # Change man page extensions for site and vendor module builds. + # Use archlinux email address instead of my own. sed -e '/^man1ext=/ s/1perl/1p/' -e '/^man3ext=/ s/3perl/3pm/' \ - -i ${startdir}/pkg/usr/lib/perl5/core_perl/Config_heavy.pl + -e "/^cf_email=/ s/'.*'/'kevin@archlinux.org'/" \ + -e "/^perladmin=/ s/'.*'/'kevin@archlinux.org'/" \ + -i ${pkgdir}/usr/lib/perl5/core_perl/Config_heavy.pl ### 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 ${startdir}/pkg/usr/share/perl5/core_perl/CPAN/FirstTime.pm + -i ${pkgdir}/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 ${startdir}/pkg/usr/share/perl5/core_perl/CPANPLUS/Config.pm + -i ${pkgdir}/usr/share/perl5/core_perl/CPANPLUS/Config.pm # Profile script so set paths to perl scripts. - install -D -m755 ${startdir}/src/perlbin.sh \ - ${startdir}/pkg/etc/profile.d/perlbin.sh + install -D -m755 ${srcdir}/perlbin.sh \ + ${pkgdir}/etc/profile.d/perlbin.sh - (cd ${startdir}/pkg/usr/bin; mv perl${pkgver} perl) - (cd ${startdir}/pkg/usr/bin/perlbin/core; \ + (cd ${pkgdir}/usr/bin; mv perl${pkgver} perl) + (cd ${pkgdir}/usr/lib/perl5/core_perl/bin; \ ln -sf c2ph pstruct; ln -sf s2p psed) - grep -Rl "${startdir}/pkg" ${startdir}/pkg/usr | \ - xargs sed -i "s^${startdir}/pkg^^g" + grep -Rl "${pkgdir}" ${pkgdir}/usr | \ + xargs sed -i "s^${pkgdir}^^g" + + # Remove all pod files *except* those under /usr/share/perl5/core_perl/pod/ + # (FS#16488) + rm -f $pkgdir/usr/share/perl5/core_perl/*.pod + for d in $pkgdir/usr/share/perl5/core_perl/*; do + if [ -d $d -a $(basename $d) != "pod" ]; then + find $d -name *.pod -delete + fi + done + find $pkgdir/usr/lib -name *.pod -delete + find $pkgdir -name .packlist -delete } -md5sums=('d2c39b002ebfd2c3c5dba589365c5a71' - '9c4e3e56d71f123e92a68986df5ea924' - '319b56a7ce715fb7a494fe4d5cb9474c' - '0e4853bd75ee36b8f4c70b78c707b2fa') +md5sums=('f7f2d7f5aaac15a75028381b159a560f' '15f653f99b270ba91438cae91718c69f') diff --git a/abs/core/perl/perl.install b/abs/core/perl/perl.install index f0ff3fb..6a9fc1c 100644 --- a/abs/core/perl/perl.install +++ b/abs/core/perl/perl.install @@ -5,50 +5,14 @@ post_install() { [ -h usr/lib/perl5/site_perl/$ver ] && rm usr/lib/perl5/site_perl/$ver [ -h usr/bin/perl$ver ] && rm usr/bin/perl$ver done - - echo - echo " This version of perl follows the new perl directory hierarchy (see" - echo " http://wiki.archlinux.org/index.php/Perl_Policy)." - echo - echo " - The perl package and its modules install in the core_perl directories" - echo " - Perl modules provided by Arch Linux install in vendor_perl directories" - echo " - CPAN/CPANPLUS installs should be placed in site_perl directories" - echo " - Older modules in the 'current' directory should still work" - echo " - Programs with embedded perl interpreters need to be rebuilt" - echo - echo " Users of the CPAN or CPANPLUS shells should modify the configuration" - echo " to use the site_perl directories. Under the CPAN shell use:" - echo " o conf makepl_arg INSTALLDIRS=site" - echo " o conf mbuildpl_arg installdirs=site" - echo " Under the CPANPLUS shell:" - echo " s conf buildflags installdirs=site" - echo " s conf makemakerflags INSTALLDIRS=site" - echo " Then save the configuration." - echo - echo " The following official packages can be removed since the modules are" - echo " now included in the standard perl library:" - echo " perl-archive-tar perl-compress-raw-zlib perl-compress-zlib" - echo " perl-extutils-cbuilder perl-io-compress-base perl-io-compress-zlib" - echo " perl-io-zlib perl-module-pluggable perl-pod-escapes perl-pod-simple" - echo " perl-module-build perl-version" - echo - echo " These community packages are also included in the standard perl library:" - echo " perl-archive-extract perl-cpanplus perl-digest-sha perl-file-fetch" - echo " perl-extutils-parsexs perl-ipc-cmd perl-locale-maketext-simple" - echo " perl-log-message perl-log-message-simple perl-module-corelist" - echo " perl-module-load perl-module-load-conditional perl-module-loaded" - echo " perl-module-pluggable perl-object-accessor perl-params-check" - echo " perl-term-ui perl-time-piece" - echo + return 0 } -# arg 1: the new package version -# arg 2: the old package version post_upgrade() { - post_install -} + echo '- The directories /usr/lib/perl5/current, /usr/lib/perl5/site_perl/current,' + echo ' /usr/lib/perl5/site_perl/5.10.1, and /usr/share/perl5/site_perl/5.10.1' + echo ' will be removed from @INC in a future release.' -op=$1 -shift - -$op $* + echo '- The directory /usr/bin/perlbin/site will not be added to $PATH in a' + echo ' future release.' +} diff --git a/abs/core/perl/perlbin.sh b/abs/core/perl/perlbin.sh index 49aeb2d..665d5a8 100755 --- a/abs/core/perl/perlbin.sh +++ b/abs/core/perl/perlbin.sh @@ -1,2 +1,19 @@ # Set path to perl scripts. -export PATH="${PATH}:/usr/bin/perlbin/site:/usr/bin/perlbin/vendor:/usr/bin/perlbin/core" +# Remove the perlbin dirs in the next release. + +# Add dirs to path if they exist. +[ -d /usr/lib/perl5/site_perl/bin ] && + PATH=$PATH:/usr/lib/perl5/site_perl/bin +[ -d /usr/bin/perlbin/site ] && + PATH=$PATH:/usr/bin/perlbin/site +[ -d /usr/lib/perl5/vendor_perl/bin ] && + PATH=$PATH:/usr/lib/perl5/vendor_perl/bin +[ -d /usr/bin/perlbin/vendor ] && + PATH=$PATH:/usr/bin/perlbin/vendor +[ -d /usr/lib/perl5/core_perl/bin ] && + PATH=$PATH:/usr/lib/perl5/core_perl/bin +export PATH + +# If you have modules in non-standard directories you can add them here. +#export PERLLIB=dir1:dir2 + |