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/
Go to file
Sitaktif 83aeab38da
Allow file targets in native_tool_toolchain() (#1117)
Some users might want to specify simple files (such as pre-built tools)
in the target attribute of native_tool_toolchain.

Co-authored-by: UebelAndre <github@uebelandre.com>
2023-12-01 04:42:30 -08:00
.bazelci Upgrade rules_python (#1058) 2023-10-14 15:10:57 +00:00
.bcr Fix .bcr config files (#1103) 2023-10-14 15:17:56 +01:00
.github Update release_prep.sh 2023-10-25 22:46:56 +01:00
docs Fix issue where meson documentation was blank on docs site (#1060) 2023-06-14 08:22:50 +00:00
examples update @rules_perl in examples (#1108) 2023-10-25 17:16:20 +01:00
foreign_cc Advertise CcInfo provider (#1118) 2023-11-10 09:41:52 +00:00
test fix linux cross compiling on macos (#1062) 2023-06-27 23:16:22 +01:00
toolchains Allow file targets in native_tool_toolchain() (#1117) 2023-12-01 04:42:30 -08:00
.bazelignore Update bazelignore files (#854) 2022-01-06 21:13:25 +00:00
.bazelrc Updating release process to use stable tarball urls (#1059) 2023-10-25 16:38:28 +00:00
.gitignore Added test for ensuring docs are always appropriately updated (#576) 2021-03-20 20:11:57 +00:00
.pre-commit-config.yaml Bump buildifier to 6.1.0 (#1040) 2023-04-12 09:29:29 +01:00
ARCHITECTURE.md Added architecture documentation (#544) 2021-03-09 10:49:13 -08:00
AUTHORS Add code and examples (#1) 2018-04-26 13:52:06 -04:00
BUILD.bazel Deleted deprecated `bzl` files and packages (#608) 2021-04-13 20:09:46 +01:00
CODEOWNERS Updated code owners file (#688) 2021-07-19 18:43:46 +00:00
CONTRIBUTING.md chore: setup a buildifier pre-commit hook (#661) 2021-06-03 13:30:26 -07:00
LICENSE Add code and examples (#1) 2018-04-26 13:52:06 -04:00
MODULE.bazel Create hub repo for shell framework toolchains (#1066) 2023-06-28 09:20:01 +00:00
NEWS.md Moved "news" into it's own file (#570) 2021-03-17 08:45:28 -07:00
README.md Allow runnable_binary to work on non-external targets (#1100) 2023-10-14 14:24:09 +01:00
WORKSPACE.bazel Add meson support (#986) 2023-06-09 11:29:12 +01:00
WORKSPACE.bzlmod Add bzlmod support files. (#999) 2023-05-06 08:56:00 +01:00
version.bzl Release version 0.9.0 (#944) 2022-08-02 19:56:49 +00:00

README.md

rules_foreign_cc

Build status

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://bazelbuild.github.io/rules_foreign_cc/

Bazel versions compatibility

Works with Bazel after 4.2.0.

The following flags are required in Bazel 4.x but not Bazel 5.x or newer:

  • --experimental_enable_aggregating_middleman=False

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.