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
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
:=1da1b45dec4a455716c8547074ad883c737865225f69443bb173c0dc21683fd1
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
/
43 MAINTAINER
:=Alexandru Ardelean
<ardeleanalex@gmail.com
>
48 define Package
/libwolfssl
/description
49 wolfSSL
(formerly CyaSSL
) is an SSL library optimized for small
50 footprint
, both on disk and for memory use.
53 define Package
/libwolfssl
/config
54 source
"$(SOURCE)/Config.in"
57 TARGET_CFLAGS
+= $(FPIC
)
59 # --enable-stunnel needed for OpenSSL API compatibility bits
61 --enable-opensslextra \
68 ifeq ($(CONFIG_IPV6
),y
)
73 ifeq ($(CONFIG_WOLFSSL_HAS_AES_CCM
),y
)
78 ifneq ($(CONFIG_WOLFSSL_HAS_AES_GCM
),y
)
83 ifneq ($(CONFIG_WOLFSSL_HAS_CHACHA
),y
)
88 ifeq ($(CONFIG_WOLFSSL_HAS_ECC
),y
)
91 --enable-supportedcurves
94 ifeq ($(CONFIG_WOLFSSL_HAS_DH
),y
)
99 ifneq ($(CONFIG_WOLFSSL_HAS_ARC4
),y
)
107 ifneq ($(CONFIG_WOLFSSL_HAS_DES3
),y
)
115 ifeq ($(CONFIG_WOLFSSL_HAS_PSK
),y
)
120 ifeq ($(CONFIG_WOLFSSL_HAS_SESSION_TICKET
),y
)
122 --enable-session-ticket
125 ifeq ($(CONFIG_WOLFSSL_HAS_DTLS
),y
)
130 ifeq ($(CONFIG_WOLFSSL_HAS_OCSP
),y
)
132 --enable-ocsp
--enable-ocspstapling
--enable-ocspstapling2
135 ifeq ($(CONFIG_WOLFSSL_HAS_WPAS
),y
)
137 --enable-wpas
--enable-sha512
--enable-fortress
--enable-fastmath
140 ifeq ($(CONFIG_WOLFSSL_HAS_ECC25519
),y
)
145 ifneq ($(CONFIG_WOLFSSL_HAS_POLY1305
),y
)
150 #ifneq ($(CONFIG_TARGET_x86),)
151 # CONFIGURE_ARGS += --enable-intelasm
153 #ifneq ($(CONFIG_TARGET_x86_64),)
154 # CONFIGURE_ARGS += --enable-intelasm
157 define Build
/InstallDev
158 $(INSTALL_DIR
) $(1)/usr
/include $(1)/usr
/lib
/pkgconfig
159 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/* $(1)/usr
/include/
161 $(INSTALL_DIR
) $(1)/usr
/lib
162 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libwolfssl.
{so
*,la
} $(1)/usr
/lib
/
163 ln
-s libwolfssl.so
$(1)/usr
/lib
/libcyassl.so
164 ln
-s libwolfssl.la
$(1)/usr
/lib
/libcyassl.la
166 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/pkgconfig
/*.
pc $(1)/usr
/lib
/pkgconfig
169 define Package
/libwolfssl
/install
170 $(INSTALL_DIR
) $(1)/usr
/lib
171 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libwolfssl.so
* $(1)/usr
/lib
/
172 ln
-s libwolfssl.so
$(1)/usr
/lib
/libcyassl.so
175 $(eval
$(call BuildPackage
,libwolfssl
))