Modified: subversion/branches/swig-py3/tools/dev/build-svn-deps-win.pl
URL: 
http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dev/build-svn-deps-win.pl?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dev/build-svn-deps-win.pl (original)
+++ subversion/branches/swig-py3/tools/dev/build-svn-deps-win.pl Mon Jul  8 
15:19:03 2019
@@ -92,7 +92,7 @@ our $SERF_VER = '1.3.6';
 our $NEON_VER = '0.29.6';
 
 # Sources for files to download
-our $AWK_URL = 'http://www.cs.princeton.edu/~bwk/btl.mirror/awk95.exe';
+our $AWK_URL = 'https://www.cs.princeton.edu/~bwk/btl.mirror/awk95.exe';
 our $HTTPD_URL;
 our $APR_URL;
 our $APU_URL;
@@ -168,17 +168,17 @@ sub set_svn_ver_defaults {
 # Any variables with defaults that reference other values
 # should be set here.  This defers setting of the default until runtime in 
these cases.
 sub set_defaults {
-  set_default(\$HTTPD_URL, 
"http://archive.apache.org/dist/httpd/httpd-$HTTPD_VER.tar.bz2";);
-  set_default(\$APR_URL, 
"http://archive.apache.org/dist/apr/apr-$APR_VER.tar.bz2";);
-  set_default(\$APU_URL, 
"http://archive.apache.org/dist/apr/apr-util-$APU_VER.tar.bz2";);
-  set_default(\$API_URL, 
"http://archive.apache.org/dist/apr/apr-iconv-$API_VER.tar.bz2";);
-  set_default(\$ZLIB_URL, 
"http://sourceforge.net/projects/libpng/files/zlib/$ZLIB_VER/zlib"; . 
remove_dots($ZLIB_VER) . '.zip');
-  set_default(\$OPENSSL_URL, 
"http://www.openssl.org/source/openssl-$OPENSSL_VER.tar.gz";);
+  set_default(\$HTTPD_URL, 
"https://archive.apache.org/dist/httpd/httpd-$HTTPD_VER.tar.bz2";);
+  set_default(\$APR_URL, 
"https://archive.apache.org/dist/apr/apr-$APR_VER.tar.bz2";);
+  set_default(\$APU_URL, 
"https://archive.apache.org/dist/apr/apr-util-$APU_VER.tar.bz2";);
+  set_default(\$API_URL, 
"https://archive.apache.org/dist/apr/apr-iconv-$API_VER.tar.bz2";);
+  set_default(\$ZLIB_URL, 
"https://sourceforge.net/projects/libpng/files/zlib/$ZLIB_VER/zlib"; . 
remove_dots($ZLIB_VER) . '.zip');
+  set_default(\$OPENSSL_URL, 
"https://www.openssl.org/source/openssl-$OPENSSL_VER.tar.gz";);
   set_default(\$PCRE_URL, 
"ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-$PCRE_VER.zip";);
-  set_default(\$BDB_URL, 
"http://download.oracle.com/berkeley-db/db-5.3.21.zip";);
-  set_default(\$SQLITE_URL, 
"http://www.sqlite.org/2013/sqlite-amalgamation-$SQLITE_VER.zip";);
+  set_default(\$BDB_URL, 
"https://download.oracle.com/berkeley-db/db-5.3.21.zip";);
+  set_default(\$SQLITE_URL, 
"https://www.sqlite.org/2013/sqlite-amalgamation-$SQLITE_VER.zip";);
   set_default(\$SERF_URL, 
"https://archive.apache.org/dist/serf/serf-$SERF_VER.zip";);
-  set_default(\$NEON_URL, "http://www.webdav.org/neon/neon-$NEON_VER.tar.gz";);
+  set_default(\$NEON_URL, "https://www.webdav.org/neon/neon-$NEON_VER.tar.gz";);
   set_default(\$INSTDIR, $TOPDIR);
   set_default(\$BLDDIR, "$TOPDIR\\build");
   set_default(\$SRCDIR, "$TOPDIR\\sources");

Modified: subversion/branches/swig-py3/tools/dev/unix-build/Makefile.svn
URL: 
http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dev/unix-build/Makefile.svn?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dev/unix-build/Makefile.svn (original)
+++ subversion/branches/swig-py3/tools/dev/unix-build/Makefile.svn Mon Jul  8 
15:19:03 2019
@@ -101,7 +101,8 @@ APR_VER             = 1.5.2
 APR_ICONV_VER  = 1.2.1
 GNU_ICONV_VER  = 1.15
 APR_UTIL_VER   = 1.5.4
-HTTPD_VER      = 2.2.32
+PCRE_VER       = 8.41
+HTTPD_VER      = 2.4.37
 NEON_VER       = 0.30.2
 SERF_VER       = 1.3.9
 SERF_OLD_VER   = 0.3.1
@@ -121,6 +122,7 @@ GNU_ICONV_DIST      = libiconv-$(GNU_ICONV_VE
 NEON_DIST      = neon-$(NEON_VER).tar.gz
 SQLITE_DIST    = sqlite-autoconf-$(SQLITE_VER).tar.gz
 CYRUS_SASL_DIST        = cyrus-sasl-$(CYRUS_SASL_VER).tar.gz
+PCRE_DIST      = pcre-$(PCRE_VER).tar.gz
 HTTPD_DIST     = httpd-$(HTTPD_VER).tar.gz
 LIBMAGIC_DIST  = file-$(LIBMAGIC_VER).tar.gz
 RUBY_DIST      = ruby-$(RUBY_VER).tar.gz
@@ -133,7 +135,8 @@ LZ4_DIST    = lz4-$(LZ4_VER).tar.gz
 SHA256_${BDB_DIST} = 
f14fd96dd38915a1d63dcb94a63fbb8092334ceba6b5060760427096f631263e
 SHA256_${APR_ICONV_DIST} = 
19381959d50c4a5f3b9c84d594a5f9ffb3809786919b3058281f4c87e1f4b245
 SHA256_${GNU_ICONV_DIST} = 
ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178
-SHA256_${HTTPD_DIST} = 
b6e1528779f99c301d6438d89ae892a311619b43a39f16297f9eabd4a8d16cb8
+SHA256_${PCRE_DIST} = 
244838e1f1d14f7e2fa7681b857b3a8566b74215f28133f14a8f5e59241b682c
+SHA256_${HTTPD_DIST} = 
aa97a834a32d51974be8d8a013b561e28d327387cb1da2c3c2762acd0146aabd
 SHA256_${NEON_DIST} = 
db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca
 SHA256_${CYRUS_SASL_DIST} = 
418c16e6240a4f9b637cbe3d62937b9675627bad27c622191d47de8686fe24fe
 SHA256_${SQLITE_DIST} = 
65cc0c3e9366f50c0679c5ccd31432cea894bc4a3e8947dabab88c8693263615
@@ -161,6 +164,7 @@ endef
 DISTFILES      = $(DISTDIR)/$(NEON_DIST) \
                $(DISTDIR)/$(SERF_DIST) \
                $(DISTDIR)/$(SQLITE_DIST) \
+               $(DISTDIR)/$(PCRE_DIST) \
                $(DISTDIR)/$(HTTPD_DIST) \
                $(DISTDIR)/$(APR_ICONV_DIST) \
                $(DISTDIR)/$(GNU_ICONV_DIST) \
@@ -180,6 +184,7 @@ APR_URL             = https://svn.apache.org/repos/
 APR_ICONV_URL  = https://archive.apache.org/dist/apr/$(APR_ICONV_DIST)
 GNU_ICONV_URL  = https://ftp.gnu.org/pub/gnu/libiconv/$(GNU_ICONV_DIST)
 APR_UTIL_URL   = https://svn.apache.org/repos/asf/apr/apr-util
+PCRE_URL       = https://ftp.pcre.org/pub/pcre/$(PCRE_DIST)
 HTTPD_URL      = https://archive.apache.org/dist/httpd/$(HTTPD_DIST)
 #NEON_URL      = http://webdav.org/neon/$(NEON_DIST)
 NEON_URL       = http://ftp.openbsd.org/pub/OpenBSD/distfiles/$(NEON_DIST)
@@ -201,6 +206,7 @@ APR_SRCDIR  = $(SRCDIR)/apr-$(APR_VER)
 APR_ICONV_SRCDIR       = $(SRCDIR)/apr-iconv-$(APR_ICONV_VER)
 GNU_ICONV_SRCDIR       = $(SRCDIR)/libiconv-$(GNU_ICONV_VER)
 APR_UTIL_SRCDIR        = $(SRCDIR)/apr-util-$(APR_UTIL_VER)
+PCRE_SRCDIR    = $(SRCDIR)/pcre-$(PCRE_VER)
 HTTPD_SRCDIR   = $(SRCDIR)/httpd-$(HTTPD_VER)
 NEON_SRCDIR    = $(SRCDIR)/neon-$(NEON_VER)
 SERF_SRCDIR    = $(SRCDIR)/serf-$(SERF_VER)
@@ -220,6 +226,7 @@ APR_OBJDIR  = $(OBJDIR)/apr-$(APR_VER)
 APR_ICONV_OBJDIR       = $(OBJDIR)/apr-iconv-$(APR_ICONV_VER)
 GNU_ICONV_OBJDIR       = $(OBJDIR)/libiconv-$(GNU_ICONV_VER)
 APR_UTIL_OBJDIR        = $(OBJDIR)/apr-util-$(APR_UTIL_VER)
+PCRE_OBJDIR    = $(OBJDIR)/pcre-$(PCRE_VER)
 HTTPD_OBJDIR   = $(OBJDIR)/httpd-$(HTTPD_VER)
 NEON_OBJDIR    = $(OBJDIR)/neon-$(NEON_VER)
 SERF_OBJDIR    = $(OBJDIR)/serf-$(SERF_VER)
@@ -257,19 +264,19 @@ PKG_CONFIG_PATH=$(PREFIX)/apr/lib/pkgcon
 .PHONY: all reset clean nuke fetch
 
 all: dirs-create bdb-install apr-install iconv-install apr-util-install \
-       httpd-install neon-install serf-install serf-old-install \
+       pcre-install httpd-install neon-install serf-install serf-old-install \
        sqlite-install cyrus-sasl-install libmagic-install \
        ruby-install bz2-install python-install gettext-install \
        lz4-install svn-install svn-bindings-install
 
 # Use these to start a build from the beginning.
 reset: dirs-reset bdb-reset apr-reset iconv-reset apr-util-reset \
-       httpd-reset neon-reset serf-reset serf-old-reset sqlite-reset \
-       cyrus-sasl-reset libmagic-reset ruby-reset python-reset \
+       pcre-reset httpd-reset neon-reset serf-reset serf-old-reset \
+       sqlite-reset cyrus-sasl-reset libmagic-reset ruby-reset python-reset \
        bz2-reset gettext-reset lz4-reset svn-reset
 
 # Use to save disk space.
-clean: bdb-clean apr-clean iconv-clean apr-util-clean httpd-clean \
+clean: bdb-clean apr-clean iconv-clean apr-util-clean pcre-clean httpd-clean \
        neon-clean serf-clean serf-old-clean sqlite-clean cyrus-sasl-clean \
        libmagic-clean ruby-clean bz2-clean python-clean gettext-clean \
        lz4-clean svn-clean
@@ -632,6 +639,53 @@ $(APR_UTIL_OBJDIR)/.installed: $(APR_UTI
        touch $@
 
 #######################################################################
+# pcre
+#######################################################################
+
+pcre-retrieve: $(PCRE_OBJDIR)/.retrieved
+pcre-configure:        $(PCRE_OBJDIR)/.configured
+pcre-compile:  $(PCRE_OBJDIR)/.compiled
+pcre-install:  $(PCRE_OBJDIR)/.installed
+pcre-reset:
+       $(foreach f, .retrieved .configured .compiled .installed, \
+               rm -f $(PCRE_OBJDIR)/$(f);)
+
+pcre-clean:
+       -(cd $(PCRE_OBJDIR) && env MAKEFLAGS= make clean)
+
+# fetch distfile for pcre
+$(DISTDIR)/$(PCRE_DIST):
+       cd $(DISTDIR) && $(FETCH_CMD) $(PCRE_URL)
+
+# retrieve pcre
+$(PCRE_OBJDIR)/.retrieved: $(DISTDIR)/$(PCRE_DIST)
+       $(call do_check_sha256,$(PCRE_DIST))
+       [ -d $(PCRE_OBJDIR) ] || mkdir -p $(PCRE_OBJDIR)
+       tar -C $(SRCDIR) -zxf $(DISTDIR)/$(PCRE_DIST)
+       touch $@
+
+# configure pcre
+$(PCRE_OBJDIR)/.configured: $(PCRE_OBJDIR)/.retrieved
+       cd $(PCRE_OBJDIR) \
+               && env CFLAGS="-g $(PROFILE_CFLAGS)" \
+               CC=$(CC) CXX=$(CXX) \
+               GREP="`which grep`" \
+               PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) \
+               $(PCRE_SRCDIR)/configure \
+               --prefix=$(PREFIX)/pcre
+       touch $@
+
+# compile pcre
+$(PCRE_OBJDIR)/.compiled: $(PCRE_OBJDIR)/.configured
+       (cd $(PCRE_OBJDIR) && env MAKEFLAGS= make -j${MAKE_JOBS})
+       touch $@
+
+# install pcre
+$(PCRE_OBJDIR)/.installed: $(PCRE_OBJDIR)/.compiled
+       (cd $(PCRE_OBJDIR) && env MAKEFLAGS= make install)
+       touch $@
+
+#######################################################################
 # httpd
 #######################################################################
 
@@ -646,104 +700,50 @@ httpd-reset:
 
 httpd-clean:
        -(cd $(HTTPD_OBJDIR) && env MAKEFLAGS= make clean)
-       -rm ${HTTPD_OBJDIR}/chil-engine.diff
-       -rm ${HTTPD_OBJDIR}/ssl-set-state.diff
-       -rm ${HTTPD_OBJDIR}/acinclude.diff
+       rm -f $(HTTPD_OBJDIR)/mod-proxy-no-threads-2.4.diff
+       rm -f $(HTTPD_OBJDIR)/ssl-init-proxy-certs.diff
 
 # fetch distfile for httpd
 $(DISTDIR)/$(HTTPD_DIST):
        cd $(DISTDIR) && $(FETCH_CMD) $(HTTPD_URL)
 
-$(HTTPD_OBJDIR)/chil-engine.diff:
-       mkdir -p $(dir $@)
-       echo > $@.tmp '--- modules/ssl/ssl_engine_init.c.orig   Mon Apr 14 
13:20:57 2014'
-       echo >>$@.tmp '+++ modules/ssl/ssl_engine_init.c        Mon Apr 14 
13:21:22 2014'
-       echo >>$@.tmp '@@ -406,9 +406,11 @@ void ssl_init_Engine(server_rec *s, 
apr_pool_t *p)'
-       echo >>$@.tmp '             ssl_die();'
-       echo >>$@.tmp '         }'
-       echo >>$@.tmp ' '
-       echo >>$@.tmp '+#ifdef ENGINE_CTRL_CHIL_SET_FORKCHECK'
-       echo >>$@.tmp '         if (strEQ(mc->szCryptoDevice, "chil")) {'
-       echo >>$@.tmp '             ENGINE_ctrl(e, 
ENGINE_CTRL_CHIL_SET_FORKCHECK, 1, 0, 0);'
-       echo >>$@.tmp '         }'
-       echo >>$@.tmp '+#endif'
-       echo >>$@.tmp ' '
-       echo >>$@.tmp '         if (!ENGINE_set_default(e, ENGINE_METHOD_ALL)) 
{'
-       echo >>$@.tmp '             ap_log_error(APLOG_MARK, APLOG_ERR, 0, s,'
-       mv -f $@.tmp $@
-
-$(HTTPD_OBJDIR)/ssl-set-state.diff:
-       mkdir -p $(dir $@)
-       echo > $@.tmp '--- modules/ssl/ssl_toolkit_compat.h.orig        Fri Feb 
 3 10:47:33 2017'
-       echo >>$@.tmp '+++ modules/ssl/ssl_toolkit_compat.h     Fri Feb  3 
10:52:17 2017'
-       echo >>$@.tmp '@@ -84,7 +84,9 @@'
-       echo >>$@.tmp ' #define SSL_get_state(ssl) SSL_state(ssl)'
-       echo >>$@.tmp ' #endif'
-       echo >>$@.tmp ' '
-       echo >>$@.tmp '+#ifndef HAVE_SSL_SET_STATE'
-       echo >>$@.tmp ' #define SSL_set_state(ssl,val) (ssl)->state = val'
-       echo >>$@.tmp '+#endif'
-       echo >>$@.tmp ' '
-       echo >>$@.tmp ' #define MODSSL_BIO_CB_ARG_TYPE const char'
-       echo >>$@.tmp ' #define MODSSL_CRYPTO_CB_ARG_TYPE const char'
-       mv -f $@.tmp $@
-
-$(HTTPD_OBJDIR)/acinclude.diff:
+$(HTTPD_OBJDIR)/ssl-init-proxy-certs.diff:
        mkdir -p $(dir $@)
-       echo >$@.tmp '--- acinclude.m4.orig     Fri Feb  3 11:05:08 2017'
-       echo >>$@.tmp '+++ acinclude.m4 Fri Feb  3 11:05:15 2017'
-       echo >>$@.tmp '@@ -455,6 +455,7 @@'
-       echo >>$@.tmp '     AC_CHECK_HEADERS([openssl/engine.h])'
-       echo >>$@.tmp '     AC_CHECK_FUNCS([SSLeay_version SSL_CTX_new], [], 
[liberrors="yes"])'
-       echo >>$@.tmp '     AC_CHECK_FUNCS([ENGINE_init 
ENGINE_load_builtin_engines])'
-       echo >>$@.tmp '+    AC_CHECK_FUNCS(SSL_set_state)'
-       echo >>$@.tmp '   else'
-       echo >>$@.tmp '     AC_CHECK_FUNCS([SSLC_library_version SSL_CTX_new], 
[], [liberrors="yes"])'
-       echo >>$@.tmp '     AC_CHECK_FUNCS(SSL_set_state)'
+       echo > $@.tmp '--- modules/ssl/ssl_engine_init.c.orig   Sun Dec 16 
13:34:14 2018'
+       echo >> $@.tmp '+++ modules/ssl/ssl_engine_init.c       Sun Dec 16 
13:34:59 2018'
+       echo >> $@.tmp '@@ -1492,7 +1492,7 @@'
+       echo >> $@.tmp '     X509_STORE_CTX *sctx;'
+       echo >> $@.tmp '     X509_STORE *store = 
SSL_CTX_get_cert_store(mctx->ssl_ctx);'
+       echo >> $@.tmp ' '
+       echo >> $@.tmp '-#if OPENSSL_VERSION_NUMBER >= 0x1010100fL'
+       echo >> $@.tmp '+#if OPENSSL_VERSION_NUMBER >= 0x1010100fL && 
!defined(LIBRESSL_VERSION_NUMBER)'
+       echo >> $@.tmp '     /* For OpenSSL >=1.1.1, turn on client cert 
support which is'
+       echo >> $@.tmp '      * otherwise turned off by default (by design).'
+       echo >> $@.tmp '      * https://github.com/openssl/openssl/issues/6933 
*/'
        mv -f $@.tmp $@
 
