2012-10-19 18:08:19 +00:00
|
|
|
#
|
2015-02-06 10:30:04 +00:00
|
|
|
# Copyright (C) 2011-2015 OpenWrt.org
|
2012-10-19 18:08:19 +00:00
|
|
|
#
|
|
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
|
|
# See /LICENSE for more information.
|
|
|
|
#
|
|
|
|
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
|
|
|
|
PKG_NAME:=libevent2
|
2021-01-04 00:28:18 +00:00
|
|
|
PKG_VERSION:=2.1.12
|
|
|
|
PKG_RELEASE:=1
|
2018-08-17 20:31:48 +00:00
|
|
|
|
|
|
|
PKG_SOURCE:=libevent-$(PKG_VERSION)-stable.tar.gz
|
|
|
|
PKG_SOURCE_URL:=https://github.com/libevent/libevent/releases/download/release-$(PKG_VERSION)-stable
|
2021-01-04 00:28:18 +00:00
|
|
|
PKG_HASH:=92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb
|
2018-08-17 20:31:48 +00:00
|
|
|
PKG_BUILD_DIR:=$(BUILD_DIR)/libevent-$(PKG_VERSION)-stable
|
2012-10-19 18:08:19 +00:00
|
|
|
|
2016-06-07 09:42:32 +00:00
|
|
|
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
|
2014-11-02 12:20:54 +00:00
|
|
|
PKG_LICENSE:=BSD-3-Clause
|
2019-11-02 21:37:26 +00:00
|
|
|
PKG_LICENSE_FILES:=LICENSE
|
2017-09-28 02:55:46 +00:00
|
|
|
PKG_CPE_ID:=cpe:/a:libevent_project:libevent
|
2012-10-19 18:08:19 +00:00
|
|
|
|
2019-02-23 22:38:04 +00:00
|
|
|
PKG_CONFIG_DEPENDS:= \
|
|
|
|
CONFIG_PACKAGE_libevent2-openssl \
|
2020-12-29 17:13:50 +00:00
|
|
|
CONFIG_PACKAGE_libevent2-pthreads \
|
2019-02-23 22:38:04 +00:00
|
|
|
CONFIG_PACKAGE_libevent2-mbedtls
|
2012-10-19 18:08:19 +00:00
|
|
|
|
2023-02-02 20:33:38 +00:00
|
|
|
PKG_BUILD_FLAGS:=gc-sections lto
|
2023-02-02 20:16:21 +00:00
|
|
|
|
2012-10-19 18:08:19 +00:00
|
|
|
include $(INCLUDE_DIR)/package.mk
|
2019-02-23 22:38:04 +00:00
|
|
|
include $(INCLUDE_DIR)/cmake.mk
|
2012-10-19 18:08:19 +00:00
|
|
|
|
|
|
|
define Package/libevent2/Default
|
|
|
|
SECTION:=libs
|
|
|
|
CATEGORY:=Libraries
|
|
|
|
TITLE:=Event notification
|
2018-08-17 20:31:48 +00:00
|
|
|
URL:=http://libevent.org
|
2019-02-23 22:38:04 +00:00
|
|
|
ABI_VERSION:=7
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2/Default/description
|
|
|
|
The libevent API provides a mechanism to execute a callback function
|
|
|
|
when a specific event occurs on a file descriptor or after a timeout
|
|
|
|
has been reached. Furthermore, libevent also support callbacks due
|
|
|
|
to signals or regular timeouts.
|
|
|
|
|
|
|
|
libevent is meant to replace the event loop found in event driven
|
|
|
|
network servers. An application just needs to call event_dispatch()
|
|
|
|
and then add or remove events dynamically without having to change
|
|
|
|
the event loop.
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2
|
|
|
|
$(call Package/libevent2/Default)
|
2016-10-31 13:55:44 +00:00
|
|
|
TITLE+= library (version 2.1)
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2/description
|
|
|
|
$(call Package/libevent2/Default/description)
|
|
|
|
|
|
|
|
This package contains the libevent shared library historically
|
|
|
|
containing both the core & extra libraries.
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-core
|
|
|
|
$(call Package/libevent2/Default)
|
2016-10-31 13:55:44 +00:00
|
|
|
TITLE+= core library (version 2.1)
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-core/description
|
|
|
|
$(call Package/libevent2/Default/description)
|
|
|
|
|
|
|
|
This package contains the libevent core shared library for the event,
|
|
|
|
buffer & utility functions.
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-extra
|
|
|
|
$(call Package/libevent2/Default)
|
2016-10-31 13:55:44 +00:00
|
|
|
TITLE+= extra library (version 2.1)
|
2019-02-23 22:38:04 +00:00
|
|
|
DEPENDS+=+libevent2-core
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-extra/description
|
|
|
|
$(call Package/libevent2/Default/description)
|
|
|
|
|
|
|
|
This package contains the libevent extra shared library for specific
|
|
|
|
protocols including HTTP, DNS & RPC.
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-openssl
|
|
|
|
$(call Package/libevent2/Default)
|
2016-10-31 13:55:44 +00:00
|
|
|
TITLE+= OpenSSL library (version 2.1)
|
2019-02-23 22:38:04 +00:00
|
|
|
DEPENDS+=+libopenssl +libevent2-core
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-openssl/description
|
|
|
|
$(call Package/libevent2/Default/description)
|
|
|
|
|
|
|
|
This package contains the libevent OpenSSL shared library for encrypted
|
|
|
|
bufferevents.
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-pthreads
|
|
|
|
$(call Package/libevent2/Default)
|
2016-10-31 13:55:44 +00:00
|
|
|
TITLE+= Pthreads library (version 2.1)
|
2019-02-23 22:38:04 +00:00
|
|
|
DEPENDS+=+libpthread +libevent2-core
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-pthreads/description
|
|
|
|
$(call Package/libevent2/Default/description)
|
|
|
|
|
|
|
|
This package contains the libevent Pthreads shared library for
|
|
|
|
threading & locking.
|
|
|
|
endef
|
|
|
|
|
2023-02-02 20:33:38 +00:00
|
|
|
TARGET_CFLAGS += $(FPIC)
|
|
|
|
TARGET_LDFLAGS += -Wl,--as-needed
|
2012-10-19 18:08:19 +00:00
|
|
|
|
2019-02-23 22:38:04 +00:00
|
|
|
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
|
2012-10-19 18:08:19 +00:00
|
|
|
|
|
|
|
define Build/InstallDev
|
2019-11-02 21:37:26 +00:00
|
|
|
$(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
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2/install
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
2016-10-31 13:55:44 +00:00
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent-2.1.so.* $(1)/usr/lib/
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-core/install
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
2016-10-31 13:55:44 +00:00
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_core-2.1.so.* $(1)/usr/lib/
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-extra/install
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
2016-10-31 13:55:44 +00:00
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_extra-2.1.so.* $(1)/usr/lib/
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-openssl/install
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
2016-10-31 13:55:44 +00:00
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_openssl-2.1.so.* $(1)/usr/lib/
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libevent2-pthreads/install
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
2016-10-31 13:55:44 +00:00
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_pthreads-2.1.so.* $(1)/usr/lib/
|
2012-10-19 18:08:19 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
$(eval $(call BuildPackage,libevent2))
|
|
|
|
$(eval $(call BuildPackage,libevent2-core))
|
|
|
|
$(eval $(call BuildPackage,libevent2-extra))
|
|
|
|
$(eval $(call BuildPackage,libevent2-openssl))
|
|
|
|
$(eval $(call BuildPackage,libevent2-pthreads))
|