summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/hdf5
diff options
context:
space:
mode:
authorSeth R. Johnson <johnsonsr@ornl.gov>2022-02-21 03:08:08 -0500
committerGitHub <noreply@github.com>2022-02-21 09:08:08 +0100
commit7459aa6c95fddafd9f7d3f46b2fe37d68e25ae01 (patch)
treedf588c1493d09b51425e35755afed669c32683c4 /var/spack/repos/builtin/packages/hdf5
parent2852126196ae43e645c2b12ee5cd719ea292c6a3 (diff)
downloadspack-7459aa6c95fddafd9f7d3f46b2fe37d68e25ae01.tar.gz
spack-7459aa6c95fddafd9f7d3f46b2fe37d68e25ae01.tar.bz2
spack-7459aa6c95fddafd9f7d3f46b2fe37d68e25ae01.tar.xz
spack-7459aa6c95fddafd9f7d3f46b2fe37d68e25ae01.zip
Various package fixes for macOS (#29024)
* trilinos: disable dl on macOS * py-sphinx-argparse: add explicit poetry dependency * libzmq: fix libbsd dependency libbsd is *always* required when +libbsd (introduced in #28503) . #20893 had previously removed the macos dependency because libbsd wasn't always enabled. Libbsd support is only available after 4.3.2 so change it to a conflict rather than bumping the dependency. * hdf5: work around GCC11.2 monterey fortran bug * go-bootstrap: mark conflict for monterey
Diffstat (limited to 'var/spack/repos/builtin/packages/hdf5')
-rw-r--r--var/spack/repos/builtin/packages/hdf5/fortran-kinds-2.patch24
-rw-r--r--var/spack/repos/builtin/packages/hdf5/package.py8
2 files changed, 32 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/hdf5/fortran-kinds-2.patch b/var/spack/repos/builtin/packages/hdf5/fortran-kinds-2.patch
new file mode 100644
index 0000000000..caee520103
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hdf5/fortran-kinds-2.patch
@@ -0,0 +1,24 @@
+From 598df49b738fd99df9f2671e4e967fd9c33ae8a9 Mon Sep 17 00:00:00 2001
+From: Seth R Johnson <johnsonsr@ornl.gov>
+Date: Wed, 16 Feb 2022 20:38:03 -0500
+Subject: [PATCH] Close file to work around GCC11.2/macOS12 bug
+
+---
+ m4/aclocal_fc.f90 | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/m4/aclocal_fc.f90 b/m4/aclocal_fc.f90
+index e9a11c0ab5..bfda49aa40 100644
+--- a/m4/aclocal_fc.f90
++++ b/m4/aclocal_fc.f90
+@@ -151,6 +151,7 @@ PROGRAM FC_AVAIL_KINDS
+ WRITE(8,'(I0)') max_decimal_prec
+ WRITE(8,'(I0)') num_ikinds
+ WRITE(8,'(I0)') num_rkinds
++ CLOSE(8)
+ END PROGRAM FC_AVAIL_KINDS
+ !---- END ----- Determine the available KINDs for REALs and INTEGERs
+
+--
+2.32.0
+
diff --git a/var/spack/repos/builtin/packages/hdf5/package.py b/var/spack/repos/builtin/packages/hdf5/package.py
index 47af3ea830..c177fbc3da 100644
--- a/var/spack/repos/builtin/packages/hdf5/package.py
+++ b/var/spack/repos/builtin/packages/hdf5/package.py
@@ -162,6 +162,14 @@ class Hdf5(CMakePackage):
patch('fortran-kinds.patch', when='@1.10.7')
+ # This patch may only be needed with GCC11.2 on macOS, but it's valid for
+ # any of the head HDF5 versions as of 12/2021. Since it's impossible to
+ # tell what Fortran version is part of a mixed apple-clang toolchain on
+ # macOS (which is the norm), and this might be an issue for other compilers
+ # as well, we just apply it to all platforms.
+ # See https://github.com/HDFGroup/hdf5/issues/1157
+ patch('fortran-kinds-2.patch', when='@1.10.8,1.12.1')
+
# The argument 'buf_size' of the C function 'h5fget_file_image_c' is
# declared as intent(in) though it is modified by the invocation. As a
# result, aggressive compilers such as Fujitsu's may do a wrong