]> git.pld-linux.org Git - packages/lighttpd.git/blob - lighttpd.spec
- add /var/run/lighttpd for fcgi sockets storage
[packages/lighttpd.git] / lighttpd.spec
1 # TODO:
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)
6 #
7 # NOTES:
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)
14 #
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_without  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.
25                                 # NOTE: must be enabled in config: server.stat-cache-engine = "fam"
26 %bcond_with     gdbm            # gdbm in mod_trigger_b4_dl
27 %bcond_with     webdav_props    # properties in mod_webdav (includes extra sqlite3/libxml deps)
28 %bcond_with     valgrind        # compile code with valgrind support.
29
30 # Prerelease snapshot: DATE-TIME
31 %define _snap 20060104-1523
32
33 %if 0%{?_snap}
34 %define _source http://www.lighttpd.net/download/%{name}-%{version}-%{_snap}.tar.gz
35 %else
36 %define _source http://www.lighttpd.net/download/%{name}-%{version}.tar.gz
37 %endif
38
39 %define         _rel 0.13
40
41 Summary:        Fast and light HTTP server
42 Summary(pl):    Szybki i lekki serwer HTTP
43 Name:           lighttpd
44 Version:        1.4.9
45 Release:        %{_rel}%{?_snap:.%(echo %{_snap}|tr - _)}
46 Group:          Networking/Daemons
47 License:        BSD
48 Source0:        %{_source}
49 # Source0-md5:  67b9580b79c058b7a854964ee6fa0294
50 Source1:        %{name}.init
51 Source2:        %{name}.conf
52 Source3:        %{name}.user
53 Source4:        %{name}.logrotate
54 Source5:        %{name}.sysconfig
55 Source6:        %{name}-mime.types.sh
56 Source7:        http://www.lighttpd.net/favicon.ico
57 # Source7-md5:  a358994becabd4060393a5454bde505d
58 Source8:        http://www.lighttpd.net/light_button.png
59 # Source8-md5:  02330e2313fadc29144edfd6000879f8
60 Source9:        http://www.lighttpd.net/light_logo.png
61 # Source9-md5:  ac20784510e420d5cbe5fc1cdb53d7a7
62 Source10:       http://gdl.hopto.org/~spider/pldstats/gfx/pld1.png
63 # Source10-md5: 486ecec3f6f4fe7f9bf7cee757b864f4
64 Source11:       %{name}-pld.html
65 Patch0: %{name}-proxy-fix-redirects.patch
66 URL:            http://www.lighttpd.net/
67 %{?with_xattr:BuildRequires:    attr-devel}
68 BuildRequires:  autoconf
69 BuildRequires:  automake
70 BuildRequires:  bzip2-devel
71 %{?with_gamin:BuildRequires:    gamin-devel}
72 %{?with_gdbm:BuildRequires:     gdbm-devel}
73 %{?with_memcache:BuildRequires: libmemcache-devel}
74 BuildRequires:  libtool
75 %{?with_webdav_props:BuildRequires:     libxml2-devel}
76 %{?with_lua:BuildRequires:      lua50-devel >= 5.0.2-5.1}
77 BuildRequires:  mailcap >= 2.1.14-4.4
78 %{?with_mysql:BuildRequires:    mysql-devel}
79 %{?with_ldap:BuildRequires:     openldap-devel}
80 %{?with_ssl:BuildRequires:      openssl-devel}
81 BuildRequires:  pcre-devel
82 BuildRequires:  pkgconfig
83 BuildRequires:  rpmbuild(macros) >= 1.268
84 %{?with_webdav_props:BuildRequires:     sqlite3-devel}
85 %{?with_valgrind:BuildRequires: valgrind}
86 BuildRequires:  zlib-devel
87 Requires(post,preun):   /sbin/chkconfig
88 Requires(postun):       /usr/sbin/groupdel
89 Requires(postun):       /usr/sbin/userdel
90 Requires(pre):  /bin/id
91 Requires(pre):  /usr/bin/getgid
92 Requires(pre):  /usr/sbin/groupadd
93 Requires(pre):  /usr/sbin/useradd
94 Requires(pre):  sh-utils
95 Requires:       rc-scripts
96 Provides:       group(http)
97 Provides:       group(lighttpd)
98 Provides:       user(lighttpd)
99 Provides:       webserver
100 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
101
102 %define         _libdir         %{_prefix}/%{_lib}/%{name}
103 %define         _lighttpddir    /home/services/%{name}
104 %define         _sysconfdir     /etc/%{name}
105
106 %description
107 lighttpd is a secure, fast, compliant and very flexible web-server
108 which has been optimized for high-performance environments. It has a
109 very low memory footprint compared to other webservers and takes care
110 of cpu-load. Its advanced feature-set (FastCGI, CGI, Auth,
111 Output-Compression, URL-Rewriting and many more) make lighttpd the
112 perfect webserver-software for every server that is suffering load
113 problems.
114
115 %description -l pl
116 lighttpd jest bezpiecznym, szybkim, przyjaznym i bardzo elastycznym
117 serwerem WWW, który zosta³ zoptymalizowany pod k±tem
118 wysokowydajno¶ciowych ¶rodowisk. Zajmuje bardzo ma³± ilo¶æ pamiêci w
119 porównaniu do innych serwerów WWW oraz dba o zajêto¶æ procesora.
120 Szeroki zestaw opcji (FastCGI, CGI, uwierzytelnianie, kompresja
121 wyj¶cia, przepisywanie URL-i i wiele innych) czyni± z lighttpd
122 doskona³e oprogramowanie web-serwerowe na ka¿dy serwer cierpi±cy z
123 powodu problemów z obci±¿eniem.
124
125 %package mod_compress
126 Summary:        Output Compression
127 Summary(pl):    Kompresja wyj¶cia
128 Group:          Networking/Daemons
129 URL:            http://www.lighttpd.net/documentation/compress.html
130 Requires:       %{name} = %{version}-%{release}
131
132 %description mod_compress
133 Output compression reduces the network load and can improve the
134 overall throughput of the webserver.
135
136 Only static content is supported up to now.
137
138 The server negotiates automatically which compression method is used.
139 Supported are gzip, deflate, bzip.
140
141 %description mod_compress -l pl
142 Kompresja wyj¶cia zmniejsza obci±¿enie sieci i mo¿e poprawiæ ca³kowit±
143 przepustowo¶æ serwera WWW.
144
145 Jak na razie obs³ugiwana jest tylko statyczna tre¶æ.
146
147 Serwer automatycznie negocjuje, która metoda kompresji jest u¿ywana.
148 Obs³ugiwane s± gzip, deflate i bzip.
149
150 %package mod_cml
151 Summary:        Cache Meta Language module
152 Summary(pl):    Modu³ Cache Meta Language
153 Group:          Networking/Daemons
154 URL:            http://www.lighttpd.net/documentation/cml.html
155 Requires:       %{name} = %{version}-%{release}
156
157 %description mod_cml
158 CML is a Meta language to describe the dependencies of a page at one
159 side and building a page from its fragments on the other side using
160 LUA.
161
162 %description mod_cml -l pl
163 CML to metajêzyk s³u¿±cy z jednej strony do opisu zale¿no¶ci strony i
164 z drugiej strony do budowania strony z fragmentów przy u¿yciu LUA.
165
166 %package mod_mysql_vhost
167 Summary:        MySQL based vhosting
168 Summary(pl):    vhosty oparte na MySQL-u
169 Group:          Networking/Daemons
170 URL:            http://www.lighttpd.net/documentation/mysqlvhost.html
171 Requires:       %{name} = %{version}-%{release}
172
173 %description mod_mysql_vhost
174 This module provides virtual hosts (vhosts) based on a MySQL table.
175
176 %description mod_mysql_vhost -l pl
177 Ten modu³ udostêpnia wirtualne hosty (vhosty) oparte na tabeli MySQL.
178
179 %package mod_trigger_b4_dl
180 Summary:        Trigger before Download
181 Summary(pl):    Wyzwalacz przed ¶ci±ganiem
182 Group:          Networking/Daemons
183 URL:            http://www.lighttpd.net/documentation/trigger_b4_dl.html
184 Requires:       %{name} = %{version}-%{release}
185
186 %description mod_trigger_b4_dl
187 Another anti hot-linking module.
188
189 %description mod_trigger_b4_dl -l pl
190 Jeszcze jeden modu³ blokuj±cy bezpo¶rednie linkowanie.
191
192 %package mod_webdav
193 Summary:        WebDAV module for lighttpd
194 Summary(pl):    Modu³ WebDAV dla libghttpd
195 Group:          Networking/Daemons
196 URL:            http://www.lighttpd.net/documentation/webdav.html
197 Requires:       %{name} = %{version}-%{release}
198
199 %description mod_webdav
200 The WebDAV module is a very minimalistic implementation of RFC 2518.
201 Minimalistic means that not all operations are implementated yet.
202
203 So far we have
204 - PROPFIND
205 - OPTIONS
206 - MKCOL
207 - DELETE
208 - PUT
209
210 and the usual GET, POST, HEAD from HTTP/1.1.
211
212 So far mounting a webdav resource into Windows XP works and the basic
213 litmus tests are passed.
214
215 %description mod_webdav -l pl
216 Modu³ WebDAV to bardzo minimalistyczna implementacja RFC 2518.
217 Minimalistyczna oznacza, ¿e jeszcze nie wszystkie operacje s±
218 zaimplementowane. Jak na razie s±:
219 - PROPFIND
220 - OPTIONS
221 - MKCOL
222 - DELETE
223 - PUT
224 oraz zwyk³e GET, POST, HEAD z HTTP/1.1.
225
226 Jak na razie montowanie zasobu webdav pod Windows XP dzia³a i
227 podstawowe testy lakmusowe przechodz±.
228
229 %package -n spawn-fcgi
230 Summary:        Spawn fcgi-process directly
231 Summary(pl):    Bezpo¶rednie uruchamianie procesów fcgi
232 Group:          Applications
233
234 %description -n spawn-fcgi
235 spawn-fcgi is used to spawn fcgi-process directly without the help of
236 a webserver or the programm itself.
237
238 %description -n spawn-fcgi -l pl
239 spawn-fcgi s³u¿y do uruchamiania procesów fcgi bezpo¶rednio, bez
240 pomocy serwera WWW ani samego programu.
241
242 %prep
243 %setup -q
244 %patch0 -p1
245 install %{SOURCE6} mime.types.sh
246
247 # build mime.types.conf
248 ./mime.types.sh /etc/mime.types
249
250 %build
251 %{__libtoolize}
252 %{__aclocal}
253 %{__autoconf}
254 %{__automake}
255
256 %configure \
257         %{!?with_ipv6:--disable-ipv6} \
258         %{!?with_largefile:--disable-lfs} \
259         %{?with_valgrind:--with-valgrind} \
260         %{?with_xattr:--with-attr} \
261         %{?with_mysql:--with-mysql} \
262         %{?with_ldap:--with-ldap} \
263         %{?with_ssl:--with-openssl} \
264         %{?with_lua:--with-lua} \
265         %{?with_memcache:--with-memcache} \
266         %{?with_webdav_props:--with-webdav-props} \
267         %{?with_gamin:--with-gamin} \
268         %{?with_gdbm:--with-gdbm}
269
270 %{__make}
271
272 %install
273 rm -rf $RPM_BUILD_ROOT
274 install -d $RPM_BUILD_ROOT{%{_lighttpddir}/{cgi-bin,html},/etc/{logrotate.d,rc.d/init.d,sysconfig}} \
275         $RPM_BUILD_ROOT%{_sysconfdir}/webapps.d \
276         $RPM_BUILD_ROOT{/var/log/{%{name},archiv/%{name}},/var/run/%{name}}
277
278 %{__make} install \
279         DESTDIR=$RPM_BUILD_ROOT
280
281 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
282 install %{SOURCE2} %{SOURCE3} mime.types.conf $RPM_BUILD_ROOT%{_sysconfdir}
283 install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
284 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
285
286 rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
287
288 # could use automake patch, but automake generation fails...
289 mv $RPM_BUILD_ROOT%{_bindir}/spawn-fcgi $RPM_BUILD_ROOT%{_sbindir}/spawn-fcgi
290
291 %if %{without mysql}
292 rm -f $RPM_BUILD_ROOT%{_libdir}/mod_mysql_vhost.so
293 %endif
294
295 # Install lighttpd images
296 install %{SOURCE7} %{SOURCE8} %{SOURCE9} $RPM_BUILD_ROOT%{_lighttpddir}/html
297 install %{SOURCE10} $RPM_BUILD_ROOT%{_lighttpddir}/html/pld_button.png
298 install %{SOURCE11} $RPM_BUILD_ROOT%{_lighttpddir}/html/index.html
299
300 %clean
301 rm -rf $RPM_BUILD_ROOT
302
303 %pre
304 %groupadd -g 109 lighttpd
305 %groupadd -g 51 http
306 %useradd -u 116 -d %{_lighttpddir} -c "LigHTTPd User" -g lighttpd lighttpd
307 %addusertogroup lighttpd http
308
309 %post
310 /sbin/chkconfig --add %{name}
311 %service %{name} restart "LigHTTPd webserver"
312 exit 0
313
314 %preun
315 if [ "$1" = "0" ]; then
316         %service %{name} stop
317         /sbin/chkconfig --del %{name}
318 fi
319
320 %postun
321 if [ "$1" = "0" ]; then
322         %userremove lighttpd
323         %groupremove lighttpd
324         %groupremove http
325 fi
326
327 %triggerpostun -- %{name} <= 1.3.6-2
328 # upgraded
329 if [ "$1" = "2" ]; then
330 %banner %{name} -e <<EOF
331 spawn-fcgi program is now available separately from spawn-fcgi package.
332
333 EOF
334 fi
335
336 %files
337 %defattr(644,root,root,755)
338 %doc NEWS README ChangeLog doc/lighttpd.conf doc/*.txt doc/rrdtool-graph.sh
339 %dir %attr(750,root,lighttpd) %{_sysconfdir}
340 %dir %attr(750,root,root) %{_sysconfdir}/webapps.d
341 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.conf
342 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.types.conf
343 %attr(640,root,lighttpd) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.user
344
345 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
346 %attr(750,root,root) %dir /var/log/archiv/%{name}
347 %dir %attr(770,root,lighttpd) /var/log/%{name}
348 %dir %attr(770,root,lighttpd) /var/run/%{name}
349 %attr(754,root,root) /etc/rc.d/init.d/%{name}
350 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/*
351 %attr(755,root,root) %{_sbindir}/*
352 %dir %{_libdir}
353 %attr(755,root,root) %{_libdir}/mod_access.so
354 %attr(755,root,root) %{_libdir}/mod_accesslog.so
355 %attr(755,root,root) %{_libdir}/mod_alias.so
356 %attr(755,root,root) %{_libdir}/mod_auth.so
357 %attr(755,root,root) %{_libdir}/mod_cgi.so
358 %attr(755,root,root) %{_libdir}/mod_dirlisting.so
359 %attr(755,root,root) %{_libdir}/mod_evasive.so
360 %attr(755,root,root) %{_libdir}/mod_evhost.so
361 %attr(755,root,root) %{_libdir}/mod_expire.so
362 %attr(755,root,root) %{_libdir}/mod_fastcgi.so
363 %attr(755,root,root) %{_libdir}/mod_indexfile.so
364 %attr(755,root,root) %{_libdir}/mod_proxy.so
365 %attr(755,root,root) %{_libdir}/mod_redirect.so
366 %attr(755,root,root) %{_libdir}/mod_rewrite.so
367 %attr(755,root,root) %{_libdir}/mod_rrdtool.so
368 %attr(755,root,root) %{_libdir}/mod_scgi.so
369 %attr(755,root,root) %{_libdir}/mod_secdownload.so
370 %attr(755,root,root) %{_libdir}/mod_setenv.so
371 %attr(755,root,root) %{_libdir}/mod_simple_vhost.so
372 %attr(755,root,root) %{_libdir}/mod_ssi.so
373 %attr(755,root,root) %{_libdir}/mod_staticfile.so
374 %attr(755,root,root) %{_libdir}/mod_status.so
375 %attr(755,root,root) %{_libdir}/mod_userdir.so
376 %attr(755,root,root) %{_libdir}/mod_usertrack.so
377 %{_mandir}/man?/*
378
379 %dir %{_lighttpddir}
380 %dir %{_lighttpddir}/cgi-bin
381 %dir %{_lighttpddir}/html
382 %{_lighttpddir}/html/*
383
384 %files mod_compress
385 %defattr(644,root,root,755)
386 %attr(755,root,root) %{_libdir}/mod_compress.so
387
388 %files mod_cml
389 %defattr(644,root,root,755)
390 %attr(755,root,root) %{_libdir}/mod_cml.so
391
392 %if %{with mysql}
393 %files mod_mysql_vhost
394 %defattr(644,root,root,755)
395 %attr(755,root,root) %{_libdir}/mod_mysql_vhost.so
396 %endif
397
398 %files mod_trigger_b4_dl
399 %defattr(644,root,root,755)
400 %attr(755,root,root) %{_libdir}/mod_trigger_b4_dl.so
401
402 %files mod_webdav
403 %defattr(644,root,root,755)
404 %attr(755,root,root) %{_libdir}/mod_webdav.so
405
406 %files -n spawn-fcgi
407 %defattr(644,root,root,755)
408 %doc doc/spawn-php.sh
409 %attr(755,root,root) %{_sbindir}/spawn-fcgi
This page took 0.110456 seconds and 4 git commands to generate.