Skip to content
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

Use DSOs? #70

Open
tclune opened this issue Aug 5, 2021 · 7 comments
Open

Use DSOs? #70

tclune opened this issue Aug 5, 2021 · 7 comments
Assignees
Labels
0 diff The changes in this pull request have verified to be zero-diff with the target branch. enhancement New feature or request

Comments

@tclune
Copy link
Contributor

tclune commented Aug 5, 2021

During the development of GOCART2G, we updated the rest of the GCM to use DSOs and thereby eliminated compile time dependencies between components. GOCART2G has not been updated in that manner.

Should this be done before v2.0.0 or after?

@tclune tclune added 0 diff The changes in this pull request have verified to be zero-diff with the target branch. enhancement New feature or request labels Aug 5, 2021
@amdasilva
Copy link
Collaborator

Be my guest to implement DSOs, wthatever that is... I am assuming this is a cmake level update.

@amdasilva
Copy link
Collaborator

@tclune Is this something to be done now?

@tclune
Copy link
Contributor Author

tclune commented Aug 23, 2022

@amdasilva I think we can do it with relative ease at any point. Relatively simple CMake surgery.

@atrayano did recently do something like this with MIT ocean, and got different answers which gave us pause; so we'd best double check that there are no surprises with GOCART.

I can add it to the backlog for @weiyuan-jiang

@weiyuan-jiang
Copy link
Contributor

There seems already no dependency of gorcar2g on its children

set (dependencies MAPL Chem_Shared2G Process_Library esmf)
esma_add_library (${this}
SRCS ${srcs}
SUBCOMPONENTS ${alldirs}
DEPENDENCIES ${dependencies}
)

@weiyuan-jiang
Copy link
Contributor

@tclune , what is the specific issue here?

@tclune
Copy link
Contributor Author

tclune commented Sep 6, 2022

The use statements here should go away:

use DU2G_GridCompMod, only : DU2G_setServices => SetServices
use SS2G_GridCompMod, only : SS2G_setServices => SetServices
use SU2G_GridCompMod, only : SU2G_setServices => SetServices
use CA2G_GridCompMod, only : CA2G_setServices => SetServices
use NI2G_GridCompMod, only : NI2G_setServices => SetServices

Need to use add child via DSO interface.

@tclune
Copy link
Contributor Author

tclune commented Sep 6, 2022

Note that the harder part is likely to be dealing with run-time path issues. You'll need to work with @mathomp4 to have a short term and long term solution for that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0 diff The changes in this pull request have verified to be zero-diff with the target branch. enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants