CMakeLists.txt 2.08 KB
Newer Older
1 2 3 4
include_directories(
  ${CMAKE_CURRENT_BINARY_DIR}
  ${CMake_BINARY_DIR}/Source
  ${CMake_SOURCE_DIR}/Source
5
  ${CMake_SOURCE_DIR}/Source/CTest
6 7 8
  )

set(CMakeLib_TESTS
wahikihiki's avatar
wahikihiki committed
9
  testArgumentParser.cxx
10
  testCTestBinPacker.cxx
11
  testCTestHardwareAllocator.cxx
12
  testCTestHardwareSpec.cxx
13
  testCTestResourceGroups.cxx
14 15
  testGeneratedFileStream.cxx
  testRST.cxx
wahikihiki's avatar
wahikihiki committed
16
  testRange.cxx
Kyle Edwards's avatar
Kyle Edwards committed
17
  testOptional.cxx
Brad King's avatar
Brad King committed
18
  testString.cxx
19
  testStringAlgorithms.cxx
20 21 22 23 24
  testSystemTools.cxx
  testUTF8.cxx
  testXMLParser.cxx
  testXMLSafe.cxx
  testFindPackageCommand.cxx
25
  testUVProcessChain.cxx
26
  testUVRAII.cxx
27
  testUVStreambuf.cxx
28 29
  )

30 31
add_executable(testUVProcessChainHelper testUVProcessChainHelper.cxx)

32
set(testRST_ARGS ${CMAKE_CURRENT_SOURCE_DIR})
33
set(testUVProcessChain_ARGS $<TARGET_FILE:testUVProcessChainHelper>)
34
set(testUVStreambuf_ARGS $<TARGET_FILE:cmake>)
35
set(testCTestHardwareSpec_ARGS ${CMAKE_CURRENT_SOURCE_DIR})
36

37
if(WIN32)
38
  list(APPEND CMakeLib_TESTS
39
    testVisualStudioSlnParser.cxx
40 41 42 43 44
    )
  configure_file(${CMAKE_CURRENT_SOURCE_DIR}/testVisualStudioSlnParser.h.in
                 ${CMAKE_CURRENT_BINARY_DIR}/testVisualStudioSlnParser.h @ONLY)
endif()

45 46 47 48 49
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/testXMLParser.h.in
               ${CMAKE_CURRENT_BINARY_DIR}/testXMLParser.h @ONLY)

create_test_sourcelist(CMakeLib_TEST_SRCS CMakeLibTests.cxx ${CMakeLib_TESTS})
add_executable(CMakeLibTests ${CMakeLib_TEST_SRCS})
50
target_link_libraries(CMakeLibTests CMakeLib CTestLib)
51

52 53 54
set_property(TARGET CMakeLibTests PROPERTY C_CLANG_TIDY "")
set_property(TARGET CMakeLibTests PROPERTY CXX_CLANG_TIDY "")

55 56 57
add_executable(testEncoding testEncoding.cxx)
target_link_libraries(testEncoding cmsys)

58 59
foreach(testfile ${CMakeLib_TESTS})
  get_filename_component(test "${testfile}" NAME_WE)
60
  add_test(NAME CMakeLib.${test} COMMAND CMakeLibTests ${test} ${${test}_ARGS})
61
endforeach()
62

63 64 65 66
if(TEST_CompileCommandOutput)
  add_executable(runcompilecommands run_compile_commands.cxx)
  target_link_libraries(runcompilecommands CMakeLib)
endif()
67 68

add_subdirectory(PseudoMemcheck)
69 70 71

add_executable(testAffinity testAffinity.cxx)
target_link_libraries(testAffinity CMakeLib)