CMakeLists.txt 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. project(CTKCommandLineModules)
  2. #
  3. # 3rd party dependencies
  4. #
  5. #
  6. # See CTK/CMake/ctkMacroBuildLib.cmake for details
  7. #
  8. set(KIT_export_directive "CTK_CMDLINEMODULE_EXPORT")
  9. # Additional directories to include
  10. # Source files
  11. set(KIT_SRCS
  12. ctkModuleDescription.h
  13. ctkModuleDescription.cpp
  14. ctkModuleDescriptionParser.cpp
  15. ctkModuleDescriptionValidator.h
  16. ctkModuleDescriptionValidator.cpp
  17. ctkModuleManager.h
  18. ctkModuleManager.cpp
  19. ctkModuleObjectHierarchyReader.h
  20. ctkModuleObjectHierarchyReader.cpp
  21. ctkModuleParameter.h
  22. ctkModuleParameter.cpp
  23. ctkModuleParameterGroup.h
  24. ctkModuleParameterGroup.cpp
  25. ctkModuleParameterParsers_p.h
  26. ctkModuleProcessException.h
  27. ctkModuleProcessException.cpp
  28. ctkModuleProcessFuture.h
  29. ctkModuleProcessFuture.cpp
  30. ctkModuleProcessRunner_p.h
  31. ctkModuleProcessRunner.cpp
  32. ctkModuleReference.h
  33. ctkModuleReference.cpp
  34. ctkModuleReferencePrivate.h
  35. ctkModuleReferencePrivate.cpp
  36. )
  37. # Headers that should run through moc
  38. set(KIT_MOC_SRCS
  39. ctkModuleProcessRunner_p.h
  40. ctkModuleReferencePrivate.h
  41. )
  42. # UI files
  43. set(KIT_UI_FORMS
  44. )
  45. # Resources
  46. set(KIT_resources
  47. Resources/ctkModuleDescription.qrc
  48. )
  49. set(QT_USE_QTXMLPATTERNS 1)
  50. include(${QT_USE_FILE})
  51. # Target libraries - See CMake/ctkFunctionGetTargetLibraries.cmake
  52. # The following macro will read the target libraries from the file 'target_libraries.cmake'
  53. ctkFunctionGetTargetLibraries(KIT_target_libraries)
  54. ctkMacroBuildLib(
  55. NAME ${PROJECT_NAME}
  56. EXPORT_DIRECTIVE ${KIT_export_directive}
  57. INCLUDE_DIRECTORIES ${KIT_include_directories}
  58. SRCS ${KIT_SRCS}
  59. MOC_SRCS ${KIT_MOC_SRCS}
  60. UI_FORMS ${KIT_UI_FORMS}
  61. TARGET_LIBRARIES ${KIT_target_libraries}
  62. RESOURCES ${KIT_resources}
  63. LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  64. )
  65. target_link_libraries(${PROJECT_NAME} ${QT_LIBRARIES})
  66. if(CTK_WRAP_PYTHONQT_FULL OR CTK_WRAP_PYTHONQT_LIGHT)
  67. ctkMacroBuildLibWrapper(
  68. TARGET ${PROJECT_NAME}
  69. SRCS ${KIT_SRCS}
  70. WRAPPER_LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  71. )
  72. endif()
  73. # Testing
  74. if(BUILD_TESTING)
  75. add_subdirectory(Testing)
  76. endif()