CMakeLists.txt revision 726fa673ede563a4785b5a44110b36071c4295b1
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)set(SANITIZER_UNITTESTS
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  sanitizer_allocator_test.cc
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  sanitizer_common_test.cc
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  sanitizer_flags_test.cc
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  sanitizer_list_test.cc
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  sanitizer_stackdepot_test.cc
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  sanitizer_test_main.cc
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  )
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if(CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT LLVM_BUILD_32_BITS)
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  list(APPEND SANITIZER_UNITTESTS sanitizer_allocator64_test.cc)
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)endif()
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)include_directories(..)
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)include_directories(../..)
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Unittest target.
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)add_custom_target(SanitizerUnitTests)
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)set_target_properties(SanitizerUnitTests PROPERTIES
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  FOLDER "Sanitizer unittests")
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)add_unittest(SanitizerUnitTests SanitizerUnitTest ${SANITIZER_UNITTESTS})
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Link with sanitizer runtime.
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)target_link_libraries(SanitizerUnitTest RTSanitizerCommon.test)
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Build unit tests with debug info.
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)set_property(TARGET SanitizerUnitTest APPEND_STRING
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PROPERTY COMPILE_FLAGS " -g -Werror")
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Run unittests as a part of lit testsuite.
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)configure_lit_site_cfg(
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  )
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)add_lit_testsuite(check-sanitizer "Running sanitizer library unittests"
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ${CMAKE_CURRENT_BINARY_DIR}
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  DEPENDS SanitizerUnitTests
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  )
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)set_target_properties(check-sanitizer PROPERTIES FOLDER "Sanitizer unittests")
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)