@@ -153,6 +153,30 @@ if(ITKPythonPackage_SUPERBUILD)
153153 message (STATUS "SuperBuild - Searching for python[OK]" )
154154 message (STATUS "SuperBuild - DOXYGEN_EXECUTABLE: ${DOXYGEN_EXECUTABLE} " )
155155
156+ # CMake configuration variables to pass to ITK's build
157+ set (ep_itk_cmake_cache_args "" )
158+ foreach (var
159+ BUILD_SHARED_LIBS
160+ ITK_BUILD_DEFAULT_MODULES
161+ )
162+ if (DEFINED ${var} )
163+ list (APPEND ep_itk_cmake_cache_args "-D${var} =${${var} }" )
164+ endif ()
165+ endforeach ()
166+ function (cached_variables RESULTVAR PATTERN)
167+ get_cmake_property (variables CACHE_VARIABLES )
168+ set (result)
169+ foreach (variable ${variables} )
170+ if (${variable} AND variable MATCHES "${PATTERN} " )
171+ list (APPEND result "-D${variable} =${${variable} }" )
172+ endif ()
173+ endforeach ()
174+ set (${RESULTVAR} ${result} PARENT_SCOPE)
175+ endfunction ()
176+ cached_variables(itk_pattern_cached_vars "^(ITK_WRAP_)|(ITKGroup_)|(Module_)" )
177+ list (APPEND ep_itk_cmake_cache_args ${itk_pattern_cached_vars} )
178+ # Todo, also pass all Module_* variables
179+ message (STATUS "ITK CMake Cache Args - ${ep_itk_cmake_cache_args} " )
156180 #-----------------------------------------------------------------------------
157181 # ITK: This project builds ITK and associated Python modules
158182
@@ -182,7 +206,7 @@ if(ITKPythonPackage_SUPERBUILD)
182206 SOURCE_DIR ${ITK_SOURCE_DIR}
183207 BINARY_DIR ${ITK_BINARY_DIR}
184208 PREFIX "ITKp"
185- CMAKE_CACHE_ARGS
209+ CMAKE_ARGS
186210 -DBUILD_TESTING:BOOL =OFF
187211 -DCMAKE_INSTALL_PREFIX:PATH =${CMAKE_INSTALL_PREFIX}
188212 -DPY_SITE_PACKAGES_PATH:PATH =${CMAKE_INSTALL_PREFIX}
@@ -198,6 +222,7 @@ if(ITKPythonPackage_SUPERBUILD)
198222 -DPYTHON_LIBRARY:FILEPATH =${PYTHON_LIBRARY}
199223 -DPYTHON_EXECUTABLE:FILEPATH =${PYTHON_EXECUTABLE}
200224 ${ep_common_cmake_cache_args}
225+ ${ep_itk_cmake_cache_args}
201226 USES_TERMINAL_DOWNLOAD 1
202227 USES_TERMINAL_UPDATE 1
203228 USES_TERMINAL_CONFIGURE 1
0 commit comments