-
Notifications
You must be signed in to change notification settings - Fork 165
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
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
Conversation
…ent path as BASE_DIR), use ip@5: if available instead of sp
dustinswales
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.
@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 |
grantfirl
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.
Agree that LOCAL_CURRENT_SOURCE_DIR is empty.
grantfirl
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.
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. |
|
Closing this. Someone can take care of updating to [email protected] or later when |
Thanks for checking on this. I've tested the SCM with 1.9.1 with success, but I hadn't tested it with ip replacing sp yet. When ip is updated, I'll be happy to test it and update it. |
|
We need at least [email protected], if not a later version to fix the issues you've seen. |
Description
This PR does two things:
CMakeLists.txt: The first call toget_filename_componentseems to be using an uninitialized (empty) variableLOCAL_CURRENT_SOURCE_DIRasBASE_DIRargument. It would be good if somebody could verify that.splibrary is deprecated and replaced byip@5and newer (drop-in replacement). While[email protected]is still in spack-stack-1.8.0,ip-5.0.0is also available. We expectspto 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_OFFlogic 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.