summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPariksheet Nanda <pariksheet.nanda@uconn.edu>2019-08-28 22:49:53 -0400
committerAdam J. Stewart <ajstewart426@gmail.com>2019-08-28 21:49:52 -0500
commit300d9d5a628b1e46f7321dc7a29f40706b8814e8 (patch)
treecb3b367fe550e6f115252fcb4e9ddfa49dee6ee5
parent85e13ebc03dc8433cd802d9659c6ae0569b75cbc (diff)
downloadspack-300d9d5a628b1e46f7321dc7a29f40706b8814e8.tar.gz
spack-300d9d5a628b1e46f7321dc7a29f40706b8814e8.tar.bz2
spack-300d9d5a628b1e46f7321dc7a29f40706b8814e8.tar.xz
spack-300d9d5a628b1e46f7321dc7a29f40706b8814e8.zip
hdf5: patch out mpicxx lib when +mpi~cxx fixes #12586 (#12640)
-rw-r--r--var/spack/repos/builtin/packages/hdf5/h5public-skip-mpicxx.patch11
-rw-r--r--var/spack/repos/builtin/packages/hdf5/package.py5
2 files changed, 16 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/hdf5/h5public-skip-mpicxx.patch b/var/spack/repos/builtin/packages/hdf5/h5public-skip-mpicxx.patch
new file mode 100644
index 0000000000..d609345527
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hdf5/h5public-skip-mpicxx.patch
@@ -0,0 +1,11 @@
+--- a/src/H5public.h 2019-08-28 18:51:39.393781356 -0400
++++ b/src/H5public.h 2019-08-28 20:59:50.315181711 -0400
+@@ -57,6 +57,8 @@
+ # include <stddef.h>
+ #endif
+ #ifdef H5_HAVE_PARALLEL
++# define MPICH_SKIP_MPICXX 1
++# define OMPI_SKIP_MPICXX 1
+ # include <mpi.h>
+ #ifndef MPI_FILE_NULL /*MPIO may be defined in mpi.h already */
+ # include <mpio.h>
diff --git a/var/spack/repos/builtin/packages/hdf5/package.py b/var/spack/repos/builtin/packages/hdf5/package.py
index 1e83dc8335..6c482e8a3f 100644
--- a/var/spack/repos/builtin/packages/hdf5/package.py
+++ b/var/spack/repos/builtin/packages/hdf5/package.py
@@ -111,6 +111,11 @@ class Hdf5(AutotoolsPackage):
sha256='57cee5ff1992b4098eda079815c36fc2da9b10e00a9056df054f2384c4fc7523',
when='@1.10.2%gcc@8:')
+ # Disable MPI C++ interface when C++ is disabled, otherwise downstream
+ # libraries fail to link; see https://github.com/spack/spack/issues/12586
+ patch('h5public-skip-mpicxx.patch', when='+mpi~cxx',
+ sha256='b61e2f058964ad85be6ee5ecea10080bf79e73f83ff88d1fa4b602d00209da9c')
+
filter_compiler_wrappers('h5cc', 'h5c++', 'h5fc', relative_root='bin')
def url_for_version(self, version):