dev-libs/libbsd: fix ELF machine type for 32 bit sparc
authorRolf Eike Beer <eike@sf-mail.de>
Tue, 13 Mar 2018 15:44:01 +0000 (16:44 +0100)
committerSergei Trofimovich <slyfox@gentoo.org>
Wed, 21 Mar 2018 22:07:43 +0000 (22:07 +0000)
Bug: https://bugs.gentoo.org/634550
Package-Manager: Portage-2.3.24, Repoman-2.3.6
RepoMan-Options: --include-arches="sparc"
Closes: https://github.com/gentoo/gentoo/pull/7446

dev-libs/libbsd/files/libbsd-0.8.6-sparc.patch [new file with mode: 0644]
dev-libs/libbsd/libbsd-0.8.6.ebuild
dev-libs/libbsd/libbsd-0.8.7.ebuild

diff --git a/dev-libs/libbsd/files/libbsd-0.8.6-sparc.patch b/dev-libs/libbsd/files/libbsd-0.8.6-sparc.patch
new file mode 100644 (file)
index 0000000..d2c35d8
--- /dev/null
@@ -0,0 +1,32 @@
+From 0b65d43963fc1bea195e94e3af922a7893bf6fcd Mon Sep 17 00:00:00 2001
+From: James Clarke <jrtc27@jrtc27.com>
+Date: Sun, 4 Mar 2018 23:44:52 +0100
+Subject: Add support for ELF machine EM_SPARC32PLUS
+
+32-bit SPARC on V8+ uses a different ELF machine type.
+
+Fixes: https://bugs.gentoo.org/634550
+Signed-off-by: Guillem Jover <guillem@hadrons.org>
+---
+ src/local-elf.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/local-elf.h b/src/local-elf.h
+index 1faf182..f7cbd83 100644
+--- a/src/local-elf.h
++++ b/src/local-elf.h
+@@ -186,7 +186,11 @@
+ #define ELF_TARG_MACH EM_SPARCV9
+ #define ELF_TARG_CLASS        ELFCLASS64
+ #else
++#if defined(__sparc_v9__)
++#define ELF_TARG_MACH EM_SPARC32PLUS
++#else
+ #define ELF_TARG_MACH EM_SPARC
++#endif
+ #define ELF_TARG_CLASS        ELFCLASS32
+ #endif
+ #define ELF_TARG_DATA ELFDATA2MSB
+-- 
+cgit v1.1
+
index ab9fdb3b03f992e1a8a5d72b06a2cf2af0d041cb..bfc008979c3e9bf3d4fd879b4fca043e19921562 100644 (file)
@@ -16,6 +16,10 @@ IUSE="static-libs"
 DEPEND=">=sys-kernel/linux-headers-3.17"
 RDEPEND=""
 
+PATCHES=(
+       "${FILESDIR}/${PN}-0.8.6-sparc.patch"
+)
+
 pkg_setup() {
        local f="${EROOT}/usr/$(get_libdir)/${PN}.a"
        local m="You need to remove ${f} by hand or re-emerge sys-libs/glibc first."
index bde7f808bf8bfa66cf32d63efeb130ef16a5596b..8ce1c8916cbe9db3cde377564992f28c85a4b795 100644 (file)
@@ -16,6 +16,10 @@ IUSE="static-libs"
 DEPEND=">=sys-kernel/linux-headers-3.17"
 RDEPEND=""
 
+PATCHES=(
+       "${FILESDIR}/${PN}-0.8.6-sparc.patch"
+)
+
 pkg_setup() {
        local f="${EROOT}/usr/$(get_libdir)/${PN}.a"
        local m="You need to remove ${f} by hand or re-emerge sys-libs/glibc first."