commit: dd092aef747a0c0083d0d4500285a2c54d8597fe Author: Fabian Groffen <grobian <AT> gentoo <DOT> org> AuthorDate: Sun Sep 13 19:08:58 2015 +0000 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org> CommitDate: Sun Sep 13 19:08:58 2015 +0000 URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=dd092aef
sys-devel/libtool: sync 2.4.6-r1, minimally tested Package-Manager: portage-2.2.20-prefix sys-devel/libtool/Manifest | 1 + .../libtool-2.4.6-darwin-use-linux-version.patch | 13 +++ .../libtool/files/2.4/libtool-2.4.6-mint.patch | 49 ++++++++++ .../libtool-2.4.3-use-linux-version-in-fbsd.patch | 38 ++++++++ .../libtool/files/libtool-2.4.6-fuse-ld.patch | 53 +++++++++++ sys-devel/libtool/libtool-2.4.2-r1.ebuild | 2 +- sys-devel/libtool/libtool-2.4.6-r1.ebuild | 102 +++++++++++++++++++++ 7 files changed, 257 insertions(+), 1 deletion(-) diff --git a/sys-devel/libtool/Manifest b/sys-devel/libtool/Manifest index 3ee4a98..40ba8bf 100644 --- a/sys-devel/libtool/Manifest +++ b/sys-devel/libtool/Manifest @@ -1,3 +1,4 @@ DIST libtool-1.5.26.tar.gz 2961939 SHA256 1c35ae34fe85aa167bd7ab4bc9f477fe019138e1af62678d952fc43c0b7e2f09 SHA512 fcd39856c8cd457c97f176d5f6ce97fd93108808ce24315d179a7c9ca85bb90e799afaa83bc283ec627d73cfe0e0710d36a1ee8f39c9963cf2e806e64a0e0bcf WHIRLPOOL 0a56e666ee7ec79b74b500e761ebddc94fb3d322b1c29c3f9929071f71a339b3082faa486b75c7cfcf72182976a8d6152585ca92c08735a512c07eff80a24ec4 DIST libtool-2.4.2.tar.xz 868760 SHA256 1d7b6862c1ed162e327f083a6f78f40eae29218f0db8c38393d61dab764c4407 SHA512 34f2d4a32beb4d85cfefd9c2c4ff33b0117e9e89c6599c303a7b850c43be5ed090b2f530388b8c8154e8f3f693abd2079180dca9afc948feb800b2e009bed169 WHIRLPOOL 300697c30b6cf693463338ee3bfe10b9ccce2c496b319862182124828caf7b667a7e9cf21f287572ec1fed8abe529a14d171da2983369522faf3eed5513a1af5 +DIST libtool-2.4.6.tar.xz 973080 SHA256 7c87a8c2c8c0fc9cd5019e402bed4292462d00a718a7cd5f11218153bf28b26f SHA512 a6eef35f3cbccf2c9e2667f44a476ebc80ab888725eb768e91a3a6c33b8c931afc46eb23efaee76c8696d3e4eed74ab1c71157bcb924f38ee912c8a90a6521a4 WHIRLPOOL f6e1ea25cc8dd853f0de53c045bcd1166cfede9cb0e890079c2c05e6cbdb5e705e137f83ba32f7e16691b9c9108e9cfb2d14ed030cea07b6eacbe3f1ae18a73b DIST libtool-2.4.tar.xz 852248 SHA256 afcce660d3dc54c63a0a5ba3cf05272239dc3c54bbeba20f6bad250f9dc007ae SHA512 6b706656cbe8a18d9b377b913d7430984abe4bcff1db1bfba3e32e7eff38eca433cd95a507f8aafd96daf28e6426eed14c98fcdb79bae63d56c93503d107b4df WHIRLPOOL 1330996e0a30dcb187eedc88a4548fab11f0585e4a30774572e65b9fde02502fc0c032c3c342ccb0bcf2fd4b895f1ea2c17c81c1f5f4c2f7b5a1b8dfe6a52ef8 diff --git a/sys-devel/libtool/files/2.4/libtool-2.4.6-darwin-use-linux-version.patch b/sys-devel/libtool/files/2.4/libtool-2.4.6-darwin-use-linux-version.patch new file mode 100644 index 0000000..b440981 --- /dev/null +++ b/sys-devel/libtool/files/2.4/libtool-2.4.6-darwin-use-linux-version.patch @@ -0,0 +1,13 @@ +* revert old 1.5 behaviour + +--- libtool-2.4.6/m4/libtool.m4 ++++ libtool-2.4.6/m4/libtool.m4 +@@ -2272,7 +2272,7 @@ + version_type=darwin + need_lib_prefix=no + need_version=no +- library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' ++ library_names_spec='$libname$release$versuffix$shared_ext $libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH diff --git a/sys-devel/libtool/files/2.4/libtool-2.4.6-mint.patch b/sys-devel/libtool/files/2.4/libtool-2.4.6-mint.patch new file mode 100644 index 0000000..341a0f0 --- /dev/null +++ b/sys-devel/libtool/files/2.4/libtool-2.4.6-mint.patch @@ -0,0 +1,49 @@ +Patch by Alan Hourihane + +http://bugs.gentoo.org/show_bug.cgi?id=266984 + +diff -ur libtool-2.2.6/configure libtool-2.2.6-mint/configure +--- libtool-2.2.6/configure 2008-09-07 17:52:50.000000000 +0000 ++++ libtool-2.2.6/configure 2009-04-21 08:49:27.000000000 +0000 +@@ -4986,6 +4986,11 @@ + lt_cv_sys_max_cmd_len=8192; + ;; + ++ mint*) ++ # On MiNT this can take a long time and run out of memory. ++ lt_cv_sys_max_cmd_len=8192; ++ ;; ++ + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. +diff -ur libtool-2.2.6/libltdl/configure libtool-2.2.6-mint/libltdl/configure +--- libtool-2.2.6/libltdl/configure 2008-09-07 17:53:05.000000000 +0000 ++++ libtool-2.2.6/libltdl/configure 2009-04-21 08:50:08.000000000 +0000 +@@ -4422,6 +4422,11 @@ + lt_cv_sys_max_cmd_len=8192; + ;; + ++ mint*) ++ # On MiNT this can take a long time and run out of memory. ++ lt_cv_sys_max_cmd_len=8192; ++ ;; ++ + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. +diff -ur libtool-2.2.6/libltdl/m4/libtool.m4 libtool-2.2.6-mint/libltdl/m4/libtool.m4 +--- libtool-2.2.6/m4/libtool.m4 2008-09-05 11:54:41.000000000 +0000 ++++ libtool-2.2.6/m4/libtool.m4 2009-04-21 08:50:26.000000000 +0000 +@@ -1527,6 +1527,11 @@ + lt_cv_sys_max_cmd_len=8192; + ;; + ++ mint*) ++ # On MiNT this can take a long time and run out of memory. ++ lt_cv_sys_max_cmd_len=8192; ++ ;; ++ + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. diff --git a/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch b/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch new file mode 100644 index 0000000..8244eaa --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch @@ -0,0 +1,38 @@ +Force linux-style versioning when generating shared libraries on +Gentoo/FreeBSD hosts only. + +Patch by Diego Elio Pettenò + +http://bugs.gentoo.org/109105 + +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -1375,7 +1375,14 @@ + *) objformat=elf ;; + esac + fi +- version_type=freebsd-$objformat ++ # Handle Gentoo/FreeBSD as it was Linux ++ case $host_vendor in ++ gentoo) ++ version_type=linux ;; ++ *) ++ version_type=freebsd-$objformat ;; ++ esac ++ + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' +@@ -1386,6 +1392,12 @@ + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; ++ linux) ++ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' ++ soname_spec='${libname}${release}${shared_ext}$major' ++ need_lib_prefix=no ++ need_version=no ++ ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in diff --git a/sys-devel/libtool/files/libtool-2.4.6-fuse-ld.patch b/sys-devel/libtool/files/libtool-2.4.6-fuse-ld.patch new file mode 100644 index 0000000..c352d52 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-fuse-ld.patch @@ -0,0 +1,53 @@ +From 2f258b87ce4415edede1b2a84a3a7dbcf44555c2 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vap...@gentoo.org> +Date: Mon, 16 Mar 2015 18:17:31 -0400 +Subject: [PATCH] libtool: pass through -fuse-ld flags + +Starting with gcc-4.8, there's a -fuse-ld flag that can be used to select +between bfd & gold. Make sure we pass it through to the linking stage. + +* build-aux/ltmain.in (func_mode_link): Pass -fuse-ld=* flags through. +--- + build-aux/ltmain.in | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in +index d5cf07a..0fc8279 100644 +--- a/build-aux/ltmain.in ++++ b/build-aux/ltmain.in +@@ -5360,10 +5360,12 @@ func_mode_link () + # -tp=* Portland pgcc target processor selection + # --sysroot=* for sysroot support + # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization ++ # -fuse-ld=* Linker select flags for GCC + # -stdlib=* select c++ std lib with clang + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ + -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ +- -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*) ++ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ ++ -fuse-ld=*) + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + func_append compile_command " $arg" + +patch the generated file too to keep help2man from generating man pages +https://bugs.gentoo.org/556512 + +--- a/build-aux/ltmain.sh ++++ b/build-aux/ltmain.sh +@@ -5360,10 +5360,12 @@ func_mode_link () + # -tp=* Portland pgcc target processor selection + # --sysroot=* for sysroot support + # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization ++ # -fuse-ld=* Linker select flags for GCC + # -stdlib=* select c++ std lib with clang + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ + -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ +- -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*) ++ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ ++ -fuse-ld=*) + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + func_append compile_command " $arg" +-- +2.3.2 diff --git a/sys-devel/libtool/libtool-2.4.2-r1.ebuild b/sys-devel/libtool/libtool-2.4.2-r1.ebuild index 30ef36f..18ea5b3 100644 --- a/sys-devel/libtool/libtool-2.4.2-r1.ebuild +++ b/sys-devel/libtool/libtool-2.4.2-r1.ebuild @@ -18,7 +18,7 @@ else fi DESCRIPTION="A shared library tool for developers" -HOMEPAGE="http://www.gnu.org/software/libtool/" +HOMEPAGE="https://www.gnu.org/software/libtool/" LICENSE="GPL-2" SLOT="2" diff --git a/sys-devel/libtool/libtool-2.4.6-r1.ebuild b/sys-devel/libtool/libtool-2.4.6-r1.ebuild new file mode 100644 index 0000000..b0cb7c6 --- /dev/null +++ b/sys-devel/libtool/libtool-2.4.6-r1.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +LIBTOOLIZE="true" #225559 +WANT_LIBTOOL="none" +inherit eutils autotools multilib unpacker prefix + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="git://git.savannah.gnu.org/${PN}.git + http://git.savannah.gnu.org/r/${PN}.git" + inherit git-2 +else + SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + KEYWORDS="~ppc-aix ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi + +DESCRIPTION="A shared library tool for developers" +HOMEPAGE="https://www.gnu.org/software/libtool/" + +LICENSE="GPL-2" +SLOT="2" +IUSE="vanilla" + +# Pull in libltdl directly until we convert packages to the new dep. +RDEPEND="sys-devel/gnuconfig + >=sys-devel/autoconf-2.69 + >=sys-devel/automake-1.13 + dev-libs/libltdl:0" +DEPEND="${RDEPEND} + app-arch/xz-utils" +[[ ${PV} == "9999" ]] && DEPEND+=" sys-apps/help2man" + +src_unpack() { + if [[ ${PV} == "9999" ]] ; then + git-2_src_unpack + cd "${S}" + ./bootstrap || die + else + unpacker_src_unpack + fi +} + +src_prepare() { + use vanilla && return 0 + + epatch "${FILESDIR}"/2.4/${PN}-2.4.6-mint.patch + epatch "${FILESDIR}"/2.2.6a/${PN}-2.2.6a-darwin-module-bundle.patch + epatch "${FILESDIR}"/2.4/${PN}-2.4.6-darwin-use-linux-version.patch + + # seems that libtool has to know about EPREFIX a little bit better, + # since it fails to find prefix paths to search libs from, resulting in + # some packages building static only, since libtool is fooled into + # thinking that libraries are unavailable (argh...). This could also be + # fixed by making the gcc wrapper return the correct result for + # -print-search-dirs (doesn't include prefix dirs ...). + if use prefix ; then + epatch "${FILESDIR}"/2.2.10/${PN}-2.2.10-eprefix.patch + eprefixify m4/libtool.m4 + fi + + epatch "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch #109105 + epatch "${FILESDIR}"/${P}-fuse-ld.patch + pushd libltdl >/dev/null + AT_NOELIBTOOLIZE=yes eautoreconf + popd >/dev/null + AT_NOELIBTOOLIZE=yes eautoreconf + epunt_cxx + + # Make sure timestamps don't trigger a rebuild of man pages. #556512 + if [[ ${PV} != "9999" ]] ; then + touch doc/*.1 + export HELP2MAN=false + fi +} + +src_configure() { + # the libtool script uses bash code in it and at configure time, tries + # to find a bash shell. if /bin/sh is bash, it uses that. this can + # cause problems for people who switch /bin/sh on the fly to other + # shells, so just force libtool to use /bin/bash all the time. + export CONFIG_SHELL="$(type -P bash)" + + local myconf + [[ ${CHOST} == *-darwin* ]] && myconf="--program-prefix=g" + ECONF_SOURCE=${S} econf ${myconf} --disable-ltdl-install +} + +src_test() { + emake check +} + +src_install() { + default + + local x + while read -d $'\0' -r x ; do + ln -sf "${EPREFIX}"/usr/share/gnuconfig/${x##*/} "${x}" || die + done < <(find "${ED}" '(' -name config.guess -o -name config.sub ')' -print0) +}