Jeremy Leconte 849549d403 Enable rust toolchain for bots that depend on chromium base/.
The Android bots and the libfuzzer bots have an indirect dependency on base. This CL downloads the rust toolchain for these bots so that rust can be used in Chromium base/ without guards to prevent WebRTC from breaking.

Change-Id: I81e0a32827e8eee29f333d933d0fb21dc0b7dc23
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367921
Commit-Queue: Jeremy Leconte <jleconte@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43384}
2024-11-11 08:06:35 +00:00

89 lines
3.3 KiB
Plaintext

# Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS. All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
import("//build/dotfile_settings.gni")
# The location of the build configuration file.
buildconfig = "//build/config/BUILDCONFIG.gn"
# The python interpreter to use by default. On Windows, this will look
# for vpython3.exe and vpython3.bat.
script_executable = "vpython3"
# The secondary source root is a parallel directory tree where
# GN build files are placed when they can not be placed directly
# in the source tree, e.g. for third party source trees.
secondary_source = "//build/secondary/"
# These are the targets to skip header checking by default. The files in targets
# matching these patterns (see "gn help label_pattern" for format) will not have
# their includes checked for proper dependencies when you run either
# "gn check" or "gn gen --check".
no_check_targets = [
"//third_party/icu/*",
# TODO: crbug/326607005 - GTEST_HAS_ABSL is broken
"//third_party/googletest:gmock",
"//third_party/googletest:gtest",
]
# These are the list of GN files that run exec_script. This whitelist exists
# to force additional review for new uses of exec_script, which is strongly
# discouraged except for gypi_to_gn calls.
exec_script_whitelist = build_dotfile_settings.exec_script_whitelist +
[ "//build_overrides/build.gni" ]
export_compile_commands = [ "*" ]
default_args = {
# Webrtc does not support component builds because we are not using the
# template "component" but we rely directly on "rtc_static_library" and
# "rtc_shared_library". This means that we cannot use the chromium default
# value for this argument.
# This also means that the user can override this value using --args or
# the args.gn file but this setting will be ignored because we don't support
# component builds.
is_component_build = false
mac_sdk_min = "10.12"
ios_deployment_target = "14.0"
# The SDK API level, in contrast, is set by build/android/AndroidManifest.xml.
android32_ndk_api_level = 21
android64_ndk_api_level = 21
# WebRTC does not provide the gflags dependency. Because libyuv uses it only
# for unittests, it can be disabled (see third_party/libyuv/BUILD.gn)
libyuv_use_gflags = false
enable_libaom = true
gtest_enable_absl_printers = true
# Differently from Chromium, WebRTC still support SDK 21.
default_min_sdk_version = 21
# Prevent jsoncpp to pass -Wno-deprecated-declarations to users
jsoncpp_no_deprecated_declarations = false
# Fixes the abi-revision issue.
# TODO(https://bugs.webrtc.org/14437): Remove this section if general
# Chromium fix resolves the problem.
fuchsia_sdk_readelf_exec =
"//third_party/llvm-build/Release+Asserts/bin/llvm-readelf"
# WebRTC doesn't use jni_zero's multiplexing. Since this causes an error
# let's temporarily disable it.
enable_jni_multiplexing = false
# TODO(b/42223878): use_fuzztest_wrapper adds a dependency to //base so
# let's temporarly disable it.
use_fuzztest_wrapper = false
}