uclibc: gcc >= 4.9 can build a thumb/thread uclibc

Older gcc were not capable of building a uClibc library, with threads
enabled, in Thumb1. However, the issues have been fixed since gcc 4.9,
so this commit narrows down the condition to just gcc 4.7 and 4.8.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Thomas Petazzoni 2016-03-18 22:08:08 +01:00
parent 0bbe85e6ea
commit 45d7f01451

View File

@ -75,8 +75,10 @@ define UCLIBC_ARM_ABI_CONFIG
$(call KCONFIG_ENABLE_OPT,CONFIG_ARM_EABI,$(@D)/.config)
endef
# Thumb build is broken with threads, build in ARM mode
ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_TOOLCHAIN_HAS_THREADS),yy)
# Thumb1 build is broken with threads with old gcc versions (4.7 and
# 4.8). Since all cores supporting Thumb1 also support ARM, we use ARM
# code in this case.
ifeq ($(BR2_GCC_VERSION_4_7_X)$(BR2_GCC_VERSION_4_8_X):$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_TOOLCHAIN_HAS_THREADS),y:yy)
UCLIBC_EXTRA_CFLAGS += -marm
endif