Browse Source

package/wolfssl: handle ARM Thumb situation

By default on ARM32, wolfssl uses assembly instructions that are not
supported on Thumb (original Thumb, not Thumb 2), causing a build
failure:

/tmp/ccgn33X7.s:299: Error: selected processor does not support `umlal r4,r5,r10,ip' in Thumb mode
/tmp/ccgn33X7.s:386: Error: instruction not supported in Thumb16 mode -- `adds r4,r4,r6'
/tmp/ccgn33X7.s:387: Error: unshifted register required -- `adc r3,r3,#0'
/tmp/ccgn33X7.s:395: Error: instruction not supported in Thumb16 mode -- `adds r4,r4,r6'

Fix that by passing --with-arm-target=thumb, which tells wolfssl to
use a different set of assembly routines.

Fixes:

  http://autobuild.buildroot.net/results/907/907a5967439c3157c426023b0be1e613092d7bfe/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Thomas Petazzoni 2 years ago
parent
commit
f79a9c775f
1 changed files with 4 additions and 0 deletions
  1. 4 0
      package/wolfssl/wolfssl.mk

+ 4 - 0
package/wolfssl/wolfssl.mk

@@ -43,4 +43,8 @@ else
 WOLFSSL_CONF_OPTS += --disable-armasm
 endif
 
+ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y)
+WOLFSSL_CONF_OPTS += --with-arm-target=thumb
+endif
+
 $(eval $(autotools-package))