Try to impove auto-guessing at --tag #67692.
authorMike Frysinger <vapier@gentoo.org>
Thu, 4 Nov 2004 05:13:53 +0000 (05:13 +0000)
committerMike Frysinger <vapier@gentoo.org>
Thu, 4 Nov 2004 05:13:53 +0000 (05:13 +0000)
sys-devel/libtool/ChangeLog
sys-devel/libtool/Manifest
sys-devel/libtool/files/1.5.2/libtool-1.5-filter-host-tags.patch [new file with mode: 0644]
sys-devel/libtool/files/digest-libtool-1.5.2-r6 [new file with mode: 0644]
sys-devel/libtool/libtool-1.5.2-r6.ebuild [new file with mode: 0644]

index 97f28f86de4404c6be60c8ce427c7f1ad36832b3..8d52aa00028845d3fa54944a26399e88cc1236a9 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for sys-devel/libtool
 # Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/libtool/ChangeLog,v 1.54 2004/11/01 15:20:46 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/libtool/ChangeLog,v 1.55 2004/11/04 05:13:52 vapier Exp $
+
+*libtool-1.5.2-r6 (04 Nov 2004)
+
+  04 Nov 2004; Mike Frysinger <vapier@gentoo.org>
+  +files/1.5.2/libtool-1.5-filter-host-tags.patch, +libtool-1.5.2-r6.ebuild:
+  Try to impove auto-guessing at --tag #67692.
 
 *libtool-1.5.10 (01 Nov 2004)
 
index e4533be48c21c3614eb13f23d931f51c5184cb5b..ae8094e45a900ad1fc1c6888302a44ef277c2375 100644 (file)
@@ -1,10 +1,12 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-MD5 e918fdba01101cd7bc0774c4dffb4d68 ChangeLog 9537
+MD5 889d32a032aea8d5fa4e92d1ecd8cb72 ChangeLog 9745
 MD5 bdf79b29f58d0f07e24a1be734d38230 libtool-1.5.10.ebuild 5993
-MD5 9a09f8d531c582e78977dbfd96edc1f2 metadata.xml 164
 MD5 7b1ab8e073eb3e256d88f090fd961197 libtool-1.5.2-r5.ebuild 5890
+MD5 9a09f8d531c582e78977dbfd96edc1f2 metadata.xml 164
+MD5 b7cac5f77ff3ac3ce0bcfe39a6c47fe4 libtool-1.5.2-r6.ebuild 6114
+MD5 3b92d43ab25bc1ad32ee87d89660f268 files/digest-libtool-1.5.2-r6 131
 MD5 bd27a462a2a9fe3662d3d34179ed3200 files/libltdl-uclibc.patch 4590
 MD5 63416d5eb60364fb1b758f487fb81a8a files/digest-libtool-1.5.10 132
 MD5 3b92d43ab25bc1ad32ee87d89660f268 files/digest-libtool-1.5.2-r5 131
@@ -56,10 +58,11 @@ MD5 6ef585a59058c79f3601bbd7787f2683 files/1.5.2/libtool-1.5-libtool.m4-x86_64.p
 MD5 0fb02114fa6b6cd63ea25510f04f346a files/1.5.2/libtool-1.5-testfailure.patch 6448
 MD5 8ac4aa8ff1c680fe44447274d9f3a673 files/1.5.2/libtool-1.5.2-libtool_m4-shared_ext.patch 882
 MD5 d2313fcf3c18603f201627ca94850786 files/1.5.2/libtool-1.5.2-ltmain_sh-max_cmd_len.patch 1153
+MD5 055538f9759547fa48053a0ff9f4aa44 files/1.5.2/libtool-1.5-filter-host-tags.patch 1687
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.9.10 (GNU/Linux)
 
-iD8DBQFBhlSxHTu7gpaalycRAtC/AKCk7RYi7nDNSAuALjSLhGSMWsHVmwCg2aA5
-LRT23byY9OfMAPVr7FgSkP8=
-=5FI1
+iD8DBQFBibq6HTu7gpaalycRAoSWAKChFi9NT8RvV4JLpElScXd9IDLqBACgoi3J
+urRZClHwVEsF6G9aHm4TadA=
+=I/Gb
 -----END PGP SIGNATURE-----
