The set of sharedlibs needed by a model should not be hardcoded
- Dominant language
- Python
- Stars
- 174
- Forks
- 225
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 14
Description
In build.py, we have the following code:
```
if ufs_driver and ufs_driver == "nems" and not cpl_in_complist:
libs = []
elif case.get_value("MODEL") == "cesm":
libs = ["gptl", "pio", "csm_share"]
elif case.get_value("MODEL") == "e3sm":
libs = ["gptl", "mct", "spio", "csm_share"]
else:
libs = ["gptl", "mct", "pio", "csm_share"]
```
I propose, instead of having this hardcoded in CIME's build system, this should be a config item in the host model. There's an entry in config_files.xml that is already pretty close:
```
char
$SRCROOT/share/build/buildlib.kokkos
$SRCROOT/share/build/buildlib.gptl
$CIMEROOT/CIME/build_scripts/buildlib.pio
$SRCROOT/share/build/buildlib.spio
$SRCROOT/share/build/buildlib.mct
$SRCROOT/share/build/buildlib.csm_share
$SRCROOT/share/build/buildlib.mpi-serial
$CIMEROOT/CIME/build_scripts/buildlib.cprnc
$SRCROOT/share/build/buildlib.ekat
```
Contributor guide
Assessment
This issue has not been assessed yet.