blob: 77202a762642428706c89b55129d55cafdbb2060 [file] [log] [blame]
# Remote Build Execution requires a strong hash function, such as SHA256.
startup --host_jvm_args=-Dbazel.DigestFunction=SHA256
# Disable persistent workers for Typescript (#3816)
build --strategy=TypeScriptCompile=sandboxed,local
# Compatibility flags to avoid regressions.
common --incompatible_disallow_empty_glob
build --workspace_status_command tools/buildstamp/get_workspace_status
build --auto_cpu_environment_group=//buildenv:cpu
# Ensure clang is used, by default, over any other C++ installation (e.g. gcc).
build --client_env=CC=clang
# We require C++17, but bazel defaults to C++0x (pre-C++11).
build --cxxopt=-std=c++17 --host_cxxopt=-std=c++17 --client_env=BAZEL_CXXOPTS=-std=c++17
# Ensure environment variables are static across machines; allows for cross-user caching.
build --experimental_strict_action_env
# By default, compile for Java 8, run on Java 11
build --java_toolchain=@bazel_tools//tools/jdk:toolchain_java8
build --javabase=@bazel_tools//tools/jdk:remote_jdk11
build --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_java8
build --host_javabase=@bazel_tools//tools/jdk:remote_jdk11
# Import default javacopts
import %workspace%/tools/javacopts.bazelrc
# For release, stamp binaries, use optimized mode w/ minimum line table debugging.
build:release --stamp -c opt --copt=-gmlt
# Use the RBE instance in the kythe-repo project
build:remote --remote_instance_name=projects/kythe-repo/instances/default_instance --project_id=kythe-repo
build:remote --auth_enabled=true
build:remote --jobs=50
build:remote --remote_timeout=3600
build:remote --remote_cache=grpcs://remotebuildexecution.googleapis.com
build:remote --remote_executor=grpcs://remotebuildexecution.googleapis.com
# TODO(schroederc): add buildeventservice
# build:remote --bes_backend="buildeventservice.googleapis.com"
# build:remote --bes_timeout=60s
# build:remote --bes_results_url="https://source.cloud.google.com/results/invocations/"
# Starting with Bazel 0.27.0 strategies do not need to be explicitly
# # defined. See https://github.com/bazelbuild/bazel/issues/7480
build:remote --define=EXECUTOR=remote
build:remote --host_javabase=@rbe_default//java:jdk
build:remote --javabase=@rbe_default//java:jdk
build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_java8
build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_java8
build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
build:remote --crosstool_top=@rbe_default//cc:toolchain
build:remote --extra_toolchains=@rbe_default//config:cc-toolchain
build:remote --extra_execution_platforms=@rbe_default//config:platform
build:remote --host_platform=@rbe_default//config:platform
build:remote --platforms=@rbe_default//config:platform
build:remote --extra_toolchains=@io_kythe//tools/build_rules/lexyacc:lexyacc_remote_toolchain
build:remote --action_env=LEIN_JAVA_CMD=
test:prepush --verbose_failures --noshow_loading_progress --noshow_progress
# Support user-provided user.bazelrc
try-import %workspace%/user.bazelrc