1################################################################################
2#
3# wolfssl
4#
5################################################################################
6
7WOLFSSL_VERSION = 5.7.0
8WOLFSSL_SITE = $(call github,wolfSSL,wolfssl,v$(WOLFSSL_VERSION)-stable)
9WOLFSSL_INSTALL_STAGING = YES
10
11WOLFSSL_LICENSE = GPL-2.0+
12WOLFSSL_LICENSE_FILES = COPYING LICENSING
13WOLFSSL_CPE_ID_VENDOR = wolfssl
14WOLFSSL_CONFIG_SCRIPTS = wolfssl-config
15# From git
16WOLFSSL_AUTORECONF = YES
17WOLFSSL_DEPENDENCIES = host-pkgconf
18
19WOLFSSL_CONF_OPTS = --disable-examples --disable-crypttests
20
21ifeq ($(BR2_PACKAGE_WOLFSSL_ALL),y)
22WOLFSSL_CONF_OPTS += --enable-all
23else
24WOLFSSL_CONF_OPTS += --disable-all
25endif
26
27ifeq ($(BR2_PACKAGE_WOLFSSL_SSLV3),y)
28WOLFSSL_CONF_OPTS += --enable-sslv3
29else
30WOLFSSL_CONF_OPTS += --disable-sslv3
31endif
32
33ifeq ($(BR2_PACKAGE_WOLFSSL_ASM_SUPPORTS),y)
34WOLFSSL_CONF_OPTS += --enable-asm
35else
36WOLFSSL_CONF_OPTS += --disable-asm
37endif
38
39# enable ARMv8 hardware acceleration
40ifeq ($(BR2_aarch64),y)
41WOLFSSL_CONF_OPTS += --enable-armasm
42# the flag -mstrict-align is needed to prevent build errors caused by
43# some inline assembly in parts of the AES structure using the "m"
44# constraint
45WOLFSSL_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) -mstrict-align"
46else
47WOLFSSL_CONF_OPTS += --disable-armasm
48endif
49
50ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y)
51WOLFSSL_CONF_OPTS += --with-arm-target=thumb
52endif
53
54$(eval $(autotools-package))
55