libevent2: make cmake use relative imported path
[openwrt/staging/stintel.git] / package / libs / libevent2 / Makefile
index 26100d84bf5aae7e390e341f1a6dd54950adf19a..e0a080d60e240d45e79bab7ba564e4dcf19b5e5b 100644 (file)
@@ -8,29 +8,35 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=libevent2
-PKG_VERSION:=2.1.8
+PKG_VERSION:=2.1.12
 PKG_RELEASE:=2
 
 PKG_SOURCE:=libevent-$(PKG_VERSION)-stable.tar.gz
 PKG_SOURCE_URL:=https://github.com/libevent/libevent/releases/download/release-$(PKG_VERSION)-stable
-PKG_HASH:=965cc5a8bb46ce4199a47e9b2c9e1cae3b137e8356ffdad6d94d3b9069b71dc2
+PKG_HASH:=92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb
 PKG_BUILD_DIR:=$(BUILD_DIR)/libevent-$(PKG_VERSION)-stable
 
 PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
 PKG_LICENSE:=BSD-3-Clause
+PKG_LICENSE_FILES:=LICENSE
 PKG_CPE_ID:=cpe:/a:libevent_project:libevent
 
-PKG_FIXUP:=autoreconf
-PKG_INSTALL:=1
-PKG_BUILD_PARALLEL:=1
+PKG_CONFIG_DEPENDS:= \
+       CONFIG_PACKAGE_libevent2-openssl \
+       CONFIG_PACKAGE_libevent2-pthreads \
+       CONFIG_PACKAGE_libevent2-mbedtls
+
+PKG_BUILD_FLAGS:=gc-sections lto
 
 include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
 
 define Package/libevent2/Default
   SECTION:=libs
   CATEGORY:=Libraries
   TITLE:=Event notification
   URL:=http://libevent.org
+  ABI_VERSION:=7
 endef
 
 define Package/libevent2/Default/description
@@ -72,6 +78,7 @@ endef
 define Package/libevent2-extra
   $(call Package/libevent2/Default)
   TITLE+= extra library (version 2.1)
+  DEPENDS+=+libevent2-core
 endef
 
 define Package/libevent2-extra/description
@@ -84,7 +91,7 @@ endef
 define Package/libevent2-openssl
   $(call Package/libevent2/Default)
   TITLE+= OpenSSL library (version 2.1)
-  DEPENDS+=+libopenssl
+  DEPENDS+=+libopenssl +libevent2-core
 endef
 
 define Package/libevent2-openssl/description
@@ -97,7 +104,7 @@ endef
 define Package/libevent2-pthreads
   $(call Package/libevent2/Default)
   TITLE+= Pthreads library (version 2.1)
-  DEPENDS+=+libpthread
+  DEPENDS+=+libpthread +libevent2-core
 endef
 
 define Package/libevent2-pthreads/description
@@ -108,23 +115,22 @@ define Package/libevent2-pthreads/description
 endef
 
 TARGET_CFLAGS += $(FPIC)
-
-CONFIGURE_ARGS += \
-       --enable-shared \
-       --enable-static \
-       --disable-debug-mode
-
-MAKE_FLAGS += \
-       CFLAGS="$(TARGET_CFLAGS)"
+TARGET_LDFLAGS += -Wl,--as-needed
+
+CMAKE_OPTIONS += \
+       -DEVENT__DISABLE_BENCHMARK:BOOL=ON \
+       -DEVENT__DISABLE_DEBUG_MODE:BOOL=ON \
+       -DEVENT__DISABLE_REGRESS:BOOL=ON \
+       -DEVENT__DISABLE_SAMPLES:BOOL=ON \
+       $(if $(CONFIG_PACKAGE_libevent2-openssl),-DEVENT__DISABLE_OPENSSL:BOOL=OFF,-DEVENT__DISABLE_OPENSSL:BOOL=ON) \
+       $(if $(CONFIG_PACKAGE_libevent2-pthreads),-DEVENT__DISABLE_THREAD_SUPPORT:BOOL=OFF,-DEVENT__DISABLE_THREAD_SUPPORT:BOOL=ON) \
+       -DEVENT__DISABLE_TESTS:BOOL=ON \
+       -DBUILD_TESTING:BOOL=OFF
 
 define Build/InstallDev
-       $(INSTALL_DIR) $(1)/usr/include
-       $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
-       $(INSTALL_DIR) $(1)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent*.{la,a,so} $(1)/usr/lib/
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent*-2.1.so* $(1)/usr/lib/
-       $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libevent*.pc $(1)/usr/lib/pkgconfig/
+       $(call Build/InstallDev/cmake,$(1))
+       $(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/libevent*.pc
+       $(SED) 's,/usr/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/libevent*.pc
 endef
 
 define Package/libevent2/install