1# Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS.  All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9# Some non-Chromium builds don't support building java targets.
10enable_java_templates = true
11
12# Some non-Chromium builds don't use Chromium's third_party/binutils.
13linux_use_bundled_binutils_override = true
14
15# Don't set this variable to true when building stadalone WebRTC, it is
16# only needed to support both WebRTC standalone and Chromium builds.
17build_with_chromium = false
18
19# WebRTC checks out google_benchmark by default since it is always used.
20checkout_google_benchmark = true
21
22# Use our own suppressions files.
23asan_suppressions_file = "//build/sanitizers/asan_suppressions.cc"
24lsan_suppressions_file = "//tools_webrtc/sanitizers/lsan_suppressions_webrtc.cc"
25tsan_suppressions_file = "//tools_webrtc/sanitizers/tsan_suppressions_webrtc.cc"
26msan_blacklist_path =
27    rebase_path("//tools_webrtc/msan/suppressions.txt", root_build_dir)
28ubsan_blacklist_path =
29    rebase_path("//tools_webrtc/ubsan/suppressions.txt", root_build_dir)
30ubsan_vptr_blacklist_path =
31    rebase_path("//tools_webrtc/ubsan/vptr_suppressions.txt", root_build_dir)
32
33# For Chromium, Android 32-bit non-component, non-clang builds hit a 4GiB size
34# limit, making them requiring symbol_level=2. WebRTC doesn't hit that problem
35# so we just ignore that assert. See https://crbug.com/648948 for more info.
36ignore_elf32_limitations = true
37
38# Use bundled hermetic Xcode installation maintainted by Chromium,
39# except for local iOS builds where it's unsupported.
40if (host_os == "mac") {
41  _result = exec_script("//build/mac/should_use_hermetic_xcode.py",
42                        [ target_os ],
43                        "value")
44  assert(_result != 2,
45         "Do not allow building targets with the default " +
46             "hermetic toolchain if the minimum OS version is not met.")
47  use_system_xcode = _result == 0
48}
49
50declare_args() {
51  # WebRTC doesn't depend on //base from production code but only for testing
52  # purposes. In any case, it doesn't depend on //third_party/perfetto which
53  # is used for base tracing, so this feature is disabled.
54  enable_base_tracing = false
55
56  # If true, it assumes that //third_party/abseil-cpp is an available
57  # dependency for googletest.
58  gtest_enable_absl_printers = true
59}
60