@@ -17,14 +17,15 @@ jobs:
17
17
pool_tracking : ['ON', 'OFF']
18
18
shared_library : ['OFF']
19
19
os_provider : ['ON']
20
+ sanitizers : ['ON', 'OFF']
20
21
include :
21
22
- os : ' ubuntu-20.04'
22
23
build_type : Release
23
24
compiler : {c: gcc-7, cxx: g++-7}
24
25
shared_library : ' OFF'
25
26
- os : ' ubuntu-22.04'
26
27
build_type : Release
27
- compiler : {c: clang, cxx: clang++}
28
+ compiler : {c: clang, cxx: clang++}
28
29
shared_library : ' OFF'
29
30
- os : ' ubuntu-22.04'
30
31
build_type : Release
@@ -42,17 +43,23 @@ jobs:
42
43
compiler : {c: gcc, cxx: g++}
43
44
shared_library : ' OFF'
44
45
os_provider : ' OFF'
46
+ exclude :
47
+ # TODO: Remove this exclusion. There's a leak reported by sanitizer
48
+ # in jemalloc pool implementation that points to a tracker_value_t
49
+ # not being free'd.
50
+ - pool_tracking : ' ON'
51
+ sanitizers : ' ON'
45
52
runs-on : ${{matrix.os}}
46
53
47
54
steps :
48
55
- name : Checkout
49
56
uses : actions/checkout@v4
50
-
57
+
51
58
- name : Install apt packages
52
59
run : |
53
60
sudo apt-get update
54
61
sudo apt-get install -y clang cmake libnuma-dev libjemalloc-dev libtbb-dev
55
-
62
+
56
63
- name : Install g++-7
57
64
if : matrix.compiler.cxx == 'g++-7'
58
65
run : |
@@ -74,11 +81,13 @@ jobs:
74
81
-DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
75
82
-DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
76
83
-DUMF_BUILD_LIBUMF_POOL_SCALABLE=ON
84
+ -DUSE_ASAN=${{matrix.sanitizers}}
85
+ -DUSE_UBSAN=${{matrix.sanitizers}}
77
86
78
87
- name : Build UMF
79
88
run : |
80
89
cmake --build ${{env.BUILD_DIR}} -j $(nproc)
81
-
90
+
82
91
- name : Run tests
83
92
working-directory : ${{env.BUILD_DIR}}
84
93
run : |
@@ -102,6 +111,7 @@ jobs:
102
111
compiler : [{c: cl, cxx: cl}]
103
112
pool_tracking : ['ON', 'OFF']
104
113
shared_library : ['OFF']
114
+ sanitizers : ['ON', 'OFF']
105
115
include :
106
116
- os : ' windows-2022'
107
117
build_type : Release
@@ -130,6 +140,8 @@ jobs:
130
140
-DUMF_FORMAT_CODE_STYLE=OFF
131
141
-DUMF_DEVELOPER_MODE=ON
132
142
-DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
143
+ -DUSE_ASAN=${{matrix.sanitizers}}
144
+ -DUSE_UBSAN=${{matrix.sanitizers}}
133
145
134
146
- name : Build UMF
135
147
run : cmake --build ${{env.BUILD_DIR}} --config ${{matrix.build_type}} -j $Env:NUMBER_OF_PROCESSORS
@@ -160,7 +172,7 @@ jobs:
160
172
-DUMF_DEVELOPER_MODE=ON
161
173
-DUMF_ENABLE_POOL_TRACKING=ON
162
174
163
- - name : Run code-style check
175
+ - name : Run code-style check
164
176
run : |
165
177
cmake --build ${{env.BUILD_DIR}} --target clang-format-check
166
178
0 commit comments