]> TLD Linux GIT Repositories - packages/apache.git/blobdiff - apache.spec
- pretrans maybe? :)
[packages/apache.git] / apache.spec
index a6b31768213acc268a8ad6df5e7f6a961450ef65..c7e0457f14403a3a116d68d18dee091e9711c2a1 100644 (file)
 # - 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
+#
+# mod_authn/z_default changed into mod_authn/z_core - trigger existing configs?
+
+
 # Conditional build:
 %bcond_without ssl             # build without SSL support
 %bcond_without ldap            # build without LDAP support
 %bcond_without peruser         # peruser MPM
-%bcond_without event           # event MPM
 %bcond_with    itk             # ITK MPM
 %bcond_with    distcache       # distcache support
 %bcond_with    bucketeer       # debug one
@@ -78,25 +84,19 @@ Patch1:             %{name}-layout.patch
 Patch2:                %{name}-suexec.patch
 Patch3:                %{name}-branding.patch
 Patch4:                %{name}-apr.patch
-# what about this? it isn't applied...
-Patch6:                httpd-2.0.40-xfsz.patch
-Patch7:                %{name}-syslibs.patch
-Patch8:                httpd-2.0.45-encode.patch
-Patch9:                %{name}-paths.patch
-Patch10:       httpd-2.0.46-dav401dest.patch
-Patch12:       httpd-2.0.46-sslmutex.patch
-Patch14:       httpd-2.0.48-corelimit.patch
-Patch15:       httpd-2.0.48-debuglog.patch
-Patch18:       %{name}-v6only-ENOPROTOOPT.patch
-Patch19:       %{name}-conffile-path.patch
-Patch23:       %{name}-suexec_fcgi.patch
-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
+Patch5:                %{name}-syslibs.patch
+Patch6:                httpd-2.0.45-encode.patch
+Patch7:                %{name}-paths.patch
+Patch8:                httpd-2.0.46-dav401dest.patch
+Patch9:                httpd-2.0.48-corelimit.patch
+Patch10:       httpd-2.0.48-debuglog.patch
+Patch11:       %{name}-v6only-ENOPROTOOPT.patch
+Patch12:       %{name}-conffile-path.patch
+Patch13:       %{name}-suexec_fcgi.patch
+Patch14:       apache-mod_vhost_alias_docroot.patch
 # http://mpm-itk.sesse.net/
-Patch28:       apache-mpm-itk.patch
-Patch29:       libtool-tag.patch
+Patch15:       apache-mpm-itk.patch
+Patch16:       libtool-tag.patch
 URL:           http://httpd.apache.org/
 BuildRequires: apr-devel >= %{apr_ver}
 BuildRequires: apr-util-devel >= 1:1.3.10-2
@@ -505,22 +505,6 @@ Ten moduł implementuje uwierzytelnienie HTTP Digest. Nie został on
 jednak zbyt obszernie przetestowany, więc jest oznaczony jako
 eksperymentalny.
 
-%package mod_authn_alias
-Summary:       Apache module that provides the ability to create extended authentication
-Summary(pl.UTF-8):     Moduł Apache'a umożliwiający tworzenie rozszerzonego uwierzytelniania
-Group:         Networking/Daemons/HTTP
-URL:           http://httpd.apache.org/docs/2.2/mod/mod_authn_alias.html
-Requires:      %{name}-base = %{version}-%{release}
-Provides:      apache(mod_authn_alias) = %{version}-%{release}
-
-%description mod_authn_alias
-This module allows extended authentication providers to be created
-within the configuration file and assigned an alias name.
-
-%description mod_authn_alias -l pl.UTF-8
-Ten moduł umożliwia tworzenie rozszerzonych sposobów uwierzytelniania
-w pliku konfiguracyjnym i nadawanie im aliasów.
-
 %package mod_authn_anon
 Summary:       Apache module that allows "anonymous" user access to authenticated areas
 Summary(pl.UTF-8):     Moduł Apache'a umożliwiający dostęp anonimowych użytkowników do stref uwierzytelnianych
@@ -583,20 +567,21 @@ Ten moduł udostępnia frontendom uwierzytelniającym takim jak
 mod_auth_digest i mod_auth_basic uwierzytelnianie użytkowników poprzez
 wyszukiwanie w tabelach haseł DBM.
 
-%package mod_authn_default
+%package mod_authn_core
 Summary:       Apache module that rejects any credentials supplied by the user
 Summary(pl.UTF-8):     Moduł Apache'a odrzucający wszystkie dane podane przez użytkownika
 Group:         Networking/Daemons/HTTP
