]> TLD Linux GIT Repositories - packages/apache.git/blobdiff - apache.spec
- Suggest mod_access_compat, don't require it
[packages/apache.git] / apache.spec
index c6a5cad7e12d29f81a3334a61ebfd1f381f83fa5..ba00e8a544851784261d86fcb34c5da1fd305259 100644 (file)
@@ -1,25 +1,15 @@
 # TODO:
 # - config examples for mod_*
 # - --with-suexec-uidmin=500 or =1000 ?
-# - subpackages for MPMs
-# - !!!check if all modules (*.so) are exactly the same for different MPMs
 # - check those autn modules inner deps
 # - for external packages: don't use any apache module name in dep as they
 #  differ for apache 1.3/2.0/2.2!? any better ideas? rpm Suggests: tags?
-# - for mod_auth_* modules require each auth module to require virtual authn so at least *_default
+# - for mod_auth_* modules require each auth module to require virtual authn so at least *_core
 #  is chosen?
 # - same for mod_authz
 # - mod_auth_digest and mod_auth_basic R: apache(authn) ?
-# - drop mod_case_filter* or find summary and description for them
-# - build modules only once (not with each mpm)
 # - FYI: http://wiki.apache.org/httpd/InternalDummyConnection
 
-
-# 2.4 TODO
-#
-# add new access control syntax to configs by default (mod_access_compat provides old syntax)
-
-
 # Conditional build:
 %bcond_without ssl             # build without SSL support
 %bcond_without ldap            # build without LDAP support
@@ -43,12 +33,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.4.1
-Release:       0.4
+Version:       2.4.3
+Release:       5
 License:       Apache v2.0
 Group:         Networking/Daemons/HTTP
 Source0:       http://www.apache.org/dist/httpd/httpd-%{version}.tar.gz
-# Source0-md5: 4366afbea8149ca125af01fd59a2f8a2
+# Source0-md5: 538dccd22dd18466fff3ec7948495417
 Source1:       %{name}.init
 Source2:       %{name}.logrotate
 Source3:       %{name}.sysconfig
@@ -193,7 +183,6 @@ Requires:   /sbin/chkconfig
 Requires:      apr >= %{apr_ver}
 Requires:      psmisc >= 20.1
 Requires:      rc-scripts >= 0.4.1.23
-Requires:      %{name}-mod_unixd = %{version}-%{release}
 Provides:      apache(modules-api) = %{_apache_modules_api}
 Provides:      group(http)
 Provides:      user(http)
@@ -205,6 +194,7 @@ Obsoletes:  apache-mod_optional_fn_export
 Obsoletes:     apache-mod_optional_fn_import
 Obsoletes:     apache-mod_optional_fn_import
 Obsoletes:     apache-mod_optional_hook_import
+Obsoletes:     apache(mod_unixd)
 Conflicts:     apache < 2.2.0
 Conflicts:     logrotate < 3.7-4
 # for the posttrans scriptlet, conflicts because in vserver environment rpm package is not installed.
@@ -512,6 +502,7 @@ Summary(pl.UTF-8):  Moduł Apache'a umożliwiający dostęp anonimowych użytkown
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authn_anon.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authn_core) = %{version}-%{release}
 Provides:      apache(mod_authn_anon) = %{version}-%{release}
 # compat
 Provides:      apache(mod_auth_anon) = %{version}-%{release}
@@ -537,7 +528,8 @@ Summary(pl.UTF-8):  Moduł Apache'a umożliwiający uwierzytelnianie użytkownik
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authn_dbd.html
 Requires:      %{name}-base = %{version}-%{release}
-Requires:      %{name}-mod_dbd = %{version}-%{release}
+Requires:      apache(mod_dbd) = %{version}-%{release}
+Requires:      apache(mod_authn_core) = %{version}-%{release}
 Provides:      apache(mod_authn_dbd) = %{version}-%{release}
 
 %description mod_authn_dbd
@@ -556,6 +548,7 @@ Summary(pl.UTF-8):  Moduł Apache'a umożliwiający uwierzytelnianie użytkownik
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authn_dbm.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authn_core) = %{version}-%{release}
 Provides:      apache(mod_authn_dbm) = %{version}-%{release}
 
 %description mod_authn_dbm
@@ -575,6 +568,7 @@ Group:              Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authn_core.html
 Requires:      %{name}-base = %{version}-%{release}
 Provides:      apache(mod_authn_core) = %{version}-%{release}
+Obsoletes:     apache(mod_authn_alias)
 Obsoletes:     apache-mod_authn_default < 2.4
 
 %description mod_authn_core
@@ -594,6 +588,7 @@ Summary(pl.UTF-8):  Moduł Apache'a umożliwiający uwierzytelnianie użytkownik
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authn_file.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authn_core) = %{version}-%{release}
 Provides:      apache(mod_authn_file) = %{version}-%{release}
 
 %description mod_authn_file
@@ -634,6 +629,7 @@ Summary(pl.UTF-8):  Moduł Apache'a umożliwiający uwierzytelnianie grup z użyc
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authz_dbm.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authz_core) = %{version}-%{release}
 Provides:      apache(mod_authz_dbm) = %{version}-%{release}
 
 %description mod_authz_dbm
@@ -672,6 +668,7 @@ Summary(pl.UTF-8):  Moduł Apache'a umożliwiający autoryzację grup przy użyci
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authz_groupfile.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authz_core) = %{version}-%{release}
 Provides:      apache(mod_authz_groupfile) = %{version}-%{release}
 
 %description mod_authz_groupfile
@@ -690,9 +687,10 @@ Summary(pl.UTF-8): Moduł Apache'a umożliwiający autoryzację grup w oparcu o
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authz_host.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authz_core) = %{version}-%{release}
 Provides:      apache(mod_authz_host) = %{version}-%{release}
-# for upgrade from 2.2, maybe this should be a "Suggests", but it's safer to require it by force
-Requires:      apache(mod_access_compat) = %{version}-%{release}
+# for upgrade from 2.2
+Suggests:      apache(mod_access_compat) = %{version}-%{release}
 # for apache < 2.2.0
 Provides:      apache(mod_access) = %{version}-%{release}
 Provides:      webserver(access)
@@ -717,6 +715,7 @@ Summary(pl.UTF-8):  Moduł Apache'a umożliwiający autoryzacje w oparciu o włas
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/en/mod/mod_authz_owner.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authz_core) = %{version}-%{release}
 #Requires:     any-auth-module
 Provides:      apache(mod_authz_owner) = %{version}-%{release}
 
@@ -741,6 +740,7 @@ Summary(pl.UTF-8):  Moduł Apache'a umożliwiający autoryzację użytkowników
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/en/mod/mod_authz_user.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authz_core) = %{version}-%{release}
 Provides:      apache(mod_authz_user) = %{version}-%{release}
 
 %description mod_authz_user
@@ -1555,6 +1555,7 @@ Epoch:            1
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_ssl.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_socache_shmcb) = %{version}-%{release}
 Requires:      openssl >= %{openssl_ver}
 %if "%{pld_release}" != "ac"
 Requires:      apr-util-dbm-db
@@ -1755,6 +1756,7 @@ Summary:  Manages a cache of authentication credentials to relieve the load on ba
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authn_socache.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authn_core) = %{version}-%{release}
 Provides:      apache(mod_authn_socache) = %{version}-%{release}
 
 %description mod_authn_socache
@@ -1766,6 +1768,8 @@ Summary:  Group Authorization and Login using SQL
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_authz_dbd.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_authz_core) = %{version}-%{release}
+Requires:      apache(mod_dbd) = %{version}-%{release}
 Provides:      apache(mod_authz_dbd) = %{version}-%{release}
 
 %description mod_authz_dbd
@@ -1811,8 +1815,8 @@ Summary:  Sends messages with server status to frontend proxy
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_heartbeat.html
 Requires:      %{name}-base = %{version}-%{release}
-Requires:      %{name}-mod_status = %{version}-%{release}
-Requires:      %{name}-mod_watchdog = %{version}-%{release}
+Requires:      apache(mod_status) = %{version}-%{release}
+Requires:      apache(mod_watchdog) = %{version}-%{release}
 Provides:      apache(mod_heartbeat) = %{version}-%{release}
 
 %description mod_heartbeat
@@ -1830,8 +1834,8 @@ Summary:  Centralized monitor for mod_heartbeat origin servers
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_heartmonitor.html
 Requires:      %{name}-base = %{version}-%{release}
-Requires:      %{name}-mod_status = %{version}-%{release}
-Requires:      %{name}-mod_watchdog = %{version}-%{release}
+Requires:      apache(mod_status) = %{version}-%{release}
+Requires:      apache(mod_watchdog) = %{version}-%{release}
 Provides:      apache(mod_heartmonitor) = %{version}-%{release}
 
 %description mod_heartmonitor