-# fix build without APR_HAS_THREADS (broken by r1750836)
-ifneq ($(THREADING),yes)
-HTTPD_REVERT_1750836_CMD = (cd $(HTTPD_SRCDIR)/modules/proxy && svn diff 
-c-1750836 
https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x/modules/proxy/proxy_util.c
 | patch)
-else
-HTTPD_REVERT_1750836_CMD = true
-endif
+$(HTTPD_OBJDIR)/mod-proxy-no-threads-2.4.diff:
+       cd $(HTTPD_OBJDIR) && $(FETCH_CMD) 
https://stsp.name/mod-proxy-no-threads-2.4.diff
 
 # retrieve httpd
 $(HTTPD_OBJDIR)/.retrieved: $(DISTDIR)/$(HTTPD_DIST) \
-       $(HTTPD_OBJDIR)/chil-engine.diff $(HTTPD_OBJDIR)/ssl-set-state.diff \
-       $(HTTPD_OBJDIR)/acinclude.diff
+       $(HTTPD_OBJDIR)/ssl-init-proxy-certs.diff \
+       $(HTTPD_OBJDIR)/mod-proxy-no-threads-2.4.diff
        $(call do_check_sha256,$(HTTPD_DIST))
        [ -d $(HTTPD_OBJDIR) ] || mkdir -p $(HTTPD_OBJDIR)
        tar -C $(SRCDIR) -zxf $(DISTDIR)/$(HTTPD_DIST)
