DUNE-DAQ / daq-release

Scripts and configuration files for the DUNE DAQ release
https://dune-daq-sw.readthedocs.io/en/latest/packages/daq-release/
2 stars 0 forks source link

False warning given in when building hdf5-dependent packages in a work area due to faulty test #326

Closed jcfreeman2 closed 7 months ago

jcfreeman2 commented 10 months ago

To be more specific, if you do the following: 1) Build a repo in your work area which depends (ultimately) on hdf5, e.g. hdf5libs 2) Add another repo and build it without the --clean option, e.g. dfmodules

...you get this message during the second build:

CMake Warning at /cvmfs/dunedaq.opensciencegrid.org/tools/dbt/v7.4.0/cmake/DAQTopprojHelpers.cmake:30 (_message):
  HDF5 found for language C is not parallel but previously found
  language is parallel.

...where this warning is illegitimate. The reason for this is that CMake's FindHDF5.cmake file tries locally building and running a small program to check if HDF5_C_IS_PARALLEL should be set to true using a function called _HDF5_test_regular_compiler_C, but it doesn't provide the needed include/link info for the build to work. Had the build worked, HDF5_C_IS_PARALLEL would indeed be set to true, as its simply checking whether hdf5.h has H5_HAVE_PARALLEL #define'd (which is the case, as I've independently verified).

Obviously we should patch FindHDF5.cmake to get rid of this false warning. The question is, is it worth the effort to try fixing the test, or should we just drop it since our hdf5.h gives us H5_HAVE_PARALLEL #define'd and this isn't planned to change.

jcfreeman2 commented 10 months ago

See also Kurt's comments at https://github.com/DUNE-DAQ/daq-cmake/issues/102

jcfreeman2 commented 7 months ago

Closing this due to its low priority.