@@ -1936,6 +1940,7 @@ Summary:  Session support
 Group:         Networking/Daemons/HTTP
 URL:           http://httpd.apache.org/docs/2.4/mod/mod_session.html
 Requires:      %{name}-base = %{version}-%{release}
+Requires:      apache(mod_dbd) = %{version}-%{release}
 Provides:      apache(mod_session) = %{version}-%{release}
 Provides:      apache(mod_session_cookie) = %{version}-%{release}
 Provides:      apache(mod_session_dbd) = %{version}-%{release}
@@ -1971,16 +1976,6 @@ Provides:        apache(mod_socache_shmcb) = %{version}-%{release}
 %description mod_socache
 Shared object cache provider.
 
-%package mod_unixd
-Summary:       Basic (required) security for Unix-family platforms
-Group:         Networking/Daemons/HTTP
-URL:           http://httpd.apache.org/docs/2.4/mod/mod_unixd.html
-Requires:      %{name}-base = %{version}-%{release}
-Provides:      apache(mod_unixd) = %{version}-%{release}
-
-%description mod_unixd
-Basic (required) security for Unix-family platforms.
-
 %package mod_watchdog
 Summary:       Provides infrastructure for other modules to periodically run tasks
 Group:         Networking/Daemons/HTTP
@@ -2286,8 +2281,8 @@ echo "LoadModule authz_dbd_module modules/mod_authz_dbd.so" > $CFG/00_mod_authz_
 echo "LoadModule buffer_module modules/mod_buffer.so" > $CFG/00_mod_buffer.conf
 echo "LoadModule data_module   modules/mod_data.so" > $CFG/00_mod_data.conf
 echo "LoadModule dialup_module modules/mod_dialup.so" > $CFG/00_mod_dialup.conf
-echo "LoadModule heartbeat_module      modules/mod_heartbeat.so" > $CFG/00_mod_heartbeat.conf
-echo "LoadModule heartmonitor_module   modules/mod_heartmonitor.so" > $CFG/00_mod_heartmonitor.conf
+echo "LoadModule heartbeat_module      modules/mod_heartbeat.so" > $CFG/01_mod_heartbeat.conf
+echo "LoadModule heartmonitor_module   modules/mod_heartmonitor.so" > $CFG/01_mod_heartmonitor.conf
 echo "#LoadModule lbmethod_bybusyness_module   modules/mod_lbmethod_bybusyness.so" > $CFG/00_mod_lbmethod.conf
 echo "#LoadModule lbmethod_byrequests_module   modules/mod_lbmethod_byrequests.so" >> $CFG/00_mod_lbmethod.conf
 echo "#LoadModule lbmethod_bytraffic_module    modules/mod_lbmethod_bytraffic.so" >> $CFG/00_mod_lbmethod.conf
@@ -2306,7 +2301,6 @@ echo "#LoadModule slotmem_shm_module      modules/mod_slotmem_shm.so" >> $CFG/00_mod_
 echo "#LoadModule socache_dbm_module   modules/mod_socache_dbm.so" > $CFG/00_mod_socache.conf
 echo "#LoadModule socache_memcache_module      modules/mod_socache_memcache.so" >> $CFG/00_mod_socache.conf
 echo "#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so" >> $CFG/00_mod_socache.conf
-echo "LoadModule unixd_module  modules/mod_unixd.so" > $CFG/00_mod_unixd.conf
 echo "LoadModule watchdog_module       modules/mod_watchdog.so" > $CFG/00_mod_watchdog.conf
 echo "LoadModule xml2enc_module        modules/mod_xml2enc.so" > $CFG/00_mod_xml2enc.conf
 
@@ -2325,6 +2319,9 @@ s/^.*\.\(pt-br\)/%%lang(pt_BR) &/
 ' >> "$cur/manual.files"
 cd $cur
 
+# move apxs to _sbindir
+mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/apxs
+
 # cgi_test: create config file with ScriptAlias
 cat << 'EOF' > $CFG/09_cgi_test.conf
 ScriptAlias /cgi-bin/printenv %{_cgibindir}/printenv
@@ -2369,7 +2366,7 @@ if [ ! -L /etc/httpd/httpd.conf ]; then
 fi
 if [ -f /etc/sysconfig/httpd ]; then
        MPM=$(grep HTTPD_MPM /etc/sysconfig/httpd |sed 's,HTTPD_MPM=,,;s,",,g')
