[PATCH v2] sandbox: Fix LTO to work with STACKPROTECTOR

Andrew Goodbody andrew.goodbody at linaro.org
Tue Jul 2 19:00:09 CEST 2024


Add the STACKPROTECTOR symbols to the script that generates the
symbols that should not be removed by the use of LTO when linking
a shared object. This prevents a fail to build due to link errors.

https://source.denx.de/u-boot/u-boot/-/issues/35

Signed-off-by: Andrew Goodbody <andrew.goodbody at linaro.org>
---

Changes in v2:
- Made the new match more specific and added it to the grep run rather
  than run grep twice

 scripts/gen_ll_addressable_symbols.sh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/scripts/gen_ll_addressable_symbols.sh b/scripts/gen_ll_addressable_symbols.sh
index 13f670ae0e..fc5ee0e9c0 100755
--- a/scripts/gen_ll_addressable_symbols.sh
+++ b/scripts/gen_ll_addressable_symbols.sh
@@ -11,5 +11,6 @@
 set -e
 
 echo '#include <linux/compiler.h>'
-$@ 2>/dev/null | grep -oe '_u_boot_list_2_[a-zA-Z0-9_]*_2_[a-zA-Z0-9_]*' | \
-	sort -u | sed -e 's/^\(.*\)/extern char \1[];\n__ADDRESSABLE(\1);/'
+$@ 2>/dev/null | grep -oe '_u_boot_list_2_[a-zA-Z0-9_]*_2_[a-zA-Z0-9_]*' \
+	-e '__stack_chk_guard' | sort -u | \
+	sed -e 's/^\(.*\)/extern char \1[];\n__ADDRESSABLE(\1);/'
-- 
2.39.2



More information about the U-Boot mailing list