Merge pull request #7334 from neheb/monit
[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:=3.0.1
12 PKG_RELEASE:=2
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:=cb0cdd8d0954fcfd97a689077568f286cdbb44111883e0a85d29860449c47cbf
18
19 PKG_SOURCE_VERSION:=v$(PKG_VERSION)
20
21 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_SOURCE_SUBDIR)
22
23 PKG_LICENSE:=LGPL-2.1+exception
24 PKG_LICENSE_FILES:=LICENSE
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 += -DLWS_WITHOUT_TESTAPPS=ON
33
34 # other options worth noting
35 # CMAKE_OPTIONS += -DLWS_WITHOUT_EXTENSIONS=ON
36 # CMAKE_OPTIONS += -DLWS_WITHOUT_DAEMONIZE=ON
37 # CMAKE_OPTIONS += -DLWS_WITHOUT_SERVER=ON
38 # CMAKE_OPTIONS += -DLWS_WITHOUT_DEBUG=ON
39
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_OPENSSL_SUPPORT=ON
75 CMAKE_OPTIONS += -DLWS_WITH_SSL=ON
76 endif
77
78 ifeq ($(BUILD_VARIANT),mbedtls)
79 CMAKE_OPTIONS += -DLWS_WITH_MBEDTLS=1
80 endif
81
82 ifeq ($(BUILD_VARIANT),full)
83 CMAKE_OPTIONS += -DLWS_OPENSSL_CLIENT_CERTS=/etc/ssl/certs
84 CMAKE_OPTIONS += -DLWS_OPENSSL_SUPPORT=ON
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 endif
92
93 define Package/libwebsockets/install
94 $(INSTALL_DIR) $(1)/usr/lib
95 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libwebsockets.so* $(1)/usr/lib/
96 endef
97
98 Package/libwebsockets-mbedtls/install = $(Package/libwebsockets/install)
99 Package/libwebsockets-openssl/install = $(Package/libwebsockets/install)
100 Package/libwebsockets-full/install = $(Package/libwebsockets/install)
101
102 $(eval $(call BuildPackage,libwebsockets-openssl))
103 $(eval $(call BuildPackage,libwebsockets-mbedtls))
104 $(eval $(call BuildPackage,libwebsockets-full))