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