CMakeLists.txt 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. PROJECT(CTKCore)
  2. # CMake modules
  3. SET(CMAKE_MODULE_PATH ${CTKCore_SOURCE_DIR}/CMake ${CMAKE_MODULE_PATH})
  4. # CMake Macros
  5. INCLUDE(CMake/ctkMacroBFDCheck.cmake)
  6. FIND_PACKAGE(Log4Qt)
  7. if (NOT Log4Qt_FOUND)
  8. MESSAGE(FATAL_ERROR "error: Log4Qt package is required to build ${PROJECT_NAME}" )
  9. endif()
  10. #
  11. # See CTK/CMake/ctkMacroBuildLib.cmake for details
  12. #
  13. SET(KIT_export_directive "CTK_CORE_EXPORT")
  14. # Additional directories to include
  15. SET(KIT_include_directories
  16. ${Log4Qt_INCLUDE_DIR}
  17. )
  18. # Source files
  19. SET(KIT_SRCS
  20. ctkAbstractFactory.h
  21. ctkAbstractFactory.tpp
  22. ctkAbstractObjectFactory.h
  23. ctkAbstractObjectFactory.tpp
  24. ctkAbstractPluginFactory.h
  25. ctkAbstractPluginFactory.tpp
  26. ctkAbstractQObjectFactory.h
  27. ctkAbstractQObjectFactory.tpp
  28. ctkAbstractLibraryFactory.h
  29. ctkAbstractLibraryFactory.tpp
  30. ctkCommandLineParser.cpp
  31. ctkCommandLineParser.h
  32. ctkDependencyGraph.cpp
  33. ctkDependencyGraph.h
  34. ctkLogger.cpp
  35. ctkLogger.h
  36. ctkHistogram.cpp
  37. ctkHistogram.h
  38. ctkModelTester.cpp
  39. ctkModelTester.h
  40. ctkPimpl.h
  41. ctkSingleton.h
  42. ctkTransferFunction.cpp
  43. ctkTransferFunction.h
  44. ctkTransferFunctionRepresentation.cpp
  45. ctkTransferFunctionRepresentation.h
  46. ctkUtils.cpp
  47. ctkUtils.h
  48. ctkWorkflow.h
  49. ctkWorkflow.cpp
  50. ctkWorkflowStep.h
  51. ctkWorkflowStep.cpp
  52. ctkWorkflowStep_p.h
  53. ctkWorkflowTransitions.h
  54. )
  55. IF(CTK_HAVE_BFD)
  56. LIST(APPEND KIT_SRCS
  57. ctkBinaryFileDescriptor.cpp
  58. ctkBinaryFileDescriptor.h
  59. )
  60. ENDIF()
  61. # Headers that should run through moc
  62. SET(KIT_MOC_SRCS
  63. ctkLogger.h
  64. ctkHistogram.h
  65. ctkModelTester.h
  66. ctkTransferFunction.h
  67. ctkTransferFunctionRepresentation.h
  68. ctkWorkflow.h
  69. ctkWorkflowStep_p.h
  70. ctkWorkflowTransitions.h
  71. )
  72. # UI files
  73. SET(KIT_UI_FORMS
  74. )
  75. # Resources
  76. SET(KIT_resources
  77. )
  78. # Target libraries - See CMake/ctkMacroGetTargetLibraries.cmake
  79. # The following macro will read the target libraries from the file 'target_libraries.cmake'
  80. ctkMacroGetTargetLibraries(KIT_target_libraries)
  81. ctkMacroBuildLib(
  82. NAME ${PROJECT_NAME}
  83. EXPORT_DIRECTIVE ${KIT_export_directive}
  84. INCLUDE_DIRECTORIES ${KIT_include_directories}
  85. SRCS ${KIT_SRCS}
  86. MOC_SRCS ${KIT_MOC_SRCS}
  87. UI_FORMS ${KIT_UI_FORMS}
  88. TARGET_LIBRARIES ${KIT_target_libraries}
  89. RESOURCES ${KIT_resources}
  90. LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  91. )
  92. # Testing
  93. IF(BUILD_TESTING)
  94. ADD_SUBDIRECTORY(Testing)
  95. ENDIF(BUILD_TESTING)