-
Notifications
You must be signed in to change notification settings - Fork 184
63 lines (50 loc) · 1.41 KB
/
nightly-sanitizers.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
name: Nightly checks with sanitizers
on:
workflow_dispatch:
# Run this every day at midnight
schedule:
- cron: "0 0 * * *"
pull_request:
jobs:
linux-clang-build:
runs-on: ubuntu-latest
env:
SCCACHE_GHA_ENABLED: "true"
SCCACHE_CACHE_SIZE: "2G"
strategy:
fail-fast: false
matrix:
sanitizer: [address, thread, undefined]
steps:
- uses: actions/checkout@v1
with:
submodules: true
ref: dev
- name: install dependencies
run: |
sudo apt-get update
sudo apt-get install clang llvm libqt5opengl5-dev libqt5svg5-dev libglvnd-dev libeigen3-dev zlib1g-dev libfftw3-dev ninja-build
- name: Run sccache-cache
uses: mozilla-actions/[email protected]
- name: Get CMake
uses: lukka/get-cmake@latest
with:
cmakeVersion: '3.16.3'
- name: Print CMake version
run: cmake --version
- name: configure
run: >
cmake
-B build
-G Ninja
-D CMAKE_BUILD_TYPE=RelWithDebInfo
-D MRTRIX_BUILD_TESTS=ON
-D ECM_ENABLE_SANITIZERS=${{ matrix.sanitizer }}
-D CMAKE_C_COMPILER=clang
-D CMAKE_CXX_COMPILER=clang++
- name: build
run: cmake --build build
- name: binary tests
run: cd build && ctest -R bin --output-on-failure
- name: unit tests
run: cd build && ctest -R unit --output-on-failure