gnu: Add insight-toolkit-legacy.

This is a hidden variant of insight-toolkit needed for itk-snap.

* gnu/packages/image-processing.scm (insight-toolkit-legacy): New variable.

Change-Id: Ief18c1b4241241881b5b632121fc463db5b3c286
Signed-off-by: Andreas Enge <andreas@enge.fr>
This commit is contained in:
Jake Forster 2025-07-25 23:35:31 +09:30 committed by Andreas Enge
parent 61a1741f38
commit 969d58090b
No known key found for this signature in database
GPG key ID: F7D5C9BF765C61E3

View file

@ -1406,6 +1406,37 @@ the medical environment, a CT scan may be aligned with a MRI scan in order to
combine the information contained in both.")
(license license:asl2.0))))
;; Provide variant of insight-toolkit (ITK) built with ITK_LEGACY_REMOVE=OFF.
;; ITK-SNAP version 4.2.2 and 4.4.0-alpha3 require ITK >= 5.4 and for ITK to
;; be built this way. Note that enabling Python wrapping forces this option
;; to ON, so Python wrapping is not enabled for this build.
(define insight-toolkit-legacy
(hidden-package
(package/inherit insight-toolkit
;; Unfortunately we cannot remove the 'python output because it is
;; referenced in #:configure-flags below.
(name "insight-toolkit-legacy")
(arguments
(substitute-keyword-arguments (package-arguments insight-toolkit)
((#:configure-flags cf '())
#~(filter (lambda (flag)
(not (or
;; Remove these flags to restore the default
;; ITK_LEGACY_REMOVE=OFF.
(string=? "-DITK_WRAPPING=ON" flag)
(string=? "-DITK_WRAP_PYTHON=ON" flag)
;; These flags are now unused.
(string-prefix? "-DPY_SITE_PACKAGES_PATH=" flag)
(string-prefix? "-DITK_USE_PYTHON_LIMITED_API=" flag)
(string-prefix? "-DITK_USE_SYSTEM_CASTXML=" flag)
(string-prefix? "-DITK_USE_SYSTEM_SWIG=" flag))))
#$cf))))
(inputs (modify-inputs (package-inputs insight-toolkit)
(delete "python")))
(native-inputs (modify-inputs (package-native-inputs insight-toolkit)
(delete "castxml")
(delete "swig"))))))
(define-public insight-toolkit-4
(package (inherit insight-toolkit)
(version "4.13.2")