diff options
author | Alex Richert <82525672+AlexanderRichert-NOAA@users.noreply.github.com> | 2023-01-10 05:04:16 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-10 14:04:16 +0100 |
commit | cc333b600c797264aec7ca6f0d77cff1fb658c38 (patch) | |
tree | fe392e0f79eddfd40a21429232778ebfa52f8ae1 /var | |
parent | 006969a8cd0e5a1d80eb1ace005a49611d5d5d6e (diff) | |
download | spack-cc333b600c797264aec7ca6f0d77cff1fb658c38.tar.gz spack-cc333b600c797264aec7ca6f0d77cff1fb658c38.tar.bz2 spack-cc333b600c797264aec7ca6f0d77cff1fb658c38.tar.xz spack-cc333b600c797264aec7ca6f0d77cff1fb658c38.zip |
Add variants for overriding ESMF_OS and ESMF_COMM for ESMF package (#34808)
* Add variants for overriding ESMF_OS and ESMF_COMM for ESMF package
* Add doco for esmf_os/esmf_comm variants
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/repos/builtin/packages/esmf/package.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/esmf/package.py b/var/spack/repos/builtin/packages/esmf/package.py index 31c97b2003..4d7ef3bccb 100644 --- a/var/spack/repos/builtin/packages/esmf/package.py +++ b/var/spack/repos/builtin/packages/esmf/package.py @@ -90,6 +90,11 @@ class Esmf(MakefilePackage): ) variant("debug", default=False, description="Make a debuggable version of the library") variant("shared", default=True, description="Build shared library") + # 'esmf_comm' and 'esmf_os' variants allow override values for their corresponding + # build environment variables. Documentation, including valid values, can be found at + # https://earthsystemmodeling.org/docs/release/latest/ESMF_usrdoc/node10.html#SECTION000105000000000000000 + variant("esmf_comm", default="auto", description="Override for ESMF_COMM variable") + variant("esmf_os", default="auto", description="Override for ESMF_OS variable") # Required dependencies depends_on("zlib") @@ -251,6 +256,11 @@ class Esmf(MakefilePackage): if self.compiler.name == "cce" or "^cray-mpich" in self.spec: os.environ["ESMF_OS"] = "Unicos" + # Allow override of ESMF_OS: + os_variant = spec.variants["esmf_os"].value + if os_variant != "auto": + os.environ["ESMF_OS"] = os_variant + ####### # MPI # ####### @@ -284,6 +294,11 @@ class Esmf(MakefilePackage): # Force use of the single-processor MPI-bypass library. os.environ["ESMF_COMM"] = "mpiuni" + # Allow override of ESMF_COMM: + comm_variant = spec.variants["esmf_comm"].value + if comm_variant != "auto": + os.environ["ESMF_COMM"] = comm_variant + ########## # LAPACK # ########## |