CMakeLists.txt 2.7 KB

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