[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Update on WrapITK and debian



> On Mon, Nov 23, 2009 at 06:45:06PM +0100, Mathieu Malaterre wrote:
> > Steve,
> > 
> >   I thought I should give an update.
> >   I have been trying for the past weeks to get WrapITK working without
> > Review. I have to admit I never succeeded (see all my attempt
> > commented out in the patch file). I do not say it is not possible, I
> > am saying this is really hard.
> 
> I didn't see the commented-out patch.  What is the difficulty?
> Could we get upstream help for this?
> 
> > Let me know what you think of including Review in ITK.
> 
> I'd really prefer not to do so, as Review provides no guarantee
> of license suitability nor stability.


Hello debian-med, 

It looks like ITK 3.18 has a much smaller WrapITK Review directory.
Starting where Mathieu left off, I took a crack at getting WrapITK to
compile without the Review directory. I can get most WrapITK modules to
compile, with the exception of BinaryMorphology, Morphology, Compose,
FFT, and Registration. These modules need one or more of the following
components that are in review: itkBoxImageFilter,
itkFlatStructuringElement, and itkKernelImageFilter. The rest of modules
appear to compile, and from initial testing, work.

I have attached a patch and the CMakeCache.txt.debian I used. It isn't a
properly formatted debian quilt patch. I can integrate these changes
into the debian source if there is interest in getting WrapITK working.

-Paul
diff --git a/Wrapping/WrapITK/CMakeLists.txt b/Wrapping/WrapITK/CMakeLists.txt
index e5cb8b5..006c7eb 100644
--- a/Wrapping/WrapITK/CMakeLists.txt
+++ b/Wrapping/WrapITK/CMakeLists.txt
@@ -158,7 +158,7 @@ SET(optional_modules
   PixelMath
   Registration
   Resize
-  Review
+  #Review
   SegmentationAndThreshold
   SegmentationValidation
   SimpleFilters
diff --git a/Wrapping/WrapITK/Modules/Base/wrap_itkBoxImageFilter.cmake b/Wrapping/WrapITK/Modules/Base/wrap_itkBoxImageFilter.cmake.notwrapped
similarity index 100%
rename from Wrapping/WrapITK/Modules/Base/wrap_itkBoxImageFilter.cmake
rename to Wrapping/WrapITK/Modules/Base/wrap_itkBoxImageFilter.cmake.notwrapped
diff --git a/Wrapping/WrapITK/Modules/Base/wrap_itkFlatStructuringElement.cmake b/Wrapping/WrapITK/Modules/Base/wrap_itkFlatStructuringElement.cmake.notwrapped
similarity index 100%
rename from Wrapping/WrapITK/Modules/Base/wrap_itkFlatStructuringElement.cmake
rename to Wrapping/WrapITK/Modules/Base/wrap_itkFlatStructuringElement.cmake.notwrapped
diff --git a/Wrapping/WrapITK/Modules/Base/wrap_itkKernelImageFilter.cmake b/Wrapping/WrapITK/Modules/Base/wrap_itkKernelImageFilter.cmake.notwrapped
similarity index 100%
rename from Wrapping/WrapITK/Modules/Base/wrap_itkKernelImageFilter.cmake
rename to Wrapping/WrapITK/Modules/Base/wrap_itkKernelImageFilter.cmake.notwrapped
diff --git a/Wrapping/WrapITK/WrapITKTypes.cmake b/Wrapping/WrapITK/WrapITKTypes.cmake
index 211983d..f2db294 100644
--- a/Wrapping/WrapITK/WrapITKTypes.cmake
+++ b/Wrapping/WrapITK/WrapITKTypes.cmake
@@ -194,12 +194,12 @@ WRAP_TYPE("itk::LevelSetNode" "LSN")
 END_WRAP_TYPE()
 SET(itk_Wrap_LevelSetNode ${WRAPPER_TEMPLATES})
 
-WRAP_TYPE("itk::FlatStructuringElement" "SE")
-  FOREACH(d ${WRAP_ITK_DIMS})
-    WRAP_TEMPLATE("${d}"  "${d}")
-  ENDFOREACH(d)
-END_WRAP_TYPE()
-SET(itk_Wrap_StructuringElement ${WRAPPER_TEMPLATES})
+#WRAP_TYPE("itk::FlatStructuringElement" "SE")
+#  FOREACH(d ${WRAP_ITK_DIMS})
+#    WRAP_TEMPLATE("${d}"  "${d}")
+#  ENDFOREACH(d)
+#END_WRAP_TYPE()
+#SET(itk_Wrap_StructuringElement ${WRAPPER_TEMPLATES})
 
 WRAP_TYPE("itk::SpatialObject" "SO")
   FOREACH(d ${WRAP_ITK_DIMS})
diff --git a/Wrapping/itkWrapSetup.cmake b/Wrapping/itkWrapSetup.cmake
index f944d76..2fa6aa2 100644
--- a/Wrapping/itkWrapSetup.cmake
+++ b/Wrapping/itkWrapSetup.cmake
@@ -6,9 +6,9 @@ IF(USE_WRAP_ITK)
   # without that, the external projects won't build
   # TODO: remove this check once FlatStructuringElement will be moved out of
   #       the review directory
-  IF(NOT ITK_USE_REVIEW)
-    MESSAGE(SEND_ERROR "WrapITK requires ITK_USE_REVIEW to be ON.")
-  ENDIF(NOT ITK_USE_REVIEW)
+  #IF(NOT ITK_USE_REVIEW)
+  #  MESSAGE(SEND_ERROR "WrapITK requires ITK_USE_REVIEW to be ON.")
+  #ENDIF(NOT ITK_USE_REVIEW)
 ENDIF(USE_WRAP_ITK)
 
 #-----------------------------------------------------------------------------

# This is the Kickstart CMakeCache file for the Debian build of ITK.
# Only those settings that are changed from the default are specified.

// Conform to VTK's setting
CMAKE_CXX_COMPILER:STRING=/usr/bin/c++

// Don't build examples now (let the user later)
BUILD_EXAMPLES:BOOL=OFF

// Build ITK with shared libraries
BUILD_SHARED_LIBS:BOOL=ON

// Don't bother building the testing tree
BUILD_TESTING:BOOL=OFF

// Give us an optimised release build
CMAKE_BUILD_TYPE:STRING=RELEASE

// Install path prefix, prepended onto install directories
CMAKE_INSTALL_PREFIX:PATH=/usr
 
// Where to put the doxygen documentation and needed for docstrings in python
DOXYGEN_MAN_PATH:PATH=/usr/share/man

// The code still uses the older #include <iostream.h> style
CMAKE_CXX_FLAGS:STRING=-Wno-deprecated
 
// We do not want rpath enabled
CMAKE_SKIP_RPATH:BOOL=ON

//Build cswig Java wrapper support
ITK_CSWIG_JAVA:BOOL=OFF

//Build cswig Python wrapper support (requires CableSwig).
ITK_CSWIG_PYTHON:BOOL=OFF

//Build cswig Tcl wrapper support (requires CableSwig).
ITK_CSWIG_TCL:BOOL=OFF

// We haven't packaged this (yet)
ITK_DATA_ROOT:PATH=ITK_DATA_ROOT_NOTFOUND

// Use the system libraries for these
ITK_USE_SYSTEM_JPEG:BOOL=ON
ITK_USE_SYSTEM_PNG:BOOL=ON
ITK_USE_SYSTEM_TIFF:BOOL=ON
ITK_USE_SYSTEM_ZLIB:BOOL=ON

// Enable concept checking
ITK_USE_CONCEPT_CHECKING:BOOL=ON
ITK_USE_STRICT_CONCEPT_CHECKING:BOOL=OFF

//For WrapITK-Python
USE_WRAP_ITK:BOOL=ON
ITK_USE_REVIEW:BOOL=OFF
WRAP_ITK_INSTALL_PREFIX:PATH=/lib/python-insighttoolkit

WRAP_ITK_JAVA:BOOL=OFF
WRAP_ITK_PYTHON:BOOL=ON
WRAP_ITK_TCL:BOOL=OFF

WRAP_ITK_DIMS:STRING=2;3

WRAP_BinaryMorphology:BOOL=OFF
WRAP_Calculators:BOOL=ON
WRAP_Compose:BOOL=OFF
WRAP_DeformableTransforms:BOOL=ON
WRAP_Denoising:BOOL=ON
WRAP_DistanceMap:BOOL=ON
WRAP_EdgesAndContours:BOOL=ON
WRAP_FFT:BOOL=OFF
WRAP_FFTW:BOOL=OFF
WRAP_Filtering:BOOL=ON
WRAP_IO:BOOL=ON
WRAP_IntensityFilters:BOOL=ON
WRAP_Interpolators:BOOL=ON
WRAP_Iterators:BOOL=OFF
WRAP_LevelSet:BOOL=ON
WRAP_Morphology:BOOL=OFF
WRAP_PixelMath:BOOL=ON
WRAP_Registration:BOOL=OFF
WRAP_Resize:BOOL=ON
WRAP_Review:BOOL=ON
WRAP_SegmentationAndThreshold:BOOL=ON
WRAP_SegmentationValidation:BOOL=ON
WRAP_SimpleFilters:BOOL=ON
WRAP_UnaryPixelMath:BOOL=ON

WRAP_complex_double:BOOL=OFF
WRAP_complex_float:BOOL=ON
WRAP_covariant_vector_double:BOOL=OFF
WRAP_covariant_vector_float:BOOL=ON
WRAP_double:BOOL=OFF
WRAP_float:BOOL=ON
WRAP_rgb_unsigned_char:BOOL=ON
WRAP_rgb_unsigned_short:BOOL=ON
WRAP_signed_char:BOOL=OFF
WRAP_signed_long:BOOL=OFF
WRAP_signed_short:BOOL=ON
WRAP_unsigned_char:BOOL=ON
WRAP_unsigned_long:BOOL=OFF
WRAP_unsigned_short:BOOL=ON
WRAP_vector_double:BOOL=OFF
WRAP_vector_float:BOOL=ON


Reply to: