From bfd347ddc31e8c1fec5c8f9398b3d641f5464a06 Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Thu, 15 Aug 2024 11:09:14 -0500 Subject: [PATCH 01/14] Update .gitmodules and CMakeModules --- .gitmodules | 6 ++++-- CMakeModules | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.gitmodules b/.gitmodules index a3775fc12d..acbe0380ff 100644 --- a/.gitmodules +++ b/.gitmodules @@ -12,8 +12,10 @@ branch = master [submodule "CMakeModules"] path = CMakeModules - url = https://github.com/NOAA-EMC/CMakeModules - branch = develop + #url = https://github.com/NOAA-EMC/CMakeModules + #branch = develop + url = https://github.com/climbfuji/CMakeModules + branch = feature/remove_findesmf [submodule "CMEPS"] path = CMEPS-interface/CMEPS url = https://github.com/NOAA-EMC/CMEPS diff --git a/CMakeModules b/CMakeModules index cabd7753ae..27485ff44a 160000 --- a/CMakeModules +++ b/CMakeModules @@ -1 +1 @@ -Subproject commit cabd7753ae17f7bfcc6dad56daf10868aa51c3f4 +Subproject commit 27485ff44a64b7168fd524ea68d07d1458f3f05c From c994cb018491238d7b9ea42d4499492bdaa5c909 Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Fri, 16 Aug 2024 09:53:30 -0500 Subject: [PATCH 02/14] Remove cmake/FindESMF.cmake and rename esmf target to ESMF::ESMF --- .gitmodules | 36 +++-- AQM | 2 +- CDEPS-interface/CDEPS | 2 +- CDEPS-interface/CMakeLists.txt | 20 +-- CICE-interface/CMakeLists.txt | 214 ++++++++++++++--------------- CMEPS-interface/CMEPS | 2 +- CMEPS-interface/CMakeLists.txt | 2 +- CMakeLists.txt | 9 +- FV3 | 2 +- HYCOM-interface/CMakeLists.txt | 4 +- MOM6-interface/CMakeLists.txt | 8 +- NOAHMP-interface/CMakeLists.txt | 2 +- NOAHMP-interface/noahmp | 2 +- WW3 | 2 +- modulefiles/ufs_common.lua | 4 +- modulefiles/ufs_hercules.gnu.lua | 3 +- modulefiles/ufs_hercules.intel.lua | 3 +- 17 files changed, 166 insertions(+), 151 deletions(-) diff --git a/.gitmodules b/.gitmodules index acbe0380ff..8a53224a4c 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,11 +1,15 @@ [submodule "FV3"] path = FV3 - url = https://github.com/NOAA-EMC/fv3atm - branch = develop + #url = https://github.com/NOAA-EMC/fv3atm + #branch = develop + url = https://github.com/DusanJovic-NOAA/fv3atm + branch = remove_findesmf [submodule "WW3"] path = WW3 - url = https://github.com/NOAA-EMC/WW3 - branch = dev/ufs-weather-model + #url = https://github.com/NOAA-EMC/WW3 + #branch = dev/ufs-weather-model + url = https://github.com/DusanJovic-NOAA/WW3 + branch = remove_findesmf [submodule "stochastic_physics"] path = stochastic_physics url = https://github.com/NOAA-PSL/stochastic_physics @@ -18,8 +22,10 @@ branch = feature/remove_findesmf [submodule "CMEPS"] path = CMEPS-interface/CMEPS - url = https://github.com/NOAA-EMC/CMEPS - branch = emc/develop + #url = https://github.com/NOAA-EMC/CMEPS + #branch = emc/develop + url = https://github.com/DusanJovic-NOAA/CMEPS + branch = remove_findesmf [submodule "HYCOM"] path = HYCOM-interface/HYCOM url = https://github.com/NOAA-EMC/HYCOM-src @@ -34,17 +40,23 @@ branch = emc/develop [submodule "CDEPS"] path = CDEPS-interface/CDEPS - url = https://github.com/NOAA-EMC/CDEPS - branch = develop + #url = https://github.com/NOAA-EMC/CDEPS + #branch = develop + url = https://github.com/DusanJovic-NOAA/CDEPS + branch = remove_findesmf [submodule "GOCART"] path = GOCART url = https://github.com/GEOS-ESM/GOCART branch = develop [submodule "AQM"] path = AQM - url = https://github.com/NOAA-EMC/AQM - branch = develop + #url = https://github.com/NOAA-EMC/AQM + #branch = develop + url = https://github.com/DusanJovic-NOAA/AQM + branch = remove_findesmf [submodule "NOAHMP"] path = NOAHMP-interface/noahmp - url = https://github.com/NOAA-EMC/noahmp - branch = develop + #url = https://github.com/NOAA-EMC/noahmp + #branch = develop + url = https://github.com/DusanJovic-NOAA/noahmp + branch = remove_findesmf diff --git a/AQM b/AQM index 37cbb7d684..fc2cd7c887 160000 --- a/AQM +++ b/AQM @@ -1 +1 @@ -Subproject commit 37cbb7d6840ae7515a9a8f0dfd4d89461b3396d1 +Subproject commit fc2cd7c88703bcd2eb3f8ad2f71721c1fa01f5f9 diff --git a/CDEPS-interface/CDEPS b/CDEPS-interface/CDEPS index fbdf6843d6..38afbf79c2 160000 --- a/CDEPS-interface/CDEPS +++ b/CDEPS-interface/CDEPS @@ -1 +1 @@ -Subproject commit fbdf6843d6bde852d97f1547591d90136103f669 +Subproject commit 38afbf79c2f4f88a14640b81561e64c88cbe7c2a diff --git a/CDEPS-interface/CMakeLists.txt b/CDEPS-interface/CMakeLists.txt index afea540965..4ad50123b2 100644 --- a/CDEPS-interface/CMakeLists.txt +++ b/CDEPS-interface/CMakeLists.txt @@ -28,7 +28,7 @@ set_target_properties(share PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_ target_include_directories(share PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/ufs/cdeps_share) target_include_directories(share PRIVATE $) target_compile_definitions(share PRIVATE ${CDEPS_SHARE_DEFS}) -target_link_libraries(share PRIVATE esmf) +target_link_libraries(share PRIVATE ESMF::ESMF) # CDEPS/streams add_library(streams OBJECT ${cdeps_streams_files}) @@ -37,7 +37,7 @@ set_target_properties(streams PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURREN target_include_directories(streams PRIVATE $) target_compile_definitions(streams PUBLIC "DISABLE_FoX") target_link_libraries(streams PRIVATE share) -target_link_libraries(streams PRIVATE esmf PIO::PIO_Fortran) +target_link_libraries(streams PRIVATE ESMF::ESMF PIO::PIO_Fortran) # CDEPS/dshr add_library(dshr OBJECT ${cdeps_dshr_files}) @@ -45,7 +45,7 @@ add_dependencies(dshr share streams) set_target_properties(dshr PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) target_include_directories(dshr PRIVATE $) target_link_libraries(dshr PRIVATE share streams) -target_link_libraries(dshr PRIVATE esmf PIO::PIO_Fortran) +target_link_libraries(dshr PRIVATE ESMF::ESMF PIO::PIO_Fortran) # CDEPS/datm add_library(datm OBJECT ${cdeps_datm_files}) @@ -53,7 +53,7 @@ add_dependencies(datm share streams dshr) set_target_properties(datm PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) target_include_directories(datm PRIVATE $) target_link_libraries(datm PRIVATE dshr share streams) -target_link_libraries(datm PRIVATE esmf PIO::PIO_Fortran) +target_link_libraries(datm PRIVATE ESMF::ESMF PIO::PIO_Fortran) # CDEPS/dice add_library(dice OBJECT ${cdeps_dice_files}) @@ -61,7 +61,7 @@ add_dependencies(dice share streams dshr) set_target_properties(dice PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) target_include_directories(dice PRIVATE $) target_link_libraries(dice PRIVATE dshr share streams) -target_link_libraries(dice PRIVATE esmf) +target_link_libraries(dice PRIVATE ESMF::ESMF) # CDEPS/dlnd add_library(dlnd OBJECT ${cdeps_dlnd_files}) @@ -69,7 +69,7 @@ add_dependencies(dlnd share streams dshr) set_target_properties(dlnd PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) target_include_directories(dlnd PRIVATE $) target_link_libraries(dlnd PRIVATE dshr share streams) -target_link_libraries(dlnd PRIVATE esmf) +target_link_libraries(dlnd PRIVATE ESMF::ESMF) # CDEPS/docn add_library(docn OBJECT ${cdeps_docn_files}) @@ -77,7 +77,7 @@ add_dependencies(docn share streams dshr) set_target_properties(docn PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) target_include_directories(docn PRIVATE $) target_link_libraries(docn PRIVATE dshr share streams) -target_link_libraries(docn PRIVATE esmf PIO::PIO_Fortran) +target_link_libraries(docn PRIVATE ESMF::ESMF PIO::PIO_Fortran) # CDEPS/drof add_library(drof OBJECT ${cdeps_drof_files}) @@ -85,7 +85,7 @@ add_dependencies(drof share streams dshr) set_target_properties(drof PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) target_include_directories(drof PRIVATE $) target_link_libraries(drof PRIVATE dshr share streams) -target_link_libraries(drof PRIVATE esmf) +target_link_libraries(drof PRIVATE ESMF::ESMF) # CDEPS/dwav add_library(dwav OBJECT ${cdeps_dwav_files}) @@ -93,7 +93,7 @@ add_dependencies(dwav share streams dshr) set_target_properties(dwav PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) target_include_directories(dwav PRIVATE $) target_link_libraries(dwav PRIVATE dshr share streams) -target_link_libraries(dwav PRIVATE esmf) +target_link_libraries(dwav PRIVATE ESMF::ESMF) # CDEPS add_library(cdeps STATIC $ @@ -108,7 +108,7 @@ add_library(cdeps STATIC $ add_library(cdeps::cdeps ALIAS cdeps) target_include_directories(cdeps PUBLIC $ $) -target_link_libraries(cdeps PUBLIC esmf PIO::PIO_Fortran) +target_link_libraries(cdeps PUBLIC ESMF::ESMF PIO::PIO_Fortran) list(APPEND LIB_TARGETS cdeps) ############################################################################### diff --git a/CICE-interface/CMakeLists.txt b/CICE-interface/CMakeLists.txt index c04165ab09..3c7ec81900 100644 --- a/CICE-interface/CMakeLists.txt +++ b/CICE-interface/CMakeLists.txt @@ -1,107 +1,107 @@ -### CICE Fortran compiler flags -if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU") - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -fbacktrace") - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fconvert=big-endian -ffree-line-length-none ") - if(${CMAKE_Fortran_COMPILER_VERSION} VERSION_GREATER_EQUAL 10) - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch -fallow-invalid-boz") - endif() - set(CMAKE_Fortran_FLAGS_RELEASE "-O2") - set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -Wall -Wextra -fcheck=bounds -ffpe-trap=invalid,zero,overflow,underflow" ) - set(CMAKE_Fortran_LINK_FLAGS "" ) -elseif(CMAKE_Fortran_COMPILER_ID MATCHES "Intel") - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -traceback") - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -FR -convert big_endian -assume byterecl -ftz -align array64byte") - set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fp-model precise") - set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -check uninit -check bounds -check pointers -fpe0 -check noarg_temp_created -init=snan,arrays") - set(CMAKE_Fortran_LINK_FLAGS "") -else() - message(WARNING "Fortran compiler with ID ${CMAKE_Fortran_COMPILER_ID} will be used with CMake default options") -endif() - -### CICE C compiler flags -if(CMAKE_C_COMPILER_ID MATCHES "GNU") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g") - set(CMAKE_C_FLAGS_RELEASE "-O3") - set(CMAKE_C_FLAGS_DEBUG "-O0") - set(CMAKE_C_LINK_FLAGS "") -elseif(CMAKE_C_COMPILER_ID MATCHES "Intel") - set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -traceback") - set( CMAKE_C_FLAGS_RELEASE "-O2 -fp-model precise") - set( CMAKE_C_FLAGS_DEBUG "-O0 -ftrapuv") - set( CMAKE_C_LINK_FLAGS "") -elseif(CMAKE_C_COMPILER_ID MATCHES "Clang") - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g") - set( CMAKE_C_FLAGS_RELEASE "-O3" ) - set( CMAKE_C_FLAGS_DEBUG "-O0" ) - set( CMAKE_C_LINK_FLAGS "" ) -else() - message(WARNING "C compiler with ID ${CMAKE_C_COMPILER_ID} will be used with CMake default options") -endif() - -# Configuration Options -set(CICE_IO "PIO" CACHE STRING "CICE OPTIONS: Choose IO options.") -set_property(CACHE CICE_IO PROPERTY STRINGS "NetCDF" "PIO" "Binary") - -# Too many files to list, so include them via this file -include("cice_files.cmake") - -# Collect source files for library -list(APPEND lib_src_files - ${cice_shared_files} - ${cice_shared_files_c} - ${icepack_files} - ${cice_mpi_comm_files} - ${cice_nuopc_cmeps_driver_files} - ${cice_cdeps_inline_files}) - -list(APPEND _cice_defs FORTRANUNDERSCORE - coupled) - -# Select IO source files based on CICE_IO -if(CICE_IO MATCHES "NetCDF") - list(APPEND lib_src_files ${cice_netcdf_io_files}) - list(APPEND _cice_defs USE_NETCDF) -elseif(CICE_IO MATCHES "PIO") - list(APPEND lib_src_files ${cice_pio2_io_files}) - list(APPEND _cice_defs USE_NETCDF) -elseif(CICE_IO MATCHES "Binary") - list(APPEND lib_src_files ${cice_binary_io_files}) -endif() - -### Create target library and set PUBLIC interfaces on the library -add_library(cice STATIC ${lib_src_files}) -set_target_properties(cice PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) -target_compile_definitions(cice PUBLIC "${_cice_defs}") -target_include_directories(cice PUBLIC $ - $) -target_link_libraries(cice PUBLIC esmf) -if(CICE_IO MATCHES "^(NetCDF|PIO)$") - target_link_libraries(cice PUBLIC NetCDF::NetCDF_Fortran) - if(CICE_IO MATCHES "PIO") - target_link_libraries(cice PUBLIC PIO::PIO_Fortran) - endif() -endif() -if(OpenMP_Fortran_FOUND) - target_link_libraries(cice PRIVATE OpenMP::OpenMP_Fortran) -endif() - -# ice prescribed -add_dependencies(cice cdeps::cdeps) -target_compile_definitions(cice PUBLIC "DISABLE_FoX") -target_link_libraries(cice PUBLIC cdeps::cdeps) - -############################################################################### -### Install -############################################################################### - -install( - TARGETS cice - EXPORT cice-config - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - COMPONENT Library) - -install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod DESTINATION ${CMAKE_INSTALL_PREFIX}/CICE) - -install(EXPORT cice-config - DESTINATION lib/cmake) +### CICE Fortran compiler flags +if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU") + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -fbacktrace") + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fconvert=big-endian -ffree-line-length-none ") + if(${CMAKE_Fortran_COMPILER_VERSION} VERSION_GREATER_EQUAL 10) + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch -fallow-invalid-boz") + endif() + set(CMAKE_Fortran_FLAGS_RELEASE "-O2") + set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -Wall -Wextra -fcheck=bounds -ffpe-trap=invalid,zero,overflow,underflow" ) + set(CMAKE_Fortran_LINK_FLAGS "" ) +elseif(CMAKE_Fortran_COMPILER_ID MATCHES "Intel") + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -traceback") + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -FR -convert big_endian -assume byterecl -ftz -align array64byte") + set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fp-model precise") + set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -check uninit -check bounds -check pointers -fpe0 -check noarg_temp_created -init=snan,arrays") + set(CMAKE_Fortran_LINK_FLAGS "") +else() + message(WARNING "Fortran compiler with ID ${CMAKE_Fortran_COMPILER_ID} will be used with CMake default options") +endif() + +### CICE C compiler flags +if(CMAKE_C_COMPILER_ID MATCHES "GNU") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g") + set(CMAKE_C_FLAGS_RELEASE "-O3") + set(CMAKE_C_FLAGS_DEBUG "-O0") + set(CMAKE_C_LINK_FLAGS "") +elseif(CMAKE_C_COMPILER_ID MATCHES "Intel") + set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -traceback") + set( CMAKE_C_FLAGS_RELEASE "-O2 -fp-model precise") + set( CMAKE_C_FLAGS_DEBUG "-O0 -ftrapuv") + set( CMAKE_C_LINK_FLAGS "") +elseif(CMAKE_C_COMPILER_ID MATCHES "Clang") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g") + set( CMAKE_C_FLAGS_RELEASE "-O3" ) + set( CMAKE_C_FLAGS_DEBUG "-O0" ) + set( CMAKE_C_LINK_FLAGS "" ) +else() + message(WARNING "C compiler with ID ${CMAKE_C_COMPILER_ID} will be used with CMake default options") +endif() + +# Configuration Options +set(CICE_IO "PIO" CACHE STRING "CICE OPTIONS: Choose IO options.") +set_property(CACHE CICE_IO PROPERTY STRINGS "NetCDF" "PIO" "Binary") + +# Too many files to list, so include them via this file +include("cice_files.cmake") + +# Collect source files for library +list(APPEND lib_src_files + ${cice_shared_files} + ${cice_shared_files_c} + ${icepack_files} + ${cice_mpi_comm_files} + ${cice_nuopc_cmeps_driver_files} + ${cice_cdeps_inline_files}) + +list(APPEND _cice_defs FORTRANUNDERSCORE + coupled) + +# Select IO source files based on CICE_IO +if(CICE_IO MATCHES "NetCDF") + list(APPEND lib_src_files ${cice_netcdf_io_files}) + list(APPEND _cice_defs USE_NETCDF) +elseif(CICE_IO MATCHES "PIO") + list(APPEND lib_src_files ${cice_pio2_io_files}) + list(APPEND _cice_defs USE_NETCDF) +elseif(CICE_IO MATCHES "Binary") + list(APPEND lib_src_files ${cice_binary_io_files}) +endif() + +### Create target library and set PUBLIC interfaces on the library +add_library(cice STATIC ${lib_src_files}) +set_target_properties(cice PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) +target_compile_definitions(cice PUBLIC "${_cice_defs}") +target_include_directories(cice PUBLIC $ + $) +target_link_libraries(cice PUBLIC ESMF::ESMF) +if(CICE_IO MATCHES "^(NetCDF|PIO)$") + target_link_libraries(cice PUBLIC NetCDF::NetCDF_Fortran) + if(CICE_IO MATCHES "PIO") + target_link_libraries(cice PUBLIC PIO::PIO_Fortran) + endif() +endif() +if(OpenMP_Fortran_FOUND) + target_link_libraries(cice PRIVATE OpenMP::OpenMP_Fortran) +endif() + +# ice prescribed +add_dependencies(cice cdeps::cdeps) +target_compile_definitions(cice PUBLIC "DISABLE_FoX") +target_link_libraries(cice PUBLIC cdeps::cdeps) + +############################################################################### +### Install +############################################################################### + +install( + TARGETS cice + EXPORT cice-config + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib + COMPONENT Library) + +install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod DESTINATION ${CMAKE_INSTALL_PREFIX}/CICE) + +install(EXPORT cice-config + DESTINATION lib/cmake) diff --git a/CMEPS-interface/CMEPS b/CMEPS-interface/CMEPS index f13e16e414..fbbc1db265 160000 --- a/CMEPS-interface/CMEPS +++ b/CMEPS-interface/CMEPS @@ -1 +1 @@ -Subproject commit f13e16e414e115e268b2dd300b665e628e5f2429 +Subproject commit fbbc1db265c6991e565abc7c3a81cd86c9948e51 diff --git a/CMEPS-interface/CMakeLists.txt b/CMEPS-interface/CMakeLists.txt index efbd585acc..ddb772a536 100644 --- a/CMEPS-interface/CMakeLists.txt +++ b/CMEPS-interface/CMakeLists.txt @@ -183,7 +183,7 @@ set_target_properties(cmeps PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_ target_include_directories(cmeps PUBLIC $ $) target_compile_definitions(cmeps PRIVATE ${CDEPS_SHARE_DEFS}) -target_link_libraries(cmeps PUBLIC esmf +target_link_libraries(cmeps PUBLIC ESMF::ESMF PIO::PIO_Fortran) if(OpenMP_Fortran_FOUND) target_link_libraries(cmeps PRIVATE OpenMP::OpenMP_Fortran) diff --git a/CMakeLists.txt b/CMakeLists.txt index e5fdd1e83a..38fbf12afd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,8 @@ if (CMAKE_Fortran_COMPILER_ID MATCHES "GNU" AND CMAKE_Fortran_COMPILER_VERSION V message(FATAL_ERROR "GNU Compiler >= 9 is required") endif() -list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) +list(APPEND CMAKE_MODULE_PATH $ENV{ESMF_ROOT}/cmake) +list(APPEND CMAKE_MODULE_PATH $ENV{esmf_ROOT}/cmake) list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/CMakeModules/Modules) ############################################################################### @@ -147,7 +148,7 @@ if(OPENMP) endif() find_package(NetCDF 4.7.4 REQUIRED C Fortran) -find_package(ESMF 8.3.0 MODULE REQUIRED) +find_package(ESMF 8.6.0 MODULE REQUIRED) if(FMS) find_package(FMS 2022.04 REQUIRED COMPONENTS R4 R8) if(APP MATCHES "^(HAFSW)$") @@ -289,7 +290,7 @@ if(WW3) target_link_libraries(ufs PUBLIC WW3::WW3) endif() -list(APPEND _ufs_libs_public esmf) +list(APPEND _ufs_libs_public ESMF::ESMF) if(STOCH_PHYS) list(APPEND _ufs_libs_public stochastic_physics) @@ -347,7 +348,7 @@ target_link_libraries(ufs PUBLIC "${_ufs_libs_public}") ############################################################################### add_executable(ufs_model driver/UFS.F90) add_dependencies(ufs_model ufs) -target_link_libraries(ufs_model ufs esmf w3emc::w3emc_d) +target_link_libraries(ufs_model ufs ESMF::ESMF w3emc::w3emc_d) set_target_properties(ufs_model PROPERTIES LINKER_LANGUAGE Fortran) ############################################################################### diff --git a/FV3 b/FV3 index 66bded5b3e..f135e0cd61 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 66bded5b3e6fefc181f7df433acd18c392267311 +Subproject commit f135e0cd614ee3a75057959958e63a56a96bd4ba diff --git a/HYCOM-interface/CMakeLists.txt b/HYCOM-interface/CMakeLists.txt index 3a5fcdaefa..e43f097548 100644 --- a/HYCOM-interface/CMakeLists.txt +++ b/HYCOM-interface/CMakeLists.txt @@ -75,7 +75,7 @@ target_include_directories(hycom_nuopc_obj PRIVATE $) target_compile_definitions(hycom_nuopc_obj PRIVATE "${_hycom_defs}") target_link_libraries(hycom_nuopc_obj PRIVATE hycom_obj - esmf + ESMF::ESMF NetCDF::NetCDF_Fortran) ### Create target library and set PUBLIC interfaces on the library @@ -86,7 +86,7 @@ target_include_directories(hycom PUBLIC $ $) target_compile_definitions(hycom PRIVATE "${_hycom_defs}") -target_link_libraries(hycom PUBLIC esmf +target_link_libraries(hycom PUBLIC ESMF::ESMF NetCDF::NetCDF_Fortran) ### Create HYCOM offline executable diff --git a/MOM6-interface/CMakeLists.txt b/MOM6-interface/CMakeLists.txt index f3cf811ec2..083ab9dbaf 100644 --- a/MOM6-interface/CMakeLists.txt +++ b/MOM6-interface/CMakeLists.txt @@ -37,7 +37,7 @@ else() $) endif() target_link_libraries(mom6_obj PRIVATE fms - esmf + ESMF::ESMF stochastic_physics NetCDF::NetCDF_Fortran) # OpenMP is disabled in MOM6 @@ -58,7 +58,7 @@ endif() target_link_libraries(mom6_nuopc_obj PRIVATE mom6_obj fms stochastic_physics - esmf) + ESMF::ESMF) # OpenMP is disabled in MOM6 #if(OpenMP_Fortran_FOUND) # target_link_libraries(mom6_nuopc_obj PRIVATE OpenMP::OpenMP_Fortran) @@ -73,7 +73,7 @@ target_include_directories(mom6 PUBLIC $) target_link_libraries(mom6 PUBLIC fms stochastic_physics - esmf + ESMF::ESMF NetCDF::NetCDF_Fortran) # OpenMP is disabled in MOM6 #if(OpenMP_Fortran_FOUND) @@ -93,7 +93,7 @@ if(MOM6SOLO) target_link_libraries(mom6solo PRIVATE mom6_obj fms stochastic_physics - esmf + ESMF::ESMF NetCDF::NetCDF_Fortran) # OpenMP is disabled in MOM6 #if(OpenMP_Fortran_FOUND) diff --git a/NOAHMP-interface/CMakeLists.txt b/NOAHMP-interface/CMakeLists.txt index f8b6d99ab1..c90f0d60a9 100644 --- a/NOAHMP-interface/CMakeLists.txt +++ b/NOAHMP-interface/CMakeLists.txt @@ -67,7 +67,7 @@ add_library(noahmp STATIC ${_noahmp_cap_files} ${_noahmp_ccpp_files} ${_noahmp_f set_target_properties(noahmp PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod) target_include_directories(noahmp PUBLIC $ $) -target_link_libraries(noahmp PUBLIC esmf) +target_link_libraries(noahmp PUBLIC ESMF::ESMF) ############################################################################### ### Install diff --git a/NOAHMP-interface/noahmp b/NOAHMP-interface/noahmp index 3ac32f0db7..f1f607e4f0 160000 --- a/NOAHMP-interface/noahmp +++ b/NOAHMP-interface/noahmp @@ -1 +1 @@ -Subproject commit 3ac32f0db7a2a97d930f44fa5f060c983ff31ee8 +Subproject commit f1f607e4f0a7fa7491c721bbd2e2f8b357b2120f diff --git a/WW3 b/WW3 index 7f548c795a..64898ef28d 160000 --- a/WW3 +++ b/WW3 @@ -1 +1 @@ -Subproject commit 7f548c795a348bbb0fe4967dd25692c79036dc73 +Subproject commit 64898ef28db2f684b0d531c1bf8231fea5934f7a diff --git a/modulefiles/ufs_common.lua b/modulefiles/ufs_common.lua index 6e9c1f6f45..ea54a694e1 100644 --- a/modulefiles/ufs_common.lua +++ b/modulefiles/ufs_common.lua @@ -10,7 +10,7 @@ local ufs_modules = { {["netcdf-c"] = "4.9.2"}, {["netcdf-fortran"] = "4.6.1"}, {["parallelio"] = "2.5.10"}, - {["esmf"] = "8.6.0"}, + {["esmf"] = "8.6.1"}, {["fms"] = "2023.04"}, {["bacio"] = "2.4.1"}, {["crtm"] = "2.4.0"}, @@ -20,7 +20,7 @@ local ufs_modules = { {["sp"] = "2.5.0"}, {["w3emc"] = "2.10.0"}, {["gftl-shared"] = "1.6.1"}, - {["mapl"] = "2.40.3-esmf-8.6.0"}, + {["mapl"] = "2.46.2-esmf-8.6.1"}, {["scotch"] = "7.0.4"}, } diff --git a/modulefiles/ufs_hercules.gnu.lua b/modulefiles/ufs_hercules.gnu.lua index 69534c28d8..537b43cd52 100644 --- a/modulefiles/ufs_hercules.gnu.lua +++ b/modulefiles/ufs_hercules.gnu.lua @@ -2,7 +2,8 @@ help([[ loads UFS Model prerequisites for Hercules/GNU ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core") +-- prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/ue-esmf-8.6.1-mapl-2.46.2/install/modulefiles/Core") -- for mvapich2, need: prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/modulefiles") diff --git a/modulefiles/ufs_hercules.intel.lua b/modulefiles/ufs_hercules.intel.lua index 63cfaa989c..fc44dc2fb5 100644 --- a/modulefiles/ufs_hercules.intel.lua +++ b/modulefiles/ufs_hercules.intel.lua @@ -2,7 +2,8 @@ help([[ loads UFS Model prerequisites for Hercules/Intel ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core") +-- prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/ue-esmf-8.6.1-mapl-2.46.2/install/modulefiles/Core") stack_intel_ver=os.getenv("stack_intel_ver") or "2021.9.0" load(pathJoin("stack-intel", stack_intel_ver)) From 815791514117eda24b870994d74d1f513398b06d Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Fri, 23 Aug 2024 13:58:16 +0000 Subject: [PATCH 03/14] Special case for finding FindESMF.cmake on WCOSS2 in non-standard location --- CMakeLists.txt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 38fbf12afd..370eff694c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,6 +8,12 @@ if (CMAKE_Fortran_COMPILER_ID MATCHES "GNU" AND CMAKE_Fortran_COMPILER_VERSION V message(FATAL_ERROR "GNU Compiler >= 9 is required") endif() +set(CMAKE_Platform $ENV{CMAKE_Platform}) + +if(CMAKE_Platform STREQUAL "wcoss2") + list(APPEND CMAKE_MODULE_PATH $ENV{ESMF_ROOT}/include/ESMX/Driver/cmake) +endif() + list(APPEND CMAKE_MODULE_PATH $ENV{ESMF_ROOT}/cmake) list(APPEND CMAKE_MODULE_PATH $ENV{esmf_ROOT}/cmake) list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/CMakeModules/Modules) @@ -76,7 +82,6 @@ set(PDLIB OFF CACHE BOOL "Enable Domain Decomposition in WW3 via PDLIB set(CDEPS_INLINE OFF CACHE BOOL "Enable CDEPS inline capability") set(HYDRO OFF CACHE BOOL "Enable hydrostatic set") -set(CMAKE_Platform $ENV{CMAKE_Platform}) if(CMAKE_Platform) message("") if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/cmake/configure_${CMAKE_Platform}.cmake) @@ -149,6 +154,12 @@ endif() find_package(NetCDF 4.7.4 REQUIRED C Fortran) find_package(ESMF 8.6.0 MODULE REQUIRED) +if (NOT TARGET ESMF::ESMF) # This is needed for ESMF < 8.6.1 + add_library(ESMF::ESMF ALIAS ESMF) + if (NOT TARGET esmf) + add_library(esmf ALIAS ESMF) + endif() +endif () if(FMS) find_package(FMS 2022.04 REQUIRED COMPONENTS R4 R8) if(APP MATCHES "^(HAFSW)$") From ec4ec28f4fa3c522b5f981f3880852c7b595414e Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Mon, 16 Sep 2024 14:08:00 +0000 Subject: [PATCH 04/14] Update FV3, CDEPS and CMEPS --- CDEPS-interface/CDEPS | 2 +- CMEPS-interface/CMEPS | 2 +- FV3 | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CDEPS-interface/CDEPS b/CDEPS-interface/CDEPS index 38afbf79c2..50c63f586a 160000 --- a/CDEPS-interface/CDEPS +++ b/CDEPS-interface/CDEPS @@ -1 +1 @@ -Subproject commit 38afbf79c2f4f88a14640b81561e64c88cbe7c2a +Subproject commit 50c63f586ad6f0de59db8e616ff33552d4a5c71a diff --git a/CMEPS-interface/CMEPS b/CMEPS-interface/CMEPS index fbbc1db265..526c35e786 160000 --- a/CMEPS-interface/CMEPS +++ b/CMEPS-interface/CMEPS @@ -1 +1 @@ -Subproject commit fbbc1db265c6991e565abc7c3a81cd86c9948e51 +Subproject commit 526c35e786272ae05511559e97e7a06a75dadb46 diff --git a/FV3 b/FV3 index f135e0cd61..1fe3c87961 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit f135e0cd614ee3a75057959958e63a56a96bd4ba +Subproject commit 1fe3c8796108b5b858cd43fc284b717cd112039a From 7d7eb20c4bc3ffd8205912aa368063e94def4002 Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Mon, 7 Oct 2024 15:25:58 +0000 Subject: [PATCH 05/14] Update CMEPS, FV3 and WW3 --- CMEPS-interface/CMEPS | 2 +- FV3 | 2 +- WW3 | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CMEPS-interface/CMEPS b/CMEPS-interface/CMEPS index 526c35e786..50a2842041 160000 --- a/CMEPS-interface/CMEPS +++ b/CMEPS-interface/CMEPS @@ -1 +1 @@ -Subproject commit 526c35e786272ae05511559e97e7a06a75dadb46 +Subproject commit 50a2842041b3b7082b6c2be510b2c449b96cfe98 diff --git a/FV3 b/FV3 index 1fe3c87961..1f328526be 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 1fe3c8796108b5b858cd43fc284b717cd112039a +Subproject commit 1f328526beb9ccda7d825cebaa8cde84b935d8b7 diff --git a/WW3 b/WW3 index 64898ef28d..78731a0334 160000 --- a/WW3 +++ b/WW3 @@ -1 +1 @@ -Subproject commit 64898ef28db2f684b0d531c1bf8231fea5934f7a +Subproject commit 78731a03349b6cf646a264da600d1f706f3747ac From 55bf8992e0e73ed8c09b42d6a992397c640b5043 Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Wed, 13 Nov 2024 07:16:23 -0600 Subject: [PATCH 06/14] Update CMEPS and FV3 --- CMEPS-interface/CMEPS | 2 +- FV3 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CMEPS-interface/CMEPS b/CMEPS-interface/CMEPS index 50a2842041..8c66c95481 160000 --- a/CMEPS-interface/CMEPS +++ b/CMEPS-interface/CMEPS @@ -1 +1 @@ -Subproject commit 50a2842041b3b7082b6c2be510b2c449b96cfe98 +Subproject commit 8c66c954814be7b01160e95ae35cc627e93c6120 diff --git a/FV3 b/FV3 index 1f328526be..71d80c45a0 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 1f328526beb9ccda7d825cebaa8cde84b935d8b7 +Subproject commit 71d80c45a0e4ad6a8a4228344f9fb0ffd954b5d0 From 1f92d9bdaa74cae1c4babce1f751288783b48937 Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Mon, 18 Nov 2024 09:28:08 -0600 Subject: [PATCH 07/14] Update WW3 and CICE-interface/CICE --- CICE-interface/CICE | 2 +- WW3 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CICE-interface/CICE b/CICE-interface/CICE index 2ffee5cd48..5e57a89cf5 160000 --- a/CICE-interface/CICE +++ b/CICE-interface/CICE @@ -1 +1 @@ -Subproject commit 2ffee5cd48e0c389bdf75c0d910b3f6d53263563 +Subproject commit 5e57a89cf533fe98352bcfd1a464b1d50713274d diff --git a/WW3 b/WW3 index 78731a0334..fb18c9f22d 160000 --- a/WW3 +++ b/WW3 @@ -1 +1 @@ -Subproject commit 78731a03349b6cf646a264da600d1f706f3747ac +Subproject commit fb18c9f22d97d7f0f2faa38ca0d8359a4d060cc6 From aaa416fdea40b76fb5f6c255826cd0aed92c3889 Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Mon, 18 Nov 2024 14:14:43 -0600 Subject: [PATCH 08/14] Update esmf and mapl --- modulefiles/ufs_common.lua | 2 +- modulefiles/ufs_hercules.gnu.lua | 2 +- modulefiles/ufs_hercules.intel.lua | 2 +- modulefiles/ufs_hercules.intelllvm.lua | 2 +- tests/parm/hafs_datm.streams.era5.IN | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/modulefiles/ufs_common.lua b/modulefiles/ufs_common.lua index 44fe2f3848..c1ad7ef877 100644 --- a/modulefiles/ufs_common.lua +++ b/modulefiles/ufs_common.lua @@ -20,7 +20,7 @@ local ufs_modules = { {["sp"] = "2.5.0"}, {["w3emc"] = "2.10.0"}, {["gftl-shared"] = "1.6.1"}, - {["mapl"] = "2.46.2-esmf-8.6.1"}, + {["mapl"] = "2.40.3.1-esmf-8.6.1"}, {["scotch"] = "7.0.4"}, } diff --git a/modulefiles/ufs_hercules.gnu.lua b/modulefiles/ufs_hercules.gnu.lua index 9417c1452d..d0a429f958 100644 --- a/modulefiles/ufs_hercules.gnu.lua +++ b/modulefiles/ufs_hercules.gnu.lua @@ -2,7 +2,7 @@ help([[ loads UFS Model prerequisites for Hercules/GNU ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/ue-esmf-8.6.1-mapl-2.46.3/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/ue-esmf-8.6.1-mapl-2.40.3.1/install/modulefiles/Core") -- for mvapich2, need: prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/modulefiles") diff --git a/modulefiles/ufs_hercules.intel.lua b/modulefiles/ufs_hercules.intel.lua index 539aef53b1..770983e518 100644 --- a/modulefiles/ufs_hercules.intel.lua +++ b/modulefiles/ufs_hercules.intel.lua @@ -2,7 +2,7 @@ help([[ loads UFS Model prerequisites for Hercules/Intel ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/ue-esmf-8.6.1-mapl-2.46.3/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/ue-esmf-8.6.1-mapl-2.40.3.1/install/modulefiles/Core") stack_intel_ver=os.getenv("stack_intel_ver") or "2021.9.0" load(pathJoin("stack-intel", stack_intel_ver)) diff --git a/modulefiles/ufs_hercules.intelllvm.lua b/modulefiles/ufs_hercules.intelllvm.lua index 2d5627b417..c330900c77 100644 --- a/modulefiles/ufs_hercules.intelllvm.lua +++ b/modulefiles/ufs_hercules.intelllvm.lua @@ -2,7 +2,7 @@ help([[ loads UFS Model prerequisites for Hercules/IntelLLVM ]]) -prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core") +prepend_path("MODULEPATH", "/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/ue-esmf-8.6.1-mapl-2.40.3.1/install/modulefiles/Core") stack_intel_ver=os.getenv("stack_intel_ver") or "2021.9.0" load(pathJoin("stack-intel", stack_intel_ver)) diff --git a/tests/parm/hafs_datm.streams.era5.IN b/tests/parm/hafs_datm.streams.era5.IN index a63e8ca29f..379dea4c04 100644 --- a/tests/parm/hafs_datm.streams.era5.IN +++ b/tests/parm/hafs_datm.streams.era5.IN @@ -11,5 +11,5 @@ yearAlign01: @[SYEAR] stream_vectors01: "Sa_u10m:Sa_v10m" stream_mesh_file01: "INPUT/@[MESH_ATM]" stream_lev_dimname01: null -stream_data_files01: @[DATA_ATM]" +stream_data_files01: @[DATA_ATM] stream_data_variables01: "u10 Sa_u10m" "v10 Sa_v10m" "t2m Sa_t2m" "skt Sa_tskn" "d2m Sa_tdew" "msl Sa_pslv" "tp Faxa_rain" "cp Faxa_rainc" "lsp Faxa_rainl" "csf Faxa_snowc" "lsf Faxa_snowl" "ssrd Faxa_swdn" "ssr Faxa_swnet" "strd Faxa_lwdn" "str Faxa_lwnet" "aluvp Faxa_swvdr" "aluvd Faxa_swvdf" "alnip Faxa_swndr" "alnid Faxa_swndf" "sshf Faxa_sen" "slhf Faxa_lat" "ewss Faxa_taux" "nsss Faxa_tauy" From 7f581e57e2fe9df4862d32f9ac7f62b711fd6a04 Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Fri, 22 Nov 2024 13:53:10 +0000 Subject: [PATCH 09/14] Update FV3 --- FV3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FV3 b/FV3 index 71d80c45a0..09ed19912d 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 71d80c45a0e4ad6a8a4228344f9fb0ffd954b5d0 +Subproject commit 09ed19912d2dd7a6c0e63da3b3c3657dddc3c958 From 0c982abf8be8eaf1e21d098482d0ca4faf2cc95f Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Fri, 22 Nov 2024 13:56:16 +0000 Subject: [PATCH 10/14] Update NOAHMP-interface/noahmp --- NOAHMP-interface/noahmp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NOAHMP-interface/noahmp b/NOAHMP-interface/noahmp index f1f607e4f0..7a28515eb4 160000 --- a/NOAHMP-interface/noahmp +++ b/NOAHMP-interface/noahmp @@ -1 +1 @@ -Subproject commit f1f607e4f0a7fa7491c721bbd2e2f8b357b2120f +Subproject commit 7a28515eb4ed9db0d56e67d05f40d41873ab2721 From d8435506b327207c9e25f8e4d6da8c3a46f66c9d Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Fri, 22 Nov 2024 14:12:09 -0500 Subject: [PATCH 11/14] Update gaea modulefiles --- modulefiles/ufs_gaea.intel.lua | 2 +- modulefiles/ufs_gaea.intelllvm.lua | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modulefiles/ufs_gaea.intel.lua b/modulefiles/ufs_gaea.intel.lua index 834c8fc41f..5b80022c9e 100644 --- a/modulefiles/ufs_gaea.intel.lua +++ b/modulefiles/ufs_gaea.intel.lua @@ -5,7 +5,7 @@ help([[ whatis([===[Loads libraries needed for building the UFS Weather Model on Gaea ]===]) -prepend_path("MODULEPATH", "/ncrc/proj/epic/spack-stack/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core") +prepend_path("MODULEPATH", "/ncrc/proj/epic/spack-stack/spack-stack-1.6.0/envs/esmf-8.6.1-mapl-2.40.3.1-addon/install/modulefiles/Core") stack_intel_ver=os.getenv("stack_intel_ver") or "2023.2.0" load(pathJoin("stack-intel", stack_intel_ver)) diff --git a/modulefiles/ufs_gaea.intelllvm.lua b/modulefiles/ufs_gaea.intelllvm.lua index 01d8585454..c6ad108004 100644 --- a/modulefiles/ufs_gaea.intelllvm.lua +++ b/modulefiles/ufs_gaea.intelllvm.lua @@ -5,7 +5,7 @@ help([[ whatis([===[Loads libraries needed for building the UFS Weather Model on Gaea ]===]) -prepend_path("MODULEPATH", "/ncrc/proj/epic/spack-stack/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core") +prepend_path("MODULEPATH", "/ncrc/proj/epic/spack-stack/spack-stack-1.6.0/envs/esmf-8.6.1-mapl-2.40.3.1-addon/install/modulefiles/Core") stack_intel_ver=os.getenv("stack_intel_ver") or "2023.2.0" load(pathJoin("stack-intel", stack_intel_ver)) From 35ea115378741bd2647fd61e00235c68d60638f6 Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Fri, 22 Nov 2024 19:14:07 +0000 Subject: [PATCH 12/14] Update hera modulefiles --- modulefiles/ufs_hera.gnu.lua | 2 +- modulefiles/ufs_hera.intel.lua | 2 +- modulefiles/ufs_hera.intelllvm.lua | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modulefiles/ufs_hera.gnu.lua b/modulefiles/ufs_hera.gnu.lua index 4e53200209..9ba4ac075e 100644 --- a/modulefiles/ufs_hera.gnu.lua +++ b/modulefiles/ufs_hera.gnu.lua @@ -4,7 +4,7 @@ loads UFS Model prerequisites for Hera/GNU prepend_path("MODULEPATH", "/scratch2/NCEPDEV/stmp1/role.epic/installs/gnu/modulefiles") prepend_path("MODULEPATH", "/scratch2/NCEPDEV/stmp1/role.epic/installs/openmpi/modulefiles") -prepend_path("MODULEPATH", "/scratch2/NCEPDEV/stmp1/role.epic/spack-stack/spack-stack-1.6.0_gnu13/envs/fms-2024.01/install/modulefiles/Core") +prepend_path("MODULEPATH", "/scratch2/NCEPDEV/stmp1/role.epic/spack-stack/spack-stack-1.6.0_gnu13/envs/esmf-8.6.1-mapl-2.40.3.1-addon/install/modulefiles/Core") stack_gnu_ver=os.getenv("stack_gnu_ver") or "13.3.0" load(pathJoin("stack-gcc", stack_gnu_ver)) diff --git a/modulefiles/ufs_hera.intel.lua b/modulefiles/ufs_hera.intel.lua index feaa88e560..d6576ec9e2 100644 --- a/modulefiles/ufs_hera.intel.lua +++ b/modulefiles/ufs_hera.intel.lua @@ -2,7 +2,7 @@ help([[ loads UFS Model prerequisites for Hera/Intel ]]) -prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core") +prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/esmf-8.6.1-mapl-2.40.3.1-addon/install/modulefiles/Core") stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" load(pathJoin("stack-intel", stack_intel_ver)) diff --git a/modulefiles/ufs_hera.intelllvm.lua b/modulefiles/ufs_hera.intelllvm.lua index 7dfdd61ace..b863a37f56 100644 --- a/modulefiles/ufs_hera.intelllvm.lua +++ b/modulefiles/ufs_hera.intelllvm.lua @@ -2,7 +2,7 @@ help([[ loads UFS Model prerequisites for Hera/IntelLLVM ]]) -prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core") +prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/esmf-8.6.1-mapl-2.40.3.1-addon/install/modulefiles/Core") stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" load(pathJoin("stack-intel", stack_intel_ver)) From 541d4a083d7293cb10aeb64624c606c339343f5c Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Fri, 22 Nov 2024 19:17:09 +0000 Subject: [PATCH 13/14] Update jet modulefiles --- modulefiles/ufs_jet.intel.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modulefiles/ufs_jet.intel.lua b/modulefiles/ufs_jet.intel.lua index 63dd53721a..fe29c3a1fd 100644 --- a/modulefiles/ufs_jet.intel.lua +++ b/modulefiles/ufs_jet.intel.lua @@ -2,7 +2,7 @@ help([[ loads UFS Model prerequisites for Jet/Intel ]]) -prepend_path("MODULEPATH", " /contrib/spack-stack/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core") +prepend_path("MODULEPATH", "/contrib/spack-stack/spack-stack-1.6.0/envs/esmf-8.6.1-mapl-2.40.3.1-addon/install/modulefiles/Core") stack_intel_ver=os.getenv("stack_intel_ver") or "2021.5.0" load(pathJoin("stack-intel", stack_intel_ver)) From 7702ed56f4bfb47a54188122f35f3151c4be713e Mon Sep 17 00:00:00 2001 From: Dusan Jovic Date: Wed, 8 Jan 2025 13:43:10 +0000 Subject: [PATCH 14/14] Update CDEPS, CMEPS, FV3 and WW3 --- CDEPS-interface/CDEPS | 2 +- CMEPS-interface/CMEPS | 2 +- FV3 | 2 +- WW3 | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CDEPS-interface/CDEPS b/CDEPS-interface/CDEPS index 50c63f586a..6e0c415979 160000 --- a/CDEPS-interface/CDEPS +++ b/CDEPS-interface/CDEPS @@ -1 +1 @@ -Subproject commit 50c63f586ad6f0de59db8e616ff33552d4a5c71a +Subproject commit 6e0c41597980ba813181c2a3ff8efe5336dce1d6 diff --git a/CMEPS-interface/CMEPS b/CMEPS-interface/CMEPS index 8c66c95481..0af40e358a 160000 --- a/CMEPS-interface/CMEPS +++ b/CMEPS-interface/CMEPS @@ -1 +1 @@ -Subproject commit 8c66c954814be7b01160e95ae35cc627e93c6120 +Subproject commit 0af40e358ab2e18654e1cd56c702bdedb651649f diff --git a/FV3 b/FV3 index 09ed19912d..1d7978476a 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 09ed19912d2dd7a6c0e63da3b3c3657dddc3c958 +Subproject commit 1d7978476aa67dc0c7a180f11f87f1dc9056d47f diff --git a/WW3 b/WW3 index fb18c9f22d..6268b62e38 160000 --- a/WW3 +++ b/WW3 @@ -1 +1 @@ -Subproject commit fb18c9f22d97d7f0f2faa38ca0d8359a4d060cc6 +Subproject commit 6268b62e38eca28824eef73ce29df433d5333cbd