X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=apache.spec;h=61437dcf2ff2d4662f3ae8fb6ad4714c31f14eac;hb=3c32885b9c366f46bfe169753459ac24981d96e4;hp=b29e3b60bfbd880e77075b80fe1e02e1b3f43f65;hpb=ae7f55910b30c49660d981885f049f79b5d4a235;p=packages%2Fapache.git diff --git a/apache.spec b/apache.spec index b29e3b6..61437dc 100644 --- a/apache.spec +++ b/apache.spec @@ -26,10 +26,12 @@ # this is internal macro, don't change to %%apache_modules_api %define _apache_modules_api 20051115 -%if "%{pld_release}" != "ac" -%define openssl_ver 0.9.8i -%else +%if "%{pld_release}" == "ac" %define openssl_ver 0.9.7d +%define apr_ver 1:1.2 +%else +%define openssl_ver 0.9.8i +%define apr_ver 1:1.4.5 %endif %include /usr/lib/rpm/macros.perl Summary: The most widely used Web server on the Internet @@ -41,12 +43,12 @@ Summary(pt_BR.UTF-8): Servidor HTTPD para prover serviços WWW Summary(ru.UTF-8): Самый популярный веб-сервер Summary(tr.UTF-8): Lider WWW tarayıcı Name: apache -Version: 2.2.17 -Release: 9 +Version: 2.2.22 +Release: 2 License: Apache v2.0 Group: Networking/Daemons/HTTP Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.gz -# Source0-md5: 66d8e107f85acc039fd5e624e85728a9 +# Source0-md5: d77fa5af23df96a8af68ea8114fa6ce1 Source1: %{name}.init Source2: %{name}.logrotate Source3: %{name}.sysconfig @@ -76,6 +78,8 @@ Source26: %{name}-mod_log_config.conf Source27: %{name}-mod_mime_magic.conf Source28: %{name}-mod_cache.conf Source29: %{name}-example.net.conf +Source30: %{name}.tmpfiles +Source31: %{name}.service Patch0: %{name}-configdir_skip_backups.patch Patch1: %{name}-layout.patch Patch2: %{name}-suexec.patch @@ -98,19 +102,15 @@ Patch24: %{name}-bug-48094.patch # http://scripts.mit.edu/trac/browser/trunk/server/common/patches/httpd-2.2.x-mod_ssl-sessioncaching.patch?rev=1348 Patch25: httpd-2.2.x-mod_ssl-sessioncaching.patch Patch26: apache-mod_vhost_alias_docroot.patch -Patch27: apache-bug-41743.patch # http://mpm-itk.sesse.net/ Patch28: apache-mpm-itk.patch Patch29: libtool-tag.patch URL: http://httpd.apache.org/ -BuildRequires: apr-devel >= 1:1.2 -BuildRequires: apr-util-devel >= 1:1.3 -BuildRequires: autoconf +BuildRequires: apr-devel >= %{apr_ver} +BuildRequires: apr-util-devel >= 1:1.3.10-2 +BuildRequires: autoconf >= 2.13 BuildRequires: automake -BuildRequires: db-devel %{?with_distcache:BuildRequires: distcache-devel} -BuildRequires: expat-devel -BuildRequires: gdbm-devel >= 1.8.3 BuildRequires: libtool >= 2:1.5 %{?with_ldap:BuildRequires: openldap-devel >= 2.3.0} %{?with_ssl:BuildRequires: openssl-devel >= %{openssl_ver}} @@ -120,7 +120,7 @@ BuildRequires: pkgconfig BuildRequires: rpm >= 4.4.9-56 BuildRequires: rpm-build >= 4.4.0 BuildRequires: rpm-perlprov >= 4.1-13 -BuildRequires: rpmbuild(macros) >= 1.268 +BuildRequires: rpmbuild(macros) >= 1.639 BuildRequires: sed >= 4.0 BuildRequires: zlib-devel Requires: %{name}-errordocs = %{version}-%{release} @@ -144,6 +144,19 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _libexecdir %{_libdir}/apache %define _cgibindir %{_prefix}/lib/cgi-bin/%{name} +%define httpd_restart \ + if /bin/systemd_booted; then \ + /bin/systemctl restart httpd.service \ + else \ + %service -q httpd restart \ + fi +%define httpd_reload \ + if /bin/systemd_booted; then \ + /bin/systemctl reload httpd.service \ + else \ + %service -q httpd reload \ + fi + %description Apache is a powerful, full-featured, efficient and freely-available Web server. Apache is also the most popular Web server on the @@ -198,9 +211,11 @@ Requires(pre): /usr/bin/getgid Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd Requires: /sbin/chkconfig -Requires: apr >= 1:1.2 +Requires: apr >= %{apr_ver} Requires: psmisc >= 20.1 Requires: rc-scripts >= 0.4.1.23 +Requires: sed >= 4.0 +Requires: systemd-units Provides: apache(modules-api) = %{_apache_modules_api} Provides: group(http) Provides: user(http) @@ -1791,12 +1806,11 @@ Dwa programy testowe/przykładowe cgi: test-cgi and print-env. %patch24 -p1 %patch25 -p1 %patch26 -p1 -%patch27 -p0 %patch28 -p1 %patch29 -p1 # using system apr, apr-util and pcre -rm -rf srclib/{apr,apr-util,pcre} +%{__rm} -r srclib/{apr,apr-util,pcre} # sanity check MODULES_API=`awk '/#define MODULE_MAGIC_NUMBER_MAJOR/ {print $3}' include/ap_mmn.h` @@ -1921,21 +1935,29 @@ done %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig} \ +install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig,systemd/system} \ $RPM_BUILD_ROOT%{_var}/{log/{httpd,archive/httpd},{run,cache}/httpd,lock/mod_dav} \ $RPM_BUILD_ROOT%{_sysconfdir}/{webapps.d,conf.d,vhosts.d} \ - $RPM_BUILD_ROOT%{_datadir}/{cgi-bin,vhosts} + $RPM_BUILD_ROOT%{_datadir}/{cgi-bin,vhosts} \ + $RPM_BUILD_ROOT/usr/lib/tmpfiles.d \ + $RPM_BUILD_ROOT%{systemdunitdir} # prefork is default one %{__make} -C buildmpm-prefork install \ DESTDIR=$RPM_BUILD_ROOT +mpm=prefork +sed -e "s|@EXEC@|%{_sbindir}/httpd.${mpm}|g;s|@NAME@|${mpm}|g" < %{SOURCE31} \ + > $RPM_BUILD_ROOT%{systemdunitdir}/httpd-${mpm}.service # install other mpm-s for mpm in worker %{?with_event:event} %{?with_itk:itk}; do install buildmpm-${mpm}/httpd.${mpm} $RPM_BUILD_ROOT%{_sbindir}/httpd.${mpm} + sed -e "s|@EXEC@|%{_sbindir}/httpd.${mpm}|g;s|@NAME@|${mpm}|g" < %{SOURCE31} \ + > $RPM_BUILD_ROOT%{systemdunitdir}/httpd-${mpm}.service done ln -s httpd.prefork $RPM_BUILD_ROOT%{_sbindir}/httpd +ln -s %{systemdunitdir}/httpd-prefork.service $RPM_BUILD_ROOT/etc/systemd/system/httpd.service ln -s %{_libexecdir} $RPM_BUILD_ROOT%{_sysconfdir}/modules ln -s %{_localstatedir}/run/httpd $RPM_BUILD_ROOT%{_sysconfdir}/run ln -s %{_var}/log/httpd $RPM_BUILD_ROOT%{_sysconfdir}/logs @@ -1981,6 +2003,8 @@ cp -a %{SOURCE21} $CFG/10_mpm.conf cp -a %{SOURCE22} $CFG/20_languages.conf cp -a %{SOURCE29} $RPM_BUILD_ROOT%{_sysconfdir}/vhosts.d/example.net.conf +install %{SOURCE30} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf + echo "LoadModule alias_module modules/mod_alias.so" > $CFG/00_mod_alias.conf echo "LoadModule authn_file_module modules/mod_authn_file.so" > $CFG/00_mod_authn_file.conf echo "LoadModule authn_dbm_module modules/mod_authn_dbm.so" > $CFG/00_mod_authn_dbm.conf @@ -2032,7 +2056,7 @@ echo "LoadModule substitute_module modules/mod_substitute.so" > $CFG/00_mod_subs echo "LoadModule reqtimeout_module modules/mod_reqtimeout.so" >> $CFG/00_mod_reqtimeout.conf # anything in style dir not ending with .css is trash -rm -rf $RPM_BUILD_ROOT%{_datadir}/manual/style/{lang,latex,xsl} +%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/manual/style/{lang,latex,xsl} find $RPM_BUILD_ROOT%{_datadir}/manual/style -type f ! -name '*.css' -print0 | xargs -0r rm -f # find manual files @@ -2061,11 +2085,11 @@ EOF ln -sf suexec $RPM_BUILD_ROOT%{_sbindir}/suexec.fcgi # no value -rm $RPM_BUILD_ROOT%{_libexecdir}/build/config.nice -rm $RPM_BUILD_ROOT%{_libexecdir}/*.exp -rm $RPM_BUILD_ROOT%{_sysconfdir}/mime.types -rm $RPM_BUILD_ROOT%{_sysconfdir}/httpd.prefork.conf -rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/{extra,original} +%{__rm} $RPM_BUILD_ROOT%{_libexecdir}/build/config.nice +%{__rm} $RPM_BUILD_ROOT%{_libexecdir}/*.exp +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/mime.types +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.prefork.conf +%{__rm} -r $RPM_BUILD_ROOT%{_sysconfdir}/{extra,original} %clean rm -rf $RPM_BUILD_ROOT @@ -2099,18 +2123,21 @@ exit 0 /sbin/chkconfig --add httpd umask 137 touch /var/log/httpd/{access,error,agent,referer}_log +%systemd_post httpd.service %preun base if [ "$1" = "0" ]; then %service httpd stop /sbin/chkconfig --del httpd fi +%systemd_preun httpd.service %postun base if [ "$1" = "0" ]; then %userremove http %groupremove http fi +%systemd_reload %triggerpostun base -- %{name} < 2.0.50-6.9 %banner %{name}-2.0.50-6 << EOF @@ -2198,6 +2225,13 @@ Please report bugs to . EOF +%triggerpostun base -- %{name} < 2.2.22-2 +. /etc/sysconfig/httpd +if [ -z "$HTTPD_CONF" ]; then + echo 'HTTPD_CONF="/etc/httpd/apache.conf"' >> /etc/sysconfig/httpd +fi +%systemd_trigger httpd.service + %triggerpostun mod_ssl -- %{name}-mod_ssl < 1:2.2.0-3.1 cp -f /etc/httpd/conf.d/40_mod_ssl.conf{,.rpmsave} sed -i -e ' @@ -2219,18 +2253,18 @@ mv -f /var/lock/subsys/httpd{.disabled,} 2>/dev/null # main package are very important for all this to work. # restart webserver at the end of transaction -%service httpd restart +%httpd_restart # macro called at module post scriptlet %define module_post \ if [ "$1" = "1" ]; then \ - %service -q httpd restart \ + %httpd_restart \ fi # macro called at module postun scriptlet %define module_postun \ if [ "$1" = "0" ]; then \ - %service -q httpd restart \ + %httpd_restart \ fi # it's sooo annoying to write them @@ -2309,22 +2343,22 @@ fi %post cgi_test if [ "$1" = "1" ]; then - %service -q httpd reload + %httpd_reload fi %postun cgi_test if [ "$1" = "0" ]; then - %service -q httpd reload + %httpd_reload fi %post errordocs if [ "$1" = "1" ]; then - %service -q httpd reload + %httpd_reload fi %postun errordocs if [ "$1" = "0" ]; then - %service -q httpd reload + %httpd_reload fi %files @@ -2346,10 +2380,10 @@ fi %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_common.conf %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mpm.conf -%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vhosts.d/example.net.conf +%attr(640,root,root) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/vhosts.d/example.net.conf %attr(640,root,root) %{_sysconfdir}/magic %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/httpd -%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/* +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/httpd %dir %{_libexecdir} @@ -2360,6 +2394,10 @@ fi %dir %attr(770,root,http) /var/run/httpd %dir %attr(770,root,http) /var/cache/httpd +/usr/lib/tmpfiles.d/%{name}.conf +%{systemdunitdir}/httpd-*.service +%config(noreplace) %verify(not md5 mtime size) /etc/systemd/system/httpd.service + %{_mandir}/man8/httpd.8* %attr(2751,root,logs) %dir /var/log/httpd @@ -2402,10 +2440,10 @@ fi %attr(755,root,root) %{_sbindir}/htdigest %attr(755,root,root) %{_sbindir}/logresolve %attr(755,root,root) %{_sbindir}/rotatelogs -%{_mandir}/man8/ab.8* +%{_mandir}/man1/ab.1* %{_mandir}/man8/apachectl.8* %{_mandir}/man1/htdigest.1* -%{_mandir}/man8/logresolve.8* +%{_mandir}/man1/logresolve.1* %{_mandir}/man8/rotatelogs.8* %files devel @@ -2418,7 +2456,7 @@ fi %{_libexecdir}/build/config_vars.mk %attr(755,root,root) %{_libexecdir}/build/*.sh %{_includedir} -%{_mandir}/man8/apxs.8* +%{_mandir}/man1/apxs.1* %files mod_actions %defattr(644,root,root,755) @@ -2703,6 +2741,7 @@ fi %attr(755,root,root) %{_sbindir}/httxt2dbm %attr(755,root,root) %{_libexecdir}/mod_rewrite.so %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_rewrite.conf +%{_mandir}/man1/httxt2dbm.1* %files mod_setenvif %defattr(644,root,root,755)