X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=lighttpd.spec;h=44bcfafa99e78bde6f9c59ce28c0bbfc86929628;hb=d1efd49;hp=bf9fa24436bed97f5252cb556ee21237e142ae40;hpb=af35593f3ebe9e92f7df1ed17ca500c9c62e5752;p=packages%2Flighttpd.git diff --git a/lighttpd.spec b/lighttpd.spec index bf9fa24..44bcfaf 100644 --- a/lighttpd.spec +++ b/lighttpd.spec @@ -1,4 +1,11 @@ -# Conditional build for lighttpd: + +# TODO: +# - provide or autogenerate self signed cert in post, so after installing +# lighttpd-ssl server will still work +# - patch with mod_websocket: https://github.com/Juniper/lighttpd-for-juise +# +# Conditional build: +%bcond_with tests # build with tests %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) @@ -22,12 +29,12 @@ Summary: Fast and light HTTP server Summary(pl.UTF-8): Szybki i lekki serwer HTTP Name: lighttpd -Version: 1.4.26 -Release: 6 +Version: 1.4.35 +Release: 1 License: BSD Group: Networking/Daemons/HTTP Source0: http://download.lighttpd.net/lighttpd/releases-1.4.x/%{name}-%{version}.tar.bz2 -# Source0-md5: a682c8efce47a2f4263a247ba0813c9b +# Source0-md5: f7a88130ee9984b421ad8aa80629750a Source1: %{name}.init Source2: %{name}.conf Source3: %{name}.user @@ -46,6 +53,9 @@ Source11: %{name}-pld.html Source12: %{name}.monitrc Source13: branch.sh Source14: TODO +Source15: %{name}.upstart +Source16: %{name}.tmpfiles +Source17: %{name}.service Source100: %{name}-mod_access.conf Source101: %{name}-mod_accesslog.conf Source102: %{name}-mod_alias.conf @@ -84,19 +94,24 @@ Source134: %{name}-mod_magnet.conf Source135: %{name}-mod_extforward.conf Source136: %{name}-mod_h264_streaming.conf Source137: %{name}-mod_cgi_php.conf -Patch100: %{name}-branch.diff +Source138: %{name}-mod_compress.tmpwatch +#Patch100: %{name}-branch.diff Patch0: %{name}-use_bin_sh.patch Patch1: %{name}-mod_evasive-status_code.patch Patch2: %{name}-mod_h264_streaming.patch Patch3: %{name}-branding.patch -Patch4: %{name}-modinit-before-fork.patch Patch5: %{name}-mod_deflate.patch -Patch6: etag-32bit-overflow.patch -#Patch8: %{name}-errorlog-before-fork.patch +Patch6: test-port-setup.patch +#Patch: %{name}-modinit-before-fork.patch +#Patch: %{name}-errorlog-before-fork.patch URL: http://www.lighttpd.net/ %{?with_xattr:BuildRequires: attr-devel} BuildRequires: autoconf >= 2.57 +%if "%{pld_release}" != "ac" +BuildRequires: automake >= 1:1.11.2 +%else BuildRequires: automake +%endif BuildRequires: bzip2-devel BuildRequires: fcgi-devel %{?with_gamin:BuildRequires: gamin-devel} @@ -112,7 +127,8 @@ BuildRequires: mailcap >= 2.1.14-4.4 %{?with_ssl:BuildRequires: openssl-devel} BuildRequires: pcre-devel BuildRequires: pkgconfig -BuildRequires: rpmbuild(macros) >= 1.268 +BuildRequires: rpm >= 4.4.9-56 +BuildRequires: rpmbuild(macros) >= 1.647 %{?with_webdav_props:BuildRequires: sqlite3-devel} %{?with_valgrind:BuildRequires: valgrind} BuildRequires: which @@ -129,8 +145,10 @@ Requires(pre): /usr/sbin/usermod Requires: %{name}-mod_dirlisting = %{version}-%{release} Requires: %{name}-mod_indexfile = %{version}-%{release} Requires: %{name}-mod_staticfile = %{version}-%{release} -Requires: rc-scripts >= 0.4.1.26-2 +Requires: rc-scripts >= 0.4.3.0 Requires: rpm-whiteout >= 1.5 +Requires: systemd-units >= 38 +Suggests: %{name}-mod_accesslog Provides: group(http) Provides: group(lighttpd) Provides: user(lighttpd) @@ -812,8 +830,8 @@ Plik monitrc do monitorowania serwera www lighttpd. %prep %setup -q -%patch100 -p0 -%patch4 -p0 +#%patch100 -p0 +#%patch4 -p0 %patch0 -p1 %patch1 -p1 %patch2 -p1 @@ -840,8 +858,6 @@ fi %{__automake} %configure \ - --enable-maintainer-mode \ - --with-distribution="PLD Linux" \ %{!?with_ipv6:--disable-ipv6} \ %{!?with_largefile:--disable-lfs} \ %{?with_valgrind:--with-valgrind} \ @@ -859,88 +875,103 @@ fi # -j1 as src/mod_ssi_exprparser.h regeneration deps are broken %{__make} -j1 +%if %{with tests} +export LIGHTTPD_TEST_PORT=$((2048 + RANDOM % 10)) +%{__make} check +%endif + %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_lighttpddir}/{cgi-bin,html},/etc/{logrotate.d,rc.d/init.d,sysconfig,monit}} \ +install -d $RPM_BUILD_ROOT{%{_lighttpddir}/{cgi-bin,html},/etc/{logrotate.d,rc.d/init.d,sysconfig,init,monit}} \ $RPM_BUILD_ROOT%{_sysconfdir}/{conf,vhosts,webapps}.d \ $RPM_BUILD_ROOT{/var/log/{%{name},archive/%{name}},/var/run/%{name}} \ $RPM_BUILD_ROOT%{_datadir}/lighttpd/errordocs \ $RPM_BUILD_ROOT/var/lib/lighttpd \ - $RPM_BUILD_ROOT/var/cache/lighttpd/mod_compress + $RPM_BUILD_ROOT/var/cache/lighttpd/mod_compress \ + $RPM_BUILD_ROOT{%{systemdtmpfilesdir},%{systemdunitdir}} %{__make} install \ DESTDIR=$RPM_BUILD_ROOT -install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} -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} -install %{SOURCE12} $RPM_BUILD_ROOT/etc/monit/%{name}.monitrc +install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} +cp -p %{SOURCE2} %{SOURCE3} mime.types.conf $RPM_BUILD_ROOT%{_sysconfdir} +cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/%{name} +cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/%{name} +cp -p %{SOURCE12} $RPM_BUILD_ROOT/etc/monit/%{name}.monitrc +cp -p %{SOURCE15} $RPM_BUILD_ROOT/etc/init/%{name}.conf +cp -p %{SOURCE16} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf +cp -p %{SOURCE17} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service rm -f $RPM_BUILD_ROOT%{_libdir}/*.la # 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 +cp -p %{SOURCE7} %{SOURCE8} %{SOURCE9} $RPM_BUILD_ROOT%{_lighttpddir}/html +cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_lighttpddir}/html/pld_button.png +cp -p %{SOURCE11} $RPM_BUILD_ROOT%{_lighttpddir}/html/index.html # NOTE: the order of the modules is somewhat important as the modules are # handled in the way they are specified. mod_rewrite should always be the first # module, mod_accesslog always the last. -install %{SOURCE117} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/10_mod_rewrite.conf -install %{SOURCE116} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/11_mod_redirect.conf - -install %{SOURCE100} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_access.conf -install %{SOURCE102} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_alias.conf -install %{SOURCE103} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_auth.conf -install %{SOURCE104} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_cgi.conf -install %{SOURCE137} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_cgi_php.conf -install %{SOURCE105} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_cml.conf -install %{SOURCE107} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_deflate.conf -install %{SOURCE108} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_dirlisting.conf -install %{SOURCE109} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_evasive.conf -install %{SOURCE110} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_evhost.conf -install %{SOURCE112} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_fastcgi.conf -install %{SOURCE113} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_flv_streaming.conf -install %{SOURCE136} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_h264_streaming.conf -install %{SOURCE114} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_indexfile.conf -install %{SOURCE115} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_proxy.conf -install %{SOURCE118} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_rrdtool.conf -install %{SOURCE119} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_scgi.conf -install %{SOURCE120} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_secdownload.conf -install %{SOURCE121} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_setenv.conf -install %{SOURCE122} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_simple_vhost.conf -install %{SOURCE123} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_ssi.conf -install %{SOURCE124} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_staticfile.conf -install %{SOURCE125} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_status.conf -install %{SOURCE126} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_trigger_b4_dl.conf -install %{SOURCE127} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_userdir.conf -install %{SOURCE128} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_usertrack.conf -install %{SOURCE129} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_webdav.conf -install %{SOURCE133} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_mysql_vhost.conf - -install %{SOURCE134} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/55_mod_magnet.conf -install %{SOURCE111} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/55_mod_expire.conf - -install %{SOURCE106} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/60_mod_compress.conf - -install %{SOURCE101} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/90_mod_accesslog.conf -install %{SOURCE135} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/91_mod_extforward.conf - -install %{SOURCE130} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/php-spawned.conf -install %{SOURCE131} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/php-external.conf -install %{SOURCE132} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/ssl.conf +conf_available=$RPM_BUILD_ROOT%{_sysconfdir}/conf.d +conf_enabled=../ + +cp -p %{SOURCE117} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/10_mod_rewrite.conf +cp -p %{SOURCE116} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/11_mod_redirect.conf + +cp -p %{SOURCE100} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_access.conf +cp -p %{SOURCE102} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_alias.conf +cp -p %{SOURCE103} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_auth.conf +cp -p %{SOURCE104} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_cgi.conf +cp -p %{SOURCE137} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_cgi_php.conf +cp -p %{SOURCE105} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_cml.conf +cp -p %{SOURCE107} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_deflate.conf +cp -p %{SOURCE108} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_dirlisting.conf +cp -p %{SOURCE109} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_evasive.conf +cp -p %{SOURCE110} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_evhost.conf +cp -p %{SOURCE112} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_fastcgi.conf +cp -p %{SOURCE113} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_flv_streaming.conf +cp -p %{SOURCE136} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_h264_streaming.conf +cp -p %{SOURCE114} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_indexfile.conf +cp -p %{SOURCE115} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_proxy.conf +cp -p %{SOURCE118} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_rrdtool.conf +cp -p %{SOURCE119} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_scgi.conf +cp -p %{SOURCE120} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_secdownload.conf +cp -p %{SOURCE121} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_setenv.conf +cp -p %{SOURCE122} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_simple_vhost.conf +cp -p %{SOURCE123} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_ssi.conf +cp -p %{SOURCE124} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_staticfile.conf +cp -p %{SOURCE125} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_status.conf +cp -p %{SOURCE126} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_trigger_b4_dl.conf +cp -p %{SOURCE127} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_userdir.conf +cp -p %{SOURCE128} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_usertrack.conf +cp -p %{SOURCE129} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_webdav.conf +cp -p %{SOURCE133} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/50_mod_mysql_vhost.conf + +cp -p %{SOURCE134} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/55_mod_magnet.conf +cp -p %{SOURCE111} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/55_mod_expire.conf + +cp -p %{SOURCE106} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/60_mod_compress.conf + +cp -p %{SOURCE101} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/90_mod_accesslog.conf +cp -p %{SOURCE135} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/91_mod_extforward.conf + +cp -p %{SOURCE130} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/php-spawned.conf +cp -p %{SOURCE131} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/php-external.conf +cp -p %{SOURCE132} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/ssl.conf touch $RPM_BUILD_ROOT/var/lib/lighttpd/lighttpd.rrd +install -d $RPM_BUILD_ROOT/etc/tmpwatch +cp -p %{SOURCE138} $RPM_BUILD_ROOT/etc/tmpwatch/lighttpd-mod_compress.conf + %if %{without mysql} # avoid packaging dummy module -rm -f $RPM_BUILD_ROOT%{_libdir}/mod_mysql_vhost.so -rm -f $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/*_mod_mysql_vhost.conf +%{__rm} $RPM_BUILD_ROOT%{_libdir}/mod_mysql_vhost.so +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/*_mod_mysql_vhost.conf %endif %if %{without deflate} -rm -f $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/*_mod_deflate.conf +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/conf.d/*_mod_deflate.conf %endif touch $RPM_BUILD_ROOT/var/log/%{name}/{access,error,breakage}.log @@ -963,12 +994,14 @@ for a in access.log error.log breakage.log; do fi done /sbin/chkconfig --add %{name} +%systemd_post %{name}.service %preun if [ "$1" = "0" ]; then %service %{name} stop /sbin/chkconfig --del %{name} fi +%systemd_preun %{name}.service %postun if [ "$1" = "0" ]; then @@ -976,13 +1009,14 @@ if [ "$1" = "0" ]; then %groupremove lighttpd %groupremove http fi +%systemd_reload %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) +# 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. @@ -1066,7 +1100,7 @@ fi %files %defattr(644,root,root,755) -%doc NEWS README doc/lighttpd.conf doc/*.txt doc/rrdtool-graph.sh PLD-TODO +%doc NEWS README PLD-TODO %dir %attr(751,root,lighttpd) %{_sysconfdir} %dir %attr(750,root,root) %{_sysconfdir}/conf.d %dir %attr(750,root,root) %{_sysconfdir}/vhosts.d @@ -1074,6 +1108,7 @@ fi %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 +%config(noreplace) %verify(not md5 mtime size) /etc/init/%{name}.conf %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name} %attr(750,root,root) %dir /var/log/archive/%{name} @@ -1082,6 +1117,8 @@ fi %attr(644,lighttpd,lighttpd) %ghost /var/log/%{name}/error.log %attr(644,lighttpd,lighttpd) %ghost /var/log/%{name}/breakage.log %dir %attr(770,root,lighttpd) /var/run/%{name} +%{systemdtmpfilesdir}/%{name}.conf +%{systemdunitdir}/%{name}.service %attr(754,root,root) /etc/rc.d/init.d/%{name} %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/* %attr(755,root,root) %{_sbindir}/lighttpd @@ -1140,6 +1177,7 @@ fi %files mod_compress %defattr(644,root,root,755) +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/tmpwatch/lighttpd-mod_compress.conf %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*mod_compress.conf %attr(755,root,root) %{_libdir}/mod_compress.so %dir %attr(775,root,lighttpd) /var/cache/lighttpd/mod_compress