diff options
author | Thomas-Ulrich <ulrich@geophysik.uni-muenchen.de> | 2023-11-03 14:23:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-03 14:23:49 +0100 |
commit | 0f1898c82a92c45af9e7d70752ba4158b4b3fe0f (patch) | |
tree | ca6c75206c2d11796f65cddc72d81decb4091d69 /var | |
parent | db16335aec9add0ce838f9fcd4eb426352e35b07 (diff) | |
download | spack-0f1898c82a92c45af9e7d70752ba4158b4b3fe0f.tar.gz spack-0f1898c82a92c45af9e7d70752ba4158b4b3fe0f.tar.bz2 spack-0f1898c82a92c45af9e7d70752ba4158b4b3fe0f.tar.xz spack-0f1898c82a92c45af9e7d70752ba4158b4b3fe0f.zip |
xdmf3: fix compilation with hdf5@1.10 and above (#37551)
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/repos/builtin/packages/xdmf3/fix_hdf5_hid_t.diff | 40 | ||||
-rw-r--r-- | var/spack/repos/builtin/packages/xdmf3/package.py | 8 |
2 files changed, 45 insertions, 3 deletions
diff --git a/var/spack/repos/builtin/packages/xdmf3/fix_hdf5_hid_t.diff b/var/spack/repos/builtin/packages/xdmf3/fix_hdf5_hid_t.diff new file mode 100644 index 0000000000..8323ddda26 --- /dev/null +++ b/var/spack/repos/builtin/packages/xdmf3/fix_hdf5_hid_t.diff @@ -0,0 +1,40 @@ +diff --git a/core/XdmfHDF5Controller.hpp b/core/XdmfHDF5Controller.hpp +index c5c15d0a..496cc80d 100644 +--- a/core/XdmfHDF5Controller.hpp ++++ b/core/XdmfHDF5Controller.hpp +@@ -27,13 +27,14 @@ + // C Compatible Includes + #include "XdmfCore.hpp" + #include "XdmfHeavyDataController.hpp" ++#include <cstdint> + + // So that hdf5 does not need to be included in the header files + // It would add a dependancy to programs that use Xdmf + #ifndef _H5Ipublic_H + #ifndef XDMF_HID_T + #define XDMF_HID_T +- typedef int hid_t; ++ typedef int64_t hid_t; + #endif + #endif + +diff --git a/core/XdmfHDF5Writer.hpp b/core/XdmfHDF5Writer.hpp +index cfbec6f4..f83aa0de 100644 +--- a/core/XdmfHDF5Writer.hpp ++++ b/core/XdmfHDF5Writer.hpp +@@ -28,13 +28,14 @@ + #include "XdmfCore.hpp" + #include "XdmfHeavyDataWriter.hpp" + #include "XdmfHeavyDataController.hpp" ++#include <cstdint> + + // So that hdf5 does not need to be included in the header files + // It would add a dependancy to programs that use Xdmf + #ifndef _H5Ipublic_H + #ifndef XDMF_HID_T + #define XDMF_HID_T +- typedef int hid_t; ++ typedef int64_t hid_t; + #endif + #endif + diff --git a/var/spack/repos/builtin/packages/xdmf3/package.py b/var/spack/repos/builtin/packages/xdmf3/package.py index 8a84aa27f1..ba54eed841 100644 --- a/var/spack/repos/builtin/packages/xdmf3/package.py +++ b/var/spack/repos/builtin/packages/xdmf3/package.py @@ -30,8 +30,10 @@ class Xdmf3(CMakePackage): # See https://github.com/spack/spack/pull/22303 for reference depends_on(Boost.with_default_variants) depends_on("mpi", when="+mpi") - depends_on("hdf5+mpi", when="+mpi") - depends_on("hdf5~mpi", when="~mpi") + depends_on("hdf5@1.10:+mpi", when="+mpi") + depends_on("hdf5@1.10:~mpi", when="~mpi") + # motivated by discussion in https://gitlab.kitware.com/xdmf/xdmf/-/issues/28 + patch("fix_hdf5_hid_t.diff") def cmake_args(self): """Populate cmake arguments for XDMF.""" @@ -42,7 +44,7 @@ class Xdmf3(CMakePackage): "-DXDMF_BUILD_UTILS=ON", "-DXDMF_WRAP_JAVA=OFF", "-DXDMF_WRAP_PYTHON=OFF", - "-DXDMF_BUILD_TESTING=ON", + "-DXDMF_BUILD_TESTING=OFF", ] return cmake_args |