summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-devel/libtool/libtool-1.5.10-r3.ebuild')
-rw-r--r--sys-devel/libtool/libtool-1.5.10-r3.ebuild156
1 files changed, 156 insertions, 0 deletions
diff --git a/sys-devel/libtool/libtool-1.5.10-r3.ebuild b/sys-devel/libtool/libtool-1.5.10-r3.ebuild
new file mode 100644
index 000000000000..cb714ee5b16c
--- /dev/null
+++ b/sys-devel/libtool/libtool-1.5.10-r3.ebuild
@@ -0,0 +1,156 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/libtool/libtool-1.5.10-r3.ebuild,v 1.1 2005/01/20 05:39:53 vapier Exp ${P}-r1.ebuild,v 1.8 2002/10/04 06:34:42 kloeri Exp $
+
+inherit eutils gnuconfig libtool
+
+DESCRIPTION="A shared library tool for developers"
+HOMEPAGE="http://www.gnu.org/software/libtool/libtool.html"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="1.5"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="uclibc"
+
+DEPEND="virtual/libc
+ >=sys-devel/autoconf-2.59
+ >=sys-devel/automake-1.9"
+# 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.9
+}
+
+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 ${S}
+
+ # Make sure non of the patches touch ltmain.sh, but rather ltmain.in
+ rm -f ltmain.sh*
+
+ # 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
+# Seems to be included in shipped tarball ...
+# epatch ${FILESDIR}/1.5.2/${PN}-1.5-libtool.m4-x86_64.patch
+ epatch ${FILESDIR}/1.5.2/${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.5.6/${PN}-1.5.6-ltmain-SED.patch
+ epatch ${FILESDIR}/1.4.3/${PN}-1.4.2-expsym-linux.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 may run into an
+ # issue where internal variables are named differently. Often
+ # this shows up as libs being built without '.so' extension #73140
+ epatch ${FILESDIR}/1.5.10/${PN}-1.5.10-version-checking.patch
+ sed -i "s:@_LT_VERSION@:${PV}:" libtool.m4 || die "sed libtool.m4"
+ # 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}/1.5.2/${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}/1.5.6/libtool-1.5-filter-host-tags.patch
+
+ # Libtool uses links to handle locking object files with
+ # dependencies. Hard links can't cross filesystems though,
+ # so we have to use a diff source for the link. #40992
+ epatch ${FILESDIR}/1.5.10/libtool-1.5.10-locking.patch
+
+ ebegin "Generating ltmain.sh"
+ gen_ltmain_sh || die "Failed to generate ltmain.sh!"
+ eend 0
+
+ # Now let's run all our autotool stuff so that files we patch
+ # below don't get regenerated on us later
+ cp libtool.m4 acinclude.m4
+ local d p
+ for d in . libltdl ; do
+ ebegin "Running autotools in '${d}'"
+ cd ${S}/${d}
+ touch acinclude.m4
+ for p in aclocal "automake -c -a" autoconf ; do
+ ${p} || die "${p}"
+ done
+ eend 0
+ done
+ cd ${S}
+
+ uclibctoolize
+ gnuconfig_update ${WORKDIR}
+ epunt_cxx
+}
+
+src_compile() {
+ lt_setup
+ econf || die
+ emake || die
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die
+ dodoc AUTHORS ChangeLog* NEWS README THANKS TODO doc/PLATFORMS
+
+ 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
+ fi
+}