-URL:           http://httpd.apache.org/docs/2.2/mod/mod_authn_default.html
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_authn_core.html
 Requires:      %{name}-base = %{version}-%{release}
-Provides:      apache(mod_authn_default) = %{version}-%{release}
+Provides:      apache(mod_authn_core) = %{version}-%{release}
+Obsoletes:     apache-mod_authn_default < 2.4
 
-%description mod_authn_default
+%description mod_authn_core
 This module is designed to be the fallback module, if you don't have
 configured an authentication module like mod_auth_basic. It simply
 rejects any credentials supplied by the user.
 
-%description mod_authn_default -l pl.UTF-8
+%description mod_authn_core -l pl.UTF-8
 Ten moduł został pomyślany jako domyślny moduł uwierzytelniający,
 jeśli nie skonfigurowano modułu uwierzytelniającego takiego jak
 mod_auth_basic. Moduł ten po prostu odrzuca wszelkie dane przekazane
@@ -660,20 +645,21 @@ Ten moduł daje możliwość udostępniania bądź blokowania części serwisu
 WWW dla uwierzytelnionych użytkowników na podstawie ich przynależności
 do grupy zapisywanej w pliku DBM.
 
-%package mod_authz_default
+%package mod_authz_core
 Summary:       Apache module that rejects any authorization request
 Summary(pl.UTF-8):     Moduł Apache'a odrzucający wszystkie żądania autoryzacji
 Group:         Networking/Daemons/HTTP
-URL:           http://httpd.apache.org/docs/2.2/mod/mod_authz_default.html
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_authz_core.html
 Requires:      %{name}-base = %{version}-%{release}
-Provides:      apache(mod_authz_default) = %{version}-%{release}
+Provides:      apache(mod_authz_core) = %{version}-%{release}
+Obsoletes:     apache-mod_authz_default < 2.4
 
-%description mod_authz_default
+%description mod_authz_core
 This module is designed to be the fallback module, if you don't have
 configured an authorization module like mod_authz_user or
 mod_authz_groupfile. It simply rejects any authorization request.
 
-%description mod_authz_default -l pl.UTF-8
+%description mod_authz_core -l pl.UTF-8
 Ten moduł został pomyślany jako domyślny moduł autoryzujący jeśli nie
 skonfigurowano modułu autoryzującego takiego jak mod_authz_user czy
 mod_authz_groupfile. Moduł ten po prostu odrzuca wszelkie żądania
@@ -1717,6 +1703,313 @@ dynamically configured mass virtual hosting.
 Moduł umożliwia na dynamiczne konfigurowanie masowej ilości serwerów
 wirtualnych.
 
