2 # - test ldap and mysql (failed at this time)
3 # - mysql issue: http://www.freebsd.org/cgi/query-pr.cgi?pr=76866
4 # - fam over gamin is possible, just configure doesn't check other than gamin
5 # - feature stat-cache-fam (doesn't work)
8 # - fcgi-devel is only used for the test-scripts
9 # - disable largefile, if you have 2.4 kernel to get sendfile() support, and don't need > 2GB file requests,
10 # see http://article.gmane.org/gmane.comp.web.lighttpd:722
11 # - please make subpackages of modules that depend other modules than:
12 # - pcre (core binary needs it too)
13 # - openssl (core binary needs it too)
15 # Conditional build for lighttpd:
16 %bcond_without xattr # support of extended attributes
17 %bcond_without ipv6 # IPv4-only version (doesn't require IPv6 in kernel)
18 %bcond_without largefile # largefile support (see notes above)
19 %bcond_without ssl # ssl support
20 %bcond_with mysql # mysql support in mod_mysql_vhost
21 %bcond_with ldap # ldap support in mod_auth
22 %bcond_with lua # LUA support in mod_cml
23 %bcond_with memcache # memcached support in mod_cml / mod_trigger_b4_dl
24 %bcond_with gamin # gamin for reducing number of stat() calls. NOTE: must be enabled in config: server.stat-cache-engine = "fam"
25 %bcond_with gdbm # gdbm in mod_trigger_b4_dl
26 %bcond_with webdav_props # properties in mod_webdav (includes extra sqlite3/libxml deps)
27 %bcond_with valgrind # compile code with valgrind support.
28 %bcond_with dirhide # with 'hide from dirlisting' hack
30 # Prerelease snapshot: DATE-TIME
31 #define _snap 20050116-1743
34 %define _source http://www.lighttpd.net/download/%{name}-%{version}-%{_snap}.tar.gz
36 %define _source http://www.lighttpd.net/download/%{name}-%{version}.tar.gz
41 Summary: Fast and light HTTP server
42 Summary(pl): Szybki i lekki serwer HTTP
45 Release: %{_rel}%{?_snap:.%(echo %{_snap}|tr - _)}
46 Group: Networking/Daemons
49 # Source0-md5: 0142f34549cf326d1ee3631be665482f
53 Source4: %{name}.logrotate
54 Source5: %{name}.sysconfig
55 Patch0: http://minghetti.ch/blob/dirlist-hide.patch
56 Patch1: %{name}-ssl-redirect-fix.patch
57 URL: http://www.lighttpd.net/
58 %{?with_xattr:BuildRequires: attr-devel}
59 BuildRequires: autoconf
60 BuildRequires: automake
61 BuildRequires: bzip2-devel
62 %{?with_gamin:BuildRequires: gamin-devel}
63 %{?with_webdav_props:BuildRequires: sqlite3-devel}
64 %{?with_webdav_props:BuildRequires: libxml2-devel}
65 BuildRequires: libtool
66 %{?with_mysql:BuildRequires: mysql-devel}
67 %{?with_ldap:BuildRequires: openldap-devel}
68 %{?with_ssl:BuildRequires: openssl-devel}
69 %{?with_lua:BuildRequires: lua50-devel >= 5.0.2-5.1}
70 %{?with_memcache:BuildRequires: libmemcache-devel}
71 %{?with_gdbm:BuildRequires: gdbm-devel}
72 BuildRequires: pcre-devel
73 BuildRequires: rpmbuild(macros) >= 1.202
74 %{?debug:BuildRequires: valgrind}
75 BuildRequires: zlib-devel
77 Requires(pre): sh-utils
78 Requires(pre): /bin/id
79 Requires(pre): /usr/bin/getgid
80 Requires(pre): /usr/sbin/groupadd
81 Requires(pre): /usr/sbin/useradd
82 Requires(post,preun): /sbin/chkconfig
83 Requires(postun): /usr/sbin/groupdel
84 Requires(postun): /usr/sbin/userdel
85 Provides: group(lighttpd)
87 Provides: user(lighttpd)
89 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
91 %define _libdir %{_prefix}/%{_lib}/%{name}
92 %define _lighttpddir /home/services/%{name}
93 %define _sysconfdir /etc/%{name}
96 lighttpd is a secure, fast, compliant and very flexible web-server
97 which has been optimized for high-performance environments. It has a
98 very low memory footprint compared to other webservers and takes care
99 of cpu-load. Its advanced feature-set (FastCGI, CGI, Auth,
100 Output-Compression, URL-Rewriting and many more) make lighttpd the
101 perfect webserver-software for every server that is suffering load
105 lighttpd jest bezpiecznym, szybkim, przyjaznym i bardzo elastycznym
106 serwerem WWW, który zosta³ zoptymalizowany pod k±tem
107 wysokowydajno¶ciowych ¶rodowisk. Zajmuje bardzo ma³± ilo¶æ pamiêci w
108 porównaniu do innych serwerów WWW oraz dba o zajêto¶æ procesora.
109 Szeroki zestaw opcji (FastCGI, CGI, uwierzytelnianie, kompresja
110 wyj¶cia, przepisywanie URL-i i wiele innych) czyni± z lighttpd
111 doskona³e oprogramowanie web-serwerowe na ka¿dy serwer cierpi±cy z
112 powodu problemów z obci±¿eniem.
114 %package mod_compress
115 Summary: Output Compression
116 Summary(pl): Kompresja wyj¶cia
117 Group: Networking/Daemons
118 URL: http://www.lighttpd.net/documentation/compress.html
119 Requires: %{name} = %{version}-%{release}
121 %description mod_compress
122 Output compression reduces the network load and can improve the
123 overall throughput of the webserver.
125 Only static content is supported up to now.
127 The server negotiates automatically which compression method is used.
128 Supported are gzip, deflate, bzip.
130 %description mod_compress -l pl
131 Kompresja wyj¶cia zmniejsza obci±¿enie sieci i mo¿e poprawiæ ca³kowit±
132 przepustowo¶æ serwera WWW.
134 Jak na razie obs³ugiwana jest tylko statyczna tre¶æ.
136 Serwer automatycznie negocjuje, która metoda kompresji jest u¿ywana.
137 Obs³ugiwane s± gzip, deflate i bzip.
140 Summary: Cache Meta Language module
141 Summary(pl): Modu³ Cache Meta Language
142 Group: Networking/Daemons
143 URL: http://www.lighttpd.net/documentation/cml.html
144 Requires: %{name} = %{version}-%{release}
147 CML is a Meta language to describe the dependencies of a page at one
148 side and building a page from its fragments on the other side using
151 %description mod_cml -l pl
152 CML to metajêzyk s³u¿±cy z jednej strony do opisu zale¿no¶ci strony i
153 z drugiej strony do budowania strony z fragmentów przy u¿yciu LUA.
155 %package mod_mysql_vhost
156 Summary: MySQL based vhosting
157 Summary(pl): vhosty oparte na MySQL-u
158 Group: Networking/Daemons
159 URL: http://www.lighttpd.net/documentation/mysqlvhost.html
160 Requires: %{name} = %{version}-%{release}
162 %description mod_mysql_vhost
163 This module provides virtual hosts (vhosts) based on a MySQL table.
165 %description mod_mysql_vhost -l pl
166 Ten modu³ udostêpnia wirtualne hosty (vhosty) oparte na tabeli MySQL.
168 %package mod_trigger_b4_dl
169 Summary: Trigger before Download
170 Summary(pl): Wyzwalacz przed ¶ci±ganiem
171 Group: Networking/Daemons
172 URL: http://www.lighttpd.net/documentation/trigger_b4_dl.html
173 Requires: %{name} = %{version}-%{release}
175 %description mod_trigger_b4_dl
176 Another anti hot-linking module.
178 %description mod_trigger_b4_dl -l pl
179 Jeszcze jeden modu³ blokuj±cy bezpo¶rednie linkowanie.
182 Summary: WebDAV module for lighttpd
183 Summary(pl): Modu³ WebDAV dla libghttpd
184 Group: Networking/Daemons
185 URL: http://www.lighttpd.net/documentation/webdav.html
186 Requires: %{name} = %{version}-%{release}
188 %description mod_webdav
189 The WebDAV module is a very minimalistic implementation of RFC 2518.
190 Minimalistic means that not all operations are implementated yet.
199 and the usual GET, POST, HEAD from HTTP/1.1.
201 So far mounting a webdav resource into Windows XP works and the basic
202 litmus tests are passed.
204 %description mod_webdav -l pl
205 Modu³ WebDAV to bardzo minimalistyczna implementacja RFC 2518.
206 Minimalistyczna oznacza, ¿e jeszcze nie wszystkie operacje s±
207 zaimplementowane. Jak na razie s±:
213 oraz zwyk³e GET, POST, HEAD z HTTP/1.1.
215 Jak na razie montowanie zasobu webdav pod Windows XP dzia³a i
216 podstawowe testy lakmusowe przechodz±.
218 %package -n spawn-fcgi
219 Summary: Spawn fcgi-process directly
220 Summary(pl): Bezpo¶rednie uruchamianie procesów fcgi
223 %description -n spawn-fcgi
224 spawn-fcgi is used to spawn fcgi-process directly without the help of
225 a webserver or the programm itself.
227 %description -n spawn-fcgi -l pl
228 spawn-fcgi s³u¿y do uruchamiania procesów fcgi bezpo¶rednio, bez
229 pomocy serwera WWW ani samego programu.
233 %{?with_dirhide:%patch0 -p0}
243 %{!?with_ipv6:--disable-ipv6} \
244 %{!?with_largefile:--disable-lfs} \
245 %{?with_valgrind:--with-valgrind} \
246 %{?with_xattr:--with-attr} \
247 %{?with_mysql:--with-mysql} \
248 %{?with_ldap:--with-ldap} \
249 %{?with_ssl:--with-openssl} \
250 %{?with_lua:--with-lua} \
251 %{?with_memcache:--with-memcache} \
252 %{?with_webdav_props:--with-webdav-props} \
253 %{?with_gamin:--with-gamin} \
254 %{?with_gdbm:--with-gdbm}
259 rm -rf $RPM_BUILD_ROOT
260 install -d $RPM_BUILD_ROOT{%{_lighttpddir}/{cgi-bin,html},/etc/{logrotate.d,rc.d/init.d,sysconfig},%{_sysconfdir}} \
261 $RPM_BUILD_ROOT/var/log/{%{name},archiv/%{name}}
264 DESTDIR=$RPM_BUILD_ROOT
266 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
267 install %{SOURCE2} %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}
268 install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
269 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
271 rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
273 # could use automake patch, but automake generation fails...
274 mv $RPM_BUILD_ROOT%{_bindir}/spawn-fcgi $RPM_BUILD_ROOT%{_sbindir}/spawn-fcgi
277 rm -rf $RPM_BUILD_ROOT
280 %groupadd -g 109 lighttpd
281 %useradd -u 116 -d %{_lighttpddir} -c "HTTP User" -g lighttpd lighttpd
284 /sbin/chkconfig --add %{name}
285 if [ -f /var/lock/subsys/%{name} ]; then
286 /etc/rc.d/init.d/%{name} restart 1>&2
288 echo "Run \"/etc/rc.d/init.d/%{name} start\" to start %{name} daemon."
292 if [ "$1" = "0" ]; then
293 if [ -f /var/lock/subsys/%{name} ]; then
294 /etc/rc.d/init.d/%{name} stop 1>&2
296 /sbin/chkconfig --del %{name}
300 if [ "$1" = "0" ]; then
302 %groupremove lighttpd
305 %triggerpostun -- %{name} <= 1.3.6-2
307 if [ "$1" = "2" ]; then
308 %banner %{name} -e <<EOF
309 spawn-fcgi program is now available separately from spawn-fcgi package.
315 %defattr(644,root,root,755)
316 %doc NEWS README ChangeLog doc/lighttpd.conf doc/*.txt doc/rrdtool-graph.sh
317 %attr(755,root,root) %{_sbindir}/*
319 %attr(755,root,root) %{_libdir}/mod_access.so
320 %attr(755,root,root) %{_libdir}/mod_accesslog.so
321 %attr(755,root,root) %{_libdir}/mod_alias.so
322 %attr(755,root,root) %{_libdir}/mod_auth.so
323 %attr(755,root,root) %{_libdir}/mod_cgi.so
324 %attr(755,root,root) %{_libdir}/mod_dirlisting.so
325 %attr(755,root,root) %{_libdir}/mod_evhost.so
326 %attr(755,root,root) %{_libdir}/mod_expire.so
327 %attr(755,root,root) %{_libdir}/mod_fastcgi.so
328 %attr(755,root,root) %{_libdir}/mod_indexfile.so
329 %attr(755,root,root) %{_libdir}/mod_proxy.so
330 %attr(755,root,root) %{_libdir}/mod_redirect.so
331 %attr(755,root,root) %{_libdir}/mod_rewrite.so
332 %attr(755,root,root) %{_libdir}/mod_rrdtool.so
333 %attr(755,root,root) %{_libdir}/mod_scgi.so
334 %attr(755,root,root) %{_libdir}/mod_secdownload.so
335 %attr(755,root,root) %{_libdir}/mod_setenv.so
336 %attr(755,root,root) %{_libdir}/mod_simple_vhost.so
337 %attr(755,root,root) %{_libdir}/mod_ssi.so
338 %attr(755,root,root) %{_libdir}/mod_staticfile.so
339 %attr(755,root,root) %{_libdir}/mod_status.so
340 %attr(755,root,root) %{_libdir}/mod_userdir.so
341 %attr(755,root,root) %{_libdir}/mod_usertrack.so
342 %attr(750,root,root) %dir /var/log/archiv/%{name}
343 %dir %attr(750,lighttpd,root) /var/log/%{name}
344 %attr(755,lighttpd,lighttpd) %{_lighttpddir}
345 %attr(754,root,root) /etc/rc.d/init.d/%{name}
346 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/*
347 %dir %attr(750,root,lighttpd) %{_sysconfdir}
348 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.conf
349 %attr(640,root,lighttpd) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.user
350 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
354 %defattr(644,root,root,755)
355 %attr(755,root,root) %{_libdir}/mod_compress.so
358 %defattr(644,root,root,755)
359 %attr(755,root,root) %{_libdir}/mod_cml.so
362 %files mod_mysql_vhost
363 %defattr(644,root,root,755)
364 %attr(755,root,root) %{_libdir}/mod_mysql_vhost.so
367 %files mod_trigger_b4_dl
368 %defattr(644,root,root,755)
369 %attr(755,root,root) %{_libdir}/mod_trigger_b4_dl.so
372 %defattr(644,root,root,755)
373 %attr(755,root,root) %{_libdir}/mod_webdav.so
376 %defattr(644,root,root,755)
377 %doc doc/spawn-php.sh
378 %attr(755,root,root) %{_sbindir}/spawn-fcgi