-
Hello, If I'm not mistaken cmake variable HIGHFIVE_PARALLEL_HDF5 is only used in unit testing. So setting this variable is only required if one wants to build the unit tests that require parallel hdf5. I noticed that current documentation at https://bluebrain.github.io/HighFive/index.html in section "Dependencies" mentions that this variable should be set to have parallel hdf5 feature, while the top-level README.md is ok. I believe the documentation is just slightly outdated ? Another point: if(HIGHFIVE_PARALLEL_HDF5 AND HDF5_IS_PARALLEL)
...
endif()
# instead of
if(HIGHFIVE_PARALLEL_HDF5)
...
endif() to make sure the unit tests that require parallel hdf5 are only built when HDF5 is actually parallel. Maybe the top-level CMakeLists.txt should check the case where HIGHFIVE_PARALLEL_HDF5=ON and HDF5_IS_PARALLEL=OFF and sends a FATAL_ERROR message: "You requested building parallel unit tests, but your HDF5 library is not parallel. Make sure to use HDF5_PREFER_PARALLEL=ON and a parallel HDF5 is available on your host system." |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
We're currently preparing v3.0.0. One of the important changes is the CMake code. The documentation is documentation for the last release, i.e. 2.9.0. While the README is part of the The CMake for 2.x has issues. I think some are related to The CMake for 3.x doesn't use
HighFive will then either build parallel tests if pHDF5 is available or not if it isn't. |
Beta Was this translation helpful? Give feedback.
-
ok, I saw the PR that fixes the problem. |
Beta Was this translation helpful? Give feedback.
We're currently preparing v3.0.0. One of the important changes is the CMake code. The documentation is documentation for the last release, i.e. 2.9.0. While the README is part of the
master
branch and therefore is true for v3.0.0.The CMake for 2.x has issues. I think some are related to
HIGHFIVE_PARALLEL_*
.The CMake for 3.x doesn't use
HIGHFIVE_PARALLEL_HDF5
(technically not true, but the fix is ready). Controlling the HDF5 flavour is done using the HDF5 variables, e.g.HighFive will then either build parallel tests if pHDF5 is available or not if it isn't.