-
Notifications
You must be signed in to change notification settings - Fork 95
Description
There is currently a confusing situation in terms of where Fortran code lives that is shared between multiple CESM components: this code can live in either https://github.com/ESCOMP/CESM_share or in the cesm/nuopc_cap_share directory of CMEPS. Adding to the complications here, in a CESM build, nuopc_cap_share is pulled in as part of the CESM_share library build rather than being built as part of CMEPS. (These same things apply to NorESM as well, since NorESM uses both CESM_share and cesm/nuopc_cap_share.)
In talking with @mvertens about this, we propose:
- Moving most of the contents of cesm/nuopc_cap_share into a subdirectory of the CESM_share repository
- However, driver_pio_mod should be kept with the CMEPS driver code, since it doesn't appear to be used by anything else
- Also, we should be able to stop including flux_atmocn in the share code build, instead including it in the CMEPS build (apparently it used to be used by CICE, but that is no longer the case, so it can be kept local to CMEPS now)
This would help address (at least partially) the following issues:
- Prefer the "shr_" prefix naming convention for the cesm/nuopc_cap_share directory #400
- Standalone build and ESMX compatibility ... #402
- Add unit-testers for FORTRAN code in CMEPS #458
- how to build stand alone library of cmeps? #465
@jedwards4b - do you have any thoughts here? In particular, are there any gotchas you can think of?
@fischer-ncar - also looping you in because you were instrumental in the splitting of CIME, so you may have thoughts or experiences worth sharing here.
If others agree with this plan, I can take this on at some point, though not immediately.