In an effort to also try to provide a separate C++ library (available now from https://github.com/vtraag/libleidenalg), this PR tries to make it possible to simply install the Python interface and link against the separate C++ library.
The idea is to simply build against the shared library, and let cibuildwheel "repair" the wheel in order to provide binary wheels with all necessary dependencies included. In other environments, e.g. conda, the shared libleidenalg library could be provided by that package provider. The source package of leidenalg will then no longer contain the necessary library, and this should first be installed separately. Since the binary wheels should cater to most common platforms and Python versions, this should not be an issue for most users. Doing this allows to substantially simplify the current setup (i.e. setup.py).
There might be some more changes necessary, but in principle this now works properly locally. The CI will still need to be adapted accordingly, as well as documentation.
In an effort to also try to provide a separate C++ library (available now from https://github.com/vtraag/libleidenalg), this PR tries to make it possible to simply install the Python interface and link against the separate C++ library.
The idea is to simply build against the shared library, and let
cibuildwheel
"repair" the wheel in order to provide binary wheels with all necessary dependencies included. In other environments, e.g. conda, the sharedlibleidenalg
library could be provided by that package provider. The source package ofleidenalg
will then no longer contain the necessary library, and this should first be installed separately. Since the binary wheels should cater to most common platforms and Python versions, this should not be an issue for most users. Doing this allows to substantially simplify the current setup (i.e.setup.py
).There might be some more changes necessary, but in principle this now works properly locally. The CI will still need to be adapted accordingly, as well as documentation.