Skip to content

Commit 96ea407

Browse files
committed
ci: add clang ASan job
1 parent 3fd05bb commit 96ea407

File tree

1 file changed

+6
-8
lines changed

1 file changed

+6
-8
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ jobs:
4141
standards: '20'
4242
latest-factors: |
4343
msvc Optimized-Debug
44-
gcc UBSan Coverage
45-
clang UBSan
44+
gcc UBSan ASan Coverage
45+
clang UBSan ASan
4646
factors: ''
4747
runs-on: |
4848
apple-clang: macos-15
@@ -68,13 +68,14 @@ jobs:
6868
llvm-hash: dd7a3d4d798e30dfe53b5bbbbcd9a23c24ea1af9
6969
llvm-build-preset-prefix: {{#if optimized-debug}}debwithopt{{else}}{{{lowercase build-type}}}{{/if}}
7070
llvm-build-preset-os: {{#if (ieq os 'windows') }}win{{else}}unix{{/if}}
71-
llvm-sanitizer: {{#if ubsan}}-UBSan{{else if asan}}-ASan{{else if msan}}-MSan{{/if}}
71+
llvm-sanitizer: {{#if (eq compiler 'gcc')}}{{else if ubsan}}-UBSan{{else if asan}}-ASan{{else if msan}}-MSan{{/if}}
7272
llvm-build-preset: {{{ llvm-build-preset-prefix }}}-{{{ llvm-build-preset-os }}}
7373
llvm-compiler-version: {{#if (or (contains version '*') (contains version '^'))}}{{else}}-{{{ version }}}{{/if}}
74-
llvm-archive-basename: llvm-{{{ lowercase os }}}-{{{ compiler }}}{{{ llvm-compiler-version }}}-{{{ llvm-build-preset-prefix }}}{{{ sanitizer }}}-{{{ substr llvm-hash 0 7 }}}
74+
llvm-archive-basename: llvm-{{{ lowercase os }}}-{{{ compiler }}}{{{ llvm-compiler-version }}}-{{{ llvm-build-preset-prefix }}}{{{ llvm-sanitizer }}}-{{{ substr llvm-hash 0 7 }}}
7575
llvm-root: ../third-party/llvm-project/install
7676
llvm-archive-extension: {{#if (ieq os 'windows') }}7z{{else}}tar.bz2{{/if}}
7777
llvm-archive-filename: {{{ llvm-archive-basename }}}.{{{ llvm-archive-extension }}}
78+
llvm-sanizizer-config: {{#if (ne compiler 'clang')}}{{else if ubsan}}Undefined{{else if asan}}Address{{/if}}
7879
mrdocs-ccflags: {{{ ccflags }}} {{#if (and (eq compiler 'gcc') (not asan)) }}-static{{/if}}
7980
mrdocs-cxxflags: {{{ cxxflags }}} {{#if (and (eq compiler 'gcc') (not asan)) }}-static{{/if}}
8081
mrdocs-package-generators: {{#if (ieq os 'windows') }}7Z ZIP WIX{{else}}TGZ TXZ{{/if}}
@@ -261,10 +262,7 @@ jobs:
261262
build-type: ${{ matrix.build-type }}
262263
extra-args: |
263264
${{ runner.os == 'Windows' && '-DLLVM_ENABLE_RUNTIMES=libcxx' || '-DLLVM_ENABLE_RUNTIMES=libcxx;libcxxabi;libunwind' }}
264-
# The UBSan vptr sanitizer needs RTTI.
265-
${{ matrix.ubsan && '-DLLVM_ENABLE_RTTI=ON' }}
266-
# The LLVM_USE_SANITIZER option doesn't support GCC.
267-
${{ !matrix.compiler == 'gcc' && matrix.ubsan && '-DLLVM_USE_SANITIZER=Undefined' }}
265+
-DLLVM_USE_SANITIZER=${{ matrix.llvm-sanitizer-config }}
268266
cc: ${{ steps.setup-cpp.outputs.cc }}
269267
cxx: ${{ steps.setup-cpp.outputs.cxx }}
270268
generator: Ninja

0 commit comments

Comments
 (0)