X-Git-Url: https://git.tld-linux.org/?p=packages%2Fapache.git;a=blobdiff_plain;f=apache.spec;h=360d0214617b33173b758f445fc9852ffec488cf;hp=093f1f69bf60098667a9e9beb5bbb70863681c90;hb=HEAD;hpb=f2191762c72fd9488039e8145c840bdd50b842fb diff --git a/apache.spec b/apache.spec index 093f1f6..09bf5b1 100644 --- a/apache.spec +++ b/apache.spec @@ -1,15 +1,15 @@ # TODO: # - config examples for mod_* # - --with-suexec-uidmin=500 or =1000 ? -# - check those autn modules inner deps +# - check those authn 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 *_core -# is chosen? +# 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 *_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 # - FYI: http://wiki.apache.org/httpd/InternalDummyConnection +# - consider modules: mod_authnz_fcgi, mod_socache_dc (distcache bcond) # Conditional build: %bcond_without ssl # build without SSL support @@ -21,11 +21,10 @@ # this is internal macro, don't change to %%apache_modules_api %define _apache_modules_api 20120211 -%define openssl_ver 1.0.2 -%define apr_ver 1:1.6.0 -%define apr_util_ver 1:1.6.0 +%define openssl_ver 1.1.1 +%define apr_ver 1:1.7.0 +%define apr_util_ver 1:1.6.1 -%include /usr/lib/rpm/macros.perl Summary: The most widely used Web server on the Internet Summary(de.UTF-8): Leading World Wide Web-Server Summary(es.UTF-8): Servidor HTTPD para proveer servicios WWW @@ -35,12 +34,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.29 +Version: 2.4.59 Release: 1 License: Apache v2.0 Group: Networking/Daemons/HTTP Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2 -# Source0-md5: 0c599404ef6b69eee95bcd9fcd094407 +# Source0-md5: 9f77eb01b2fddfb4b32d469af90fb01b Source1: %{name}.init Source2: %{name}.logrotate Source3: %{name}.sysconfig @@ -71,6 +70,7 @@ Source27: %{name}-mod_mime_magic.conf Source28: %{name}-mod_cache.conf Source29: %{name}-example.net.conf Source32: %{name}-mod_http2.conf +Source33: %{name}-mod_md.conf Patch0: %{name}-configdir_skip_backups.patch Patch1: %{name}-layout.patch Patch2: %{name}-suexec.patch @@ -96,11 +96,13 @@ BuildRequires: apr-devel >= %{apr_ver} BuildRequires: apr-util-devel >= %{apr_util_ver} BuildRequires: autoconf >= 2.50 BuildRequires: automake +BuildRequires: curl-devel %{?with_distcache:BuildRequires: distcache-devel} +BuildRequires: jansson-devel BuildRequires: libbrotli-devel >= 0.6.0 BuildRequires: libtool >= 2:1.5 BuildRequires: libxml2-devel >= 2 -BuildRequires: lua53-devel >= 5.3 +BuildRequires: lua54-devel >= 5.4 %{?with_http2:BuildRequires: nghttp2-devel >= 1.15.0} %{?with_ldap:BuildRequires: openldap-devel >= 2.3.0} %{?with_ssl:BuildRequires: openssl-devel >= %{openssl_ver}} @@ -629,7 +631,6 @@ 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} Provides: apache(mod_authn_default) = %{version}-%{release} -Obsoletes: apache(mod_authn_alias) Obsoletes: apache-mod_authn_default < %{version}-%{release} %description mod_authn_core @@ -1539,7 +1540,7 @@ Summary(pl.UTF-8): Obsługa HTTP/2 dla serwera HTTP Apache Group: Networking/Daemons/HTTP URL: http://httpd.apache.org/docs/2.4/mod/mod_http2.html Requires: %{name}-base = %{version}-%{release} -Requires: nghttp2 >= 1.15.0 +Requires: nghttp2-libs >= 1.15.0 Provides: apache(mod_http2) = %{version}-%{release} %description mod_http2 @@ -1843,6 +1844,29 @@ Apache'a. Makra mogą mieć parametry. Makra są rozwijane w momencie użycia (argumenty makra są podstawiane za wartości parametrów), a wynik jest przetwarzany jak normalna konfiguracja. +%package mod_md +Summary: Managing certificate provisioning via the ACME protocol +Summary(pl.UTF-8): Zarządzanie certyfikatami przez protokół ACME +Group: Networking/Daemons/HTTP +URL: http://httpd.apache.org/docs/2.4/mod/mod_macro.html +Requires: %{name}-base = %{version}-%{release} +Requires: apache(mod_watchdog) = %{version}-%{release} +Provides: apache(mod_md) = %{version}-%{release} + +%description mod_md +This module manages common properties of domains for one or more +virtual hosts. Specifically it can use the ACME protocol to automate +certificate provisioning. These will be configured for managed domains +and their virtual hosts automatically. This includes renewal of +certificates before they expire. + +%description mod_md -l pl.UTF-8 +Moduł zarządzający właściwościami domen dla jednego lub więcej hostów +wirtualnych. Konkretnie może używać protokołu ACME do automatyzacji +instalacji certyfikatów. Certyfikaty będą automatycznie aktywowane dla +zarządzanych domen i hostów wirtualnych w tych domenach. Instalacji +oraz odnowień certyfikatów przed wygaśnięciem. + %package mod_mime Summary: Associates the requested filename's extensions with the file's behavior and content Summary(pl.UTF-8): Wiązanie określonych rozszerzeń plików z zachowaniem i zawartością @@ -2308,6 +2332,7 @@ 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_redis) = %{version}-%{release} Provides: apache(mod_socache_shmcb) = %{version}-%{release} Obsoletes: apache-mod_socache_dbm Obsoletes: apache-mod_socache_memcache @@ -2321,6 +2346,10 @@ mod_socache_memcache is a shared object cache provider which provides for creation and access to a cache backed by the memcached high-performance, distributed memory object caching system. +mod_socache_redis is a shared object cache provider which provides +for creation and access to a cache backed by the redis +high-performance, distributed memory object caching system. + mod_socache_shmcb is a shared object cache provider which provides for creation and access to a cache backed by a high-performance cyclic buffer inside a shared memory segment. @@ -2330,12 +2359,17 @@ mod_socache_dbm to moduł dostarczający współdzieloną pamięć podręczną obiektów, zapewniający tworzenie i dostęp do cache'a zapisywanego w bazie DBM. -mod_socache_dbm to moduł dostarczający współdzieloną pamięć podręczną +mod_socache_memcache to moduł dostarczający współdzieloną pamięć podręczną obiektów, zapewniający tworzenie i dostęp do cache'a zapisywanego w systemie memcached - wysoko wydajnym, ozproszonym systemie pamięci podręcznej obiektów. -mod_socache_dbm to moduł dostarczający współdzieloną pamięć podręczną +mod_socache_redis to moduł dostarczający współdzieloną pamięć podręczną +obiektów, zapewniający tworzenie i dostęp do cache'a zapisywanego w +systemie redis - wysoko wydajnym, ozproszonym systemie pamięci +podręcznej obiektów. + +mod_socache_shmcb to moduł dostarczający współdzieloną pamięć podręczną obiektów, zapewniający tworzenie i dostęp do cache'a zapisywanego w wysoko wydajnym buforze cyklicznym wewnątrz segmentu pamięci dzielonej. @@ -2663,7 +2697,7 @@ if [ "$MODULES_API" != "%_apache_modules_api" ]; then exit 1 fi -# fix libdir (at least in TLD layout; no need to care about other ones) +# fix libdir (at least in PLD layout; no need to care about other ones) sed -i -e 's,/lib$,/%{_lib},' config.layout %build @@ -2688,6 +2722,7 @@ CPPFLAGS="-DMAX_SERVER_LIMIT=200000 -DBIG_SECURITY_HOLE=1" install -d build; cd build ../%configure \ --enable-layout=TLD \ + --disable-systemd \ --disable-v4-mapped \ --enable-exception-hook \ --enable-modules=all \ @@ -2730,6 +2765,7 @@ install -d build; cd build --enable-log-forensic \ --enable-logio \ --enable-lua \ + --enable-md \ --enable-mime-magic \ --enable-mpms-shared=all \ %ifarch %{ix86} @@ -2773,10 +2809,11 @@ install -d build; cd build rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig} \ $RPM_BUILD_ROOT%{_var}/{log/{httpd,archive/httpd},{run,cache}/httpd,lock/mod_dav} \ + $RPM_BUILD_ROOT%{_var}/lib/httpd/md \ $RPM_BUILD_ROOT%{_sysconfdir}/{webapps.d,conf.d,vhosts.d} \ $RPM_BUILD_ROOT%{_datadir}/{cgi-bin,vhosts} -%{__make} -C build install \ +%{__make} -j 1 -C build install \ DESTDIR=$RPM_BUILD_ROOT # clean "ccache" prefix. confuses other build systems (like php) @@ -2785,6 +2822,8 @@ install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig} \ 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 %{_var}/lib/httpd/md $RPM_BUILD_ROOT%{_sysconfdir}/md + # we have own apache.conf rm $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf @@ -2827,6 +2866,8 @@ cp -a %{SOURCE19} $CFG/30_manual.conf cp -a %{SOURCE20} $CFG/16_mod_userdir.conf cp -a %{SOURCE21} $CFG/10_mpm.conf cp -a %{SOURCE22} $CFG/20_languages.conf +cp -a %{SOURCE33} $CFG/60_mod_md.conf + cp -a %{SOURCE29} $RPM_BUILD_ROOT%{_sysconfdir}/vhosts.d/example.net.conf LoadModule() { @@ -2848,11 +2889,11 @@ for module in access_compat actions alias allowmethods asis auth_basic \ ident imagemap include \ lbmethod_bybusyness lbmethod_byrequests lbmethod_bytraffic \ lbmethod_heartbeat ldap log_debug log_forensic logio lua \ - macro negotiation \ + macro md negotiation \ ratelimit reflector remoteip reqtimeout request rewrite \ sed session_cookie session_crypto session_dbd session setenvif \ slotmem_plain slotmem_shm socache_dbm socache_memcache \ - socache_shmcb speling substitute \ + socache_redis socache_shmcb speling substitute \ unique_id usertrack version watchdog xml2enc; do LoadModule 00 $module @@ -2874,7 +2915,7 @@ s/^.*\.\(pt-br\)/%%lang(pt_BR) &/ cd $cur # htpasswd goes to %{_bindir} -ln -sf %{_bindir}/htpasswd $RPM_BUILD_ROOT%{_sbindir} +ln -sfr $RPM_BUILD_ROOT%{_bindir}/htpasswd $RPM_BUILD_ROOT%{_sbindir} mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/apxs @@ -2902,7 +2943,7 @@ rm -rf $RPM_BUILD_ROOT %useradd -u 51 -r -d /home/services/httpd -s /bin/false -c "HTTP User" -g http http %pretrans base -# handle $HTTPD_MPM from sysconfig +# upgrade to 2.4: handle $HTTPD_MPM from sysconfig if [ -f /etc/sysconfig/httpd ]; then MPM=$(grep ^HTTPD_MPM /etc/sysconfig/httpd | sed 's,HTTPD_MPM=,,;s,",,g') if [ -n "$MPM" ]; then @@ -2932,13 +2973,12 @@ if [ "$1" = "0" ]; then %groupremove http fi -%triggerpostun base -- %{name}-base < 2.2.22-2 +%triggerpostun base -- %{name}-base < 2.4.0 . /etc/sysconfig/httpd if [ -z "$HTTPD_CONF" ]; then echo 'HTTPD_CONF="/etc/httpd/apache.conf"' >> /etc/sysconfig/httpd fi -%triggerpostun base -- %{name}-base < 2.4.0 cp -f /etc/httpd/apache.conf{,.rpmsave} sed -i -e ' /^DefaultType/d @@ -3059,6 +3099,7 @@ fi %module_scripts mod_logio %module_scripts mod_lua %module_scripts mod_macro +%module_scripts mod_md %module_scripts mod_mime %module_scripts mod_mime_magic %module_scripts mod_negotiation @@ -3138,6 +3179,7 @@ fi %attr(755,root,root) %{_sbindir}/checkgid %attr(755,root,root) %{_sbindir}/httpd +%dir %attr(710,root,http) /var/lib/httpd %dir %attr(770,root,http) /var/run/httpd %dir %attr(770,root,http) /var/cache/httpd @@ -3152,7 +3194,7 @@ fi %dir %{_datadir}/cgi-bin %dir %{_datadir}/html %dir %{_datadir}/vhosts -# do not adapter here, %{_datadir} != /usr/share here +# do not adapter here, %%{_datadir} != /usr/share here %{_datadir}/icons %attr(755,root,root) %{_libexecdir}/mod_mpm_event.so %attr(755,root,root) %{_libexecdir}/mod_mpm_prefork.so @@ -3549,6 +3591,13 @@ fi %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_macro.conf %attr(755,root,root) %{_libexecdir}/mod_macro.so +%files mod_md +%defattr(644,root,root,755) +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_md.conf +%attr(755,root,root) %{_libexecdir}/mod_md.so +%attr(710,root,http) %dir /var/lib/httpd/md +%{_sysconfdir}/md + %files mod_mime %defattr(644,root,root,755) %attr(755,root,root) %{_libexecdir}/mod_mime.so @@ -3581,6 +3630,7 @@ fi %attr(755,root,root) %{_libexecdir}/mod_proxy_http.so %attr(755,root,root) %{_libexecdir}/mod_proxy_http2.so %attr(755,root,root) %{_libexecdir}/mod_proxy_scgi.so +%attr(755,root,root) %{_libexecdir}/mod_proxy_uwsgi.so %attr(755,root,root) %{_libexecdir}/mod_proxy_wstunnel.so %attr(755,root,root) %{_libexecdir}/mod_proxy.so %{_mandir}/man8/fcgistarter.8* @@ -3658,9 +3708,11 @@ fi %defattr(644,root,root,755) %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_socache_dbm.conf %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_socache_memcache.conf +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_socache_redis.conf %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_socache_shmcb.conf %attr(755,root,root) %{_libexecdir}/mod_socache_dbm.so %attr(755,root,root) %{_libexecdir}/mod_socache_memcache.so +%attr(755,root,root) %{_libexecdir}/mod_socache_redis.so %attr(755,root,root) %{_libexecdir}/mod_socache_shmcb.so %files mod_speling