]> git.pld-linux.org Git - packages/lighttpd.git/blobdiff - lighttpd.spec
- svn 1154 is known to build
[packages/lighttpd.git] / lighttpd.spec
index f15e1a1512d648e55bd3d5b0ce9fd590c7e229f2..3cd21f6ee0ad347a44b7cdc116e29beaadbdbeb3 100644 (file)
@@ -2,7 +2,7 @@
 # - test ldap and mysql (failed at this time)
 # - mysql issue: http://www.freebsd.org/cgi/query-pr.cgi?pr=76866
 # - fam over gamin is possible, just configure doesn't check other than gamin
-# - lua50 isn't properly detected
+# - feature stat-cache-fam (doesn't work)
 #
 # NOTES:
 # - fcgi-devel is only used for the test-scripts
 #  - openssl (core binary needs it too)
 #
 # Conditional build for lighttpd:
-%bcond_without xattr                   # support of extended attributes
-%bcond_without ipv6                    # IPv4-only version (doesn't require IPv6 in kernel)
-%bcond_without largefile               # largefile support (see notes above)
-%bcond_without ssl                             # ssl support
-%bcond_with            mysql                   # mysql support in mod_mysql_vhost
-%bcond_with            ldap                    # ldap support in mod_auth
-%bcond_with            lua                             # LUA support in mod_cml
-%bcond_with            memcache                # memcached support in mod_cml / mod_trigger_b4_dl
-%bcond_with            gamin                   # gamin for reducing number of stat() calls. NOTE: must be enabled in config: server.stat-cache-engine = "fam"
-%bcond_with            gdbm                    # gdbm in mod_trigger_b4_dl
-%bcond_with            webdav_props    # properties in mod_webdav (includes extra sqlite3/libxml deps)
-%bcond_with            valgrind                # compile code with valgrind support.
-%bcond_with            dirhide                 # with 'hide from dirlisting' hack
+%bcond_without xattr           # support of extended attributes
+%bcond_without ipv6            # IPv4-only version (doesn't require IPv6 in kernel)
+%bcond_without largefile       # largefile support (see notes above)
+%bcond_without ssl             # ssl support
+%bcond_with    mysql           # mysql support in mod_mysql_vhost
+%bcond_with    ldap            # ldap support in mod_auth
+%bcond_without lua             # LUA support in mod_cml
+%bcond_with    memcache        # memcached support in mod_cml / mod_trigger_b4_dl
+%bcond_with    gamin           # gamin for reducing number of stat() calls.
+                               # NOTE: must be enabled in config: server.stat-cache-engine = "fam"
+%bcond_with    gdbm            # gdbm in mod_trigger_b4_dl
+%bcond_with    webdav_props    # properties in mod_webdav (includes extra sqlite3/libxml deps)
+%bcond_with    valgrind        # compile code with valgrind support.
 
 # Prerelease snapshot: DATE-TIME
-#define _snap 20050116-1743
+#define _snap 20060104-1523
 
 %if 0%{?_snap}
 %define _source http://www.lighttpd.net/download/%{name}-%{version}-%{_snap}.tar.gz
 %define _source http://www.lighttpd.net/download/%{name}-%{version}.tar.gz
 %endif
 
-%define                _rel 0.4
+%define                _rel 3
 
 Summary:       Fast and light HTTP server
 Summary(pl):   Szybki i lekki serwer HTTP
 Name:          lighttpd
-Version:       1.4.1
+Version:       1.4.11
 Release:       %{_rel}%{?_snap:.%(echo %{_snap}|tr - _)}
-Group:         Networking/Daemons
 License:       BSD
+Group:         Networking/Daemons
 Source0:       %{_source}
-# Source0-md5: 3abffbe574fd835721760a37c00d3714
+# Source0-md5: f55eebb9815c94a7de35906bb557ecd3
 Source1:       %{name}.init
 Source2:       %{name}.conf
 Source3:       %{name}.user
 Source4:       %{name}.logrotate
 Source5:       %{name}.sysconfig
