diff --git a/.ci/azp-linux-asan-test.yml b/.ci/azp-linux-sanitizer-test.yml similarity index 66% rename from .ci/azp-linux-asan-test.yml rename to .ci/azp-linux-sanitizer-test.yml index 0702ad085c..710dd420ab 100644 --- a/.ci/azp-linux-asan-test.yml +++ b/.ci/azp-linux-sanitizer-test.yml @@ -11,11 +11,11 @@ steps: ./build.sh ${TOOLSET} ./b2 -v cd ../.. - ./src/engine/b2 -a address-sanitizer=on toolset=${TOOLSET} b2 + ./src/engine/b2 -a ${SANITIZER}=on optimization=debug toolset=${TOOLSET} b2 displayName: Build - bash: | set -e - export B2=`ls -1 ${PWD}/.build/*/debug/address-sanitizer-on/cxxstd-11-iso/threading-multi/b2` + export B2=`find ${PWD}/.build -name b2b2` cd test ./test_all.py ${TOOLSET} cd .. diff --git a/azure-pipelines.yml b/azure-pipelines.yml index fecc8bd217..4d5bfa6a11 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -114,16 +114,17 @@ stages: steps: - template: .ci/azp-macos-test.yml - - job: 'Linux_ASAN' + - job: 'Linux_Sanitzer' strategy: matrix: - # Clang ${{variables.clang_latest}}: {TOOLSET: "clang-${{variables.clang_latest}}", PACKAGES: "clang-${{variables.clang_latest}}", LLVM_OS: "${{variables.linux_latest_os}}", LLVM_VER: "${{variables.clang_latest}}", VM_IMAGE: "${{variables.linux_latest_vm}}"} - GCC ${{variables.gcc_latest}}: {TOOLSET: "gcc-${{variables.gcc_latest}}", PACKAGES: "g++-${{variables.gcc_latest}}", VM_IMAGE: "${{variables.linux_latest_vm}}"} + Address (GCC ${{variables.gcc_latest}}): {SANITIZER: "address-sanitizer", TOOLSET: "gcc-${{variables.gcc_latest}}", PACKAGES: "g++-${{variables.gcc_latest}}", VM_IMAGE: "${{variables.linux_latest_vm}}"} + Thread (GCC ${{variables.gcc_latest}}): {SANITIZER: "thread-sanitizer", TOOLSET: "gcc-${{variables.gcc_latest}}", PACKAGES: "g++-${{variables.gcc_latest}}", VM_IMAGE: "${{variables.linux_latest_vm}}"} + UB (GCC ${{variables.gcc_latest}}): {SANITIZER: "undefined-sanitizer", TOOLSET: "gcc-${{variables.gcc_latest}}", PACKAGES: "g++-${{variables.gcc_latest}}", VM_IMAGE: "${{variables.linux_latest_vm}}"} pool: vmImage: $(VM_IMAGE) continueOnError: 'true' steps: - - template: .ci/azp-linux-asan-test.yml + - template: .ci/azp-linux-sanitizer-test.yml - stage: Extra dependsOn: []