blob: be72eb80502972a708025ceef498795e7be5816d [file] [log] [blame]
Jingwen Chen0b36a7c2021-02-03 08:29:55 -05001# Platforms and toolchains for AOSP.
2#
Jingwen Chenfeb1c442021-05-20 00:27:35 +00003# Set default target platform for builds to android_arm because the default lunch target is aosp_arm.
4build --platforms //build/bazel/platforms:android_arm
Jingwen Chen0b36a7c2021-02-03 08:29:55 -05005
6# # Use toolchain resolution to find the cc toolchain.
7build --incompatible_enable_cc_toolchain_resolution
8
Jingwen Chen9135d6b2021-04-07 13:53:14 +00009# Ensure that the host_javabase always use @local_jdk, the checked-in JDK.
10build --tool_java_runtime_version=local_jdk
11
Jingwen Chen14e89032020-10-12 10:32:35 +000012# Lock down the PATH variable in actions to /usr/bin and /usr/local/bin.
13build --experimental_strict_action_env
14
15# Explicitly allow unresolved symlinks (it's an experimental Bazel feature)
16build --experimental_allow_unresolved_symlinks
17
Chris Parsonscebcbe22021-05-25 12:22:58 -040018# Enable usage of experimental cc-related build APIs
Jingwen Chen14e89032020-10-12 10:32:35 +000019build --experimental_cc_shared_library
Chris Parsonscebcbe22021-05-25 12:22:58 -040020build --experimental_starlark_cc_import
Jingwen Chen14e89032020-10-12 10:32:35 +000021
Jingwen Chenfcb0c322021-05-12 10:45:51 +000022# Do not tokenize copts, other than strings that consist of a single Make
23# variable. This prevents the need to double-escape characters like backslashes
24# and quotes in copts.
25build --features no_copts_tokenization
26
Chris Parsons55c26872020-12-14 13:18:17 -050027# Disable middleman actions
28build --noexperimental_enable_aggregating_middleman
29
Chris Parsons6c70b3c2021-03-01 19:34:56 -050030# Disable local cpp toolchain detection, as it is explicitly declared in AOSP.
31build --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
32
Chris Parsons200cd8f2021-04-22 12:21:48 -040033# Disable sandboxing for CppCompile actions, as headers are not fully specified.
34# TODO(b/186116353): This is a temporary fix, as appropriately-sandboxed actions
35# are a long term goal.
36build --strategy=CppCompile=standalone
37
Chris Parsonsdfa069e2021-05-18 13:46:27 -040038# Enable use of the implementation_deps attribute in native cc rules
Jingwen Chen4c9bf6f2021-05-18 23:38:28 +000039build --experimental_cc_implementation_deps
Chris Parsonsdfa069e2021-05-18 13:46:27 -040040
Jingwen Chen14e89032020-10-12 10:32:35 +000041# Enable building targets in //external:__subpackages__.
42common --experimental_sibling_repository_layout
43common --experimental_disable_external_package
Jingwen Chen2c119162020-10-13 22:52:53 +000044
45# Enable toplevel_output_directories and Ninja executor in Bazel
46common --experimental_ninja_actions
Jingwen Chen730a4b62020-11-05 03:29:34 -050047
48# Increase refresh rate of command line UI for improved perceived responsiveness.
49common --show_progress_rate_limit=0.05
50
51# These are disabled when running under soong_ui (default = auto). Force enable them here.
52common --color=yes
53common --curses=yes
54
55# Show the full set of flags for observability and debuggability.
56common --announce_rc
57
Jingwen Chen5671a1e2020-11-05 04:23:13 -050058# Run bazel query from the workspace, without cd'ing into out/soong/queryview
59# Note that this hardcodes the output dir. It will not work if $OUT_DIR != out.
60common:queryview --package_path=%workspace%/out/soong/queryview
61
Chris Parsons360632d2021-04-21 18:45:12 -040062# Run bazel query from the workspace, without cd'ing into out/soong/workspace
Jingwen Chene43ad632020-12-02 04:37:31 -050063# Note that this hardcodes the output dir. It will not work if $OUT_DIR != out.
Chris Parsons360632d2021-04-21 18:45:12 -040064common:bp2build --package_path=%workspace%/out/soong/workspace
Jingwen Chene43ad632020-12-02 04:37:31 -050065
Jingwen Chen730a4b62020-11-05 03:29:34 -050066# Support a local user-specific bazelrc file.
67try-import %workspace%/user.bazelrc
Alex Humeskya8d3f7c2021-03-18 01:28:38 -040068
69build --android_sdk=//prebuilts/sdk:android_sdk
70build --experimental_enable_android_migration_apis
71build --experimental_google_legacy_api
72build --incompatible_java_common_parameters
73build --android_databinding_use_v3_4_args
74build --experimental_android_databinding_v2
Jingwen Chenedb7db02021-04-13 08:16:03 +000075
76# Developer instance for result storage. This only works if you have access
77# to the Bazel GCP project. Follow the GCP gcloud client's auth instructions to
78# use --google_default_credentials.
79build:results --remote_instance_name=projects/bazel-untrusted/instances/default_instance
80build:results --project_id=bazel-untrusted
81build:results --remote_timeout=600
82build:results --google_default_credentials
83build:results --test_summary=detailed
84build:results --bes_backend=buildeventservice.googleapis.com
85build:results --bes_results_url=https://source.cloud.google.com/results/invocations
86build:results --show_progress_rate_limit=5