forked from bazelbuild/bazel
-
Notifications
You must be signed in to change notification settings - Fork 3
/
.bazelrc
106 lines (87 loc) · 4.38 KB
/
.bazelrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
common --enable_platform_specific_config
common --incompatible_use_plus_in_repo_names
common --experimental_google_legacy_api # needed by protobuf
# For @rules_java doc generation only, can be dropped after Bazel 8
common --experimental_rule_extension_api
# Shared configuration flags to build and test Bazel on RBE.
build:remote_shared --remote_instance_name=projects/bazel-untrusted/instances/default_instance
build:remote_shared --remote_executor=grpcs://remotebuildexecution.googleapis.com
build:remote_shared --remote_download_toplevel
build:remote_shared --remote_timeout=600
build:remote_shared --google_default_credentials
build:remote_shared --jobs=100
build:remote_shared --action_env=PATH=/bin:/usr/bin:/usr/local/bin
build:remote_shared --java_runtime_version=rbe_jdk
build:remote_shared --tool_java_runtime_version=rbe_jdk
# Configuration to build and test Bazel on RBE on Ubuntu 18.04 with Java 11
build:ubuntu2004 --extra_toolchains=@rbe_ubuntu2004//java:all
build:ubuntu2004 --crosstool_top=@rbe_ubuntu2004//cc:toolchain
build:ubuntu2004 --extra_toolchains=@rbe_ubuntu2004//config:cc-toolchain
build:ubuntu2004 --extra_execution_platforms=//:rbe_ubuntu2004_platform,//:rbe_ubuntu2004_highcpu_platform
build:ubuntu2004 --host_platform=//:rbe_ubuntu2004_platform
build:ubuntu2004 --platforms=//:rbe_ubuntu2004_platform
build:ubuntu2004 --config=remote_shared
# Alias
build:remote --config=ubuntu2004
build:macos --macos_minimum_os=10.13
build:windows_arm64 --platforms=//:windows_arm64
build:windows_arm64 --extra_toolchains=@local_config_cc//:cc-toolchain-arm64_windows
# Check direct Bazel module dependencies are up-to-date
common --check_direct_dependencies=error
# Add mirrors for certain download URLs
common --experimental_downloader_config=bazel_downloader.cfg
common --noenable_workspace
# Enable modern C++ features
build:linux --cxxopt=-std=c++17
build:linux --host_cxxopt=-std=c++17
build:macos --cxxopt=-std=c++17
build:macos --host_cxxopt=-std=c++17
build:windows --cxxopt=/std:c++17
build:windows --host_cxxopt=/std:c++17
# Suppress warnings from external repos, we have no direct control on them anyway.
build:linux --per_file_copt=external/.*@-w
build:linux --host_per_file_copt=external/.*@-w
build:macos --per_file_copt=external/.*@-w
build:macos --host_per_file_copt=external/.*@-w
build:windows --per_file_copt=external/.*@/w
build:windows --host_per_file_copt=external/.*@/w
# Enable Java 21 language features
build --java_runtime_version=21
build --java_language_version=21
build --tool_java_language_version=21
build --tool_java_runtime_version=21
# Fail if a glob doesn't match anything (https://github.com/bazelbuild/bazel/issues/8195)
common --incompatible_disallow_empty_glob
# User-specific .bazelrc
try-import %workspace%/user.bazelrc
build:docs --workspace_status_command=scripts/docs/get_workspace_status.sh
# Flags for CI builds
## Common
common:ci-common --lockfile_mode=error
## For Linux
common:ci-linux --config=ci-common
build:ci-linux --repository_cache=/var/lib/buildkite-agent/bazeltest/repo_cache
test:ci-linux --test_env=TEST_INSTALL_BASE=/var/lib/buildkite-agent/bazeltest/install_base
test:ci-linux --test_env=REPOSITORY_CACHE=/var/lib/buildkite-agent/bazeltest/repo_cache
test:ci-linux --test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80
test:ci-linux --sandbox_writable_path=/var/lib/buildkite-agent/bazeltest
test:ci-linux --sandbox_default_allow_network=false
## For macOS
common:ci-macos --config=ci-common
build:ci-macos --repository_cache=/Users/buildkite/bazeltest/repo_cache
build:ci-macos --experimental_collect_system_network_usage
test:ci-macos --test_env=TEST_INSTALL_BASE=/Users/buildkite/bazeltest/install_base
test:ci-macos --test_env=REPOSITORY_CACHE=/Users/buildkite/bazeltest/repo_cache
test:ci-macos --test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80
test:ci-macos --sandbox_writable_path=/Users/buildkite/bazeltest
# TODO(pcloudy): Revert to false once https://github.com/bazelbuild/bazel/issues/23726 is resolved.
test:ci-macos --sandbox_default_allow_network=true
test:ci-macos --test_tag_filters=-no_macos
## For Windows
common:ci-windows --config=ci-common
build:ci-windows --repository_cache=C:/b/bazeltest_repo_cache
test:ci-windows --test_env=BAZEL_VC
test:ci-windows --test_env=JAVA_HOME
test:ci-windows --test_env=TEST_INSTALL_BASE=C:/b/bazeltest_install_base
test:ci-windows --test_env=REPOSITORY_CACHE=C:/b/bazeltest_repo_cache
test:ci-windows --test_tag_filters=-no_windows,-slow