Skip to content

Commit b8f8281

Browse files
authored
Only set SAN-related test properties when appropriate SAN is on (#7136)
1 parent ce64457 commit b8f8281

1 file changed

Lines changed: 31 additions & 68 deletions

File tree

cmake/common.cmake

Lines changed: 31 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,31 @@
11
# Copyright (c) Microsoft Corporation. All rights reserved.
22
# Licensed under the Apache 2.0 License.
33

4+
function(add_san_test_properties name)
5+
if(SAN)
6+
set_property(
7+
TEST ${name}
8+
APPEND
9+
PROPERTY ENVIRONMENT "ASAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
10+
)
11+
endif()
12+
13+
if(TSAN)
14+
set_property(
15+
TEST ${name}
16+
APPEND
17+
PROPERTY ENVIRONMENT
18+
"TSAN_OPTIONS=suppressions=${CCF_DIR}/tsan_env_suppressions"
19+
)
20+
21+
set_property(
22+
TEST ${name}
23+
APPEND
24+
PROPERTY ENVIRONMENT "TSAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
25+
)
26+
endif()
27+
endfunction()
28+
429
# Unit test wrapper
530
function(add_unit_test name)
631
add_executable(${name} ${CCF_DIR}/src/enclave/thread_local.cpp ${ARGN})
@@ -19,24 +44,7 @@ function(add_unit_test name)
1944
PROPERTY LABELS unit
2045
)
2146

22-
set_property(
23-
TEST ${name}
24-
APPEND
25-
PROPERTY ENVIRONMENT
26-
"TSAN_OPTIONS=suppressions=${CCF_DIR}/tsan_env_suppressions"
27-
)
28-
29-
set_property(
30-
TEST ${name}
31-
APPEND
32-
PROPERTY ENVIRONMENT "ASAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
33-
)
34-
35-
set_property(
36-
TEST ${name}
37-
APPEND
38-
PROPERTY ENVIRONMENT "TSAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
39-
)
47+
add_san_test_properties(${name})
4048

4149
target_compile_definitions(${name} PRIVATE CCF_LOGGER_NO_DEPRECATE)
4250
endfunction()
@@ -122,24 +130,7 @@ function(add_e2e_test)
122130
)
123131
endif()
124132

125-
set_property(
126-
TEST ${PARSED_ARGS_NAME}
127-
APPEND
128-
PROPERTY ENVIRONMENT
129-
"TSAN_OPTIONS=suppressions=${CCF_DIR}/tsan_env_suppressions"
130-
)
131-
132-
set_property(
133-
TEST ${PARSED_ARGS_NAME}
134-
APPEND
135-
PROPERTY ENVIRONMENT "ASAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
136-
)
137-
138-
set_property(
139-
TEST ${PARSED_ARGS_NAME}
140-
APPEND
141-
PROPERTY ENVIRONMENT "TSAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
142-
)
133+
add_san_test_properties(${PARSED_ARGS_NAME})
143134

144135
set_property(
145136
TEST ${PARSED_ARGS_NAME}
@@ -202,22 +193,8 @@ function(add_piccolo_test)
202193
APPEND
203194
PROPERTY LABELS perf
204195
)
205-
set_property(
206-
TEST ${TEST_NAME}
207-
APPEND
208-
PROPERTY ENVIRONMENT
209-
"TSAN_OPTIONS=suppressions=${CCF_DIR}/tsan_env_suppressions"
210-
)
211-
set_property(
212-
TEST ${TEST_NAME}
213-
APPEND
214-
PROPERTY ENVIRONMENT "ASAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
215-
)
216-
set_property(
217-
TEST ${TEST_NAME}
218-
APPEND
219-
PROPERTY ENVIRONMENT "TSAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
220-
)
196+
197+
add_san_test_properties(${TEST_NAME})
221198
endfunction()
222199

223200
# Picobench wrapper
@@ -251,21 +228,7 @@ function(add_picobench name)
251228

252229
set_property(TEST ${name} PROPERTY LABELS benchmark)
253230

254-
set_property(
255-
TEST ${name}
256-
APPEND
257-
PROPERTY ENVIRONMENT
258-
"TSAN_OPTIONS=suppressions=${CCF_DIR}/tsan_env_suppressions"
259-
)
260-
set_property(
261-
TEST ${name}
262-
APPEND
263-
PROPERTY ENVIRONMENT "ASAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
264-
)
265-
set_property(
266-
TEST ${name}
267-
APPEND
268-
PROPERTY ENVIRONMENT "TSAN_SYMBOLIZER_PATH=${LLVM_SYMBOLIZER}"
269-
)
231+
add_san_test_properties(${name})
232+
270233
target_compile_definitions(${name} PRIVATE CCF_LOGGER_NO_DEPRECATE)
271234
endfunction()

0 commit comments

Comments
 (0)