# - 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
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
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
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
%patch2 -p1
%patch3 -p1
%patch4 -p1
+%patch5 -p1
+%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
-#%%patch12 -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`
--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} \
--with-pcre
%{__make}
-./httpd -l > modules-inside
%install
rm -rf $RPM_BUILD_ROOT
$RPM_BUILD_ROOT/usr/lib/tmpfiles.d
# prefork is default one
-%{__make} install \
+%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
ln -s %{_libexecdir} $RPM_BUILD_ROOT%{_sysconfdir}/modules
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_core_module modules/mod_authn_core.so" > $CFG/00_mod_authn_core.conf
echo "LoadModule authn_alias_module modules/mod_authn_alias.so" > $CFG/00_mod_authn_alias.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}
' >> "$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
%{__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
%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
%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
%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
%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*
%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
%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_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_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)
%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)
%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_disk_cache.so
+#%attr(755,root,root) %{_libexecdir}/mod_mem_cache.so
%{_mandir}/man8/htcacheclean.8*
%files mod_case_filter
%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*
%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*