It seems like the content of H5pubconf.h differs between 32 & 64-bit
builds. On my Windows computer, I observe the following differences:
* H5_HAVE_SETJMP is only defined in 64-bit.
* H5_SIZEOF_SIZE_T is 8 in 64-bit and 4 in 32-bit.
I'm used to a build setup where the "include" folder can be shared
between 32- & 64-bit builds when redistributing C/C++ libraries. This
yields a folder structure with "bin", "bin64", "include", "lib" &
"lib64" folders. My impression is that this setup is fairly common on
both Windows and Linux.
Could it be possible to either (in order of preference):
* Add some preprocessor magic around the defines, so that they are
configured to correct values in both 32- & 64-bit (e.g. a cross-platform
variant of #ifdef _WIN64).
* Rename H5pubconf.h to H5pubconf[32|64].h, and add some kind of wrapper
header that includes the correct H5pubconf-variant.
* More clearly document the differences, so that library clients are
aware of these subtle differences.
Build setup:
* HDF5 1.8.11 with CMake build.
* Windows 7 SP1
* MSVC 11 (Visual Studio 2012)
Thanks in advance,
Fredrik Orderud
_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://mail.lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org