-Patch0:                http://minghetti.ch/blob/dirlist-hide.patch
-Patch1:                %{name}-fcgi-verbose.patch
-Patch2:                %{name}-ssl-redirect-fix.patch
-Patch3:                %{name}-lua-pkgconfig.patch
-Patch4:        %{name}-openssl.patch
+Source6:       %{name}-mime.types.sh
+Source7:       http://www.lighttpd.net/favicon.ico
+# Source7-md5: a358994becabd4060393a5454bde505d
+Source8:       http://www.lighttpd.net/light_button.png
+# Source8-md5: 02330e2313fadc29144edfd6000879f8
+Source9:       http://www.lighttpd.net/light_logo.png
+# Source9-md5: ac20784510e420d5cbe5fc1cdb53d7a7
+Source10:      http://gdl.hopto.org/~spider/pldstats/gfx/pld1.png
+# Source10-md5:        486ecec3f6f4fe7f9bf7cee757b864f4
+Source11:      %{name}-pld.html
+Patch0:                %{name}-mod_deflate.patch
+Patch1:                %{name}-use_bin_sh.patch
+Patch2:                %{name}-initgroups.patch
 URL:           http://www.lighttpd.net/
 %{?with_xattr:BuildRequires:   attr-devel}
 BuildRequires: autoconf
 BuildRequires: automake
 BuildRequires: bzip2-devel
 %{?with_gamin:BuildRequires:   gamin-devel}
-%{?with_webdav_props:BuildRequires:    sqlite3-devel}
-%{?with_webdav_props:BuildRequires:    libxml2-devel}
+%{?with_gdbm:BuildRequires:    gdbm-devel}
+%{?with_memcache:BuildRequires:        libmemcache-devel}
 BuildRequires: libtool
+%{?with_webdav_props:BuildRequires:    libxml2-devel}
+%{?with_lua:BuildRequires:     lua50-devel >= 5.0.2-5.1}
+BuildRequires: mailcap >= 2.1.14-4.4
 %{?with_mysql:BuildRequires:   mysql-devel}
-%{?with_ldap:BuildRequires:            openldap-devel}
+%{?with_ldap:BuildRequires:    openldap-devel}
 %{?with_ssl:BuildRequires:     openssl-devel}
-%{?with_lua:BuildRequires:     lua50-devel >= 5.0.2-4.1}
-%{?with_memcache:BuildRequires:        libmemcache-devel}
-%{?with_gdbm:BuildRequires:    gdbm-devel}
 BuildRequires: pcre-devel
-BuildRequires: rpmbuild(macros) >= 1.202
-%{?debug:BuildRequires:        valgrind}
+BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.268
+%{?with_webdav_props:BuildRequires:    sqlite3-devel}
+%{?with_valgrind:BuildRequires:        valgrind}
 BuildRequires: zlib-devel
-PreReq:                rc-scripts
-Requires(pre): sh-utils
+Requires(post,preun):  /sbin/chkconfig
+Requires(postun):      /usr/sbin/groupdel
+Requires(postun):      /usr/sbin/userdel
 Requires(pre): /bin/id
 Requires(pre): /usr/bin/getgid
 Requires(pre): /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
-Requires(post,preun):  /sbin/chkconfig
-Requires(postun):      /usr/sbin/groupdel
-Requires(postun):      /usr/sbin/userdel
+Requires:      rc-scripts
+Provides:      group(http)
 Provides:      group(lighttpd)
-Provides:      httpd
 Provides:      user(lighttpd)
 Provides:      webserver
+# for the posttrans scriptlet, conflicts because in vserver environment rpm package is not installed.
+Conflicts:     rpm < 4.4.2-0.2
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _libdir         %{_prefix}/%{_lib}/%{name}
@@ -116,6 +127,7 @@ powodu problem
 
 %package mod_compress
 Summary:       Output Compression
