aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvgeny Vereshchagin <evvers@ya.ru>2018-12-02 07:39:18 +0100
committerEvgeny Vereshchagin <evvers@ya.ru>2018-12-04 01:10:13 +0100
commitb8366c5497b405d777edf1759dbe18d0a463b913 (patch)
treea4459bb7a50db480a2f9146012ab339eb6429e99
parentMerge pull request #11031 from poettering/gcc-attr-cleanup (diff)
downloadsystemd-b8366c5497b405d777edf1759dbe18d0a463b913.tar.gz
systemd-b8366c5497b405d777edf1759dbe18d0a463b913.tar.bz2
systemd-b8366c5497b405d777edf1759dbe18d0a463b913.zip
travis: also run the tests built with clang under ASan+UBsan
-rw-r--r--.travis.yml18
-rwxr-xr-xtravis-ci/managers/fedora.sh9
2 files changed, 24 insertions, 3 deletions
diff --git a/.travis.yml b/.travis.yml
index 0bb280897..f2128ea1a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -72,6 +72,24 @@ jobs:
after_script:
- $CI_MANAGERS/fedora.sh CLEANUP
+ - name: Fedora Latest (clang ASan+UBSan)
+ language: bash
+ env:
+ - FEDORA_RELEASE="latest"
+ - CONT_NAME="systemd-fedora-$FEDORA_RELEASE"
+ - DOCKER_EXEC="docker exec -ti $CONT_NAME"
+ before_install:
+ - sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
+ - docker --version
+ install:
+ - $CI_MANAGERS/fedora.sh SETUP
+ script:
+ - set -e
+ - $CI_MANAGERS/fedora.sh RUN_CLANG_ASAN
+ - set +e
+ after_script:
+ - $CI_MANAGERS/fedora.sh CLEANUP
+
- stage: Coverity
language: bash
env:
diff --git a/travis-ci/managers/fedora.sh b/travis-ci/managers/fedora.sh
index 1faf5b922..dc9d93efd 100755
--- a/travis-ci/managers/fedora.sh
+++ b/travis-ci/managers/fedora.sh
@@ -57,9 +57,12 @@ for phase in "${PHASES[@]}"; do
$DOCKER_EXEC ninja -v -C build
$DOCKER_EXEC ninja -C build test
;;
- RUN_ASAN)
- $DOCKER_EXEC git clean -dxff
- $DOCKER_EXEC meson --werror -Dtests=unsafe -Db_sanitize=address,undefined build
+ RUN_ASAN|RUN_CLANG_ASAN)
+ if [[ "$phase" = "RUN_CLANG_ASAN" ]]; then
+ ENV_VARS="-e CC=clang -e CXX=clang++"
+ MESON_ARGS="-Db_lundef=false" # See https://github.com/mesonbuild/meson/issues/764
+ fi
+ docker exec $ENV_VARS -it $CONT_NAME meson --werror -Dtests=unsafe -Db_sanitize=address,undefined $MESON_ARGS build
$DOCKER_EXEC ninja -v -C build
# Never remove halt_on_error from UBSAN_OPTIONS. See https://github.com/systemd/systemd/commit/2614d83aa06592aedb.