config BR2_UCLIBC_ARM_BX
bool
depends on BR2_UCLIBC_TARGET_ARCH = "arm"
- default y if !BR2_fa265 && !BR2_strongarm
+ default y if (BR2_ARM_CPU_HAS_THUMB || BR2_ARM_CPU_HAS_THUMB2)
config BR2_UCLIBC_MIPS_ABI
string
$(call UCLIBC_OPT_SET,CONFIG_ARM_EABI,y,$(@D))
endef
+# Thumb build is broken with threads, build in ARM mode
+ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_TOOLCHAIN_HAS_THREADS),yy)
+UCLIBC_EXTRA_CFLAGS += -marm
+endif
+
ifeq ($(BR2_UCLIBC_ARM_BX),y)
define UCLIBC_ARM_BX_CONFIG
$(call UCLIBC_OPT_SET,USE_BX,y,$(@D))
UCLIBC_MAKE_FLAGS = \
ARCH="$(UCLIBC_TARGET_ARCH)" \
CROSS_COMPILE="$(TARGET_CROSS)" \
- UCLIBC_EXTRA_CFLAGS="$(TARGET_ABI)" \
+ UCLIBC_EXTRA_CFLAGS="$(UCLIBC_EXTRA_CFLAGS) $(TARGET_ABI)" \
HOSTCC="$(HOSTCC)"
define UCLIBC_SETUP_DOT_CONFIG