diff options
Diffstat (limited to 'recipes-security/optee/optee-os/0002-link.mk-implement-support-for-libnames-after-libgcc-.patch')
-rw-r--r-- | recipes-security/optee/optee-os/0002-link.mk-implement-support-for-libnames-after-libgcc-.patch | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/recipes-security/optee/optee-os/0002-link.mk-implement-support-for-libnames-after-libgcc-.patch b/recipes-security/optee/optee-os/0002-link.mk-implement-support-for-libnames-after-libgcc-.patch deleted file mode 100644 index 11296c8c..00000000 --- a/recipes-security/optee/optee-os/0002-link.mk-implement-support-for-libnames-after-libgcc-.patch +++ /dev/null | |||
@@ -1,55 +0,0 @@ | |||
1 | Upstream-Status: Backport | ||
2 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
3 | |||
4 | From 73196b58ea6978ffa5e581738030f51c5789ef73 Mon Sep 17 00:00:00 2001 | ||
5 | From: Volodymyr Babchuk <volodymyr_babchuk@epam.com> | ||
6 | Date: Tue, 13 Oct 2020 22:54:13 +0300 | ||
7 | Subject: [PATCH 2/3] link.mk: implement support for libnames-after-libgcc | ||
8 | variable | ||
9 | |||
10 | Newer versions of libgcc depend on external __getauxval() symbol, which is | ||
11 | now provided by libutils. But libgcc is linked after libutils, so linker | ||
12 | can't resolve that symbol. We can't include libgcc into linking group with | ||
13 | libtutils, because libgcc provides symbols that conflict with libutil's | ||
14 | ones, like __aeabi_idiv with friends for instance. | ||
15 | |||
16 | So, to resolve libgcc dependency on libutils we need to link with libutils | ||
17 | second time. To make things more generic, we will introduce | ||
18 | $(libnames-after-libgcc) variable for libraries that should be linked after | ||
19 | libgcc. | ||
20 | |||
21 | Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com> | ||
22 | Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> | ||
23 | Reviewed-by: Jerome Forissier <jerome@forissier.org> | ||
24 | --- | ||
25 | ta/arch/arm/link.mk | 6 +++++- | ||
26 | 1 file changed, 5 insertions(+), 1 deletion(-) | ||
27 | |||
28 | diff --git a/ta/arch/arm/link.mk b/ta/arch/arm/link.mk | ||
29 | index 445c285d..3025acb1 100644 | ||
30 | --- a/ta/arch/arm/link.mk | ||
31 | +++ b/ta/arch/arm/link.mk | ||
32 | @@ -55,8 +55,11 @@ link-ldflags += --eh-frame-hdr | ||
33 | link-ldadd += $(libstdc++$(sm)) $(libgcc_eh$(sm)) | ||
34 | endif | ||
35 | link-ldadd += --end-group | ||
36 | -ldargs-$(user-ta-uuid).elf := $(link-ldflags) $(objs) $(link-ldadd) $(libgcc$(sm)) | ||
37 | |||
38 | +link-ldadd-after-libgcc += $(addprefix -l,$(libnames-after-libgcc)) | ||
39 | + | ||
40 | +ldargs-$(user-ta-uuid).elf := $(link-ldflags) $(objs) $(link-ldadd) \ | ||
41 | + $(libgcc$(sm)) $(link-ldadd-after-libgcc) | ||
42 | |||
43 | link-script-cppflags-$(sm) := \ | ||
44 | $(filter-out $(CPPFLAGS_REMOVE) $(cppflags-remove), \ | ||
45 | @@ -76,6 +79,7 @@ $(link-script-pp$(sm)): $(link-script$(sm)) $(conf-file) $(link-script-pp-makefi | ||
46 | $(link-script-cppflags-$(sm)) $$< -o $$@ | ||
47 | |||
48 | $(link-out-dir$(sm))/$(user-ta-uuid).elf: $(objs) $(libdeps) \ | ||
49 | + $(libdeps-after-libgcc) \ | ||
50 | $(link-script-pp$(sm)) \ | ||
51 | $(dynlistdep) \ | ||
52 | $(additional-link-deps) | ||
53 | -- | ||
54 | 2.25.1 | ||
55 | |||