+Summary(pl):   Kompresja wyj¶cia
 Group:         Networking/Daemons
 URL:           http://www.lighttpd.net/documentation/compress.html
 Requires:      %{name} = %{version}-%{release}
@@ -126,11 +138,21 @@ overall throughput of the webserver.
 
 Only static content is supported up to now.
 
-The server negotiates automaticly which compression method is used.
+The server negotiates automatically which compression method is used.
 Supported are gzip, deflate, bzip.
 
+%description mod_compress -l pl
+Kompresja wyj¶cia zmniejsza obci±¿enie sieci i mo¿e poprawiæ ca³kowit±
+przepustowo¶æ serwera WWW.
+
+Jak na razie obs³ugiwana jest tylko statyczna tre¶æ.
+
+Serwer automatycznie negocjuje, która metoda kompresji jest u¿ywana.
+Obs³ugiwane s± gzip, deflate i bzip.
+
 %package mod_cml
 Summary:       Cache Meta Language module
+Summary(pl):   Modu³ Cache Meta Language
 Group:         Networking/Daemons
 URL:           http://www.lighttpd.net/documentation/cml.html
 Requires:      %{name} = %{version}-%{release}
@@ -140,8 +162,13 @@ CML is a Meta language to describe the dependencies of a page at one
 side and building a page from its fragments on the other side using
 LUA.
 
+%description mod_cml -l pl
+CML to metajêzyk s³u¿±cy z jednej strony do opisu zale¿no¶ci strony i
+z drugiej strony do budowania strony z fragmentów przy u¿yciu LUA.
+
 %package mod_mysql_vhost
 Summary:       MySQL based vhosting
+Summary(pl):   vhosty oparte na MySQL-u
 Group:         Networking/Daemons
 URL:           http://www.lighttpd.net/documentation/mysqlvhost.html
 Requires:      %{name} = %{version}-%{release}
@@ -149,8 +176,12 @@ Requires:  %{name} = %{version}-%{release}
 %description mod_mysql_vhost
 This module provides virtual hosts (vhosts) based on a MySQL table.
 
+%description mod_mysql_vhost -l pl
+Ten modu³ udostêpnia wirtualne hosty (vhosty) oparte na tabeli MySQL.
+
 %package mod_trigger_b4_dl
 Summary:       Trigger before Download
+Summary(pl):   Wyzwalacz przed ¶ci±ganiem
 Group:         Networking/Daemons
 URL:           http://www.lighttpd.net/documentation/trigger_b4_dl.html
 Requires:      %{name} = %{version}-%{release}
@@ -158,8 +189,12 @@ Requires:  %{name} = %{version}-%{release}
 %description mod_trigger_b4_dl
 Another anti hot-linking module.
 
+%description mod_trigger_b4_dl -l pl
+Jeszcze jeden modu³ blokuj±cy bezpo¶rednie linkowanie.
+
 %package mod_webdav
 Summary:       WebDAV module for lighttpd
+Summary(pl):   Modu³ WebDAV dla libghttpd
 Group:         Networking/Daemons
 URL:           http://www.lighttpd.net/documentation/webdav.html
 Requires:      %{name} = %{version}-%{release}
@@ -180,6 +215,20 @@ and the usual GET, POST, HEAD from HTTP/1.1.
 So far mounting a webdav resource into Windows XP works and the basic
 litmus tests are passed.
 
+%description mod_webdav -l pl
+Modu³ WebDAV to bardzo minimalistyczna implementacja RFC 2518.
+Minimalistyczna oznacza, ¿e jeszcze nie wszystkie operacje s±
+zaimplementowane. Jak na razie s±:
+- PROPFIND
+- OPTIONS
+- MKCOL
+- DELETE
+- PUT
+oraz zwyk³e GET, POST, HEAD z HTTP/1.1.
+
+Jak na razie montowanie zasobu webdav pod Windows XP dzia³a i
+podstawowe testy lakmusowe przechodz±.
+
 %package -n spawn-fcgi
 Summary:       Spawn fcgi-process directly
 Summary(pl):   Bezpo¶rednie uruchamianie procesów fcgi
