SKIP_TESTING=1
addons:
apt:
- sources:
- - ubuntu-toolchain-r-test
packages:
- gcc-8
- libtool-bin
- libjansson-dev
- libpcre2-dev
# -------------------------------------------------------------------------
+ - name: Linux Ubuntu, GCC 9 maintainer-mode w/-Werror
+ env: CONFIG="--enable-mods-shared=reallyall --enable-maintainer-mode NOTEST_CFLAGS=-Werror CC=gcc-9"
+ SKIP_TESTING=1
+ addons:
+ apt:
+ sources:
+ - sourceline: 'ppa:ubuntu-toolchain-r/test'
+ packages:
+ - gcc-9
+ - libtool-bin
+ - libapr1-dev
+ - libaprutil1-dev
+ - perl-doc
+ - lua5.3-dev
+ - libbrotli-dev
+ - libcurl4-openssl-dev
+ - libsystemd-dev
+ - libnghttp2-dev
+ - libjansson-dev
+ - libpcre2-dev
+ # -------------------------------------------------------------------------
# MFLAGS= works around https://bz.apache.org/bugzilla/show_bug.cgi?id=63942
- if: branch != 2.4.x
name: Linux Ubuntu, Regenerate ap_expr
# -------------------------------------------------------------------------
- name: Linux Ubuntu, APR 1.7.0 --enable-pool-debug, APR-util 1.6.1
env: APR_VERSION=1.7.0 APR_CONFIG="--enable-pool-debug"
- APU_VERSION=1.6.1
- APU_CONFIG="--with-crypto"
+ APU_VERSION=1.6.1 APU_CONFIG="--with-crypto"
CONFIG="--enable-mods-shared=reallyall"
+ TEST_MALLOC=1
# -------------------------------------------------------------------------
- name: Linux Ubuntu, litmus WebDAV tests
env: CONFIG="--enable-dav --enable-dav-fs"
if ! test -v SKIP_TESTING; then
set +e
+ if test -v TEST_MALLOC; then
+ # Enable enhanced glibc malloc debugging, see mallopt(3)
+ export MALLOC_PERTURB_=65 MALLOC_CHECK_=3
+ export LIBC_FATAL_STDERR_=1
+ fi
+
if test -v TEST_UBSAN; then
export UBSAN_OPTIONS="log_path=$PWD/ubsan.log"
fi
grep -C5 'Segmentation fault' test/perl-framework/t/logs/error_log
RV=2
fi
+
if test -v TEST_UBSAN && ls ubsan.log.* &> /dev/null; then
cat ubsan.log.*
RV=3
fi
+ # With LIBC_FATAL_STDERR_/MALLOC_CHECK_ glibc will abort when
+ # malloc errors are detected. This should get caught by the
+ # segfault grep above, but in case it is not, catch it here too:
+ if grep 'glibc detected' test/perl-framework/t/logs/error_log; then
+ grep -C20 'glibc detected' test/perl-framework/t/logs/error_log
+ RV=4
+ fi
+
exit $RV
fi