-
Notifications
You must be signed in to change notification settings - Fork 2
CESM_share: preprocess .F90.in files using genf90 rather than using a static copy #24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
Testing confirms that this change does not change answers. See linked PRs in ACCESS-NRI/ACCESS-OM3#181 |
anton-seaice
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note,
genf90.plis actually already included as a submodule inCDEPSbut it felt awkward to me to use that version to process files inCESM_share
I guess that CESM use the one from CDEPS though right? It's convenient to use the CDEPS one so we don't have to update the genf90 submodule ever?
I am happy enough this builds and doesn't change answers, does it need a review from a CMake person ?
|
Note, the CMake code for preprocessing the templates is loosely based on code from CIME: |
It's also in CIME and I think CESM uses that one. I thought that having our own submodule would make it easier to make sure we use the same version as CESM. Although currently CDEPS and CIME have the same version and it doesn't look like the package is updated very often... |
I think I'm comfortable with it - it follows the same approach as CIME. But it's your call really |
I guess if we end up with a list of where to check dependencies we need to add genf90 ? |
7a01e7f to
6c8115a
Compare
6c8115a to
d79ead0
Compare
@anton-seaice suggest adding to this then: https://github.com/ACCESS-NRI/access-om3-configs/blob/main/.github/ISSUE_TEMPLATE/upstream-model-component-update-.md |
This PR removes the static copies of the
CESM_sharesource files from theshare/srcdirectory. Instead, these sources are generated at build time from the template*.F90.infiles inCESM_share.The template files are processed using the
genf90.plscript, which has been added as a git submodule. Note,genf90.plis actually already included as a submodule inCDEPSbut it felt awkward to me to use that version to process files inCESM_share. Let me know if you disagree and you would prefer to have one less git submodule.I've checked that this builds locally, but will also spin off some repro tests with ACCESS-OM3 now.
Contributes to #23