| ############################################################################### |
| ## Bazel Configuration Flags |
| ## |
| ## `.bazelrc` is a Bazel configuration file. |
| ## https://bazel.build/docs/best-practices#bazelrc-file |
| ############################################################################### |
| |
| # https://bazel.build/reference/command-line-reference#flag--enable_platform_specific_config |
| common --enable_platform_specific_config |
| |
| # https://bazel.build/docs/windows#symlink |
| startup --windows_enable_symlinks |
| build:windows --enable_runfiles |
| |
| # Enable the only currently supported report type |
| # https://bazel.build/reference/command-line-reference#flag--combined_report |
| coverage --combined_report=lcov |
| |
| # Avoid fully cached builds reporting no coverage and failing CI |
| # https://bazel.build/reference/command-line-reference#flag--experimental_fetch_all_coverage_outputs |
| coverage --experimental_fetch_all_coverage_outputs |
| |
| ############################################################################### |
| ## Unique configuration groups |
| ############################################################################### |
| |
| # Enable rustfmt for all targets in the workspace |
| build:rustfmt --aspects=//rust:defs.bzl%rustfmt_aspect |
| build:rustfmt --output_groups=+rustfmt_checks |
| |
| # Enable clippy for all targets in the workspace |
| build:clippy --aspects=//rust:defs.bzl%rust_clippy_aspect |
| build:clippy --output_groups=+clippy_checks |
| |
| ############################################################################### |
| ## Incompatibility flags |
| ############################################################################### |
| |
| # https://github.com/bazelbuild/bazel/issues/8195 |
| build --incompatible_disallow_empty_glob=true |
| |
| # https://github.com/bazelbuild/bazel/issues/12821 |
| build --nolegacy_external_runfiles |
| |
| ############################################################################### |
| ## Custom user flags |
| ## |
| ## This should always be the last thing in the `.bazelrc` file to ensure |
| ## consistent behavior when setting flags in that file as `.bazelrc` files are |
| ## evaluated top to bottom. |
| ############################################################################### |
| |
| ############################################################################### |
| ## Bzlmod |
| ############################################################################### |
| |
| # TODO: migrate all dependencies from WORKSPACE to MODULE.bazel |
| # https://github.com/bazelbuild/rules_rust/issues/2181 |
| common --noenable_bzlmod |
| |
| try-import %workspace%/user.bazelrc |