Skip to content

Commit

Permalink
Merge pull request ESCOMP#122 from gold2718/sparse_checkout
Browse files Browse the repository at this point in the history
Summary: Update CAM externals process and build to replace svn checkout with git sparse checkout

Contributors: gold2718

Reviewers: mvertens 

Purpose of changes:  Implement new method for partial externals (ESCOMP#121) 

Github PR URL: NorESMhub#122

Changes made to build system:
- Paths to COSP, CLUBB, and SILHS have changed
- COSP makefile modified for new paths

Changes made to the namelist: None

Changes to the defaults for the boundary datasets: None

Substantial timing or memory changes: None

Externals_CAM.cfg modified to use git sparse checkout using added `.xxx_sparse_checkout` files (where xxx is COSP and CLUBB)
Modified the build to build CLUBB, SILHS, and COSP using the new paths

Tests:
-- SMS_D_Ln5.f19_f19_mtn14.NFLTHIST_v0d.betzy_intel.cam-outfrq3s_cosp
  run to test build, did not have good ncdata file available so test crashed in initialization

fixes: ESCOMP#121
  • Loading branch information
gold2718 authored Dec 6, 2023
2 parents 80ac88c + a88b1c2 commit 3aaa583
Show file tree
Hide file tree
Showing 5 changed files with 38 additions and 41 deletions.
21 changes: 8 additions & 13 deletions Externals_CAM.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -13,24 +13,19 @@ local_path = src/physics/carma/base
required = True

[cosp2]
protocol = svn
tag = v2.1.4cesm/src
repo_url = https://github.com/CFMIP/COSPv2.0/tags/
protocol = git
tag = v2.1.4cesm
repo_url = https://github.com/CFMIP/COSPv2.0
local_path = src/physics/cosp2/src
sparse = ../.cosp_sparse_checkout
required = True

[clubb]
protocol = svn
tag = clubb_4ncar_20221129_59cb19f_20230330_branchtag/src/CLUBB_core
repo_url = https://github.com/larson-group/clubb_release/tags/
protocol = git
tag = clubb_4ncar_20221129_59cb19f_20230330_branchtag
repo_url = https://github.com/larson-group/clubb_release
local_path = src/physics/clubb
required = True

[silhs]
protocol = svn
tag = clubb_4ncar_20221129_59cb19f_20230330_branchtag/src/SILHS
repo_url = https://github.com/larson-group/clubb_release/tags/
local_path = src/physics/silhs
sparse = ../.clubb_sparse_checkout
required = True

[pumas]
Expand Down
19 changes: 9 additions & 10 deletions bld/configure
Original file line number Diff line number Diff line change
Expand Up @@ -2194,11 +2194,11 @@ sub write_filepath
}

if ($clubb_sgs) {
print $fh "$camsrcdir/src/physics/clubb\n";
print $fh "$camsrcdir/src/physics/clubb/src/CLUBB_core\n";
}

if ($silhs) {
print $fh "$camsrcdir/src/physics/silhs\n";
print $fh "$camsrcdir/src/physics/clubb/src/SILHS\n";
}

