[Buildroot] [git commit branch/2023.05.x] package/cmocka: fix build on Thumb classic configurations

Peter Korsgaard peter at korsgaard.com
Wed Aug 30 22:28:05 UTC 2023


commit: https://git.buildroot.net/buildroot/commit/?id=fbc2e83d41c3f1aa723f68c9926311db0a4ed22f
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/2023.05.x

The cmocka package checks if a toolchain supports the
-fstack-clash-protection compiler flag, and if it does automatically
uses it. That flag is not supported by GCC for Thumb1 builds (at least
as of both GCC 11 and GCC 12). Let's tell cmocka about this by passing
-DWITH_STACK_CLASH_PROTECTION=OFF in this configuration, as suggested
by Arnout Vandecappelle.

Fixes:
http://autobuild.buildroot.net/results/4044b3a71d3130d934c7a7c0c5badfabb2a97030/

Signed-off-by: Joel Carlson <JoelsonCarl at gmail.com>
[Thomas: change the initial patch from Joel to use the suggestion from
Arnout]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
(cherry picked from commit 5622c76bf42fd29f8dfc231d0fccb623960b3542)
Signed-off-by: Peter Korsgaard <peter at korsgaard.com>
---
 package/cmocka/cmocka.mk | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/package/cmocka/cmocka.mk b/package/cmocka/cmocka.mk
index eafb4898e1..297f95f465 100644
--- a/package/cmocka/cmocka.mk
+++ b/package/cmocka/cmocka.mk
@@ -21,4 +21,9 @@ ifeq ($(BR2_SHARED_STATIC_LIBS),y)
 CMOCKA_CONF_OPTS += -DWITH_STATIC_LIB=ON
 endif
 
+# gcc for ARM Thumb1 doesn't implement -fstack-clash-protection
+ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y)
+CMOCKA_CONF_OPTS += -DWITH_STACK_CLASH_PROTECTION=OFF
+endif
+
 $(eval $(cmake-package))



More information about the buildroot mailing list