CMakeLists.txt 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. project(CTKCommandLineModulesCore)
  2. #
  3. # 3rd party dependencies
  4. #
  5. #
  6. # See CTK/CMake/ctkMacroBuildLib.cmake for details
  7. #
  8. set(KIT_export_directive "CTK_CMDLINEMODULECORE_EXPORT")
  9. # Additional directories to include
  10. # Source files
  11. set(KIT_SRCS
  12. ctkCmdLineModuleDescription.cpp
  13. ctkCmdLineModuleDescriptionPrivate.h
  14. ctkCmdLineModuleFuture.h
  15. #ctkCmdLineModuleFuture.cpp
  16. ctkCmdLineModuleInstance.cpp
  17. ctkCmdLineModuleInstanceFactory.cpp
  18. ctkCmdLineModuleManager.cpp
  19. ctkCmdLineModuleParameter.cpp
  20. ctkCmdLineModuleParameterPrivate.cpp
  21. ctkCmdLineModuleParameterGroup.cpp
  22. ctkCmdLineModuleParameterGroupPrivate.h
  23. ctkCmdLineModuleParameterParsers_p.h
  24. #ctkCmdLineModuleProcess.cpp
  25. ctkCmdLineModuleProcess_p.h
  26. ctkCmdLineModuleReference.cpp
  27. ctkCmdLineModuleReferencePrivate.cpp
  28. ctkCmdLineModuleXmlException.cpp
  29. ctkCmdLineModuleXmlMsgHandler_p.h
  30. ctkCmdLineModuleXmlMsgHandler.cpp
  31. ctkCmdLineModuleXmlParser_p.h
  32. ctkCmdLineModuleXmlParser.cpp
  33. ctkCmdLineModuleXmlValidator.cpp
  34. ctkCmdLineModuleXslTransform.cpp
  35. )
  36. # Headers that should run through moc
  37. set(KIT_MOC_SRCS
  38. ctkCmdLineModuleInstance.h
  39. #ctkCmdLineModuleProcess_p.h
  40. )
  41. # UI files
  42. set(KIT_UI_FORMS
  43. )
  44. # Resources
  45. set(KIT_resources
  46. Resources/ctkCmdLineModules.qrc
  47. )
  48. set(QT_USE_QTXMLPATTERNS 1)
  49. include(${QT_USE_FILE})
  50. # Target libraries - See CMake/ctkFunctionGetTargetLibraries.cmake
  51. # The following macro will read the target libraries from the file 'target_libraries.cmake'
  52. ctkFunctionGetTargetLibraries(KIT_target_libraries)
  53. ctkMacroBuildLib(
  54. NAME ${PROJECT_NAME}
  55. EXPORT_DIRECTIVE ${KIT_export_directive}
  56. INCLUDE_DIRECTORIES ${KIT_include_directories}
  57. SRCS ${KIT_SRCS}
  58. MOC_SRCS ${KIT_MOC_SRCS}
  59. UI_FORMS ${KIT_UI_FORMS}
  60. TARGET_LIBRARIES ${KIT_target_libraries}
  61. RESOURCES ${KIT_resources}
  62. LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  63. )
  64. target_link_libraries(${PROJECT_NAME} ${QT_LIBRARIES})
  65. if(CTK_WRAP_PYTHONQT_FULL OR CTK_WRAP_PYTHONQT_LIGHT)
  66. ctkMacroBuildLibWrapper(
  67. TARGET ${PROJECT_NAME}
  68. SRCS ${KIT_SRCS}
  69. WRAPPER_LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  70. )
  71. endif()
  72. # Testing
  73. if(BUILD_TESTING)
  74. add_subdirectory(Testing)
  75. endif()