diff options
| -rw-r--r-- | .ci/common/build.sh | 24 | ||||
| -rwxr-xr-x | .ci/run_tests.sh | 8 | ||||
| -rw-r--r-- | .travis.yml | 7 | 
3 files changed, 24 insertions, 15 deletions
| diff --git a/.ci/common/build.sh b/.ci/common/build.sh index 0140be3637..34bba42af3 100644 --- a/.ci/common/build.sh +++ b/.ci/common/build.sh @@ -61,19 +61,25 @@ build_nvim() {      exit 1    fi -  echo "Building libnvim." -  if ! ${MAKE_CMD} libnvim; then -    exit 1 -  fi +  if [ "$CLANG_SANITIZER" != "TSAN" ]; then +    echo "Building libnvim." +    if ! ${MAKE_CMD} libnvim; then +      exit 1 +    fi -  echo "Building nvim-test." -  if ! ${MAKE_CMD} nvim-test; then -    exit 1 +    echo "Building nvim-test." +    if ! ${MAKE_CMD} nvim-test; then +      exit 1 +    fi    fi    # Invoke nvim to trigger *San early. -  bin/nvim --version -  bin/nvim -u NONE -e -c ':qall' +  if ! (bin/nvim --version && bin/nvim -u NONE -e -c ':qall'); then +    asan_check "${LOG_DIR}" +    exit 1 +  fi +  asan_check "${LOG_DIR}" +      cd "${TRAVIS_BUILD_DIR}"  } diff --git a/.ci/run_tests.sh b/.ci/run_tests.sh index f3a6466c5e..656ea16e37 100755 --- a/.ci/run_tests.sh +++ b/.ci/run_tests.sh @@ -17,8 +17,12 @@ source "${CI_DIR}/common/test.sh"  build_nvim -run_unittests -run_functionaltests +if [ "$CLANG_SANITIZER" != "TSAN" ]; then +  # Additional threads are only created when the builtin UI starts, which +  # doesn't happen in the unit/functional tests +  run_unittests +  run_functionaltests +fi  run_oldtests  install_nvim diff --git a/.travis.yml b/.travis.yml index becc7e8d3d..f9b0026c1f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -77,10 +77,9 @@ matrix:      - os: linux        compiler: clang-3.6        env: GCOV=llvm-cov-3.6 CLANG_SANITIZER=MSAN -    # FIXME (tarruda): Uncomment when TSan tests don't hang anymore. -    #- os: linux -    #  compiler: clang-3.6 -    #  env: GCOV=llvm-cov-3.6 CLANG_SANITIZER=TSAN +    - os: linux +      compiler: clang-3.6 +      env: GCOV=llvm-cov-3.6 CLANG_SANITIZER=TSAN      - os: osx        compiler: clang        env: GCOV=gcov | 
