Skip to content

Commit

Permalink
BUG: More changes to allow build with VTK-8.90
Browse files Browse the repository at this point in the history
  • Loading branch information
Andras Lasso committed Nov 10, 2019
1 parent fa28f3c commit 49e4038
Show file tree
Hide file tree
Showing 4 changed files with 78 additions and 30 deletions.
68 changes: 41 additions & 27 deletions CMakeLists.txt
Expand Up @@ -500,42 +500,47 @@ message(STATUS " Slicer_VTK_VERSION_MAJOR is ${Slicer_VTK_VERSION_MAJOR}")
#-----------------------------------------------------------------------------
# Slicer_VTK_COMPONENTS
#-----------------------------------------------------------------------------
if (VTK_VERSION VERSION_LESS "8.90")
set(VTK_COMPONENT_PREFIX "vtk")
else()
set(VTK_COMPONENT_PREFIX "")
endif()
set(Slicer_VTK_COMPONENTS
vtkFiltersExtraction
vtkFiltersFlowPaths
vtkFiltersGeometry
vtkGUISupportQtOpenGL
vtkGUISupportQtSQL
vtkIOExport
vtkIOImage
vtkIOLegacy
vtkIOPLY
vtkIOXML
vtkImagingMath
vtkImagingMorphological
vtkImagingStatistics
vtkImagingStencil
vtkInteractionImage
vtkRenderingContext${Slicer_VTK_RENDERING_BACKEND}
vtkRenderingQt
vtkRenderingVolume${Slicer_VTK_RENDERING_BACKEND}
vtkTestingRendering
vtkViewsQt
vtkzlib
${VTK_COMPONENT_PREFIX}FiltersExtraction
${VTK_COMPONENT_PREFIX}FiltersFlowPaths
${VTK_COMPONENT_PREFIX}FiltersGeometry
${VTK_COMPONENT_PREFIX}GUISupportQtOpenGL
${VTK_COMPONENT_PREFIX}GUISupportQtSQL
${VTK_COMPONENT_PREFIX}IOExport
${VTK_COMPONENT_PREFIX}IOImage
${VTK_COMPONENT_PREFIX}IOLegacy
${VTK_COMPONENT_PREFIX}IOPLY
${VTK_COMPONENT_PREFIX}IOXML
${VTK_COMPONENT_PREFIX}ImagingMath
${VTK_COMPONENT_PREFIX}ImagingMorphological
${VTK_COMPONENT_PREFIX}ImagingStatistics
${VTK_COMPONENT_PREFIX}ImagingStencil
${VTK_COMPONENT_PREFIX}InteractionImage
${VTK_COMPONENT_PREFIX}RenderingContext${Slicer_VTK_RENDERING_BACKEND}
${VTK_COMPONENT_PREFIX}RenderingQt
${VTK_COMPONENT_PREFIX}RenderingVolume${Slicer_VTK_RENDERING_BACKEND}
${VTK_COMPONENT_PREFIX}TestingRendering
${VTK_COMPONENT_PREFIX}ViewsQt
${VTK_COMPONENT_PREFIX}zlib
)
if(Slicer_USE_PYTHONQT)
list(APPEND Slicer_VTK_COMPONENTS
vtkWrappingPythonCore
${VTK_COMPONENT_PREFIX}WrappingPythonCore
)
endif()
if(UNIX AND NOT APPLE)
find_package(FontConfig QUIET)
if(FONTCONFIG_FOUND)
list(APPEND Slicer_VTK_COMPONENTS
vtkRenderingFreeTypeFontConfig
${VTK_COMPONENT_PREFIX}RenderingFreeTypeFontConfig
)
if(TARGET vtkRenderingFreeTypeOpenGL)
list(APPEND VTK_LIBRARIES vtkRenderingFreeTypeOpenGL)
list(APPEND VTK_LIBRARIES ${VTK_COMPONENT_PREFIX}RenderingFreeTypeOpenGL)
endif()
endif()
endif()
Expand Down Expand Up @@ -778,13 +783,22 @@ endif()
#-----------------------------------------------------------------------------
# VTK
#-----------------------------------------------------------------------------
find_package(VTK ${Slicer_VTK_VERSION_MAJOR} COMPONENTS ${Slicer_VTK_COMPONENTS} REQUIRED NO_MODULE)
if(NOT TARGET vtkGUISupportQt)
find_package(VTK REQUIRED)
if (VTK_VERSION VERSION_LESS "8.90")
find_package(VTK ${Slicer_VTK_VERSION_MAJOR} COMPONENTS ${Slicer_VTK_COMPONENTS} REQUIRED NO_MODULE)
include(${VTK_USE_FILE})
set(VTK_GUI_SUPPORT_QT_TARGET_NAME "vtkGUISupportQt")
else()
set(VTK_LIBRARIES "")
find_package(VTK ${Slicer_VTK_VERSION_MAJOR} COMPONENTS ${Slicer_VTK_COMPONENTS} REQUIRED)
set(VTK_GUI_SUPPORT_QT_TARGET_NAME "VTK::GUISupportQt")
endif ()

