mirror of
https://git.yoctoproject.org/poky
synced 2026-02-24 18:39:40 +01:00
Details of changelog [1] Removing bfd/ld patch to enable PE targets, instead use specific emulations via --enable-targets for x86_64 Re-arrange/forward-port patches and upgrade libctf configure to libtool 2.4 patch rpaths are no longer emitted into elfedit/readelf therefore no need of chrpath anymore Instead of pre-generating configure scripts and house them in libtool patch, generate them during configure. This also ensures that we do not patch configure directly but rather the sources which generate it Package newly added libctf library [1] https://lists.gnu.org/archive/html/info-gnu/2020-02/msg00000.html (From OE-Core rev: 82f7d5cfc2ab02f39b69c0f8697d660936422d4a) Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
60 lines
2.2 KiB
Diff
60 lines
2.2 KiB
Diff
From b05f0be13aadf0b26a0b39dfe7daf2c47a300338 Mon Sep 17 00:00:00 2001
|
|
From: Khem Raj <raj.khem@gmail.com>
|
|
Date: Mon, 2 Mar 2015 01:58:54 +0000
|
|
Subject: [PATCH] binutils-crosssdk: Generate relocatable SDKs
|
|
|
|
This patch will modify the ELF linker scripts so that the crosssdk
|
|
linker will generate binaries with a 4096 bytes PT_INTERP section. When the binaries
|
|
will be relocated, at SDK install time, the interpreter path can be easily
|
|
changed by the relocating script.
|
|
|
|
Upstream-Status: Inappropriate [SDK specific]
|
|
|
|
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
---
|
|
ld/genscripts.sh | 3 +++
|
|
ld/scripttempl/elf.sc | 4 ++--
|
|
2 files changed, 5 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/ld/genscripts.sh b/ld/genscripts.sh
|
|
index 03392d265c..435689ea14 100755
|
|
--- a/ld/genscripts.sh
|
|
+++ b/ld/genscripts.sh
|
|
@@ -304,6 +304,7 @@ DATA_ALIGNMENT_u="${DATA_ALIGNMENT_u-${DATA_ALIGNMENT_r}}"
|
|
LD_FLAG=r
|
|
DATA_ALIGNMENT=${DATA_ALIGNMENT_r}
|
|
DEFAULT_DATA_ALIGNMENT="ALIGN(${SEGMENT_SIZE})"
|
|
+PARTIAL_LINKING=" "
|
|
( echo "/* Script for -r */"
|
|
source_sh ${CUSTOMIZER_SCRIPT}
|
|
source_sh ${srcdir}/scripttempl/${SCRIPT_NAME}.sc
|
|
@@ -312,10 +313,12 @@ DEFAULT_DATA_ALIGNMENT="ALIGN(${SEGMENT_SIZE})"
|
|
LD_FLAG=u
|
|
DATA_ALIGNMENT=${DATA_ALIGNMENT_u}
|
|
CONSTRUCTING=" "
|
|
+PARTIAL_LINKING=" "
|
|
( echo "/* Script for -Ur */"
|
|
source_sh ${CUSTOMIZER_SCRIPT}
|
|
source_sh ${srcdir}/scripttempl/${SCRIPT_NAME}.sc
|
|
) | sed -e '/^ *$/d;s/[ ]*$//' > ldscripts/${EMULATION_NAME}.xu
|
|
+unset PARTIAL_LINKING
|
|
|
|
DATA_ALIGNMENT=${DATA_ALIGNMENT_}
|
|
RELOCATING=" "
|
|
diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc
|
|
index 0b8b32a440..ee6b71075d 100644
|
|
--- a/ld/scripttempl/elf.sc
|
|
+++ b/ld/scripttempl/elf.sc
|
|
@@ -140,8 +140,8 @@ if test -z "$DATA_SEGMENT_ALIGN"; then
|
|
DATA_SEGMENT_RELRO_END=". = DATA_SEGMENT_RELRO_END (${SEPARATE_GOTPLT-0}, .);"
|
|
fi
|
|
fi
|
|
-if test -z "${INITIAL_READONLY_SECTIONS}${CREATE_SHLIB}"; then
|
|
- INITIAL_READONLY_SECTIONS=".interp ${RELOCATING-0} : { *(.interp) }"
|
|
+if test -z "${INITIAL_READONLY_SECTIONS}${CREATE_SHLIB}${PARTIAL_LINKING}"; then
|
|
+ INITIAL_READONLY_SECTIONS=".interp ${RELOCATING-0} : { *(.interp); . = 0x1000; }"
|
|
fi
|
|
if test -z "$PLT"; then
|
|
IPLT=".iplt ${RELOCATING-0} : { *(.iplt) }"
|