diff options
author | Mike Frysinger <vapier@gentoo.org> | 2005-11-04 02:33:25 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2005-11-04 02:33:25 +0000 |
commit | b45e9561fcc4d060c78cc7354823157881ffb1a8 (patch) | |
tree | f667cc664c820d47b0cf6b2dcdc40efb286ae4b6 /sys-devel | |
parent | change default abi for mips64 toolchains to n32 and add a warning if we skip ... (diff) | |
download | gentoo-2-b45e9561fcc4d060c78cc7354823157881ffb1a8.tar.gz gentoo-2-b45e9561fcc4d060c78cc7354823157881ffb1a8.tar.bz2 gentoo-2-b45e9561fcc4d060c78cc7354823157881ffb1a8.zip |
Dont use non-portable character classes in Gentoo sanity check #111353 by Erik Månsson.
(Portage version: 2.0.53_rc7)
Diffstat (limited to 'sys-devel')
-rw-r--r-- | sys-devel/libtool/ChangeLog | 10 | ||||
-rw-r--r-- | sys-devel/libtool/files/1.5.20/libtool-1.5.20-version-checking.patch | 65 | ||||
-rw-r--r-- | sys-devel/libtool/files/digest-libtool-1.5.20-r1 | 1 | ||||
-rw-r--r-- | sys-devel/libtool/libtool-1.5.20-r1.ebuild | 158 |
4 files changed, 233 insertions, 1 deletions
diff --git a/sys-devel/libtool/ChangeLog b/sys-devel/libtool/ChangeLog index 4ebb4c0d0d13..faca2edbeac5 100644 --- a/sys-devel/libtool/ChangeLog +++ b/sys-devel/libtool/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for sys-devel/libtool # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/libtool/ChangeLog,v 1.91 2005/10/18 13:03:11 agriffis Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-devel/libtool/ChangeLog,v 1.92 2005/11/04 02:33:25 vapier Exp $ + +*libtool-1.5.20-r1 (04 Nov 2005) + + 04 Nov 2005; Mike Frysinger <vapier@gentoo.org> + +files/1.5.20/libtool-1.5.20-version-checking.patch, + +libtool-1.5.20-r1.ebuild: + Dont use non-portable character classes in Gentoo sanity check #111353 by + Erik Månsson. 18 Oct 2005; Aron Griffis <agriffis@gentoo.org> libtool-1.5.20.ebuild: Mark 1.5.20 stable on alpha diff --git a/sys-devel/libtool/files/1.5.20/libtool-1.5.20-version-checking.patch b/sys-devel/libtool/files/1.5.20/libtool-1.5.20-version-checking.patch new file mode 100644 index 000000000000..63b8ef5be631 --- /dev/null +++ b/sys-devel/libtool/files/1.5.20/libtool-1.5.20-version-checking.patch @@ -0,0 +1,65 @@ +Add a sanity check to make sure the libtool code in the 'configure' script is +in sync with the local 'ltmain.sh'. If they are out of sync, libtool may +generate the libraries incorrectly. + +http://bugs.gentoo.org/73140 + +--- libtool-1.5.20/libtool.m4 ++++ libtool-1.5.20/libtool.m4 +@@ -212,6 +212,14 @@ + [pic_mode=default]) + test -z "$pic_mode" && pic_mode=default + ++# Check if we have a version mismatch between libtool.m4 and ltmain.sh. ++# ++# Note: This should be in AC_LIBTOOL_SETUP, _after_ $ltmain have been defined. ++# We also should do it _before_ AC_LIBTOOL_LANG_C_CONFIG that actually ++# calls AC_LIBTOOL_CONFIG and creates libtool. ++# ++_LT_VERSION_CHECK ++ + # Use C for the default configuration in the libtool script + tagname= + AC_LIBTOOL_LANG_C_CONFIG +@@ -219,6 +227,41 @@ + ])# AC_LIBTOOL_SETUP + + ++# _LT_VERSION_CHECK ++# ----------------- ++AC_DEFUN([_LT_VERSION_CHECK], ++[AC_MSG_CHECKING([for correct ltmain.sh version]) ++if test "x$ltmain" = "x" ; then ++ AC_MSG_RESULT(no) ++ AC_MSG_ERROR([ ++ ++*** @<:@Gentoo@:>@ sanity check failed! *** ++*** \$ltmain is not defined, please check the patch for consistency! *** ++]) ++fi ++gentoo_lt_version="@_LT_VERSION@" ++gentoo_ltmain_version=`grep '^@<:@ @:>@*VERSION=' $ltmain | sed -e 's|^@<:@ @:>@*VERSION=||'` ++if test "x$gentoo_lt_version" != "x$gentoo_ltmain_version" ; then ++ AC_MSG_RESULT(no) ++ AC_MSG_ERROR([ ++ ++*** @<:@Gentoo@:>@ sanity check failed! *** ++*** libtool.m4 and ltmain.sh have a version mismatch! *** ++*** (libtool.m4 = $gentoo_lt_version, ltmain.sh = $gentoo_ltmain_version) *** ++ ++Please run: ++ ++ libtoolize --copy --force ++ ++if appropriate, please contact the maintainer of this ++package (or your distribution) for help. ++]) ++else ++ AC_MSG_RESULT(yes) ++fi ++])# _LT_VERSION_CHECK ++ ++ + # _LT_AC_SYS_COMPILER + # ------------------- + AC_DEFUN([_LT_AC_SYS_COMPILER], diff --git a/sys-devel/libtool/files/digest-libtool-1.5.20-r1 b/sys-devel/libtool/files/digest-libtool-1.5.20-r1 new file mode 100644 index 000000000000..4fab72c472e9 --- /dev/null +++ b/sys-devel/libtool/files/digest-libtool-1.5.20-r1 @@ -0,0 +1 @@ +MD5 fc3b564700aebcb19de841c1c2d66e99 libtool-1.5.20.tar.gz 2789331 diff --git a/sys-devel/libtool/libtool-1.5.20-r1.ebuild b/sys-devel/libtool/libtool-1.5.20-r1.ebuild new file mode 100644 index 000000000000..f76df9fb8181 --- /dev/null +++ b/sys-devel/libtool/libtool-1.5.20-r1.ebuild @@ -0,0 +1,158 @@ +# 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.20-r1.ebuild,v 1.1 2005/11/04 02:33:25 vapier Exp ${P}-r1.ebuild,v 1.8 2002/10/04 06:34:42 kloeri Exp $ + +inherit eutils + +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 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="" + +RDEPEND="sys-devel/gnuconfig + >=sys-devel/autoconf-2.59 + >=sys-devel/automake-1.9" +DEPEND="${RDEPEND} + sys-apps/help2man" + +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* + + # 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 + # 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-pass-thread-flags.patch + epatch "${FILESDIR}"/1.5.20/${PN}-1.5.20-use-linux-version-in-fbsd.patch #109105 + + # 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.5.10/${PN}-1.5.10-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.20/${PN}-1.5.20-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.20/${PN}-1.5.20-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 + + # In some cases EGREP is not set by the build system. + epatch "${FILESDIR}"/1.5.14/libtool-1.5.14-egrep.patch + + # Make sure LD_LIBRARY_PATH doesn't override RUNPATH #99593 + epatch "${FILESDIR}"/1.5.20/libtool-1.5.20-override-LD_LIBRARY_PATH.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}" + + 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 + + local x + for x in libtool libtoolize ; do + help2man ${x} > ${x}.1 + doman ${x}.1 + done + + 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 +} |