bazel-contrib / bazel-contrib/rules_python
Need a method to build native libraries for pip imports
- Dominant language
- Starlark
- Stars
- 688
- Forks
- 721
- Avg merge
- 14h 49m
- Merged PRs (30d)
- 81
Description
This is probably a long-term / aspirational wish, though I'd be happy to be shown otherwise.
Packages installed via `pip` often depend on native libraries. As a random example, https://pypi.python.org/pypi/cairocffi is a set of python bindings around the native `cairo` library. The bindings themselves don't include the native library, but they do require it to be installed on the system in a way which can be found by `setuptools` when compiling native code to build the relevant wheel.
It seems like requiring a system-installed library (which could change between builds) would violate hermeticity. We should instead provide a way to specify the dependent libraries required for a given pip import as Bazel targets, which can themselves be build.
This is likely related to bazelbuild/bazel#1475
Contributor guide
Assessment
This issue has not been assessed yet.