[packages] libevent2: update to 2.0.12, add core, extra, openssl & pthreads packages
[openwrt/svn-archive/archive.git] / libs / libevent2 / Makefile
1 #
2 # Copyright (C) 2011 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=libevent2
11 PKG_VERSION:=2.0.12
12 PKG_RELEASE:=1
13
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
18
19 PKG_FIXUP:=libtool
20 PKG_INSTALL:=1
21 PKG_BUILD_PARALLEL:=1
22
23 include $(INCLUDE_DIR)/package.mk
24
25 define Package/libevent2/Default
26 SECTION:=libs
27 CATEGORY:=Libraries
28 TITLE:=Event notification
29 URL:=http://www.monkey.org/~provos/libevent/
30 endef
31
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.
37
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
41 the event loop.
42 endef
43
44 define Package/libevent2
45 $(call Package/libevent2/Default)
46 TITLE+= library (version 2.0)
47 endef
48
49 define Package/libevent2/description
50 $(call Package/libevent2/Default/description)
51
52 This package contains the libevent shared library historically
53 containing both the core & extra libraries.
54 endef
55
56 define Package/libevent2-core
57 $(call Package/libevent2/Default)
58 TITLE+= core library (version 2.0)
59 endef
60
61 define Package/libevent2-core/description
62 $(call Package/libevent2/Default/description)
63
64 This package contains the libevent core shared library for the event,
65 buffer & utility functions.
66 endef
67
68 define Package/libevent2-extra
69 $(call Package/libevent2/Default)
70 TITLE+= extra library (version 2.0)
71 endef
72
73 define Package/libevent2-extra/description
74 $(call Package/libevent2/Default/description)
75
76 This package contains the libevent extra shared library for specific
77 protocols including HTTP, DNS & RPC.
78 endef
79
80 define Package/libevent2-openssl
81 $(call Package/libevent2/Default)
82 TITLE+= OpenSSL library (version 2.0)
83 DEPENDS:=+libopenssl
84 endef
85
86 define Package/libevent2-openssl/description
87 $(call Package/libevent2/Default/description)
88
89 This package contains the libevent OpenSSL shared library for encrypted
90 bufferevents.
91 endef
92
93 define Package/libevent2-pthreads
94 $(call Package/libevent2/Default)
95 TITLE+= Pthreads library (version 2.0)
96 DEPENDS:=+libpthread
97 endef
98
99 define Package/libevent2-pthreads/description
100 $(call Package/libevent2/Default/description)
101
102 This package contains the libevent Pthreads shared library for
103 threading & locking.
104 endef
105
106 TARGET_CFLAGS += $(FPIC)
107
108 CONFIGURE_ARGS += \
109 --enable-shared \
110 --enable-static
111
112 MAKE_FLAGS += \
113 CFLAGS="$(TARGET_CFLAGS)"
114
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/
123 endef
124
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/
128 endef
129
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/
133 endef
134
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/
138 endef
139
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/
143 endef
144
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/
148 endef
149
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))