diff options
author | Jared Popelar <jdpopelar@gmail.com> | 2022-11-17 11:40:53 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-17 10:40:53 -0800 |
commit | 381bedf3693bbd228915c28fc47d73dbd60af1cd (patch) | |
tree | b4ce064504f2208f2a1deef48085378808b1dc5a /var/spack/repos/builtin/packages/hdf5 | |
parent | 6811651a0f546b6c59f421f9a92828a108b4f8c8 (diff) | |
download | spack-381bedf3693bbd228915c28fc47d73dbd60af1cd.tar.gz spack-381bedf3693bbd228915c28fc47d73dbd60af1cd.tar.bz2 spack-381bedf3693bbd228915c28fc47d73dbd60af1cd.tar.xz spack-381bedf3693bbd228915c28fc47d73dbd60af1cd.zip |
Hdf5 package: build on Windows (#31141)
* Enable hdf5 build (including +mpi) on Windows
* This includes updates to hdf5 dependencies openssl (minor edit) and
bzip2 (more-extensive edits)
* Add binary-based installation of msmpi (this is currently the only
supported MPI implementation in Spack for Windows). Note that this
does not install to the Spack-specified prefix. This implementation
will be replaced with a source-based implementation
Co-authored-by: John Parent <john.parent@kitware.com>
Diffstat (limited to 'var/spack/repos/builtin/packages/hdf5')
-rw-r--r-- | var/spack/repos/builtin/packages/hdf5/package.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/var/spack/repos/builtin/packages/hdf5/package.py b/var/spack/repos/builtin/packages/hdf5/package.py index dd47e2bd4d..c716e2b90b 100644 --- a/var/spack/repos/builtin/packages/hdf5/package.py +++ b/var/spack/repos/builtin/packages/hdf5/package.py @@ -196,13 +196,16 @@ class Hdf5(CMakePackage): depends_on("cmake@3.12:", type="build") + depends_on("msmpi", when="+mpi platform=windows") depends_on("mpi", when="+mpi") depends_on("java", type=("build", "run"), when="+java") depends_on("szip", when="+szip") depends_on("zlib@1.1.2:") # The compiler wrappers (h5cc, h5fc, etc.) run 'pkg-config'. - depends_on("pkgconfig", type="run") + # Skip this on Windows since pkgconfig is autotools + for plat in ["cray", "darwin", "linux"]: + depends_on("pkgconfig", when="platform=%s" % plat, type="run") conflicts("api=v114", when="@1.6:1.12", msg="v114 is not compatible with this release") conflicts("api=v112", when="@1.6:1.10", msg="v112 is not compatible with this release") @@ -498,7 +501,7 @@ class Hdf5(CMakePackage): if api != "default": args.append(self.define("DEFAULT_API_VERSION", api)) - if "+mpi" in spec: + if "+mpi" in spec and "platform=windows" not in spec: args.append(self.define("CMAKE_C_COMPILER", spec["mpi"].mpicc)) if "+cxx" in self.spec: @@ -567,7 +570,7 @@ class Hdf5(CMakePackage): r"(Requires(?:\.private)?:.*)(hdf5[^\s,]*)(?:-[^\s,]*)(.*)", r"\1\2\3", *pc_files, - backup=False + backup=False, ) # Create non-versioned symlinks to the versioned pkg-config files: |