@@ -195,11 +244,13 @@ pomocy serwera WWW ani samego programu.
 
 %prep
 %setup -q
-%{?with_dirhide:%patch0 -p0}
+%patch0 -p1
 %patch1 -p1
 %patch2 -p1
-%patch3 -p1
-%patch4 -p2
+install %{SOURCE6} mime.types.sh
+
+# build mime.types.conf
+./mime.types.sh /etc/mime.types
 
 %build
 %{__libtoolize}
@@ -225,14 +276,15 @@ pomocy serwera WWW ani samego programu.
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_lighttpddir}/{cgi-bin,html},/etc/{logrotate.d,rc.d/init.d,sysconfig},%{_sysconfdir}} \
-       $RPM_BUILD_ROOT/var/log/{%{name},archiv/%{name}}
+install -d $RPM_BUILD_ROOT{%{_lighttpddir}/{cgi-bin,html},/etc/{logrotate.d,rc.d/init.d,sysconfig}} \
+       $RPM_BUILD_ROOT%{_sysconfdir}/webapps.d \
+       $RPM_BUILD_ROOT{/var/log/{%{name},archiv/%{name}},/var/run/%{name}}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
-install %{SOURCE2} %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}
+install %{SOURCE2} %{SOURCE3} mime.types.conf $RPM_BUILD_ROOT%{_sysconfdir}
 install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
 
@@ -241,26 +293,30 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
 # could use automake patch, but automake generation fails...
 mv $RPM_BUILD_ROOT%{_bindir}/spawn-fcgi $RPM_BUILD_ROOT%{_sbindir}/spawn-fcgi
 
+%if %{without mysql}
+rm -f $RPM_BUILD_ROOT%{_libdir}/mod_mysql_vhost.so
+%endif
+
+# Install lighttpd images
+install %{SOURCE7} %{SOURCE8} %{SOURCE9} $RPM_BUILD_ROOT%{_lighttpddir}/html
+install %{SOURCE10} $RPM_BUILD_ROOT%{_lighttpddir}/html/pld_button.png
+install %{SOURCE11} $RPM_BUILD_ROOT%{_lighttpddir}/html/index.html
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %pre
 %groupadd -g 109 lighttpd
-%useradd -u 116 -d %{_lighttpddir} -c "HTTP User" -g lighttpd lighttpd
+%groupadd -g 51 http
+%useradd -u 116 -d %{_lighttpddir} -c "LigHTTPd User" -g lighttpd lighttpd
+%addusertogroup lighttpd http
 
 %post
 /sbin/chkconfig --add %{name}
-if [ -f /var/lock/subsys/%{name} ]; then
-       /etc/rc.d/init.d/%{name} restart 1>&2
-else
-       echo "Run \"/etc/rc.d/init.d/%{name} start\" to start %{name} daemon."
-fi
 
 %preun
 if [ "$1" = "0" ]; then
-       if [ -f /var/lock/subsys/%{name} ]; then
-               /etc/rc.d/init.d/%{name} stop 1>&2
-       fi
+       %service %{name} stop
        /sbin/chkconfig --del %{name}
 fi
 
@@ -268,8 +324,47 @@ fi
 if [ "$1" = "0" ]; then
        %userremove lighttpd
        %groupremove lighttpd
+       %groupremove http
 fi
 
