From 721ce0eb64918ce4e9211645cb39a1e597b25424 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 30 Oct 2024 01:47:33 -0600 Subject: [PATCH 01/25] Get the PF UNIT tests working using the full ESMF library which also requires PIO and NetCDF as a result --- src/CMakeLists.txt | 55 ++++++++++--------- .../test/CNPhenology_test/CMakeLists.txt | 2 +- .../test/CNVegComputeSeed_test/CMakeLists.txt | 2 +- .../test/DustEmis_test/CMakeLists.txt | 2 +- .../test/Latbaset_test/CMakeLists.txt | 2 +- .../test/Balance_test/CMakeLists.txt | 2 +- .../test/Daylength_test/CMakeLists.txt | 2 +- .../HillslopeHydrology_test/CMakeLists.txt | 2 +- .../test/Irrigation_test/CMakeLists.txt | 2 +- .../test/Photosynthesis_test/CMakeLists.txt | 2 +- .../test/SnowHydrology_test/CMakeLists.txt | 2 +- .../TotalWaterAndHeat_test/CMakeLists.txt | 2 +- .../CMakeLists.txt | 2 +- .../test/WaterTracerUtils_test/CMakeLists.txt | 2 +- .../test/WaterType_test/CMakeLists.txt | 2 +- .../test/Wateratm2lnd_test/CMakeLists.txt | 2 +- .../dynConsBiogeophys_test/CMakeLists.txt | 2 +- .../test/dynInitColumns_test/CMakeLists.txt | 2 +- .../test/dynTimeInfo_test/CMakeLists.txt | 2 +- .../test/dynVar_test/CMakeLists.txt | 2 +- src/main/test/accumul_test/CMakeLists.txt | 2 +- src/main/test/atm2lnd_test/CMakeLists.txt | 2 +- .../test/initVertical_test/CMakeLists.txt | 2 +- .../test/assertions_test/CMakeLists.txt | 2 +- .../test/tillage_test/CMakeLists.txt | 2 +- .../annual_flux_dribbler_test/CMakeLists.txt | 2 +- .../test/array_utils_test/CMakeLists.txt | 2 +- .../test/clm_time_manager_test/CMakeLists.txt | 2 +- src/utils/test/numerics_test/CMakeLists.txt | 2 +- 29 files changed, 56 insertions(+), 55 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 5b0f6c9b1b..7501723930 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -3,14 +3,18 @@ cmake_minimum_required(VERSION 2.8) list(APPEND CMAKE_MODULE_PATH ${CIME_CMAKE_MODULE_DIRECTORY}) include(CIME_initial_setup) -project(clm45_tests Fortran C) +#list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../tools/mksurfdata_esmf/cmake") +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../share/cmake") +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../component/cmeps/cmake") + +project(clm_tests Fortran C) include(CIME_utils) set(CLM_ROOT "..") -# This definition is needed to avoid having ESMF depend on mpi -add_definitions(-DHIDE_MPI) +#find_package(ESMF 8.2.0 REQUIRED ) +find_package(NetCDF 4.7.4 REQUIRED Fortran) # Add source directories from other share code (csm_share, etc.). This should be # done first, so that in case of name collisions, the CLM versions take @@ -18,7 +22,6 @@ add_definitions(-DHIDE_MPI) # wins). add_subdirectory(${CLM_ROOT}/share/src csm_share) add_subdirectory(${CLM_ROOT}/share/unit_test_stubs/util csm_share_stubs) -add_subdirectory(${CLM_ROOT}/share/src/esmf_wrf_timemgr esmf_wrf_timemgr) # Add files needed from CMEPS list ( APPEND drv_sources_needed @@ -53,43 +56,41 @@ foreach (sourcefile ${share_sources}) endif() endforeach() -# Remove shr_cal_mod from share_sources. -# -# shr_cal_mod depends on ESMF (or the lightweight esmf wrf timemgr, at -# least). Since CTSM doesn't currently use shr_cal_mod, we're avoiding -# the extra overhead of including esmf_wrf_timemgr sources in this -# build. -# -# TODO: like above, this should be moved into a general-purpose function -# in Sourcelist_utils. Then this block of code could be replaced with a -# single call, like: remove_source_file(${share_sources} -# "shr_cal_mod.F90") -foreach (sourcefile ${share_sources}) - string(REGEX MATCH "shr_cal_mod.F90" match_found ${sourcefile}) - if(match_found) - list(REMOVE_ITEM share_sources ${sourcefile}) - endif() -endforeach() +if (DEFINED PIO) + set(PIO_PATH ${PIO}) +else() + set(PIO_PATH $ENV{PIO}) +endif() # Build libraries containing stuff needed for the unit tests. # Eventually, these add_library calls should probably be distributed into the correct location, rather than being in this top-level CMakeLists.txt file. add_library(csm_share ${share_sources} ${drv_sources_needed}) declare_generated_dependencies(csm_share "${share_genf90_sources}") -add_library(esmf_wrf_timemgr ${esmf_wrf_timemgr_sources}) add_library(clm ${clm_sources}) declare_generated_dependencies(clm "${clm_genf90_sources}") -add_dependencies(esmf_wrf_timemgr csm_share) -add_dependencies(clm csm_share esmf_wrf_timemgr) +add_dependencies(clm csm_share esmf) # We need to look for header files here, in order to pick up shr_assert.h include_directories(${CLM_ROOT}/share/include) -# And we need to look for header files here, for some include files needed by -# the esmf_wrf_timemgr code -include_directories(${CLM_ROOT}/share/src/esmf_wrf_timemgr) + +# PIO2 +add_compile_definitions(PIO2) + +add_library(pioc STATIC IMPORTED) +add_library(piof STATIC IMPORTED) +set_property(TARGET pioc PROPERTY IMPORTED_LOCATION $ENV{PIO}/lib/libpioc.so) +set_property(TARGET piof PROPERTY IMPORTED_LOCATION $ENV{PIO}/lib/libpiof.so) + # Tell cmake to look for libraries & mod files here, because this is where we built libraries include_directories(${CMAKE_CURRENT_BINARY_DIR}) +include_directories (${ESMF_F90COMPILEPATHS}) +include_directories ($ENV{PIO}/include) +include_directories (${NETCDF}/include) + +message( "CMAKE_CURRENT_BINARY_DIR = ${CMAKE_CURRENT_BINARY_DIR}" ) link_directories(${CMAKE_CURRENT_BINARY_DIR}) +link_libraries( pioc piof netcdf ) # Add the test directories # Note: it's possible that these could be added by each source directory that diff --git a/src/biogeochem/test/CNPhenology_test/CMakeLists.txt b/src/biogeochem/test/CNPhenology_test/CMakeLists.txt index 2367c86612..283e089ba6 100644 --- a/src/biogeochem/test/CNPhenology_test/CMakeLists.txt +++ b/src/biogeochem/test/CNPhenology_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(CNPhenology TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeochem/test/CNVegComputeSeed_test/CMakeLists.txt b/src/biogeochem/test/CNVegComputeSeed_test/CMakeLists.txt index dd6bdba723..b958439031 100644 --- a/src/biogeochem/test/CNVegComputeSeed_test/CMakeLists.txt +++ b/src/biogeochem/test/CNVegComputeSeed_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(CNVegComputeSeed TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeochem/test/DustEmis_test/CMakeLists.txt b/src/biogeochem/test/DustEmis_test/CMakeLists.txt index c705d6c2e3..d312b721b9 100644 --- a/src/biogeochem/test/DustEmis_test/CMakeLists.txt +++ b/src/biogeochem/test/DustEmis_test/CMakeLists.txt @@ -5,4 +5,4 @@ set (pfunit_sources add_pfunit_ctest(DustEmis TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeochem/test/Latbaset_test/CMakeLists.txt b/src/biogeochem/test/Latbaset_test/CMakeLists.txt index 217fc7233c..d9f1c044f3 100644 --- a/src/biogeochem/test/Latbaset_test/CMakeLists.txt +++ b/src/biogeochem/test/Latbaset_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(CropTypeLatbaset TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/Balance_test/CMakeLists.txt b/src/biogeophys/test/Balance_test/CMakeLists.txt index 541d4fb266..e140323124 100644 --- a/src/biogeophys/test/Balance_test/CMakeLists.txt +++ b/src/biogeophys/test/Balance_test/CMakeLists.txt @@ -1,3 +1,3 @@ add_pfunit_ctest(balance TEST_SOURCES "test_Balance.pf" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/Daylength_test/CMakeLists.txt b/src/biogeophys/test/Daylength_test/CMakeLists.txt index 2e5cb58cf9..bd2d6407a9 100644 --- a/src/biogeophys/test/Daylength_test/CMakeLists.txt +++ b/src/biogeophys/test/Daylength_test/CMakeLists.txt @@ -4,4 +4,4 @@ set (pfunit_sources add_pfunit_ctest(Daylength TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/HillslopeHydrology_test/CMakeLists.txt b/src/biogeophys/test/HillslopeHydrology_test/CMakeLists.txt index f40baf96ed..078934cc78 100644 --- a/src/biogeophys/test/HillslopeHydrology_test/CMakeLists.txt +++ b/src/biogeophys/test/HillslopeHydrology_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(HillslopeHydrologyUtils TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/Irrigation_test/CMakeLists.txt b/src/biogeophys/test/Irrigation_test/CMakeLists.txt index 8cb531ba1a..4acf72961d 100644 --- a/src/biogeophys/test/Irrigation_test/CMakeLists.txt +++ b/src/biogeophys/test/Irrigation_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(irrigation TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/Photosynthesis_test/CMakeLists.txt b/src/biogeophys/test/Photosynthesis_test/CMakeLists.txt index 29810cbd9d..628a98994a 100644 --- a/src/biogeophys/test/Photosynthesis_test/CMakeLists.txt +++ b/src/biogeophys/test/Photosynthesis_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(Photosynthesis TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/SnowHydrology_test/CMakeLists.txt b/src/biogeophys/test/SnowHydrology_test/CMakeLists.txt index 600356b2ff..9e1738ab83 100644 --- a/src/biogeophys/test/SnowHydrology_test/CMakeLists.txt +++ b/src/biogeophys/test/SnowHydrology_test/CMakeLists.txt @@ -5,4 +5,4 @@ set (pfunit_sources add_pfunit_ctest(SnowHydrology TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/TotalWaterAndHeat_test/CMakeLists.txt b/src/biogeophys/test/TotalWaterAndHeat_test/CMakeLists.txt index a82532f69b..424515e414 100644 --- a/src/biogeophys/test/TotalWaterAndHeat_test/CMakeLists.txt +++ b/src/biogeophys/test/TotalWaterAndHeat_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(total_water_and_heat TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/WaterTracerContainerType_test/CMakeLists.txt b/src/biogeophys/test/WaterTracerContainerType_test/CMakeLists.txt index 283906a442..645972aa1e 100644 --- a/src/biogeophys/test/WaterTracerContainerType_test/CMakeLists.txt +++ b/src/biogeophys/test/WaterTracerContainerType_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(water_tracer_container TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/WaterTracerUtils_test/CMakeLists.txt b/src/biogeophys/test/WaterTracerUtils_test/CMakeLists.txt index 321e06883a..1a65bbfadd 100644 --- a/src/biogeophys/test/WaterTracerUtils_test/CMakeLists.txt +++ b/src/biogeophys/test/WaterTracerUtils_test/CMakeLists.txt @@ -5,4 +5,4 @@ set (pfunit_sources add_pfunit_ctest(water_tracer_utils TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/WaterType_test/CMakeLists.txt b/src/biogeophys/test/WaterType_test/CMakeLists.txt index 506179aabd..3f0ab409da 100644 --- a/src/biogeophys/test/WaterType_test/CMakeLists.txt +++ b/src/biogeophys/test/WaterType_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(water_type TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/biogeophys/test/Wateratm2lnd_test/CMakeLists.txt b/src/biogeophys/test/Wateratm2lnd_test/CMakeLists.txt index c2157952e0..1ddb840431 100644 --- a/src/biogeophys/test/Wateratm2lnd_test/CMakeLists.txt +++ b/src/biogeophys/test/Wateratm2lnd_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(water_atm2lnd TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/dyn_subgrid/test/dynConsBiogeophys_test/CMakeLists.txt b/src/dyn_subgrid/test/dynConsBiogeophys_test/CMakeLists.txt index 5e981270a4..da9c27090c 100644 --- a/src/dyn_subgrid/test/dynConsBiogeophys_test/CMakeLists.txt +++ b/src/dyn_subgrid/test/dynConsBiogeophys_test/CMakeLists.txt @@ -3,4 +3,4 @@ set(pfunit_sources add_pfunit_ctest(dynConsBiogeophys TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/dyn_subgrid/test/dynInitColumns_test/CMakeLists.txt b/src/dyn_subgrid/test/dynInitColumns_test/CMakeLists.txt index 7952f66756..0adbd696ad 100644 --- a/src/dyn_subgrid/test/dynInitColumns_test/CMakeLists.txt +++ b/src/dyn_subgrid/test/dynInitColumns_test/CMakeLists.txt @@ -1,3 +1,3 @@ add_pfunit_ctest(dynInitColumns TEST_SOURCES "test_init_columns.pf" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/dyn_subgrid/test/dynTimeInfo_test/CMakeLists.txt b/src/dyn_subgrid/test/dynTimeInfo_test/CMakeLists.txt index 66f2027c36..625ddae91b 100644 --- a/src/dyn_subgrid/test/dynTimeInfo_test/CMakeLists.txt +++ b/src/dyn_subgrid/test/dynTimeInfo_test/CMakeLists.txt @@ -1,3 +1,3 @@ add_pfunit_ctest(dynTimeInfo TEST_SOURCES "test_dynTimeInfo.pf" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/dyn_subgrid/test/dynVar_test/CMakeLists.txt b/src/dyn_subgrid/test/dynVar_test/CMakeLists.txt index fc4cf07b30..7164947f1e 100644 --- a/src/dyn_subgrid/test/dynVar_test/CMakeLists.txt +++ b/src/dyn_subgrid/test/dynVar_test/CMakeLists.txt @@ -9,4 +9,4 @@ set (extra_sources add_pfunit_ctest(dynVar TEST_SOURCES "${pfunit_sources}" OTHER_SOURCES "${extra_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/main/test/accumul_test/CMakeLists.txt b/src/main/test/accumul_test/CMakeLists.txt index 0b06d9e87e..8d7cf69f1c 100644 --- a/src/main/test/accumul_test/CMakeLists.txt +++ b/src/main/test/accumul_test/CMakeLists.txt @@ -3,4 +3,4 @@ set(pfunit_sources add_pfunit_ctest(accumul TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/main/test/atm2lnd_test/CMakeLists.txt b/src/main/test/atm2lnd_test/CMakeLists.txt index 51c4732205..fcc4159ce2 100644 --- a/src/main/test/atm2lnd_test/CMakeLists.txt +++ b/src/main/test/atm2lnd_test/CMakeLists.txt @@ -4,4 +4,4 @@ set(pfunit_sources add_pfunit_ctest(atm2lnd TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/main/test/initVertical_test/CMakeLists.txt b/src/main/test/initVertical_test/CMakeLists.txt index 8fe9648a50..aec45772c4 100644 --- a/src/main/test/initVertical_test/CMakeLists.txt +++ b/src/main/test/initVertical_test/CMakeLists.txt @@ -1,3 +1,3 @@ add_pfunit_ctest(initVertical TEST_SOURCES "test_initVertical.pf" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/self_tests/test/assertions_test/CMakeLists.txt b/src/self_tests/test/assertions_test/CMakeLists.txt index d36d8c7675..aeae976839 100644 --- a/src/self_tests/test/assertions_test/CMakeLists.txt +++ b/src/self_tests/test/assertions_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(assertions TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/soilbiogeochem/test/tillage_test/CMakeLists.txt b/src/soilbiogeochem/test/tillage_test/CMakeLists.txt index fbc550dd03..13be9aee3e 100644 --- a/src/soilbiogeochem/test/tillage_test/CMakeLists.txt +++ b/src/soilbiogeochem/test/tillage_test/CMakeLists.txt @@ -1,3 +1,3 @@ add_pfunit_ctest(tillage TEST_SOURCES "test_tillage.pf" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/utils/test/annual_flux_dribbler_test/CMakeLists.txt b/src/utils/test/annual_flux_dribbler_test/CMakeLists.txt index a0a60e7431..01efdc1e50 100644 --- a/src/utils/test/annual_flux_dribbler_test/CMakeLists.txt +++ b/src/utils/test/annual_flux_dribbler_test/CMakeLists.txt @@ -1,3 +1,3 @@ add_pfunit_ctest(annual_flux_dribbler TEST_SOURCES "test_annual_flux_dribbler.pf" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/utils/test/array_utils_test/CMakeLists.txt b/src/utils/test/array_utils_test/CMakeLists.txt index 21c7d91d81..a6b36304b4 100644 --- a/src/utils/test/array_utils_test/CMakeLists.txt +++ b/src/utils/test/array_utils_test/CMakeLists.txt @@ -5,4 +5,4 @@ set (pfunit_sources add_pfunit_ctest(array_utils TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/utils/test/clm_time_manager_test/CMakeLists.txt b/src/utils/test/clm_time_manager_test/CMakeLists.txt index f34e77dfc9..66a62e665d 100644 --- a/src/utils/test/clm_time_manager_test/CMakeLists.txt +++ b/src/utils/test/clm_time_manager_test/CMakeLists.txt @@ -1,3 +1,3 @@ add_pfunit_ctest(clm_time_manager TEST_SOURCES "test_clm_time_manager.pf" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) diff --git a/src/utils/test/numerics_test/CMakeLists.txt b/src/utils/test/numerics_test/CMakeLists.txt index 19d2c67451..2e826e2018 100644 --- a/src/utils/test/numerics_test/CMakeLists.txt +++ b/src/utils/test/numerics_test/CMakeLists.txt @@ -3,4 +3,4 @@ set (pfunit_sources add_pfunit_ctest(numerics TEST_SOURCES "${pfunit_sources}" - LINK_LIBRARIES clm csm_share esmf_wrf_timemgr) + LINK_LIBRARIES clm csm_share esmf) From 31070e622c65b88620e317903f038a67a2c8ba48 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 30 Oct 2024 01:49:27 -0600 Subject: [PATCH 02/25] Update submodules to something towards cesm3_0_alpha04a with cime updated beyond it as needed by PF UNIT testing, and ccs_config just updated to one beyond the previous one used by CTSM --- .gitmodules | 22 +++++++++++++++------- libraries/mpi-serial | 1 + 2 files changed, 16 insertions(+), 7 deletions(-) create mode 160000 libraries/mpi-serial diff --git a/.gitmodules b/.gitmodules index 1f6da08484..30adb590d3 100644 --- a/.gitmodules +++ b/.gitmodules @@ -60,7 +60,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/MOSART [submodule "mizuRoute"] path = components/mizuRoute url = https://github.com/ESCOMP/mizuRoute -fxtag = cesm-coupling.n02_v2.1.2 +fxtag = cesm-coupling.n02_v2.1.3 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESCOMP/mizuRoute @@ -68,7 +68,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/mizuRoute [submodule "ccs_config"] path = ccs_config url = https://github.com/ESMCI/ccs_config_cesm.git -fxtag = ccs_config_cesm1.0.0 +fxtag = ccs_config_cesm1.0.8 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESMCI/ccs_config_cesm.git @@ -76,7 +76,7 @@ fxDONOTUSEurl = https://github.com/ESMCI/ccs_config_cesm.git [submodule "cime"] path = cime url = https://github.com/ESMCI/cime -fxtag = cime6.0.246 +fxtag = cime6.1.37 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESMCI/cime @@ -84,7 +84,7 @@ fxDONOTUSEurl = https://github.com/ESMCI/cime [submodule "cmeps"] path = components/cmeps url = https://github.com/ESCOMP/CMEPS.git -fxtag = cmeps0.14.77 +fxtag = cmeps1.0.16 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESCOMP/CMEPS.git @@ -92,7 +92,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/CMEPS.git [submodule "cdeps"] path = components/cdeps url = https://github.com/ESCOMP/CDEPS.git -fxtag = cdeps1.0.48 +fxtag = cdeps1.0.53 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESCOMP/CDEPS.git @@ -100,7 +100,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/CDEPS.git [submodule "share"] path = share url = https://github.com/ESCOMP/CESM_share -fxtag = share1.0.19 +fxtag = share1.0.20 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESCOMP/CESM_share @@ -116,11 +116,19 @@ fxDONOTUSEurl = https://github.com/MCSclimate/MCT [submodule "parallelio"] path = libraries/parallelio url = https://github.com/NCAR/ParallelIO -fxtag = pio2_6_2 +fxtag = pio2_6_3 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/NCAR/ParallelIO +[submodule "mpi-serial"] +path = libraries/mpi-serial +url = https://github.com/ESMCI/mpi-serial +fxtag = MPIserial_2.5.0 +fxrequired = ToplevelRequired +# Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed +fxDONOTUSEurl = https://github.com/ESMCI/mpi-serial + [submodule "doc-builder"] path = doc/doc-builder url = https://github.com/ESMCI/doc-builder diff --git a/libraries/mpi-serial b/libraries/mpi-serial new file mode 160000 index 0000000000..2c44fb3d32 --- /dev/null +++ b/libraries/mpi-serial @@ -0,0 +1 @@ +Subproject commit 2c44fb3d327be7c6429894bc5d4de769f3486848 From 326d8dd2fff3cae329dc56aba54330e0615c7ba7 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 30 Oct 2024 10:50:36 -0600 Subject: [PATCH 03/25] Match cesm3_0_alpha04a submodules closer, move ccs_config back one, and share forward, and remove mct --- .gitmodules | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/.gitmodules b/.gitmodules index 30adb590d3..5f1e4b9fa7 100644 --- a/.gitmodules +++ b/.gitmodules @@ -68,7 +68,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/mizuRoute [submodule "ccs_config"] path = ccs_config url = https://github.com/ESMCI/ccs_config_cesm.git -fxtag = ccs_config_cesm1.0.8 +fxtag = ccs_config_cesm1.0.7 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESMCI/ccs_config_cesm.git @@ -100,19 +100,11 @@ fxDONOTUSEurl = https://github.com/ESCOMP/CDEPS.git [submodule "share"] path = share url = https://github.com/ESCOMP/CESM_share -fxtag = share1.0.20 +fxtag = share1.1.2 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESCOMP/CESM_share -[submodule "mct"] -path = libraries/mct -url = https://github.com/MCSclimate/MCT -fxtag = MCT_2.11.0 -fxrequired = ToplevelRequired -# Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed -fxDONOTUSEurl = https://github.com/MCSclimate/MCT - [submodule "parallelio"] path = libraries/parallelio url = https://github.com/NCAR/ParallelIO From c3a4d8b735627225539e37a40a1e0c397dd03b1a Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 30 Oct 2024 10:52:22 -0600 Subject: [PATCH 04/25] Update git submodule directories --- ccs_config | 2 +- cime | 2 +- components/cdeps | 2 +- components/cmeps | 2 +- components/mizuRoute | 2 +- libraries/parallelio | 2 +- share | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ccs_config b/ccs_config index 69a958581e..e4ac80ef14 160000 --- a/ccs_config +++ b/ccs_config @@ -1 +1 @@ -Subproject commit 69a958581ecd2d32ee9cb1c38bcd3847b8b920bf +Subproject commit e4ac80ef142954e582b4065222145352f22cd3a4 diff --git a/cime b/cime index 422ddaa770..a8a04e2d9d 160000 --- a/cime +++ b/cime @@ -1 +1 @@ -Subproject commit 422ddaa770a3cea6e83a60c9700ebce77acaceed +Subproject commit a8a04e2d9deac572e6f2222b4f893a575308db99 diff --git a/components/cdeps b/components/cdeps index 7b0b3a8272..f6bc97483a 160000 --- a/components/cdeps +++ b/components/cdeps @@ -1 +1 @@ -Subproject commit 7b0b3a827241c53d296ec877cb1f59966bf5e5bf +Subproject commit f6bc97483a1bfb7352c6c5610a13ed898a86990b diff --git a/components/cmeps b/components/cmeps index 47fb4e633a..5b7d76978e 160000 --- a/components/cmeps +++ b/components/cmeps @@ -1 +1 @@ -Subproject commit 47fb4e633a76ec6d60969b1af751f90790387246 +Subproject commit 5b7d76978e2fdc661ec2de4ba9834b985decadc6 diff --git a/components/mizuRoute b/components/mizuRoute index 81c720c7ee..2ff305a029 160000 --- a/components/mizuRoute +++ b/components/mizuRoute @@ -1 +1 @@ -Subproject commit 81c720c7ee51f9c69f2934f696078c42f4493565 +Subproject commit 2ff305a0292cb06789de6cfea7ad3cc0d6173493 diff --git a/libraries/parallelio b/libraries/parallelio index f52ade0756..6539ef05ae 160000 --- a/libraries/parallelio +++ b/libraries/parallelio @@ -1 +1 @@ -Subproject commit f52ade075619b32fa141993b5665b0fe099befc2 +Subproject commit 6539ef05ae7584ec570a56fdab9f7dfb336c2b80 diff --git a/share b/share index 4b9dc4871a..f6f31fd61c 160000 --- a/share +++ b/share @@ -1 +1 @@ -Subproject commit 4b9dc4871a259f00f35bb47708d876cb7dcdf75c +Subproject commit f6f31fd61cb8f80aee97311fcca64b3e26b0202c From c0d408037adcccc6c9f33261ff098a3dafd975a5 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 30 Oct 2024 11:06:06 -0600 Subject: [PATCH 05/25] Delete mct as no longer needed --- libraries/mct | 1 - 1 file changed, 1 deletion(-) delete mode 160000 libraries/mct diff --git a/libraries/mct b/libraries/mct deleted file mode 160000 index 82b0071e69..0000000000 --- a/libraries/mct +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 82b0071e69d14330b75d23b0bc68543ebea9aadc From d7cb1820a1b745b5f2ffc896d257fe7ccc6c9ede Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 30 Oct 2024 11:06:37 -0600 Subject: [PATCH 06/25] Update ccs_config as required for the build with this version of cime --- .gitmodules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitmodules b/.gitmodules index 5f1e4b9fa7..78a24f5789 100644 --- a/.gitmodules +++ b/.gitmodules @@ -68,7 +68,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/mizuRoute [submodule "ccs_config"] path = ccs_config url = https://github.com/ESMCI/ccs_config_cesm.git -fxtag = ccs_config_cesm1.0.7 +fxtag = ccs_config_cesm1.0.8 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESMCI/ccs_config_cesm.git From f472f6d802a34c6d8093ddaa024da9057e621c4e Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 30 Oct 2024 16:50:14 -0600 Subject: [PATCH 07/25] Remove commented out code and log message and add some comments about what's going on based on code review --- src/CMakeLists.txt | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7501723930..70cf802e45 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -13,7 +13,9 @@ include(CIME_utils) set(CLM_ROOT "..") -#find_package(ESMF 8.2.0 REQUIRED ) +# find needed external packages +# This is where ESMF could be asked for, but it's already included in the share build brought in below +# NetCDF is required -- because PIO and NetCDF are required by the standard default ESMF libraries find_package(NetCDF 4.7.4 REQUIRED Fortran) # Add source directories from other share code (csm_share, etc.). This should be @@ -56,6 +58,7 @@ foreach (sourcefile ${share_sources}) endif() endforeach() +# Bring in PIO, jsut because it's needed for the default ESMF library and included in other submodules like share and cmeps if (DEFINED PIO) set(PIO_PATH ${PIO}) else() @@ -64,6 +67,7 @@ endif() # Build libraries containing stuff needed for the unit tests. # Eventually, these add_library calls should probably be distributed into the correct location, rather than being in this top-level CMakeLists.txt file. +# This line of bringing in the share library also brings in ESMF and PIO add_library(csm_share ${share_sources} ${drv_sources_needed}) declare_generated_dependencies(csm_share "${share_genf90_sources}") add_library(clm ${clm_sources}) @@ -74,7 +78,7 @@ add_dependencies(clm csm_share esmf) include_directories(${CLM_ROOT}/share/include) -# PIO2 +# PIO2 library to the include and the linking step add_compile_definitions(PIO2) add_library(pioc STATIC IMPORTED) @@ -88,7 +92,7 @@ include_directories (${ESMF_F90COMPILEPATHS}) include_directories ($ENV{PIO}/include) include_directories (${NETCDF}/include) -message( "CMAKE_CURRENT_BINARY_DIR = ${CMAKE_CURRENT_BINARY_DIR}" ) +# Directories and libraries to include in the link step link_directories(${CMAKE_CURRENT_BINARY_DIR}) link_libraries( pioc piof netcdf ) From 1c60312bdd82b2eb869cc4ece9c522aca33eb02c Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Fri, 1 Nov 2024 13:49:23 -0600 Subject: [PATCH 08/25] CIME update at cime6.1.11 requires moving CIME.utils append_testlog to CIME.status --- cime_config/SystemTests/lilacsmoke.py | 3 ++- cime_config/SystemTests/sspmatrixcn.py | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cime_config/SystemTests/lilacsmoke.py b/cime_config/SystemTests/lilacsmoke.py index 5bdbb31ec1..8202505ab2 100644 --- a/cime_config/SystemTests/lilacsmoke.py +++ b/cime_config/SystemTests/lilacsmoke.py @@ -25,7 +25,8 @@ import shutil from CIME.SystemTests.system_tests_common import SystemTestsCommon -from CIME.utils import run_cmd, run_cmd_no_fail, symlink_force, new_lid, safe_copy, append_testlog +from CIME.utils import run_cmd, run_cmd_no_fail, symlink_force, new_lid, safe_copy +from CIME.status import append_testlog from CIME.build import post_build from CIME.test_status import ( NAMELIST_PHASE, diff --git a/cime_config/SystemTests/sspmatrixcn.py b/cime_config/SystemTests/sspmatrixcn.py index f4a09a277e..29b6dce8e6 100644 --- a/cime_config/SystemTests/sspmatrixcn.py +++ b/cime_config/SystemTests/sspmatrixcn.py @@ -22,7 +22,7 @@ sys.path.append(os.path.join(CIMEROOT, "scripts", "lib")) sys.path.append(os.path.join(CIMEROOT, "scripts")) else: - from CIME.utils import append_testlog + from CIME.status import append_testlog from CIME.XML.standard_module_setup import * from CIME.SystemTests.system_tests_common import SystemTestsCommon From 94dccba56719c9d21d13c17308ba30307e10f05f Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Fri, 1 Nov 2024 14:10:51 -0600 Subject: [PATCH 09/25] Add a comment to note that MCTID is just the component ID number --- src/cpl/nuopc/lnd_comp_nuopc.F90 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cpl/nuopc/lnd_comp_nuopc.F90 b/src/cpl/nuopc/lnd_comp_nuopc.F90 index 7fe93454ac..9631e807cd 100644 --- a/src/cpl/nuopc/lnd_comp_nuopc.F90 +++ b/src/cpl/nuopc/lnd_comp_nuopc.F90 @@ -235,7 +235,7 @@ subroutine InitializeAdvertise(gcomp, importState, exportState, clock, rc) if (ChkErr(rc,__LINE__,u_FILE_u)) return ! Note still need compid for those parts of the code that use the data model - ! functionality through subroutine calls + ! functionality through subroutine calls (MCTID just means the Model ComonenT IDentification number) call NUOPC_CompAttributeGet(gcomp, name='MCTID', value=cvalue, rc=rc) if (ChkErr(rc,__LINE__,u_FILE_u)) return read(cvalue,*) compid ! convert from string to integer From ae600d5f5553ec10c5c1b1ed582e7c4bd69273cd Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Sat, 2 Nov 2024 01:04:24 -0600 Subject: [PATCH 10/25] Add test for valid driver option --- bld/unit_testers/build-namelist_test.pl | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/bld/unit_testers/build-namelist_test.pl b/bld/unit_testers/build-namelist_test.pl index 2d848b38a5..b6ce7021c6 100755 --- a/bld/unit_testers/build-namelist_test.pl +++ b/bld/unit_testers/build-namelist_test.pl @@ -163,7 +163,7 @@ sub cat_and_create_namelistinfile { # # Figure out number of tests that will run # -my $ntests = 3229; +my $ntests = 3230; if ( defined($opts{'compare'}) ) { $ntests += 2437; @@ -922,6 +922,10 @@ sub cat_and_create_namelistinfile { namelst=>"", phys=>"clm6_0", }, + "driver is invalid" =>{ options=>"-driver invalid_name -envxml_dir .", + namelst=>"", + phys=>"clm6_0", + }, "lnd_frac not set but lilac"=>{ options=>"-driver nuopc -lilac -envxml_dir . -lnd_frac UNSET", namelst=>"fsurdat='surfdata.nc'", phys=>"clm6_0", From d38b3a5d6c277b8ea5dee21a02b269c11eb64ff7 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Sat, 2 Nov 2024 01:16:29 -0600 Subject: [PATCH 11/25] Some adjustments to make lilac clearer, also add checking for an invalid driver option --- bld/CLMBuildNamelist.pm | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/bld/CLMBuildNamelist.pm b/bld/CLMBuildNamelist.pm index 32204388f3..2018475311 100755 --- a/bld/CLMBuildNamelist.pm +++ b/bld/CLMBuildNamelist.pm @@ -71,7 +71,7 @@ REQUIRED OPTIONS (if read they allow user_nl_clm and CLM_BLDNML_OPTS to expand variables [for example to use \$DIN_LOC_ROOT]) (default current directory) - -lnd_frac "domainfile" Land fraction file (the input domain file) (needed for LILAC) + -lnd_frac "domainfile" Land fraction file (the input domain file) (only needed with --lilac option) -res "resolution" Specify horizontal grid. Use nlatxnlon for spectral grids; dlatxdlon for fv grids (dlat and dlon are the grid cell size in degrees for latitude and longitude respectively) @@ -1989,7 +1989,7 @@ sub setup_logic_lnd_frac { "env variables) AND fatmlndfrac on namelist"); } if ( $opts->{$var} =~ /UNSET/ ) { - $log->fatal_error("-lnd_frac was set as UNSET in the CTSM build-namelist set it with the env variables: LND_DOMAIN_PATH/LND_DOMAIN_FILE."); + $log->fatal_error("-lnd_frac was set as UNSET in the CTSM build-namelist, it's required with the --lilac option"); } my $lnd_frac = SetupTools::expand_xml_var( $opts->{$var}, $envxml_ref); add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, 'fatmlndfrc','val'=>$lnd_frac ); @@ -1999,20 +1999,22 @@ sub setup_logic_lnd_frac { if (defined $nl->get_value('fatmlndfrc')) { # do nothing - use value provided by config_grid.xml and clm.cpl7.template } else { - $log->fatal_error("fatmlndfrc was NOT sent into CLM build-namelist."); + $log->fatal_error("fatmlndfrc was NOT sent into CLM build-namelist, it is required for the --lilac option."); } # # For the NUOPC driver neither lnd_frac nor fatmlndfrc need to be set # - } else { + } elsif ($opts->{'driver'} eq "nuopc" ) { if ( defined($opts->{$var}) ) { if ( $opts->{$var} !~ /UNSET/ ) { - $log->fatal_error("$var should NOT be set for the NUOPC driver as it is unused" ); + $log->fatal_error("$var should NOT be set for the NUOPC driver as it is unused (only used by the --lilac option)" ); } } if ( defined($nl->get_value('fatmlndfrc')) ) { $log->fatal_error("fatmlndfrac should NOT be set in the namelist for the NUOPC driver as it is unused" ); } + } else { + $log->fatal_error("Input --driver type of $opts->{'driver'} is an invalid option. Correct this in xml variable COMP_iINTERFACE in your case" ); } } @@ -2760,7 +2762,7 @@ SIMYR: foreach my $sim_yr ( @sim_years ) { # this check has to be here and not earlier since use_init_interp is set here and hillslope is already set above in setup_logic_hillslope if ( &value_is_true($nl->get_value($useinitvar)) && value_is_true($nl->get_value("use_hillslope")) ) { $log->warning("WARNING: You have set use_hillslope while $useinitvar is TRUE.\n This means all hillslope columns in a gridcell will read identical values from initial conditions, even if the initial conditions (finidat) file has hillslope information. If you are sure you want this behaviour, add -ignore_warnings to CLM_BLDNML_OPTS.") - } +} } # end initial conditions From 933abaeac41b4e2a5f03ceccd8029f3d35410834 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Sat, 2 Nov 2024 02:14:10 -0600 Subject: [PATCH 12/25] Update ccs_config --- ccs_config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ccs_config b/ccs_config index e4ac80ef14..775e9f7900 160000 --- a/ccs_config +++ b/ccs_config @@ -1 +1 @@ -Subproject commit e4ac80ef142954e582b4065222145352f22cd3a4 +Subproject commit 775e9f790044c3632e70e2beda9d66db34558b7b From 38f11c2d4d7eff409c4069fa06baf60dec1587d9 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 6 Nov 2024 11:01:18 -0700 Subject: [PATCH 13/25] Update mpi-serial to version that builds on Izumi --- .gitmodules | 2 +- libraries/mpi-serial | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index 78a24f5789..e812c4c63a 100644 --- a/.gitmodules +++ b/.gitmodules @@ -116,7 +116,7 @@ fxDONOTUSEurl = https://github.com/NCAR/ParallelIO [submodule "mpi-serial"] path = libraries/mpi-serial url = https://github.com/ESMCI/mpi-serial -fxtag = MPIserial_2.5.0 +fxtag = MPIserial_2.5.1 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESMCI/mpi-serial diff --git a/libraries/mpi-serial b/libraries/mpi-serial index 2c44fb3d32..39416b7546 160000 --- a/libraries/mpi-serial +++ b/libraries/mpi-serial @@ -1 +1 @@ -Subproject commit 2c44fb3d327be7c6429894bc5d4de769f3486848 +Subproject commit 39416b754652bd281a89e86b37734aa5f3ffafd6 From 2a6348f11631ab63f3b8b6ebadc012e7ccb2a78b Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Fri, 8 Nov 2024 15:26:21 -0700 Subject: [PATCH 14/25] A fix for mpi-serial on Izumi from Jim with an update in ccs_config --- .gitmodules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitmodules b/.gitmodules index e812c4c63a..ed23904527 100644 --- a/.gitmodules +++ b/.gitmodules @@ -68,7 +68,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/mizuRoute [submodule "ccs_config"] path = ccs_config url = https://github.com/ESMCI/ccs_config_cesm.git -fxtag = ccs_config_cesm1.0.8 +fxtag = ccs_config_cesm1.0.10 fxrequired = ToplevelRequired # Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed fxDONOTUSEurl = https://github.com/ESMCI/ccs_config_cesm.git From 6c87b4ed7ffd42e7d63d521ecd1c07d4591c5bb8 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Mon, 18 Nov 2024 00:42:57 -0700 Subject: [PATCH 15/25] Remove month length from ER tests fixing #2871 --- cime_config/testdefs/testlist_clm.xml | 52 +++++++++++++-------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/cime_config/testdefs/testlist_clm.xml b/cime_config/testdefs/testlist_clm.xml index 4c13e821b3..e91bbe26f7 100644 --- a/cime_config/testdefs/testlist_clm.xml +++ b/cime_config/testdefs/testlist_clm.xml @@ -863,7 +863,7 @@ - + @@ -893,7 +893,7 @@ - + @@ -903,7 +903,7 @@ - + @@ -1434,7 +1434,7 @@ - + @@ -1444,7 +1444,7 @@ - + @@ -1452,10 +1452,10 @@ - + - + @@ -1463,7 +1463,7 @@ - + @@ -1474,7 +1474,7 @@ - + @@ -1515,13 +1515,13 @@ - + - + @@ -1551,7 +1551,7 @@ - + @@ -1561,7 +1561,7 @@ - + @@ -1697,7 +1697,7 @@ - + @@ -1725,7 +1725,7 @@ - + @@ -1734,7 +1734,7 @@ - + @@ -1926,7 +1926,7 @@ - + @@ -1936,7 +1936,7 @@ - + @@ -1944,7 +1944,7 @@ - + @@ -2400,7 +2400,7 @@ - + @@ -2466,7 +2466,7 @@ - + @@ -2475,7 +2475,7 @@ - + @@ -2619,7 +2619,7 @@ - + @@ -2628,7 +2628,7 @@ - + @@ -2794,7 +2794,7 @@ - + @@ -2802,7 +2802,7 @@ - + From 8d02a9b7612bb936b18dabdb8a9d32ebf5e75744 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Mon, 18 Nov 2024 00:44:37 -0700 Subject: [PATCH 16/25] Add another expected fail --- cime_config/testdefs/ExpectedTestFails.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/cime_config/testdefs/ExpectedTestFails.xml b/cime_config/testdefs/ExpectedTestFails.xml index 53cf50087c..d7e8605eaa 100644 --- a/cime_config/testdefs/ExpectedTestFails.xml +++ b/cime_config/testdefs/ExpectedTestFails.xml @@ -138,6 +138,13 @@ + + + FAIL + #2310 + + + FAIL From 16459da0385c2699902e09277b87120e66cc541c Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Mon, 18 Nov 2024 13:17:31 -0700 Subject: [PATCH 17/25] Change some 13 month tests to 397 in case it's Gregorian for 2000 year compsets, make sure yearly ER tests have at least 3 years, or done in days --- cime_config/testdefs/testlist_clm.xml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/cime_config/testdefs/testlist_clm.xml b/cime_config/testdefs/testlist_clm.xml index 36d143029f..b3e96839c6 100644 --- a/cime_config/testdefs/testlist_clm.xml +++ b/cime_config/testdefs/testlist_clm.xml @@ -1570,7 +1570,7 @@ - + @@ -1953,7 +1953,7 @@ - + @@ -2409,7 +2409,7 @@ - + @@ -2803,20 +2803,22 @@ - + + - + + From 9fb9da27c74a8ae31b7ccc8fe43efdd1ca60865f Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Mon, 18 Nov 2024 17:20:04 -0700 Subject: [PATCH 18/25] Remove the izumi nag mpi-serial expected fails --- cime_config/testdefs/ExpectedTestFails.xml | 81 ---------------------- 1 file changed, 81 deletions(-) diff --git a/cime_config/testdefs/ExpectedTestFails.xml b/cime_config/testdefs/ExpectedTestFails.xml index d7e8605eaa..10869f105e 100644 --- a/cime_config/testdefs/ExpectedTestFails.xml +++ b/cime_config/testdefs/ExpectedTestFails.xml @@ -298,71 +298,6 @@ - - - - - FAIL - #2861 - - - - - - FAIL - #2861 - - - - - - FAIL - #2861 - - - - - - FAIL - #2861 - - - - - - FAIL - #2861 - - - - - - FAIL - #2861 - - - - - - FAIL - #2861 - - - - - - FAIL - #2861 - - - - - - FAIL - #2861 - - - FAIL @@ -377,22 +312,6 @@ - - - FAIL - #2861 - - - - - - - FAIL - #2861 - - - - FAIL From 7f859f2eaf29837c45af9481f8e2342b440f360d Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Tue, 19 Nov 2024 02:32:46 -0700 Subject: [PATCH 19/25] Change C96 grids to use the mt232 ocean mask --- cime_config/testdefs/testlist_clm.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cime_config/testdefs/testlist_clm.xml b/cime_config/testdefs/testlist_clm.xml index b3e96839c6..8d1adde851 100644 --- a/cime_config/testdefs/testlist_clm.xml +++ b/cime_config/testdefs/testlist_clm.xml @@ -196,7 +196,7 @@ - + @@ -749,7 +749,7 @@ - + @@ -1608,7 +1608,7 @@ - + From d36049e7e636b6f581767a31b0c6ebb154f775d9 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Tue, 19 Nov 2024 02:43:40 -0700 Subject: [PATCH 20/25] Switch some tests from nofire to nofireemis testmod --- cime_config/testdefs/testlist_clm.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cime_config/testdefs/testlist_clm.xml b/cime_config/testdefs/testlist_clm.xml index 8d1adde851..3e688c5872 100644 --- a/cime_config/testdefs/testlist_clm.xml +++ b/cime_config/testdefs/testlist_clm.xml @@ -2157,7 +2157,7 @@ - + @@ -2166,7 +2166,7 @@ - + @@ -2176,7 +2176,7 @@ - + @@ -2185,7 +2185,7 @@ - + From 89fdd78b30ffc4213934c890913cb4f2d9d191f3 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Tue, 19 Nov 2024 02:46:20 -0700 Subject: [PATCH 21/25] Revert "Switch some tests from nofire to nofireemis testmod" This reverts commit d36049e7e636b6f581767a31b0c6ebb154f775d9. --- cime_config/testdefs/testlist_clm.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cime_config/testdefs/testlist_clm.xml b/cime_config/testdefs/testlist_clm.xml index 3e688c5872..8d1adde851 100644 --- a/cime_config/testdefs/testlist_clm.xml +++ b/cime_config/testdefs/testlist_clm.xml @@ -2157,7 +2157,7 @@ - + @@ -2166,7 +2166,7 @@ - + @@ -2176,7 +2176,7 @@ - + @@ -2185,7 +2185,7 @@ - + From 7f57331c71194144e668eb1b37a8d53fcbc41def Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Tue, 19 Nov 2024 11:15:20 -0700 Subject: [PATCH 22/25] Fix SP nofire tests Some of the ctsm_sci tests with Sp were running nofire, which should have been nofireemis with the default testmod. --- cime_config/testdefs/testlist_clm.xml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/cime_config/testdefs/testlist_clm.xml b/cime_config/testdefs/testlist_clm.xml index 8d1adde851..81eb7265d2 100644 --- a/cime_config/testdefs/testlist_clm.xml +++ b/cime_config/testdefs/testlist_clm.xml @@ -2157,7 +2157,7 @@ - + @@ -2166,32 +2166,35 @@ - + + - + + - + + From 12c5f569a9c101ac30af484e1e458f7948626048 Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Tue, 19 Nov 2024 12:41:16 -0700 Subject: [PATCH 23/25] Fix 36 year tests that should have been 3 I put in 36 year tests rather than 3 years. One ERP test I made for 762 days rather than 3 years to shorten it. 762 allows even months for one year being a leap year. --- cime_config/testdefs/testlist_clm.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cime_config/testdefs/testlist_clm.xml b/cime_config/testdefs/testlist_clm.xml index 81eb7265d2..cec7e775f5 100644 --- a/cime_config/testdefs/testlist_clm.xml +++ b/cime_config/testdefs/testlist_clm.xml @@ -1524,13 +1524,13 @@ - + - + @@ -2478,7 +2478,7 @@ - + @@ -2487,7 +2487,7 @@ - + From 89bbdbc9f0757b755a239120231dbaf8063d883e Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 20 Nov 2024 01:57:50 -0700 Subject: [PATCH 24/25] fix (namelist-tester): Run CAM special tests for clm6_0 and get working --- bld/unit_testers/build-namelist_test.pl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bld/unit_testers/build-namelist_test.pl b/bld/unit_testers/build-namelist_test.pl index c012d35418..f23f7d6173 100755 --- a/bld/unit_testers/build-namelist_test.pl +++ b/bld/unit_testers/build-namelist_test.pl @@ -163,7 +163,7 @@ sub cat_and_create_namelistinfile { # # Figure out number of tests that will run # -my $ntests = 3230; +my $ntests = 3263; if ( defined($opts{'compare'}) ) { $ntests += 2437; @@ -473,7 +473,7 @@ sub cat_and_create_namelistinfile { print "\n===============================================================================\n"; print "Test some CAM specific setups for special grids \n"; print "=================================================================================\n"; -foreach my $phys ( "clm4_5", "clm5_0" ) { +foreach my $phys ( "clm4_5", "clm5_0", "clm6_0" ) { $mode = "-phys $phys"; &make_config_cache($phys); foreach my $options ( @@ -485,7 +485,7 @@ sub cat_and_create_namelistinfile { "-res ne0np4CONUS.ne30x8 -bgc sp -use_case 2000_control -namelist '&a start_ymd=20130101/' -lnd_tuning_mode ${phys}_cam7.0", "-res 1.9x2.5 -bgc sp -use_case 20thC_transient -namelist '&a start_ymd=20030101/' -lnd_tuning_mode ${phys}_cam7.0", "-res 1.9x2.5 -bgc sp -use_case 2010_control -namelist '&a start_ymd=20100101/' -lnd_tuning_mode ${phys}_cam7.0", - "-res 1x1_brazil -no-megan -use_case 2000_control -lnd_tuning_mode ${phys}_CRUv7", + "-res 1x1_brazil -no-megan -use_case 2000_control -lnd_tuning_mode ${phys}_GSWP3v1", "-res C96 -bgc sp -use_case 2010_control -namelist '&a start_ymd=20100101/' -lnd_tuning_mode ${phys}_cam7.0", "-res ne0np4.ARCTIC.ne30x4 -bgc sp -use_case 2000_control -namelist '&a start_ymd=20130101/' -lnd_tuning_mode ${phys}_cam7.0", ) { @@ -906,7 +906,7 @@ sub cat_and_create_namelistinfile { namelst=>"h2osfcflag=0", phys=>"clm5_0", }, - "45bad lnd_tuning_mode value" =>{ options=>"-lnd_tuning_mode clm5_0_GSWP3 -envxml_dir .", + "45bad lnd_tuning_mode value" =>{ options=>"-lnd_tuning_mode clm5_0_GSWP3v1 -envxml_dir .", namelst=>"", phys=>"clm4_5", }, From 1de46e3224299ee4eaa87acac8c45c777c75a2ab Mon Sep 17 00:00:00 2001 From: Erik Kluzek Date: Wed, 20 Nov 2024 17:23:30 -0700 Subject: [PATCH 25/25] change (tests): change some of the ER tests that were changed to length days so that they won't be on an exact year/month boundary --- cime_config/testdefs/testlist_clm.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/cime_config/testdefs/testlist_clm.xml b/cime_config/testdefs/testlist_clm.xml index cec7e775f5..2ad1f3b4d5 100644 --- a/cime_config/testdefs/testlist_clm.xml +++ b/cime_config/testdefs/testlist_clm.xml @@ -902,7 +902,7 @@ - + @@ -1551,7 +1551,7 @@ - + @@ -1560,7 +1560,7 @@ - + @@ -2412,7 +2412,7 @@ - + @@ -2478,7 +2478,7 @@ - + @@ -2487,7 +2487,7 @@ - +