kexec-tools: Pass -no-pie to linker

- This matches the linker flags to compiler flags in purgatory
- Compile arm64 without PIC

(From OE-Core rev: 653299d8c31eac6147b8183d9ec7ef82b7202cab)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj
2017-06-12 07:59:06 -07:00
committed by Richard Purdie
parent 98a967d10d
commit 3a61329052
3 changed files with 64 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
From ea7be6d71b85880e8e8a2c8a4f49a696c5f31ae4 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 10 Jun 2017 11:18:49 -0700
Subject: [PATCH] Disable PIE during link
We have explcitly disabled PIE during compile so we
just need to match it with linker flags
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
purgatory/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/purgatory/Makefile b/purgatory/Makefile
index 564bdb7..a08e41f 100644
--- a/purgatory/Makefile
+++ b/purgatory/Makefile
@@ -59,7 +59,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \
-Iinclude \
-I$(shell $(CC) -print-file-name=include)
$(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\
- -Wl,--no-undefined -nostartfiles -nostdlib \
+ -Wl,--no-undefined -no-pie -nostartfiles -nostdlib \
-nodefaultlibs -e purgatory_start -Wl,-r \
-Wl,-Map=$(PURGATORY_MAP)
--
2.13.1

View File

@@ -0,0 +1,31 @@
From 3bb73e5e5649b455e15d5ca3a7ad1a90c4960972 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 10 Jun 2017 11:54:36 -0700
Subject: [PATCH] arm64: Disable PIC
Fix
| cc1: sorry, unimplemented: code model 'large' with -fPIC
| make: *** [Makefile:118: purgatory/arch/arm64/entry.o] Error 1
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Upstream-Status: Pending
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.13.1

View File

@@ -19,6 +19,8 @@ SRC_URI += "${KERNELORG_MIRROR}/linux/utils/kernel/kexec/kexec-tools-${PV}.tar.g
file://0001-x86-x86_64-Fix-format-warning-with-die.patch \
file://0002-ppc-Fix-format-warning-with-die.patch \
file://kexec-x32.patch \
file://0001-Disable-PIE-during-link.patch \
file://0001-arm64-Disable-PIC.patch \
"
SRC_URI[md5sum] = "b2b2c5e6b29d467d6e99d587fb6b7cf5"