]>
Commit | Line | Data |
---|---|---|
20effc67 TL |
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) | |
1e59de90 TL |
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 () |