if ($phys_pkg eq 'cam_dev') {
Expand Down Expand Up @@ -2294,14 +2294,13 @@ sub write_cosp_makefile
CAM_BLD := $cam_bld
COSP_PATH := $cam_dir/src/physics/cosp2
ISCCP_PATH := $cam_dir/src/physics/cosp2/src/simulator/icarus
RS_PATH := $cam_dir/src/physics/cosp2/src/simulator/quickbeam
RT_PATH := $cam_dir/src/physics/cosp2/src/simulator/rttov
CS_PATH := $cam_dir/src/physics/cosp2/src/simulator/actsim
MISR_PATH := $cam_dir/src/physics/cosp2/src/simulator/MISR_simulator
MODIS_PATH := $cam_dir/src/physics/cosp2/src/simulator/MODIS_simulator
PARASOL_PATH := $cam_dir/src/physics/cosp2/src/simulator/parasol
ISCCP_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/icarus
RS_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/quickbeam
RT_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/rttov
CS_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/actsim
MISR_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/MISR_simulator
MODIS_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/MODIS_simulator
PARASOL_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/parasol
EOF

# Copy the "template" makefile to the new makefile.
Expand Down
2 changes: 2 additions & 0 deletions src/physics/.clubb_sparse_checkout
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
src/CLUBB_core
src/SILHS
1 change: 1 addition & 0 deletions src/physics/cosp2/.cosp_sparse_checkout
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/src/
36 changes: 18 additions & 18 deletions src/physics/cosp2/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,10 @@ cosp_grLidar532_interface.o: cosp_kinds.o
cosp_atlid_interface.o : cosp_kinds.o
cosp_cloudsat_interface.o : cosp_kinds.o cosp_config.o quickbeam.o
cosp_isccp_interface.o : cosp_kinds.o icarus.o
cosp_misr_interface.o : cosp_kinds.o
cosp_misr_interface.o : cosp_kinds.o
cosp_modis_interface.o : cosp_kinds.o cosp_config.o modis_simulator.o
cosp_rttov_interfaceSTUB.o : cosp_kinds.o cosp_config.o cosp_rttovSTUB.o
cosp_parasol_interface.o : cosp_kinds.o
cosp_parasol_interface.o : cosp_kinds.o
cosp_rttovSTUB.o : cosp_kinds.o cosp_config.o cosp_constants.o
MISR_simulator.o : cosp_kinds.o cosp_config.o cosp_stats.o
modis_simulator.o : cosp_kinds.o cosp_config.o cosp_stats.o
Expand All @@ -82,7 +82,7 @@ scops.o : cosp_kinds.o mo_rng.o cosp_errorHandling.o
prec_scops.o : cosp_kinds.o cosp_config.o
cosp_optics.o : cosp_kinds.o cosp_constants.o modis_simulator.o
quickbeam_optics.o : cosp_kinds.o cosp_config.o cosp_constants.o quickbeam.o \
cosp_errorHandling.o array_lib.o math_lib.o optics_lib.o
cosp_errorHandling.o array_lib.o math_lib.o optics_lib.o
optics_lib.o : cosp_kinds.o cosp_errorHandling.o
array_lib.o : cosp_kinds.o cosp_errorHandling.o
math_lib.o : cosp_kinds.o array_lib.o mrgrnk.o
Expand All @@ -107,37 +107,37 @@ quickbeam.o: $(RS_PATH)/quickbeam.F90
MISR_simulator.o : $(MISR_PATH)/MISR_simulator.F90
$(F90) $(F90FLAGS) -c $<

modis_simulator.o : $(MODIS_PATH)/modis_simulator.F90
modis_simulator.o : $(MODIS_PATH)/modis_simulator.F90
$(F90) $(F90FLAGS) -c $<

cosp_rttov_interfaceSTUB.o : $(COSP_PATH)/src/simulator/cosp_rttov_interfaceSTUB.F90
cosp_rttov_interfaceSTUB.o : $(COSP_PATH)/src/src/simulator/cosp_rttov_interfaceSTUB.F90
$(F90) $(F90FLAGS) -c $<

cosp_misr_interface.o : $(COSP_PATH)/src/simulator/cosp_misr_interface.F90
cosp_misr_interface.o : $(COSP_PATH)/src/src/simulator/cosp_misr_interface.F90
$(F90) $(F90FLAGS) -c $<

cosp_modis_interface.o : $(COSP_PATH)/src/simulator/cosp_modis_interface.F90
cosp_modis_interface.o : $(COSP_PATH)/src/src/simulator/cosp_modis_interface.F90
$(F90) $(F90FLAGS) -c $<

cosp_isccp_interface.o : $(COSP_PATH)/src/simulator/cosp_isccp_interface.F90
cosp_isccp_interface.o : $(COSP_PATH)/src/src/simulator/cosp_isccp_interface.F90
$(F90) $(F90FLAGS) -c $<

cosp_calipso_interface.o : $(COSP_PATH)/src/simulator/cosp_calipso_interface.F90
cosp_calipso_interface.o : $(COSP_PATH)/src/src/simulator/cosp_calipso_interface.F90
$(F90) $(F90FLAGS) -c $<

cosp_grLidar532_interface.o : $(COSP_PATH)/src/simulator/cosp_grLidar532_interface.F90
cosp_grLidar532_interface.o : $(COSP_PATH)/src/src/simulator/cosp_grLidar532_interface.F90
$(F90) $(F90FLAGS) -c $<

cosp_atlid_interface.o : $(COSP_PATH)/src/simulator/cosp_atlid_interface.F90
cosp_atlid_interface.o : $(COSP_PATH)/src/src/simulator/cosp_atlid_interface.F90
$(F90) $(F90FLAGS) -c $<

cosp_cloudsat_interface.o : $(COSP_PATH)/src/simulator/cosp_cloudsat_interface.F90
cosp_cloudsat_interface.o : $(COSP_PATH)/src/src/simulator/cosp_cloudsat_interface.F90
$(F90) $(F90FLAGS) -c $<

cosp_parasol_interface.o : $(COSP_PATH)/src/simulator/cosp_parasol_interface.F90
cosp_parasol_interface.o : $(COSP_PATH)/src/src/simulator/cosp_parasol_interface.F90
$(F90) $(F90FLAGS) -c $<

cosp_rttovSTUB.o : $(RT_PATH)/cosp_rttovSTUB.F90
cosp_rttovSTUB.o : $(RT_PATH)/cosp_rttovSTUB.F90
$(F90) $(F90FLAGS) -c $<

lidar_simulator.o : $(CS_PATH)/lidar_simulator.F90
Expand All @@ -146,19 +146,19 @@ lidar_simulator.o : $(CS_PATH)/lidar_simulator.F90
parasol.o : $(PARASOL_PATH)/parasol.F90
$(F90) $(F90FLAGS) -c $<

cosp_constants.o : $(COSP_PATH)/src/cosp_constants.F90
cosp_constants.o : $(COSP_PATH)/src/src/cosp_constants.F90
$(F90) $(F90FLAGS) -c $<

cosp_kinds.o : $(COSP_PATH)/cosp_kinds.F90
$(F90) $(F90FLAGS) -c $<

cosp_config.o : $(COSP_PATH)/src/cosp_config.F90
cosp_config.o : $(COSP_PATH)/src/src/cosp_config.F90
$(F90) $(F90FLAGS) -c $<

cosp.o : $(COSP_PATH)/src/cosp.F90
cosp.o : $(COSP_PATH)/src/src/cosp.F90
$(F90) $(F90FLAGS) -c $<

cosp_stats.o : $(COSP_PATH)/src/cosp_stats.F90
cosp_stats.o : $(COSP_PATH)/src/src/cosp_stats.F90
$(F90) $(F90FLAGS) -c $<

# COSPv1.4 interface
Expand Down

0 comments on commit 3aaa583

Please sign in to comment.