CMakeLists.txt 2.9 KB

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