commit:     5690e822e589b92b4225c8c8b671ff8db5faf605
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 26 08:37:26 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Mar 26 08:38:31 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5690e822

sys-devel/libtool: Revbump to add pthread patch.

Bug: https://bugs.gentoo.org/650876
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 .../files/libtool-2.4.6-libtoolize-slow.patch      |  6 +--
 .../libtool/files/libtool-2.4.6-pthread.patch      | 43 ++++++++++++++++++++++
 .../files/libtool-2.4.6-pthread_bootstrapped.patch | 21 +++++++++++
 ...libtool-9999.ebuild => libtool-2.4.6-r5.ebuild} | 16 +++++++-
 sys-devel/libtool/libtool-9999.ebuild              |  5 +++
 5 files changed, 87 insertions(+), 4 deletions(-)

diff --git a/sys-devel/libtool/files/libtool-2.4.6-libtoolize-slow.patch 
b/sys-devel/libtool/files/libtool-2.4.6-libtoolize-slow.patch
index abddee13dc3..d27f976ccb4 100644
--- a/sys-devel/libtool/files/libtool-2.4.6-libtoolize-slow.patch
+++ b/sys-devel/libtool/files/libtool-2.4.6-libtoolize-slow.patch
@@ -37,13 +37,13 @@ Signed-off-by: Pavel Raiskup <[email protected]>
  NEWS                       |  4 ++++
  NO-THANKS                  |  1 +
  bootstrap                  | 42 +++++++++++++++++++++++++++---------------
- gl/build-aux/extract-trace | 42 +++++++++++++++++++++++++++---------------
+ build-aux/extract-trace    | 42 +++++++++++++++++++++++++++---------------
  4 files changed, 59 insertions(+), 30 deletions(-)
 
 diff --git a/gl/build-aux/extract-trace b/gl/build-aux/extract-trace
 index 315a32a..c6abd21 100755
---- a/gl/build-aux/extract-trace
-+++ b/gl/build-aux/extract-trace
+--- a/build-aux/extract-trace
++++ b/build-aux/extract-trace
 @@ -329,29 +329,41 @@ func_extract_trace ()
      # arguments to Autocof functions, but without following
      # 'm4_s?include' files.

diff --git a/sys-devel/libtool/files/libtool-2.4.6-pthread.patch 
b/sys-devel/libtool/files/libtool-2.4.6-pthread.patch
new file mode 100644
index 00000000000..49b81c1dcda
--- /dev/null
+++ b/sys-devel/libtool/files/libtool-2.4.6-pthread.patch
@@ -0,0 +1,43 @@
+http://permalink.gmane.org/gmane.comp.gnu.libtool.patches/11704
+https://bugs.gentoo.org/650876
+
+From: Pavel Raiskup <praiskup <at> redhat.com>
+Subject: [PATCH] libtool: handle the -pthread{,s} options for g++
+Newsgroups: gmane.comp.gnu.libtool.patches
+Date: Thursday 28th November 2013 14:18:05 UTC (over 4 years ago)
+
+As we are forced to pass -nostdlib to g++ for linking, this option
+expectedly disables the effectiveness of passed -pthread flag - so
+add the -lpthread explicitly to $deplibs to link correctly.
+
+References:
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25460
+https://bugzilla.redhat.com/show_bug.cgi?id=661333
+http://lists.gnu.org/archive/html/bug-libtool/2013-01/msg00018.htm
+
+* build-aux/ltmain.in (func_mode_link): Explicitly add -lpthread
+flag into $deplibs when -pthread is passed (for g++ only).
+---
+ build-aux/ltmain.in | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
+index fba05c1..f202b80 100644
+--- a/build-aux/ltmain.in
++++ b/build-aux/ltmain.in
+@@ -5113,6 +5113,16 @@ func_mode_link ()
+           *" $arg "*) ;;
+           * ) func_append new_inherited_linker_flags " $arg" ;;
+       esac
++
++      # As we are forced to pass -nostdlib to g++ during linking, the option
++      # -pthread{,s} is not in effect;  add the -lpthread to $deplist
++      # explicitly to link correctly.
++      if test "$tagname" = CXX -a x"$with_gcc" = xyes; then
++        case "$arg" in
++          -pthread*) func_append deplibs " -lpthread" ;;
++        esac
++      fi
++
+       continue
+       ;;

