]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/stl_interfaces/test/CMakeLists.txt
5e2185c445c9a80d3d6e7c84760f93a715fec411
[ceph.git] / ceph / src / boost / libs / stl_interfaces / test / CMakeLists.txt
1 # Copyright (C) 2019 T. Zachary Laine
2 #
3 # Distributed under the Boost Software License, Version 1.0. (See
4 # accompanying file LICENSE_1_0.txt or copy at
5 # http://www.boost.org/LICENSE_1_0.txt)
6 include_directories(${CMAKE_HOME_DIRECTORY})
7
8 include(CTest)
9
10 enable_testing()
11
12 add_custom_target(stl_interfaces_check COMMAND ${CMAKE_CTEST_COMMAND} -j4 -C ${CMAKE_CFG_INTDIR})
13 if (NOT TARGET check)
14 add_custom_target(check DEPENDS stl_interfaces_check)
15 else()
16 add_dependencies(check stl_interfaces_check)
17 endif()
18
19 set(warnings_flag)
20 if (NOT MSVC)
21 set(warnings_flag -Wall)
22 endif ()
23
24 macro(add_test_executable name)
25 add_executable(${name} ${name}.cpp)
26 target_compile_options(${name} PRIVATE ${warnings_flag})
27 target_link_libraries(${name} stl_interfaces)
28 target_compile_definitions(${name} PRIVATE BOOST_NO_AUTO_PTR)
29 set_property(TARGET ${name} PROPERTY CXX_STANDARD ${CXX_STD})
30 add_test(${name} ${CMAKE_CURRENT_BINARY_DIR}/${name})
31 if (clang_on_linux)
32 target_link_libraries(${name} c++)
33 endif ()
34 endmacro()
35
36 add_test_executable(input)
37 add_test_executable(output)
38 add_test_executable(forward)
39 add_test_executable(bidirectional)
40 add_test_executable(random_access)
41 add_test_executable(reverse_iter)
42 add_test_executable(detail)
43 add_test_executable(static_vec)
44 add_test_executable(static_vec_noncopyable)
45 add_test_executable(array)
46
47 add_executable(
48 compile_tests
49 compile_tests_main.cpp
50 compile_seq_cont_rvalue_constrained_pop_back.cpp
51 )
52 target_link_libraries(compile_tests stl_interfaces)
53 if (clang_on_linux)
54 target_link_libraries(compile_tests c++)
55 endif ()