diff --git a/package/ci/memorysanitizer.conf b/package/ci/memorysanitizer.conf new file mode 100644 index 000000000..fa3d31fd9 --- /dev/null +++ b/package/ci/memorysanitizer.conf @@ -0,0 +1,3 @@ +# Configuration file for MemorySanitizer running on Travis CI + +fun:Corrade::Utility::Directory::fileExists diff --git a/package/ci/travis-desktop.sh b/package/ci/travis-desktop.sh index 5a1ed4cc2..90fe764b3 100755 --- a/package/ci/travis-desktop.sh +++ b/package/ci/travis-desktop.sh @@ -10,7 +10,7 @@ cmake .. \ -DBUILD_TESTS=ON \ -DCMAKE_BUILD_TYPE=Debug make -j install -ASAN_OPTIONS="color=always" LSAN_OPTIONS="color=always" CORRADE_TEST_COLOR=ON ctest -V +ASAN_OPTIONS="color=always" LSAN_OPTIONS="color=always" UBSAN_OPTIONS="color=always" MSAN_OPTIONS="color=always" CORRADE_TEST_COLOR=ON ctest -V cd .. # Examples diff --git a/package/ci/travis.yml b/package/ci/travis.yml index f59195f84..9be9f5f65 100644 --- a/package/ci/travis.yml +++ b/package/ci/travis.yml @@ -20,7 +20,7 @@ matrix: compiler: clang env: - TARGET=desktop-sanitizers - - CMAKE_CXX_FLAGS="-fsanitize=address" + - CMAKE_CXX_FLAGS="-fsanitize=address -fsanitize=undefined -fno-sanitize-recover=all" addons: apt: sources: @@ -30,6 +30,21 @@ matrix: packages: - clang-3.8 - cmake + - language: cpp + os: linux + compiler: clang + env: + - TARGET=desktop-sanitizers + # It's either ASan or MSan, can't have both at the same time + - CMAKE_CXX_FLAGS="-fsanitize=memory -fsanitize-memory-track-origins -stdlib=libc++" + addons: + apt: + sources: + - debian-sid + packages: + - libc++-dev + - clang-3.8 + - cmake - language: cpp os: osx compiler: clang