treewide: drop librt and libpthread packages
[openwrt/staging/jow.git] / package / libs / libevent2 / Makefile
index 1b1690b1035320d1bc27fe8b63232fc1e4b06e50..25203d71df3f2a2f8f326cc84e5cba5c18921a17 100644 (file)
@@ -8,28 +8,35 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=libevent2
-PKG_VERSION:=2.1.8
+PKG_VERSION:=2.1.12
 PKG_RELEASE:=1
 
-PKG_SOURCE_PROTO:=git
-PKG_SOURCE_URL:=https://github.com/libevent/libevent.git
-PKG_SOURCE_VERSION:=release-$(PKG_VERSION)-stable
-PKG_HASH:=71c2c49f0adadacfdbe6332a372c38cf9c8b7895bb73dabeaa53cdcc1d4e1fa3
+PKG_SOURCE:=libevent-$(PKG_VERSION)-stable.tar.gz
+PKG_SOURCE_URL:=https://github.com/libevent/libevent/releases/download/release-$(PKG_VERSION)-stable
+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://www.monkey.org/~provos/libevent/
+  URL:=http://libevent.org
+  ABI_VERSION:=7
 endef
 
 define Package/libevent2/Default/description
@@ -71,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
@@ -83,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
@@ -96,7 +104,7 @@ endef
 define Package/libevent2-pthreads
   $(call Package/libevent2/Default)
   TITLE+= Pthreads library (version 2.1)
-  DEPENDS+=+libpthread
+  DEPENDS+=+libevent2-core
 endef
 
 define Package/libevent2-pthreads/description
@@ -107,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