bazel-contrib / bazel-contrib/rules_python
py_cc_toolchain should contain EXT_SUFFIX
- Dominant language
- Starlark
- Stars
- 688
- Forks
- 721
- Avg merge
- 15h 7m
- Merged PRs (30d)
- 76
Description
See https://github.com/bazelbuild/bazel-central-registry/pull/4539#discussion_r2080143661 for some context.
This value is needed to create python extensions. Note that there are a few different names that can be used, for example `.so`, `.abi3.so`, and `.cpython-312-x86_64-linux-gnu.so`. The latter is preferable when not using the python limited api because it prevents runfiles conflicts between python versions properly, meaning that transitions can work without completely breaking things.
I believe for autoconfigured pythons, you could obtain this value like so:
```
❯ python -c 'import sysconfig; print(sysconfig.get_config_var("EXT_SUFFIX"))'
.cpython-312-x86_64-linux-gnu.so
```
Contributor guide
Research direction
Start with the py_cc_toolchain autoconfiguration path and review the linked bazel-central-registry discussion for context. Run the shown Python sysconfig command to inspect EXT_SUFFIX values; done means the toolchain exposes the appropriate suffix, including the full interpreter-specific form when available.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100