summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTorsten Veller <tove@gentoo.org>2010-06-17 13:36:54 +0200
committerTorsten Veller <tove@gentoo.org>2010-06-17 13:36:54 +0200
commit5b01f260749b14edfdb6c280e5eeafbd38155fc4 (patch)
treeb22f7fa6985196a740832aea2b8def881e78a12e /dev-lang/perl
parentdev-lang/perl: Bump patchset: ExtUtils::MakeMaker does not install .packlist ... (diff)
downloadperl-overlay-5b01f260749b14edfdb6c280e5eeafbd38155fc4.tar.gz
perl-overlay-5b01f260749b14edfdb6c280e5eeafbd38155fc4.tar.bz2
perl-overlay-5b01f260749b14edfdb6c280e5eeafbd38155fc4.zip
dev-lang/perl: Create perl header files (*.ph) for a small number of headers in pkg_postinst (#292985)
(Portage version: 2.2_rc67/git/Linux x86_64) (Signed Manifest commit)
Diffstat (limited to 'dev-lang/perl')
-rw-r--r--dev-lang/perl/ChangeLog4
-rw-r--r--dev-lang/perl/Manifest10
-rw-r--r--dev-lang/perl/perl-5.12.1.ebuild133
3 files changed, 67 insertions, 80 deletions
diff --git a/dev-lang/perl/ChangeLog b/dev-lang/perl/ChangeLog
index 515371a8c..d8f807097 100644
--- a/dev-lang/perl/ChangeLog
+++ b/dev-lang/perl/ChangeLog
@@ -2,6 +2,10 @@
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 17 Jun 2010; Torsten Veller <tove@gentoo.org> perl-5.12.1.ebuild:
+ Create perl header files (*.ph) for a small number of headers in
+ pkg_postinst (#292985)
+
16 Jun 2010; Torsten Veller <tove@gentoo.org> perl-5.12.1.ebuild:
Bump patchset: ExtUtils::MakeMaker does not install .packlist or
perllocal.pod for perl or vendor
diff --git a/dev-lang/perl/Manifest b/dev-lang/perl/Manifest
index 0151ccbec..b755f459d 100644
--- a/dev-lang/perl/Manifest
+++ b/dev-lang/perl/Manifest
@@ -6,13 +6,13 @@ DIST perl-5.12.0.tar.gz 15131791 RMD160 ba34652eb595aa4c8b9644a9e25cd73be87c59b4
DIST perl-5.12.1-3.tar.bz2 3465 RMD160 806399bd1a8da65a37bf2a0f8823580814543a98 SHA1 4a2c1d68bc7347d18367f2a4711b99e328f856a1 SHA256 97f425ffa27f18d7c668a04d103d6b7b657da6569dae9f28d57b2b18470c2b00
DIST perl-5.12.1.tar.gz 15122057 RMD160 2e2d08821bdf3ed87360af828e3b31f5861b4fdd SHA1 83b99f08379782dc06594a85eeb279edc5b0ca44 SHA256 1320a5d854fd7d1870ffa9d16020d9b72acc9eb128014194a1d1667f5967aee0
EBUILD perl-5.12.0.ebuild 18273 RMD160 3d5c222096cd8a50a3154b1fdbe6d16e9493b320 SHA1 305ff3b7d28e1cb4c98d088731dfc31a605f2bd1 SHA256 dafacfe8d301b4bb57fd7c46c9e64319f139fc3f6bab28a8d2ed4ca00477a546
-EBUILD perl-5.12.1.ebuild 18579 RMD160 1ec3644438a63a924c4d66db2a4244920d21bd1c SHA1 f4ae162a5cabbc9cad79a87ef689a645fdba05cd SHA256 c87928bbd1ca77679f223e55f4b7156ae639859041b45dbe4df07502cdc6aedf
-MISC ChangeLog 1405 RMD160 4cb6ff6b637f778c60473b01c24aa32c8f74ffd8 SHA1 0f4ada0c701c14d64c4d80a2a7ef400004a551da SHA256 d24af06969c98c649e9767a7bd476157ae5b820ae95bde06986e3d5c9de7cb56
+EBUILD perl-5.12.1.ebuild 18107 RMD160 9fb3a2612ac21174754bf14b29385d530cceb2b6 SHA1 975407df1f96211a3ceca21b7c6c8e768af71e13 SHA256 ba644e4cf6e02a94a72015c76a510ed81e534d8736a541469ed3809eb0cae423
+MISC ChangeLog 1566 RMD160 9ebce74423db73c544855634aafc40b5b7fe12a0 SHA1 6e4c9bd7e8089329e7a7a73cf7655136bd2c9d65 SHA256 5d39792e92f281d0db0731ac66a1e76b6a6cd7e105c8deeb6a9f5dc6504955a8
MISC metadata.xml 367 RMD160 c415adb4b9b5147edb358eb9809b649fc0b43876 SHA1 d9e529ec0c023a577b3110a46f8d41578f7baed0 SHA256 4cb776e7da908573000d278ca4b9b1d1ba8556deb361cf80f6e8af226a2c9cdb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.15 (GNU/Linux)
-iEYEARECAAYFAkwYliEACgkQV3J2n04Eauz6+ACgy96GE7hAZsFE3TIU44C6uj7N
-MZIAnA3JGZ/luPlMw00CfAb841QuUeS+
-=GS9e
+iEYEARECAAYFAkwaCNYACgkQV3J2n04EauxmCgCfVJfMqlQWot4xPfZj9m8t3jjH
+M2kAnRllRbs1P+I/nSPDxRO+CKOgxmCj
+=ZN3a
-----END PGP SIGNATURE-----
diff --git a/dev-lang/perl/perl-5.12.1.ebuild b/dev-lang/perl/perl-5.12.1.ebuild
index 1f779d7bc..2fbe73b4d 100644
--- a/dev-lang/perl/perl-5.12.1.ebuild
+++ b/dev-lang/perl/perl-5.12.1.ebuild
@@ -56,7 +56,32 @@ dual_scripts() {
}
pkg_setup() {
+ case ${CHOST} in
+ *-freebsd*) osname="freebsd" ;;
+ *-dragonfly*) osname="dragonfly" ;;
+ *-netbsd*) osname="netbsd" ;;
+ *-openbsd*) osname="openbsd" ;;
+ *-darwin*) osname="darwin" ;;
+ *) osname="linux" ;;
+ esac
+
+ if use ithreads ; then
+ mythreading="-multi"
+ myarch="${CHOST%%-*}-${osname}-thread"
+ else
+ myarch="${CHOST%%-*}-${osname}"
+ fi
+ if use debug ; then
+ myarch="${myarch}-debug"
+ fi
+
LIBPERL="libperl$(get_libname ${MY_PV} )"
+ PRIV_LIB="/usr/$(get_libdir)/perl5/${MY_PV}"
+ ARCH_LIB="/usr/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}"
+ SITE_LIB="/usr/$(get_libdir)/perl5/site_perl/${MY_PV}"
+ SITE_ARCH="/usr/$(get_libdir)/perl5/site_perl/${MY_PV}/${myarch}${mythreading}"
+ VENDOR_LIB="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}"
+ VENDOR_ARCH="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}/${myarch}${mythreading}"
if use ithreads ; then
ewarn "THREADS WARNING:"
@@ -154,27 +179,7 @@ src_configure() {
GZIP_OS_CODE = AUTO_DETECT
EOF
- case ${CHOST} in
- *-freebsd*) osname="freebsd" ;;
- *-dragonfly*) osname="dragonfly" ;;
- *-netbsd*) osname="netbsd" ;;
- *-openbsd*) osname="openbsd" ;;
- *-darwin*) osname="darwin" ;;
- *) osname="linux" ;;
- esac
-
- if use ithreads ; then
- mythreading="-multi"
- myconf -Dusethreads
- myarch=${CHOST}
- myarch="${myarch%%-*}-${osname}-thread"
- else
- myarch=${CHOST}
- myarch="${myarch%%-*}-${osname}"
- fi
- if use debug ; then
- myarch="${myarch}-debug"
- fi
+ use ithreads && myconf -Dusethreads
# allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1
@@ -222,26 +227,26 @@ src_configure() {
-Darchname="${myarch}" \
-Dcc="$(tc-getCC)" \
-Doptimize="${CFLAGS}" \
- -Dscriptdir=/usr/bin \
-Dprefix='/usr' \
- -Dvendorprefix='/usr' \
-Dsiteprefix='/usr' \
- -Dprivlib="/usr/$(get_libdir)/perl5/${MY_PV}" \
- -Darchlib="/usr/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}" \
- -Dvendorlib="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}" \
- -Dvendorarch="/usr/$(get_libdir)/perl5/vendor_perl/${MY_PV}/${myarch}${mythreading}" \
- -Dsitelib="/usr/$(get_libdir)/perl5/site_perl/${MY_PV}" \
- -Dsitearch="/usr/$(get_libdir)/perl5/site_perl/${MY_PV}/${myarch}${mythreading}" \
+ -Dvendorprefix='/usr' \
+ -Dprivlib="${PRIV_LIB}" \
+ -Darchlib="${ARCH_LIB}" \
+ -Dsitelib="${SITE_LIB}" \
+ -Dsitearch="${SITE_ARCH}" \
+ -Dvendorlib="${VENDOR_LIB}" \
+ -Dvendorarch="${VENDOR_ARCH}" \
-Dman1dir=/usr/share/man/man1 \
-Dman3dir=/usr/share/man/man3 \
- -Dinstallman1dir=/usr/share/man/man1 \
- -Dinstallman3dir=/usr/share/man/man3 \
+ -Dsiteman1dir=/usr/share/man/man1 \
+ -Dsiteman3dir=/usr/share/man/man3 \
+ -Dvendorman1dir=/usr/share/man/man1 \
+ -Dvendorman3dir=/usr/share/man/man3 \
-Dman1ext='1' \
-Dman3ext='3pm' \
-Dlibperl="${LIBPERL}" \
-Dlocincpth=' ' \
-Duselargefiles \
- -Duse64bitint \
-Dd_semctl_semun \
-Dcf_by='Gentoo' \
-Dmyhostname='localhost' \
@@ -261,10 +266,10 @@ src_test() {
src_install() {
export LC_ALL="C"
local i
- local coredir="/usr/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading}/CORE"
+ local coredir="${ARCH_LIB}/CORE"
- # Fix for "stupid" modules and programs
- dodir /usr/$(get_libdir)/perl5/site_perl/${MY_PV}/${myarch}${mythreading}
+# # Fix for "stupid" modules and programs
+# dodir ${SITE_ARCH} ${SITE_LIB}
local installtarget=install
if use build ; then
@@ -284,29 +289,6 @@ src_install() {
dosym ../../../../../$(get_libdir)/${LIBPERL} ${coredir}/libperl$(get_libname)
rm -rf "${D}"/usr/share/man/man3 || die "Unable to remove module man pages"
-# cp -f utils/h2ph utils/h2ph_patched
-# epatch "${FILESDIR}"/${PN}-h2ph-ansi-header.patch
-#
-# LD_LIBRARY_PATH=. ./perl -Ilib utils/h2ph_patched \
-# -a -d "${D}"/usr/$(get_libdir)/perl5/${MY_PV}/${myarch}${mythreading} <<EOF
-#asm/termios.h
-#syscall.h
-#syslimits.h
-#syslog.h
-#sys/ioctl.h
-#sys/socket.h
-#sys/time.h
-#wait.h
-#EOF
-
-# vvv still needed?
-# # This is to fix a missing c flag for backwards compat
-# for i in $(find "${D}"/usr/$(get_libdir)/perl5 -iname "Config.pm" ) ; do
-# sed -i \
-# -e "s:ccflags=':ccflags='-DPERL5 :" \
-# -e "s:cppflags=':cppflags='-DPERL5 :" \
-# "${i}" || die "Sed failed"
-# done
# # A poor fix for the miniperl issues
# dosed 's:./miniperl:/usr/bin/perl:' /usr/$(get_libdir)/perl5/${MY_PV}/ExtUtils/xsubpp
@@ -333,7 +315,7 @@ src_install() {
# We expect errors, warnings, and such with the following.
dodir /usr/share/doc/${PF}/html
- ./perl installhtml \
+ LD_LIBRARY_PATH=. ./perl installhtml \
--podroot='.' \
--podpath='lib:ext:pod:vms' \
--recurse \
@@ -349,41 +331,42 @@ src_install() {
}
pkg_postinst() {
- local INC DIR file
-
dual_scripts
- INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${MY_PV}'|etc|local|perl$/; print "$line\n" }')
if [[ "${ROOT}" = "/" ]] ; then
+ local INC DIR file
+ INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${MY_PV}'|etc|local|perl$/; print "$line\n" }')
ebegin "Removing old .ph files"
for DIR in ${INC} ; do
- if [[ -d "${ROOT}/${DIR}" ]] ; then
- for file in $(find "${ROOT}/${DIR}" -name "*.ph" -type f ) ; do
- rm -f "${ROOT}/${file}"
+ if [[ -d "${DIR}" ]] ; then
+ for file in $(find "${DIR}" -name "*.ph" -type f ) ; do
+ rm -f "${file}"
einfo "<< ${file}"
done
fi
done
# Silently remove the now empty dirs
for DIR in ${INC} ; do
- if [[ -d "${ROOT}/${DIR}" ]] ; then
- find "${ROOT}/${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
+ if [[ -d "${DIR}" ]] ; then
+ find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null
fi
done
ebegin "Generating ConfigLocal.pm (ignore any error)"
enc2xs -C
- #ebegin "Converting C header files to the corresponding Perl format"
- #cd /usr/include
- #h2ph -Q *
- #h2ph -Q -r sys/* arpa/* netinet/* bits/* security/* asm/* gnu/* linux/*
- fi
+ ebegin "Converting C header files to the corresponding Perl format"
+ pushd /usr/include >/dev/null
+ h2ph -Q -a -d ${ARCH_LIB} \
+ asm/termios.h syscall.h syslimits.h syslog.h sys/ioctl.h \
+ sys/socket.h sys/time.h wait.h sysexits.h
+ popd >/dev/null
# This has been moved into a function because rumor has it that a future release
# of portage will allow us to check what version was just removed - which means
# we will be able to invoke this only as needed :)
- # Tried doing this via -z, but $INC is too big...
- if [[ "${INC}x" != "x" ]]; then
- cleaner_msg
+ # Tried doing this via -z, but $INC is too big...
+ if [[ "${INC}x" != "x" ]]; then
+ cleaner_msg
+ fi
fi
}