diff options
author | Georgy Yakovlev <gyakovlev@gentoo.org> | 2020-09-06 20:14:36 -0700 |
---|---|---|
committer | Georgy Yakovlev <gyakovlev@gentoo.org> | 2020-09-06 21:04:24 -0700 |
commit | 180d1e95aaa2e831bd2480b73af927a1632a9817 (patch) | |
tree | 42b10525c071b0e0e0a00b566ca3f3a1ab274305 /sys-fs | |
parent | dev-libs/libressl: ppc64 stable (bug #740194) (diff) | |
download | gentoo-180d1e95aaa2e831bd2480b73af927a1632a9817.tar.gz gentoo-180d1e95aaa2e831bd2480b73af927a1632a9817.tar.bz2 gentoo-180d1e95aaa2e831bd2480b73af927a1632a9817.zip |
sys-fs/zfs-kmod: add powerpc setjmp/longjmp patch to 0.8.4
kernel-builtin build fails with
powerpc64le-unknown-linux-gnu-ld.bfd: fs/zfs/lua/setjmp/setjmp.o: in
function `setjmp':
(.text+0x0): multiple definition of `setjmp';
arch/powerpc/kernel/misc.o:(.text+0x30): first defined here
powerpc64le-unknown-linux-gnu-ld.bfd: fs/zfs/lua/setjmp/setjmp.o: in
function `longjmp':
(.text+0x78): multiple definition of `longjmp';
arch/powerpc/kernel/misc.o:(.text+0x9c): first defined here
Package-Manager: Portage-3.0.5, Repoman-3.0.1
Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
Diffstat (limited to 'sys-fs')
-rw-r--r-- | sys-fs/zfs-kmod/files/0.8.4-powerpc_jmp_weak.patch | 48 | ||||
-rw-r--r-- | sys-fs/zfs-kmod/zfs-kmod-0.8.4-r1.ebuild | 2 |
2 files changed, 50 insertions, 0 deletions
diff --git a/sys-fs/zfs-kmod/files/0.8.4-powerpc_jmp_weak.patch b/sys-fs/zfs-kmod/files/0.8.4-powerpc_jmp_weak.patch new file mode 100644 index 000000000000..1a2948a3158c --- /dev/null +++ b/sys-fs/zfs-kmod/files/0.8.4-powerpc_jmp_weak.patch @@ -0,0 +1,48 @@ +From bd0efd1f062bfba5dd2d6b1fe30b6949f8e0a8ef Mon Sep 17 00:00:00 2001 +From: sterlingjensen <5555776+sterlingjensen@users.noreply.github.com> +Date: Mon, 24 Aug 2020 22:41:05 -0500 +Subject: [PATCH] Mark lua setjmp/longjmp for powerpc weak + +Linux already defines setjmp/longjmp for powerpc, which leads to +duplicate symbols in a statically linked build. + +Signed-off-by: Sterlng Jensen <sterlingjensen@users.noreply.github.com> +--- + module/lua/setjmp/setjmp_ppc.S | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/module/lua/setjmp/setjmp_ppc.S b/module/lua/setjmp/setjmp_ppc.S +index f787ef34913..72aa5d5ab5b 100644 +--- a/module/lua/setjmp/setjmp_ppc.S ++++ b/module/lua/setjmp/setjmp_ppc.S +@@ -56,7 +56,7 @@ + #define ENTRY(name) \ + .align 2 ; \ + .type name,@function; \ +- .globl name; \ ++ .weak name; \ + name: + + #else /* PPC64_ELF_ABI_v1 */ +@@ -65,8 +65,8 @@ name: + #define GLUE(a,b) XGLUE(a,b) + #define ENTRY(name) \ + .align 2 ; \ +- .globl name; \ +- .globl GLUE(.,name); \ ++ .weak name; \ ++ .weak GLUE(.,name); \ + .pushsection ".opd","aw"; \ + name: \ + .quad GLUE(.,name); \ +@@ -83,8 +83,8 @@ GLUE(.,name): + #define ENTRY(name) \ + .text; \ + .p2align 4; \ +- .globl name; \ +- .type name,@function; \ ++ .weak name; \ ++ .type name,@function; \ + name: + + #endif /* __powerpc64__ */ diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.8.4-r1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.8.4-r1.ebuild index 59ea52ab658b..2276604b161c 100644 --- a/sys-fs/zfs-kmod/zfs-kmod-0.8.4-r1.ebuild +++ b/sys-fs/zfs-kmod/zfs-kmod-0.8.4-r1.ebuild @@ -37,6 +37,8 @@ RESTRICT="debug? ( strip ) test" DOCS=( AUTHORS COPYRIGHT META README.md ) +PATCHES=( "${FILESDIR}/${PV}-powerpc_jmp_weak.patch" ) + pkg_setup() { CONFIG_CHECK=" !DEBUG_LOCK_ALLOC |