Build rules for interfacing with "foreign" (non-Bazel) build systems (CMake, configure-make, GNU Make, boost, ninja, Meson)
https://bazel-contrib.github.io/rules_foreign_cc/
70a44bca09
* Add pre-commit linting and validation * Auto-generate the strategy matrix * Move Bazelisk and mdBook versions to `env` so that it's easier to test and upgrade to new versions. * `fail-fast: false` so that when one of the matrix jobs fails so that we can see failures for all of the jobs (easier to debug and the jobs are lightweight so it's not too costly). * Simplify the patching of old branches * Make steps easier to read, shortening lines and adding whitespace |
||
---|---|---|
.bazelci | ||
.bcr | ||
.github | ||
docs | ||
examples | ||
foreign_cc | ||
test | ||
toolchains | ||
.bazelignore | ||
.bazelrc | ||
.gitattributes | ||
.gitignore | ||
.pre-commit-config.yaml | ||
ARCHITECTURE.md | ||
AUTHORS | ||
BUILD.bazel | ||
CODEOWNERS | ||
CONTRIBUTING.md | ||
LICENSE | ||
MODULE.bazel | ||
NEWS.md | ||
README.md | ||
WORKSPACE.bazel | ||
WORKSPACE.bzlmod | ||
version.bzl |
README.md
rules_foreign_cc
Rules for building C/C++ projects using foreign build systems inside Bazel projects.
This is not an officially supported Google product (meaning, support and/or new releases may be limited.)
Documentation
Documentation for all rules and providers are available at: https://bazel-contrib.github.io/rules_foreign_cc/
Bazel versions compatibility
Works with Bazel after 5.4.0.
Note that the rules may be compatible with older versions of Bazel but support may break in future changes as these older versions are not tested.
Note also that the runnable_binary
macro requires bazel 5.4.0, for the rlocationpath
path
variable
News
For more generalized updates, please see NEWS.md or checkout the release notes of current or previous releases
Design document
External C/C++ libraries rules
Caveats
- FreeBSD support is currently experimental and on a best-effort basis. Google currently doesn't have a CI test environment for FreeBSD, but please make your voice heard by upvoting this issue.