X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=.ci%2Ftest%2Frun.sh;h=2d1eb07db76d50136f417f27323195552c6d3350;hb=344c632c7a9f8047a412239dcd22ba1531bdfda5;hp=a6a38b781f01b5cdb599a2716d6828cdf3e79d6c;hpb=7619f84393f824a84e20e03167304b27d3581ac0;p=tinc diff --git a/.ci/test/run.sh b/.ci/test/run.sh index a6a38b78..2d1eb07d 100644 --- a/.ci/test/run.sh +++ b/.ci/test/run.sh @@ -27,31 +27,39 @@ run_tests() { sudo git clean -dfx sudo chown -R "${USER:-$(whoami)}" . + mkdir -p sanitizer /tmp/logs + header "Running test flavor $flavor" autoreconf -fsi - # shellcheck disable=SC2046 - ./configure $(sh .ci/conf.sh "$@") + + DISTCHECK_CONFIGURE_FLAGS=$(sh .ci/conf.sh "$@") + export DISTCHECK_CONFIGURE_FLAGS + + # shellcheck disable=SC2086 + ./configure $DISTCHECK_CONFIGURE_FLAGS + make -j"$(nproc)" all extra + if [ "$(uname -s)" = Linux ]; then + cmd=distcheck + else + cmd=check + fi + code=0 - make check -j2 VERBOSE=1 || code=$? + make $cmd -j2 VERBOSE=1 || code=$? - mkdir -p /tmp/logs - sudo tar -c -z -f "/tmp/logs/tests.$flavor.tar.gz" test/ + sudo tar -c -z -f "/tmp/logs/tests.$flavor.tar.gz" test/ sanitizer/ return $code } -echo "system name $(uname -s)" -echo "full $(uname -a)" -echo "o $(uname -o)" - case "$(uname -s)" in Linux) if [ -n "${HOST:-}" ]; then # Needed for cross-compilation for 32-bit targets. - export CPPFLAGS='-D_FILE_OFFSET_BITS=64' + export CPPFLAGS="${CPPFLAGS:-} -D_FILE_OFFSET_BITS=64" fi ;; @@ -64,7 +72,7 @@ Darwin) nproc() { sysctl -n hw.ncpu; } gcrypt=$(brew --prefix libgcrypt) openssl=$(brew --prefix openssl) - export CPPFLAGS="-I/usr/local/include -I$gcrypt/include -I$openssl/include -I$gcrypt/include" + export CPPFLAGS="${CPPFLAGS:-} -I/usr/local/include -I$gcrypt/include -I$openssl/include -I$gcrypt/include" ;; esac @@ -75,6 +83,16 @@ default) nolegacy) run_tests nolegacy --disable-legacy-protocol ;; +gcrypt) + run_tests gcrypt --with-libgcrypt + ;; +openssl3) + if [ -d /opt/ssl3 ]; then + run_tests openssl3 --with-openssl=/opt/ssl3 --with-openssl-include=/opt/ssl3/include --with-openssl-lib=/opt/ssl3/lib64 + else + echo >&2 "OpenSSL 3 not installed, skipping test" + fi + ;; *) bail "unknown test flavor $1" ;;