From 1129fb3c19c2f3be62c2cf69dd8410756676ce6f Mon Sep 17 00:00:00 2001 From: Marcin Krol Date: Mon, 4 Apr 2022 19:49:20 +0200 Subject: [PATCH] - adjusted for rpm.org, partial PLD merge --- apache-apr.patch | 12 +++++------ apache-apxs.patch | 15 +++++++------- apache-conffile-path.patch | 12 +++++------ apache-suexec.patch | 11 +++++----- apache.spec | 41 +++++++++++++++++++------------------- 5 files changed, 46 insertions(+), 45 deletions(-) diff --git a/apache-apr.patch b/apache-apr.patch index 4fa5132..73b6ab4 100644 --- a/apache-apr.patch +++ b/apache-apr.patch @@ -1,12 +1,12 @@ -diff -urN httpd-2.0.47.org/configure.in httpd-2.0.47/configure.in ---- httpd-2.0.47.org/configure.in 2003-09-13 14:18:35.000000000 +0200 -+++ httpd-2.0.47/configure.in 2003-09-13 14:18:50.000000000 +0200 -@@ -76,8 +76,6 @@ - AP_CLEAN_SRCLIB_DIRS="$AP_CLEAN_SRCLIB_DIRS apr" +diff -urNp -x '*.orig' httpd-2.4.46.org/configure.in httpd-2.4.46/configure.in +--- httpd-2.4.46.org/configure.in 2020-02-03 08:56:05.000000000 +0100 ++++ httpd-2.4.46/configure.in 2021-06-16 09:19:28.107118428 +0200 +@@ -126,8 +126,6 @@ if test "$apr_found" = "reconfig"; then + done fi -APR_SETIFNULL(CC, `$apr_config --cc`) -APR_SETIFNULL(CPP, `$apr_config --cpp`) APR_ADDTO(CFLAGS, `$apr_config --cflags`) APR_ADDTO(CPPFLAGS, `$apr_config --cppflags`) - APR_ADDTO(LDFLAGS, `$apr_config --ldflags`) + dnl internal-only CPPFLAGS (shouldn't affect third-party module builds) diff --git a/apache-apxs.patch b/apache-apxs.patch index 309ee24..7dc3930 100644 --- a/apache-apxs.patch +++ b/apache-apxs.patch @@ -1,6 +1,7 @@ ---- httpd-2.2.3/support/apxs.in-orig 2006-11-01 00:59:27.000000000 +0100 -+++ httpd-2.2.3/support/apxs.in 2006-11-01 00:59:54.000000000 +0100 -@@ -35,6 +35,7 @@ +diff -urNp -x '*.orig' httpd-2.4.46.org/support/apxs.in httpd-2.4.46/support/apxs.in +--- httpd-2.4.46.org/support/apxs.in 2020-03-20 14:00:44.000000000 +0100 ++++ httpd-2.4.46/support/apxs.in 2021-06-16 09:20:17.513003551 +0200 +@@ -45,6 +45,7 @@ my $CFG_PREFIX = $prefix; my $exec_prefix = get_vars("exec_prefix"); my $datadir = get_vars("datadir"); my $localstatedir = get_vars("localstatedir"); @@ -8,15 +9,15 @@ my $CFG_TARGET = get_vars("progname"); my $CFG_SYSCONFDIR = get_vars("sysconfdir"); my $CFG_CFLAGS = join ' ', map { get_vars($_) } -@@ -44,6 +45,7 @@ +@@ -56,6 +57,7 @@ my $CFG_INCLUDEDIR = eval qq("$includedi my $CFG_CC = get_vars("CC"); - my $libexecdir = get_vars("libexecdir"); + my $libexecdir = $destdir . get_vars("libexecdir"); my $CFG_LIBEXECDIR = eval qq("$libexecdir"); +my $CFG_DESTDIR = ''; my $sbindir = get_vars("sbindir"); my $CFG_SBINDIR = eval qq("$sbindir"); my $ltflags = $ENV{'LTFLAGS'}; -@@ -171,7 +173,7 @@ +@@ -183,7 +185,7 @@ if (@opt_S) { my ($val) = $2; my $oldval = eval "\$CFG_$var"; @@ -25,7 +26,7 @@ print STDERR "apxs:Error: no config variable $var\n"; &usage; } -@@ -479,8 +480,8 @@ +@@ -512,8 +514,8 @@ if ($opt_i or $opt_e) { $t =~ s|\.[^./\\]+$|\.so|; if ($opt_i) { push(@cmds, $destdir . "$installbuilddir/instdso.sh SH_LIBTOOL='" . diff --git a/apache-conffile-path.patch b/apache-conffile-path.patch index 9fa0d31..7ac8348 100644 --- a/apache-conffile-path.patch +++ b/apache-conffile-path.patch @@ -1,7 +1,7 @@ -diff -ur httpd-2.0.49-orig/configure.in httpd-2.0.49/configure.in ---- httpd-2.0.49-orig/configure.in 2004-04-02 15:04:49.000000000 -0700 -+++ httpd-2.0.49/configure.in 2004-04-02 15:07:26.319486516 -0700 -@@ -541,9 +541,9 @@ +diff -urNp -x '*.orig' httpd-2.4.46.org/configure.in httpd-2.4.46/configure.in +--- httpd-2.4.46.org/configure.in 2021-06-16 09:19:52.228364279 +0200 ++++ httpd-2.4.46/configure.in 2021-06-16 09:19:53.851781461 +0200 +@@ -873,9 +873,9 @@ echo $MODLIST | $AWK -f $srcdir/build/bu APR_EXPAND_VAR(ap_prefix, $prefix) AC_DEFINE_UNQUOTED(HTTPD_ROOT, "${ap_prefix}", [Root directory of the Apache install area]) @@ -11,5 +11,5 @@ diff -ur httpd-2.0.49-orig/configure.in httpd-2.0.49/configure.in -AC_DEFINE_UNQUOTED(AP_TYPES_CONFIG_FILE, "${rel_sysconfdir}/mime.types", +AC_DEFINE_UNQUOTED(AP_TYPES_CONFIG_FILE, "${exp_sysconfdir}/mime.types", [Location of the MIME types config file, relative to the Apache root directory]) - AC_DEFINE_UNQUOTED(APACHE_MPM_DIR, "$MPM_DIR", - [Location of the source for the current MPM]) + + perlbin=`$ac_aux_dir/PrintPath perl` diff --git a/apache-suexec.patch b/apache-suexec.patch index 308ad17..cb15598 100644 --- a/apache-suexec.patch +++ b/apache-suexec.patch @@ -1,11 +1,12 @@ ---- httpd-2.4.34/Makefile.in.orig 2018-07-21 21:28:23.626991837 +0000 -+++ httpd-2.4.34/Makefile.in 2018-07-21 21:29:29.959987883 +0000 -@@ -279,7 +279,7 @@ +diff -urNp -x '*.orig' httpd-2.4.46.org/Makefile.in httpd-2.4.46/Makefile.in +--- httpd-2.4.46.org/Makefile.in 2018-08-08 13:48:15.000000000 +0200 ++++ httpd-2.4.46/Makefile.in 2021-06-16 09:18:53.088643073 +0200 +@@ -279,7 +279,7 @@ install-suexec-binary: - install-suexec-setuid: + install-suexec-setuid: install-suexec-binary @if test -f $(builddir)/support/suexec; then \ - chmod 4755 $(DESTDIR)$(sbindir)/suexec; \ + chmod 0755 $(DESTDIR)$(sbindir)/suexec; \ fi - install-suexec-caps: + install-suexec-caps: install-suexec-binary diff --git a/apache.spec b/apache.spec index 9e9f47e..3010f10 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,9 +21,9 @@ # 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 Summary: The most widely used Web server on the Internet Summary(de.UTF-8): Leading World Wide Web-Server @@ -35,7 +35,7 @@ Summary(ru.UTF-8): Самый популярный веб-сервер Summary(tr.UTF-8): Lider WWW tarayıcı Name: apache Version: 2.4.53 -Release: 1 +Release: 2 License: Apache v2.0 Group: Networking/Daemons/HTTP Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2 @@ -96,8 +96,9 @@ 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 >= 0.6.0 +BuildRequires: jansson-devel BuildRequires: libbrotli-devel >= 0.6.0 BuildRequires: libtool >= 2:1.5 BuildRequires: libxml2-devel >= 2 @@ -630,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 @@ -1540,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 @@ -1862,10 +1862,10 @@ 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. Może używać protokołu ACME do automatyzacji obsługi -certyfikatów. Certyfikaty będą automatycznie aktywowane dla -zarządzanych domen i hostów wirtualnych w tych domenach. Będą również -automatycznie odnawianie przed wygaśnięciem. +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 @@ -2697,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 @@ -2915,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 @@ -2943,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 @@ -2973,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 @@ -3195,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 -- 2.44.0