File tree Expand file tree Collapse file tree 4 files changed +13
-2
lines changed Expand file tree Collapse file tree 4 files changed +13
-2
lines changed Original file line number Diff line number Diff line change 1111 strategy :
1212 fail-fast : false
1313 matrix :
14- config : [default, llvm, gnu32]
14+ config : [default, llvm, gnu32, tsan ]
1515
1616 name : build • ${{ matrix.config }}
1717
Original file line number Diff line number Diff line change @@ -19,6 +19,7 @@ To run jobs locally:
1919CI_CONFIG=ci/configs/default.bash ci/scripts/run.sh
2020CI_CONFIG=ci/configs/llvm.bash ci/scripts/run.sh
2121CI_CONFIG=ci/configs/gnu32.bash ci/scripts/run.sh
22+ CI_CONFIG=ci/configs/tsan.bash ci/scripts/run.sh
2223```
2324
2425By default CI jobs will reuse their build directories. ` CI_CLEAN=1 ` can be specified to delete them before running instead.
Original file line number Diff line number Diff line change 1+ CI_DESC=" CI job running thread sanitizer"
2+ CI_DIR=build-tsan
3+ export CXX=clang++
4+ export CXXFLAGS=" -ggdb -Werror -Wall -Wextra -Wpedantic -Wthread-safety-analysis -Wno-unused-parameter -fsanitize=thread"
5+ CMAKE_ARGS=()
6+ BUILD_ARGS=(-k -j4)
7+ BUILD_TARGETS=(mptest)
Original file line number Diff line number Diff line change @@ -11,9 +11,12 @@ set -o errexit -o nounset -o pipefail -o xtrace
1111[ " ${CI_CONFIG+x} " ] && source " $CI_CONFIG "
1212
1313: " ${CI_DIR:= build} "
14+ if ! [ -v BUILD_TARGETS ]; then
15+ BUILD_TARGETS=(all tests mpexamples)
16+ fi
1417
1518[ -n " ${CI_CLEAN-} " ] && rm -rf " ${CI_DIR} "
1619
1720cmake -B " $CI_DIR " " ${CMAKE_ARGS[@]+" ${CMAKE_ARGS[@]} " } "
18- cmake --build " $CI_DIR " -t all tests mpexamples -- " ${BUILD_ARGS[@]+" ${BUILD_ARGS[@]} " } "
21+ cmake --build " $CI_DIR " -t " ${BUILD_TARGETS[@]} " -- " ${BUILD_ARGS[@]+" ${BUILD_ARGS[@]} " } "
1922ctest --test-dir " $CI_DIR " --output-on-failure
You can’t perform that action at this time.
0 commit comments