CMakeLists.txt 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  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. ctkDependencyGraph.cpp
  31. ctkDependencyGraph.h
  32. ctkLogger.cpp
  33. ctkLogger.h
  34. ctkHistogram.cpp
  35. ctkHistogram.h
  36. ctkModelTester.cpp
  37. ctkModelTester.h
  38. ctkPimpl.h
  39. ctkSingleton.h
  40. ctkTransferFunction.cpp
  41. ctkTransferFunction.h
  42. ctkUtils.cpp
  43. ctkUtils.h
  44. )
  45. IF(CTK_HAVE_BFD)
  46. LIST(APPEND KIT_SRCS
  47. ctkBinaryFileDescriptor.cpp
  48. ctkBinaryFileDescriptor.h
  49. )
  50. ENDIF()
  51. # Headers that should run through moc
  52. SET(KIT_MOC_SRCS
  53. ctkLogger.h
  54. ctkHistogram.h
  55. ctkModelTester.h
  56. ctkTransferFunction.h
  57. )
  58. # UI files
  59. SET(KIT_UI_FORMS
  60. )
  61. # Resources
  62. SET(KIT_resources
  63. )
  64. # Target libraries - See CMake/ctkMacroGetTargetLibraries.cmake
  65. # The following macro will read the target libraries from the file 'target_libraries.cmake'
  66. ctkMacroGetTargetLibraries(KIT_target_libraries)
  67. ctkMacroBuildLib(
  68. NAME ${PROJECT_NAME}
  69. EXPORT_DIRECTIVE ${KIT_export_directive}
  70. INCLUDE_DIRECTORIES ${KIT_include_directories}
  71. SRCS ${KIT_SRCS}
  72. MOC_SRCS ${KIT_MOC_SRCS}
  73. UI_FORMS ${KIT_UI_FORMS}
  74. TARGET_LIBRARIES ${KIT_target_libraries}
  75. RESOURCES ${KIT_resources}
  76. LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  77. )
  78. # Testing
  79. IF(BUILD_TESTING)
  80. ADD_SUBDIRECTORY(Testing)
  81. ENDIF(BUILD_TESTING)