2 # Copyright (C) 2006-2017 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
11 PKG_VERSION
:=3.15.3-stable
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).zip
15 # PKG_SOURCE_URL:=https://www.wolfssl.com/
16 PKG_SOURCE_URL
:=https
://github.com
/wolfSSL
/wolfssl
/archive
/v
$(PKG_VERSION
)
17 PKG_HASH
:=dc97c07a7667b39a890e14f4b4a209f51524a4cabee7adb6c80822ee78c1f62a
24 PKG_CPE_ID
:=cpe
:/a
:yassl
:cyassl
27 CONFIG_WOLFSSL_HAS_AES_CCM CONFIG_WOLFSSL_HAS_AES_GCM \
28 CONFIG_WOLFSSL_HAS_ARC4 CONFIG_WOLFSSL_HAS_CHACHA \
29 CONFIG_WOLFSSL_HAS_DES3 CONFIG_WOLFSSL_HAS_DH CONFIG_WOLFSSL_HAS_DTLS \
30 CONFIG_WOLFSSL_HAS_ECC CONFIG_WOLFSSL_HAS_ECC25519 \
31 CONFIG_WOLFSSL_HAS_OCSP CONFIG_WOLFSSL_HAS_POLY_1305 \
32 CONFIG_WOLFSSL_HAS_PSK CONFIG_WOLFSSL_HAS_SESSION_TICKET \
33 CONFIG_WOLFSSL_HAS_WPAS
35 include $(INCLUDE_DIR
)/package.mk
37 define Package
/libwolfssl
41 TITLE
:=wolfSSL library
42 URL
:=http
://www.wolfssl.com
/
47 define Package
/libwolfssl
/description
48 wolfSSL
(formerly CyaSSL
) is an SSL library optimized for small
49 footprint
, both on disk and for memory use.
52 define Package
/libwolfssl
/config
53 source
"$(SOURCE)/Config.in"
56 TARGET_CFLAGS
+= $(FPIC
)
58 # --enable-stunnel needed for OpenSSL API compatibility bits
60 --enable-opensslextra \
67 ifeq ($(CONFIG_IPV6
),y
)
72 ifeq ($(CONFIG_WOLFSSL_HAS_AES_CCM
),y
)
77 ifneq ($(CONFIG_WOLFSSL_HAS_AES_GCM
),y
)
82 ifneq ($(CONFIG_WOLFSSL_HAS_CHACHA
),y
)
87 ifeq ($(CONFIG_WOLFSSL_HAS_ECC
),y
)
90 --enable-supportedcurves
93 ifeq ($(CONFIG_WOLFSSL_HAS_DH
),y
)
98 ifneq ($(CONFIG_WOLFSSL_HAS_ARC4
),y
)
106 ifneq ($(CONFIG_WOLFSSL_HAS_DES3
),y
)
114 ifeq ($(CONFIG_WOLFSSL_HAS_PSK
),y
)
119 ifeq ($(CONFIG_WOLFSSL_HAS_SESSION_TICKET
),y
)
121 --enable-session-ticket
124 ifeq ($(CONFIG_WOLFSSL_HAS_DTLS
),y
)
129 ifeq ($(CONFIG_WOLFSSL_HAS_OCSP
),y
)
131 --enable-ocsp
--enable-ocspstapling
--enable-ocspstapling2
134 ifeq ($(CONFIG_WOLFSSL_HAS_WPAS
),y
)
136 --enable-wpas
--enable-sha512
--enable-fortress
--enable-fastmath
139 ifeq ($(CONFIG_WOLFSSL_HAS_ECC25519
),y
)
144 ifneq ($(CONFIG_WOLFSSL_HAS_POLY1305
),y
)
149 #ifneq ($(CONFIG_TARGET_x86),)
150 # CONFIGURE_ARGS += --enable-intelasm
152 #ifneq ($(CONFIG_TARGET_x86_64),)
153 # CONFIGURE_ARGS += --enable-intelasm
156 define Build
/InstallDev
157 $(INSTALL_DIR
) $(1)/usr
/include $(1)/usr
/lib
/pkgconfig
158 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/* $(1)/usr
/include/
160 $(INSTALL_DIR
) $(1)/usr
/lib
161 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libwolfssl.
{so
*,la
} $(1)/usr
/lib
/
162 ln
-s libwolfssl.so
$(1)/usr
/lib
/libcyassl.so
163 ln
-s libwolfssl.la
$(1)/usr
/lib
/libcyassl.la
165 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/pkgconfig
/*.
pc $(1)/usr
/lib
/pkgconfig
168 define Package
/libwolfssl
/install
169 $(INSTALL_DIR
) $(1)/usr
/lib
170 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libwolfssl.so
* $(1)/usr
/lib
/
171 ln
-s libwolfssl.so
$(1)/usr
/lib
/libcyassl.so
174 $(eval
$(call BuildPackage
,libwolfssl
))