+%package mod_access_compat
+Summary:       Group authorizations based on host (name or IP address)
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_access_compat.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_access_compat) = %{version}-%{release}
+
+%description mod_access_compat
+The directives provided by mod_access_compat are used in <Directory>, 
+<Files>, and <Location> sections as well as .htaccess files to control
+access to particular parts of the server. Access can be controlled 
+based on the client hostname, IP address, or other characteristics of 
+the client request, as captured in environment variables. The Allow 
+and Deny directives are used to specify which clients are or are not 
+allowed access to the server, while the Order directive sets the 
+default access state, and configures how the Allow and Deny directives
+interact with each other.
+
+%package mod_allowmethods 
+Summary:       Easily restrict what HTTP methods can be used on the server
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_allowmethods.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_allowmethods) = %{version}-%{release}
+
+%description mod_allowmethods
+This module makes it easy to restrict what HTTP methods can used on an
+server.
+  
+%package mod_auth_form
+Summary:       Form authentication
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_auth_form.html
+Requires:      %{name}-base = %{version}-%{release}
+Requires:      %{name}-mod_session = %{version}-%{release}
+Provides:      apache(mod_auth_form) = %{version}-%{release}
+
+%description mod_auth_form
+This module allows the use of an HTML login form to restrict access by
+looking up users in the given providers. HTML forms require
+significantly more configuration than the alternatives, 
+however an HTML login form can provide a much friendlier experience
+for end users.
+
+%package mod_authn_socache
+Summary:       Manages a cache of authentication credentials to relieve the load on backends
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_authn_socache.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_authn_socache) = %{version}-%{release}
+
+%description mod_authn_socache
+Maintains a cache of authentication credentials, so that a new backend
+lookup is not required for every authenticated request.
+
+%package mod_authz_dbd
+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}
+Provides:      apache(mod_authz_dbd) = %{version}-%{release}
+
+%description mod_authz_dbd
+This module provides authorization capabilities so that authenticated
+users can be allowed or denied access to portions of the web site by
+group membership.
+
+%package mod_buffer
+Summary:       Support for request buffering
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_buffer.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_buffer) = %{version}-%{release}
+
+%description mod_buffer
+This module provides the ability to buffer the input and output filter
+stacks.
+
+%package mod_cache_disk
+Summary:       Disk based storage module for the HTTP caching filter
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_cache_disk.html
+Requires:      %{name}-base = %{version}-%{release}
+Requires:      %{name}-mod_cache = %{version}-%{release}
+Provides:      apache(mod_cache_disk) = %{version}-%{release}
+
+%description mod_cache_disk
+Implements a disk based storage manager for mod_cache.
+
+%package mod_data
+Summary:       Convert response body into an RFC2397 data URL
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_data.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_data) = %{version}-%{release}
+
+%description mod_data
+This module provides the ability to convert a response into an RFC2397
+data URL.
+
+%package mod_dialup
+Summary:       Send static content at a bandwidth rate limit, defined by the various old modem standards
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_dialup.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_dialup) = %{version}-%{release}
+
+%description mod_dialup
+It is a module that sends static content at a bandwidth rate limit,
+defined by the various old modem standards.
+
+%package mod_heartbeat
+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}
+Provides:      apache(mod_heartbeat) = %{version}-%{release}
+
+%description mod_heartbeat
+mod_heartbeat sends multicast messages to a mod_heartmonitor listener
+that advertises the servers current connection count. Usually,
+mod_heartmonitor will be running on a proxy server with
+mod_lbmethod_heartbeat loaded, which allows ProxyPass to use the
+"heartbeat" lbmethod inside of ProxyPass.
+
+mod_heartbeat itself is loaded on the origin server(s) that serve
+requests through the proxy server(s).
+
+%package mod_heartmonitor
+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}
+Provides:      apache(mod_heartmonitor) = %{version}-%{release}
+
+%description mod_heartmonitor
+mod_heartmonitor listens for server status messages generated by
+mod_heartbeat enabled origin servers and makes their status available
+to mod_lbmethod_heartbeat. This allows ProxyPass to use the
+"heartbeat" lbmethod inside of ProxyPass.
+
+This module uses the services of mod_slotmem_shm when available
+instead of flat-file storage. No configuration is required to use
+mod_slotmem_shm.
+
+%package mod_lbmethod
+Summary:       Provides bybusiness, byrequests, bytraffic and heartbeat load balancing schedulers
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_lbmethod_bybusiness.html
+#URL:          http://httpd.apache.org/docs/2.4/mod/mod_lbmethod_byrequests.html
+#URL:          http://httpd.apache.org/docs/2.4/mod/mod_lbmethod_bytraffic.html
+#URL:          http://httpd.apache.org/docs/2.4/mod/mod_lbmethod_heartbeat.html
+Requires:      %{name}-base = %{version}-%{release}
+Requires:      %{name}-mod_proxy = %{version}-%{release}
+Provides:      apache(mod_lbmethod) = %{version}-%{release}
+Provides:      apache(mod_lbmethod_bybusiness) = %{version}-%{release}
+Provides:      apache(mod_lbmethod_byrequests) = %{version}-%{release}
+Provides:      apache(mod_lbmethod_bytraffic) = %{version}-%{release}
+Provides:      apache(mod_lbmethod_heartbeat) = %{version}-%{release}
+
+%description mod_lbmethod
+Provides bybusiness, byrequests, bytraffic and heartbeat load
+balancing schedulers.
+
+%package mod_log_debug
+Summary:       Additional configurable debug logging
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_log_debug.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_log_debug) = %{version}-%{release}
+
+%description mod_log_debug
+Additional configurable debug logging.
+
+%package mod_ratelimit
+Summary:       Bandwidth Rate Limiting for Clients
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_ratelimit.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_ratelimit) = %{version}-%{release}
+
+%description mod_ratelimit
+Provides a filter named RATE_LIMIT to limit client bandwidth.
+The connection speed to be simulated is specified, in KiB/s,
+using the environment variable rate-limit.
+
+%package mod_reflector
+Summary:       Reflect a request body as a response via the output filter stack
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_reflector.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_reflector) = %{version}-%{release}
+
+%description mod_reflector
+This module allows request bodies to be reflected back to the client,
+in the process passing the request through the output filter stack.
+A suitably configured chain of filters can be used to transform the
+request into a response. This module can be used to turn an output
+filter into an HTTP service.
+
+%package mod_remoteip
+Summary:       Replaces the original client IP address for the connection
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_remoteip.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_remoteip) = %{version}-%{release}
+
+%description mod_remoteip
+Replaces the original client IP address for the connection with the
+useragent IP address list presented by a proxies or a load balancer
+via the request headers.
+
+%package mod_request
+Summary:       Filters to handle and make available HTTP request bodies
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_request.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_request) = %{version}-%{release}
+
+%description mod_request
+Filters to handle and make available HTTP request bodies.
+
+%package mod_sed
+Summary:       Filter Input (request) and Output (response) content using sed syntax
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_sed.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_sed) = %{version}-%{release}
+
+%description mod_sed
+Filter Input (request) and Output (response) content using sed syntax.
+
+%package mod_session
+Summary:       Session support
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_session.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_session) = %{version}-%{release}
+Provides:      apache(mod_session_cookie) = %{version}-%{release}
+Provides:      apache(mod_session_dbd) = %{version}-%{release}
+
+%description mod_session
+Session support.
+
+%package mod_slotmem
+Summary:       Slot-based shared memory provider
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_slotmem_plain.html
+#URL:          http://httpd.apache.org/docs/2.4/mod/mod_slotmem_shm.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_slotmem) = %{version}-%{release}
+Provides:      apache(mod_slotmem_plain) = %{version}-%{release}
+Provides:      apache(mod_slotmem_shm) = %{version}-%{release}
+
+%description mod_slotmem
+Slot-based shared memory provider.
+
+%package mod_socache
+Summary:       Shared object cache provider
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_socache_dbm.html
+#URL:          http://httpd.apache.org/docs/2.4/mod/mod_socache_memcache.html
+#URL:          http://httpd.apache.org/docs/2.4/mod/mod_socache_shmcb.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_socache) = %{version}-%{release}
+Provides:      apache(mod_socache_dbm) = %{version}-%{release}
+Provides:      apache(mod_socache_memcache) = %{version}-%{release}
+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
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_watchdog.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_watchdog) = %{version}-%{release}
+
+%description mod_watchdog
+Provides infrastructure for other modules to periodically run tasks.
+
+%package mod_xml2enc
+Summary:       Enhanced charset/internationalisation support for libxml2-based filter modules
+Group:         Networking/Daemons/HTTP
+URL:           http://httpd.apache.org/docs/2.4/mod/mod_xml2enc.html
+Requires:      %{name}-base = %{version}-%{release}
+Provides:      apache(mod_xml2enc) = %{version}-%{release}
+
+%description mod_xml2enc
+Enhanced charset/internationalisation support for libxml2-based filter
+modules.
+
 %package -n htpasswd-%{name}
 Summary:       Apache 2 htpasswd utility: manage user files for basic authentication
 Summary(pl.UTF-8):     Narzędzie htpasswd z Apache'a 2 do zarządzania plikami uwierzytelnienia basic
