[Buildroot] [PATCH 2/3] package/poke: disable minimal-threading with thumb or thumb2

Romain Naour romain.naour at gmail.com
Sat Jan 29 14:23:51 UTC 2022


Disable minimal-threading when thumb or thumb2 is enabled due to build and runtime issues.

After fixing the build issue "Error: invalid swi expression" with
upstream, poke fail to run with the following error:

 # poke
 ERROR: specialized instruction beghl/retR (opcode 25) is defective but has no replacement
 [...]

Fixes:
https://gitlab.com/kubu93/buildroot/-/jobs/2030046871

Reported upstream [1].

[1] https://lists.gnu.org/archive/html/poke-devel/2022-01/msg00162.html

Signed-off-by: Romain Naour <romain.naour at gmail.com>
---
 package/poke/poke.mk | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/package/poke/poke.mk b/package/poke/poke.mk
index ddd03ae3b0..91518f5854 100644
--- a/package/poke/poke.mk
+++ b/package/poke/poke.mk
@@ -46,6 +46,15 @@ POKE_CONF_OPTS = \
 	--disable-libnbd \
 	--with-libreadline-prefix=$(STAGING_DIR)
 
+# Disable minimal-threading when thumb or thumb2 is enabled
+# due to runtime issue.
+# https://lists.gnu.org/archive/html/poke-devel/2022-01/msg00162.html
+ifeq ($(BR2_ARM_CPU_HAS_THUMB)$(BR2_ARM_CPU_HAS_THUMB2),y)
+POKE_CONF_OPTS += --disable-dispatch-minimal-threading
+else
+POKE_CONF_OPTS += --enable-dispatch-minimal-threading
+endif
+
 ifeq ($(BR2_PACKAGE_JSON_C),y)
 POKE_DEPENDENCIES += json-c
 POKE_CONF_OPTS += --enable-mi
-- 
2.31.1




More information about the buildroot mailing list