Просмотр исходного кода

Travis: run sanitizer on recent GCC version to avoid false positives

Benoit Blanchon 5 лет назад
Родитель
Сommit
8993a093e9
2 измененных файлов с 10 добавлено и 12 удалено
  1. 10 10
      .travis.yml
  2. 0 2
      extras/ci/test.sh

+ 10 - 10
.travis.yml

@@ -21,17 +21,17 @@ matrix:
         apt:
           sources: ['ubuntu-toolchain-r-test']
           packages: ['g++-4.8']
-      env: SCRIPT=test _CC=gcc-4.8 _CXX=g++-4.8 SANITIZE=address
+      env: SCRIPT=test _CC=gcc-4.8 _CXX=g++-4.8 
     - addons:
         apt:
           sources: ['ubuntu-toolchain-r-test']
           packages: ['g++-4.9']
-      env: SCRIPT=test _CC=gcc-4.9 _CXX=g++-4.9 SANITIZE=leak
+      env: SCRIPT=test _CC=gcc-4.9 _CXX=g++-4.9
     - addons:
         apt:
           sources: ['ubuntu-toolchain-r-test']
           packages: ['g++-5']
-      env: SCRIPT=test _CC=gcc-5 _CXX=g++-5 # SANITIZE=undefined
+      env: SCRIPT=test _CC=gcc-5 _CXX=g++-5
     - addons:
         apt:
           sources: ['ubuntu-toolchain-r-test']
@@ -41,17 +41,17 @@ matrix:
         apt:
           sources: ['ubuntu-toolchain-r-test']
           packages: ['g++-7']
-      env: SCRIPT=test _CC=gcc-7 _CXX=g++-7
+      env: SCRIPT=test _CC=gcc-7 _CXX=g++-7 CXXFLAGS="-fsanitize=leak"
     - addons:
         apt:
           sources: ['ubuntu-toolchain-r-test']
           packages: ['g++-8']
-      env: SCRIPT=test _CC=gcc-8 _CXX=g++-8
+      env: SCRIPT=test _CC=gcc-8 _CXX=g++-8 CXXFLAGS="-fsanitize=undefined" LDFLAGS="-fuse-ld=gold"
     - addons:
         apt:
           sources: ['ubuntu-toolchain-r-test']
           packages: ['g++-9']
-      env: SCRIPT=test _CC=gcc-9 _CXX=g++-9
+      env: SCRIPT=test _CC=gcc-9 _CXX=g++-9 CXXFLAGS="-fsanitize=address"
     - addons:
         apt:
           packages: ['g++-arm-linux-gnueabihf']
@@ -61,12 +61,12 @@ matrix:
         apt:
           sources: ['ubuntu-toolchain-r-test','llvm-toolchain-precise-3.5']
           packages: ['clang-3.5']
-      env: SCRIPT=test _CC=clang-3.5 _CXX=clang++-3.5 SANITIZE=address
+      env: SCRIPT=test _CC=clang-3.5 _CXX=clang++-3.5 CXXFLAGS="-fsanitize=address"
     - addons:
         apt:
           sources: ['ubuntu-toolchain-r-test','llvm-toolchain-precise-3.6']
           packages: ['clang-3.6']
-      env: SCRIPT=test _CC=clang-3.6 _CXX=clang++-3.6 SANITIZE=leak
+      env: SCRIPT=test _CC=clang-3.6 _CXX=clang++-3.6 CXXFLAGS="-fsanitize=leak"
     - addons:
         apt:
           sources: ['ubuntu-toolchain-r-test','llvm-toolchain-precise-3.7']
@@ -76,7 +76,7 @@ matrix:
         apt:
           sources: ['ubuntu-toolchain-r-test','llvm-toolchain-precise-3.8']
           packages: ['clang-3.8']
-      env: SCRIPT=test _CC=clang-3.8 _CXX=clang++-3.8 SANITIZE=undefined
+      env: SCRIPT=test _CC=clang-3.8 _CXX=clang++-3.8 CXXFLAGS="-fsanitize=undefined"
     - addons:
         apt:
           sources: ['ubuntu-toolchain-r-test','llvm-toolchain-trusty-3.9']
@@ -123,7 +123,7 @@ matrix:
       env: SCRIPT=test
     - os: osx
       osx_image: xcode10
-      env: SCRIPT=test SANITIZE=address
+      env: SCRIPT=test CXXFLAGS="-fsanitize=address"
     - env: SCRIPT=arduino VERSION=1.6.7 BOARD=arduino:avr:uno
     - env: SCRIPT=arduino VERSION=1.8.2 BOARD=arduino:samd:mkr1000
     - env: SCRIPT=platformio BOARD=uno

+ 0 - 2
extras/ci/test.sh

@@ -3,8 +3,6 @@
 export CC="$_CC"
 export CXX="$_CXX"
 
-[ -n "$SANITIZE" ] && export CXXFLAGS="-fsanitize=$SANITIZE"
-
 cmake -DCMAKE_BUILD_TYPE=Debug .
 cmake --build .
 ctest --output-on-failure .