if(NOT TARGET ${VTK_GUI_SUPPORT_QT_TARGET_NAME})
message(FATAL_ERROR "error: VTK was not configured to use QT, you probably need "
"to recompile it with VTK_USE_GUISUPPORT ON, VTK_Group_Qt ON, "
"Note that Qt >= ${Slicer_REQUIRED_QT_VERSION} is *required*")
endif()
include(${VTK_USE_FILE})
set(VTK_RENDERING_BACKEND "${Slicer_VTK_RENDERING_BACKEND}")

#-----------------------------------------------------------------------------
Expand Down
10 changes: 8 additions & 2 deletions SuperBuild/External_CTK.cmake
Expand Up @@ -34,6 +34,11 @@ if(NOT DEFINED CTK_DIR AND NOT Slicer_USE_SYSTEM_${proj})
-DPYTHON_LIBRARY:FILEPATH=${PYTHON_LIBRARY}
-DPYTHON_INCLUDE_DIR:PATH=${PYTHON_INCLUDE_DIR}
-DPYTHON_EXECUTABLE:FILEPATH=${PYTHON_EXECUTABLE}
-DVTK_PYTHON_VERSION:STRING=3
-DPython3_ROOT_DIR:PATH=${python_DIR}
-DPython3_INCLUDE_DIR:PATH=${PYTHON_INCLUDE_DIR}
-DPython3_LIBRARY_DEBUG:FILEPATH=${PYTHON_LIBRARY}
-DPython3_LIBRARY_RELEASE:FILEPATH=${PYTHON_LIBRARY}
)
endif()

Expand All @@ -51,13 +56,14 @@ if(NOT DEFINED CTK_DIR AND NOT Slicer_USE_SYSTEM_${proj})

ExternalProject_SetIfNotDefined(
Slicer_${proj}_GIT_REPOSITORY
"${EP_GIT_PROTOCOL}://github.com/commontk/CTK.git"
"${EP_GIT_PROTOCOL}://github.com/lassoan/CTK.git"
QUIET
)

ExternalProject_SetIfNotDefined(
Slicer_${proj}_GIT_TAG
"fb8353d51b393f963e57dee87709ee29816cd716"
#"fb8353d51b393f963e57dee87709ee29816cd716"
build-with-vtk89
QUIET
)

Expand Down
9 changes: 9 additions & 0 deletions SuperBuild/External_ITK.cmake
Expand Up @@ -98,6 +98,12 @@ if(NOT DEFINED ITK_DIR AND NOT Slicer_USE_SYSTEM_${proj})
endforeach()
endif()

#MESSAGE(WARNING "EXTERNAL ITK VARIABLES:")
#get_cmake_property(_variableNames VARIABLES)
#list (SORT _variableNames)
#foreach (_variableName ${_variableNames})
# message(STATUS "${_variableName}=${${_variableName}}")
#endforeach()

ExternalProject_Add(${proj}
${${proj}_EP_ARGS}
Expand Down Expand Up @@ -147,6 +153,9 @@ if(NOT DEFINED ITK_DIR AND NOT Slicer_USE_SYSTEM_${proj})
${${proj}_DEPENDENCIES}
)