diff --git a/sys-devel/libtool/files/1.5.2/libtool-1.5-filter-host-tags.patch b/sys-devel/libtool/files/1.5.2/libtool-1.5-filter-host-tags.patch
new file mode 100644 (file)
index 0000000..4db84bb
--- /dev/null
@@ -0,0 +1,29 @@
+--- libtool-1.5.2/ltmain.in.orig       2004-11-04 04:20:50.608823576 +0000
++++ libtool-1.5.2/ltmain.in    2004-11-04 04:23:25.151329544 +0000
+@@ -560,8 +560,11 @@
+         if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then
+           # Evaluate the configuration.
+           eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`"
++          # user sometimes does CC=<HOST>-gcc so we need to match that to 'gcc'
++          trimedcc="${CC/${host}-}"
+           case "$base_compile " in
+-          "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*)
++          "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*|\
++          "$trimedcc "* | " $trimedcc "* | "`$echo $trimedcc` "* | " `$echo $trimedcc` "*)
+             # The compiler in the base compile command matches
+             # the one in the tagged configuration.
+             # Assume this is the tagged configuration we want.
+@@ -947,8 +950,11 @@
+         if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then
+           # Evaluate the configuration.
+           eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`"
+-          case $base_compile in
+-          "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*)
++          # user sometimes does CC=<HOST>-gcc so we need to match that to 'gcc'
++          trimedcc="${CC/${host}-}"
++          case "$base_compile " in
++          "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*|\
++          "$trimedcc "* | " $trimedcc "* | "`$echo $trimedcc` "* | " `$echo $trimedcc` "*)
+             # The compiler in $compile_command matches
+             # the one in the tagged configuration.
+             # Assume this is the tagged configuration we want.
diff --git a/sys-devel/libtool/files/digest-libtool-1.5.2-r6 b/sys-devel/libtool/files/digest-libtool-1.5.2-r6
new file mode 100644 (file)
index 0000000..301451d
--- /dev/null
@@ -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-r6.ebuild b/sys-devel/libtool/libtool-1.5.2-r6.ebuild
new file mode 100644 (file)
index 0000000..40e1a64
--- /dev/null
@@ -0,0 +1,210 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/libtool/libtool-1.5.2-r6.ebuild,v 1.1 2004/11/04 05:13:52 vapier Exp ${P}-r1.ebuild,v 1.8 2002/10/04 06:34:42 kloeri Exp $
+
+inherit eutils gnuconfig
+
+# NOTE:  We install libltdl of libtool-1.3x for compat reasons ...
+
+OLD_PV="1.3.5"
+OLD_S="${WORKDIR}/${PN}-${OLD_PV}"
+DESCRIPTION="A shared library tool for developers"
+HOMEPAGE="http://www.gnu.org/software/libtool/libtool.html"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.gz
+       mirror://gnu/${PN}/${PN}-${OLD_PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-*"
+IUSE="uclibc"
+
+DEPEND="virtual/libc
+       >=sys-devel/autoconf-2.58
+       >=sys-devel/automake-1.8.3"
+# the autoconf dep is due to it complaining 'configure.ac:55: error: Autoconf version 2.58 or higher is required'
+# the automake dep is due to Bug #46037
+
+lt_setup() {
+       export WANT_AUTOCONF=2.5
+       export WANT_AUTOMAKE=1.5
+}
+
+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
+       epatch ${FILESDIR}/ltconfig-uclibc.patch
+
+       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 update 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
+# Fix bug #43244
+#      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
+
+       # Libtool's autoguessing at tag's sucks ... it get's confused 
+       # if the tag's CC says '<CHOST>-gcc' and the env CC says 'gcc'
+       # or vice versa ... newer automakes specify the tag so no
+       # guessing is needed #67692
+       epatch ${FILESDIR}/${PV}/libtool-1.5-filter-host-tags.patch
+
+       einfo "Generate ltmain.sh ..."
+       gen_ltmain_sh || die "Failed to generate ltmain.sh!"
+
+       # Run gnuconfig_update for both old and new versions *after* patches so we
+       # don't screw them up
+       gnuconfig_update ${WORKDIR}
+}
+
+src_compile() {
+       lt_setup
+
+       #
+       # ************ libtool-1.3x ************
+       #
+
+       cd ${OLD_S}
+
+       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}
+
+       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
+
+       if use uclibc ; then
+               for x in $(find ${D} -name config.guess -o -name config.sub) ; do
+                       rm -f ${x}; ln -sf ../gnuconfig/$(basename ${x}) ${x}
+               done
+               cd ${D}/usr/share/libtool/libltdl
+               for x in config.guess config.sub ; do
+                       rm -f ${x} ; ln -sfn ../${x} ${x}
+               done
+               cd ${S}
+       fi
+
+       dodoc AUTHORS ChangeLog* NEWS README THANKS TODO doc/PLATFORMS
+}