@@ -1769,25 +2062,18 @@ Dwa programy testowe/przykładowe cgi: test-cgi and print-env.
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
+%patch5 -p1
+%patch6 -p1
 %patch7 -p1
 %patch8 -p1
 %patch9 -p1
 %patch10 -p1
+%patch11 -p1
 %patch12 -p1
+%patch13 -p1
 %patch14 -p1
-%patch15 -p1
-%patch18 -p1
-%patch19 -p1
-%patch23 -p1
-%patch24 -p1
-# seems already applied
-#%%patch25 -p1
-%patch26 -p1
-%{?with_itk:%patch28 -p1}
-%patch29 -p1
-
-# using system apr, apr-util and pcre
-#%%{__rm} -r srclib/{apr,apr-util,pcre}
+%{?with_itk:%patch15 -p1}
+%patch16 -p1
 
 # sanity check
 MODULES_API=`awk '/#define MODULE_MAGIC_NUMBER_MAJOR/ {print $3}' include/ap_mmn.h`
@@ -1818,12 +2104,10 @@ touch ssl_expr_scan.c
 cd ../..
 
 CPPFLAGS="-DMAX_SERVER_LIMIT=200000 -DBIG_SECURITY_HOLE=1"
-for mpm in prefork worker %{?with_event:event} %{?with_itk:itk}; do
-install -d "buildmpm-${mpm}"; cd "buildmpm-${mpm}"
-../%configure \
+%configure \
        --enable-layout=TLD \
        --disable-v4-mapped \