# MESSAGE(WARNING "ITK's EXTERNAL_PROJECT_OPTIONAL_CMAKE_CACHE_ARGS: ${EXTERNAL_PROJECT_OPTIONAL_CMAKE_CACHE_ARGS}")

ExternalProject_GenerateProjectDescription_Step(${proj})

set(ITK_DIR ${CMAKE_BINARY_DIR}/${proj}-build)
Expand Down
21 changes: 20 additions & 1 deletion SuperBuild/External_VTK.cmake
Expand Up @@ -39,10 +39,20 @@ if((NOT DEFINED VTK_DIR OR NOT DEFINED VTK_SOURCE_DIR) AND NOT Slicer_USE_SYSTEM
set(VTK_WRAP_PYTHON ON)
endif()

#MESSAGE(WARNING "EXTERNAL VTK VARIABLES:")
#get_cmake_property(_variableNames VARIABLES)
#list (SORT _variableNames)
#foreach (_variableName ${_variableNames})
# message(STATUS "${_variableName}=${${_variableName}}")
#endforeach()

if(Slicer_USE_PYTHONQT)
list(APPEND EXTERNAL_PROJECT_OPTIONAL_CMAKE_CACHE_ARGS
-DVTK_PYTHON_VERSION:STRING=3
-DPYTHON_EXECUTABLE:PATH=${PYTHON_EXECUTABLE}
-DPYTHON_INCLUDE_DIR:PATH=${PYTHON_INCLUDE_DIR}
-DPYTHON_LIBRARY:FILEPATH=${PYTHON_LIBRARY}
-DVTK_PYTHON_VERSION:STRING=3
-DPython3_ROOT_DIR:PATH=${python_DIR}
-DPython3_INCLUDE_DIR:PATH=${PYTHON_INCLUDE_DIR}
-DPython3_LIBRARY_DEBUG:FILEPATH=${PYTHON_LIBRARY}
-DPython3_LIBRARY_RELEASE:FILEPATH=${PYTHON_LIBRARY}
Expand All @@ -56,6 +66,14 @@ if((NOT DEFINED VTK_DIR OR NOT DEFINED VTK_SOURCE_DIR) AND NOT Slicer_USE_SYSTEM
-DVTK_MODULE_ENABLE_VTK_SplineDrivenImageFilter:STRING=YES
)

list(APPEND EXTERNAL_PROJECT_OPTIONAL_CMAKE_CACHE_ARGS
-DVTK_MODULE_ENABLE_VTK_ChartsCore:STRING=YES
-DVTK_MODULE_ENABLE_VTK_ViewsContext2D:STRING=YES
-DVTK_MODULE_ENABLE_VTK_RenderingContext2D:STRING=YES
-DVTK_MODULE_ENABLE_VTK_RenderingContextOpenGL2:STRING=YES

)

list(APPEND EXTERNAL_PROJECT_OPTIONAL_CMAKE_CACHE_ARGS
-DVTK_MODULE_ENABLE_VTK_GUISupportQt:STRING=YES
-DVTK_GROUP_ENABLE_Qt:STRING=YES
Expand All @@ -73,6 +91,7 @@ if((NOT DEFINED VTK_DIR OR NOT DEFINED VTK_SOURCE_DIR) AND NOT Slicer_USE_SYSTEM
endif()
if(Slicer_USE_TBB)
list(APPEND EXTERNAL_PROJECT_OPTIONAL_CMAKE_CACHE_ARGS
-DTBB_ROOT:PATH=${TBB_INSTALL_DIR}
-DTBB_INCLUDE_DIR:PATH=${TBB_INCLUDE_DIR}
-DTBB_LIBRARY_DEBUG:FILEPATH=${TBB_LIBRARY_DEBUG}
-DTBB_LIBRARY_RELEASE:FILEPATH=${TBB_LIBRARY_RELEASE}
Expand Down

0 comments on commit 49e4038

Please sign in to comment.