From: Joe Orton Date: Mon, 13 Dec 2021 16:46:38 +0000 (+0000) Subject: Merge r1895787, r1895905 from trunk: [under CTR for Travis changes] X-Git-Tag: candidate-2.4.52-rc1~36 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2c151c69625b484460b37d2f4a1f023bae891942;p=thirdparty%2Fapache%2Fhttpd.git Merge r1895787, r1895905 from trunk: [under CTR for Travis changes] 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 --- diff --git a/.travis.yml b/.travis.yml index fe249ba4b84..0e3d17ddf6f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -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" diff --git a/test/travis_before_linux.sh b/test/travis_before_linux.sh index 61e844f6b76..717464e5372 100755 --- a/test/travis_before_linux.sh +++ b/test/travis_before_linux.sh @@ -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 diff --git a/test/travis_run_linux.sh b/test/travis_run_linux.sh index 626a9d56afe..80aa650bc2f 100755 --- a/test/travis_run_linux.sh +++ b/test/travis_run_linux.sh @@ -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