From c1a71c384b1eef0c977b5e5eddade290e93053fe Mon Sep 17 00:00:00 2001 From: Johannes Keller Date: Thu, 8 Oct 2026 09:52:00 +0200 Subject: [PATCH 1/8] PDAF: split external project make commands for parallel build --- cmake/BuildPDAF.cmake | 4 ++-- cmake/BuildPDAFFRAMEWORK.cmake | 4 ++-- cmake/BuildPDAFMODEL.cmake | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cmake/BuildPDAF.cmake b/cmake/BuildPDAF.cmake index a653e44b..2862264a 100644 --- a/cmake/BuildPDAF.cmake +++ b/cmake/BuildPDAF.cmake @@ -278,8 +278,8 @@ ExternalProject_Add(PDAF PREFIX PDAF SOURCE_DIR ${PDAF_SRC} BUILD_IN_SOURCE TRUE - CONFIGURE_COMMAND "" - BUILD_COMMAND make ${PDAF_ENV_VARS} clean directories libpdaf + CONFIGURE_COMMAND make ${PDAF_ENV_VARS} clean directories + BUILD_COMMAND make ${PDAF_ENV_VARS} -j ${PARALLEL_JOBS} libpdaf INSTALL_COMMAND "" DEPENDS ${PDAF_DEPENDENCIES} ) diff --git a/cmake/BuildPDAFFRAMEWORK.cmake b/cmake/BuildPDAFFRAMEWORK.cmake index 81652f8a..e8ac7b57 100644 --- a/cmake/BuildPDAFFRAMEWORK.cmake +++ b/cmake/BuildPDAFFRAMEWORK.cmake @@ -33,8 +33,8 @@ ExternalProject_Add(PDAF-Framework PREFIX PDAF-Framework SOURCE_DIR ${PDAF_SRC}/interface/framework BUILD_IN_SOURCE TRUE - CONFIGURE_COMMAND "" - BUILD_COMMAND make ${PDAFFRAMEWORK_ENV_VARS} clean all + CONFIGURE_COMMAND make ${PDAFFRAMEWORK_ENV_VARS} clean + BUILD_COMMAND make ${PDAFFRAMEWORK_ENV_VARS} -j ${PARALLEL_JOBS} all INSTALL_COMMAND "" DEPENDS PDAF-Model ) diff --git a/cmake/BuildPDAFMODEL.cmake b/cmake/BuildPDAFMODEL.cmake index 49345e6b..aad82741 100644 --- a/cmake/BuildPDAFMODEL.cmake +++ b/cmake/BuildPDAFMODEL.cmake @@ -213,8 +213,8 @@ ExternalProject_Add(PDAF-Model PREFIX PDAF-Model SOURCE_DIR ${PDAF_SRC}/interface/model BUILD_IN_SOURCE TRUE - CONFIGURE_COMMAND "" - BUILD_COMMAND make ${PDAFMODEL_ENV_VARS} clean all + CONFIGURE_COMMAND make ${PDAFMODEL_ENV_VARS} clean + BUILD_COMMAND make ${PDAFMODEL_ENV_VARS} -j ${PARALLEL_JOBS} all INSTALL_COMMAND "" DEPENDS PDAF ) From abd24a016321e927a37c9f4f02085d874cb477e4 Mon Sep 17 00:00:00 2001 From: Johannes Keller Date: Thu, 8 Oct 2026 09:52:57 +0200 Subject: [PATCH 2/8] update "models/pdaf" to tsmp-pdaf-patched-parallel-build --- .gitmodules | 2 +- models/pdaf | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index faac9f2b..70388408 100644 --- a/.gitmodules +++ b/.gitmodules @@ -13,7 +13,7 @@ [submodule "models/pdaf"] path = models/pdaf url = https://github.com/HPSCTerrSys/pdaf.git - branch = tsmp-pdaf-patched + branch = tsmp-pdaf-patched-parallel-build [submodule "models/eCLM"] path = models/eCLM url = https://github.com/HPSCTerrSys/eCLM.git diff --git a/models/pdaf b/models/pdaf index 43eb07e9..5f594493 160000 --- a/models/pdaf +++ b/models/pdaf @@ -1 +1 @@ -Subproject commit 43eb07e9f31ec49765f1c9e6a563b20eaba63395 +Subproject commit 5f594493e542f9c478ec5454d8d9443eab006651 From 0885a1974e16c021a2555f3b0392e601670d5ef9 Mon Sep 17 00:00:00 2001 From: Johannes Keller Date: Thu, 8 Oct 2026 10:45:59 +0200 Subject: [PATCH 3/8] update "models/pdaf" --- models/pdaf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/models/pdaf b/models/pdaf index 5f594493..223934f0 160000 --- a/models/pdaf +++ b/models/pdaf @@ -1 +1 @@ -Subproject commit 5f594493e542f9c478ec5454d8d9443eab006651 +Subproject commit 223934f08e3f4f3636f80da55725cf57a95d2ec8 From f186a0ae7f71f8cf4440ba2d7b7d386c1b813d3d Mon Sep 17 00:00:00 2001 From: Johannes Keller Date: Thu, 8 Oct 2026 10:59:46 +0200 Subject: [PATCH 4/8] update "models/pdaf" --- models/pdaf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/models/pdaf b/models/pdaf index 223934f0..e6ffbba7 160000 --- a/models/pdaf +++ b/models/pdaf @@ -1 +1 @@ -Subproject commit 223934f08e3f4f3636f80da55725cf57a95d2ec8 +Subproject commit e6ffbba7d7d0f21b173571a1a9efbf1a93d9d98e From 10fca915bfea4f9bd6a4fbd7c23c1a5b273f41e8 Mon Sep 17 00:00:00 2001 From: Johannes Keller Date: Thu, 8 Oct 2026 11:09:33 +0200 Subject: [PATCH 5/8] PDAF: for Stages/2024 for now relaxing this condition for testing, may be reveresed --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d077b8fa..c6ec4ab3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required (VERSION 3.28) +cmake_minimum_required (VERSION 3.26) project(TSMP2 LANGUAGES C CXX Fortran) include(ExternalProject) From 48850abbfc64d986ce916795f276545edd9ee0d8 Mon Sep 17 00:00:00 2001 From: Johannes Keller Date: Thu, 8 Oct 2026 11:31:06 +0200 Subject: [PATCH 6/8] update "models/eCLM" to master-parallel-build --- .gitmodules | 2 +- models/eCLM | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index 70388408..2725566e 100644 --- a/.gitmodules +++ b/.gitmodules @@ -17,7 +17,7 @@ [submodule "models/eCLM"] path = models/eCLM url = https://github.com/HPSCTerrSys/eCLM.git - branch = beta-0.7 + branch = master-parallel-build [submodule "models/oasis3-mct"] path = models/oasis3-mct url = https://icg4geo.icg.kfa-juelich.de/ExternalReposPublic/oasis3-mct diff --git a/models/eCLM b/models/eCLM index 81bc52f4..8d9ca1ea 160000 --- a/models/eCLM +++ b/models/eCLM @@ -1 +1 @@ -Subproject commit 81bc52f4d0e9275f8b87d186978e8198093b4927 +Subproject commit 8d9ca1ea7a3418335527568417a889ef3f259634 From b46b1f4862183afbb7c970c492b0f3ac88a369e3 Mon Sep 17 00:00:00 2001 From: Johannes Keller Date: Thu, 8 Oct 2026 13:02:04 +0200 Subject: [PATCH 7/8] use $(MAKE) instead of explicit -j option --- cmake/BuildPDAF.cmake | 4 ++-- cmake/BuildPDAFFRAMEWORK.cmake | 4 ++-- cmake/BuildPDAFMODEL.cmake | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cmake/BuildPDAF.cmake b/cmake/BuildPDAF.cmake index 2862264a..9139c717 100644 --- a/cmake/BuildPDAF.cmake +++ b/cmake/BuildPDAF.cmake @@ -278,8 +278,8 @@ ExternalProject_Add(PDAF PREFIX PDAF SOURCE_DIR ${PDAF_SRC} BUILD_IN_SOURCE TRUE - CONFIGURE_COMMAND make ${PDAF_ENV_VARS} clean directories - BUILD_COMMAND make ${PDAF_ENV_VARS} -j ${PARALLEL_JOBS} libpdaf + CONFIGURE_COMMAND $(MAKE) ${PDAF_ENV_VARS} clean directories + BUILD_COMMAND $(MAKE) ${PDAF_ENV_VARS} libpdaf INSTALL_COMMAND "" DEPENDS ${PDAF_DEPENDENCIES} ) diff --git a/cmake/BuildPDAFFRAMEWORK.cmake b/cmake/BuildPDAFFRAMEWORK.cmake index e8ac7b57..05383517 100644 --- a/cmake/BuildPDAFFRAMEWORK.cmake +++ b/cmake/BuildPDAFFRAMEWORK.cmake @@ -33,8 +33,8 @@ ExternalProject_Add(PDAF-Framework PREFIX PDAF-Framework SOURCE_DIR ${PDAF_SRC}/interface/framework BUILD_IN_SOURCE TRUE - CONFIGURE_COMMAND make ${PDAFFRAMEWORK_ENV_VARS} clean - BUILD_COMMAND make ${PDAFFRAMEWORK_ENV_VARS} -j ${PARALLEL_JOBS} all + CONFIGURE_COMMAND $(MAKE) ${PDAFFRAMEWORK_ENV_VARS} clean + BUILD_COMMAND $(MAKE) ${PDAFFRAMEWORK_ENV_VARS} all INSTALL_COMMAND "" DEPENDS PDAF-Model ) diff --git a/cmake/BuildPDAFMODEL.cmake b/cmake/BuildPDAFMODEL.cmake index aad82741..00dcfdce 100644 --- a/cmake/BuildPDAFMODEL.cmake +++ b/cmake/BuildPDAFMODEL.cmake @@ -213,8 +213,8 @@ ExternalProject_Add(PDAF-Model PREFIX PDAF-Model SOURCE_DIR ${PDAF_SRC}/interface/model BUILD_IN_SOURCE TRUE - CONFIGURE_COMMAND make ${PDAFMODEL_ENV_VARS} clean - BUILD_COMMAND make ${PDAFMODEL_ENV_VARS} -j ${PARALLEL_JOBS} all + CONFIGURE_COMMAND $(MAKE) ${PDAFMODEL_ENV_VARS} clean + BUILD_COMMAND $(MAKE) ${PDAFMODEL_ENV_VARS} all INSTALL_COMMAND "" DEPENDS PDAF ) From 7784f3f6cf4f76b6749b4c349dcab5f8c1139b16 Mon Sep 17 00:00:00 2001 From: Johannes Keller Date: Thu, 8 Oct 2026 13:20:32 +0200 Subject: [PATCH 8/8] re-introduce the parallel jobs --- cmake/BuildPDAF.cmake | 2 +- cmake/BuildPDAFFRAMEWORK.cmake | 2 +- cmake/BuildPDAFMODEL.cmake | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cmake/BuildPDAF.cmake b/cmake/BuildPDAF.cmake index 9139c717..b89685c9 100644 --- a/cmake/BuildPDAF.cmake +++ b/cmake/BuildPDAF.cmake @@ -279,7 +279,7 @@ ExternalProject_Add(PDAF SOURCE_DIR ${PDAF_SRC} BUILD_IN_SOURCE TRUE CONFIGURE_COMMAND $(MAKE) ${PDAF_ENV_VARS} clean directories - BUILD_COMMAND $(MAKE) ${PDAF_ENV_VARS} libpdaf + BUILD_COMMAND $(MAKE) ${PDAF_ENV_VARS} -j ${PARALLEL_JOBS} libpdaf INSTALL_COMMAND "" DEPENDS ${PDAF_DEPENDENCIES} ) diff --git a/cmake/BuildPDAFFRAMEWORK.cmake b/cmake/BuildPDAFFRAMEWORK.cmake index 05383517..b1cf1fbb 100644 --- a/cmake/BuildPDAFFRAMEWORK.cmake +++ b/cmake/BuildPDAFFRAMEWORK.cmake @@ -34,7 +34,7 @@ ExternalProject_Add(PDAF-Framework SOURCE_DIR ${PDAF_SRC}/interface/framework BUILD_IN_SOURCE TRUE CONFIGURE_COMMAND $(MAKE) ${PDAFFRAMEWORK_ENV_VARS} clean - BUILD_COMMAND $(MAKE) ${PDAFFRAMEWORK_ENV_VARS} all + BUILD_COMMAND $(MAKE) ${PDAFFRAMEWORK_ENV_VARS} -j ${PARALLEL_JOBS} all INSTALL_COMMAND "" DEPENDS PDAF-Model ) diff --git a/cmake/BuildPDAFMODEL.cmake b/cmake/BuildPDAFMODEL.cmake index 00dcfdce..3e7608ae 100644 --- a/cmake/BuildPDAFMODEL.cmake +++ b/cmake/BuildPDAFMODEL.cmake @@ -214,7 +214,7 @@ ExternalProject_Add(PDAF-Model SOURCE_DIR ${PDAF_SRC}/interface/model BUILD_IN_SOURCE TRUE CONFIGURE_COMMAND $(MAKE) ${PDAFMODEL_ENV_VARS} clean - BUILD_COMMAND $(MAKE) ${PDAFMODEL_ENV_VARS} all + BUILD_COMMAND $(MAKE) ${PDAFMODEL_ENV_VARS} -j ${PARALLEL_JOBS} all INSTALL_COMMAND "" DEPENDS PDAF )