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)
+}

Reply via email to