# # Copyright (C) 2014-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # include $(TOPDIR)/rules.mk PKG_NAME:=libwebsockets PKG_VERSION:=1.4-chrome43-firefox-36 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_PROTO:=git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_URL:=https://github.com/warmcat/libwebsockets.git PKG_SOURCE_VERSION:=v$(PKG_VERSION) PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_SOURCE_SUBDIR) PKG_LICENSE:=LGPL-2.1+exception PKG_LICENSE_FILES:=LICENSE CMAKE_INSTALL:=1 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk CMAKE_OPTIONS += $(if $(CONFIG_IPV6),,-DLWS_IPV6=) CMAKE_OPTIONS += -DLWS_WITHOUT_TESTAPPS=ON # other options worth noting # CMAKE_OPTIONS += -DLWS_WITHOUT_EXTENSIONS=ON # CMAKE_OPTIONS += -DLWS_WITHOUT_DAEMONIZE=ON # CMAKE_OPTIONS += -DLWS_WITHOUT_SERVER=ON # CMAKE_OPTIONS += -DLWS_WITHOUT_DEBUG=ON define Package/$(PKG_NAME)/Default SECTION:=libs CATEGORY:=Libraries TITLE:=libwebsockets DEPENDS:=+zlib URL:=https://libwebsockets.org MAINTAINER:=Karl Palsson endef define Package/libwebsockets-openssl $(call Package/$(PKG_NAME)/Default) TITLE += (OpenSSL) DEPENDS += +libopenssl VARIANT:=openssl endef define Package/libwebsockets-cyassl $(call Package/$(PKG_NAME)/Default) TITLE += (CyaSSL) DEPENDS += +libcyassl VARIANT:=cyassl endef ifeq ($(BUILD_VARIANT),openssl) CMAKE_OPTIONS += -DLWS_OPENSSL_CLIENT_CERTS=/etc/ssl/certs CMAKE_OPTIONS += -DLWS_OPENSSL_SUPPORT=ON CMAKE_OPTIONS += -DLWS_WITH_SSL=ON endif ifeq ($(BUILD_VARIANT),cyassl) CMAKE_OPTIONS += -DLWS_OPENSSL_CLIENT_CERTS=/etc/ssl/certs CMAKE_OPTIONS += -DLWS_OPENSSL_SUPPORT=ON CMAKE_OPTIONS += -DLWS_WITH_SSL=ON # for cyassl, edit package/libs/cyassl/Makefile to include --enable-opensslextra # NOTE: it will compile without it, untested whether it it's needed?! CMAKE_OPTIONS += -DLWS_USE_CYASSL=ON CMAKE_OPTIONS += -DLWS_CYASSL_LIB=$(STAGING_DIR)/usr/lib/libcyassl.so CMAKE_OPTIONS += -DLWS_CYASSL_INCLUDE_DIRS=$(STAGING_DIR)/usr/include endif define Package/libwebsockets/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libwebsockets.so* $(1)/usr/lib/ endef Package/$(PKG_NAME)-cyassl/install = $(Package/$(PKG_NAME)/install) Package/$(PKG_NAME)-openssl/install = $(Package/$(PKG_NAME)/install) $(eval $(call BuildPackage,libwebsockets-openssl)) $(eval $(call BuildPackage,libwebsockets-cyassl))