2 # Copyright (C) 2011-2015 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR)/rules.mk
14 PKG_BUILD_DIR:=$(BUILD_DIR)/libevent-$(PKG_VERSION)-stable
15 PKG_SOURCE:=libevent-$(PKG_VERSION)-stable.tar.gz
16 PKG_SOURCE_URL:=http://www.monkey.org/~provos/ \
18 PKG_MD5SUM:=c4c56f986aa985677ca1db89630a2e11
19 PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
20 PKG_LICENSE:=BSD-3-Clause
26 include $(INCLUDE_DIR)/package.mk
28 define Package/libevent2/Default
31 TITLE:=Event notification
32 URL:=http://www.monkey.org/~provos/libevent/
35 define Package/libevent2/Default/description
36 The libevent API provides a mechanism to execute a callback function
37 when a specific event occurs on a file descriptor or after a timeout
38 has been reached. Furthermore, libevent also support callbacks due
39 to signals or regular timeouts.
41 libevent is meant to replace the event loop found in event driven
42 network servers. An application just needs to call event_dispatch()
43 and then add or remove events dynamically without having to change
47 define Package/libevent2
48 $(call Package/libevent2/Default)
49 TITLE+= library (version 2.0)
52 define Package/libevent2/description
53 $(call Package/libevent2/Default/description)
55 This package contains the libevent shared library historically
56 containing both the core & extra libraries.
59 define Package/libevent2-core
60 $(call Package/libevent2/Default)
61 TITLE+= core library (version 2.0)
64 define Package/libevent2-core/description
65 $(call Package/libevent2/Default/description)
67 This package contains the libevent core shared library for the event,
68 buffer & utility functions.
71 define Package/libevent2-extra
72 $(call Package/libevent2/Default)
73 TITLE+= extra library (version 2.0)
76 define Package/libevent2-extra/description
77 $(call Package/libevent2/Default/description)
79 This package contains the libevent extra shared library for specific
80 protocols including HTTP, DNS & RPC.
83 define Package/libevent2-openssl
84 $(call Package/libevent2/Default)
85 TITLE+= OpenSSL library (version 2.0)
89 define Package/libevent2-openssl/description
90 $(call Package/libevent2/Default/description)
92 This package contains the libevent OpenSSL shared library for encrypted
96 define Package/libevent2-pthreads
97 $(call Package/libevent2/Default)
98 TITLE+= Pthreads library (version 2.0)
102 define Package/libevent2-pthreads/description
103 $(call Package/libevent2/Default/description)
105 This package contains the libevent Pthreads shared library for
109 TARGET_CFLAGS += $(FPIC)
117 CFLAGS="$(TARGET_CFLAGS)"
119 define Build/InstallDev
120 $(INSTALL_DIR) $(1)/usr/include
121 $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
122 $(INSTALL_DIR) $(1)/usr/lib
123 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent*.{la,a,so} $(1)/usr/lib/
124 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent*-2.0.so* $(1)/usr/lib/
125 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
126 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libevent*.pc $(1)/usr/lib/pkgconfig/
129 define Package/libevent2/install
130 $(INSTALL_DIR) $(1)/usr/lib
131 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent-2.0.so.* $(1)/usr/lib/
134 define Package/libevent2-core/install
135 $(INSTALL_DIR) $(1)/usr/lib
136 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_core-2.0.so.* $(1)/usr/lib/
139 define Package/libevent2-extra/install
140 $(INSTALL_DIR) $(1)/usr/lib
141 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_extra-2.0.so.* $(1)/usr/lib/
144 define Package/libevent2-openssl/install
145 $(INSTALL_DIR) $(1)/usr/lib
146 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_openssl-2.0.so.* $(1)/usr/lib/
149 define Package/libevent2-pthreads/install
150 $(INSTALL_DIR) $(1)/usr/lib
151 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_pthreads-2.0.so.* $(1)/usr/lib/
154 $(eval $(call BuildPackage,libevent2))
155 $(eval $(call BuildPackage,libevent2-core))
156 $(eval $(call BuildPackage,libevent2-extra))
157 $(eval $(call BuildPackage,libevent2-openssl))
158 $(eval $(call BuildPackage,libevent2-pthreads))