if(VTK_BUILD_TESTING)if(NOTVTK_DATA_STORE)# These checks must be synchronized with vtkExternalData.cmakeif(NOTEXISTS"${VTK_SOURCE_DIR}/.ExternalData/README.rst"ANDNOTIS_DIRECTORY"${CMAKE_SOURCE_DIR}/../VTKExternalData"ANDNOTIS_DIRECTORY"${CMAKE_SOURCE_DIR}/../ExternalData"ANDNOTDEFINED"ENV{VTKExternalData_OBJECT_STORES}"ANDNOTDEFINED"ENV{ExternalData_OBJECT_STORES}")# The file .ExternalData/README.rst exists in the VTK git repository# but is not included in the VTK-x.y.z.tar.gz release tarball, only# in the VTKData-x.y.z.tar.gz tarball.message(FATAL_ERROR"VTK_BUILD_TESTING is ${VTK_BUILD_TESTING}, but ""there is no ExternalData directory! Please download VTKData, ""which contains an .ExternalData directory that must go into ""your VTK source directory (including the leading dot).")endif()endif()include(vtkExternalData)include(CTest)set_property(CACHEBUILD_TESTINGPROPERTYTYPEINTERNAL)set(BUILD_TESTINGON)else()set(BUILD_TESTINGOFF)endif()
VTK_FORBID_DOWNLOADS
CMake
12345
if(VTK_FORBID_DOWNLOADSANDVTK_BUILD_TESTING)message(STATUS"Module testing will fail due to `VTK_FORBID_DOWNLOADS` without a local ""copy of the testing data.")endif()
vtkExternalData.cmake
CMake
1 2 3 4 5 6 7 8 910111213141516171819202122232425
include(ExternalData)if(NOTVTK_DATA_STORE)# Select a default from the following.set(vtk_data_store_default"")if(EXISTS"${VTK_SOURCE_DIR}/.ExternalData/config/store")# Configuration left by developer setup script.file(STRINGS"${VTK_SOURCE_DIR}/.ExternalData/config/store"vtk_data_store_defaultLIMIT_COUNT1LIMIT_INPUT1024)elseif(IS_DIRECTORY"${CMAKE_SOURCE_DIR}/../VTKExternalData")# Adjacent directory created by user.get_filename_component(vtk_data_store_default"${CMAKE_SOURCE_DIR}/../VTKExternalData"ABSOLUTE)elseif(IS_DIRECTORY"${CMAKE_SOURCE_DIR}/../ExternalData")# Generic adjacent directory created by user.get_filename_component(vtk_data_store_default"${CMAKE_SOURCE_DIR}/../ExternalData"ABSOLUTE)elseif(DEFINED"ENV{VTKExternalData_OBJECT_STORES}")# The VTKExternalData environment variable.file(TO_CMAKE_PATH"$ENV{VTKExternalData_OBJECT_STORES}"vtk_data_store_default)elseif(DEFINED"ENV{ExternalData_OBJECT_STORES}")# Generic ExternalData environment variable.file(TO_CMAKE_PATH"$ENV{ExternalData_OBJECT_STORES}"vtk_data_store_default)endif()endif()
message(STATUS"SplineDrivenImageSlicer: Building as a Remote VTK module")set(srcvtkSplineDrivenImageSlicervtkFrenetSerretFrame)set(includevtkSplineDrivenImageSlicer.hvtkFrenetSerretFrame.h)vtk_module_add_module(VTK::SplineDrivenImageSlicerCLASSES${src}HEADERS${include})
NAME
VTK::SplineDrivenImageSlicer
LIBRARY_NAME
vtkSplineDrivenImageSlicer
LICENSE_FILES
Copyright.txt
GROUPS
StandAlone
SPDX_LICENSE_IDENTIFIER
BSD-3-Clause
SPDX_COPYRIGHT_TEXT
Copyright (c) 2012-2023 David Gobbi
DEPENDS
VTK::CommonCore
VTK::FiltersCore
VTK::FiltersSources
VTK::ImagingCore
TEST_DEPENDS
VTK::TestingCore
VTK::ImagingSources
SplineDrivenImageSlicer CMakeLists.txt
CMake
1 2 3 4 5 6 7 8 9101112131415161718192021
message(STATUS"SplineDrivenImageSlicer: Building as a Remote VTK module")set(Module_SRCSvtkFrenetSerretFrame.cxxvtkSplineDrivenImageSlicer.cxx)## vtk_module_library(SplineDrivenImageSlicer ${Module_SRCS})set(class_srcvtkFrenetSerretFramevtkSplineDrivenImageSlicer)set(Module_includevtkFrenetSerretFrame.hvtkSplineDrivenImageSlicer.h)vtk_module_add_module(VTK::SplineDrivenImageSlicerCLASSES${class_src}HEADERS${Module_include})
cmake_minimum_required(VERSION3.28)macro(vtk_module_find_package)# Note: when adding arguments here, add them to the `unset` block at the end# of the function.cmake_parse_arguments(_vtk_find_package"PRIVATE;CONFIG_MODE""PACKAGE;VERSION;FORWARD_VERSION_REQ;VERSION_VAR""COMPONENTS;OPTIONAL_COMPONENTS"${ARGN})message(STATUS"ARGN=${ARGN}")set(my_pack_name_vtk_find_package)message(STATUS"my_pack_name=${my_pack_name}")message(STATUS"${my_pack_name}_PRIVATE=${${my_pack_name}_PRIVATE}")message(STATUS"${my_pack_name}_CONFIG_MODE=${${my_pack_name}_CONFIG_MODE}")message(STATUS"${my_pack_name}_PACKAGE=${${my_pack_name}_PACKAGE}")message(STATUS"${my_pack_name}_VERSION=${${my_pack_name}_VERSION}")message(STATUS"${my_pack_name}_FORWARD_VERSION_REQ=${${my_pack_name}_FORWARD_VERSION_REQ}")message(STATUS"${my_pack_name}_VERSION_VAR=${${my_pack_name}_VERSION_VAR}")message(STATUS"${my_pack_name}_COMPONENTS=${${my_pack_name}_COMPONENTS}")message(STATUS"${my_pack_name}_OPTIONAL_COMPONENTS=${${my_pack_name}_OPTIONAL_COMPONENTS}")message(STATUS"${my_pack_name}_UNPARSED_ARGUMENTS=${${my_pack_name}_UNPARSED_ARGUMENTS}")message(STATUS"${my_pack_name}_KEYWORDS_MISSING_VALUES=${${my_pack_name}_KEYWORDS_MISSING_VALUES}")endmacro()project(testprj)vtk_module_find_package(PACKAGEFFMPEGVERSION2.3.3FORWARD_VERSION_REQMINORCOMPONENTSavformatavcodecavutilswscaleOPTIONAL_COMPONENTSswresample)
if(_vtk_module_find_package_enabled)set(_vtk_module_find_package_required)if(_vtk_module_find_package_is_required)set(_vtk_module_find_package_requiredREQUIRED)endif()find_package(FFMPEG7.0-full_build-www${_vtk_module_find_package_quiet}${_vtk_module_find_package_required}COMPONENTSavformat;avcodec;avutil;swscaleOPTIONAL_COMPONENTSswresample)if(NOTFFMPEG_FOUNDAND_vtk_module_find_package_fail_if_not_found)if(NOT${CMAKE_FIND_PACKAGE_NAME}_FIND_QUIETLY)message(STATUS"Could not find the ${CMAKE_FIND_PACKAGE_NAME} package due to a ""missing dependency: FFMPEG")endif()set("${CMAKE_FIND_PACKAGE_NAME}_IOFFMPEG_FOUND"0)list(APPEND"${CMAKE_FIND_PACKAGE_NAME}_IOFFMPEG_NOT_FOUND_MESSAGE""Failed to find the FFMPEG package.")endif()endif()
find_package(FFMPEG7.0-full_build-www${_vtk_module_find_package_quiet}${_vtk_module_find_package_required}COMPONENTSavformat;avcodec;avutil;swscaleOPTIONAL_COMPONENTSswresample)if(NOTFFMPEG_FOUNDAND_vtk_module_find_package_fail_if_not_found)if(NOT${CMAKE_FIND_PACKAGE_NAME}_FIND_QUIETLY)message(STATUS"Could not find the ${CMAKE_FIND_PACKAGE_NAME} package due to a ""missing dependency: FFMPEG")endif()set("${CMAKE_FIND_PACKAGE_NAME}_IOFFMPEG_FOUND"0)list(APPEND"${CMAKE_FIND_PACKAGE_NAME}_IOFFMPEG_NOT_FOUND_MESSAGE""Failed to find the FFMPEG package.")endif()endif()
foreach(_vtk_export_moduleINLISTS_vtk_export_MODULES)get_property(_vtk_export_target_nameGLOBALPROPERTY"_vtk_module_${_vtk_export_module}_target_name")# Use the export name of the target if it has one set.get_property(_vtk_export_target_has_export_nameTARGET"${_vtk_export_target_name}"PROPERTYEXPORT_NAMESET)if(_vtk_export_target_has_export_name)get_property(_vtk_export_target_nameTARGET"${_vtk_export_target_name}"PROPERTYEXPORT_NAME)endif()set(_vtk_export_base"_vtk_module_find_package_${_vtk_export_module}")get_property(_vtk_export_packagesGLOBALPROPERTY"${_vtk_export_base}")if(NOT_vtk_export_packages)continue()endif()
message( STATUS "_vtk_export_packages=${_vtk_export_packages}" )
message( STATUS "_vtk_export_base_package=${_vtk_export_base_package}" )
message( STATUS "\${_vtk_export_base_package}_version=${_vtk_export_base_package}_version" )
message( STATUS "_vtk_export_version=${_vtk_export_version}" )
Fixed by replacing
struct VTKCOMMONCORE_EXPORT vtkConstantImplicitBackend final
by
struct vtkConstantImplicitBackend final
in Common/Core/vtkConstantImplicitBackend.h
#The default set of scalar types:set(vtkArrayDispatch_all_types"char""double""float""int""long""long long""short""signed char""unsigned char""unsigned int""unsigned long""unsigned long long""unsigned short""vtkIdType")