-       $( [ "${mpm}" = "prefork" -o "${mpm}" = "worker" -o "${mpm}" = "event" -o "${mpm}" = "itk" ] && echo "--enable-exception-hook" ) \
+       --enable-exception-hook \
        --enable-modules=all \
        --enable-mods-shared=all \
        --enable-auth-anon \
@@ -1878,13 +2162,10 @@ install -d "buildmpm-${mpm}"; cd "buildmpm-${mpm}"
        --enable-speling \
        --enable-rewrite \
        --enable-so \
-       --with-program-name=httpd.${mpm} \
-       --with-mpm=${mpm} \
-%ifarch %{ix86}
-%ifnarch i386 i486
-       $( [ "${mpm}" = "leader" ] && echo "--enable-nonportable-atomics=yes" ) \
-%endif
-%endif
+       --with-program-name=httpd \
+       --with-mpm=prefork \
+       --enable-mpms-shared=all \
+       --enable-nonportable-atomics=yes \
        --with-suexec-bin=%{_sbindir}/suexec \
        --with-suexec-caller=http \
        --with-suexec-docroot=%{_datadir} \
@@ -1897,18 +2178,6 @@ install -d "buildmpm-${mpm}"; cd "buildmpm-${mpm}"
        --with-pcre
 
 %{__make}
-./httpd.${mpm} -l | grep -v "${mpm}" > modules-inside
-cd ..
-
-done
-
-for mpm in worker %{?with_event:event} %{?with_itk:itk}; do
-       if ! cmp -s buildmpm-prefork/modules-inside buildmpm-${mpm}/modules-inside; then
-               echo "List of compiled modules is different between prefork-MPM and ${mpm}-MPM!"
-               echo "Build failed."
-               exit 1
-       fi
-done
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -1919,19 +2188,13 @@ install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig} \
        $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
 
 # prefork is default one
-%{__make} -C buildmpm-prefork install \
+%{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
-# 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}
-done
-
-ln -s httpd.prefork $RPM_BUILD_ROOT%{_sbindir}/httpd
 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
-ln -s conf.d $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
+rm $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
 
 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/httpd
 cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/httpd
@@ -1975,19 +2238,18 @@ 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 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
 echo "LoadModule authn_anon_module     modules/mod_authn_anon.so" > $CFG/00_mod_authn_anon.conf
 echo "LoadModule authn_dbd_module      modules/mod_authn_dbd.so" > $CFG/00_mod_authn_dbd.conf
-echo "LoadModule authn_default_module  modules/mod_authn_default.so" > $CFG/00_mod_authn_default.conf
-echo "LoadModule authn_alias_module    modules/mod_authn_alias.so" > $CFG/00_mod_authn_alias.conf
+echo "LoadModule authn_core_module     modules/mod_authn_core.so" > $CFG/00_mod_authn_core.conf
 echo "LoadModule authz_groupfile_module        modules/mod_authz_groupfile.so" > $CFG/00_mod_authz_groupfile.conf
 echo "LoadModule authz_user_module     modules/mod_authz_user.so" > $CFG/00_mod_authz_user.conf
 echo "LoadModule authz_dbm_module      modules/mod_authz_dbm.so" > $CFG/00_mod_authz_dbm.conf
 echo "LoadModule authz_owner_module    modules/mod_authz_owner.so" > $CFG/00_mod_authz_owner.conf
 echo "LoadModule authnz_ldap_module    modules/mod_authnz_ldap.so" > $CFG/00_mod_authnz_ldap.conf
-echo "LoadModule authz_default_module  modules/mod_authz_default.so" > $CFG/00_mod_authz_default.conf
+echo "LoadModule authz_core_module     modules/mod_authz_core.so" > $CFG/00_mod_authz_core.conf
 echo "LoadModule auth_basic_module     modules/mod_auth_basic.so" > $CFG/00_mod_auth_basic.conf
 echo "LoadModule dbd_module    modules/mod_dbd.so" > $CFG/00_mod_dbd.conf
 %if %{with bucketeer}
@@ -2024,6 +2286,38 @@ echo "LoadModule usertrack_module        modules/mod_usertrack.so" > $CFG/00_mod_usertr
 echo "LoadModule unique_id_module      modules/mod_unique_id.so" > $CFG/00_mod_unique_id.conf
 echo "LoadModule substitute_module     modules/mod_substitute.so" > $CFG/00_mod_substitute.conf
 echo "LoadModule reqtimeout_module     modules/mod_reqtimeout.so" >> $CFG/00_mod_reqtimeout.conf
+echo "LoadModule access_compat_module  modules/mod_access_compat.so" > $CFG/00_mod_access_compat.conf
+echo "LoadModule allowmethods_module   modules/mod_allowmethods.so" > $CFG/00_mod_allowmethods.conf
+echo "LoadModule auth_form_module      modules/mod_auth_form.so" > $CFG/00_mod_auth_form.conf
+echo "LoadModule authn_socache_module  modules/mod_authn_socache.so" > $CFG/00_mod_authn_socache.conf
+echo "LoadModule authz_dbd_module      modules/mod_authz_dbd.so" > $CFG/00_mod_authz_dbd.conf
+echo "LoadModule buffer_module modules/mod_buffer.so" > $CFG/00_mod_buffer.conf
+echo "LoadModule cache_disk_module     modules/mod_cache_disk.so" > $CFG/00_mod_cache_disk.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 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
+echo "#LoadModule lbmethod_heartbeat_module    modules/mod_lbmethod_heartbeat.so" >> $CFG/00_mod_lbmethod.conf
+echo "LoadModule log_debug_module      modules/mod_log_debug.so" > $CFG/00_mod_log_debug.conf
+echo "LoadModule ratelimit_module      modules/mod_ratelimit.so" > $CFG/00_mod_ratelimit.conf
+echo "LoadModule reflector_module      modules/mod_reflector.so" > $CFG/00_mod_reflector.conf
+echo "LoadModule remoteip_module       modules/mod_remoteip.so" > $CFG/00_mod_remoteip.conf
+echo "LoadModule request_module        modules/mod_request.so" > $CFG/00_mod_request.conf
+echo "LoadModule sed_module    modules/mod_sed.so" > $CFG/00_mod_sed.conf
+echo "LoadModule session_module        modules/mod_session.so" > $CFG/00_mod_session.conf
+echo "#LoadModule session_cookie_module        modules/mod_sessioni_cookie.so" >> $CFG/00_mod_session.conf
+echo "#LoadModule session_dbd_module   modules/mod_session_dbd.so" >> $CFG/00_mod_session.conf
+echo "LoadModule slotmem_plain_module  modules/mod_slotmem_plain.so" > $CFG/00_mod_slotmem.conf
+echo "#LoadModule slotmem_shm_module   modules/mod_slotmem_shm.so" >> $CFG/00_mod_slotmem.conf
+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
 
 # anything in style dir not ending with .css is trash
 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/manual/style/{lang,latex,xsl}
@@ -2040,10 +2334,6 @@ s/^.*\.\(pt-br\)/%%lang(pt_BR) &/
 ' >> "$cur/manual.files"
 cd $cur
 
-# htpasswd goes to %{_bindir}
-mv $RPM_BUILD_ROOT%{_sbindir}/htpasswd $RPM_BUILD_ROOT%{_bindir}
-ln -sf %{_bindir}/htpasswd $RPM_BUILD_ROOT%{_sbindir}
-
 # cgi_test: create config file with ScriptAlias
 cat << 'EOF' > $CFG/09_cgi_test.conf
 ScriptAlias /cgi-bin/printenv %{_cgibindir}/printenv
@@ -2058,7 +2348,6 @@ ln -sf suexec $RPM_BUILD_ROOT%{_sbindir}/suexec.fcgi
 %{__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
@@ -2192,6 +2481,35 @@ Please report bugs to <http://bugs.pld-linux.org/>.
 
 EOF
 
+%pretrans base -- %{name} < 2.4.0
+if [ -f /etc/sysconfig/httpd ]; then
+       MPM=$(grep HTTPD_MPM /etc/sysconfig/httpd |sed 's,HTTPD_MPM=,,;s,",,g')
+       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
+fi
+
+%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
+
+If you use "User" statement install mod_unixd by doing:
+poldek -ivh %{name}-mod_unixd
+
+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
+
+
 %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 '
@@ -2236,20 +2554,18 @@ fi
 %module_postun
 
 %module_scripts mod_actions
-%module_scripts mod_alias
 %module_scripts mod_asis
 %module_scripts mod_auth_basic
 %module_scripts mod_auth_dbm
 %module_scripts mod_auth_digest
-%module_scripts mod_authn_alias
 %module_scripts mod_authn_anon
 %module_scripts mod_authn_dbd
 %module_scripts mod_authn_dbm
-%module_scripts mod_authn_default
+%module_scripts mod_authn_core
 %module_scripts mod_authn_file
 %module_scripts mod_authnz_ldap
 %module_scripts mod_authz_dbm
-%module_scripts mod_authz_default
+%module_scripts mod_authz_core
 %module_scripts mod_authz_groupfile
 %module_scripts mod_authz_host
 %module_scripts mod_authz_owner
@@ -2300,6 +2616,30 @@ fi
 %module_scripts mod_version
 %module_scripts mod_vhost_alias
 %module_scripts suexec
+%module_scripts mod_access_compat
+%module_scripts mod_allowmethods
+%module_scripts mod_auth_form
+%module_scripts mod_authn_socache
+%module_scripts mod_authz_dbd
+%module_scripts mod_buffer
+%module_scripts mod_cache_disk
+%module_scripts mod_data
+%module_scripts mod_dialup
+%module_scripts mod_heartbeat
+%module_scripts mod_heartmonitor
+%module_scripts mod_lbmethod
+%module_scripts mod_log_debug
+%module_scripts mod_ratelimit
+%module_scripts mod_reflector
+%module_scripts mod_remoteip
+%module_scripts mod_request
+%module_scripts mod_sed
+%module_scripts mod_session
+%module_scripts mod_slotmem
+%module_scripts mod_socache
+%module_scripts mod_unixd
+%module_scripts mod_watchdog
+%module_scripts mod_xml2enc
 
 %post cgi_test
 if [ "$1" = "1" ]; then
@@ -2333,7 +2673,6 @@ fi
 %{_sysconfdir}/modules
 %{_sysconfdir}/run
 %{_sysconfdir}/logs
-%ghost %{_sysconfdir}/httpd.conf
 %attr(750,root,root) %dir %{_sysconfdir}/conf.d
 %attr(750,root,root) %dir %{_sysconfdir}/vhosts.d
 %attr(750,root,root) %dir %{_sysconfdir}/webapps.d
@@ -2344,12 +2683,15 @@ 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
+%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
 
 %dir %{_libexecdir}
 
 %attr(755,root,root) %{_sbindir}/checkgid
 %attr(755,root,root) %{_sbindir}/httpd
-%attr(755,root,root) %{_sbindir}/httpd.*
 
 %dir %attr(770,root,http) /var/run/httpd
 %dir %attr(770,root,http) /var/cache/httpd
@@ -2381,6 +2723,7 @@ fi
 
 %files suexec
 %defattr(644,root,root,755)
+%attr(4755,root,root) %{_sbindir}/fcgistarter
 %attr(4755,root,root) %{_sbindir}/suexec
 %attr(755,root,root) %{_sbindir}/suexec.fcgi
 %attr(755,root,root) %{_libexecdir}/mod_suexec.so
@@ -2393,10 +2736,10 @@ fi
 
 %files tools
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/ab
+%attr(755,root,root) %{_bindir}/ab
 %attr(755,root,root) %{_sbindir}/apachectl
-%attr(755,root,root) %{_sbindir}/htdigest
-%attr(755,root,root) %{_sbindir}/logresolve
+%attr(755,root,root) %{_bindir}/htdigest
+%attr(755,root,root) %{_bindir}/logresolve
 %attr(755,root,root) %{_sbindir}/rotatelogs
 %{_mandir}/man1/ab.1*
 %{_mandir}/man8/apachectl.8*
@@ -2406,7 +2749,7 @@ fi
 
 %files devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/apxs
+%attr(755,root,root) %{_bindir}/apxs
 %attr(755,root,root) %{_sbindir}/envvars*
 %dir %{_libexecdir}
 %dir %{_libexecdir}/build
@@ -2447,11 +2790,6 @@ fi
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_auth_digest.conf
 %attr(755,root,root) %{_libexecdir}/mod_auth_digest.so
 
-%files mod_authn_alias
-%defattr(644,root,root,755)
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_alias.conf
-%attr(755,root,root) %{_libexecdir}/mod_authn_alias.so
-
 %files mod_authn_anon
 %defattr(644,root,root,755)
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_anon.conf
@@ -2467,10 +2805,10 @@ fi
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_dbm.conf
 %attr(755,root,root) %{_libexecdir}/mod_authn_dbm.so
 
-%files mod_authn_default
+%files mod_authn_core
 %defattr(644,root,root,755)
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_default.conf
-%attr(755,root,root) %{_libexecdir}/mod_authn_default.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_core.conf
+%attr(755,root,root) %{_libexecdir}/mod_authn_core.so
 
 %files mod_authn_file
 %defattr(644,root,root,755)
@@ -2489,10 +2827,10 @@ fi
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authz_dbm.conf
 %attr(755,root,root) %{_libexecdir}/mod_authz_dbm.so
 
-%files mod_authz_default
+%files mod_authz_core
 %defattr(644,root,root,755)
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authz_default.conf
-%attr(755,root,root) %{_libexecdir}/mod_authz_default.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authz_core.conf
+%attr(755,root,root) %{_libexecdir}/mod_authz_core.so
 
 %files mod_authz_groupfile
 %defattr(644,root,root,755)
@@ -2531,8 +2869,8 @@ fi
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_cache.conf
 %attr(755,root,root) %{_sbindir}/htcacheclean
 %attr(755,root,root) %{_libexecdir}/mod_cache.so
-%attr(755,root,root) %{_libexecdir}/mod_disk_cache.so
-%attr(755,root,root) %{_libexecdir}/mod_mem_cache.so
+#%attr(755,root,root) %{_libexecdir}/mod_cache_disk.so
+#%attr(755,root,root) %{_libexecdir}/mod_mem_cache.so
 %{_mandir}/man8/htcacheclean.8*
 
 %files mod_case_filter
@@ -2696,7 +3034,7 @@ fi
 
 %files mod_rewrite
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/httxt2dbm
+%attr(755,root,root) %{_bindir}/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*
 %attr(755,root,root) %{_libexecdir}/mod_vhost_alias.so
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_vhost_alias.conf
 
+%files mod_access_compat
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_access_compat.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_access_compat.conf
+
+%files mod_allowmethods
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_allowmethods.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_allowmethods.conf
+
+%files mod_auth_form
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_auth_form.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_auth_form.conf
+
+%files mod_authn_socache
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_authn_socache.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authn_socache.conf
+
+%files mod_authz_dbd
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_authz_dbd.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_authz_dbd.conf
+
+%files mod_buffer
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_buffer.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_buffer.conf
+
+%files mod_cache_disk
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_cache_disk.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_cache_disk.conf
+
+%files mod_data
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_data.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_data.conf
+
+%files mod_dialup
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_dialup.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_dialup.conf
+
+%files mod_heartbeat
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_heartbeat.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_heartbeat.conf
+
+%files mod_heartmonitor
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_heartmonitor.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_heartmonitor.conf
+
+%files mod_lbmethod
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_lbmethod_bybusyness.so
+%attr(755,root,root) %{_libexecdir}/mod_lbmethod_byrequests.so
+%attr(755,root,root) %{_libexecdir}/mod_lbmethod_bytraffic.so
+%attr(755,root,root) %{_libexecdir}/mod_lbmethod_heartbeat.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_lbmethod.conf
+
+%files mod_log_debug
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_log_debug.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_log_debug.conf
+
+%files mod_ratelimit
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_ratelimit.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_ratelimit.conf
+
+%files mod_reflector
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_reflector.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_reflector.conf
+
+%files mod_remoteip
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_remoteip.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_remoteip.conf
+
+%files mod_request
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_request.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_request.conf
+
+%files mod_sed
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_sed.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_sed.conf
+
+%files mod_session
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_session.so
+%attr(755,root,root) %{_libexecdir}/mod_session_cookie.so
+%attr(755,root,root) %{_libexecdir}/mod_session_dbd.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_session.conf
+
+%files mod_slotmem
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_slotmem_plain.so
+%attr(755,root,root) %{_libexecdir}/mod_slotmem_shm.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_slotmem.conf
+
+%files mod_socache
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_socache_dbm.so
+%attr(755,root,root) %{_libexecdir}/mod_socache_shmcb.so
+%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
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_watchdog.conf
+
+%files mod_xml2enc
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/mod_xml2enc.so
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_xml2enc.conf
+
 %files -n htpasswd-%{name}
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/htpasswd
-%attr(755,root,root) %{_sbindir}/htpasswd
 %{_mandir}/man1/htpasswd.1*
 
 %files dbmtools
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/dbmmanage
-%attr(755,root,root) %{_sbindir}/htdbm
+%attr(755,root,root) %{_bindir}/dbmmanage
+%attr(755,root,root) %{_bindir}/htdbm
 %{_mandir}/man1/dbmmanage.1*
 %{_mandir}/man1/htdbm.1*