From 6bf0a5cb5034a7e684dcc3500e841785237ce2dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:32:43 +0200 Subject: Adding upstream version 1:115.7.0. Signed-off-by: Daniel Baumann --- third_party/libwebrtc/build_overrides/OWNERS | 1 + third_party/libwebrtc/build_overrides/README.md | 7 +++ third_party/libwebrtc/build_overrides/build.gni | 69 ++++++++++++++++++++++ third_party/libwebrtc/build_overrides/gtest.gni | 19 ++++++ .../libwebrtc/build_overrides/partition_alloc.gni | 12 ++++ 5 files changed, 108 insertions(+) create mode 100644 third_party/libwebrtc/build_overrides/OWNERS create mode 100644 third_party/libwebrtc/build_overrides/README.md create mode 100644 third_party/libwebrtc/build_overrides/build.gni create mode 100644 third_party/libwebrtc/build_overrides/gtest.gni create mode 100644 third_party/libwebrtc/build_overrides/partition_alloc.gni (limited to 'third_party/libwebrtc/build_overrides') diff --git a/third_party/libwebrtc/build_overrides/OWNERS b/third_party/libwebrtc/build_overrides/OWNERS new file mode 100644 index 0000000000..48e6927746 --- /dev/null +++ b/third_party/libwebrtc/build_overrides/OWNERS @@ -0,0 +1 @@ +mbonadei@webrtc.org diff --git a/third_party/libwebrtc/build_overrides/README.md b/third_party/libwebrtc/build_overrides/README.md new file mode 100644 index 0000000000..906136e50e --- /dev/null +++ b/third_party/libwebrtc/build_overrides/README.md @@ -0,0 +1,7 @@ +# Build overrides in GN + +This directory is used to allow us to customize variables that differ between +WebRTC being built as standalone and as a part of Chromium. + +There's another build_overrides in Chromium that needs to contain the same +set of files with the same set of variables (but with different values). diff --git a/third_party/libwebrtc/build_overrides/build.gni b/third_party/libwebrtc/build_overrides/build.gni new file mode 100644 index 0000000000..e662c94ece --- /dev/null +++ b/third_party/libwebrtc/build_overrides/build.gni @@ -0,0 +1,69 @@ +# Copyright (c) 2016 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. + +# Some non-Chromium builds don't support building java targets. +enable_java_templates = true + +# Don't set this variable to true when building stadalone WebRTC, it is +# only needed to support both WebRTC standalone and Chromium builds. +build_with_chromium = false + +# WebRTC checks out google_benchmark by default since it is always used. +checkout_google_benchmark = true + +# Use our own suppressions files. +asan_suppressions_file = "//build/sanitizers/asan_suppressions.cc" +lsan_suppressions_file = "//tools_webrtc/sanitizers/lsan_suppressions_webrtc.cc" +tsan_suppressions_file = "//tools_webrtc/sanitizers/tsan_suppressions_webrtc.cc" +msan_ignorelist_path = + rebase_path("//tools_webrtc/msan/suppressions.txt", root_build_dir) +ubsan_ignorelist_path = + rebase_path("//tools_webrtc/ubsan/suppressions.txt", root_build_dir) +ubsan_vptr_ignorelist_path = + rebase_path("//tools_webrtc/ubsan/vptr_suppressions.txt", root_build_dir) + +# For Chromium, Android 32-bit non-component, non-clang builds hit a 4GiB size +# limit, making them requiring symbol_level=2. WebRTC doesn't hit that problem +# so we just ignore that assert. See https://crbug.com/648948 for more info. +ignore_elf32_limitations = true + +# Use bundled hermetic Xcode installation maintainted by Chromium, +# except for local iOS builds where it's unsupported. +# Allow for mac cross compile on linux machines. +if (host_os == "mac" || host_os == "linux") { + _result = exec_script("//build/mac/should_use_hermetic_xcode.py", + [ target_os ], + "value") + assert(_result != 2, + "Do not allow building targets with the default " + + "hermetic toolchain if the minimum OS version is not met.") + use_system_xcode = _result == 0 +} + +use_system_xcode = false +xcode_version = "10.15" +mac_xcode_version = "default" + +declare_args() { + # WebRTC doesn't depend on //base from production code but only for testing + # purposes. In any case, it doesn't depend on //third_party/perfetto which + # is used for base tracing, so this feature is disabled. + enable_base_tracing = false + use_perfetto_client_library = false + + # Limits the defined //third_party/android_deps targets to only "buildCompile" + # and "buildCompileNoDeps" targets. This is useful for third-party + # repositories which do not use JUnit tests. For instance, + # limit_android_deps == true removes "gn gen" requirement for + # //third_party/robolectric . + limit_android_deps = false + + # If true, it assumes that //third_party/abseil-cpp is an available + # dependency for googletest. + gtest_enable_absl_printers = true +} diff --git a/third_party/libwebrtc/build_overrides/gtest.gni b/third_party/libwebrtc/build_overrides/gtest.gni new file mode 100644 index 0000000000..5b7cce746c --- /dev/null +++ b/third_party/libwebrtc/build_overrides/gtest.gni @@ -0,0 +1,19 @@ +# Copyright (c) 2016 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. + +# Include support for registering main function in multi-process tests. +gtest_include_multiprocess = true + +# Include support for platform-specific operations across unit tests. +gtest_include_platform_test = true + +# Exclude support for testing Objective C code on OS X and iOS. +gtest_include_objc_support = true + +# Exclude support for flushing coverage files on iOS. +gtest_include_ios_coverage = true diff --git a/third_party/libwebrtc/build_overrides/partition_alloc.gni b/third_party/libwebrtc/build_overrides/partition_alloc.gni new file mode 100644 index 0000000000..044036879a --- /dev/null +++ b/third_party/libwebrtc/build_overrides/partition_alloc.gni @@ -0,0 +1,12 @@ +# Copyright (c) 2016 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. + +# Use default values for PartitionAlloc as standalone library from +# base/allocator/partition_allocator/build_overrides/partition_alloc.gni +import( + "//base/allocator/partition_allocator/build_overrides/partition_alloc.gni") -- cgit v1.2.3