kexec-tools: Set -fno-PIC on aarch64

As seen in GCC's gcc/config/aarch64/aarch64.c, -fPIC with large
code model is unsupported.  This fixes the "sorry, unimplemented"
errors when building with compilers defaulting to -fPIC.

(From OE-Core rev: d0971200ffe226ade76273ff73be4fa5511a2baa)

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Mingli Yu
2018-05-09 23:20:04 -07:00
committed by Richard Purdie
parent a1dda84fe8
commit 246b1de954
2 changed files with 34 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
From a12dfe9be05f9dee96c7637a20c01e05711c563c Mon Sep 17 00:00:00 2001
From: David Michael <david.michael@coreos.com>
Date: Sun, 7 Jan 11:26:57 2018 -0500
Subject: [PATCH] arm64: Set -fno-PIC along with -mcmodel=large
As seen in GCC's gcc/config/aarch64/aarch64.c, -fPIC with large
code model is unsupported. This fixes the "sorry, unimplemented"
errors when building with compilers defaulting to -fPIC.
Upstream-Status: Backport
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: David Michael <david.michael@coreos.com>
Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
---
purgatory/arch/arm64/Makefile | 1 +
1 file changed, 1 insertion(+)
diff --git a/purgatory/arch/arm64/Makefile b/purgatory/arch/arm64/Makefile
index 636abea..80068ca 100644
--- a/purgatory/arch/arm64/Makefile
+++ b/purgatory/arch/arm64/Makefile
@@ -1,6 +1,7 @@
arm64_PURGATORY_EXTRA_CFLAGS = \
-mcmodel=large \
+ -fno-PIC \
-fno-stack-protector \
-fno-asynchronous-unwind-tables \
-Wundef \
--
2.7.4

View File

@@ -20,6 +20,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/kexec/kexec-tools-${PV}.tar.gz
file://0010-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch \
file://kexec-x32.patch \
file://0001-Disable-PIE-during-link.patch \
file://0001-arm64-Set-fno-PIC-along-with-mcmodel-large.patch \
"
SRC_URI[md5sum] = "5198968de79b5ded96f97f3c2ea9637b"