Skip to content
Merged
Show file tree
Hide file tree
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
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
spack:
specs:
- 'access-esm1p6 %{{ intel_compiler }}'
- 'access-esm1p6 %{{ intel_compiler }} ^cice5 nxglob=360 nyglob=300 blckx=15 blcky=300 mxblcks=1'
- 'access-esm1p6 %{{ intel_compiler }} ^cice5 build_system=makefile'
packages:
cice5:
require:
'@git.access-esm1.6=stable'
all:
require:
- '%{{ intel_compiler }}'
Expand Down
34 changes: 23 additions & 11 deletions packages/cice5/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,20 @@ class Cice5(CMakePackage, MakefilePackage):
license("BSD-3-Clause", checked_by="anton-seaice")

version("stable", branch="master", preferred=True)
version("2026.01.000", tag="2026.01.000", commit="cf5df9d4d26265dc5c79e558e5a67834b51fd38d")
# TODO: the versions below can be removed once we are convinced they are not in use anywhere
version("access-om2", branch="master")
version("access-esm1.6", branch="access-esm1.6")

# by default, keep existing processor layout defined in makefile
# if nxglob, nyglob, blckx, blcky, mxblcks are supplied, then spack will switch to cmake
build_system("makefile", "cmake", default="makefile")

# TODO: for first numerical release:
# conflicts(
# "build_system=cmake",
# when="@:2025.12",
# msg="cmake build not included in this version"
# )
conflicts(
"build_system=cmake",
when="@:2025.12",
msg="cmake build not included in this version, use makefile"
)

variant(
"model",
Expand Down Expand Up @@ -87,15 +90,24 @@ class Cice5(CMakePackage, MakefilePackage):
depends_on("oasis3-mct+deterministic", when="+deterministic")
depends_on("oasis3-mct~deterministic", when="~deterministic")

with when("model=access-om2"):
# TODO: For initial verification we are going to use static pio.
# Eventually we plan to move to shared pio
# ~shared requires: https://github.com/spack/spack/pull/34837
# With access-om2 and makefile, always use PIO
# With cmake, can be configued to use NetCDF or PIO
# For release 2026.01 and later, needs parallelio 2.6.8
# TODO: For initial verification we are going to use static pio.
# Eventually we plan to move to shared pio
# ~shared requires: https://github.com/spack/spack/pull/34837
with when("model=access-om2 build_system=makefile"):
depends_on("parallelio~pnetcdf~timing~shared")
depends_on("parallelio@2.6.8:", when="@2026.01:")

with when("io_type=PIO"):
depends_on("parallelio~pnetcdf~timing~shared")
depends_on("parallelio@2.6.8:", when="@2026.01:")

with when("model=access-om2"):
depends_on("libaccessom2+deterministic", when="+deterministic")
depends_on("libaccessom2~deterministic", when="~deterministic")


class CMakeBuilder(cmake.CMakeBuilder):

def cmake_args(self):
Expand Down