+%posttrans
+# minimizing lighttpd restarts logics. we restart webserver:
+#
+# 1. at the end of transaction. (posttrans, feature from rpm 4.4.2)
+# 2. first install of module (post: $1 = 1)
+# 2. uninstall of module (postun: $1 == 0)
+#
+# the strict internal deps between lighttpd modules and
+# main package are very important for all this to work.
+%service %{name} restart "LigHTTPd webserver"
+exit 0
+
+# macro called at module post scriptlet
+%define        module_post \
+if [ "$1" = "1" ]; then \
+       %service -q lighttpd restart \
+fi
+
+# macro called at module postun scriptlet
+%define        module_postun \
+if [ "$1" = "0" ]; then \
+       %service -q lighttpd restart \
+fi
+
+# it's sooo annoying to write them
+%define        module_scripts() \
+%post %1 \
+%module_post \
+\
+%postun %1 \
+%module_postun
+
+%module_scripts mod_compress
+%module_scripts mod_cml
+%module_scripts mod_mysql_vhost
+%module_scripts mod_trigger_b4_dl
+%module_scripts mod_webdav
+
 %triggerpostun -- %{name} <= 1.3.6-2
 # upgraded
 if [ "$1" = "2" ]; then
@@ -282,6 +377,18 @@ fi
 %files
 %defattr(644,root,root,755)
 %doc NEWS README ChangeLog doc/lighttpd.conf doc/*.txt doc/rrdtool-graph.sh
+%dir %attr(750,root,lighttpd) %{_sysconfdir}
+%dir %attr(750,root,root) %{_sysconfdir}/webapps.d
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.types.conf
+%attr(640,root,lighttpd) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.user
+
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
+%attr(750,root,root) %dir /var/log/archiv/%{name}
+%dir %attr(770,root,lighttpd) /var/log/%{name}
+%dir %attr(770,root,lighttpd) /var/run/%{name}
+%attr(754,root,root) /etc/rc.d/init.d/%{name}
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/*
 %attr(755,root,root) %{_sbindir}/*
 %dir %{_libdir}
 %attr(755,root,root) %{_libdir}/mod_access.so
@@ -289,10 +396,13 @@ fi
 %attr(755,root,root) %{_libdir}/mod_alias.so
 %attr(755,root,root) %{_libdir}/mod_auth.so
 %attr(755,root,root) %{_libdir}/mod_cgi.so
+%attr(755,root,root) %{_libdir}/mod_deflate.so
 %attr(755,root,root) %{_libdir}/mod_dirlisting.so
+%attr(755,root,root) %{_libdir}/mod_evasive.so
 %attr(755,root,root) %{_libdir}/mod_evhost.so
 %attr(755,root,root) %{_libdir}/mod_expire.so
 %attr(755,root,root) %{_libdir}/mod_fastcgi.so
+%attr(755,root,root) %{_libdir}/mod_flv_streaming.so
 %attr(755,root,root) %{_libdir}/mod_indexfile.so
 %attr(755,root,root) %{_libdir}/mod_proxy.so
 %attr(755,root,root) %{_libdir}/mod_redirect.so
@@ -307,17 +417,13 @@ fi
 %attr(755,root,root) %{_libdir}/mod_status.so
 %attr(755,root,root) %{_libdir}/mod_userdir.so
 %attr(755,root,root) %{_libdir}/mod_usertrack.so
-%attr(750,root,root) %dir /var/log/archiv/%{name}
-%dir %attr(750,lighttpd,root) /var/log/%{name}
-%attr(755,lighttpd,lighttpd) %{_lighttpddir}
-%attr(754,root,root) /etc/rc.d/init.d/%{name}
-%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/*
-%dir %attr(750,root,lighttpd) %{_sysconfdir}
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.conf
-%attr(640,root,lighttpd) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.user
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
 %{_mandir}/man?/*
 
+%dir %{_lighttpddir}
+%dir %{_lighttpddir}/cgi-bin
+%dir %{_lighttpddir}/html
+%{_lighttpddir}/html/*
+
 %files mod_compress
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/mod_compress.so
This page took 0.098964 seconds and 4 git commands to generate.