CMakeLists.txt 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. PROJECT(CTKVisualizationVTKWidgets)
  2. #
  3. # 3rd party dependencies
  4. #
  5. FIND_PACKAGE(VTK)
  6. IF(NOT VTK_FOUND)
  7. MESSAGE(FATAL_ERROR "error: VTK package is required to build ${PROJECT_NAME}")
  8. ENDIF()
  9. INCLUDE(${VTK_USE_FILE})
  10. #
  11. # See CTK/CMake/ctkMacroBuildLib.cmake for details
  12. #
  13. SET(KIT_export_directive "CTK_VISUALIZATION_VTK_WIDGETS_EXPORT")
  14. # Additional directories to include
  15. SET(KIT_include_directories
  16. )
  17. # Source files
  18. SET(KIT_SRCS
  19. ctkVTKAbstractMatrixWidget.cpp
  20. ctkVTKAbstractMatrixWidget.h
  21. ctkVTKAbstractMatrixWidget_p.h
  22. ctkVTKMatrixWidget.cpp
  23. ctkVTKMatrixWidget.h
  24. ctkVTKRenderView.cpp
  25. ctkVTKRenderView.h
  26. ctkVTKRenderView_p.h
  27. ctkVTKScalarBarWidget.cpp
  28. ctkVTKScalarBarWidget.h
  29. ctkVTKSliceView.cpp
  30. ctkVTKSliceView.h
  31. ctkVTKSliceView_p.h
  32. ctkVTKTextPropertyWidget.cpp
  33. ctkVTKTextPropertyWidget.h
  34. )
  35. # Headers that should run through moc
  36. SET(KIT_MOC_SRCS
  37. ctkVTKAbstractMatrixWidget_p.h
  38. ctkVTKMatrixWidget.h
  39. ctkVTKRenderView.h
  40. ctkVTKRenderView_p.h
  41. ctkVTKScalarBarWidget.h
  42. ctkVTKSliceView.h
  43. ctkVTKSliceView_p.h
  44. ctkVTKTextPropertyWidget.h
  45. )
  46. # UI files
  47. SET(KIT_UI_FORMS
  48. Resources/UI/ctkVTKScalarBarWidget.ui
  49. Resources/UI/ctkVTKTextPropertyWidget.ui
  50. )
  51. # Resources
  52. SET(KIT_resources
  53. )
  54. # Set VTK_LIBRARIES variable
  55. SET(VTK_LIBRARIES
  56. QVTK
  57. )
  58. IF(VTK_VERSION VERSION_GREATER 5.7)
  59. SET(CTK_USE_CHARTS 1)
  60. ENDIF(VTK_VERSION VERSION_GREATER 5.7)
  61. IF (${CTK_USE_CHARTS})
  62. SET(KIT_SRCS
  63. ctkVTKChartView.cpp
  64. ctkVTKChartView.h
  65. ctkVTKScalarsToColorsView.cpp
  66. ctkVTKScalarsToColorsView.h
  67. ctkVTKScalarsToColorsWidget.cpp
  68. ctkVTKScalarsToColorsWidget.h
  69. ${KIT_SRCS})
  70. SET(KIT_MOC_SRCS
  71. ctkVTKChartView.h
  72. ctkVTKScalarsToColorsView.h
  73. ctkVTKScalarsToColorsWidget.h
  74. ${KIT_MOC_SRCS})
  75. SET(KIT_UI_FORMS
  76. Resources/UI/ctkVTKScalarsToColorsWidget.ui
  77. ${KIT_UI_FORMS})
  78. SET(VTK_LIBRARIES
  79. vtkCharts
  80. ${VTK_LIBRARIES})
  81. ADD_DEFINITIONS(-DCTK_USE_CHARTS)
  82. ENDIF(${CTK_USE_CHARTS})
  83. # Target libraries - See CMake/ctkMacroGetTargetLibraries.cmake
  84. # The following macro will read the target libraries from the file 'target_libraries.cmake'
  85. ctkMacroGetTargetLibraries(KIT_target_libraries)
  86. ctkMacroBuildLib(
  87. NAME ${PROJECT_NAME}
  88. EXPORT_DIRECTIVE ${KIT_export_directive}
  89. INCLUDE_DIRECTORIES ${KIT_include_directories}
  90. SRCS ${KIT_SRCS}
  91. MOC_SRCS ${KIT_MOC_SRCS}
  92. UI_FORMS ${KIT_UI_FORMS}
  93. TARGET_LIBRARIES ${KIT_target_libraries}
  94. RESOURCES ${KIT_resources}
  95. LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  96. )
  97. # Plugins
  98. ADD_SUBDIRECTORY(Plugins)
  99. # Testing
  100. IF(BUILD_TESTING)
  101. ADD_SUBDIRECTORY(Testing)
  102. ENDIF(BUILD_TESTING)