mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-06-05 02:20:30 +00:00
optee-os: fix buildpaths QA failure on corstone1000
Patches applied upstream: https://github.com/OP-TEE/optee_os/pull/6974 Fixes: https://gitlab.com/jonmason00/meta-arm/-/jobs/7472950159 ERROR: mc:firmware:optee-os-4.2.0-r0 do_package_qa: QA Issue: File /lib/firmware/tee.elf in package optee-os contains reference to TMPDIR [buildpaths] Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit is contained in:
+43
@@ -0,0 +1,43 @@
|
||||
From 978cc08a393b7d5d0043bf7f4d33f0e33b2b18d8 Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Rapeli <mikko.rapeli@linaro.org>
|
||||
Date: Thu, 1 Aug 2024 13:58:36 +0000
|
||||
Subject: [PATCH 1/3] compile.mk: use CFLAGS from environment
|
||||
|
||||
Users can set CFLAGS just like AFLAGS, CC,
|
||||
LD etc and expect them to be used. It's ok to amend
|
||||
to them but overwriting should not be done.
|
||||
Build environment like yocto expect that these
|
||||
variables are used to call the compiler etc tools.
|
||||
Linux distro build environments usually set
|
||||
these variables.
|
||||
|
||||
Helps to remove build time paths from generated binaries
|
||||
since mappings to remove them can be set by the distro
|
||||
build system in CFLAGS automatically for each SW component
|
||||
in the build.
|
||||
|
||||
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
|
||||
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
|
||||
---
|
||||
mk/compile.mk | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
Upstream-Status: Backport
|
||||
|
||||
diff --git a/mk/compile.mk b/mk/compile.mk
|
||||
index b3d807ba4..0de7ea259 100644
|
||||
--- a/mk/compile.mk
|
||||
+++ b/mk/compile.mk
|
||||
@@ -80,7 +80,8 @@ comp-compiler-$2 := $$(CC$(sm))
|
||||
comp-flags-$2 = $$(filter-out $$(CFLAGS_REMOVE) $$(cflags-remove) \
|
||||
$$(cflags-remove-$$(comp-sm-$2)) \
|
||||
$$(cflags-remove-$2), \
|
||||
- $$(CFLAGS$$(arch-bits-$$(comp-sm-$2))) $$(CFLAGS_WARNS) \
|
||||
+ $$(CFLAGS$$(arch-bits-$$(comp-sm-$2))) $$(CFLAGS) \
|
||||
+ $$(CFLAGS_WARNS) \
|
||||
$$(comp-cflags$$(comp-sm-$2)) $$(cflags$$(comp-sm-$2)) \
|
||||
$$(cflags-lib$$(comp-lib-$2)) $$(cflags-$2))
|
||||
ifeq ($C,1)
|
||||
--
|
||||
2.34.1
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
From f9207376ed58836bf748cc4cea0fcbf46624a709 Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Rapeli <mikko.rapeli@linaro.org>
|
||||
Date: Thu, 1 Aug 2024 14:03:11 +0000
|
||||
Subject: [PATCH 2/3] link.mk: use CFLAGS with version.o
|
||||
|
||||
Should be used by all compilations.
|
||||
|
||||
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
|
||||
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
|
||||
---
|
||||
core/arch/arm/kernel/link.mk | 2 +-
|
||||
core/arch/riscv/kernel/link.mk | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
Upstream-Status: Backport
|
||||
|
||||
diff --git a/core/arch/arm/kernel/link.mk b/core/arch/arm/kernel/link.mk
|
||||
index 49e9f4fa1..377a82b65 100644
|
||||
--- a/core/arch/arm/kernel/link.mk
|
||||
+++ b/core/arch/arm/kernel/link.mk
|
||||
@@ -151,7 +151,7 @@ define update-buildcount
|
||||
endef
|
||||
|
||||
# filter-out to workaround objdump warning
|
||||
-version-o-cflags = $(filter-out -g3,$(core-platform-cflags) \
|
||||
+version-o-cflags = $(filter-out -g3,$(CFLAGS) $(core-platform-cflags) \
|
||||
$(platform-cflags) $(cflagscore))
|
||||
# SOURCE_DATE_EPOCH defined for reproducible builds
|
||||
ifneq ($(SOURCE_DATE_EPOCH),)
|
||||
diff --git a/core/arch/riscv/kernel/link.mk b/core/arch/riscv/kernel/link.mk
|
||||
index 3d1000d15..1fff0a379 100644
|
||||
--- a/core/arch/riscv/kernel/link.mk
|
||||
+++ b/core/arch/riscv/kernel/link.mk
|
||||
@@ -62,7 +62,7 @@ define update-buildcount
|
||||
endef
|
||||
|
||||
# filter-out to workaround objdump warning
|
||||
-version-o-cflags = $(filter-out -g3,$(core-platform-cflags) \
|
||||
+version-o-cflags = $(filter-out -g3,$(CFLAGS) $(core-platform-cflags) \
|
||||
$(platform-cflags) $(cflagscore))
|
||||
# SOURCE_DATE_EPOCH defined for reproducible builds
|
||||
ifneq ($(SOURCE_DATE_EPOCH),)
|
||||
--
|
||||
2.34.1
|
||||
|
||||
+70
@@ -0,0 +1,70 @@
|
||||
From 8f100f355e645376729086edbace8f01cf7aa3b4 Mon Sep 17 00:00:00 2001
|
||||
From: Mikko Rapeli <mikko.rapeli@linaro.org>
|
||||
Date: Thu, 1 Aug 2024 14:04:55 +0000
|
||||
Subject: [PATCH 3/3] link.mk: generate version.o in link-out-dir
|
||||
|
||||
When source code is piped to compiler, then the
|
||||
current working directory is left into debug
|
||||
data. If the working directory is not the output
|
||||
directory, then mappings which strip absolute output
|
||||
directory paths don't work.
|
||||
|
||||
Removes absolute build time paths from version.o
|
||||
debug info.
|
||||
|
||||
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
|
||||
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
|
||||
---
|
||||
core/arch/arm/kernel/link.mk | 5 +++--
|
||||
core/arch/riscv/kernel/link.mk | 5 +++--
|
||||
2 files changed, 6 insertions(+), 4 deletions(-)
|
||||
|
||||
Upstream-Status: Backport
|
||||
|
||||
diff --git a/core/arch/arm/kernel/link.mk b/core/arch/arm/kernel/link.mk
|
||||
index 377a82b65..d1d527224 100644
|
||||
--- a/core/arch/arm/kernel/link.mk
|
||||
+++ b/core/arch/arm/kernel/link.mk
|
||||
@@ -163,14 +163,15 @@ CORE_CC_VERSION = `$(CCcore) -v 2>&1 | grep "version " | sed 's/ *$$//'`
|
||||
define gen-version-o
|
||||
$(call update-buildcount,$(link-out-dir)/.buildcount)
|
||||
@$(cmd-echo-silent) ' GEN $(link-out-dir)/version.o'
|
||||
- $(q)echo -e "const char core_v_str[] =" \
|
||||
+ $(q)cd $(link-out-dir) && \
|
||||
+ echo -e "const char core_v_str[] =" \
|
||||
"\"$(TEE_IMPL_VERSION) \"" \
|
||||
"\"($(CORE_CC_VERSION)) \"" \
|
||||
"\"#$(BUILD_COUNT_STR) \"" \
|
||||
"\"$(DATE_STR) \"" \
|
||||
"\"$(CFG_KERN_LINKER_ARCH)\";\n" \
|
||||
| $(CCcore) $(version-o-cflags) \
|
||||
- -xc - -c -o $(link-out-dir)/version.o
|
||||
+ -xc - -c -o version.o
|
||||
endef
|
||||
$(link-out-dir)/version.o:
|
||||
$(call gen-version-o)
|
||||
diff --git a/core/arch/riscv/kernel/link.mk b/core/arch/riscv/kernel/link.mk
|
||||
index 1fff0a379..6511586e2 100644
|
||||
--- a/core/arch/riscv/kernel/link.mk
|
||||
+++ b/core/arch/riscv/kernel/link.mk
|
||||
@@ -74,14 +74,15 @@ CORE_CC_VERSION = `$(CCcore) -v 2>&1 | grep "version " | sed 's/ *$$//'`
|
||||
define gen-version-o
|
||||
$(call update-buildcount,$(link-out-dir)/.buildcount)
|
||||
@$(cmd-echo-silent) ' GEN $(link-out-dir)/version.o'
|
||||
- $(q)echo -e "const char core_v_str[] =" \
|
||||
+ $(q)cd $(link-out-dir) && \
|
||||
+ echo -e "const char core_v_str[] =" \
|
||||
"\"$(TEE_IMPL_VERSION) \"" \
|
||||
"\"($(CORE_CC_VERSION)) \"" \
|
||||
"\"#$(BUILD_COUNT_STR) \"" \
|
||||
"\"$(DATE_STR) \"" \
|
||||
"\"$(CFG_KERN_LINKER_ARCH)\";\n" \
|
||||
| $(CCcore) $(version-o-cflags) \
|
||||
- -xc - -c -o $(link-out-dir)/version.o
|
||||
+ -xc - -c -o version.o
|
||||
endef
|
||||
|
||||
$(link-out-dir)/version.o:
|
||||
--
|
||||
2.34.1
|
||||
|
||||
@@ -9,4 +9,7 @@ SRC_URI += " \
|
||||
file://0003-optee-enable-clang-support.patch \
|
||||
file://0001-checkconf.mk-do-not-use-full-path-to-generate-guard-.patch \
|
||||
file://0001-mk-compile.mk-remove-absolute-build-time-paths.patch \
|
||||
file://0001-compile.mk-use-CFLAGS-from-environment.patch \
|
||||
file://0002-link.mk-use-CFLAGS-with-version.o.patch \
|
||||
file://0003-link.mk-generate-version.o-in-link-out-dir.patch \
|
||||
"
|
||||
|
||||
Reference in New Issue
Block a user