openwrt/package/libs/ustream-ssl/Makefile
Jo-Philipp Wich 797e5c1c48 packages: set more explicit ABI_VERSION values
In the case of upstream libraries, set the ABI_VERSION variable to the
soname value of the first version version after the last backwards
incompatible change.

For custom OpenWrt libraries, set the ABI_VERSION to the date of the
last Git commit doing backwards incompatible changes to the source,
such as changing function singatures or dropping exported symbols.

The soname values have been determined by either checking
https://abi-laboratory.pro/index.php?view=tracker or - in the case
of OpenWrt libraries - by carefully reviewing the changes made to
header files thorough the corresponding Git history.

In the future, the ABI_VERSION values must be bumped whenever the
library is updated to an incpompatible version but not with every
package update, in order to reduce the dependency churn in the
binary package repository.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-19 14:31:51 +01:00

73 lines
1.9 KiB
Makefile

include $(TOPDIR)/rules.mk
PKG_NAME:=ustream-ssl
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/ustream-ssl.git
PKG_SOURCE_DATE:=2018-07-30
PKG_SOURCE_VERSION:=23a3f2830341acd1db149175baf7315a33bd0edb
PKG_MIRROR_HASH:=289bef5dac684015b6a40cfd72cf1c8c297bb77cf2efd54e562b628ba3afd83d
CMAKE_INSTALL:=1
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_SOURCE_SUBDIR)
PKG_LICENSE:=ISC
PKG_LICENSE_FILES:=
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/libustream/default
SECTION:=libs
CATEGORY:=Libraries
TITLE:=ustream SSL Library
DEPENDS:=+libubox
ABI_VERSION:=20150806
endef
define Package/libustream-openssl
$(Package/libustream/default)
TITLE += (openssl)
DEPENDS += +PACKAGE_libustream-openssl:libopenssl
VARIANT:=openssl
endef
define Package/libustream-wolfssl
$(Package/libustream/default)
TITLE += (wolfssl)
DEPENDS += +PACKAGE_libustream-wolfssl:libwolfssl
VARIANT:=wolfssl
endef
define Package/libustream-mbedtls
$(Package/libustream/default)
TITLE += (mbedtls)
DEPENDS += +libmbedtls
VARIANT:=mbedtls
DEFAULT_VARIANT:=1
endef
ifeq ($(BUILD_VARIANT),wolfssl)
TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include/cyassl -DHAVE_SNI
CMAKE_OPTIONS += -DCYASSL=on
endif
ifeq ($(BUILD_VARIANT),mbedtls)
CMAKE_OPTIONS += -DMBEDTLS=on
endif
define Package/libustream/default/install
$(INSTALL_DIR) $(1)/lib/
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libustream-ssl.so $(1)/lib/
endef
Package/libustream-openssl/install = $(Package/libustream/default/install)
Package/libustream-wolfssl/install = $(Package/libustream/default/install)
Package/libustream-mbedtls/install = $(Package/libustream/default/install)
$(eval $(call BuildPackage,libustream-mbedtls))
$(eval $(call BuildPackage,libustream-wolfssl))
$(eval $(call BuildPackage,libustream-openssl))