Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mom5: add new dependencies access-fms & access-generic-tracers #166

Merged
merged 1 commit into from
Nov 18, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions packages/mom5/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ class Mom5(MakefilePackage):
version("access-esm1.6", branch="master")

variant("restart_repro", default=True, description="Reproducible restart build.")
variant("access-gtracers", default=False, description="Use ACCESS-NRI's fork of GFDL-generic-tracers.")
# The following two variants are not applicable when version is "access-esm1.5":
variant("deterministic", default=False, description="Deterministic build.")
variant("optimisation_report", default=False, description="Generate optimisation reports.")
Expand All @@ -30,6 +31,9 @@ class Mom5(MakefilePackage):
multi=False,
description="Build MOM5 to support a particular use case.")

depends_on("access-fms", when="+access-gtracers")
depends_on("access-generic-tracers", when="+access-gtracers")

with when("@:access-esm0,access-esm2:"):
depends_on("netcdf-c@4.7.4:")
depends_on("netcdf-fortran@4.5.2:")
Expand Down Expand Up @@ -82,6 +86,10 @@ def edit(self, spec, prefix):
FFLAGS_OPT = "-g0 -O0 -xCORE-AVX2 -debug none -check none"
CFLAGS_OPT = "-O0 -debug none -xCORE-AVX2"

if self.spec.satisfies("+access-gtracers"):
ideps.extend(["access-fms", "access-generic-tracers"])
ldeps.extend(["access-fms", "access-generic-tracers"])

incs = " ".join([istr] + [(spec[d].headers).cpp_flags for d in ideps])
libs = " ".join([(spec[d].libs).ld_flags for d in ldeps])

Expand Down Expand Up @@ -488,6 +496,10 @@ def build(self, spec, prefix):
build = Executable("./MOM_compile.csh")
if "+restart_repro" in self.spec:
build.add_default_env("REPRO", "true")

if self.spec.satisfies("+access-gtracers"):
build.add_default_env("SPACK_BUILD", "true")
harshula marked this conversation as resolved.
Show resolved Hide resolved

if not self.spec.satisfies("@access-esm1.5"):
# The MOM5 commit d7ba13a3f364ce130b6ad0ba813f01832cada7a2
# requires the --no_version switch to avoid git hashes being
Expand Down
Loading