-       cd $(HTTPD_SRCDIR) && patch -p0 < $(HTTPD_OBJDIR)/chil-engine.diff
-       cd $(HTTPD_SRCDIR) && patch -p0 < $(HTTPD_OBJDIR)/ssl-set-state.diff
-       cd $(HTTPD_SRCDIR) && patch -p0 < $(HTTPD_OBJDIR)/acinclude.diff
-       cp $(HTTPD_SRCDIR)/modules/ssl/ssl_toolkit_compat.h \
-               $(HTTPD_SRCDIR)/modules/ssl/ssl_toolkit_compat.h.orig
-       sed '/^#define HAVE_SSL_RAND_EGD/d' \
-               < $(HTTPD_SRCDIR)/modules/ssl/ssl_toolkit_compat.h.orig \
-               > $(HTTPD_SRCDIR)/modules/ssl/ssl_toolkit_compat.h
-       cp $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_vars.c \
-               $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_vars.c.orig
-       sed 's/^\(#if (OPENSSL_VERSION_NUMBER >= 0x00908000)\)$$/\1 \&\& 
!defined(OPENSSL_NO_COMP)/' \
-               < $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_vars.c.orig \
-               > $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_vars.c
-       cp $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_init.c \
-               $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_init.c.orig
-       $(foreach f,  ssl_engine_init.c ssl_util_ssl.c ssl_util_ssl.h, \
-               cp $(HTTPD_SRCDIR)/modules/ssl/${f}  
$(HTTPD_SRCDIR)/modules/ssl/${f}.orig; \
-               sed 
's/SSL_CTX_use_certificate_chain/_SSL_CTX_use_certificate_chain/' \
-               < $(HTTPD_SRCDIR)/modules/ssl/${f}.orig \
-               > $(HTTPD_SRCDIR)/modules/ssl/${f};\
-       )
-       $(HTTPD_REVERT_1750836_CMD)
+       (cd $(HTTPD_SRCDIR) && patch -p0 < 
$(HTTPD_OBJDIR)/ssl-init-proxy-certs.diff)
+       (cd $(HTTPD_SRCDIR) && patch -p0 < 
$(HTTPD_OBJDIR)/mod-proxy-no-threads-2.4.diff)
+       (cd $(HTTPD_SRCDIR) && svn diff -cr1849590 
https://svn.apache.org/repos/asf/httpd/httpd/trunk | patch -p0)
+       (cd $(HTTPD_SRCDIR) && svn diff -cr1663375 
https://svn.apache.org/repos/asf/httpd/httpd/trunk | patch -p0)
        touch $@
 
 # configure httpd
 $(HTTPD_OBJDIR)/.configured: $(HTTPD_OBJDIR)/.retrieved \
-       $(APR_UTIL_OBJDIR)/.installed
-       cd $(HTTPD_SRCDIR) && ./buildconf
+       $(APR_UTIL_OBJDIR)/.installed $(PCRE_OBJDIR)/.installed
+       cd $(HTTPD_SRCDIR) && ./buildconf \
+               --with-apr="$(PREFIX)/apr/bin/apr-1-config" \
+               --with-apr-util="$(PREFIX)/apr/bin/apu-1-config"
        cd $(HTTPD_OBJDIR) \
                && env CFLAGS="-g $(PROFILE_CFLAGS) -DAPR_POOL_DEBUG" \
                CC=$(CC) CXX=$(CXX) \
@@ -751,13 +751,16 @@ $(HTTPD_OBJDIR)/.configured: $(HTTPD_OBJ
                PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) \
                $(HTTPD_SRCDIR)/configure \
                --prefix=$(PREFIX)/httpd \
-               --enable-maintainer-mode \
+               --with-mpm=prefork \
                --enable-ssl \
                --enable-dav \
                --enable-proxy \
-               --with-mpm=prefork \
-               --with-apr="$(PREFIX)/apr" \
-               --with-apr-util="$(PREFIX)/apr"
+               --disable-md \
+               --disable-http2 \
+               --disable-brotli \
+               --with-apr="$(PREFIX)/apr/bin/apr-1-config" \
+               --with-apr-util="$(PREFIX)/apr/bin/apu-1-config" \
+               --with-pcre="$(PREFIX)/pcre"
        touch $@
 
 # compile httpd
@@ -776,19 +779,28 @@ $(HTTPD_CONF):
        echo > $@.tmp '# httpd config for use with mod_dav_svn'
        echo >>$@.tmp 'ServerRoot "$(PREFIX)/httpd"'
        echo >>$@.tmp 'Listen localhost:8080'
+       echo >>$@.tmp 'LoadModule unixd_module modules/mod_unixd.so'
+       echo >>$@.tmp 'LoadModule alias_module modules/mod_alias.so'
+       echo >>$@.tmp 'LoadModule access_compat_module 
modules/mod_access_compat.so'
+       echo >>$@.tmp 'LoadModule authn_core_module modules/mod_authn_core.so'
+       echo >>$@.tmp 'LoadModule authn_file_module modules/mod_authn_file.so'
+       echo >>$@.tmp 'LoadModule authz_core_module modules/mod_authz_core.so'
+       echo >>$@.tmp 'LoadModule authz_user_module modules/mod_authz_user.so'
+       echo >>$@.tmp 'LoadModule authz_groupfile_module 
modules/mod_authz_groupfile.so'
+       echo >>$@.tmp 'LoadModule auth_basic_module modules/mod_auth_basic.so'
+       echo >>$@.tmp 'LoadModule dav_module modules/mod_dav.so'
        echo >>$@.tmp 'LoadModule dav_svn_module 
modules/svn-$(WC)/mod_dav_svn.so'
        echo >>$@.tmp 'LoadModule authz_svn_module 
modules/svn-$(WC)/mod_authz_svn.so'
        echo >>$@.tmp 'DocumentRoot "$(PREFIX)/httpd/htdocs"'
        echo >>$@.tmp '<Directory />'
        echo >>$@.tmp '    Options FollowSymLinks'
        echo >>$@.tmp '    AllowOverride None'
-       echo >>$@.tmp '    Order deny,allow'
-       echo >>$@.tmp '    Deny from all'
+       echo >>$@.tmp '    Require all denied'
        echo >>$@.tmp '</Directory>'
        echo >>$@.tmp '<Location /repos>'
        echo >>$@.tmp '    DAV svn'
        echo >>$@.tmp '    SVNPath /tmp/svn-sandbox/repos'
-       echo >>$@.tmp '    Allow from localhost'
+       echo >>$@.tmp '    Require ip localhost'
        echo >>$@.tmp '</Location>'
        mv -f $@.tmp $@
 
@@ -1742,6 +1754,16 @@ $(HTTPD_CHECK_CONF): $(MOD_DONTDOTHAT_CO
        echo > $@.tmp '# httpd config for make check'
        echo >>$@.tmp 'ServerRoot "$(PREFIX)/httpd"'
        echo >>$@.tmp 'Listen localhost:$(HTTPD_CHECK_PORT)'
+       echo >>$@.tmp 'LoadModule unixd_module modules/mod_unixd.so'
+       echo >>$@.tmp 'LoadModule alias_module modules/mod_alias.so'
+       echo >>$@.tmp 'LoadModule access_compat_module 
modules/mod_access_compat.so'
+       echo >>$@.tmp 'LoadModule authn_core_module modules/mod_authn_core.so'
+       echo >>$@.tmp 'LoadModule authn_file_module modules/mod_authn_file.so'
+       echo >>$@.tmp 'LoadModule authz_core_module modules/mod_authz_core.so'
+       echo >>$@.tmp 'LoadModule authz_user_module modules/mod_authz_user.so'
+       echo >>$@.tmp 'LoadModule authz_groupfile_module 
modules/mod_authz_groupfile.so'
+       echo >>$@.tmp 'LoadModule auth_basic_module modules/mod_auth_basic.so'
+       echo >>$@.tmp 'LoadModule dav_module modules/mod_dav.so'
        echo >>$@.tmp 'LoadModule dav_svn_module $(MOD_DAV_SVN)'
        echo >>$@.tmp 'LoadModule authz_svn_module $(MOD_AUTHZ_SVN)'
        echo >>$@.tmp 'LoadModule dontdothat_module $(MOD_DONTDOTHAT)'
@@ -1750,8 +1772,7 @@ $(HTTPD_CHECK_CONF): $(MOD_DONTDOTHAT_CO
        echo >>$@.tmp '<Directory />'
        echo >>$@.tmp '    Options FollowSymLinks'
        echo >>$@.tmp '    AllowOverride None'
-       echo >>$@.tmp '    Order deny,allow'
-       echo >>$@.tmp '    Allow from all'
+       echo >>$@.tmp '    Require all granted'
        echo >>$@.tmp '</Directory>'
        echo >>$@.tmp '<Location /svn-test-work/repositories>'
        echo >>$@.tmp '    DAV svn'
@@ -1783,11 +1804,26 @@ ifeq ($(USE_AUTHZ_SHORT_CIRCUIT),yes)
        echo >>$@.tmp '    SVNPathAuthz short_circuit'
 endif
        echo >>$@.tmp '</Location>'
+       echo >>$@.tmp '<Location /svn-test-work/local_tmp/trojan>'
+       echo >>$@.tmp '    DAV svn'
+       echo >>$@.tmp '    SVNPath 
$(SVN_WC)/subversion/tests/cmdline/svn-test-work/local_tmp/trojan'
+       echo >>$@.tmp '    AuthzSVNAccessFile 
$(SVN_WC)/subversion/tests/cmdline/svn-test-work/authz'
+       echo >>$@.tmp '    AuthType Basic'
+       echo >>$@.tmp '    AuthName "Subversion Repository"'
+       echo >>$@.tmp '    AuthUserFile $(HTTPD_CHECK_USERS)'
+       echo >>$@.tmp '    Require valid-user'
+ifeq ($(USE_HTTPV1),yes)
+       echo >>$@.tmp '    SVNAdvertiseV2Protocol off'
+endif
+ifeq ($(USE_AUTHZ_SHORT_CIRCUIT),yes)
+       echo >>$@.tmp '    SVNPathAuthz short_circuit'
+endif
+       echo >>$@.tmp '</Location>'
        echo >>$@.tmp '# This Location lets you access repositories dropped in 
/tmp/'
        echo >>$@.tmp '<Location /svn>'
        echo >>$@.tmp '    DAV svn'
        echo >>$@.tmp '    SVNParentPath /tmp'
-       echo >>$@.tmp '    Allow from all'
+       echo >>$@.tmp '    Require all granted'
        echo >>$@.tmp '    #AuthType Basic'
        echo >>$@.tmp '    #AuthName "Subversion Repository"'
        echo >>$@.tmp '    #AuthUserFile $(HTTPD_CHECK_USERS)'
@@ -1828,7 +1864,7 @@ endif
        echo >>$@.tmp '    Require all granted'
        echo >>$@.tmp '  </IfModule>'
        echo >>$@.tmp '  <IfModule !mod_authz_core.c>'
-       echo >>$@.tmp '    Allow from all'
+       echo >>$@.tmp '    Requite all granted'
        echo >>$@.tmp '  </IfModule>'
 ifeq ($(USE_AUTHZ_SHORT_CIRCUIT),yes)
        echo >>$@.tmp '    SVNPathAuthz short_circuit'
@@ -1846,7 +1882,7 @@ endif
        echo >>$@.tmp '  AuthName          "Subversion Repository"'
        echo >>$@.tmp '  AuthUserFile      $(HTTPD_CHECK_USERS)'
        echo >>$@.tmp '  Require           valid-user'
-       echo >>$@.tmp '  Satisfy Any'
+       echo >>$@.tmp '  Satisfy           Any'
 ifeq ($(USE_AUTHZ_SHORT_CIRCUIT),yes)
        echo >>$@.tmp '    SVNPathAuthz short_circuit'
 endif
@@ -1936,7 +1972,7 @@ endif
        echo >>$@.tmp '<IfModule mod_authz_core.c>'
        echo >>$@.tmp '  <Location /authz-test-work/sallrany>'
        echo >>$@.tmp '    DAV               svn'
-       echo >>$@.tmp '    SVNParentPath     
$($SVN_WC)/subversion/tests/cmdline/svn-test-work/local_tmp'
+       echo >>$@.tmp '    SVNParentPath     
$(SVN_WC)/subversion/tests/cmdline/svn-test-work/local_tmp'
        echo >>$@.tmp '    AuthzSVNAccessFile 
$(SVN_WC)/subversion/tests/cmdline/svn-test-work/authz'
 ifeq ($(USE_HTTPV1),yes)
        echo >>$@.tmp '    SVNAdvertiseV2Protocol off'
@@ -1979,7 +2015,7 @@ endif
        echo >>$@.tmp '</IfModule>'
        echo >>$@.tmp 'RedirectMatch permanent 
^/svn-test-work/repositories/REDIRECT-PERM-(.*)$$ 
/svn-test-work/repositories/$$1'
        echo >>$@.tmp 'RedirectMatch 
^/svn-test-work/repositories/REDIRECT-TEMP-(.*)$$ 
/svn-test-work/repositories/$$1'
-       echo >>$@.tmp 'Include "conf/$(SVN_REL_WC)*-custom.conf"'
+       echo >>$@.tmp 'IncludeOptional "conf/$(SVN_REL_WC)*-custom.conf"'
        echo >> $@.tmp '#SVNInMemoryCacheSize 0'
        echo >> $@.tmp '#SVNCacheTextDeltas Off'
        echo >> $@.tmp '#SVNCacheRevProps Off'
@@ -1990,6 +2026,16 @@ $(HTTPD_PROXY_CONF): $(HTTPD_CHECK_CONF)
        echo > $@.tmp '# httpd config for a write-through proxy'
        echo >>$@.tmp 'ServerRoot "$(PREFIX)/httpd"'
        echo >>$@.tmp 'Listen localhost:$(HTTPD_PROXY_PORT)'
+       echo >>$@.tmp 'LoadModule unixd_module modules/mod_unixd.so'
+       echo >>$@.tmp 'LoadModule alias_module modules/mod_alias.so'
+       echo >>$@.tmp 'LoadModule access_compat_module 
modules/mod_access_compat.so'
+       echo >>$@.tmp 'LoadModule authn_core_module modules/mod_authn_core.so'
+       echo >>$@.tmp 'LoadModule authn_file_module modules/mod_authn_file.so'
+       echo >>$@.tmp 'LoadModule authz_core_module modules/mod_authz_core.so'
+       echo >>$@.tmp 'LoadModule authz_user_module modules/mod_authz_user.so'
+       echo >>$@.tmp 'LoadModule authz_groupfile_module 
modules/mod_authz_groupfile.so'
+       echo >>$@.tmp 'LoadModule auth_basic_module modules/mod_auth_basic.so'
+       echo >>$@.tmp 'LoadModule dav_module modules/mod_dav.so'
        echo >>$@.tmp 'LoadModule dav_svn_module $(MOD_DAV_SVN)'
        echo >>$@.tmp 'LoadModule authz_svn_module $(MOD_AUTHZ_SVN)'
        echo >>$@.tmp 'LoadModule dontdothat_module $(MOD_DONTDOTHAT)'
@@ -1999,7 +2045,7 @@ $(HTTPD_PROXY_CONF): $(HTTPD_CHECK_CONF)
        echo >>$@.tmp '    DAV svn'
        echo >>$@.tmp '    SVNParentPath /tmp/svn-$(BRANCH)-proxy'
        echo >>$@.tmp '    SVNMasterURI 
http://localhost:$(HTTPD_CHECK_PORT)/svn/'
-       echo >>$@.tmp '    Allow from all'
+       echo >>$@.tmp '    Requite all granted'
        echo >>$@.tmp '    #AuthType Basic'
        echo >>$@.tmp '    #AuthName "Subversion Repository"'
        echo >>$@.tmp '    #AuthUserFile $(HTTPD_CHECK_USERS)'
@@ -2015,7 +2061,7 @@ endif
        echo >>$@.tmp '<Location /svn-proxy-sync>'
        echo >>$@.tmp 'DAV svn'
        echo >>$@.tmp 'SVNParentPath /tmp/svn-$(BRANCH)-proxy'
-       echo >>$@.tmp 'Allow from all'
+       echo >>$@.tmp 'Require all granted'
        echo >>$@.tmp '</Location>'
        mv -f $@.tmp $@
 
@@ -2175,6 +2221,7 @@ svn-check-swig-rb:
 
 svn-check-javahl:
        -if [ $(ENABLE_JAVA_BINDINGS) = yes ]; then \
+               ln -s libsvnjavahl-1.so.0.0 
$(PREFIX)/svn-$(WC)/lib/libsvnjavahl-1.so; \
                (cd $(svn_builddir) && \
                        env LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) \
                        MAKEFLAGS= make $(JAVAHL_CHECK_TARGET) 2>&1) | \

Modified: subversion/branches/swig-py3/tools/dist/backport.pl
URL: 
http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dist/backport.pl?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dist/backport.pl (original)
+++ subversion/branches/swig-py3/tools/dist/backport.pl Mon Jul  8 15:19:03 2019
@@ -1027,7 +1027,7 @@ sub handle_entry {
     # the "next PROMPT;" is; there's a "last;" at the end of the loop body.
     PROMPT: while (1) {
     say "";
-    say "\n>>> $entry{header_start}:";
+    say "\n\e\x5b32m>>> $entry{header_start}:\e\x5b0m";
     say join ", ", map { "r$_" } @{$entry{revisions}} if @{$entry{revisions}};
     say "$BRANCHES/$entry{branch}" if $entry{branch};
     say "--accept=$entry{accept}" if $entry{accept};
@@ -1196,7 +1196,7 @@ sub backport_main {
     given ($lines[0]) {
       # Section header
       when (/^[A-Z].*:$/i) {
-        say "\n\n=== $lines[0]" unless $YES;
+        say "\n\n\e\x5b33m\e\x5b1m=== $lines[0]\e\x5b0m" unless $YES;
         $in_approved = $lines[0] =~ /^Approved changes/;
       }
       # Comment

Modified: subversion/branches/swig-py3/tools/dist/create-minor-release-branch.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dist/create-minor-release-branch.py?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dist/create-minor-release-branch.py 
(original)
+++ subversion/branches/swig-py3/tools/dist/create-minor-release-branch.py Mon 
Jul  8 15:19:03 2019
@@ -102,11 +102,20 @@ def edit_file(path, pattern, replacement
     assert new_text != old_text
     open(path, 'w').write(new_text)
 
-def prepend_file(path, text):
+def edit_changes_file(path, newtext):
+    """Insert NEWTEXT in the 'CHANGES' file found at PATH,
+       just before the first line that starts with 'Version '.
+    """
     print("Prepending to '%s'" % (path,))
-    print("  text='%s'" % (text,))
-    original = open(path, 'r').read()
-    open(path, 'w').write(text + original)
+    print("  text='%s'" % (newtext,))
+    lines = open(path, 'r').readlines()
+    for i, line in enumerate(lines):
+      if line.startswith('Version '):
+        with open(path, 'w') as newfile:
+          newfile.writelines(lines[:i])
+          newfile.write(newtext)
+          newfile.writelines(lines[i:])
+        break
 
 #----------------------------------------------------------------------
 def make_release_branch(ver, revnum):
@@ -158,7 +167,7 @@ def update_minor_ver_in_trunk(ver, revnu
     relpath = 'CHANGES'
     relpaths.append(relpath)
     # insert at beginning of CHANGES file
-    prepend_file(get_trunk_wc_path(relpath),
+    edit_changes_file(get_trunk_wc_path(relpath),
                  'Version ' + next_ver.base + '\n'
                  + '(?? ??? 20XX, from /branches/' + next_ver.branch + '.x)\n'
                  + get_tag_url(next_ver) + '\n'

Modified: subversion/branches/swig-py3/tools/dist/nightly.sh
URL: 
http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dist/nightly.sh?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dist/nightly.sh (original)
+++ subversion/branches/swig-py3/tools/dist/nightly.sh Mon Jul  8 15:19:03 2019
@@ -21,7 +21,7 @@
 #
 set -e
 
-repo=http://svn.apache.org/repos/asf/subversion
+repo=https://svn.apache.org/repos/asf/subversion
 svn=svn
 olds=7
 

Modified: subversion/branches/swig-py3/tools/dist/release.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dist/release.py?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dist/release.py (original)
+++ subversion/branches/swig-py3/tools/dist/release.py Mon Jul  8 15:19:03 2019
@@ -77,6 +77,14 @@ tool_versions = {
             'swig'     : ['3.0.12',
             
'7cf9f447ae7ed1c51722efc45e7f14418d15d7a1e143ac9f09a668999f4fc94d'],
   },
+  '1.12' : {
+            'autoconf' : ['2.69',
+            
'954bd69b391edc12d6a4a51a2dd1476543da5c6bbf05a95b59dc0dd6fd4c2969'],
+            'libtool'  : ['2.4.6',
+            
'e3bd4d5d3d025a36c21dd6af7ea818a2afcd4dfc1ea5a17b39d7854bcd0c06e3'],
+            'swig'     : ['3.0.12',
+            
'7cf9f447ae7ed1c51722efc45e7f14418d15d7a1e143ac9f09a668999f4fc94d'],
+  },
   '1.11' : {
             'autoconf' : ['2.69',
             
'954bd69b391edc12d6a4a51a2dd1476543da5c6bbf05a95b59dc0dd6fd4c2969'],
@@ -113,9 +121,9 @@ tool_versions = {
 
 # The version that is our current recommended release
 # ### TODO: derive this from svn_version.h; see ../../build/getversion.py
-recommended_release = '1.11'
+recommended_release = '1.12'
 # For clean-dist, a whitelist of artifacts to keep, by version.
-supported_release_lines = frozenset({"1.9", "1.10", "1.11", "1.12"})
+supported_release_lines = frozenset({"1.9", "1.10", "1.12", "1.13"})
 
 # Some constants
 repos = 'https://svn.apache.org/repos/asf/subversion'

Modified: subversion/branches/swig-py3/tools/server-side/svnauthz.c
URL: 
http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/server-side/svnauthz.c?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/server-side/svnauthz.c (original)
+++ subversion/branches/swig-py3/tools/server-side/svnauthz.c Mon Jul  8 
15:19:03 2019
@@ -31,6 +31,7 @@
 
 #include "private/svn_fspath.h"
 #include "private/svn_cmdline_private.h"
+#include "svn_private_config.h"
 
 
 /*** Option Processing. ***/
@@ -99,6 +100,9 @@ struct svnauthz_opt_state
 /* Libtool command prefix */
 #define SVNAUTHZ_LT_PREFIX "lt-"
 
+/* The prefix for handling errors and warnings. */
+#define SVNAUTHZ_ERR_PREFIX "svnauthz: "
+
 
 /*** Subcommands. */
 
@@ -224,6 +228,18 @@ read_file_contents(svn_stream_t **conten
   return SVN_NO_ERROR;
 }
 
+/* Handles warning emitted by the authz parser. */
+static void
+handle_parser_warning(void *baton,
+                      const svn_error_t *err,
+                      apr_pool_t *scratch_pool)
+{
+  svn_handle_warning2(stderr, err, SVNAUTHZ_ERR_PREFIX);
+  SVN_UNUSED(baton);
+  SVN_UNUSED(scratch_pool);
+}
+
+
 /* Loads the authz config into *AUTHZ from the file at AUTHZ_FILE
    in repository at REPOS_PATH from the transaction TXN_NAME.  If GROUPS_FILE
    is set, the resulting *AUTHZ will be constructed from AUTHZ_FILE with
@@ -256,7 +272,8 @@ get_authz_from_txn(svn_authz_t **authz,
   else
     groups_contents = NULL;
 
-  err = svn_repos_authz_parse(authz, authz_contents, groups_contents, pool);
+  err = svn_repos_authz_parse2(authz, authz_contents, groups_contents,
+                               handle_parser_warning, NULL, pool, pool);
 
   /* Add the filename to the error stack since the parser doesn't have it. */
   if (err != SVN_NO_ERROR)
@@ -283,9 +300,11 @@ get_authz(svn_authz_t **authz, struct sv
                               opt_state->txn, pool);
 
   /* Else */
-  return svn_repos_authz_read3(authz, opt_state->authz_file,
+  return svn_repos_authz_read4(authz, opt_state->authz_file,
                                opt_state->groups_file,
-                               TRUE, NULL, pool, pool);
+                               TRUE, NULL,
+                               handle_parser_warning, NULL,
+                               pool, pool);
 }
 
 static svn_error_t *
@@ -395,7 +414,12 @@ subcommand_accessof(apr_getopt_t *os, vo
 static svn_boolean_t
 use_compat_mode(const char *cmd, apr_pool_t *pool)
 {
-  cmd = svn_dirent_internal_style(cmd, pool);
+  svn_error_t *err = svn_dirent_internal_style_safe(&cmd, NULL, cmd, pool, 
pool);
+  if (err)
+    {
+      svn_error_clear(err);
+      return FALSE;
+    }
   cmd = svn_dirent_basename(cmd, NULL);
 
   /* Skip over the Libtool command prefix if it exists on the command. */
@@ -437,7 +461,9 @@ canonicalize_access_file(const char **ca
                                    access_file);
         }
 
-      *canonicalized_access_file = svn_uri_canonicalize(access_file, pool);
+      SVN_ERR(svn_uri_canonicalize_safe(
+                  canonicalized_access_file, NULL,
+                  access_file, pool, pool));
     }
   else if (within_txn)
     {
@@ -450,8 +476,9 @@ canonicalize_access_file(const char **ca
     {
       /* If it isn't a URL and there's no transaction flag then it's a
        * dirent to the access file on local disk. */
-      *canonicalized_access_file =
-          svn_dirent_internal_style(access_file, pool);
+      SVN_ERR(svn_dirent_internal_style_safe(
+                  canonicalized_access_file, NULL,
+                  access_file, pool, pool));
     }
 
   return SVN_NO_ERROR;
@@ -626,7 +653,9 @@ sub_main(int *exit_code, int argc, const
                                               pool));
           os->ind++;
 
-          opt_state.repos_path = 
svn_dirent_internal_style(opt_state.repos_path, pool);
+          SVN_ERR(svn_dirent_internal_style_safe(&opt_state.repos_path, NULL,
+                                                 opt_state.repos_path,
+                                                 pool, pool));
         }
 
       /* Exactly 1 non-option argument */
@@ -745,7 +774,7 @@ main(int argc, const char *argv[])
     {
       if (exit_code == 0)
         exit_code = EXIT_FAILURE;
-      svn_cmdline_handle_exit_error(err, NULL, "svnauthz: ");
+      svn_cmdline_handle_exit_error(err, NULL, SVNAUTHZ_ERR_PREFIX);
     }
 
   svn_pool_destroy(pool);


Reply via email to