From: Denys Dmytriyenko <[email protected]>

The patch was dropped with 3.17 update:

https://git.yoctoproject.org/meta-ti/commit/?h=dunfell&id=f8182afdcfe427865707077d353359827f1ff6bf

But the patch is still needed for internal OE-built toolchain to pass
sysroot, otherwise libgcc.a cannot be found:

| aarch64-oe-linux-ld.bfd: cannot find libgcc.a: No such file or directory

The older version from meta-arm/dunfell no longer applies, so copy a newer
version of the patch locally.

Signed-off-by: Denys Dmytriyenko <[email protected]>
---
 ...ow-setting-sysroot-for-libgcc-lookup.patch | 34 +++++++++++++++++++
 recipes-security/optee/optee-os_%.bbappend    |  6 +++-
 2 files changed, 39 insertions(+), 1 deletion(-)
 create mode 100644 
recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch

diff --git 
a/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch
 
b/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch
new file mode 100644
index 00000000..17005396
--- /dev/null
+++ 
b/recipes-security/optee/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch
@@ -0,0 +1,34 @@
+From 0bab935695ebcf0c533b49896ab18ff33d4a47d1 Mon Sep 17 00:00:00 2001
+From: Ross Burton <[email protected]>
+Date: Tue, 26 May 2020 14:38:02 -0500
+Subject: [PATCH] allow setting sysroot for libgcc lookup
+
+Explicitly pass the new variable LIBGCC_LOCATE_CFLAGS variable when searching
+for the compiler libraries as there's no easy way to reliably pass --sysroot
+otherwise.
+
+Upstream-Status: Pending [https://github.com/OP-TEE/optee_os/issues/4188]
+Signed-off-by: Ross Burton <[email protected]>
+---
+ mk/gcc.mk | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/mk/gcc.mk b/mk/gcc.mk
+index adc77a24..81bfa78a 100644
+--- a/mk/gcc.mk
++++ b/mk/gcc.mk
+@@ -13,11 +13,11 @@ nostdinc$(sm)      := -nostdinc -isystem $(shell 
$(CC$(sm)) \
+                       -print-file-name=include 2> /dev/null)
+ 
+ # Get location of libgcc from gcc
+-libgcc$(sm)   := $(shell $(CC$(sm)) $(CFLAGS$(arch-bits-$(sm))) \
++libgcc$(sm)   := $(shell $(CC$(sm)) $(LIBGCC_LOCATE_CFLAGS) 
$(CFLAGS$(arch-bits-$(sm))) \
+                       -print-libgcc-file-name 2> /dev/null)
+-libstdc++$(sm)        := $(shell $(CXX$(sm)) $(CXXFLAGS$(arch-bits-$(sm))) 
$(comp-cxxflags$(sm)) \
++libstdc++$(sm)        := $(shell $(CXX$(sm)) $(LIBGCC_LOCATE_CFLAGS) 
$(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \
+                       -print-file-name=libstdc++.a 2> /dev/null)
+-libgcc_eh$(sm)        := $(shell $(CXX$(sm)) $(CXXFLAGS$(arch-bits-$(sm))) 
$(comp-cxxflags$(sm)) \
++libgcc_eh$(sm)        := $(shell $(CXX$(sm)) $(LIBGCC_LOCATE_CFLAGS) 
$(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \
+                       -print-file-name=libgcc_eh.a 2> /dev/null)
+ 
+ # Define these to something to discover accidental use
diff --git a/recipes-security/optee/optee-os_%.bbappend 
b/recipes-security/optee/optee-os_%.bbappend
index ddfc76f1..ebcf584d 100644
--- a/recipes-security/optee/optee-os_%.bbappend
+++ b/recipes-security/optee/optee-os_%.bbappend
@@ -1,6 +1,10 @@
+FILESEXTRAPATHS_prepend_ti-soc := "${THISDIR}/${PN}:"
+
 PV_ti-soc = "3.20.0+git${SRCPV}"
 SRCREV_ti-soc = "8e74d47616a20eaa23ca692f4bbbf917a236ed94"
-SRC_URI_ti-soc = "git://github.com/OP-TEE/optee_os.git;protocol=https"
+SRC_URI_ti-soc = "git://github.com/OP-TEE/optee_os.git;protocol=https \
+file://0006-allow-setting-sysroot-for-libgcc-lookup.patch \
+"
 
 DEPENDS_append_ti-soc = " python3-cryptography-native"
 
-- 
2.25.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#17408): 
https://lists.yoctoproject.org/g/meta-ti/message/17408
Mute This Topic: https://lists.yoctoproject.org/mt/103893761/21656
Group Owner: [email protected]
Unsubscribe: 
https://lists.yoctoproject.org/g/meta-ti/leave/6695321/21656/1393940836/xyzzy 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to