- #
- # Copyright (C) 2018 Jianhui Zhao
- #
- # This is free software, licensed under the GNU General Public License v2.
- # See /LICENSE for more information.
- #
-
- include $(TOPDIR)/rules.mk
-
- PKG_NAME:=libuwsc
- PKG_VERSION:=3.3.2
- PKG_RELEASE:=1
-
- PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
- PKG_SOURCE_URL=https://github.com/zhaojh329/libuwsc/releases/download/v$(PKG_VERSION)
- PKG_HASH:=bae2cd13eda86876ebcf99a38a069f5e8c01717713d2fec25031051b9c47624b
- PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
-
- PKG_MAINTAINER:=Jianhui Zhao <jianhuizhao329@gmail.com>
- PKG_LICENSE:=MIT
- PKG_LICENSE_FILES:=LICENSE
-
- PKG_BUILD_PARALLEL:=1
- CMAKE_INSTALL:=1
-
- PKG_CONFIG_DEPENDS:= \
- CONFIG_LIBUWSC_openssl_LUA_BINDING \
- CONFIG_LIBUWSC_wolfssl_LUA_BINDING \
- CONFIG_LIBUWSC_mbedtls_LUA_BINDING \
- CONFIG_LIBUWSC_nossl_LUA_BINDING
-
- include $(INCLUDE_DIR)/package.mk
- include $(INCLUDE_DIR)/cmake.mk
-
- define Package/libuwsc/Default
- SECTION:=libs
- CATEGORY:=Libraries
- SUBMENU:=Networking
- TITLE:=A lightweight WebSocket client library based on libev
- URL:=https://github.com/zhaojh329/libuwsc
- DEPENDS:=+libev $(2)
- VARIANT:=$(1)
- PROVIDES:=libuwsc
- endef
-
- Package/libuwsc-openssl=$(call Package/libuwsc/Default,openssl,+PACKAGE_libuwsc-openssl:libopenssl)
- Package/libuwsc-wolfssl=$(call Package/libuwsc/Default,wolfssl,+PACKAGE_libuwsc-wolfssl:libwolfssl)
- Package/libuwsc-mbedtls=$(call Package/libuwsc/Default,mbedtls,+PACKAGE_libuwsc-mbedtls:libmbedtls)
- Package/libuwsc-nossl=$(call Package/libuwsc/Default,nossl)
-
- define Package/libuwsc/config
- menu "Configuration"
- depends on PACKAGE_libuwsc-$(1)
-
- config LIBUWSC_$(1)_LUA_BINDING
- bool
- default n
- prompt "Lua binding for libuwsc"
- endmenu
- endef
-
- Package/libuwsc-openssl/config=$(call Package/libuwsc/config,openssl)
- Package/libuwsc-wolfssl/config=$(call Package/libuwsc/config,wolfssl)
- Package/libuwsc-mbedtls/config=$(call Package/libuwsc/config,mbedtls)
- Package/libuwsc-nossl/config=$(call Package/libuwsc/config,nossl)
-
- ifeq ($(BUILD_VARIANT),openssl)
- CMAKE_OPTIONS += -DUWSC_USE_OPENSSL=ON
- else ifeq ($(BUILD_VARIANT),wolfssl)
- CMAKE_OPTIONS += -DUWSC_USE_WOLFSSL=ON
- else ifeq ($(BUILD_VARIANT),mbedtls)
- CMAKE_OPTIONS += -DUWSC_USE_MBEDTLS=ON
- else
- CMAKE_OPTIONS += -DUWSC_SSL_SUPPORT=OFF
- endif
-
- ifneq ($(CONFIG_LIBUWSC_$(BUILD_VARIANT)_LUA_BINDING),)
- CMAKE_OPTIONS += -DUWSC_LUA_SUPPORT=ON
- endif
-
- define Package/libuwsc-$(BUILD_VARIANT)/install
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libuwsc.so* $(1)/usr/lib/
- ifneq ($(CONFIG_LIBUWSC_$(BUILD_VARIANT)_LUA_BINDING),)
- $(INSTALL_DIR) $(1)/usr/lib/lua
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/lua/uwsc.so $(1)/usr/lib/lua
- endif
- endef
-
- $(eval $(call BuildPackage,libuwsc-openssl))
- $(eval $(call BuildPackage,libuwsc-wolfssl))
- $(eval $(call BuildPackage,libuwsc-mbedtls))
- $(eval $(call BuildPackage,libuwsc-nossl))
|