From 753cf86c7fd36b1dbdd6808048aa3fed175dcce1 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Thu, 26 Feb 2026 06:40:07 -0700 Subject: [PATCH 1/7] Update LLVM to 22.1.0 in configs/sites/tier1/atlantis/packages_clang-22.1.0.yaml --- .../tier1/atlantis/packages_clang-21.1.0.yaml | 30 ---------------- .../tier1/atlantis/packages_clang-22.1.0.yaml | 34 +++++++++++++++++++ ...21.1.1.yaml => packages_clang-22.1.0.yaml} | 0 3 files changed, 34 insertions(+), 30 deletions(-) delete mode 100644 configs/sites/tier1/atlantis/packages_clang-21.1.0.yaml create mode 100644 configs/sites/tier1/atlantis/packages_clang-22.1.0.yaml rename configs/sites/tier2/bounty/{packages_clang-21.1.1.yaml => packages_clang-22.1.0.yaml} (100%) diff --git a/configs/sites/tier1/atlantis/packages_clang-21.1.0.yaml b/configs/sites/tier1/atlantis/packages_clang-21.1.0.yaml deleted file mode 100644 index 221d2f1d0..000000000 --- a/configs/sites/tier1/atlantis/packages_clang-21.1.0.yaml +++ /dev/null @@ -1,30 +0,0 @@ -packages: - all: - require: - - any_of: ['%llvm@=21.1.0'] - when: '%llvm' - mpi: - buildable: False - require: - - "openmpi@4.1.8" - llvm: - externals: - - spec: llvm@21.1.0 +flang ~libomptarget - prefix: /gpfs/neptune/spack-stack/llvm-21.1.0 - modules: - - hwloc2/2.7.0 - - llvm/21.1.0 - extra_attributes: - compilers: - c: /gpfs/neptune/spack-stack/llvm-21.1.0/bin/clang - cxx: /gpfs/neptune/spack-stack/llvm-21.1.0/bin/clang++ - fortran: /gpfs/neptune/spack-stack/llvm-21.1.0/bin/flang-new - extra_rpaths: - - /gpfs/neptune/spack-stack/llvm-21.1.0/lib - - /gpfs/neptune/spack-stack/llvm-21.1.0/lib/x86_64-unknown-linux-gnu - openmpi: - externals: - - spec: openmpi@4.1.8 ~internal-hwloc +two_level_namespace - prefix: /gpfs/neptune/spack-stack/openmpi-4.1.8/llvm-21.1.0 - modules: - - openmpi/4.1.8 diff --git a/configs/sites/tier1/atlantis/packages_clang-22.1.0.yaml b/configs/sites/tier1/atlantis/packages_clang-22.1.0.yaml new file mode 100644 index 000000000..71e1ffc18 --- /dev/null +++ b/configs/sites/tier1/atlantis/packages_clang-22.1.0.yaml @@ -0,0 +1,34 @@ +packages: + all: + require: + - any_of: ['%llvm@=22.1.0'] + when: '%llvm' + mpi: + buildable: False + require: + - "openmpi@4.1.8" + llvm: + externals: + - spec: llvm@22.1.0 +flang ~libomptarget + prefix: /gpfs/neptune/spack-stack/llvm-22.1.0 + modules: + - llvm/22.1.0 + extra_attributes: + compilers: + c: /gpfs/neptune/spack-stack/llvm-22.1.0/bin/clang + cxx: /gpfs/neptune/spack-stack/llvm-22.1.0/bin/clang++ + fortran: /gpfs/neptune/spack-stack/llvm-22.1.0/bin/flang-new + extra_rpaths: + - /gpfs/neptune/spack-stack/llvm-22.1.0/lib + - /gpfs/neptune/spack-stack/llvm-22.1.0/lib/x86_64-unknown-linux-gnu + hwloc: + buildable: False + externals: + - spec: hwloc@2.13.0 + prefix: /gpfs/neptune/spack-stack/llvm-22.1.0 + openmpi: + externals: + - spec: openmpi@4.1.8 ~internal-hwloc +two_level_namespace + prefix: /gpfs/neptune/spack-stack/openmpi-4.1.8/llvm-22.1.0 + modules: + - openmpi/4.1.8 diff --git a/configs/sites/tier2/bounty/packages_clang-21.1.1.yaml b/configs/sites/tier2/bounty/packages_clang-22.1.0.yaml similarity index 100% rename from configs/sites/tier2/bounty/packages_clang-21.1.1.yaml rename to configs/sites/tier2/bounty/packages_clang-22.1.0.yaml From da0a56e518253a155e7a6a291e6c29ce34a57adb Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Thu, 26 Feb 2026 06:40:55 -0700 Subject: [PATCH 2/7] Update LLVM to 22.1.0 in configs/sites/tier2/bounty/packages_clang-22.1.0.yaml --- .../tier2/bounty/packages_clang-22.1.0.yaml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/configs/sites/tier2/bounty/packages_clang-22.1.0.yaml b/configs/sites/tier2/bounty/packages_clang-22.1.0.yaml index 74f856b4c..b22445b75 100644 --- a/configs/sites/tier2/bounty/packages_clang-22.1.0.yaml +++ b/configs/sites/tier2/bounty/packages_clang-22.1.0.yaml @@ -1,7 +1,7 @@ packages: all: require: - - any_of: ['%llvm@=21.1.1'] + - any_of: ['%llvm@=22.1.0'] when: '%llvm' mpi: require: @@ -9,13 +9,13 @@ packages: llvm: buildable: False externals: - - spec: llvm@21.1.1 +flang ~libomptarget - prefix: /home/dom/prod/llvm-21.1.1 + - spec: llvm@22.1.0 +flang ~libomptarget + prefix: /home/dom/prod/llvm-22.1.0 extra_attributes: compilers: - c: /home/dom/prod/llvm-21.1.1/bin/clang - cxx: /home/dom/prod/llvm-21.1.1/bin/clang++ - fortran: /home/dom/prod/llvm-21.1.1/bin/flang-new + c: /home/dom/prod/llvm-22.1.0/bin/clang + cxx: /home/dom/prod/llvm-22.1.0/bin/clang++ + fortran: /home/dom/prod/llvm-22.1.0/bin/flang-new extra_rpaths: - - /home/dom/prod/llvm-21.1.1/lib - - /home/dom/prod/llvm-21.1.1/lib/x86_64-unknown-linux-gnu + - /home/dom/prod/llvm-22.1.0/lib + - /home/dom/prod/llvm-22.1.0/lib/x86_64-unknown-linux-gnu From ef81a3d7383d773eb0ebbbd6d2b0891ca18f6283 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Thu, 26 Feb 2026 06:41:25 -0700 Subject: [PATCH 3/7] Update spack-ext/lib/jcsda-emc/spack-stack/stack/compiler_utils.py: make it easier to see that there are no compiler mismatches --- spack-ext/lib/jcsda-emc/spack-stack/stack/compiler_utils.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/spack-ext/lib/jcsda-emc/spack-stack/stack/compiler_utils.py b/spack-ext/lib/jcsda-emc/spack-stack/stack/compiler_utils.py index f335212f2..013ba0f6d 100644 --- a/spack-ext/lib/jcsda-emc/spack-stack/stack/compiler_utils.py +++ b/spack-ext/lib/jcsda-emc/spack-stack/stack/compiler_utils.py @@ -8,7 +8,7 @@ from spack.provider_index import ProviderIndex from spack.extensions.stack.common import ALIASES -from spack.extensions.stack.common import RED, RESET +from spack.extensions.stack.common import GREEN, RED, RESET from spack.extensions.stack.common import get_preferred_compiler @@ -153,3 +153,5 @@ def check_preferred_compiler(): raise Exception(f"{RED}Detected {errors} compiler mismatch!{RESET}") elif errors: raise Exception(f"{RED}Detected {errors} compiler mismatches!{RESET}") + else: + logging.info(f"{GREEN}No compiler mismatches found.{RESET}") From af47d7e61769ce866ae5db2f916e32ed2a08845d Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Thu, 26 Feb 2026 09:25:50 -0700 Subject: [PATCH 4/7] Update .gitmodules and submodule pointer for repos/builtin: esmf@9.0.0b10 --- .gitmodules | 6 ++++-- repos/builtin | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.gitmodules b/.gitmodules index 2f6cb0566..dd9ac46a0 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,5 +4,7 @@ branch = spack-stack-dev [submodule "repos/builtin"] path = repos/builtin - url = https://github.com/jcsda/spack-packages - branch = spack-stack-dev + #url = https://github.com/jcsda/spack-packages + #branch = spack-stack-dev + url = https://github.com/climbfuji/spack-packages + branch = feature/esmf900b10 diff --git a/repos/builtin b/repos/builtin index 340a3da5d..657ada496 160000 --- a/repos/builtin +++ b/repos/builtin @@ -1 +1 @@ -Subproject commit 340a3da5d2471874648e2cc7e623f8da420265db +Subproject commit 657ada4964886e40a312339c6a9e2288c68a92b5 From ce958c4cf696817ee37f385c2ce7fdb35da845c6 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Thu, 26 Feb 2026 09:26:16 -0700 Subject: [PATCH 5/7] Bump NEPTUNE environments to esmf@9.0.0b10 --- configs/common/packages.yaml | 1 + configs/templates/neptune-dev-llvm/spack.yaml | 12 ++++++------ configs/templates/neptune-dev/spack.yaml | 12 ++++++------ configs/templates/neptune-ops/spack.yaml | 2 +- 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/configs/common/packages.yaml b/configs/common/packages.yaml index 201956b09..3a30a7b05 100644 --- a/configs/common/packages.yaml +++ b/configs/common/packages.yaml @@ -136,6 +136,7 @@ packages: - '@=8.8.0 snapshot=none' - '@=8.9.0 snapshot=none' - '@=8.9.1 snapshot=none' + - '@=9.0.0b10 snapshot=b10' - any_of: - 'fflags="-fp-model precise" cxxflags="-fp-model precise"' when: '%intel' diff --git a/configs/templates/neptune-dev-llvm/spack.yaml b/configs/templates/neptune-dev-llvm/spack.yaml index eb9d62e23..003650427 100644 --- a/configs/templates/neptune-dev-llvm/spack.yaml +++ b/configs/templates/neptune-dev-llvm/spack.yaml @@ -8,16 +8,16 @@ spack: include: [] specs: - - neptune-env ~debug +openmp +espc +ncview ^esmf@=8.9.1 - - neptune-env +debug +openmp +espc +ncview ^esmf@=8.9.1 - - neptune-env ~debug ~openmp +espc +ncview ^esmf@=8.9.1 - - neptune-env +debug ~openmp +espc +ncview ^esmf@=8.9.1 + - neptune-env ~debug +openmp +espc +ncview ^esmf@=9.0.0b10 + - neptune-env +debug +openmp +espc +ncview ^esmf@=9.0.0b10 + - neptune-env ~debug ~openmp +espc +ncview ^esmf@=9.0.0b10 + - neptune-env +debug ~openmp +espc +ncview ^esmf@=9.0.0b10 # Until we can build the entire set of dependencies for # neptune-python-env and jedi-neptune-env, we need to # add the required packages for the NEPTUNE standalone # model manually - #- neptune-python-env ^neptune-env ~debug +openmp +espc +ncview ^esmf@=8.9.1 - #- jedi-neptune-env +adp ^neptune-env ~debug +openmp +espc +ncview ^esmf@=8.9.1 + #- neptune-python-env ^neptune-env ~debug +openmp +espc +ncview ^esmf@=9.0.0b10 + #- jedi-neptune-env +adp ^neptune-env ~debug +openmp +espc +ncview ^esmf@=9.0.0b10 - py-numpy - crtm@3.1.3 diff --git a/configs/templates/neptune-dev/spack.yaml b/configs/templates/neptune-dev/spack.yaml index 36c13a63d..a6ddbefd1 100644 --- a/configs/templates/neptune-dev/spack.yaml +++ b/configs/templates/neptune-dev/spack.yaml @@ -8,12 +8,12 @@ spack: include: [] specs: - - neptune-env ~debug +openmp +espc +ncview ^esmf@=8.9.1 - - neptune-env +debug +openmp +espc +ncview ^esmf@=8.9.1 - - neptune-env ~debug ~openmp +espc +ncview ^esmf@=8.9.1 - - neptune-env +debug ~openmp +espc +ncview ^esmf@=8.9.1 - - neptune-python-env +gittools ^neptune-env ~debug +openmp +espc +ncview ^esmf@=8.9.1 - - jedi-neptune-env +adp +jedi ^neptune-env ~debug +openmp +espc +ncview ^esmf@=8.9.1 + - neptune-env ~debug +openmp +espc +ncview ^esmf@=9.0.0b10 + - neptune-env +debug +openmp +espc +ncview ^esmf@=9.0.0b10 + - neptune-env ~debug ~openmp +espc +ncview ^esmf@=9.0.0b10 + - neptune-env +debug ~openmp +espc +ncview ^esmf@=9.0.0b10 + - neptune-python-env +gittools ^neptune-env ~debug +openmp +espc +ncview ^esmf@=9.0.0b10 + - jedi-neptune-env +adp +jedi ^neptune-env ~debug +openmp +espc +ncview ^esmf@=9.0.0b10 - crtm@3.1.3 packages: diff --git a/configs/templates/neptune-ops/spack.yaml b/configs/templates/neptune-ops/spack.yaml index 51b7264b2..58f7d298a 100644 --- a/configs/templates/neptune-ops/spack.yaml +++ b/configs/templates/neptune-ops/spack.yaml @@ -8,7 +8,7 @@ spack: include: [] specs: - - neptune-env ~debug +openmp +espc ~ncview ^esmf@=8.9.1 + - neptune-env ~debug +openmp +espc ~ncview ^esmf@=9.0.0b10 packages: # Turn off python variant for esmf From 21b4ccd088c4396ea1012f5207fc247b8e51e8a4 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Thu, 26 Feb 2026 15:43:36 -0700 Subject: [PATCH 6/7] Revert .gitmodules and update submodule pointer for repos/builtin --- .gitmodules | 6 ++---- repos/builtin | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/.gitmodules b/.gitmodules index dd9ac46a0..2f6cb0566 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,7 +4,5 @@ branch = spack-stack-dev [submodule "repos/builtin"] path = repos/builtin - #url = https://github.com/jcsda/spack-packages - #branch = spack-stack-dev - url = https://github.com/climbfuji/spack-packages - branch = feature/esmf900b10 + url = https://github.com/jcsda/spack-packages + branch = spack-stack-dev diff --git a/repos/builtin b/repos/builtin index 657ada496..d437c53db 160000 --- a/repos/builtin +++ b/repos/builtin @@ -1 +1 @@ -Subproject commit 657ada4964886e40a312339c6a9e2288c68a92b5 +Subproject commit d437c53db6c031f06b003d2de69c083ee5615c1e From 87b9e4c5ddf86eaef62470e1080332d494339c9c Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Fri, 27 Feb 2026 05:59:35 -0700 Subject: [PATCH 7/7] Update util/nrl/batch_install.sh for LLVM 22 on Atlantis, Bounty --- util/nrl/batch_install.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/util/nrl/batch_install.sh b/util/nrl/batch_install.sh index 785b67ecb..1cb977eae 100755 --- a/util/nrl/batch_install.sh +++ b/util/nrl/batch_install.sh @@ -110,7 +110,7 @@ fi case ${SPACK_STACK_BATCH_HOST} in atlantis) - SPACK_STACK_BATCH_COMPILERS=("oneapi@=2024.2.1" "oneapi@=2025.3.0" "gcc@=13.4.0" "clang@=21.1.0") + SPACK_STACK_BATCH_COMPILERS=("oneapi@=2024.2.1" "oneapi@=2025.3.0" "gcc@=13.4.0" "clang@=22.1.0") SPACK_STACK_BATCH_TEMPLATES=("neptune-dev" "neptune-dev-llvm" "unified-dev" "cylc-dev") SPACK_STACK_MODULE_CHOICE="lmod" SPACK_STACK_BOOTSTRAP_MIRROR="/neptune_diagnostics/spack-stack/bootstrap-mirror" @@ -166,7 +166,7 @@ case ${SPACK_STACK_BATCH_HOST} in SPACK_STACK_CARGO_MIRROR="/home/dom/prod/spack-cargo-mirror" ;; bounty) - SPACK_STACK_BATCH_COMPILERS=("oneapi@=2025.3.0" "gcc@=13.3.1" "clang@=21.1.1") + SPACK_STACK_BATCH_COMPILERS=("oneapi@=2025.3.0" "gcc@=13.3.1" "clang@=22.1.1") SPACK_STACK_BATCH_TEMPLATES=("neptune-dev" "neptune-dev-llvm" "unified-dev" "cylc-dev") SPACK_STACK_MODULE_CHOICE="tcl" SPACK_STACK_BOOTSTRAP_MIRROR="/home/dom/prod/spack-bootstrap-mirror" @@ -412,9 +412,9 @@ for compiler in "${SPACK_STACK_BATCH_COMPILERS[@]}"; do umask 0022 module purge case ${compiler} in - clang@=21.1.0) - module use /gpfs/neptune/spack-stack/llvm-21.1.0/modulefiles - module use /gpfs/neptune/spack-stack/openmpi-4.1.8/llvm-21.1.0/modulefiles + clang@=22.1.0) + module use /gpfs/neptune/spack-stack/llvm-22.1.0/modulefiles + module use /gpfs/neptune/spack-stack/openmpi-4.1.8/llvm-22.1.0/modulefiles ;; gcc@=13.4.0) module use /gpfs/neptune/spack-stack/gcc-13.4.0/modulefiles