* [gentoo-commits] repo/gentoo:master commit in: eclass/, eclass/ELT-patches/ppc64le/
@ 2017-02-21 22:51 Mike Frysinger
0 siblings, 0 replies; only message in thread
From: Mike Frysinger @ 2017-02-21 22:51 UTC (permalink / raw
To: gentoo-commits
commit: 9beda193cf71f2ca84aef6797d77e8ed6e8c16eb
Author: Leno Hou <lenohou <AT> gmail <DOT> com>
AuthorDate: Sat Apr 23 18:15:05 2016 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Tue Feb 21 22:50:47 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9beda193
libtool.eclass: elibtoolize: add ppc64le handling #580792
1) We faced unable read SONAME from ${lib} when emerge below packages
platform pacakge elibtoolized
ppc64le app-text/opensp no
ppc64le dev-libs/expat yes
ppc64le net-firewall/iptables yes
ppc64le net-libs/libmnl no
ppc64le sys-apps/acl yes
ppc64le sys-apps/attr yes
ppc64le sys-libs/gdbm yes
ppc64le sys-process/procps no
2) The problem is due to the wrong $LD="ld -m elf64ppc" when link.
This patch sets $LD="ld -m elf64lppc" in m4/libtool.m4 on ppc64le.
URL: https://debbugs.gnu.org/23348
eclass/ELT-patches/ppc64le/2.4.2 | 32 ++++++++++++++++++++++++++++++++
eclass/ELT-patches/ppc64le/2.4.4 | 21 +++++++++++++++++++++
eclass/libtool.eclass | 6 +++++-
3 files changed, 58 insertions(+), 1 deletion(-)
diff --git a/eclass/ELT-patches/ppc64le/2.4.2 b/eclass/ELT-patches/ppc64le/2.4.2
new file mode 100644
index 0000000000..8d3b116a3d
--- /dev/null
+++ b/eclass/ELT-patches/ppc64le/2.4.2
@@ -0,0 +1,32 @@
+https://bugs.gentoo.org/580792
+https://bugs.gentoo.org/581314
+https://debbugs.gnu.org/23348
+
+this adds support for ppc64le to older versions. most of this is upstream already.
+
+--- a/m4/libtool.m4
++++ b/m4/libtool.m4
+@@ -1329,6 +1329,9 @@
+ ppc64-*linux*|powerpc64-*linux*)
+ LD="${LD-ld} -m elf32ppclinux"
+ ;;
++ ppc64le-*linux*|powerpc64le-*linux*)
++ LD="${LD-ld} -m elf32lppclinux"
++ ;;
+ s390x-*linux*)
+ LD="${LD-ld} -m elf_s390"
+ ;;
+@@ -1345,9 +1348,12 @@
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_x86_64"
+ ;;
+- ppc*-*linux*|powerpc*-*linux*)
++ powerpc-*linux*|powerpc64-*linux*)
+ LD="${LD-ld} -m elf64ppc"
+ ;;
++ powerpcle-*linux*|powerpc64le-*linux*)
++ LD="${LD-ld} -m elf64lppc"
++ ;;
+ s390*-*linux*|s390*-*tpf*)
+ LD="${LD-ld} -m elf64_s390"
+ ;;
diff --git a/eclass/ELT-patches/ppc64le/2.4.4 b/eclass/ELT-patches/ppc64le/2.4.4
new file mode 100644
index 0000000000..0d86521653
--- /dev/null
+++ b/eclass/ELT-patches/ppc64le/2.4.4
@@ -0,0 +1,21 @@
+https://bugs.gentoo.org/580792
+https://bugs.gentoo.org/581314
+https://debbugs.gnu.org/23348
+
+this fixes ppc64le handling in newer libtool versions
+
+--- a/m4/libtool.m4
++++ b/m4/libtool.m4
+@@ -1386,10 +1386,10 @@
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_x86_64"
+ ;;
+- powerpcle-*linux*)
++ powerpcle-*linux*|powerpc64le-*linux*)
+ LD="${LD-ld} -m elf64lppc"
+ ;;
+- powerpc-*linux*)
++ powerpc-*linux*|powerpc64-*linux*)
+ LD="${LD-ld} -m elf64ppc"
+ ;;
+ s390*-*linux*|s390*-*tpf*)
diff --git a/eclass/libtool.eclass b/eclass/libtool.eclass
index 47ef8128de..9f56c202ff 100644
--- a/eclass/libtool.eclass
+++ b/eclass/libtool.eclass
@@ -144,7 +144,7 @@ elibtoolize() {
local deptoremove=
local do_shallow="no"
local force="false"
- local elt_patches="install-sh ltmain portage relink max_cmd_len sed test tmp cross as-needed target-nm"
+ local elt_patches="install-sh ltmain portage relink max_cmd_len sed test tmp cross as-needed target-nm ppc64le"
for x in "$@" ; do
case ${x} in
@@ -417,6 +417,10 @@ elibtoolize() {
ELT_walk_patches "${d}/configure" "${p}"
ret=$?
;;
+ ppc64le)
+ ELT_walk_patches "${d}/configure" "${p}"
+ ret=$?
+ ;;
*)
# ltmain.sh patches are applied above
;;
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2017-02-21 22:51 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-21 22:51 [gentoo-commits] repo/gentoo:master commit in: eclass/, eclass/ELT-patches/ppc64le/ Mike Frysinger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox