diff options
author | Martin Schlemmer <azarah@gentoo.org> | 2004-02-11 19:39:44 +0000 |
---|---|---|
committer | Martin Schlemmer <azarah@gentoo.org> | 2004-02-11 19:39:44 +0000 |
commit | a5c7d81ae08e482a4ff209c97a207eff10f9601c (patch) | |
tree | 576b1444c28c37b5aa73c3ba2eb6e570e28a4939 /sys-devel/libtool | |
parent | Add max_cmd_len patch (diff) | |
download | historical-a5c7d81ae08e482a4ff209c97a207eff10f9601c.tar.gz historical-a5c7d81ae08e482a4ff209c97a207eff10f9601c.tar.bz2 historical-a5c7d81ae08e482a4ff209c97a207eff10f9601c.zip |
For older autoconf setups's that do not support libtool.m4,
are never set, causing all tests against it to fail, resulting in
'integer expression expected' errors and possible misbehaviour.
Diffstat (limited to 'sys-devel/libtool')
-rw-r--r-- | sys-devel/libtool/ChangeLog | 10 | ||||
-rw-r--r-- | sys-devel/libtool/Manifest | 5 | ||||
-rw-r--r-- | sys-devel/libtool/files/1.5.2/libtool-1.5.2-ltmain_sh-max_cmd_len.patch | 33 | ||||
-rw-r--r-- | sys-devel/libtool/files/digest-libtool-1.5.2-r3 | 2 | ||||
-rw-r--r-- | sys-devel/libtool/libtool-1.5.2-r3.ebuild | 197 |
5 files changed, 245 insertions, 2 deletions
diff --git a/sys-devel/libtool/ChangeLog b/sys-devel/libtool/ChangeLog index 1a13849dbcda..43c69f43aae3 100644 --- a/sys-devel/libtool/ChangeLog +++ b/sys-devel/libtool/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for sys-devel/libtool # Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/libtool/ChangeLog,v 1.34 2004/02/11 17:48:05 azarah Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-devel/libtool/ChangeLog,v 1.35 2004/02/11 19:39:41 azarah Exp $ + +*libtool-1.5.2-r3 (11 Feb 2004) + + 11 Feb 2004; Martin Schlemmer <azarah@gentoo.org> libtool-1.5.2-r3.ebuild, + files/1.5.2/libtool-1.5.2-ltmain_sh-max_cmd_len.patch: + For older autoconf setups's that do not support libtool.m4, $max_cmd_len + are never set, causing all tests against it to fail, resulting in + 'integer expression expected' errors and possible misbehaviour. *libtool-1.5.2-r2 (11 Feb 2004) diff --git a/sys-devel/libtool/Manifest b/sys-devel/libtool/Manifest index 9d87912ebd2b..d1cb9a9d1c8a 100644 --- a/sys-devel/libtool/Manifest +++ b/sys-devel/libtool/Manifest @@ -1,5 +1,6 @@ -MD5 6d689c9ae203d532c261cab1d31419d8 ChangeLog 6239 +MD5 775607a529da167809cff53b94a610c0 ChangeLog 6616 MD5 fbcf7a29349882a6f6c75491400d1953 libtool-1.4.1-r10.ebuild 1780 +MD5 4c81b1a801295b7ed712e8e6ac481fd0 libtool-1.5.2-r3.ebuild 5445 MD5 4d48b4072e8f2a4591a4d80a23f6042f libtool-1.4.2-r2.ebuild 2182 MD5 6e9311e710399a611970be41fcff8b23 libtool-1.5.2-r2.ebuild 5117 MD5 9a09f8d531c582e78977dbfd96edc1f2 metadata.xml 164 @@ -10,6 +11,8 @@ MD5 3b92d43ab25bc1ad32ee87d89660f268 files/digest-libtool-1.5.2-r1 131 MD5 cd3779fa4710870bb83597c39736e822 files/digest-libtool-1.4.1-r10 66 MD5 3b92d43ab25bc1ad32ee87d89660f268 files/digest-libtool-1.5.2-r2 131 MD5 6e892e6bd1ca4d9babce9f9163f6118e files/digest-libtool-1.4.3-r3 131 +MD5 3b92d43ab25bc1ad32ee87d89660f268 files/digest-libtool-1.5.2-r3 131 +MD5 d2313fcf3c18603f201627ca94850786 files/1.5.2/libtool-1.5.2-ltmain_sh-max_cmd_len.patch 1153 MD5 0fb02114fa6b6cd63ea25510f04f346a files/1.5.2/libtool-1.5-testfailure.patch 6448 MD5 6ef585a59058c79f3601bbd7787f2683 files/1.5.2/libtool-1.5-libtool.m4-x86_64.patch 466 MD5 8ccfbb70def73753ae1b2750c6e4e83c files/1.5.2/libtool-1.5.2-libtool_m4-shared_ext.patch 880 diff --git a/sys-devel/libtool/files/1.5.2/libtool-1.5.2-ltmain_sh-max_cmd_len.patch b/sys-devel/libtool/files/1.5.2/libtool-1.5.2-ltmain_sh-max_cmd_len.patch new file mode 100644 index 000000000000..3d5bd89ad42b --- /dev/null +++ b/sys-devel/libtool/files/1.5.2/libtool-1.5.2-ltmain_sh-max_cmd_len.patch @@ -0,0 +1,33 @@ +--- libtool-1.5.2/ltmain.in 2004-02-11 20:55:14.587581248 +0200 ++++ libtool-1.5.2.max_cmd_len/ltmain.in 2004-02-11 21:15:33.467283368 +0200 +@@ -117,6 +117,30 @@ + execute_dlfiles= + lo2o="s/\\.lo\$/.${objext}/" + o2lo="s/\\.${objext}\$/.lo/" ++ ++if test -z "$max_cmd_len"; then ++ i=0 ++ testring="ABCD" ++ new_result= ++ ++ # If test is not a shell built-in, we'll probably end up computing a ++ # maximum length that is only half of the actual maximum length, but ++ # we can't tell. ++ while (test "X"`$SHELL $0 --fallback-echo "X$testring" 2>/dev/null` \ ++ = "XX$testring") >/dev/null 2>&1 && ++ new_result=`expr "X$testring" : ".*" 2>&1` && ++ max_cmd_len="$new_result" && ++ test $i != 17 # 1/2 MB should be enough ++ do ++ i=`expr $i + 1` ++ testring="$testring$testring" ++ done ++ testring= ++ # Add a significant safety factor because C++ compilers can tack on massive ++ # amounts of additional arguments before passing them to the linker. ++ # It appears as though 1/2 is a usable value. ++ max_cmd_len=`expr $max_cmd_len \/ 2` ++fi + + ##################################### + # Shell function definitions: diff --git a/sys-devel/libtool/files/digest-libtool-1.5.2-r3 b/sys-devel/libtool/files/digest-libtool-1.5.2-r3 new file mode 100644 index 000000000000..301451dc934e --- /dev/null +++ b/sys-devel/libtool/files/digest-libtool-1.5.2-r3 @@ -0,0 +1,2 @@ +MD5 db66ba05502f533ad0cfd84dc0e03bd5 libtool-1.5.2.tar.gz 2653072 +MD5 fa26a07c978ad05d1f88ed7a472daa49 libtool-1.3.5.tar.gz 538884 diff --git a/sys-devel/libtool/libtool-1.5.2-r3.ebuild b/sys-devel/libtool/libtool-1.5.2-r3.ebuild new file mode 100644 index 000000000000..8e3c5693dc29 --- /dev/null +++ b/sys-devel/libtool/libtool-1.5.2-r3.ebuild @@ -0,0 +1,197 @@ +# Copyright 1999-2004 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-devel/libtool/libtool-1.5.2-r3.ebuild,v 1.1 2004/02/11 19:39:44 azarah Exp ${P}-r1.ebuild,v 1.8 2002/10/04 06:34:42 vapier Exp $ + +IUSE= + +inherit eutils gnuconfig + +# NOTE: We install libltdl of libtool-1.3x for compat reasons ... + +OLD_PV="1.3.5" +S="${WORKDIR}/${P}" +OLD_S="${WORKDIR}/${PN}-${OLD_PV}" +DESCRIPTION="A shared library tool for developers" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz + mirror://gnu/${PN}/${PN}-${OLD_PV}.tar.gz" +HOMEPAGE="http://www.gnu.org/software/libtool/libtool.html" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~ppc ~sparc ~alpha ~mips ~hppa ~arm ~ia64 ppc64" + +DEPEND="virtual/glibc" + + +lt_setup() { + export WANT_AUTOCONF_2_5=1 + export WANT_AUTOMAKE_1_5=1 +} + +gen_ltmain_sh() { + local date= + local PACKAGE= + local VERSION= + + rm -f ltmain.shT + date=`./mkstamp < ./ChangeLog` && \ + eval `egrep '^[[:space:]]*PACKAGE' configure` && \ + eval `egrep '^[[:space:]]*VERSION' configure` && \ + sed -e "s/@PACKAGE@/${PACKAGE}/" -e "s/@VERSION@/${VERSION}/" \ + -e "s%@TIMESTAMP@%$date%" ./ltmain.in > ltmain.shT || return 1 + + mv -f ltmain.shT ltmain.sh || { + (rm -f ltmain.sh && cp ltmain.shT ltmain.sh && rm -f ltmain.shT) + return 1 + } + + return 0 +} + +src_unpack() { + lt_setup + + unpack ${A} + + cd ${OLD_S} + echo + # Install updated missing script + portageq has_version / "sys-devel/automake" && { + rm -f missing + automake --add-missing + } + + einfo "Patching ${OLD_S##*/} ..." + epatch ${FILESDIR}/1.4.3/${PN}-1.2f-cache.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.3.5-nonneg.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.3.5-mktemp.patch + + use hppa && S="${OLD_S}" gnuconfig_update + use amd64 && S="${OLD_S}" gnuconfig_update + + cd ${S} + echo + # Install updated missing script +# portageq has_version / "sys-devel/automake" && { +# rm -f missing +# automake --add-missing +# } + + # Make sure non of the patches touch ltmain.sh, but rather ltmain.in + rm -f ltmain.sh* + + einfo "Patching ${S##*/} ..." + # Redhat patches + epatch ${FILESDIR}/1.4.3/${PN}-1.4-nonneg.patch + # Fix the relink problem where the relinked libs do not get + # installed. It is *VERY* important that you get a updated + # 'libtool-1.4.3-relink.patch' if you update this, as it + # fixes a very serious bug. Please not that this patch is + # included in 'libtool-1.4.3-gentoo.patch' for this ebuild. + # + # NOTE: all affected apps should get a 'libtoolize --copy --force' + # added to upate libtool + # +# Seems to be included in shipped tarball ... +# epatch ${FILESDIR}/1.4.3/${PN}-1.4.2-relink-58664.patch + + epatch ${FILESDIR}/1.4.3/${PN}-1.4.2-multilib.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.4.2-demo.patch + epatch ${FILESDIR}/${PV}/${PN}-1.5-libtool.m4-x86_64.patch + epatch ${FILESDIR}/${PV}/${PN}-1.5-testfailure.patch + # Mandrake patches + epatch ${FILESDIR}/1.4.3/${PN}-1.4.3-lib64.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.4.2-fix-linkage-of-cxx-code-with-gcc.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.4.2-archive-shared.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.4.3-ltmain-SED.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.4.2-expsym-linux.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.4.3-amd64-alias.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.4.3-libtoolize--config-only.patch + epatch ${FILESDIR}/1.4.3/${PN}-1.4.3-pass-thread-flags.patch + + # Gentoo Patches + # Do not create bogus entries in $dependency_libs or $libdir + # with ${D} or ${S} in them. + # <azarah@gentoo.org> - (07 April 2002) + epatch ${FILESDIR}/1.4.3/${PN}-1.4.2-portage.patch + # If a package use an older libtool, and libtool.m4 for that + # package is updated, but not libtool, then we run into an + # issue where $shared_ext is not set. This results in libraries + # being built without '.so' extension, bug #40901 + # <azarah@gentoo.org> - (11 Feb 2004) + epatch ${FILESDIR}/${PV}/${PN}-1.5.2-libtool_m4-shared_ext.patch + # For older autoconf setups's that do not support libtool.m4, + # $max_cmd_len are never set, causing all tests against it to + # fail, resulting in 'integer expression expected' errors and + # possible misbehaviour. + # <azarah@gentoo.org> - (11 Feb 2004) + epatch ${FILESDIR}/${PV}/${PN}-1.5.2-ltmain_sh-max_cmd_len.patch + + einfo "Generate ltmain.sh ..." + gen_ltmain_sh || die "Failed to generate ltmain.sh!" +} + +src_compile() { + lt_setup + + # + # ************ libtool-1.3x ************ + # + + cd ${OLD_S} + + # Detect mips/mips64 + use mips && gnuconfig_update + + einfo "Configuring ${OLD_S##*/} ..." + ./configure --host=${CHOST} \ + --prefix=/usr \ + --infodir=/usr/share/info || die + + einfo "Building ${OLD_S##*/} ..." + emake || die + + # + # ************ libtool-1.5x ************ + # + + cd ${S} + + # Detect mips/mips64 + use mips && gnuconfig_update + + einfo "Configuring ${S##*/} ..." + ./configure --host=${CHOST} \ + --prefix=/usr \ + --infodir=/usr/share/info || die + + einfo "Building ${S##*/} ..." + emake || die +} + +src_install() { + # + # ************ libtool-1.3x ************ + # + + einfo "Installing ${OLD_S##*/} ..." + cd ${OLD_S}/libltdl; make DESTDIR=${D} install || die + + # Remove stuff we are not going to use ... + for x in libltdl.a libltdl.la libltdl.so + do + [ -f ${x} ] && rm -f ${D}/usr/lib/${x} + done + rm -rf ${D}/usr/include + + # + # ************ libtool-1.5x ************ + # + + einfo "Installing ${S##*/} ..." + cd ${S}; make DESTDIR=${D} install || die + + dodoc AUTHORS COPYING ChangeLog* NEWS \ + README THANKS TODO doc/PLATFORMS +} + |