Merge pull request #16439 from ja-pa/tailscale-1.12.3
[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 PKG_BUILD_DEPENDS:=libubox
25
26 CMAKE_INSTALL:=1
27
28 include $(INCLUDE_DIR)/package.mk
29 include $(INCLUDE_DIR)/cmake.mk
30
31 CMAKE_OPTIONS += -DLWS_IPV6=$(if $(CONFIG_IPV6),ON,OFF)
32 CMAKE_OPTIONS += -DISABLE_WERROR=ON
33 CMAKE_OPTIONS += -DCMAKE_BUILD_TYPE=Release
34 CMAKE_OPTIONS += -DLWS_WITH_ULOOP=ON
35
36 # turn off all test apps
37 CMAKE_OPTIONS += -DLWS_WITHOUT_TESTAPPS=ON
38 CMAKE_OPTIONS += -DLWS_WITHOUT_TEST_SERVER=ON
39 CMAKE_OPTIONS += -DLWS_WITHOUT_TEST_SERVER_EXTPOLL=ON
40 CMAKE_OPTIONS += -DLWS_WITHOUT_TEST_PING=ON
41 CMAKE_OPTIONS += -DLWS_WITHOUT_TEST_CLIENT=ON
42
43 define Package/libwebsockets/Default
44 SECTION:=libs
45 CATEGORY:=Libraries
46 TITLE:=libwebsockets
47 DEPENDS:=+zlib +libcap
48 URL:=https://libwebsockets.org
49 MAINTAINER:=Karl Palsson <karlp@etactica.com>
50 PROVIDES:= libwebsockets
51 endef
52
53 define Package/libwebsockets-openssl
54 $(call Package/libwebsockets/Default)
55 TITLE += (OpenSSL)
56 DEPENDS += +libopenssl
57 VARIANT:=openssl
58 endef
59
60 define Package/libwebsockets-mbedtls
61 $(call Package/$(PKG_NAME)/Default)
62 TITLE += (mbedTLS)
63 DEPENDS += +libmbedtls
64 VARIANT:=mbedtls
65 endef
66
67 define Package/libwebsockets-full
68 $(call Package/libwebsockets/Default)
69 TITLE += (Full - OpenSSL, libuv, plugins, CGI)
70 DEPENDS += +libopenssl +libuv
71 VARIANT:=full
72 endef
73
74 ifeq ($(BUILD_VARIANT),openssl)
75 CMAKE_OPTIONS += -DLWS_OPENSSL_CLIENT_CERTS=/etc/ssl/certs
76 CMAKE_OPTIONS += -DLWS_WITH_SSL=ON
77 endif
78
79 ifeq ($(BUILD_VARIANT),mbedtls)
80 CMAKE_OPTIONS += -DLWS_WITH_MBEDTLS=1
81 endif
82
83 ifeq ($(BUILD_VARIANT),full)
84 CMAKE_OPTIONS += -DLWS_OPENSSL_CLIENT_CERTS=/etc/ssl/certs
85 CMAKE_OPTIONS += -DLWS_WITH_SSL=ON
86 CMAKE_OPTIONS += -DLWS_WITH_LIBUV=ON
87 CMAKE_OPTIONS += -DLWS_WITH_PLUGINS=ON
88 CMAKE_OPTIONS += -DLWS_WITH_SERVER_STATUS=ON
89 CMAKE_OPTIONS += -DLWS_WITH_ACCESS_LOG=ON
90 CMAKE_OPTIONS += -DLWS_WITH_CGI=ON
91 CMAKE_OPTIONS += -DLWS_UNIX_SOCK=ON
92 endif
93
94 define Package/libwebsockets/install
95 $(INSTALL_DIR) $(1)/usr/lib
96 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libwebsockets.so* $(1)/usr/lib/
97 endef
98
99 Package/libwebsockets-mbedtls/install = $(Package/libwebsockets/install)
100 Package/libwebsockets-openssl/install = $(Package/libwebsockets/install)
101
102 define Package/libwebsockets-full/install
103 $(call Package/libwebsockets/install,$(1))
104 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libwebsockets-evlib_uv.so* $(1)/usr/lib
105 endef
106
107 $(eval $(call BuildPackage,libwebsockets-openssl))
108 $(eval $(call BuildPackage,libwebsockets-mbedtls))
109 $(eval $(call BuildPackage,libwebsockets-full))