it looks like if one is only targeting vtk 9.0 and python, most of stuff in the CMakeLists for a library is pretty smalll and the rest is cruft for older versions? am I interpreting this correctly?
from vtk-dicom/blob/master/Source/CMakeLists.txt
if(DEFINED VTK_MODULE_ENABLE_VTK_DICOM)
# When building as a module for VTK 8.90 or later
set(LIB_SRC_HDRS)
foreach(_src ${LIB_SRCS})
get_filename_component(_base ${_src} NAME_WE)
list(APPEND LIB_SRC_HDRS ${_base}.h)
endforeach()
vtk_module_add_module(VTK::DICOM
SOURCES ${LIB_SRCS}
HEADERS ${LIB_SRC_HDRS} ${LIB_HDRS})
vtk_module_link(VTK::DICOM
PRIVATE ${GDCM_LIBS} ${DCMTK_LIBS} ${SQLITE_LIBS})