Page MenuHomePhabricator

move vigra and hdf5 open source
Closed, ResolvedPublic

Related Objects

Event Timeline

User neher has pushed new remote branch:

bug-18765-VigraOpenSource

Vigra and HDF5 are needed in MITK for machine lerning based tractography, tumor segmentation and tumor growth prediction.

Some comments on the patch:

  • the find_package calls usually happen in the MITK_<PACKAGE_Config.cmake files. So the workaround in mitkFunctionGetLibrarySearchPaths.cmake could be moved there, or we could just make sure we only call find_package once.
  • VTK includes a subset of the hdf5 libraries as well and from a quick glance it does not do any name mangling. Could this lead to conflicts? Could we pass "our" hdf5 to vtk and would this be compatible?

Please check if enabling HDF5 in an existing superbuild makes ITK/VTK out of date, i.e., the HDF5-dependend part of these libraries is recreated with our injected HDF5.

Checked. ITK and VTK are built again if hdf5 is enabled after the superbuild.

User brehler has pushed new remote branch:

bug-18765-VigraOpenSourceWin

[0de14c]: Merge branch 'bug-18765-VigraOpenSource'

Merged commits:

2015-03-03 13:23:15 Peter Neher [812fbe]
added vigra tree depth to patch


2015-02-26 16:30:05 Peter Neher [c88828]
replaced hardcoded path in patch with HDF5_DIR


2015-02-26 15:57:16 Peter Neher [17e745]
updated vigra patch


2015-02-26 15:29:33 Peter Neher [19042d]
added vigra patch for build system and tree depth


2015-02-26 14:14:37 Peter Neher [88bfb9]
using ep directory for hdf5 and vigra. vtk and itk are using the system hdf5 now if MITK_USE_HDF5 is enabled


2015-02-23 16:51:45 Peter Neher [5b9350]
moved vigra and hdf5 to MITK

[72258c]: Merge branch 'bug-18765-VigraOpenSourceWin'

Merged commits:

2015-03-05 12:48:33 Michael Brehler [e44602]
Merge branch 'bug-18765-VigraOpenSource'

Conflicts:
CMakeLists.txt


2015-03-05 12:47:43 Michael Brehler [dc6736]
changes to cmake files for integration

[b27eae]: Merge branch 'bug-18765-TempDisableVigra'

Merged commits:

2015-03-06 18:40:37 Peter Neher [c6ca16]
COMP: temporarily added vigra and hdf5 to package excludes to unlock dashboard

User kislinsk has pushed new remote branch:

bug-18765-HelpITKFindHDF5Libraries

[71e59e]: Merge branch 'bug-18765-HelpITKFindHDF5Libraries'

Merged commits:

2015-03-09 16:54:42 Stefan Kislinskiy [66a148]
COMP: Help ITK find right HDF5 libraries.

User kislinsk has pushed new remote branch:

bug-18765-HelpVTKFindHDF5Libraries

[b01542]: Merge branch 'bug-18765-HelpVTKFindHDF5Libraries'

Merged commits:

2015-03-10 10:12:21 Stefan Kislinskiy [bae771]
COMP: Help VTK find the right HDF5 libraries on Windows.

Still not working. ITK and VTK link to the right libraries now but there is a compile issue: in H5public.h is a typedef of an int to ssize_t, however, ssize_t is already defined to be an int, which results in the error message about "int followed by int". Excerpt from H5public.h:

/* Define the ssize_t type if it not is defined */
#if H5_SIZEOF_SSIZE_T==0
/* Undefine this size, we will re-define it in one of the sections below */
#undef H5_SIZEOF_SSIZE_T
#if H5_SIZEOF_SIZE_T==H5_SIZEOF_INT
typedef int ssize_t;

define H5_SIZEOF_SSIZE_T H5_SIZEOF_INT

#elif H5_SIZEOF_SIZE_T==H5_SIZEOF_LONG
typedef long ssize_t;

define H5_SIZEOF_SSIZE_T H5_SIZEOF_LONG

#elif H5_SIZEOF_SIZE_T==H5_SIZEOF_LONG_LONG
typedef long long ssize_t;

define H5_SIZEOF_SSIZE_T H5_SIZEOF_LONG_LONG

#else /* Can't find matching type for ssize_t */

error "nothing appropriate for ssize_t"

#endif
#endif

A possible solution might be to define H5_SIZEOF_SSIZE_T=1 in VTK.

[daa9ff]: Merge branch 'bug-18765-VtkItkHdf5'

Merged commits:

2015-03-10 17:09:37 Peter Neher [650735]
COMP: ITK and VTK are not using MITK HDF5 anymore