1d4afb5ceSopenharmony_ci#
2d4afb5ceSopenharmony_ci# libwebsockets makefile for openwrt
3d4afb5ceSopenharmony_ci#
4d4afb5ceSopenharmony_ci
5d4afb5ceSopenharmony_ciinclude $(TOPDIR)/rules.mk
6d4afb5ceSopenharmony_ci
7d4afb5ceSopenharmony_ciPKG_NAME:=libwebsockets
8d4afb5ceSopenharmony_ciPKG_VERSION:=2014-03-01
9d4afb5ceSopenharmony_ciPKG_RELEASE=$(PKG_SOURCE_VERSION)
10d4afb5ceSopenharmony_ci
11d4afb5ceSopenharmony_ciPKG_SOURCE_PROTO:=git
12d4afb5ceSopenharmony_ciPKG_SOURCE_URL:=https://github.com/warmcat/libwebsockets.git
13d4afb5ceSopenharmony_ciPKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
14d4afb5ceSopenharmony_ciPKG_SOURCE_VERSION:=388dc7d201d8d123841869fb49ec4d94d6dd7f54
15d4afb5ceSopenharmony_ciPKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
16d4afb5ceSopenharmony_ciCMAKE_INSTALL:=1
17d4afb5ceSopenharmony_ci
18d4afb5ceSopenharmony_ciinclude $(INCLUDE_DIR)/package.mk
19d4afb5ceSopenharmony_ciinclude $(INCLUDE_DIR)/cmake.mk
20d4afb5ceSopenharmony_ci
21d4afb5ceSopenharmony_ciCMAKE_OPTIONS += -DLWS_OPENSSL_CLIENT_CERTS=/etc/ssl/certs
22d4afb5ceSopenharmony_ciCMAKE_OPTIONS += -DLWS_OPENSSL_SUPPORT=ON
23d4afb5ceSopenharmony_ciCMAKE_OPTIONS += -DLWS_WITH_SSL=ON
24d4afb5ceSopenharmony_ciCMAKE_OPTIONS += -DLWS_WITHOUT_TESTAPPS=$(if $(CONFIG_PACKAGE_libwebsockets-examples),"OFF","ON")
25d4afb5ceSopenharmony_ci
26d4afb5ceSopenharmony_ci# for wolfssl, define these in addition to LWS_OPENSSL_SUPPORT and
27d4afb5ceSopenharmony_ci# edit package/libs/wolfssl/Makefile to include --enable-opensslextra
28d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_WITH_WOLFSSL=ON
29d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_WOLFSSL_LIBRARIES=$(STAGING_DIR)/usr/lib/libwolfssl.so
30d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_WOLFSSL_INCLUDE_DIRS=$(STAGING_DIR)/usr/include
31d4afb5ceSopenharmony_ci
32d4afb5ceSopenharmony_ci# for cyassl, define these in addition to LWS_OPENSSL_SUPPORT and
33d4afb5ceSopenharmony_ci# edit package/libs/wolfssl/Makefile to include --enable-opensslextra
34d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_WITH_CYASSL=ON
35d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_CYASSL_LIBRARIES=$(STAGING_DIR)/usr/lib/libcyassl.so
36d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_CYASSL_INCLUDE_DIRS=$(STAGING_DIR)/usr/include
37d4afb5ceSopenharmony_ci
38d4afb5ceSopenharmony_ci# other options worth noting
39d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_WITHOUT_EXTENSIONS=ON
40d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_WITHOUT_DAEMONIZE=ON
41d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_WITHOUT_SERVER=ON
42d4afb5ceSopenharmony_ci# CMAKE_OPTIONS += -DLWS_WITHOUT_DEBUG=ON
43d4afb5ceSopenharmony_ci
44d4afb5ceSopenharmony_ci
45d4afb5ceSopenharmony_cidefine Package/libwebsockets/Default
46d4afb5ceSopenharmony_ci	SECTION:=libs
47d4afb5ceSopenharmony_ci	CATEGORY:=Libraries
48d4afb5ceSopenharmony_ci	TITLE:=libwebsockets
49d4afb5ceSopenharmony_ci	DEPENDS:=+zlib +libopenssl
50d4afb5ceSopenharmony_ciendef
51d4afb5ceSopenharmony_ci
52d4afb5ceSopenharmony_cidefine Package/libwebsockets
53d4afb5ceSopenharmony_ci	$(call Package/libwebsockets/Default)
54d4afb5ceSopenharmony_ci	TITLE+= (libraries)
55d4afb5ceSopenharmony_ciendef
56d4afb5ceSopenharmony_ci
57d4afb5ceSopenharmony_cidefine Package/libwebsockets/description
58d4afb5ceSopenharmony_ci	libwebsockets
59d4afb5ceSopenharmony_ci	This package contains libwebsocket libraries
60d4afb5ceSopenharmony_ciendef
61d4afb5ceSopenharmony_ci
62d4afb5ceSopenharmony_cidefine Package/libwebsockets-examples
63d4afb5ceSopenharmony_ci	$(call Package/libwebsockets/Default)
64d4afb5ceSopenharmony_ci	DEPENDS:=libwebsockets
65d4afb5ceSopenharmony_ci	TITLE+= (examples)
66d4afb5ceSopenharmony_ciendef
67d4afb5ceSopenharmony_ci
68d4afb5ceSopenharmony_cidefine Package/libwebsockets-examples/description
69d4afb5ceSopenharmony_ci	libwebsockets examples
70d4afb5ceSopenharmony_ci	This package contains libwebsockets examples
71d4afb5ceSopenharmony_ciendef
72d4afb5ceSopenharmony_ci
73d4afb5ceSopenharmony_cidefine Package/libwebsockets/install
74d4afb5ceSopenharmony_ci	$(INSTALL_DIR) $(1)/usr/lib
75d4afb5ceSopenharmony_ci	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libwebsockets.so* $(1)/usr/lib/
76d4afb5ceSopenharmony_ciendef
77d4afb5ceSopenharmony_ci
78d4afb5ceSopenharmony_cidefine Package/libwebsockets-examples/install
79d4afb5ceSopenharmony_ci	$(INSTALL_DIR) $(1)/usr/bin
80d4afb5ceSopenharmony_ci	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/libwebsockets-test-client $(1)/usr/bin/
81d4afb5ceSopenharmony_ci	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/libwebsockets-test-echo $(1)/usr/bin/
82d4afb5ceSopenharmony_ci	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/libwebsockets-test-fraggle $(1)/usr/bin/
83d4afb5ceSopenharmony_ci	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/libwebsockets-test-ping $(1)/usr/bin/
84d4afb5ceSopenharmony_ci	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/libwebsockets-test-server $(1)/usr/bin/
85d4afb5ceSopenharmony_ci	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/libwebsockets-test-server-extpoll $(1)/usr/bin/
86d4afb5ceSopenharmony_ci
87d4afb5ceSopenharmony_ci	$(INSTALL_DIR) $(1)/usr/share/libwebsockets-test-server
88d4afb5ceSopenharmony_ci	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/libwebsockets-test-server/favicon.ico $(1)/usr/share/libwebsockets-test-server/
89d4afb5ceSopenharmony_ci	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/libwebsockets-test-server/leaf.jpg $(1)/usr/share/libwebsockets-test-server/
90d4afb5ceSopenharmony_ci	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/libwebsockets-test-server/libwebsockets.org-logo.png $(1)/usr/share/libwebsockets-test-server/
91d4afb5ceSopenharmony_ci	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/libwebsockets-test-server/libwebsockets-test-server.key.pem $(1)/usr/share/libwebsockets-test-server/
92d4afb5ceSopenharmony_ci	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/libwebsockets-test-server/libwebsockets-test-server.pem $(1)/usr/share/libwebsockets-test-server/
93d4afb5ceSopenharmony_ci	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/libwebsockets-test-server/test.html $(1)/usr/share/libwebsockets-test-server/
94d4afb5ceSopenharmony_ciendef
95d4afb5ceSopenharmony_ci
96d4afb5ceSopenharmony_ci$(eval $(call BuildPackage,libwebsockets))
97d4afb5ceSopenharmony_ci$(eval $(call BuildPackage,libwebsockets-examples))
98