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
Find or build maeparser & coordgen libraries #2064
Find or build maeparser & coordgen libraries #2064
Conversation
This seems a bit premature since we don't use coordgen yet. ;-) But the approach is good. If it's okay with you, I'm going to hold off on review until that time? If you want to revise to only do the |
I included the coordgen part because I thought it might be helpful for implementing it and trying it out. Also, I wanted to plan a bit ahead, to check that maeparser finding/building was incorporated in a way that was compatible with adding in coordgen. I'm ok with both options, although I think it might be best if I removed the coordgen part for the time being, and the maeparser one was merged, even if just to update it to a more recent version. Maybe @lorton has a preference about this? |
@ghutchis - I don't think there's a rush here, but once coordgen is built/linked I'll be able to proceed with the case in adding the ability to optionally use coordgen to generate coordinates. We're in a bit of a chicken and egg because I'm hesitant to try to contribute code to use coordgen until it's building cleanly in openbabel, and openbabel doesn't have priority to build cleanly until coordgen is being used ;) |
CMakeLists.txt
Outdated
|
||
else() | ||
|
||
set(MAEPARSER_VERSION "master") |
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.
I'm a bit hesitant at that. I don't mind "let's use master for OB master".. is the API for maeparser fixed? After all, if maeparser changes, does the code here in OB need an update too?
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.
That can be changed, of course. In fact, I just noticed a couple of things I forgot about when I wrote that. I'll update shortly.
CMakeLists.txt
Outdated
|
||
else() | ||
|
||
set(COORDGEN_VERSION "master") |
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.
Ditto.
In this update:
|
Oh, I see why I used maeparser's master: v1.2.2 (the latest) did not yet include the flag to disable the unit tests... Other than that, it is fine. |
@ricrogz - I can't merge something that fails tests. If I'm aware of the annoying GitHub tar/zip variance. Happy to work on that. |
Yeah, sorry, I forgot that the switch to disable the test was only in maeparser's master. I'll restore the "master" versions for now. I didn't really answer your question: the APIs to maeparser and coordgen are rather stable (we don't make many changes that require updates to calling code, and I'm happy to assist when that happens), so it should be ok to keep it set to "master", and change it to whatever version is the current one when you prepare for a release.
I gave it a try already, using |
This is meant as an improvement: with these changes, CMake first checks if there is a build of Schrödinger's maeparser and coordgen libraries that can be used in openbabel's build. If there isn't, then, this patch downloads the sources and builds them.
This means that it addresses #2015.
Some notes: