From 3272716287ef5d9dc1c7302245f7555ee2f33d25 Mon Sep 17 00:00:00 2001 From: "Hans J. Johnson" Date: Wed, 15 Apr 2026 02:50:56 -0500 Subject: [PATCH 1/2] COMP: VTKImageIO publicly depends on ImageIOBase Change ITKIOImageBase from PRIVATE_DEPENDS to DEPENDS for the ITKIOVTK module. External projects linking against ITKIOVTK need the ImageIOBase headers and link targets transitively. Cherry-pick of 12be7405a7 from main. --- Modules/IO/VTK/itk-module.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/IO/VTK/itk-module.cmake b/Modules/IO/VTK/itk-module.cmake index ecd2d5eb198..e88a940ed8f 100644 --- a/Modules/IO/VTK/itk-module.cmake +++ b/Modules/IO/VTK/itk-module.cmake @@ -4,7 +4,7 @@ files in the \"legacy\" (non-XML) VTK file format.") itk_module( ITKIOVTK ENABLE_SHARED - PRIVATE_DEPENDS + DEPENDS ITKIOImageBase TEST_DEPENDS ITKTestKernel From 85deb276eea2d7536e73d6a5c7bb36ebc59b1d0d Mon Sep 17 00:00:00 2001 From: "Hans J. Johnson" Date: Wed, 15 Apr 2026 10:10:30 -0500 Subject: [PATCH 2/2] COMP: Move ITKIOImageBase to public DEPENDS for remaining IO modules CSV, DCMTK, GE, LSM, and PhilipsREC still had ITKIOImageBase under PRIVATE_DEPENDS. This is incorrect because their public headers include ITKIOImageBase headers, so downstream projects need the transitive dependency. The same issue exists on main and has not yet been fixed there either. --- Modules/IO/CSV/itk-module.cmake | 2 +- Modules/IO/DCMTK/itk-module.cmake | 3 ++- Modules/IO/GE/itk-module.cmake | 1 - Modules/IO/LSM/itk-module.cmake | 2 +- Modules/IO/PhilipsREC/itk-module.cmake | 3 ++- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/Modules/IO/CSV/itk-module.cmake b/Modules/IO/CSV/itk-module.cmake index 1135cec7e1b..b0f32b04bfd 100644 --- a/Modules/IO/CSV/itk-module.cmake +++ b/Modules/IO/CSV/itk-module.cmake @@ -1,7 +1,7 @@ itk_module( ITKIOCSV ENABLE_SHARED - PRIVATE_DEPENDS + DEPENDS ITKIOImageBase TEST_DEPENDS ITKTestKernel) diff --git a/Modules/IO/DCMTK/itk-module.cmake b/Modules/IO/DCMTK/itk-module.cmake index 0cef19ddfb6..7c4508dbbac 100644 --- a/Modules/IO/DCMTK/itk-module.cmake +++ b/Modules/IO/DCMTK/itk-module.cmake @@ -6,9 +6,10 @@ href=\"https://dicom.offis.de/dcmtk/\">DCMTK DCMTK is a collection of librar itk_module( ITKIODCMTK ENABLE_SHARED + DEPENDS + ITKIOImageBase PRIVATE_DEPENDS ITKDCMTK - ITKIOImageBase TEST_DEPENDS ITKTestKernel ITKImageIntensity diff --git a/Modules/IO/GE/itk-module.cmake b/Modules/IO/GE/itk-module.cmake index 904598fb5a0..de2db6e21a6 100644 --- a/Modules/IO/GE/itk-module.cmake +++ b/Modules/IO/GE/itk-module.cmake @@ -8,7 +8,6 @@ itk_module( ENABLE_SHARED DEPENDS ITKIOIPL - PRIVATE_DEPENDS ITKIOImageBase TEST_DEPENDS ITKTestKernel diff --git a/Modules/IO/LSM/itk-module.cmake b/Modules/IO/LSM/itk-module.cmake index 223b90cd62e..78351e3f942 100644 --- a/Modules/IO/LSM/itk-module.cmake +++ b/Modules/IO/LSM/itk-module.cmake @@ -8,9 +8,9 @@ itk_module( ITKIOLSM DEPENDS ITKIOTIFF + ITKIOImageBase ENABLE_SHARED PRIVATE_DEPENDS - ITKIOImageBase ITKTIFF TEST_DEPENDS ITKTestKernel diff --git a/Modules/IO/PhilipsREC/itk-module.cmake b/Modules/IO/PhilipsREC/itk-module.cmake index a4b17c4d35e..5ed1e9ace91 100644 --- a/Modules/IO/PhilipsREC/itk-module.cmake +++ b/Modules/IO/PhilipsREC/itk-module.cmake @@ -4,8 +4,9 @@ REC/PAR image files.") itk_module( ITKIOPhilipsREC ENABLE_SHARED - PRIVATE_DEPENDS + DEPENDS ITKIOImageBase + PRIVATE_DEPENDS ITKZLIB TEST_DEPENDS ITKTestKernel