[packages] licensing: Licensing metadata added to many packages
[openwrt/svn-archive/archive.git] / net / lighttpd / Makefile
1 #
2 # Copyright (C) 2006-2012 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:=lighttpd
11 PKG_VERSION:=1.4.30
12 PKG_RELEASE:=2
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
15 PKG_SOURCE_URL:=http://download.lighttpd.net/lighttpd/releases-1.4.x
16 PKG_MD5SUM:=4630517b8342d4ec0a2d61a0a9e05c82
17
18 PKG_LICENSE:=BSD-3c
19 PKG_LICENSE_FILES:=COPYING
20
21 PKG_FIXUP:=autoreconf
22 PKG_INSTALL:=1
23
24 include $(INCLUDE_DIR)/package.mk
25
26 define Package/lighttpd/Default
27 SUBMENU:=Web Servers/Proxies
28 SECTION:=net
29 CATEGORY:=Network
30 URL:=http://www.lighttpd.net/
31 endef
32
33 define Package/lighttpd
34 $(call Package/lighttpd/Default)
35 MENU:=1
36 DEPENDS:=+LIGHTTPD_SSL:libopenssl +libpcre +libpthread
37 TITLE:=A flexible and lightweight web server
38 endef
39
40 define Package/lighttpd/config
41 config LIGHTTPD_SSL
42 bool "SSL support"
43 depends on PACKAGE_lighttpd
44 default y
45 help
46 Implements SSL support in lighttpd (using libopenssl). This
47 option is required if you enable the SSL engine in your
48 lighttpd confguration file.
49 endef
50
51 define Package/lighttpd-mod-access
52 $(call Package/lighttpd/Default)
53 DEPENDS:=lighttpd
54 TITLE:=Access restrictions module
55 endef
56
57 define Package/lighttpd-mod-accesslog
58 $(call Package/lighttpd/Default)
59 DEPENDS:=lighttpd
60 TITLE:=Access logging module
61 endef
62
63 define Package/lighttpd-mod-alias
64 $(call Package/lighttpd/Default)
65 DEPENDS:=lighttpd
66 TITLE:=Directory alias module
67 endef
68
69 define Package/lighttpd-mod-auth
70 $(call Package/lighttpd/Default)
71 DEPENDS:=lighttpd
72 TITLE:=Authentication module
73 endef
74
75 define Package/lighttpd-mod-cgi
76 $(call Package/lighttpd/Default)
77 DEPENDS:=lighttpd
78 TITLE:=CGI module
79 endef
80
81 define Package/lighttpd-mod-cml
82 $(call Package/lighttpd/Default)
83 DEPENDS:=lighttpd
84 TITLE:=Cache Meta Language module
85 endef
86
87 define Package/lighttpd-mod-compress
88 $(call Package/lighttpd/Default)
89 DEPENDS:=lighttpd +zlib
90 TITLE:=Compress output module
91 endef
92
93 define Package/lighttpd-mod-evasive
94 $(call Package/lighttpd/Default)
95 DEPENDS:=lighttpd
96 TITLE:=Evasive module
97 endef
98
99 define Package/lighttpd-mod-evhost
100 $(call Package/lighttpd/Default)
101 DEPENDS:=lighttpd
102 TITLE:=Exnhanced Virtual-Hosting module
103 endef
104
105 define Package/lighttpd-mod-expire
106 $(call Package/lighttpd/Default)
107 DEPENDS:=lighttpd
108 TITLE:=Expire module
109 endef
110
111 define Package/lighttpd-mod-extforward
112 $(call Package/lighttpd/Default)
113 DEPENDS:=lighttpd
114 TITLE:=Extract client IP module
115 endef
116
117 define Package/lighttpd-mod-fastcgi
118 $(call Package/lighttpd/Default)
119 DEPENDS:=lighttpd
120 TITLE:=FastCGI module
121 endef
122
123 define Package/lighttpd-mod-flv-streaming
124 $(call Package/lighttpd/Default)
125 DEPENDS:=lighttpd
126 TITLE:=flv streaming module
127 endef
128
129 define Package/lighttpd-mod-magnet
130 $(call Package/lighttpd/Default)
131 DEPENDS:=lighttpd
132 TITLE:=magnet module
133 endef
134
135 define Package/lighttpd-mod-mysql-vhost
136 $(call Package/lighttpd/Default)
137 DEPENDS:=lighttpd +libmysqlclient
138 TITLE:=Mysql virtual hosting module
139 endef
140
141 define Package/lighttpd-mod-proxy
142 $(call Package/lighttpd/Default)
143 DEPENDS:=lighttpd
144 TITLE:=Proxy module
145 endef
146
147 define Package/lighttpd-mod-redirect
148 $(call Package/lighttpd/Default)
149 DEPENDS:=lighttpd +libpcre
150 TITLE:=URL redirection module
151 endef
152
153 define Package/lighttpd-mod-rewrite
154 $(call Package/lighttpd/Default)
155 DEPENDS:=lighttpd +libpcre
156 TITLE:=URL rewriting module
157 endef
158
159 define Package/lighttpd-mod-rrdtool
160 $(call Package/lighttpd/Default)
161 DEPENDS:=lighttpd
162 TITLE:=rrdtool module
163 endef
164
165 define Package/lighttpd-mod-scgi
166 $(call Package/lighttpd/Default)
167 DEPENDS:=lighttpd
168 TITLE:=SCGI module
169 endef
170
171 define Package/lighttpd-mod-secdownload
172 $(call Package/lighttpd/Default)
173 DEPENDS:=lighttpd
174 TITLE:=Secure and fast download module
175 endef
176
177 define Package/lighttpd-mod-setenv
178 $(call Package/lighttpd/Default)
179 DEPENDS:=lighttpd
180 TITLE:=Environment variable setting module
181 endef
182
183 define Package/lighttpd-mod-simple-vhost
184 $(call Package/lighttpd/Default)
185 DEPENDS:=lighttpd
186 TITLE:=Simple virtual hosting module
187 endef
188
189 define Package/lighttpd-mod-ssi
190 $(call Package/lighttpd/Default)
191 DEPENDS:=lighttpd +libpcre
192 TITLE:=SSI module
193 endef
194
195 define Package/lighttpd-mod-status
196 $(call Package/lighttpd/Default)
197 DEPENDS:=lighttpd
198 TITLE:=Server status display module
199 endef
200
201 define Package/lighttpd-mod-trigger-b4-dl
202 $(call Package/lighttpd/Default)
203 DEPENDS:=lighttpd +libpcre
204 TITLE:=Trigger before download module
205 endef
206
207 define Package/lighttpd-mod-userdir
208 $(call Package/lighttpd/Default)
209 DEPENDS:=lighttpd
210 TITLE:=User directory module
211 endef
212
213 define Package/lighttpd-mod-usertrack
214 $(call Package/lighttpd/Default)
215 DEPENDS:=lighttpd
216 TITLE:=User tracking module
217 endef
218
219 define Package/lighttpd-mod-webdav
220 $(call Package/lighttpd/Default)
221 DEPENDS:=lighttpd +libsqlite3 +libuuid +libxml2
222 TITLE:=WebDAV module
223 endef
224
225 CONFIGURE_ARGS+= \
226 --libdir=/usr/lib/lighttpd \
227 --sysconfdir=/etc/lighttpd \
228 --enable-shared \
229 --enable-static \
230 --disable-rpath \
231 --without-attr \
232 --without-bzip2 \
233 --without-fam \
234 --without-gdbm \
235 --without-ldap \
236 --without-lua \
237 --without-memcache \
238 --without-mysql \
239 --with-pcre \
240 --without-valgrind \
241 $(call autoconf_bool,CONFIG_IPV6,ipv6)
242
243 CONFIGURE_VARS+= \
244 PCRE_LIB="-lpcre" \
245
246 ifneq ($(strip $(CONFIG_LIGHTTPD_SSL)),)
247 CONFIGURE_ARGS+= \
248 --with-openssl="$(STAGING_DIR)/usr"
249 else
250 CONFIGURE_ARGS+= \
251 --without-openssl
252 endif
253
254 ifneq ($(SDK)$(CONFIG_PACKAGE_lighttpd-mod-webdav),)
255 CONFIGURE_ARGS+= \
256 --with-webdav-locks \
257 --with-webdav-props
258 # XXX: needed by sqlite3 to prevent segfaults in mod_webdav.so
259 CONFIGURE_VARS+= \
260 LIBS="-lpthread"
261 else
262 CONFIGURE_ARGS+= \
263 --without-webdav-locks \
264 --without-webdav-props
265 endif
266
267 define Build/Configure
268 $(call Build/Configure/Default)
269 # XXX: override pcre (mis)detection by ./configure when cross-compiling
270 echo "#define HAVE_LIBPCRE 1" >>$(PKG_BUILD_DIR)/config.h
271 echo "#define HAVE_PCRE_H 1" >>$(PKG_BUILD_DIR)/config.h
272 endef
273
274 define Package/lighttpd/conffiles
275 /etc/lighttpd/lighttpd.conf
276 endef
277
278 define Package/lighttpd/install
279 $(INSTALL_DIR) $(1)/etc/lighttpd
280 $(INSTALL_DATA) ./files/lighttpd.conf $(1)/etc/lighttpd/
281 $(INSTALL_DIR) $(1)/etc/init.d
282 $(INSTALL_BIN) ./files/lighttpd.init $(1)/etc/init.d/lighttpd
283 $(INSTALL_DIR) $(1)/usr/lib/lighttpd
284 for m in dirlisting indexfile staticfile; do \
285 $(CP) $(PKG_INSTALL_DIR)/usr/lib/lighttpd/mod_$$$${m}.so $(1)/usr/lib/lighttpd/ ; \
286 done
287 $(INSTALL_DIR) $(1)/usr/sbin
288 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/lighttpd $(1)/usr/sbin/
289 endef
290
291 define BuildPlugin
292 define Package/$(1)/install
293 [ -z "$(2)" ] || $(INSTALL_DIR) $$(1)/usr/lib/lighttpd
294 for m in $(2); do \
295 $(CP) $(PKG_INSTALL_DIR)/usr/lib/lighttpd/mod_$$$$$$$${m}.so $$(1)/usr/lib/lighttpd/ ; \
296 done
297 endef
298
299 $$(eval $$(call BuildPackage,$(1)))
300 endef
301
302 $(eval $(call BuildPackage,lighttpd))
303 $(eval $(call BuildPlugin,lighttpd-mod-access,access))
304 $(eval $(call BuildPlugin,lighttpd-mod-accesslog,accesslog))
305 $(eval $(call BuildPlugin,lighttpd-mod-alias,alias))
306 $(eval $(call BuildPlugin,lighttpd-mod-auth,auth))
307 $(eval $(call BuildPlugin,lighttpd-mod-cgi,cgi))
308 $(eval $(call BuildPlugin,lighttpd-mod-cml,cml))
309 $(eval $(call BuildPlugin,lighttpd-mod-compress,compress))
310 $(eval $(call BuildPlugin,lighttpd-mod-evasive,evasive))
311 $(eval $(call BuildPlugin,lighttpd-mod-evhost,evhost))
312 $(eval $(call BuildPlugin,lighttpd-mod-expire,expire))
313 $(eval $(call BuildPlugin,lighttpd-mod-extforward,extforward))
314 $(eval $(call BuildPlugin,lighttpd-mod-fastcgi,fastcgi))
315 $(eval $(call BuildPlugin,lighttpd-mod-flv-streaming,flv_streaming))
316 $(eval $(call BuildPlugin,lighttpd-mod-magnet,magnet))
317 $(eval $(call BuildPlugin,lighttpd-mod-proxy,proxy))
318 $(eval $(call BuildPlugin,lighttpd-mod-redirect,redirect))
319 $(eval $(call BuildPlugin,lighttpd-mod-rewrite,rewrite))
320 $(eval $(call BuildPlugin,lighttpd-mod-rrdtool,rrdtool))
321 $(eval $(call BuildPlugin,lighttpd-mod-scgi,scgi))
322 $(eval $(call BuildPlugin,lighttpd-mod-secdownload,secdownload))
323 $(eval $(call BuildPlugin,lighttpd-mod-setenv,setenv))
324 $(eval $(call BuildPlugin,lighttpd-mod-simple-vhost,simple_vhost))
325 $(eval $(call BuildPlugin,lighttpd-mod-ssi,ssi))
326 $(eval $(call BuildPlugin,lighttpd-mod-status,status))
327 $(eval $(call BuildPlugin,lighttpd-mod-trigger-b4-dl,trigger_b4_dl))
328 $(eval $(call BuildPlugin,lighttpd-mod-userdir,userdir))
329 $(eval $(call BuildPlugin,lighttpd-mod-usertrack,usertrack))
330 $(eval $(call BuildPlugin,lighttpd-mod-webdav,webdav))