CMakeLists.txt 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  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. # Source files
  15. SET(KIT_SRCS
  16. ctkVTKAbstractMatrixWidget.cpp
  17. ctkVTKAbstractMatrixWidget.h
  18. ctkVTKAbstractMatrixWidget_p.h
  19. ctkVTKDataSetModel.cpp
  20. ctkVTKDataSetModel.h
  21. ctkVTKDataSetArrayComboBox.cpp
  22. ctkVTKDataSetArrayComboBox.h
  23. ctkVTKMatrixWidget.cpp
  24. ctkVTKMatrixWidget.h
  25. ctkVTKRenderView.cpp
  26. ctkVTKRenderView.h
  27. ctkVTKRenderView_p.h
  28. ctkVTKScalarBarWidget.cpp
  29. ctkVTKScalarBarWidget.h
  30. ctkVTKSliceView.cpp
  31. ctkVTKSliceView.h
  32. ctkVTKSliceView_p.h
  33. ctkVTKSurfaceMaterialPropertyWidget.cpp
  34. ctkVTKSurfaceMaterialPropertyWidget.h
  35. ctkVTKTextPropertyWidget.cpp
  36. ctkVTKTextPropertyWidget.h
  37. ctkVTKThumbnailView.cpp
  38. ctkVTKThumbnailView.h
  39. )
  40. # Headers that should run through moc
  41. SET(KIT_MOC_SRCS
  42. ctkVTKAbstractMatrixWidget_p.h
  43. ctkVTKDataSetArrayComboBox.h
  44. ctkVTKDataSetModel.h
  45. ctkVTKMatrixWidget.h
  46. ctkVTKRenderView.h
  47. ctkVTKRenderView_p.h
  48. ctkVTKScalarBarWidget.h
  49. ctkVTKSliceView.h
  50. ctkVTKSliceView_p.h
  51. ctkVTKSurfaceMaterialPropertyWidget.h
  52. ctkVTKTextPropertyWidget.h
  53. ctkVTKThumbnailView.h
  54. )
  55. # UI files
  56. SET(KIT_UI_FORMS
  57. Resources/UI/ctkVTKScalarBarWidget.ui
  58. Resources/UI/ctkVTKTextPropertyWidget.ui
  59. )
  60. # Resources
  61. SET(KIT_resources
  62. )
  63. # Set VTK_LIBRARIES variable
  64. SET(VTK_LIBRARIES
  65. QVTK
  66. )
  67. IF(VTK_VERSION VERSION_GREATER 5.7)
  68. SET(CTK_USE_CHARTS 1)
  69. ENDIF(VTK_VERSION VERSION_GREATER 5.7)
  70. IF (${CTK_USE_CHARTS})
  71. SET(KIT_SRCS
  72. ctkVTKChartView.cpp
  73. ctkVTKChartView.h
  74. ctkVTKScalarsToColorsView.cpp
  75. ctkVTKScalarsToColorsView.h
  76. ctkVTKScalarsToColorsWidget.cpp
  77. ctkVTKScalarsToColorsWidget.h
  78. ${KIT_SRCS})
  79. SET(KIT_MOC_SRCS
  80. ctkVTKChartView.h
  81. ctkVTKScalarsToColorsView.h
  82. ctkVTKScalarsToColorsWidget.h
  83. ${KIT_MOC_SRCS})
  84. SET(KIT_UI_FORMS
  85. Resources/UI/ctkVTKScalarsToColorsWidget.ui
  86. ${KIT_UI_FORMS})
  87. SET(VTK_LIBRARIES
  88. vtkCharts
  89. ${VTK_LIBRARIES})
  90. ADD_DEFINITIONS(-DCTK_USE_CHARTS)
  91. ENDIF(${CTK_USE_CHARTS})
  92. # Target libraries - See CMake/ctkMacroGetTargetLibraries.cmake
  93. # The following macro will read the target libraries from the file 'target_libraries.cmake'
  94. ctkMacroGetTargetLibraries(KIT_target_libraries)
  95. ctkMacroBuildLib(
  96. NAME ${PROJECT_NAME}
  97. EXPORT_DIRECTIVE ${KIT_export_directive}
  98. SRCS ${KIT_SRCS}
  99. MOC_SRCS ${KIT_MOC_SRCS}
  100. UI_FORMS ${KIT_UI_FORMS}
  101. TARGET_LIBRARIES ${KIT_target_libraries}
  102. RESOURCES ${KIT_resources}
  103. LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  104. )
  105. # Plugins
  106. ADD_SUBDIRECTORY(Plugins)
  107. # Testing
  108. IF(BUILD_TESTING)
  109. ADD_SUBDIRECTORY(Testing)
  110. ENDIF(BUILD_TESTING)