bazel-contrib / bazel-contrib/rules_foreign_cc
Build ninja from source if prebuilt binary is absent for a platform
- Dominant language
- Starlark
- Stars
- 737
- Forks
- 270
- PR merge metrics
- No merged PRs in 30d
Description
## The problem
ninja's prebuilt binaries are available for [a limited number of platforms](https://github.com/bazelbuild/rules_foreign_cc/blob/2c6262f8f487cd3481db27e2c509d9e6d30bfe53/toolchains/prebuilt_toolchains.py#L103-L116).
For example, if you pick a linux_aarch64, you'll get an error:
```bah
No matching toolchains found for types @rules_foreign_cc~0.9.0//toolchains:ninja_toolchain
```
## How to reproduce
Please, take a look at https://github.com/bazelbuild/rules_foreign_cc/issues/1018, section "How to reproduce".
## Expected behavour
ninja is built from source if there is no binary for a platform.
Contributor guide
Research direction
Start with toolchains/prebuilt_toolchains.py, especially the platform list linked in the issue, and review the reproduction steps in issue 1018. The change is complete when a platform without a prebuilt ninja binary can use ninja built from source instead of producing a no-matching-toolchains error.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100