-
Notifications
You must be signed in to change notification settings - Fork 151
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
Fix bug in CMakeLists.txt (get_filename_component was using non-existent path as BASE_DIR), use ip@5: if available instead of sp #1090
base: main
Are you sure you want to change the base?
Conversation
…ent path as BASE_DIR), use ip@5: if available instead of sp
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.
@climbfuji Thanks for making these changes.
@grantfirl Is there and open ccpp-physics:ufs/dev PR that I(you) could add this on the UFS side?
ping |
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.
Agree that LOCAL_CURRENT_SOURCE_DIR is empty.
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.
Something about switching to ip/5.0.0 is causing compilation of RRTMGP to fail. @dustinswales
@grantfirl I needed to add the following to the CMakeLists.txt for things to work with GP: I'm not sure if this is the ideal solution though? |
Pretty sure that one of the dependencies (maybe ip) defines itself as a cmake target with the openmp flags incorrectly assigned as public. Note that your -qno-openmp` is Intel-specific, will need to define the no-openmp flag for each compiler. |
|
It's going to be your problem, because spack-stack-1.10 definitely won't have sp anymore, maybe even spack-stack-1.9.0. Confirming is easy, just look in the cmake target definitions of the ip library. Example:
|
See also NOAA-EMC/NCEPLIBS-ip#234 |
@climbfuji Is it not the case that whoever builds spack-stack-1.9, and onwards, for the UWM will have to build the IP target correctly? Which will then be available for the SCM? |
If your testing with the PRIVATE directive works well, we can ask the NCEPLIBS-ip developers to fix their package and then switching shouldn't be a problem once sp is gone. |
Description
This PR does two things:
CMakeLists.txt
: The first call toget_filename_component
seems to be using an uninitialized (empty) variableLOCAL_CURRENT_SOURCE_DIR
asBASE_DIR
argument. It would be good if somebody could verify that.sp
library is deprecated and replaced byip@5
and newer (drop-in replacement). While[email protected]
is still in spack-stack-1.8.0,ip-5.0.0
is also available. We expectsp
to be removed in spack-stack-1.9.0.Because of (2), similar changes need to be made in the host model (SCM: PR to come in a minute, UFS: someone else needs to do).
Note that I cannot compile the SCM on my laptop with GCC, because the
SCHEMES_OPENMP_OFF
logic seems to be not working as expected (with and without the change made in 1 I believe), therefore I would like to ask someone else to test these two changes, please.