Hi Mike and All,
You guys are amazing! It looks like things are moving quickly and we will have to deal with Cmake before Christmas
In HDF5 zlib and szip filters are optional; users have to specify szip, but for zlib if is different - it is added when configure finds it on the system. Other filters (nbit, fletcher32, scaleoffset, and shuffle) are included by default, but can be disabled at the configuration time by using --enable-filters flag.
Here is an excerpt from the H5pubconf.h file when I configure on Linux 32-bit without specifying location of the szip library, (zlib is available on the system):
/* Define if support for deflate (zlib) filter is enabled */
#define H5_HAVE_FILTER_DEFLATE 1
/* Define if support for Fletcher32 checksum is enabled */
#define H5_HAVE_FILTER_FLETCHER32 1
/* Define if support for nbit filter is enabled */
#define H5_HAVE_FILTER_NBIT 1
/* Define if support for scaleoffset filter is enabled */
#define H5_HAVE_FILTER_SCALEOFFSET 1
/* Define if support for shuffle filter is enabled */
#define H5_HAVE_FILTER_SHUFFLE 1
/* Define if support for szip filter is enabled */
/* #undef H5_HAVE_FILTER_SZIP */
I am not sure what you need to do in Cmake; variables shown above have to be defined/undefined depending on what a user wants to use (note: in this example, zlib is available, therefore H5_HAVE_FILTER_DEFLATE is set to 1; if for some reason it was not found, then the variable would be not defined)
Source of each files
H5Zdeflate.c
H5Zfletcher32.c
H5Zshuffle.c
H5Zszip.c
H5Znbit.c
H5Zscaleoffset.c
contains the corresponding #ifdef H5_HAVE_FILTER_* statement.
If the corresponding variable is not set up, then source is not compiled in. I guess, Cmake has to set H5_HAVE_FILTER_* to the correct value.
Did I answer your question?
What you reported sounds like a bug to me. Our tests should be aware which filters are not available and act accordingly.
Thanks again for your efforts!
Elena
···
On Nov 18, 2009, at 6:08 PM, Michael Jackson wrote:
I tried the following:
./configure --without-zlib --without-szlib --disable-hl --disable-static --disable-cxx --disable-filters
and then ran "make test" and I get failures in the tsohm.c file due to lack of filters available. With the 1.6 release I used to be able to build it this way without any problems. Now it seems that I _must_ link against at least one of the zlib or szlib libraries? Is this correct?
This is holding up the CMake port at the moment. Just trying to figure out if this is a valid configuration.
Thanks
_________________________________________________________
Mike Jackson mike.jackson@bluequartz.net
BlueQuartz Software www.bluequartz.net
Principal Software Engineer Dayton, Ohio
_______________________________________________
Hdf-forum is for HDF software users discussion.
Hdf-forum@hdfgroup.org
http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org