X-Git-Url: https://git.tld-linux.org/?a=blobdiff_plain;f=apache.spec;h=e9a711ad81bd546500c64542f7c3ba2582064f78;hb=fceadd3c0b7ca48e08b5bd8fa27a6b67315bcdd9;hp=05c15cbeb900c488b4edb4c026091a66c0453d26;hpb=d6bfc52b46405313f9cd0e009bad54b0536e91b0;p=packages%2Fapache.git diff --git a/apache.spec b/apache.spec index 05c15cb..e9a711a 100644 --- a/apache.spec +++ b/apache.spec @@ -13,17 +13,23 @@ # - 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 # this is internal macro, don't change to %%apache_modules_api -%define _apache_modules_api 20051115 +%define _apache_modules_api 20120211 %define openssl_ver 0.9.8i %define apr_ver 1:1.4.5 @@ -78,26 +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 -Patch20: %{name}-apxs.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 @@ -584,20 +583,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 @@ -661,20 +661,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 @@ -1770,25 +1771,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 -%patch20 -p1 -%patch23 -p1 -%patch24 -p1 -%patch25 -p1 -%patch26 -p1 -%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` @@ -1819,12 +1813,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 \ @@ -1879,13 +1871,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} \ @@ -1898,18 +1887,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 @@ -1920,18 +1897,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 +mv $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf.orig ln -s conf.d $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/httpd @@ -1981,14 +1953,14 @@ echo "LoadModule authn_file_module modules/mod_authn_file.so" > $CFG/00_mod_auth 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} @@ -2041,10 +2013,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 @@ -2059,7 +2027,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 @@ -2246,11 +2213,11 @@ fi %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 @@ -2345,12 +2312,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 @@ -2382,6 +2352,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 @@ -2394,10 +2365,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* @@ -2407,7 +2378,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 @@ -2448,10 +2419,10 @@ 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_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) @@ -2468,10 +2439,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) @@ -2490,10 +2461,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) @@ -2532,8 +2503,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_disk_cache.so +#%attr(755,root,root) %{_libexecdir}/mod_mem_cache.so %{_mandir}/man8/htcacheclean.8* %files mod_case_filter @@ -2697,7 +2668,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* @@ -2759,13 +2730,12 @@ fi %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*