From 725a7a4dc70520358542932d152af6cd355f2a7e Mon Sep 17 00:00:00 2001 From: Steve Arnold Date: Mon, 20 Nov 2017 00:16:19 -0800 Subject: armv8multi-sources: add ARM64-VDSO-fix-makefile-with-gold patch Signed-off-by: Steve Arnold --- sys-kernel/armv8multi-sources/Manifest | 2 - .../armv8multi-sources-4.13.12-r0.ebuild | 4 +- ...-fix-makefile-with-gold-linker-as-default.patch | 47 ++++++++++++++++++++++ 3 files changed, 49 insertions(+), 4 deletions(-) create mode 100644 sys-kernel/armv8multi-sources/files/0015-ARM64-VDSO-fix-makefile-with-gold-linker-as-default.patch diff --git a/sys-kernel/armv8multi-sources/Manifest b/sys-kernel/armv8multi-sources/Manifest index 8ed7ee7..ae38ab8 100644 --- a/sys-kernel/armv8multi-sources/Manifest +++ b/sys-kernel/armv8multi-sources/Manifest @@ -1,4 +1,2 @@ DIST genpatches-4.13-14.base.tar.xz 243120 SHA256 7ab50617a0dd9661b8e23db22d3be8d20c39715b9dee8b2ab7b9a19ecca2b1fb SHA512 c885d59f4d301b1ef71d40e3b35758914b669e25a15a64826454b3f46f5b45a49850971ddf11cd1d5db41d1c0fc5d814158dd02f14d9eb0c97af208865c44dd2 WHIRLPOOL 36f0972a3ff9f58100603faf6a7086e03a32cfdef42d903df5e202734c0d56eace42d7c1242712e764aa5b87f1eb9fe1c78070a05cff6eafc2150d05f35ffde2 -DIST genpatches-4.13-14.experimental.tar.xz 5184 SHA256 6734f0f0fdf33b648f7af28252e17b72e9345a483ef0714fa45e192cb33e2b7c SHA512 c220d229f4dffaf7bf09b9d4cb1a73d61b7646191d715098e5eb51808c66d38827729edcc9999f1252d7b1bfaaed7d2d2566add7b6cbadad1db246379334dee1 WHIRLPOOL 307fe32b1492096547eca0af6de818d81724ee58f2594d4c537b1a6bf797ef45b96a51a25b5e92d279e78398f5104bb28bb20a2c2980bab779e5f292017de246 -DIST genpatches-4.13-14.extras.tar.xz 17396 SHA256 dc3c9d2b5c8c5f95af5e3da9463e0fc3d9c83b8c40d992f6381ac3d4523d0287 SHA512 67a4cf48502378663c5277e5d6c2d98d195d7f7b3a7fe0e79a5118c7e910e19c9882807cd7d80f73c08f28d702b83e4af9248597af751dc3cf923eee40a5c0ab WHIRLPOOL 8aa276bb0617a876fea012e15ee8e1877ae6921b386e846c60881410ff565960e9c5b82e88e62e39c85439a79bf1561e2834912358f754a274870e224381ce8d DIST linux-4.13.tar.xz 100579888 SHA256 2db3d6066c3ad93eb25b973a3d2951e022a7e975ee2fa7cbe5bddf84d9a49a2c SHA512 a557c2f0303ae618910b7106ff63d9978afddf470f03cb72aa748213e099a0ecd5f3119aea6cbd7b61df30ca6ef3ec57044d524b7babbaabddf8b08b8bafa7d2 WHIRLPOOL d3d332e02cd3c5056c76c28cf1f81504c6f7b8f2caed7238e7dd7866747fb03154b88d8d7aec4d0eddf5760624bc7d6c5485fb52a3e32d098a2742eba96c0d05 diff --git a/sys-kernel/armv8multi-sources/armv8multi-sources-4.13.12-r0.ebuild b/sys-kernel/armv8multi-sources/armv8multi-sources-4.13.12-r0.ebuild index 10e6965..509a81e 100644 --- a/sys-kernel/armv8multi-sources/armv8multi-sources-4.13.12-r0.ebuild +++ b/sys-kernel/armv8multi-sources/armv8multi-sources-4.13.12-r0.ebuild @@ -7,7 +7,7 @@ EAPI="6" ETYPE="sources" K_DEFCONFIG="espressobin_defconfig" UNIPATCH_STRICTORDER="1" -K_WANT_GENPATCHES="base extras experimental" +K_WANT_GENPATCHES="base" K_GENPATCHES_VER="14" K_DEBLOB_AVAILABLE="0" K_KDBUS_AVAILABLE="1" @@ -31,7 +31,7 @@ SRC_URI=" ${ARCH_URI} ${GENPATCHES_URI}" -IUSE="experimental mvebu64" +IUSE="mvebu64" K_EXTRAELOG="This is the bleeding-edge patch set on full gentoo-sources kernel with patches for Marvell espressobin and a few others, and intended diff --git a/sys-kernel/armv8multi-sources/files/0015-ARM64-VDSO-fix-makefile-with-gold-linker-as-default.patch b/sys-kernel/armv8multi-sources/files/0015-ARM64-VDSO-fix-makefile-with-gold-linker-as-default.patch new file mode 100644 index 0000000..6076288 --- /dev/null +++ b/sys-kernel/armv8multi-sources/files/0015-ARM64-VDSO-fix-makefile-with-gold-linker-as-default.patch @@ -0,0 +1,47 @@ +From 87b70a52412f3e1dcb25b04b9e4e6ee35ba23873 Mon Sep 17 00:00:00 2001 +From: Steve Arnold +Date: Mon, 20 Nov 2017 00:14:02 -0800 +Subject: [PATCH] ARM64: VDSO: fix makefile with gold linker as default + +* otherwise vdso link fails with mismatched shared/static flags + +Signed-off-by: Steve Arnold +--- + arch/arm64/kernel/vdso/Makefile | 14 ++++++++++---- + 1 file changed, 10 insertions(+), 4 deletions(-) + +diff --git a/arch/arm64/kernel/vdso/Makefile b/arch/arm64/kernel/vdso/Makefile +index 62c84f7cb01b..aa69bab57f4d 100644 +--- a/arch/arm64/kernel/vdso/Makefile ++++ b/arch/arm64/kernel/vdso/Makefile +@@ -11,9 +11,13 @@ obj-vdso := gettimeofday.o note.o sigreturn.o + targets := $(obj-vdso) vdso.so vdso.so.dbg + obj-vdso := $(addprefix $(obj)/, $(obj-vdso)) + +-ccflags-y := -shared -fno-common -fno-builtin +-ccflags-y += -nostdlib -Wl,-soname=linux-vdso.so.1 \ +- $(call cc-ldoption, -Wl$(comma)--hash-style=sysv) ++ccflags-y := -fPIC -fno-common -fno-builtin -fno-stack-protector ++ ++VDSO_LDFLAGS := -Wl,-Bsymbolic -Wl,--no-undefined -Wl,-soname=linux-vdso.so.1 ++VDSO_LDFLAGS += -nostdlib -shared ++VDSO_LDFLAGS += $(call cc-ldoption, -Wl$(comma)--hash-style=sysv) ++VDSO_LDFLAGS += $(call cc-ldoption, -Wl$(comma)--build-id) ++VDSO_LDFLAGS += $(call cc-ldoption, -fuse-ld=bfd) + + # Disable gcov profiling for VDSO code + GCOV_PROFILE := n +@@ -54,7 +58,9 @@ $(obj-vdso): %.o: %.S FORCE + + # Actual build commands + quiet_cmd_vdsold = VDSOL $@ +- cmd_vdsold = $(CC) $(c_flags) -Wl,-n -Wl,-T $^ -o $@ ++ cmd_vdsold = $(CC) $(c_flags) $(VDSO_LDFLAGS) \ ++ -Wl,-n -Wl,-T $^ -o $@ ++ + quiet_cmd_vdsoas = VDSOA $@ + cmd_vdsoas = $(CC) $(a_flags) -c -o $@ $< + +-- +2.15.0 + -- cgit v1.2.3-65-gdbad