From 389efa4b90c746579a09528b0dfd99b3af26a09c Mon Sep 17 00:00:00 2001 From: Horea Christian Date: Sat, 18 May 2019 03:37:33 +0200 Subject: [PATCH] sci-libs/itk: dep change ahead of Gentoo Science Package-Manager: Portage-2.3.66, Repoman-2.3.12 Signed-off-by: Horea Christian --- sci-libs/itk/ChangeLog | 10 ++ sci-libs/itk/Manifest | 2 + ...nsformFileReader-TransformFileWriter.patch | 50 ++++++ ...asiNewtonOptimizerv4-wrapping-warnin.patch | 28 ++++ ...adientDescentOptimizerv4-wrapping-wa.patch | 73 +++++++++ ...izerParameterScalesEstimatorTemplate.patch | 30 ++++ ...0005-make-gdcm-helper-library-static.patch | 11 ++ sci-libs/itk/files/nrrdio-linking.patch | 15 ++ sci-libs/itk/itk-5.0_rc1.ebuild | 149 ++++++++++++++++++ sci-libs/itk/metadata.xml | 23 +++ 10 files changed, 391 insertions(+) create mode 100644 sci-libs/itk/ChangeLog create mode 100644 sci-libs/itk/Manifest create mode 100644 sci-libs/itk/files/0001-BUG-Wrap-TransformFileReader-TransformFileWriter.patch create mode 100644 sci-libs/itk/files/0002-COMP-Fixed-itkQuasiNewtonOptimizerv4-wrapping-warnin.patch create mode 100644 sci-libs/itk/files/0003-COMP-Fixed-itkGradientDescentOptimizerv4-wrapping-wa.patch create mode 100644 sci-libs/itk/files/0004-COMP-Warp-OptimizerParameterScalesEstimatorTemplate.patch create mode 100644 sci-libs/itk/files/0005-make-gdcm-helper-library-static.patch create mode 100644 sci-libs/itk/files/nrrdio-linking.patch create mode 100644 sci-libs/itk/itk-5.0_rc1.ebuild create mode 100644 sci-libs/itk/metadata.xml diff --git a/sci-libs/itk/ChangeLog b/sci-libs/itk/ChangeLog new file mode 100644 index 0000000..b61b94f --- /dev/null +++ b/sci-libs/itk/ChangeLog @@ -0,0 +1,10 @@ +*itk-5.0_rc1 (18 May 2019) + + 18 May 2019; + +files/0001-BUG-Wrap-TransformFileReader-TransformFileWriter.patch, + +files/0002-COMP-Fixed-itkQuasiNewtonOptimizerv4-wrapping-warnin.patch, + +files/0003-COMP-Fixed-itkGradientDescentOptimizerv4-wrapping-wa.patch, + +files/0004-COMP-Warp-OptimizerParameterScalesEstimatorTemplate.patch, + +files/0005-make-gdcm-helper-library-static.patch, + +files/nrrdio-linking.patch, +itk-5.0_rc1.ebuild, +metadata.xml: + sci-libs/itk: dep change ahead of Gentoo Science diff --git a/sci-libs/itk/Manifest b/sci-libs/itk/Manifest new file mode 100644 index 0000000..0bc80ce --- /dev/null +++ b/sci-libs/itk/Manifest @@ -0,0 +1,2 @@ +DIST InsightData-5.0rc01.tar.gz 290621965 SHA256 c4b6172809fd86ee623311001bdf7b79e801bddb9bbb8cb7123b2e5cc04f5c4f SHA512 0be5568b75017a4c4cbfc4a4e7b0339537cd2dc23d5d5637a95002e040b96f923851bc354f3a1447d3802444a951b62d2ef66ad2a0db0961bf2bd9f47399fd9a WHIRLPOOL 35668bb25fc4fd6db3b63683cb26d62f46467f3304998ec3ddcd93cd55c9532f9701feda6f9e9e14c9d3a695434ce8c3e68ba916b1e26e3bb53df2f8aae7836b +DIST v5.0rc01.tar.gz 20944543 SHA256 fa6cd61bc39ccdc53808b9b0df5dd95d63a3c08be130e63ab0f4b77ca9594e46 SHA512 30e327708c7717bb2131911c86802c4104730d146b4263c68ae89384d3f01a6675b3abf5962af14cc7f40984cb1e8eedd911fe0f084a8deb4c79b4239b309728 WHIRLPOOL 6447eccbb17573233f750e3462dadd4c44c177613ca88520787579cc6e10ac523488e44dbf0f3e690a0cc009443b5adccdf62b588bdf6180dbda4a98b7d03cef diff --git a/sci-libs/itk/files/0001-BUG-Wrap-TransformFileReader-TransformFileWriter.patch b/sci-libs/itk/files/0001-BUG-Wrap-TransformFileReader-TransformFileWriter.patch new file mode 100644 index 0000000..094ee32 --- /dev/null +++ b/sci-libs/itk/files/0001-BUG-Wrap-TransformFileReader-TransformFileWriter.patch @@ -0,0 +1,50 @@ +From d069b7b94287dae15fcaf707775f5dd2bbebcc38 Mon Sep 17 00:00:00 2001 +From: Matt McCormick +Date: Wed, 5 Feb 2014 15:52:34 -0500 +Subject: [PATCH 1/3] BUG: Wrap TransformFileReader, TransformFileWriter. + +Missing CMakeLists.txt in the wrapping directory. Need to explicitly include +the headers after "Template" was appended to the class name. + +Suggested-by: Sami Koho + +Change-Id: I6f994bb18f37d5adf1d0f0311fa73506c41239a7 +--- + Modules/IO/TransformBase/wrapping/CMakeLists.txt | 3 +++ + Modules/IO/TransformBase/wrapping/itkTransformFileReader.wrap | 2 ++ + Modules/IO/TransformBase/wrapping/itkTransformFileWriter.wrap | 2 ++ + 3 files changed, 7 insertions(+) + create mode 100644 Modules/IO/TransformBase/wrapping/CMakeLists.txt + +diff --git a/Modules/IO/TransformBase/wrapping/CMakeLists.txt b/Modules/IO/TransformBase/wrapping/CMakeLists.txt +new file mode 100644 +index 0000000..6072567 +--- /dev/null ++++ b/Modules/IO/TransformBase/wrapping/CMakeLists.txt +@@ -0,0 +1,3 @@ ++itk_wrap_module(ITKIOTransformBase) ++itk_auto_load_submodules() ++itk_end_wrap_module() +diff --git a/Modules/IO/TransformBase/wrapping/itkTransformFileReader.wrap b/Modules/IO/TransformBase/wrapping/itkTransformFileReader.wrap +index 9b52fbc..662df9e 100644 +--- a/Modules/IO/TransformBase/wrapping/itkTransformFileReader.wrap ++++ b/Modules/IO/TransformBase/wrapping/itkTransformFileReader.wrap +@@ -1,3 +1,5 @@ ++set(WRAPPER_AUTO_INCLUDE_HEADERS OFF) ++itk_wrap_include("itkTransformFileReader.h") + itk_wrap_class("itk::TransformFileReaderTemplate" POINTER) + foreach(t ${WRAP_ITK_REAL}) + itk_wrap_template("${ITKM_${t}}" "${ITKT_${t}}") +diff --git a/Modules/IO/TransformBase/wrapping/itkTransformFileWriter.wrap b/Modules/IO/TransformBase/wrapping/itkTransformFileWriter.wrap +index 4f1ac4a..356aaf3 100644 +--- a/Modules/IO/TransformBase/wrapping/itkTransformFileWriter.wrap ++++ b/Modules/IO/TransformBase/wrapping/itkTransformFileWriter.wrap +@@ -1,3 +1,5 @@ ++set(WRAPPER_AUTO_INCLUDE_HEADERS OFF) ++itk_wrap_include("itkTransformFileWriter.h") + itk_wrap_class("itk::TransformFileWriterTemplate" POINTER) + foreach(t ${WRAP_ITK_REAL}) + itk_wrap_template("${ITKM_${t}}" "${ITKT_${t}}") +-- +1.8.5.3 + diff --git a/sci-libs/itk/files/0002-COMP-Fixed-itkQuasiNewtonOptimizerv4-wrapping-warnin.patch b/sci-libs/itk/files/0002-COMP-Fixed-itkQuasiNewtonOptimizerv4-wrapping-warnin.patch new file mode 100644 index 0000000..4c74d54 --- /dev/null +++ b/sci-libs/itk/files/0002-COMP-Fixed-itkQuasiNewtonOptimizerv4-wrapping-warnin.patch @@ -0,0 +1,28 @@ +From 66d2955fbe5528d9df216c639277d1d2686447e5 Mon Sep 17 00:00:00 2001 +From: Michka Popoff +Date: Fri, 7 Feb 2014 19:24:49 +0100 +Subject: [PATCH 2/3] COMP: Fixed itkQuasiNewtonOptimizerv4 wrapping warnings + +The warning : +/scratch/dashboards/Linux-x86_64-gcc4.4-WrapITK/ITK-build/Wrapping/Modules/ITKOptimizersv4/itkQuasiNewtonOptimizerv4.xml: warning(5): Unknown type type: itk::QuasiNewtonOptimizerv4 [typedef] +/scratch/dashboards/Linux-x86_64-gcc4.4-WrapITK/ITK-build/Wrapping/Modules/ITKOptimizersv4/itkQuasiNewtonOptimizerv4.xml: warning(4): ITK type not wrapped, or currently not known: itk::QuasiNewtonOptimizerv4Template< double > +--- + .../Numerics/Optimizersv4/wrapping/itkQuasiNewtonOptimizerv4.wrap | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/Modules/Numerics/Optimizersv4/wrapping/itkQuasiNewtonOptimizerv4.wrap b/Modules/Numerics/Optimizersv4/wrapping/itkQuasiNewtonOptimizerv4.wrap +index 4a43dd4..7eed11c 100644 +--- a/Modules/Numerics/Optimizersv4/wrapping/itkQuasiNewtonOptimizerv4.wrap ++++ b/Modules/Numerics/Optimizersv4/wrapping/itkQuasiNewtonOptimizerv4.wrap +@@ -1 +1,7 @@ +-itk_wrap_simple_class("itk::QuasiNewtonOptimizerv4" POINTER) ++set(WRAPPER_AUTO_INCLUDE_HEADERS OFF) ++itk_wrap_include("itkQuasiNewtonOptimizerv4.h") ++itk_wrap_class("itk::QuasiNewtonOptimizerv4Template" POINTER) ++ foreach(t ${WRAP_ITK_REAL}) ++ itk_wrap_template("${ITKM_${t}}" "${ITKT_${t}}") ++ endforeach(t) ++itk_end_wrap_class() +-- +1.8.5.3 + diff --git a/sci-libs/itk/files/0003-COMP-Fixed-itkGradientDescentOptimizerv4-wrapping-wa.patch b/sci-libs/itk/files/0003-COMP-Fixed-itkGradientDescentOptimizerv4-wrapping-wa.patch new file mode 100644 index 0000000..d77345e --- /dev/null +++ b/sci-libs/itk/files/0003-COMP-Fixed-itkGradientDescentOptimizerv4-wrapping-wa.patch @@ -0,0 +1,73 @@ +From fced46ce8769b4edc7971ea0928045390b5c3f84 Mon Sep 17 00:00:00 2001 +From: Michka Popoff +Date: Mon, 10 Feb 2014 09:41:42 +0100 +Subject: [PATCH 3/3] COMP: Fixed itkGradientDescentOptimizerv4 wrapping + warnings + +I splitted the 3 wrapping calls in 3 separate files and fixed the wrapping. + +The warnings : +/home/kevin/kitware/ITK_Build/Wrapping/Modules/ITKOptimizersv4/itkGradientDescentOptimizerv4.xml: warning(5): Unknown type type: itk::GradientDescentOptimizerBasev4 [typedef] +/home/kevin/kitware/ITK_Build/Wrapping/Modules/ITKOptimizersv4/itkGradientDescentOptimizerv4.xml: warning(5): Unknown type type: itk::GradientDescentOptimizerv4 [typedef] +/home/kevin/kitware/ITK_Build/Wrapping/Modules/ITKOptimizersv4/itkGradientDescentOptimizerv4.xml: warning(5): Unknown type type: itk::ObjectToObjectOptimizerBase [typedef] +/home/kevin/kitware/ITK_Build/Wrapping/Modules/ITKOptimizersv4/itkGradientDescentOptimizerv4.xml: warning(4): ITK type not wrapped, or currently not known: itk::GradientDescentOptimizerBasev4Template< double > +/home/kevin/kitware/ITK_Build/Wrapping/Modules/ITKOptimizersv4/itkGradientDescentOptimizerv4.xml: warning(4): ITK type not wrapped, or currently not known: itk::GradientDescentOptimizerv4Template< double > +/home/kevin/kitware/ITK_Build/Wrapping/Modules/ITKOptimizersv4/itkGradientDescentOptimizerv4.xml: warning(4): ITK type not wrapped, or currently not known: itk::ObjectToObjectOptimizerBaseTemplate< double > + +Should also hopefully fix the new error on the dashboard I introduced by fixing the itkQuasiNewtonOptimizerv4 warnings (http://review.source.kitware.com/#/c/14317/) +/home/kevin/kitware/ITK_Build/Wrapping/Typedefs/itkQuasiNewtonOptimizerv4.i:87: Warning 401: Nothing known about base class 'itk::GradientDescentOptimizerv4Template< float >'. Ignored. +/home/kevin/kitware/ITK_Build/Wrapping/Typedefs/itkQuasiNewtonOptimizerv4.i:87: Warning 401: Maybe you forgot to instantiate 'itk::GradientDescentOptimizerv4Template< float >' using %template. + +Change-Id: I15b6af11690ed6efeaced68f73af5212ab5dc364 +--- + .../wrapping/itkGradientDescentOptimizerBasev4.wrap | 7 +++++++ + .../Optimizersv4/wrapping/itkGradientDescentOptimizerv4.wrap | 10 +++++++--- + .../Optimizersv4/wrapping/itkObjectToObjectOptimizerBase.wrap | 7 +++++++ + 3 files changed, 21 insertions(+), 3 deletions(-) + create mode 100644 Modules/Numerics/Optimizersv4/wrapping/itkGradientDescentOptimizerBasev4.wrap + create mode 100644 Modules/Numerics/Optimizersv4/wrapping/itkObjectToObjectOptimizerBase.wrap + +diff --git a/Modules/Numerics/Optimizersv4/wrapping/itkGradientDescentOptimizerBasev4.wrap b/Modules/Numerics/Optimizersv4/wrapping/itkGradientDescentOptimizerBasev4.wrap +new file mode 100644 +index 0000000..74f5a6c +--- /dev/null ++++ b/Modules/Numerics/Optimizersv4/wrapping/itkGradientDescentOptimizerBasev4.wrap +@@ -0,0 +1,7 @@ ++set(WRAPPER_AUTO_INCLUDE_HEADERS OFF) ++itk_wrap_include("itkGradientDescentOptimizerBasev4.h") ++itk_wrap_class("itk::GradientDescentOptimizerBasev4Template" POINTER) ++ foreach(t ${WRAP_ITK_REAL}) ++ itk_wrap_template("${ITKM_${t}}" "${ITKT_${t}}") ++ endforeach(t) ++itk_end_wrap_class() +diff --git a/Modules/Numerics/Optimizersv4/wrapping/itkGradientDescentOptimizerv4.wrap b/Modules/Numerics/Optimizersv4/wrapping/itkGradientDescentOptimizerv4.wrap +index d53a176..3236448 100644 +--- a/Modules/Numerics/Optimizersv4/wrapping/itkGradientDescentOptimizerv4.wrap ++++ b/Modules/Numerics/Optimizersv4/wrapping/itkGradientDescentOptimizerv4.wrap +@@ -1,3 +1,7 @@ +-itk_wrap_simple_class("itk::ObjectToObjectOptimizerBase" POINTER) +-itk_wrap_simple_class("itk::GradientDescentOptimizerBasev4" POINTER) +-itk_wrap_simple_class("itk::GradientDescentOptimizerv4" POINTER) ++set(WRAPPER_AUTO_INCLUDE_HEADERS OFF) ++itk_wrap_include("itkGradientDescentOptimizerv4.h") ++itk_wrap_class("itk::GradientDescentOptimizerv4Template" POINTER) ++ foreach(t ${WRAP_ITK_REAL}) ++ itk_wrap_template("${ITKM_${t}}" "${ITKT_${t}}") ++ endforeach(t) ++itk_end_wrap_class() +diff --git a/Modules/Numerics/Optimizersv4/wrapping/itkObjectToObjectOptimizerBase.wrap b/Modules/Numerics/Optimizersv4/wrapping/itkObjectToObjectOptimizerBase.wrap +new file mode 100644 +index 0000000..61b2c44 +--- /dev/null ++++ b/Modules/Numerics/Optimizersv4/wrapping/itkObjectToObjectOptimizerBase.wrap +@@ -0,0 +1,7 @@ ++set(WRAPPER_AUTO_INCLUDE_HEADERS OFF) ++itk_wrap_include("itkObjectToObjectOptimizerBase.h") ++itk_wrap_class("itk::ObjectToObjectOptimizerBaseTemplate" POINTER) ++ foreach(t ${WRAP_ITK_REAL}) ++ itk_wrap_template("${ITKM_${t}}" "${ITKT_${t}}") ++ endforeach(t) ++itk_end_wrap_class() +-- +1.8.5.3 + diff --git a/sci-libs/itk/files/0004-COMP-Warp-OptimizerParameterScalesEstimatorTemplate.patch b/sci-libs/itk/files/0004-COMP-Warp-OptimizerParameterScalesEstimatorTemplate.patch new file mode 100644 index 0000000..83b3956 --- /dev/null +++ b/sci-libs/itk/files/0004-COMP-Warp-OptimizerParameterScalesEstimatorTemplate.patch @@ -0,0 +1,30 @@ +Author: Matt McCormick +Date: Thu Feb 6 10:26:49 2014 -0500 + + COMP: Wrap OptimizerParameterScalesEstimatorTemplate. + + The class name changed and it became templated. Fixes: + + /playpen/blowekamp/MacOSX-WrapITK/ITK-build/Wrapping/Modules/ITKOptimizersv4/itkOptimizerParameterScalesEstimator.xml: + warning(5): Unknown type type: itk::OptimizerParameterScalesEstimator + [typedef] + /playpen/blowekamp/MacOSX-WrapITK/ITK-build/Wrapping/Modules/ITKOptimizersv4/itkOptimizerParameterScalesEstimator.xml: + warning(4): ITK type not wrapped, or currently not known: + itk::OptimizerParameterScalesEstimatorTemplate< double > + + Change-Id: Ic6b4d6fba10d5d6c7b58de8d842bad6511e1ae7b + +diff --git a/Modules/Numerics/Optimizersv4/wrapping/itkOptimizerParameterScalesEstimator.wrap b/Modules/Numerics/Optimizersv4/wrapping/itkOptim +index efd6a8c..a647ee4 100644 +--- a/Modules/Numerics/Optimizersv4/wrapping/itkOptimizerParameterScalesEstimator.wrap ++++ b/Modules/Numerics/Optimizersv4/wrapping/itkOptimizerParameterScalesEstimator.wrap +@@ -1 +1,7 @@ +-itk_wrap_simple_class("itk::OptimizerParameterScalesEstimator" POINTER) ++set(WRAPPER_AUTO_INCLUDE_HEADERS OFF) ++itk_wrap_include("itkOptimizerParameterScalesEstimator.h") ++itk_wrap_class("itk::OptimizerParameterScalesEstimatorTemplate" POINTER) ++ foreach(t ${WRAP_ITK_REAL}) ++ itk_wrap_template("${ITKM_${t}}" "${ITKT_${t}}") ++ endforeach(t) ++itk_end_wrap_class() + diff --git a/sci-libs/itk/files/0005-make-gdcm-helper-library-static.patch b/sci-libs/itk/files/0005-make-gdcm-helper-library-static.patch new file mode 100644 index 0000000..d760ac7 --- /dev/null +++ b/sci-libs/itk/files/0005-make-gdcm-helper-library-static.patch @@ -0,0 +1,11 @@ +diff --git a/Modules/ThirdParty/GDCM/src/CMakeLists.txt b/Modules/ThirdParty/GDCM/src/CMakeLists.txt +index e98077c..70f4286 100644 +--- a/Modules/ThirdParty/GDCM/src/CMakeLists.txt ++++ b/Modules/ThirdParty/GDCM/src/CMakeLists.txt +@@ -1,5 +1,5 @@ + if(ITK_USE_SYSTEM_GDCM) +- add_library(ITKGDCM ITK-GDCM.cxx) ++ add_library(ITKGDCM STATIC ITK-GDCM.cxx) + target_link_libraries(ITKGDCM gdcmDICT gdcmMSFF) + itk_module_target(ITKGDCM) + return() diff --git a/sci-libs/itk/files/nrrdio-linking.patch b/sci-libs/itk/files/nrrdio-linking.patch new file mode 100644 index 0000000..a549650 --- /dev/null +++ b/sci-libs/itk/files/nrrdio-linking.patch @@ -0,0 +1,15 @@ +Description: Link libITKNrrdIO with -lm (needed for sqrt) +Author: Steve Robbins +Forwarded: no + +--- insighttoolkit4-4.5.0.orig/Modules/ThirdParty/NrrdIO/src/NrrdIO/CMakeLists.txt ++++ insighttoolkit4-4.5.0/Modules/ThirdParty/NrrdIO/src/NrrdIO/CMakeLists.txt +@@ -64,7 +64,7 @@ + ADD_DEFINITIONS(-DTEEM_ZLIB=1) + + ADD_LIBRARY(ITKNrrdIO ${nrrdio_SRCS} ) +-TARGET_LINK_LIBRARIES(ITKNrrdIO ${ITKZLIB_LIBRARIES}) ++TARGET_LINK_LIBRARIES(ITKNrrdIO ${ITKZLIB_LIBRARIES} -lm) + + IF(ITK_LIBRARY_PROPERTIES) + SET_TARGET_PROPERTIES(ITKNrrdIO PROPERTIES ${ITK_LIBRARY_PROPERTIES}) diff --git a/sci-libs/itk/itk-5.0_rc1.ebuild b/sci-libs/itk/itk-5.0_rc1.ebuild new file mode 100644 index 0000000..5e34751 --- /dev/null +++ b/sci-libs/itk/itk-5.0_rc1.ebuild @@ -0,0 +1,149 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 python3_{5,6,7} ) + +inherit eutils toolchain-funcs cmake-utils python-single-r1 + +MY_PV="5.0rc01" + +DESCRIPTION="NLM Insight Segmentation and Registration Toolkit" +HOMEPAGE="http://www.itk.org" +SRC_URI=" + https://github.com/InsightSoftwareConsortium/ITK/archive/v${MY_PV}.tar.gz + test? ( https://github.com/InsightSoftwareConsortium/ITK/releases/download/v5.0rc01/InsightData-${MY_PV}.tar.gz ) + " +RESTRICT="primaryuri" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="debug doc examples fftw python review test vtkglue" + +RDEPEND=" + dev-libs/double-conversion:0= + media-libs/openjpeg:2 + media-libs/libpng:0= + media-libs/tiff:0= + sci-libs/dcmtk:0= + sci-libs/hdf5:0=[cxx] + sys-libs/zlib:0= + virtual/jpeg:0= + fftw? ( sci-libs/fftw:3.0= ) + vtkglue? ( sci-libs/vtk:0=[python?] ) +" +DEPEND="${RDEPEND} + python? ( + >=dev-lang/swig-2.0:0 + dev-cpp/castxml + ) + doc? ( app-doc/doxygen ) +" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +S="${WORKDIR}/ITK-${MY_PV}" + +pkg_pretend() { + if [[ -z ${ITK_COMPUTER_MEMORY_SIZE} ]]; then + elog "To tune ITK to make the best use of working memory you can set" + elog " ITK_COMPUTER_MEMORY_SIZE=XX" + elog "in make.conf, default is 1 (unit is GB)" + fi + if use python && [[ -z ${ITK_WRAP_DIMS} ]]; then + elog "For Python language bindings, you can define the dimensions" + elog "you want to create bindings for by setting" + elog " ITK_WRAP_DIMS=X;Y;Z..." + elog "in make.conf, default is 2;3 for 2D and 3D data" + fi +} + +src_prepare() { + sed -i -e "s/find_package(OpenJPEG 2.0.0/find_package(OpenJPEG/g"\ + Modules/ThirdParty/GDCM/src/gdcm/CMakeLists.txt + default +} + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=ON + -DITK_USE_SYSTEM_DCMTK=ON + -DGDCM_USE_SYSTEM_OPENJPEG=ON + -DITK_USE_SYSTEM_DOUBLECONVERSION=ON + -DITK_USE_SYSTEM_CASTXML=ON + -DITK_USE_SYSTEM_HDF5=ON + -DITK_USE_SYSTEM_JPEG=ON + -DITK_USE_SYSTEM_PNG=ON + -DITK_USE_SYSTEM_SWIG=ON + -DITK_USE_SYSTEM_TIFF=ON + -DITK_USE_SYSTEM_ZLIB=ON + -DITK_USE_KWSTYLE=OFF + -DITK_BUILD_DEFAULT_MODULES=ON + -DITK_COMPUTER_MEMORY_SIZE="${ITK_COMPUTER_MEMORY_SIZE:-1}" + -DWRAP_ITK_JAVA=OFF + -DWRAP_ITK_TCL=OFF + -Ddouble-conversion_INCLUDE_DIRS="${EPREFIX}/usr/include/double-conversion" + -DExternalData_OBJECT_STORES="${WORKDIR}/InsightToolkit-${MY_PV}/.ExternalData" + -DBUILD_TESTING="$(usex test ON OFF)" + -DBUILD_EXAMPLES="$(usex examples ON OFF)" + -DITK_USE_REVIEW="$(usex review ON OFF)" + -DITK_INSTALL_LIBRARY_DIR=$(get_libdir) + ) + if use fftw; then + mycmakeargs+=( + -DUSE_FFTWD=ON + -DUSE_FFTWF=ON + -DUSE_SYSTEM_FFTW=ON + -DITK_WRAP_double=ON + -DITK_WRAP_vector_double=ON + -DITK_WRAP_covariant_vector_double=ON + -DITK_WRAP_complex_double=ON + ) + fi + if use vtkglue; then + mycmakeargs+=( + -DModule_ITKVtkGlue=ON + ) + fi + if use python; then + mycmakeargs+=( + -DITK_WRAP_PYTHON=ON + -DITK_WRAP_DIMS="${ITK_WRAP_DIMS:-2;3}" + ) + else + mycmakeargs+=( + -DITK_WRAP_PYTHON=OFF + ) + fi + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + if use examples; then + insinto /usr/share/doc/${PF}/examples + docompress -x /usr/share/doc/${PF}/examples + doins -r "${S}"/Examples/* + fi + + echo "ITK_DATA_ROOT=${EROOT%/}/usr/share/${PN}/data" > ${T}/40${PN} + local ldpath="${EROOT%/}/usr/$(get_libdir)/InsightToolkit" + if use python; then + echo "PYTHONPATH=${EROOT%/}/usr/$(get_libdir)/InsightToolkit/WrapITK/Python" >> "${T}"/40${PN} + ldpath="${ldpath}:${EROOT%/}/usr/$(get_libdir)/InsightToolkit/WrapITK/lib" + fi + echo "LDPATH=${ldpath}" >> "${T}"/40${PN} + doenvd "${T}"/40${PN} + + if use doc; then + insinto /usr/share/doc/${PF}/api-docs + cd "${WORKDIR}"/html + rm *.md5 || die "Failed to remove superfluous hashes" + einfo "Installing API docs. This may take some time." + insinto /usr/share/doc/${PF}/api-docs + doins -r * + fi +} diff --git a/sci-libs/itk/metadata.xml b/sci-libs/itk/metadata.xml new file mode 100644 index 0000000..7c45353 --- /dev/null +++ b/sci-libs/itk/metadata.xml @@ -0,0 +1,23 @@ + + + + + maintainer-wanted@gentoo.org + + + sci-biology@gentoo.org + Gentoo Biology Project + + +Insight Segmentation and Registration Toolkit (ITK) is a library +that provides developers with an extensive suite of tools for image +analysis. + + + Enable compilation of methods under review + PLEASE FIX MY DESCRIPTION + + + itk + +