-       if [ -n $MPM ]; then
+       if [ ! -z $MPM ]; then
                echo "LoadModule mpm_${MPM}_module                modules/mod_mpm_${MPM}.so" > /etc/httpd/conf.d/10_mpm.conf.rpmnew
                cat /etc/httpd/conf.d/10_mpm.conf >> /etc/httpd/conf.d/10_mpm.conf.rpmnew
                mv /etc/httpd/conf.d/10_mpm.conf.rpmnew /etc/httpd/conf.d/10_mpm.conf
@@ -2483,22 +2480,16 @@ Please report bugs to <http://bugs.pld-linux.org/>.
 EOF
 
 %triggerpostun base -- %{name} < 2.4.0
-%banner -e %{name} << EOF
-WARNING!!!
-Since apache-2.4 mod_authn_alias has been obsoleted.
-If you use access control (Deny,Allow) install mod_access_compat by doing:
-poldek -ivh %{name}-mod_access_compat
-
-In apache-2.4 mod_authn_default and mod_authz_default have been obsoleted by
-mod_authn_core and authz_core. If you used these modules install the new ones by invoking:
-poldek -ivh %{name}-mod_authn_core
-and/or
-poldek -ivh %{name}-mod_authz_core
-
-For more information on how to upgrade from Apache 2.2 visit:
-http://httpd.apache.org/docs/2.4/upgrading.html
-EOF
-
+cp -f /etc/httpd/apache.conf{,.rpmsave}
+sed -i -e '
+       /^DefaultType.*/s,.*,,
+       /^Include /s,^Include ,IncludeOptional ,
+       /^NameVirtualHost.*/s,.*,,
+       /^User/s,^,LoadModule unixd_module modules/mod_unixd.so\n,
+' /etc/httpd/apache.conf
+sed -i -e '
+       s,^LockFile /var/run/httpd/accept.lock,Mutex file:/var/run/httpd/,g
+' /etc/httpd/conf.d/10_mpm.conf
 
 %triggerpostun mod_ssl -- %{name}-mod_ssl < 1:2.2.0-3.1
 cp -f /etc/httpd/conf.d/40_mod_ssl.conf{,.rpmsave}
@@ -2507,6 +2498,13 @@ sed -i -e '
        s,/var/cache/apache,/var/cache/httpd,g
 ' /etc/httpd/conf.d/40_mod_ssl.conf
 
+%triggerpostun mod_ssl -- %{name}-mod_ssl < 1:2.4.0
+cp -f /etc/httpd/conf.d/40_mod_ssl.conf{,.rpmsave}
+sed -i -e '
+       /^SSLMutex/s,^,#,
+       /^NameVirtualHost.*/s,.*,,
+' /etc/httpd/conf.d/40_mod_ssl.conf
+
 %posttrans base
 # restore lock which we disabled in pretrans
 mv -f /var/lock/subsys/httpd{.disabled,} 2>/dev/null
@@ -2626,7 +2624,6 @@ fi
 %module_scripts mod_session
 %module_scripts mod_slotmem
 %module_scripts mod_socache
-%module_scripts mod_unixd
 %module_scripts mod_watchdog
 %module_scripts mod_xml2enc
 
@@ -2672,10 +2669,11 @@ fi
 %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/*
-# MPM modules
+# required modules
 %attr(755,root,root) %{_libexecdir}/mod_mpm_event.so
 %attr(755,root,root) %{_libexecdir}/mod_mpm_prefork.so
 %attr(755,root,root) %{_libexecdir}/mod_mpm_worker.so
+%attr(755,root,root) %{_libexecdir}/mod_unixd.so
 
 %dir %{_libexecdir}
 
@@ -2718,6 +2716,7 @@ fi
 %attr(755,root,root) %{_libexecdir}/mod_suexec.so
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_suexec.conf
 %{_mandir}/man8/suexec.8*
+%{_mandir}/man8/fcgistarter.8*
 
 %files index
 %defattr(644,root,root,755)
@@ -2738,7 +2737,7 @@ fi
 
 %files devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/apxs
+%attr(755,root,root) %{_sbindir}/apxs
 %attr(755,root,root) %{_sbindir}/envvars*
 %dir %{_libexecdir}
 %dir %{_libexecdir}/build
@@ -3189,11 +3188,6 @@ fi
 %attr(755,root,root) %{_libexecdir}/mod_socache_memcache.so
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_socache.conf
 
-%files mod_unixd
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libexecdir}/mod_unixd.so
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_unixd.conf
-
 %files mod_watchdog
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libexecdir}/mod_watchdog.so