]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Merge r1895787, r1895905 from trunk: [under CTR for Travis changes]
authorJoe Orton <jorton@apache.org>
Mon, 13 Dec 2021 16:46:38 +0000 (16:46 +0000)
committerJoe Orton <jorton@apache.org>
Mon, 13 Dec 2021 16:46:38 +0000 (16:46 +0000)
Add Travis build job building/testing mod_ssl against OpenSSL 3.

Add Travis job for 2.4.x against OpenSSL 3, using APR 1.7/apr-util 1.6.
Disable TEST_MALLOC (enabled by accident) for OpenSSL 3 / trunk job.
Restrict OpenSSL 3 / apr trunk build to non-2.4.x.

Github: closes #285

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1895909 13f79535-47bb-0310-9956-ffa450edef68

.travis.yml
test/travis_before_linux.sh
test/travis_run_linux.sh

index fe249ba4b8485d2b43825b56cd029eca5b090f27..0e3d17ddf6fd540444e01d863dc7c0721e11b7b8 100644 (file)
@@ -264,6 +264,19 @@ jobs:
            TEST_MALLOC=1 TEST_SSL=1
            CLEAR_CACHE=1
     # -------------------------------------------------------------------------
+    - name: Linux Ubuntu, APR trunk, minimal module set, OpenSSL 3.x
+      if: *condition_not_24x
+      env: APR_VERSION=trunk APR_CONFIG="--without-pgsql --without-mysql --without-odbc --with-crypto"
+           CONFIG="--enable-mods-shared=ssl --with-mpm=event"
+           TEST_SSL=1 TEST_OPENSSL3=3.0.0
+    # -------------------------------------------------------------------------
+    - if: *condition_24x_only
+      name: Linux Ubuntu, APR 1.7, minimal module set, OpenSSL 3.x
+      env: APR_VERSION=1.7.0
+           APU_VERSION=1.6.1 APU_CONFIG="--without-pgsql --without-mysql --without-odbc --with-crypto"
+           CONFIG="--enable-mods-shared=ssl --with-mpm=event"
+           TEST_SSL=1 TEST_OPENSSL3=3.0.0
+    # -------------------------------------------------------------------------
     - name: Linux Ubuntu, APR 1.7.0, APR-util 1.6.1, LDAP
       env: APR_VERSION=1.7.0
            APU_VERSION=1.6.1 APU_CONFIG="--with-crypto --with-ldap"
index 61e844f6b76b4124d473c8d052ab0ac8c6ca016f..717464e5372a8ecadba52b1c23d5233e3ae1ba32 100755 (executable)
@@ -111,11 +111,40 @@ if test -v TEST_SSL; then
     popd
 fi
 
+if test -v TEST_OPENSSL3; then
+    # Build the requested version of OpenSSL if it's not already
+    # installed in the cached ~/root
+    if ! test -f $HOME/root/openssl-is-${TEST_OPENSSL3}; then
+        mkdir -p build/openssl
+        pushd build/openssl
+           curl "https://www.openssl.org/source/openssl-${TEST_OPENSSL3}.tar.gz" |
+              tar -xzf -
+           cd openssl-${TEST_OPENSSL3}
+           ./Configure --prefix=$HOME/root/openssl3 shared no-tests
+           make $MFLAGS
+           make install_sw
+           touch $HOME/root/openssl-is-${TEST_OPENSSL3}
+       popd
+    fi
+
+    # Point APR/APR-util at the installed version of OpenSSL.
+    if test -v APU_VERSION; then
+        APU_CONFIG="${APU_CONFIG} --with-openssl=$HOME/root/openssl3"
+    elif test -v APR_VERSION; then
+        APR_CONFIG="${APR_CONFIG} --with-openssl=$HOME/root/openssl3"
+    else
+        : Non-system APR/APR-util must be used to build with OpenSSL 3 to avoid mismatch with system libraries
+        exit 1
+    fi
+fi
+
 if test -v APR_VERSION; then
     install_apx apr ${APR_VERSION} "${APR_CONFIG}"
+    ldd $HOME/root/apr-${APR_VERSION}/lib/libapr-?.so || true
     APU_CONFIG="$APU_CONFIG --with-apr=$HOME/root/apr-${APR_VERSION}"
 fi
 
 if test -v APU_VERSION; then
     install_apx apr-util ${APU_VERSION} "${APU_CONFIG}" --with-apr=$HOME/build/apr-${APR_VERSION}
+    ldd $HOME/root/apr-util-${APU_VERSION}/lib/libaprutil-?.so || true
 fi
index 626a9d56afe0449f2b9e3b4e60a7fed067f94224..80aa650bc2f8fd6340e0680f95a0ce6872aaefc6 100755 (executable)
@@ -51,6 +51,11 @@ else
     CONFIG="$CONFIG --with-apr-util=/usr"
 fi
 
+if test -v TEST_OPENSSL3; then
+    CONFIG="$CONFIG --with-ssl=$HOME/root/openssl3"
+    export LD_LIBRARY_PATH=$HOME/root/openssl3/lib:$HOME/root/openssl3/lib64
+fi
+
 srcdir=$PWD
 
 if test -v TEST_VPATH; then