Was/Is there any discussion around the idea of installing the HDF5 headers into a “sandboxed” include directory such as “hdf5”? If we look at projects like LLVM when they install their headers they go into clang, clang-c, lld, llvm, etc. Maybe my need for hyper organization is driving this but I just worry about clashes with other include headers from other projects as a possibility. I’ve only had that happen a few times in 12 years.
The migration could certainly be a pain or maybe not. If it happens at a major version (1.14) then the FindHDF5.cmake could certainly be updated to reflect the new spot.
Also, developers could use #include <hdf5/hdf5.h> if they wanted.
Just a random thought that I have been sitting on for about 12 years now…
Not quite certain what you mean by installing the header files into sandbox.
Nevertheless it is possible to install most versions, – I picked 1 git commit per week, starting from year 2003 – into a separate directory, then individually linking against to a recent openMPI and then linking IOR and MACSio against it. This was a part of a massive regression test for pHDF5, to examine if there was any significant performance fluctuations over the past 17 years. Here is the plot – gaps indicate failed compile.
During the development phase I first used gnu configure --prefix option, then tried cmake as well. If I recall @byrn, @lrknox and @les.kurz helped me through the somewhat bumpy ride – and I am thankful for their help.
So if you meant a feature that allows you to compile HDF5 in an isolated environment, then yes, it is available.
As usual when I’m too busy, I didn’t really give enough details so I’ll be more precise. Currently when you build and install HDF5, let’s say into /usr/local you will get the headers installed loosely into /usr/local/include. I would like to change that default to /usr/local/include/hdf5/*.h
Try this: ./configure --prefix=/usr/local --includedir=/usr/local/hdf5/include [...] make -jN && make install where N is the core count, max 32 – on a recent XEON skylake it turned out around 32 cores the compile speed increase is less dramatic.