From: Jörg Krause Date: Tue, 15 Nov 2016 20:46:58 +0000 (+0100) Subject: package/tremor: fix build with Thumb only ARM archs X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0ee4deb9618f961e12e340d527ed0e4fb1ae4829;p=buildroot.git package/tremor: fix build with Thumb only ARM archs Some ARM architectures like ARMv7-M only supports Thumb instructions, but the tremor build configuration enables ARM assembly code unconditionally for all arm triplets by defining _ARM_ASSEM_. We are overriding this by undefining this macro for ARM architectures not supporting ARM instructions. Fixes: http://autobuild.buildroot.net/results/054/054f1c77b0e5d46b2dc53769469c0ed03e6b79ef/ http://autobuild.buildroot.net/results/ba1/ba1760b1428584f70e44dbffb8218ff3ee55e702/ http://autobuild.buildroot.net/results/2a6/2a687853cf0bc832fef29f88de0d85bd495fe87d/ http://autobuild.buildroot.net/results/cb6/cb6c560bf31834aadbe3d13a118b31ea8190159b/ Signed-off-by: Jörg Krause Reviewed-by: Arnout Vandecappelle (Essensium/Mind) Signed-off-by: Thomas Petazzoni --- diff --git a/package/tremor/tremor.mk b/package/tremor/tremor.mk index 97b0ce36e4..2a791b6729 100644 --- a/package/tremor/tremor.mk +++ b/package/tremor/tremor.mk @@ -16,9 +16,17 @@ TREMOR_DEPENDENCIES = libogg # tremor has ARM assembly code that cannot be compiled in Thumb2 mode, # so we must force the traditional ARM mode. +# However, some ARM architectures like ARNv7-M only supports Thumb +# instructions, but the tremor build configuration enables ARM assembly +# code unconditionally for all arm triplets by defining _ARM_ASSEM_. +# We are overriding this by undefining this macro for the ARM +# architectures not supporting ARM instructions. ifeq ($(BR2_arm),y) -TREMOR_CONF_ENV = \ - CFLAGS="$(TARGET_CFLAGS) -marm" +ifeq ($(BR2_ARM_CPU_HAS_ARM),y) +TREMOR_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -marm" +else +TREMOR_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -U_ARM_ASSEM_" +endif endif $(eval $(autotools-package))