-
-
Notifications
You must be signed in to change notification settings - Fork 20
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
Improve packaging; split python bits from lib, add run-export; make -dev
count
#154
Comments
This sounds reasonable to me, and if it's possible to be better citizens in the conda-forge ecosystem, it would great to do so. @h-vetinari : if this is something you can easily do, a PR would be welcome. :-) |
Sounds reasonable to me too, but I'm very out of the loop on current best practices here. I guess the My recollection with |
Yeah, the only way to get the Python build is to do the C++ build as well. But I believe there's some way in the conda-forge infrastructure to construct multiple install artifacts from a single build, so I don't think there should be wasted work |
You can create multiple outputs from a single "build script", let's say, so you can do "Run CMake on this repo" followed by "this output gets the .so files" and "this other output gets the .py files". However, I don't know if we can have a single job build all the python versions. Usually we have one Python version per job. So we would have to build the .so files in all builds, but only package the librdkit bits in one of them. |
Yes, that's very possible. It's how boost/arrow/grpc etc. do it. As long as not all outputs (including the "global" build stage, i.e. what is before However, that presupposes that we can build the two things (C++ lib & python bindings) separately. Otherwise things get messy. |
It's possible that these are the current assumptions of the upstream build scripts, but it's usually not such a big deal to patch this out and point to an existing C++ lib (built from the same tarball, so we don't have to worry about consistency). |
Currently all the C++ libraries are duplicated between various python versions, because
rdkit
is a monolithic build per python version.A better setup would be to have
librdkit
as the C++ bits, with a proper run-export (that we can also add to the pinning), and upon whichrdkit
can then depend.Also, the current
rdkit-dev
is useless, as it brings in 1:1 the same content asrdkit
itself (i.e. it's an content-less package depending onrdkit
)The text was updated successfully, but these errors were encountered: