Skip to content

Add climtools uenv #3

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

Open
wants to merge 15 commits into
base: main
Choose a base branch
from
Open
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
7 changes: 7 additions & 0 deletions config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,10 @@ uenvs:
deploy:
balfrin: [a100]
develop: False
climtools:
"25.2":
recipes:
gh200: '25.2/gh200'
deploy:
santis: [gh200]
develop: False
5 changes: 5 additions & 0 deletions recipes/climtools/25.2/gh200/compilers.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
bootstrap:
spec: [email protected]
gcc:
specs:
- gcc@13
6 changes: 6 additions & 0 deletions recipes/climtools/25.2/gh200/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
name: climtools
spack:
commit: v0.22.3
repo: https://github.com/spack/spack.git
store: /user-environment
description: C2SM climate tools
32 changes: 32 additions & 0 deletions recipes/climtools/25.2/gh200/environments.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
gcc-env:
compiler:
- toolchain: gcc
spec: gcc
mpi:
spec: [email protected]
gpu: false
unify: true
specs:
# Info about versions for later update:
# - the eccodes version is pinned to 2.36.4 to match the icon/25.2 recipe
# - the python minor version is set to the latest possible spack accepts
# - netcdf versions are pinned for "documentation" as they could be sensitive
# but should be updated to the latest possible
- hdf5 +szip +hl
- [email protected]
- [email protected]
- [email protected]
- ncview
- cdo
- nco
- [email protected]
- [email protected] +tools +aec +openmp jp2k=jasper
- git-lfs
- [email protected]
views:
default:
link: roots
uenv:
add_compilers: true
prefix_paths:
LD_LIBRARY_PATH: [lib, lib64]
23 changes: 23 additions & 0 deletions recipes/climtools/25.2/gh200/modules.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
modules:
# Paths to check when creating modules for all module sets
prefix_inspections:
bin:
- PATH
lib:
- LD_LIBRARY_PATH
lib64:
- LD_LIBRARY_PATH

default:
arch_folder: false
# Where to install modules
roots:
tcl: /user-environment/modules
tcl:
all:
autoload: none
hash_length: 0
exclude_implicits: true
exclude: ['%[email protected]', 'gcc %[email protected]']
projections:
all: '{name}/{version}'
12 changes: 12 additions & 0 deletions recipes/climtools/25.2/gh200/pre-install
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/bash

packages=("icontools")
SPACK_C2SM_TAG="v0.22.2.2"

git clone -b ${SPACK_C2SM_TAG} https://github.com/C2SM/spack-c2sm.git

for package in "${packages[@]}"; do
cp -r spack-c2sm/repos/c2sm/packages/"${package}" store/repo/packages
done

rm -rf spack-c2sm
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/cmake/ecbuild_append_to_rpath.cmake
+++ b/cmake/ecbuild_append_to_rpath.cmake
@@ -31,7 +31,7 @@ function( _path_append var path )
else()
list( FIND ${var} ${path} _found )
if( _found EQUAL "-1" )
- set( ${var} "${${var}}:${path}" PARENT_SCOPE )
+ set( ${var} "${${var}};${path}" PARENT_SCOPE )
endif()
endif()
endfunction()
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -43,6 +43,18 @@ ecbuild_add_option( FEATURE JPG
DESCRIPTION "support for JPG decoding/encoding"
DEFAULT ON
)
+# Options related to JPG. The Jasper and OpenJPEG libraries
+ecbuild_add_option( FEATURE JPG_LIBJASPER
+ DESCRIPTION "Support for JPG decoding/encoding with the Jasper library"
+ CONDITION ENABLE_JPG
+ DEFAULT ON
+)
+ecbuild_add_option( FEATURE JPG_LIBOPENJPEG
+ DESCRIPTION "Support for JPG decoding/encoding with the OpenJPEG library"
+ CONDITION ENABLE_JPG
+ DEFAULT ON
+)
+

ecbuild_add_option( FEATURE PNG
DESCRIPTION "support for PNG decoding/encoding"
@@ -144,7 +156,7 @@ if( ENABLE_JPG )

find_package( OpenJPEG )

- if( JASPER_FOUND )
+ if( JASPER_FOUND AND ENABLE_JPG_LIBJASPER )
list( APPEND ECCODES_TPLS Jasper )
set( HAVE_JPEG 1 )
set( HAVE_LIBJASPER 1 )
@@ -152,7 +164,7 @@ if( ENABLE_JPG )
string(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" JASPER_VERSION_MAJOR "${JASPER_VERSION_STRING}")
endif()

- if( OPENJPEG_FOUND )
+ if( OPENJPEG_FOUND AND ENABLE_JPG_LIBOPENJPEG )
list( APPEND ECCODES_TPLS OpenJPEG )
set( HAVE_JPEG 1 )
set( HAVE_LIBOPENJPEG 1 )
Loading