2 # Copyright (C) 2011 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/
17 PKG_MD5SUM:=42986228baf95e325778ed328a93e070
23 include $(INCLUDE_DIR)/package.mk
25 define Package/libevent2/Default
28 TITLE:=Event notification
29 URL:=http://www.monkey.org/~provos/libevent/
32 define Package/libevent2/Default/description
33 The libevent API provides a mechanism to execute a callback function
34 when a specific event occurs on a file descriptor or after a timeout
35 has been reached. Furthermore, libevent also support callbacks due
36 to signals or regular timeouts.
38 libevent is meant to replace the event loop found in event driven
39 network servers. An application just needs to call event_dispatch()
40 and then add or remove events dynamically without having to change
44 define Package/libevent2
45 $(call Package/libevent2/Default)
46 TITLE+= library (version 2.0)
49 define Package/libevent2/description
50 $(call Package/libevent2/Default/description)
52 This package contains the libevent shared library historically
53 containing both the core & extra libraries.
56 define Package/libevent2-core
57 $(call Package/libevent2/Default)
58 TITLE+= core library (version 2.0)
61 define Package/libevent2-core/description
62 $(call Package/libevent2/Default/description)
64 This package contains the libevent core shared library for the event,
65 buffer & utility functions.
68 define Package/libevent2-extra
69 $(call Package/libevent2/Default)
70 TITLE+= extra library (version 2.0)
73 define Package/libevent2-extra/description
74 $(call Package/libevent2/Default/description)
76 This package contains the libevent extra shared library for specific
77 protocols including HTTP, DNS & RPC.
80 define Package/libevent2-openssl
81 $(call Package/libevent2/Default)
82 TITLE+= OpenSSL library (version 2.0)
86 define Package/libevent2-openssl/description
87 $(call Package/libevent2/Default/description)
89 This package contains the libevent OpenSSL shared library for encrypted
93 define Package/libevent2-pthreads
94 $(call Package/libevent2/Default)
95 TITLE+= Pthreads library (version 2.0)
99 define Package/libevent2-pthreads/description
100 $(call Package/libevent2/Default/description)
102 This package contains the libevent Pthreads shared library for
106 TARGET_CFLAGS += $(FPIC)
113 CFLAGS="$(TARGET_CFLAGS)"
115 define Build/InstallDev
116 $(INSTALL_DIR) $(1)/usr/include
117 $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
118 $(INSTALL_DIR) $(1)/usr/lib
119 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent*.{la,a,so} $(1)/usr/lib/
120 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent*-2.0.so* $(1)/usr/lib/
121 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
122 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libevent*.pc $(1)/usr/lib/pkgconfig/
125 define Package/libevent2/install
126 $(INSTALL_DIR) $(1)/usr/lib
127 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent-2.0.so.* $(1)/usr/lib/
130 define Package/libevent2-core/install
131 $(INSTALL_DIR) $(1)/usr/lib
132 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_core-2.0.so.* $(1)/usr/lib/
135 define Package/libevent2-extra/install
136 $(INSTALL_DIR) $(1)/usr/lib
137 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_extra-2.0.so.* $(1)/usr/lib/
140 define Package/libevent2-openssl/install
141 $(INSTALL_DIR) $(1)/usr/lib
142 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_openssl-2.0.so.* $(1)/usr/lib/
145 define Package/libevent2-pthreads/install
146 $(INSTALL_DIR) $(1)/usr/lib
147 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_pthreads-2.0.so.* $(1)/usr/lib/
150 $(eval $(call BuildPackage,libevent2))
151 $(eval $(call BuildPackage,libevent2-core))
152 $(eval $(call BuildPackage,libevent2-extra))
153 $(eval $(call BuildPackage,libevent2-openssl))
154 $(eval $(call BuildPackage,libevent2-pthreads))