diff --git a/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch 
b/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch
new file mode 100644
index 00000000000..54461ccc54e
--- /dev/null
+++ b/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch
@@ -0,0 +1,21 @@
+https://bugs.gentoo.org/650876
+
+--- libtool-2.4.6/build-aux/ltmain.sh
++++ libtool-2.4.6/build-aux/ltmain.sh
+@@ -7079,6 +7079,16 @@
+           *" $arg "*) ;;
+           * ) func_append new_inherited_linker_flags " $arg" ;;
+       esac
++
++      # As we are forced to pass -nostdlib to g++ during linking, the option
++      # -pthread{,s} is not in effect;  add the -lpthread to $deplist
++      # explicitly to link correctly.
++      if test "$tagname" = CXX -a x"$with_gcc" = xyes; then
++        case "$arg" in
++          -pthread*) func_append deplibs " -lpthread" ;;
++        esac
++      fi
++
+       continue
+       ;;
+ 

diff --git a/sys-devel/libtool/libtool-9999.ebuild 
b/sys-devel/libtool/libtool-2.4.6-r5.ebuild
similarity index 86%
copy from sys-devel/libtool/libtool-9999.ebuild
copy to sys-devel/libtool/libtool-2.4.6-r5.ebuild
index db8bd168cfd..710968a99a5 100644
--- a/sys-devel/libtool/libtool-9999.ebuild
+++ b/sys-devel/libtool/libtool-2.4.6-r5.ebuild
@@ -5,7 +5,7 @@ EAPI=6
 
 LIBTOOLIZE="true" #225559
 WANT_LIBTOOL="none"
-inherit autotools epunt-cxx multilib unpacker prefix
+inherit autotools epatch epunt-cxx multilib unpacker prefix
 
 if [[ ${PV} == "9999" ]] ; then
        EGIT_REPO_URI="git://git.savannah.gnu.org/${PN}.git
@@ -35,6 +35,14 @@ DEPEND="${RDEPEND}
 
 PATCHES=(
        "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch #109105
+       "${FILESDIR}"/${P}-link-specs.patch
+       "${FILESDIR}"/${P}-link-fsanitize.patch #573744
+       "${FILESDIR}"/${P}-link-fuse-ld.patch
+       "${FILESDIR}"/${P}-libtoolize-slow.patch
+       "${FILESDIR}"/${P}-libtoolize-delay-help.patch
+       "${FILESDIR}"/${P}-sed-quote-speedup.patch #542252
+       "${FILESDIR}"/${P}-ppc64le.patch #581314
+
        "${FILESDIR}"/${PN}-2.4.6-mint.patch
        "${FILESDIR}"/${PN}-2.2.6a-darwin-module-bundle.patch
        "${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch
@@ -50,7 +58,12 @@ src_unpack() {
 
 src_prepare() {
        if [[ "${PV}" = 9999 ]] ; then
+               eapply "${FILESDIR}"/${P}-pthread.patch #650876
                ./bootstrap || die
+       else
+               PATCHES+=(
+                       "${FILESDIR}"/${P}-pthread_bootstrapped.patch #650876
+               )
        fi
 
        use vanilla && return 0
@@ -68,6 +81,7 @@ src_prepare() {
                eapply "${FILESDIR}"/${PN}-2.2.10-eprefix.patch
                eprefixify m4/libtool.m4
        fi
+
        pushd libltdl >/dev/null
        AT_NOELIBTOOLIZE=yes eautoreconf
        popd >/dev/null

diff --git a/sys-devel/libtool/libtool-9999.ebuild 
b/sys-devel/libtool/libtool-9999.ebuild
index db8bd168cfd..140bf7a5cb4 100644
--- a/sys-devel/libtool/libtool-9999.ebuild
+++ b/sys-devel/libtool/libtool-9999.ebuild
@@ -50,7 +50,12 @@ src_unpack() {
 
 src_prepare() {
        if [[ "${PV}" = 9999 ]] ; then
+               eapply "${FILESDIR}"/${PN}-2.4.6-pthread.patch #650876
                ./bootstrap || die
+       else
+               PATCHES+=(
+                       "${FILESDIR}"/${P}-pthread_bootstrapped.patch #650876
+               )
        fi
 
        use vanilla && return 0

Reply via email to