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
define Package/libevent2-extra
$(call Package/libevent2/Default)
TITLE+= extra library (version 2.1)
+ DEPENDS+=+libevent2-core
endef
define Package/libevent2-extra/description
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
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
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