summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKelly (KT) Thompson <KineticTheory@users.noreply.github.com>2017-12-08 01:55:06 -0700
committerMassimiliano Culpo <massimiliano.culpo@gmail.com>2017-12-08 09:55:06 +0100
commit147a12dd061917a74f346e0e578c66708203853e (patch)
tree0d6f8bceb6b65757de9c2df1807442fdecdcfe2c
parenta593553d48e51c67cdcde73c07c9ce0babb2e647 (diff)
downloadspack-147a12dd061917a74f346e0e578c66708203853e.tar.gz
spack-147a12dd061917a74f346e0e578c66708203853e.tar.bz2
spack-147a12dd061917a74f346e0e578c66708203853e.tar.xz
spack-147a12dd061917a74f346e0e578c66708203853e.zip
Provide a patch to allow hdf5@1.10.1 to build with intel/18.0.1. (#6583)
This is known issue. See: https://software.intel.com/en-us/forums/intel-fortran-compiler-for-linux-and-mac-os-x/topic/747951.
-rw-r--r--var/spack/repos/builtin/packages/hdf5/h5f90global-mult-obj-same-equivalence-same-common-block.patch16
-rw-r--r--var/spack/repos/builtin/packages/hdf5/package.py6
2 files changed, 22 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/hdf5/h5f90global-mult-obj-same-equivalence-same-common-block.patch b/var/spack/repos/builtin/packages/hdf5/h5f90global-mult-obj-same-equivalence-same-common-block.patch
new file mode 100644
index 0000000000..8bf5c142e9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hdf5/h5f90global-mult-obj-same-equivalence-same-common-block.patch
@@ -0,0 +1,16 @@
+diff --git a/fortran/src/H5f90global.F90 b/fortran/src/H5f90global.F90
+index dd2b171..629418a 100644
+--- a/fortran/src/H5f90global.F90
++++ b/fortran/src/H5f90global.F90
+@@ -142,10 +142,7 @@ MODULE H5GLOBAL
+
+ INTEGER(HID_T), DIMENSION(PREDEF_TYPES_LEN) :: predef_types
+ EQUIVALENCE (predef_types(1), H5T_NATIVE_INTEGER_KIND(1))
+- EQUIVALENCE (predef_types(2), H5T_NATIVE_INTEGER_KIND(2))
+- EQUIVALENCE (predef_types(3), H5T_NATIVE_INTEGER_KIND(3))
+- EQUIVALENCE (predef_types(4), H5T_NATIVE_INTEGER_KIND(4))
+- EQUIVALENCE (predef_types(5), H5T_NATIVE_INTEGER_KIND(5))
++ ! EQUIVALENCE predef_types(2:5) are unnecessary and violate the standard
+ EQUIVALENCE (predef_types(6), H5T_NATIVE_INTEGER)
+ EQUIVALENCE (predef_types(7), H5T_NATIVE_REAL)
+ EQUIVALENCE (predef_types(8), H5T_NATIVE_DOUBLE)
diff --git a/var/spack/repos/builtin/packages/hdf5/package.py b/var/spack/repos/builtin/packages/hdf5/package.py
index 5a15b33d98..6477d9cee2 100644
--- a/var/spack/repos/builtin/packages/hdf5/package.py
+++ b/var/spack/repos/builtin/packages/hdf5/package.py
@@ -90,6 +90,12 @@ class Hdf5(AutotoolsPackage):
# described in #2 we allow for such combination.
# conflicts('+mpi+cxx')
+ # There are known build failures with intel@18.0.1. This issue is
+ # discussed and patch is provided at
+ # https://software.intel.com/en-us/forums/intel-fortran-compiler-for-linux-and-mac-os-x/topic/747951.
+ patch('h5f90global-mult-obj-same-equivalence-same-common-block.patch',
+ when='@1.10.1%intel@18')
+
def url_for_version(self, version):
url = "https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-{0}/hdf5-{1}/src/hdf5-{1}.tar.gz"
return url.format(version.up_to(2), version)