CMakeLists.txt 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. set(KIT CTKCommandLineModules)
  2. set(LIBRARY_NAME ${KIT})
  3. set(_test_srcs)
  4. set(_test_mocs)
  5. if(CTK_LIB_CommandLineModules/Frontend/QtGui)
  6. set(QT_USE_QTUITOOLS 1)
  7. include(${QT_USE_FILE})
  8. if(CTK_LIB_CommandLineModules/Backend/LocalProcess)
  9. set(_test_cpp_files
  10. ctkCmdLineModuleFutureTest.cpp
  11. ctkCmdLineModuleProcessXmlOutputTest.cpp
  12. )
  13. list(APPEND _test_srcs ${_test_cpp_files})
  14. list(APPEND _test_mocs ${_test_cpp_files})
  15. endif()
  16. if(CTK_LIB_CommandLineModules/Backend/FunctionPointer)
  17. list(APPEND _test_srcs ctkCmdLineModuleQtCustomizationTest.cpp)
  18. list(APPEND _test_mocs ctkCmdLineModuleQtCustomizationTest.cpp)
  19. endif()
  20. endif()
  21. create_test_sourcelist(Tests ${KIT}CppTests.cpp ${_test_srcs})
  22. set(TestsToRun ${Tests})
  23. remove(TestsToRun ${KIT}CppTests.cpp)
  24. set(Tests_SRCS ${Tests_SRCS}
  25. ctkCmdLineModuleSignalTester.cpp
  26. )
  27. set(Tests_MOC_SRCS ${Tests_MOC_SRCS}
  28. ctkCmdLineModuleSignalTester.h
  29. )
  30. set(Tests_RESOURCES
  31. ctkCmdLineModuleTestResources.qrc
  32. )
  33. set(_base_src_include_dir ${CMAKE_SOURCE_DIR}/Libs/CommandLineModules)
  34. set(_base_bin_include_dir ${CMAKE_BINARY_DIR}/Libs/CommandLineModules)
  35. include_directories(
  36. ${CMAKE_SOURCE_DIR}/Libs/Testing
  37. ${CMAKE_CURRENT_BINARY_DIR}
  38. ${_base_src_include_dir}/Core
  39. ${_base_bin_include_dir}/Core
  40. )
  41. set(_additional_link_libraries)
  42. if(CTK_LIB_CommandLineModules/Backend/LocalProcess)
  43. include_directories(${_base_src_include_dir}/Backend/LocalProcess
  44. ${_base_bin_include_dir}/Backend/LocalProcess)
  45. list(APPEND _additional_link_libraries CTKCommandLineModulesBackendLocalProcess)
  46. endif()
  47. if(CTK_LIB_CommandLineModules/Backend/FunctionPointer)
  48. include_directories(${_base_src_include_dir}/Backend/FunctionPointer
  49. ${_base_bin_include_dir}/Backend/FunctionPointer)
  50. list(APPEND _additional_link_libraries CTKCommandLineModulesBackendFunctionPointer)
  51. endif()
  52. if(CTK_LIB_CommandLineModules/Frontend/QtGui)
  53. include_directories(${_base_src_include_dir}/Frontend/QtGui
  54. ${_base_bin_include_dir}/Frontend/QtGui)
  55. list(APPEND _additional_link_libraries CTKCommandLineModulesFrontendQtGui)
  56. endif()
  57. set(Tests_MOC_CPP)
  58. QT4_WRAP_CPP(Tests_MOC_CPP ${Tests_MOC_SRCS})
  59. if(_test_mocs)
  60. QT4_GENERATE_MOCS(${_test_mocs})
  61. endif()
  62. set(Tests_UI_CPP)
  63. if(TEST_UI_FORMS)
  64. QT4_WRAP_UI(Tests_UI_CPP ${Tests_UI_FORMS})
  65. endif()
  66. set(Tests_RESOURCES_SRCS)
  67. QT4_ADD_RESOURCES(Tests_RESOURCES_SRCS ${Tests_RESOURCES})
  68. add_executable(${KIT}CppTests ${Tests} ${Tests_SRCS} ${Tests_MOC_CPP} ${Tests_UI_CPP} ${Tests_RESOURCES_SRCS})
  69. target_link_libraries(${KIT}CppTests ${_additional_link_libraries})
  70. add_dependencies(${KIT}CppTests ctkCmdLineTestModules)
  71. if(TARGET CTKCommandLineModulesCoreCppTests)
  72. add_dependencies(${KIT}CppTests CTKCommandLineModulesCoreCppTests)
  73. endif()
  74. if(TARGET CTKCommandLineModulesFrontendQtGuiCppTests)
  75. add_dependencies(${KIT}CppTests CTKCommandLineModulesFrontendQtGuiCppTests)
  76. endif()
  77. #
  78. # Add Tests
  79. #
  80. foreach(_src ${_test_srcs})
  81. get_filename_component(_test_name ${_src} NAME_WE)
  82. SIMPLE_TEST(${_test_name})
  83. endforeach()