Merge pull request #16273 from pprindeville/strongswan-sysupgrade
[feed/packages.git] / libs / libwebsockets / Makefile
1 #
2 # Copyright (C) 2014-2015 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=libwebsockets
11 PKG_VERSION:=4.2.1
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
15 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
16 PKG_SOURCE_URL:=https://codeload.github.com/warmcat/libwebsockets/tar.gz/v$(PKG_VERSION)?
17 PKG_HASH:=842da21f73ccba2be59e680de10a8cce7928313048750eb6ad73b6fa50763c51
18
19 PKG_SOURCE_VERSION:=v$(PKG_VERSION)
20
21 PKG_LICENSE:=MIT
22 PKG_LICENSE_FILES:=LICENSE
23
24 CMAKE_INSTALL:=1
25
26 include $(INCLUDE_DIR)/package.mk
27 include $(INCLUDE_DIR)/cmake.mk
28
29 CMAKE_OPTIONS += -DLWS_IPV6=$(if $(CONFIG_IPV6),ON,OFF)
30 CMAKE_OPTIONS += -DISABLE_WERROR=ON
31 CMAKE_OPTIONS += -DCMAKE_BUILD_TYPE=Release
32 CMAKE_OPTIONS += -DLWS_WITH_ULOOP=ON
33
34 # turn off all test apps
35 CMAKE_OPTIONS += -DLWS_WITHOUT_TESTAPPS=ON
36 CMAKE_OPTIONS += -DLWS_WITHOUT_TEST_SERVER=ON
37 CMAKE_OPTIONS += -DLWS_WITHOUT_TEST_SERVER_EXTPOLL=ON
38 CMAKE_OPTIONS += -DLWS_WITHOUT_TEST_PING=ON
39 CMAKE_OPTIONS += -DLWS_WITHOUT_TEST_CLIENT=ON
40
41 define Package/libwebsockets/Default
42 SECTION:=libs
43 CATEGORY:=Libraries
44 TITLE:=libwebsockets
45 DEPENDS:=+zlib +libcap
46 URL:=https://libwebsockets.org
47 MAINTAINER:=Karl Palsson <karlp@etactica.com>
48 PROVIDES:= libwebsockets
49 endef
50
51 define Package/libwebsockets-openssl
52 $(call Package/libwebsockets/Default)
53 TITLE += (OpenSSL)
54 DEPENDS += +libopenssl
55 VARIANT:=openssl
56 endef
57
58 define Package/libwebsockets-mbedtls
59 $(call Package/$(PKG_NAME)/Default)
60 TITLE += (mbedTLS)
61 DEPENDS += +libmbedtls
62 VARIANT:=mbedtls
63 endef
64
65 define Package/libwebsockets-full
66 $(call Package/libwebsockets/Default)
67 TITLE += (Full - OpenSSL, libuv, plugins, CGI)
68 DEPENDS += +libopenssl +libuv
69 VARIANT:=full
70 endef
71
72 ifeq ($(BUILD_VARIANT),openssl)
73 CMAKE_OPTIONS += -DLWS_OPENSSL_CLIENT_CERTS=/etc/ssl/certs
74 CMAKE_OPTIONS += -DLWS_WITH_SSL=ON
75 endif
76
77 ifeq ($(BUILD_VARIANT),mbedtls)
78 CMAKE_OPTIONS += -DLWS_WITH_MBEDTLS=1
79 endif
80
81 ifeq ($(BUILD_VARIANT),full)
82 CMAKE_OPTIONS += -DLWS_OPENSSL_CLIENT_CERTS=/etc/ssl/certs
83 CMAKE_OPTIONS += -DLWS_WITH_SSL=ON
84 CMAKE_OPTIONS += -DLWS_WITH_LIBUV=ON
85 CMAKE_OPTIONS += -DLWS_WITH_PLUGINS=ON
86 CMAKE_OPTIONS += -DLWS_WITH_SERVER_STATUS=ON
87 CMAKE_OPTIONS += -DLWS_WITH_ACCESS_LOG=ON
88 CMAKE_OPTIONS += -DLWS_WITH_CGI=ON
89 CMAKE_OPTIONS += -DLWS_UNIX_SOCK=ON
90 endif
91
92 define Package/libwebsockets/install
93 $(INSTALL_DIR) $(1)/usr/lib
94 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libwebsockets.so* $(1)/usr/lib/
95 endef
96
97 Package/libwebsockets-mbedtls/install = $(Package/libwebsockets/install)
98 Package/libwebsockets-openssl/install = $(Package/libwebsockets/install)
99
100 define Package/libwebsockets-full/install
101 $(call Package/libwebsockets/install,$(1))
102 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libwebsockets-evlib_uv.so* $(1)/usr/lib
103 endef
104
105 $(eval $(call BuildPackage,libwebsockets-openssl))
106 $(eval $(call BuildPackage,libwebsockets-mbedtls))
107 $(eval $(call BuildPackage,libwebsockets-full))