You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The issue here is that when you do the full jedi_bundle build, it sees the target twice and CMake does not allow that.
In my testing, what I've done for now is, in my GEOSgcm spack-stack 1.7 builds, I change the name of the target here to eta_echo.GEOS.x.
But, we need a more "permanent" solution such that we don't need to alter GEOSgcm in the future.
So, I suppose for @rtodling what would be your preferred fix? We could change the target here in GMAO_Shared or we could change the target in GSIbec. I just don't know which is considered the more "canonical" eta_echo.x. I suppose if this code is used in operations, we'd want to keep the one in GMAO_Shared (aka GEOSadas) the same name so that scripts don't need to change.
But, if the one in GSIbec is more important, then maybe changing here is a simpler road?
The text was updated successfully, but these errors were encountered:
I almost wonder if one needs to consider a namespace protection on executables (and libraries and includes) for precisely this situation. I'm sure we could make it optional so that GEOS users would see the old name but JEDI users would see something like GEOS_eta_echo.x (Similar to matt's change but putting it in front to be a true namespace indicator.)
Seems like other people must have this issue in complicated stacks.
The CMake approach should have a completely separate install of GEOS. It gets its own /bin, /lib, etc. The mistake is presumably trying to use as a single unified project rather than using cmake find_package?
I think the issue is that eta_echo.x is in our GEOSgcm-targets.cmake file when we do an install. So, it is an IMPORTED target that gets picked up by find_package(GEOSgcm)? I'm not sure.
Once I button down my jedi_bundle stuff, I'll do a v11.6.0 test and not change that target and see if things are better. Maybe the other changes I've had to do have "fixed" this?
This is mainly a question for @rtodling (but maybe @tclune has some thoughts).
In this repo we define an
eta_echo.x
target which builds, unsurprisingly,eta_echo.x
. This is fine for GEOSgcm, GEOSadas, etc.But in my testing of JEDI-GEOS with jedi_bundle, an issue occurs because GSIbec also defines an
eta_echo.x
target. (Actually it defines it ... twice?)The issue here is that when you do the full jedi_bundle build, it sees the target twice and CMake does not allow that.
In my testing, what I've done for now is, in my GEOSgcm spack-stack 1.7 builds, I change the name of the target here to
eta_echo.GEOS.x
.But, we need a more "permanent" solution such that we don't need to alter GEOSgcm in the future.
So, I suppose for @rtodling what would be your preferred fix? We could change the target here in GMAO_Shared or we could change the target in GSIbec. I just don't know which is considered the more "canonical"
eta_echo.x
. I suppose if this code is used in operations, we'd want to keep the one in GMAO_Shared (aka GEOSadas) the same name so that scripts don't need to change.But, if the one in GSIbec is more important, then maybe changing here is a simpler road?
The text was updated successfully, but these errors were encountered: