summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGustavo Zacarias <gustavo@zacarias.com.ar>2015-12-30 09:07:03 -0300
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2015-12-30 14:54:35 +0100
commita794e7fb50f00be4167e6b12b6b56f24678912fa (patch)
tree99b459d559b14af0da367e3a7ce8199e3f326bea
parent07c1ad4647b6a8e60338fc01ddcb2d629de0ad14 (diff)
mbedtls: disable assembly for some scenarios
It's affected in the same way as polarssl, but use an enhanced trick compared to 130ca81b since it's required by the codebase. Fixes: http://autobuild.buildroot.net/results/584/584d1d12be9f2bbf45ccbdf93b6b442524059dcc/ http://autobuild.buildroot.net/results/d13/d13a06ba3fc0d7f08a03c04fcb484761da7af3f7/ Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-rw-r--r--package/mbedtls/mbedtls.mk18
1 files changed, 18 insertions, 0 deletions
diff --git a/package/mbedtls/mbedtls.mk b/package/mbedtls/mbedtls.mk
index b1f232fed..b98b7f5df 100644
--- a/package/mbedtls/mbedtls.mk
+++ b/package/mbedtls/mbedtls.mk
@@ -43,4 +43,22 @@ else
MBEDTLS_CONF_OPTS += -DENABLE_ZLIB_SUPPORT=OFF
endif
+define MBEDTLS_DISABLE_ASM
+ $(SED) '/^#define MBEDTLS_AESNI_C/d' \
+ $(@D)/include/mbedtls/config.h
+ $(SED) '/^#define MBEDTLS_HAVE_ASM/d' \
+ $(@D)/include/mbedtls/config.h
+ $(SED) '/^#define MBEDTLS_PADLOCK_C/d' \
+ $(@D)/include/mbedtls/config.h
+endef
+
+# ARM in thumb mode breaks debugging with asm optimizations
+# Microblaze asm optimizations are broken in general
+# MIPS R6 asm is not yet supported
+ifeq ($(BR2_ENABLE_DEBUG)$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_ARM_INSTRUCTIONS_THUMB2),yy)
+MBEDTLS_POST_CONFIGURE_HOOKS += MBEDTLS_DISABLE_ASM
+else ifeq ($(BR2_microblaze)$(BR2_mips_32r6)$(BR2_mips_64r6),y)
+MBEDTLS_POST_CONFIGURE_HOOKS += MBEDTLS_DISABLE_ASM
+endif
+
$(eval $(cmake-package))