diff options
author | Vladimir Smirnov <civil@gentoo.org> | 2014-03-11 17:01:15 +0000 |
---|---|---|
committer | Vladimir Smirnov <civil@gentoo.org> | 2014-03-11 17:01:15 +0000 |
commit | 99b930207227e30af3f419b52b9042f3720a2b34 (patch) | |
tree | 983e6b6559e1974ee8f1b1a8b4c6ce6a54d3a387 /dev-lang/perl | |
parent | Automated update. (diff) | |
download | gentoo-2-99b930207227e30af3f419b52b9042f3720a2b34.tar.gz gentoo-2-99b930207227e30af3f419b52b9042f3720a2b34.tar.bz2 gentoo-2-99b930207227e30af3f419b52b9042f3720a2b34.zip |
Replace prefix-specific hack to find valid libdirs with
saner autotool-ish library check.
Thanks to Ruud Koolen (redlizard@gentoo.org)
(Portage version: 2.2.8-r1/cvs/Linux x86_64, signed Manifest commit with key 0xA832680F)
Diffstat (limited to 'dev-lang/perl')
-rw-r--r-- | dev-lang/perl/ChangeLog | 8 | ||||
-rw-r--r-- | dev-lang/perl/files/eblits/src_configure-v50160001.eblit | 4 | ||||
-rw-r--r-- | dev-lang/perl/files/eblits/src_configure-v50180002.eblit | 136 | ||||
-rw-r--r-- | dev-lang/perl/perl-5.18.2.ebuild | 4 |
4 files changed, 147 insertions, 5 deletions
diff --git a/dev-lang/perl/ChangeLog b/dev-lang/perl/ChangeLog index eb25ae50f56b..ce318d462b73 100644 --- a/dev-lang/perl/ChangeLog +++ b/dev-lang/perl/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-lang/perl # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/ChangeLog,v 1.417 2014/03/10 08:22:37 zlogene Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/ChangeLog,v 1.418 2014/03/11 17:01:15 civil Exp $ + + 11 Mar 2014; Vladimir Smirnov <civil@gentoo.org> + +files/eblits/src_configure-v50180002.eblit, + files/eblits/src_configure-v50160001.eblit, perl-5.18.2.ebuild: + Replace prefix-specific hack to find valid libdirs with saner autotool-ish + library check. Thanks to Ruud Koolen (redlizard@gentoo.org) 10 Mar 2014; Mikle Kolyada <zlogene@gentoo.org> -perl-5.18.1.ebuild: Drop old diff --git a/dev-lang/perl/files/eblits/src_configure-v50160001.eblit b/dev-lang/perl/files/eblits/src_configure-v50160001.eblit index 3c3239a692a0..99d5fd078693 100644 --- a/dev-lang/perl/files/eblits/src_configure-v50160001.eblit +++ b/dev-lang/perl/files/eblits/src_configure-v50160001.eblit @@ -1,6 +1,6 @@ -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/files/eblits/src_configure-v50160001.eblit,v 1.6 2013/11/22 08:56:13 haubi Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/files/eblits/src_configure-v50160001.eblit,v 1.7 2014/03/11 17:01:14 civil Exp $ myconf() { # the myconf array is declared in src_configure diff --git a/dev-lang/perl/files/eblits/src_configure-v50180002.eblit b/dev-lang/perl/files/eblits/src_configure-v50180002.eblit new file mode 100644 index 000000000000..8f2f231ea9d1 --- /dev/null +++ b/dev-lang/perl/files/eblits/src_configure-v50180002.eblit @@ -0,0 +1,136 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/files/eblits/src_configure-v50180002.eblit,v 1.1 2014/03/11 17:01:14 civil Exp $ + +myconf() { + # the myconf array is declared in src_configure + myconf=( "${myconf[@]}" "$@" ) +} + +eblit-perl-src_configure() { + declare -a myconf + + export LC_ALL="C" + [[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091 + + # some arches and -O do not mix :) + use ppc && replace-flags -O? -O1 + # Perl has problems compiling with -Os in your flags with glibc + use elibc_uclibc || replace-flags "-Os" "-O2" + # This flag makes compiling crash in interesting ways + filter-flags "-malign-double" + # Fixes bug #97645 + use ppc && filter-flags "-mpowerpc-gpopt" + # Fixes bug #143895 on gcc-4.1.1 + filter-flags "-fsched2-use-superblocks" + + use sparc && myconf -Ud_longdbl + + export BUILD_BZIP2=0 + export BZIP2_INCLUDE=${EPREFIX}/usr/include + export BZIP2_LIB=${EPREFIX}/usr/$(get_libdir) + + export BUILD_ZLIB=False + export ZLIB_INCLUDE=${EPREFIX}/usr/include + export ZLIB_LIB=${EPREFIX}/usr/$(get_libdir) + + # allow either gdbm to provide ndbm (in <gdbm/ndbm.h>) or db1 + + myndbm='U' + mygdbm='U' + mydb='U' + + if use gdbm ; then + mygdbm='D' + myndbm='D' + fi + if use berkdb ; then + mydb='D' + has_version '=sys-libs/db-1*' && myndbm='D' + fi + + myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db" + + if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then + ewarn "Perl will not be built with berkdb support, use gcc if you needed it..." + myconf -Ui_db -Ui_ndbm + fi + + use ithreads && myconf -Dusethreads + + if use debug ; then + append-cflags "-g" + myconf -DDEBUGGING + elif [[ ${CFLAGS} == *-g* ]] ; then + myconf -DDEBUGGING=-g + else + myconf -DDEBUGGING=none + fi + + if [[ -n ${PERL_OLDVERSEN} ]] ; then + local inclist=$(for v in ${PERL_OLDVERSEN}; do echo -n "${v}/${myarch}${mythreading} ${v} "; done ) + myconf -Dinc_version_list="${inclist}" + fi + + [[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a" + + # Prefix: the host system needs not to follow Gentoo multilib stuff, and in + # Prefix itself we don't do multilib either, so make sure perl can find + # something compatible. + if use prefix ; then + # Set a hook to check for each detected library whether it actually works. + export libscheck=" + ( echo 'main(){}' > '${T}'/conftest.c && + $(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null + ) || xxx=/dev/null" + + # Use all host paths that might contain useful stuff, the hook above will filter out bad choices. + local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib" + myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}" + elif [[ $(get_libdir) != "lib" ]] ; then + # We need to use " and not ', as the written config.sh use ' ... + myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)" + fi + + # don't try building ODBM, bug #354453 + myconf -Dnoextensions=ODBM_File + + sh Configure \ + -des \ + -Duseshrplib \ + -Darchname="${myarch}" \ + -Dcc="$(tc-getCC)" \ + -Doptimize="${CFLAGS}" \ + -Dldflags="${LDFLAGS}" \ + -Dprefix="${EPREFIX}"'/usr' \ + -Dinstallprefix="${EPREFIX}"'/usr' \ + -Dsiteprefix="${EPREFIX}"'/usr/local' \ + -Dvendorprefix="${EPREFIX}"'/usr' \ + -Dscriptdir="${EPREFIX}"'/usr/bin' \ + -Dprivlib="${EPREFIX}${PRIV_LIB}" \ + -Darchlib="${EPREFIX}${ARCH_LIB}" \ + -Dsitelib="${EPREFIX}${SITE_LIB}" \ + -Dsitearch="${EPREFIX}${SITE_ARCH}" \ + -Dvendorlib="${EPREFIX}${VENDOR_LIB}" \ + -Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \ + -Dman1dir="${EPREFIX}"/usr/share/man/man1 \ + -Dman3dir="${EPREFIX}"/usr/share/man/man3 \ + -Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \ + -Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \ + -Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \ + -Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \ + -Dman1ext='1' \ + -Dman3ext='3pm' \ + -Dlibperl="${LIBPERL}" \ + -Dlocincpth="${EPREFIX}"'/usr/include ' \ + -Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \ + -Duselargefiles \ + -Dd_semctl_semun \ + -Dcf_by='Gentoo' \ + -Dmyhostname='localhost' \ + -Dperladmin='root@localhost' \ + -Dinstallusrbinperl='n' \ + -Ud_csh \ + -Uusenm \ + "${myconf[@]}" || die "Unable to configure" +} diff --git a/dev-lang/perl/perl-5.18.2.ebuild b/dev-lang/perl/perl-5.18.2.ebuild index b4a4bd65a867..668ffcc4e3bc 100644 --- a/dev-lang/perl/perl-5.18.2.ebuild +++ b/dev-lang/perl/perl-5.18.2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/perl-5.18.2.ebuild,v 1.2 2014/03/09 23:29:34 civil Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/perl-5.18.2.ebuild,v 1.3 2014/03/11 17:01:15 civil Exp $ EAPI=5 @@ -100,7 +100,7 @@ eblit-run() { #src_unpack() { eblit-run src_unpack v50160001 ; } src_prepare() { eblit-run src_prepare v50160001 ; } -src_configure() { eblit-run src_configure v50160001 ; } +src_configure() { eblit-run src_configure v50180002 ; } #src_compile() { eblit-run src_compile v50160001 ; } src_test() { eblit-run src_test v50160001 ; } src_install() { eblit-run src_install v50160001 ; } |