4af84393be36f61cf4fde8465e2ab12e7a1ec048
[openwrt/svn-archive/archive.git] / package / libs / libevent2 / Makefile
1 #
2 # Copyright (C) 2011-2013 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.21
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 @SF/levent
18 PKG_MD5SUM:=b2405cc9ebf264aa47ff615d9de527a2
19 PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
20 PKG_LICENSE:=BSD-3-Clause
21
22 PKG_LICENSE:=BSD-3-Clause
23 PKG_LICENSE_FILES:=LICENSE
24
25 PKG_FIXUP:=autoreconf
26 PKG_INSTALL:=1
27 PKG_BUILD_PARALLEL:=1
28
29 include $(INCLUDE_DIR)/package.mk
30
31 define Package/libevent2/Default
32 SECTION:=libs
33 CATEGORY:=Libraries
34 TITLE:=Event notification
35 URL:=http://www.monkey.org/~provos/libevent/
36 endef
37
38 define Package/libevent2/Default/description
39 The libevent API provides a mechanism to execute a callback function
40 when a specific event occurs on a file descriptor or after a timeout
41 has been reached. Furthermore, libevent also support callbacks due
42 to signals or regular timeouts.
43
44 libevent is meant to replace the event loop found in event driven
45 network servers. An application just needs to call event_dispatch()
46 and then add or remove events dynamically without having to change
47 the event loop.
48 endef
49
50 define Package/libevent2
51 $(call Package/libevent2/Default)
52 TITLE+= library (version 2.0)
53 endef
54
55 define Package/libevent2/description
56 $(call Package/libevent2/Default/description)
57
58 This package contains the libevent shared library historically
59 containing both the core & extra libraries.
60 endef
61
62 define Package/libevent2-core
63 $(call Package/libevent2/Default)
64 TITLE+= core library (version 2.0)
65 endef
66
67 define Package/libevent2-core/description
68 $(call Package/libevent2/Default/description)
69
70 This package contains the libevent core shared library for the event,
71 buffer & utility functions.
72 endef
73
74 define Package/libevent2-extra
75 $(call Package/libevent2/Default)
76 TITLE+= extra library (version 2.0)
77 endef
78
79 define Package/libevent2-extra/description
80 $(call Package/libevent2/Default/description)
81
82 This package contains the libevent extra shared library for specific
83 protocols including HTTP, DNS & RPC.
84 endef
85
86 define Package/libevent2-openssl
87 $(call Package/libevent2/Default)
88 TITLE+= OpenSSL library (version 2.0)
89 DEPENDS+=+libopenssl
90 endef
91
92 define Package/libevent2-openssl/description
93 $(call Package/libevent2/Default/description)
94
95 This package contains the libevent OpenSSL shared library for encrypted
96 bufferevents.
97 endef
98
99 define Package/libevent2-pthreads
100 $(call Package/libevent2/Default)
101 TITLE+= Pthreads library (version 2.0)
102 DEPENDS+=+libpthread
103 endef
104
105 define Package/libevent2-pthreads/description
106 $(call Package/libevent2/Default/description)
107
108 This package contains the libevent Pthreads shared library for
109 threading & locking.
110 endef
111
112 TARGET_CFLAGS += $(FPIC)
113
114 CONFIGURE_ARGS += \
115 --enable-shared \
116 --enable-static \
117 --disable-debug-mode
118
119 MAKE_FLAGS += \
120 CFLAGS="$(TARGET_CFLAGS)"
121
122 define Build/InstallDev
123 $(INSTALL_DIR) $(1)/usr/include
124 $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
125 $(INSTALL_DIR) $(1)/usr/lib
126 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent*.{la,a,so} $(1)/usr/lib/
127 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent*-2.0.so* $(1)/usr/lib/
128 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
129 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libevent*.pc $(1)/usr/lib/pkgconfig/
130 endef
131
132 define Package/libevent2/install
133 $(INSTALL_DIR) $(1)/usr/lib
134 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent-2.0.so.* $(1)/usr/lib/
135 endef
136
137 define Package/libevent2-core/install
138 $(INSTALL_DIR) $(1)/usr/lib
139 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_core-2.0.so.* $(1)/usr/lib/
140 endef
141
142 define Package/libevent2-extra/install
143 $(INSTALL_DIR) $(1)/usr/lib
144 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_extra-2.0.so.* $(1)/usr/lib/
145 endef
146
147 define Package/libevent2-openssl/install
148 $(INSTALL_DIR) $(1)/usr/lib
149 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_openssl-2.0.so.* $(1)/usr/lib/
150 endef
151
152 define Package/libevent2-pthreads/install
153 $(INSTALL_DIR) $(1)/usr/lib
154 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent_pthreads-2.0.so.* $(1)/usr/lib/
155 endef
156
157 $(eval $(call BuildPackage,libevent2))
158 $(eval $(call BuildPackage,libevent2-core))
159 $(eval $(call BuildPackage,libevent2-extra))
160 $(eval $(call BuildPackage,libevent2-openssl))
161 $(eval $(call BuildPackage,libevent2-pthreads))