Makefile: Add a 'checkthumb' rule
This rule confirms that if we're on ARM and we have enabled THUMB builds
that we have a new enough toolchain to produce a working binary.
Changes in v2:
- Switch to ALL-$(CONFIG_SYS_THUMB_BUILD) in arch/arm/config.mk (Mike F)
- Simplfy checkthumb test after doing the above
Signed-off-by: Tom Rini <trini@ti.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
diff --git a/Makefile b/Makefile
index 023ea23..351a8f0 100644
--- a/Makefile
+++ b/Makefile
@@ -556,6 +556,13 @@
$(obj)System.map: $(obj)u-boot
@$(call SYSTEM_MAP,$<) > $(obj)System.map
+checkthumb:
+ @if test $(call cc-version) -lt 0404; then \
+ echo -n '*** Your GCC does not produce working '; \
+ echo 'binaries in THUMB mode.'; \
+ echo '*** Your board is configured for THUMB mode.'; \
+ false; \
+ fi
#
# Auto-generate the autoconf.mk file (which is included by all makefiles)
#
diff --git a/arch/arm/config.mk b/arch/arm/config.mk
index 4cc99e7..3f4453a 100644
--- a/arch/arm/config.mk
+++ b/arch/arm/config.mk
@@ -44,6 +44,11 @@
$(call cc-option,-mno-thumb-interwork,)
endif
+# Only test once
+ifneq ($(CONFIG_SPL_BUILD),y)
+ALL-$(CONFIG_SYS_THUMB_BUILD) += checkthumb
+endif
+
# Try if EABI is supported, else fall back to old API,
# i. e. for example:
# - with ELDK 4.2 (EABI supported), use: