blob: db822c9503a09dc5d25ea5399cdf845df2ad8a6f [file]
# This file contains dependencies for WebRTC.
gclient_gn_args_file = 'src/build/config/gclient_args.gni'
gclient_gn_args = [
'android_ndk_version',
'generate_location_tags',
]
vars = {
# Keep the Chromium default for these gn args.
'generate_location_tags': True,
'android_ndk_version': Str('2@30.0.16248370'),
# By default, we should check out everything needed to run on the main
# chromium waterfalls. More info at: crbug.com/570091.
'checkout_configuration': 'default',
'checkout_instrumented_libraries': 'checkout_linux and checkout_configuration == "default"',
'chromium_revision': '965715222a942389bd39b8eb6adb5c6bfd5a8a72',
# Fetch the prebuilt binaries for llvm-cov and llvm-profdata. Needed to
# process the raw profiles produced by instrumented targets (built with
# the gn arg 'use_clang_coverage').
'checkout_clang_coverage_tools': False,
# Fetch clangd into the same bin/ directory as our clang binary.
'checkout_clangd': False,
# Fetch clang-tidy into the same bin/ directory as our clang binary.
'checkout_clang_tidy': False,
'chromium_git': 'https://chromium.googlesource.com',
# ResultDB version
'result_adapter_revision': 'git_revision:5fb3ca203842fd691cab615453f8e5a14302a1d8',
# By default, download the fuchsia sdk from the public sdk directory.
'fuchsia_sdk_cipd_prefix': 'fuchsia/sdk/core/',
'fuchsia_version': 'version:34.20261029.4.1',
# By default, download the fuchsia images from the fuchsia GCS bucket.
'fuchsia_images_bucket': 'fuchsia',
'checkout_fuchsia': False,
# Since the images are hundreds of MB, default to only downloading the image
# most commonly useful for developers. Bots and developers that need to use
# other images can override this with additional images.
'checkout_fuchsia_boot_images': "terminal.x64",
'checkout_fuchsia_product_bundles': '"{checkout_fuchsia_boot_images}" != ""',
# Fetch configuration files required for the 'use_remoteexec' gn arg
'download_remoteexec_cfg': False,
# RBE instance to use for running remote builds
'rbe_instance': 'projects/rbe-webrtc-developer/instances/default_instance',
# siso CIPD package version.
'siso_version': 'git_revision:59d84e3b054313652b74928f5a9c550f4a951723',
# CPython 3 CIPD package version for Siso hermetic toolchain.
'cpython3_version': 'version:3@3.11.9.chromium.38',
# Android aapt2 CIPD package version.
'aapt2_version': 'version:2@9.6.0-alpha01-16666295',
# ninja CIPD package.
'ninja_package': 'infra/3pp/tools/ninja/',
# ninja CIPD package version
# https://chrome-infra-packages.appspot.com/p/infra/3pp/tools/ninja
'ninja_version': 'version:3@1.12.1.chromium.4',
# condition to allowlist deps for non-git-source processing.
'non_git_source': 'True',
# This can be overridden, e.g. with custom_vars, to build clang from HEAD
# instead of downloading the prebuilt pinned revision.
'llvm_force_head_revision': False,
}
deps = {
'src/build':
'https://chromium.googlesource.com/chromium/src/build@7039393f9666fc39ad374da5e7654182db89ad65',
'src/buildtools':
'https://chromium.googlesource.com/chromium/src/buildtools@a9c58ac990557a29176bbaeef7577b196c38a950',
# Gradle 6.6.1. Used for testing Android Studio project generation for WebRTC.
'src/examples/androidtests/third_party/gradle': {
'url': 'https://chromium.googlesource.com/external/github.com/gradle/gradle.git@f2d1fb54a951d8b11d25748e4711bec8d128d7e3',
'condition': 'checkout_android',
},
'src/ios': {
'url': 'https://chromium.googlesource.com/chromium/src/ios@612395e1575661f051fc86811e99091babea440e',
'condition': 'checkout_ios',
},
'src/testing':
'https://chromium.googlesource.com/chromium/src/testing@c890fd18af7d9ddc6eb93e98cb87865e4b5d0992',
'src/third_party':
'https://chromium.googlesource.com/chromium/src/third_party@c165e6da266e77eb4229c7a4fcba7ed3297d13b3',
'src/buildtools/third_party/mold/cipd': {
'packages': [
{
'package': 'chromium/buildtools/third_party/mold/mold',
'version': 'w9QqZ-oP3GovA-zjOawYzb5yca-t47GbT-ejPa0BQmYC',
},
],
'condition': 'host_os == "linux" and non_git_source',
'dep_type': 'cipd',
},
'src/buildtools/linux64': {
'packages': [
{
'package': 'gn/gn/linux-${{arch}}',
'version': 'git_revision:4df39f484f1f49f5c7f6264adc88d27811cb7b00',
}
],
'dep_type': 'cipd',
'condition': 'checkout_linux',
},
'src/buildtools/mac': {
'packages': [
{
'package': 'gn/gn/mac-${{arch}}',
'version': 'git_revision:4df39f484f1f49f5c7f6264adc88d27811cb7b00',
}
],
'dep_type': 'cipd',
'condition': 'checkout_mac',
},
'src/buildtools/win': {
'packages': [
{
'package': 'gn/gn/windows-amd64',
'version': 'git_revision:4df39f484f1f49f5c7f6264adc88d27811cb7b00',
}
],
'dep_type': 'cipd',
'condition': 'checkout_win',
},
'src/third_party/llvm-build/Release+Asserts': {
'dep_type': 'gcs',
'bucket': 'chromium-browser-clang',
'condition': 'not llvm_force_head_revision',
'objects': [
{
'object_name': 'Linux_x64/clang-android-runtime-library-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '32ee6479e6758449e8f333067f7835f2245d5ee01da2aa4374a1997e9dfc1467',
'size_bytes': 6184780,
'generation': 1793384407072490,
'condition': 'checkout_android and non_git_source',
},
{
'object_name': 'Linux_x64/clang-linux-runtime-library-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '8f8f87d059257ec0269a01d9d47426c87144d2a0fea0647ce9943788a2af0f90',
'size_bytes': 3143420,
'generation': 1793384414073093,
'condition': 'checkout_linux and not host_os == "linux"',
},
{
'object_name': 'Linux_x64/clang-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '4312432fd57f94766b62264161ec4afabeaca066fc812cf038efa88c154ef4da',
'size_bytes': 58862184,
'generation': 1793384402930380,
'condition': '(host_os == "linux" or checkout_android) and non_git_source',
},
{
'object_name': 'Linux_x64/clang-tidy-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '6d4e813a19448c111c955316a2572c179a15f2f3062762a14064c782f90a01d2',
'size_bytes': 15217164,
'generation': 1793384403254249,
'condition': 'host_os == "linux" and checkout_clang_tidy and non_git_source',
},
{
'object_name': 'Linux_x64/clangd-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '2d1d3d1212be660a26d0d554f449756be0ea5e03bab0df0598bf23cb140956f7',
'size_bytes': 15589656,
'generation': 1793384403591262,
'condition': 'host_os == "linux" and checkout_clangd and non_git_source',
},
{
'object_name': 'Linux_x64/llvm-code-coverage-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': 'a11f7b0a33accd98f3555e0591226745cc10e341141ed99eca0928accf0621a3',
'size_bytes': 2436360,
'generation': 1793384403738488,
'condition': 'host_os == "linux" and checkout_clang_coverage_tools and non_git_source',
},
{
'object_name': 'Linux_x64/llvmobjdump-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '0060c82105b8062ea0f405a087d035248748b75bf46ea3dc1050b8b5a479dbd6',
'size_bytes': 6027024,
'generation': 1793384403555966,
'condition': '((checkout_linux or checkout_mac or checkout_android) and host_os == "linux") and non_git_source',
},
{
'object_name': 'Mac/clang-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '595970106910ebbfa2d1051661a79c7fa728ee6ec211283b0e01909f009b4d1e',
'size_bytes': 55194960,
'generation': 1793384415945083,
'condition': 'host_os == "mac" and host_cpu == "x64"',
},
{
'object_name': 'Mac/clang-mac-runtime-library-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '48f1a4d40fc7463441f9e8a9ddf54b45a3cafdac6cf3ab6075758ed23ded797a',
'size_bytes': 998172,
'generation': 1793384425501560,
'condition': 'checkout_mac and not host_os == "mac"',
},
{
'object_name': 'Mac/clang-tidy-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': 'cfa97d32b7f7b343c74dc55161cf014fce4c1eebb8a27df95ed584ddc2a6e76c',
'size_bytes': 14480288,
'generation': 1793384416238915,
'condition': 'host_os == "mac" and host_cpu == "x64" and checkout_clang_tidy',
},
{
'object_name': 'Mac/clangd-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '3b68fc2802e86cc6d5b9f38f10467009b20dd9945322c9388da97da17291cb2e',
'size_bytes': 15585584,
'generation': 1793384415828461,
'condition': 'host_os == "mac" and host_cpu == "x64" and checkout_clangd',
},
{
'object_name': 'Mac/llvm-code-coverage-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '3c8eea01decf23c09930c5c90d8ce71c0c4e6c16c55745c3690c36d844b3acd5',
'size_bytes': 2315240,
'generation': 1793384416331029,
'condition': 'host_os == "mac" and host_cpu == "x64" and checkout_clang_coverage_tools',
},
{
'object_name': 'Mac/llvmobjdump-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': 'fec5be8f8004d80edd6e296f53cf4778c242bfac5b1ac6c0e9ea4b78dd1eb0c8',
'size_bytes': 5594628,
'generation': 1793384416226284,
'condition': 'host_os == "mac" and host_cpu == "x64"',
},
{
'object_name': 'Mac_arm64/clang-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': 'f9294be515a0096120c497bdb70374e3846baa244f039a68444ff44899510c74',
'size_bytes': 45274068,
'generation': 1793384427206205,
'condition': 'host_os == "mac" and host_cpu == "arm64"',
},
{
'object_name': 'Mac_arm64/clang-tidy-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': 'b795d7826fb1fc3bef96a1713e8044b4913de7c92236d34c033e6a8f32777203',
'size_bytes': 12358856,
'generation': 1793384427590392,
'condition': 'host_os == "mac" and host_cpu == "arm64" and checkout_clang_tidy',
},
{
'object_name': 'Mac_arm64/clangd-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '9f3f32d406487c6b0f92bb24b1860ceb711b3e37a784625f75a75a548a34ec17',
'size_bytes': 12333736,
'generation': 1793384427386293,
'condition': 'host_os == "mac" and host_cpu == "arm64" and checkout_clangd',
},
{
'object_name': 'Mac_arm64/llvm-code-coverage-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': 'c0fa17ce0edaa3986bd5d44e0f40a133fbef4824f75497464f9744a9e4675c61',
'size_bytes': 1903036,
'generation': 1793384427772052,
'condition': 'host_os == "mac" and host_cpu == "arm64" and checkout_clang_coverage_tools',
},
{
'object_name': 'Mac_arm64/llvmobjdump-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '208ced05108b28a843fd0c9835d8995ce78a8f32e1e809115e39909c43afb64d',
'size_bytes': 5283112,
'generation': 1793384427695807,
'condition': 'host_os == "mac" and host_cpu == "arm64"',
},
{
'object_name': 'Win/clang-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '357f648893f20ac66fac54d8d6b993c7077cffb06146083c646913d89e53636d',
'size_bytes': 53275320,
'generation': 1793384439281141,
'condition': 'host_os == "win"',
},
{
'object_name': 'Win/clang-tidy-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '06d6b936e51347b63a363da75e1ba14045d060f2b2ec47944761b5ebe7a3b96c',
'size_bytes': 15525416,
'generation': 1793384439306896,
'condition': 'host_os == "win" and checkout_clang_tidy',
},
{
'object_name': 'Win/clang-win-runtime-library-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '164186406bb6e504d5fb63be872e311a67a70c5d07fbc6bac6ec927d2c7c5f01',
'size_bytes': 2713256,
'generation': 1793384448865528,
'condition': 'checkout_win and not host_os == "win"',
},
{
'object_name': 'Win/clangd-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '74c47234002a5a918b91108c8587fdf97177e7f498ac5c38e00ee223c3a456ff',
'size_bytes': 15977568,
'generation': 1793384439340015,
'condition': 'host_os == "win" and checkout_clangd',
},
{
'object_name': 'Win/llvm-code-coverage-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '072fd0708bd28d18ad713495b1489d41d77b092242330125c6995347ef866d03',
'size_bytes': 2617424,
'generation': 1793384439683656,
'condition': 'host_os == "win" and checkout_clang_coverage_tools',
},
{
'object_name': 'Win/llvmobjdump-llvmorg-24-init-17044-gc3223914-1.tar.xz',
'sha256sum': '55a6c6c8c141a1726ee4cabf6340fbb983d838cd860b82adf571977594e99e4a',
'size_bytes': 6129952,
'generation': 1793384439573178,
'condition': '(checkout_linux or checkout_mac or checkout_android) and host_os == "win"',
},
]
},
# Update prebuilt Rust toolchain.
'src/third_party/rust-toolchain': {
'dep_type': 'gcs',
'bucket': 'chromium-browser-clang',
'objects': [
{
'object_name': 'Linux_x64/rust-toolchain-96a18bf5ffa2b24f9cf3d1c731a9eb121c1acad9-4-llvmorg-24-init-17044-gc3223914.tar.xz',
'sha256sum': '93a64626620085b45dd8da96dea87cd8699ac78188bd2968eb0164a917d86820',
'size_bytes': 287943124,
'generation': 1793896093728872,
'condition': 'host_os == "linux" and non_git_source',
},
{
'object_name': 'Mac/rust-toolchain-96a18bf5ffa2b24f9cf3d1c731a9eb121c1acad9-4-llvmorg-24-init-17044-gc3223914.tar.xz',
'sha256sum': '9c0dc413554613a066b66789db8c58123d1acb14bf7e2c58636b4d846d4f0675',
'size_bytes': 275726600,
'generation': 1793896098141959,
'condition': 'host_os == "mac" and host_cpu == "x64"',
},
{
'object_name': 'Mac_arm64/rust-toolchain-96a18bf5ffa2b24f9cf3d1c731a9eb121c1acad9-4-llvmorg-24-init-17044-gc3223914.tar.xz',
'sha256sum': '8f8ede3cef573e9bc70382c2f863668eafbb1ab44cfc02a14a5263c7c15013db',
'size_bytes': 259507944,
'generation': 1793896102308800,
'condition': 'host_os == "mac" and host_cpu == "arm64"',
},
{
'object_name': 'Win/rust-toolchain-96a18bf5ffa2b24f9cf3d1c731a9eb121c1acad9-4-llvmorg-24-init-17044-gc3223914.tar.xz',
'sha256sum': 'ad5574b5f02e04638797fc1a4f1da90309c6a0f5311fb65eab338123edfc2f95',
'size_bytes': 427769668,
'generation': 1793896106125011,
'condition': 'host_os == "win"',
},
],
},
'src/third_party/clang-format/script':
'https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git@9f796802e5d633c96dbe97e0b6683d5e62594f9f',
'src/third_party/compiler-rt/src':
'https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt.git@2ac313c59c881f3dd14d57dafd7aced6f1727051',
'src/third_party/libc++/src':
'https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git@def01bd012f56d2fd8f5e2dc75dc28a846ab9cdb',
'src/third_party/libc++abi/src':
'https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git@de3f73284c8614bb9408e45d70649f8e7933172e',
'src/third_party/llvm-libc/src':
'https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git@885e2a900ba002ef0ba7b4757da90b0f3aa309e8',
'src/third_party/libunwind/src':
'https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git@9e44ea2ff4f53a60c2a3d2b6f511d7bab9ab12f0',
'src/third_party/test_fonts/test_fonts': {
'dep_type': 'gcs',
'condition': 'non_git_source',
'bucket': 'chromium-fonts',
'objects': [
{
'object_name': '9c07d19d9c5ee1ff94f717e6fb17e0c8c354e6f9',
'sha256sum': 'f0e9628f9e43e3f3476cde06a1849058de460e0e037b7449ce0d42b9a73c37d5',
'size_bytes': 33413117,
'generation': 1775663926405386,
},
],
},
'src/third_party/ninja': {
'packages': [
{
'package': Var('ninja_package') + '${{platform}}',
'version': Var('ninja_version'),
}
],
'condition': 'non_git_source',
'dep_type': 'cipd',
},
'src/third_party/siso/cipd': {
'packages': [
{
'package': 'build/siso/${{platform}}',
'version': Var('siso_version'),
}
],
'condition': 'non_git_source',
'dep_type': 'cipd',
},
'src/third_party/android_system_sdk/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_system_sdk/public',
'version': 'QAcOcO9AlzRvhHOaFCxeQAcdO3qiFPwxUHXUIlSbw3kC',
},
],
'condition': 'checkout_android and non_git_source',
'dep_type': 'cipd',
},
'src/tools/resultdb': {
'packages': [
{
'package': 'infra/tools/result_adapter/${{platform}}',
'version': Var('result_adapter_revision'),
},
],
'dep_type': 'cipd',
},
'src/third_party/android_build_tools/aapt2/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_build_tools/aapt2/${{platform}}',
'version': Var('aapt2_version'),
},
],
'condition': 'checkout_android and non_git_source and '
'((host_os == "linux" and host_cpu == "x64") or '
'(host_os == "mac" and host_cpu == "arm64"))',
'dep_type': 'cipd',
},
# Resources are compiled on Linux workers under remote execution, so
# non-Linux hosts also need the Linux aapt2.
'src/third_party/android_build_tools/aapt2/linux-amd64': {
'packages': [
{
'package': 'chromium/third_party/android_build_tools/aapt2/linux-amd64',
'version': Var('aapt2_version'),
},
],
'condition': 'checkout_android and non_git_source and host_os != "linux"',
'dep_type': 'cipd',
},
'src/third_party/android_build_tools/bundletool/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_build_tools/bundletool',
'version': '7Vo6ZzIxIaC51ATTBlo_KUkgxJCmmGmXAijlVkXUTpAC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/android_build_tools/error_prone/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_build_tools/error_prone',
'version': 'c93kLThXuMwTaLjHOeXxMVfLXQMwJVmEvH008CA_O9MC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/android_build_tools/error_prone_javac/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_build_tools/error_prone_javac',
'version': '7EcHxlEXEaLRWEyHIAxf0ouPjkmN1Od6jkutuo0sfBIC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/android_build_tools/lint/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_build_tools/lint',
'version': 'qGUQ2eyPKmS76AX1fyzzNpV3waj9XWu7RCere0uQoFUC',
},
],
'condition': 'checkout_android and non_git_source',
'dep_type': 'cipd',
},
'src/third_party/aosp_dalvik/cipd': {
'packages': [
{
'package': 'chromium/third_party/aosp_dalvik/linux-amd64',
'version': 'version:2@13.0.0_r24.cr1',
},
],
'condition': 'checkout_android and non_git_source',
'dep_type': 'cipd',
},
'src/third_party/boringssl/src':
'https://boringssl.googlesource.com/boringssl.git@0131ae9d78e42fcc2c1811315e62410ad96d8230',
'src/third_party/breakpad/breakpad':
'https://chromium.googlesource.com/breakpad/breakpad.git@94c818ea27482d8a8d32b0c8de50cbca0270db9a',
'src/third_party/catapult':
'https://chromium.googlesource.com/catapult.git@0e3a00a99df1e70e3b794a2149b419c532de7030',
'src/third_party/ced/src': {
'url': 'https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git@d127078cedef9c6642cbe592dacdd2292b50bb19',
},
'src/third_party/colorama/src':
'https://chromium.googlesource.com/external/colorama.git@3de9f013df4b470069d03d250224062e8cf15c49',
'src/third_party/cpu_features/src': {
'url': 'https://chromium.googlesource.com/external/github.com/google/cpu_features.git@81d13c49649f0714dd41fb56bb246398b6584085',
'condition': 'checkout_android',
},
'src/third_party/crc32c/src':
'https://chromium.googlesource.com/external/github.com/google/crc32c.git@2bbb3be42e20a0e6c0f7b39dc07dc863d9ffbc07',
'src/third_party/depot_tools':
'https://chromium.googlesource.com/chromium/tools/depot_tools.git@96a7c1418eedaa6bea333a8941e8a0078681b4d0',
'src/third_party/ffmpeg':
'https://chromium.googlesource.com/chromium/third_party/ffmpeg.git@50888952b9399d6f95316f19916d1a8ba31765d5',
'src/third_party/flatbuffers/src':
'https://chromium.googlesource.com/external/github.com/google/flatbuffers.git@a86afae9399bbe631d1ea0783f8816e780e236cc',
# Used for embedded builds. CrOS & Linux use the system version.
'src/third_party/fontconfig/src': {
'url': 'https://chromium.googlesource.com/external/fontconfig.git@f7e719706f6850eaa9f03dabd59bfcac8f22d5d5',
'condition': 'checkout_linux',
},
'src/third_party/freetype/src':
'https://chromium.googlesource.com/chromium/src/third_party/freetype2.git@a5877f48fff8dd6cf8d53c505ce055499376aee2',
'src/third_party/harfbuzz/src':
'https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git@316e8022228475d7cf35c2b08f6acd5ebf93da57',
'src/third_party/google_benchmark/src': {
'url': 'https://chromium.googlesource.com/external/github.com/google/benchmark.git@a6b4a9f00b36c19af9997d68a1cf6e0b5b3d032c',
},
'src/third_party/libpfm4/src':
Var('chromium_git') + '/external/git.code.sf.net/p/perfmon2/libpfm4.git' + '@' + '186a658c3e1e49b0ee3da414a7db8ba971a00cb5',
# WebRTC-only dependency (not present in Chromium).
'src/third_party/gtest-parallel':
'https://chromium.googlesource.com/external/github.com/google/gtest-parallel@cd488bdedc1d2cffb98201a17afc1b298b0b90f1',
'src/third_party/google-truth/src': {
'url': 'https://chromium.googlesource.com/external/github.com/google/truth.git@9943091a7a891fdf85d4d865e79c1632c401eaf6',
'condition': 'checkout_android',
},
'src/third_party/googletest/src':
'https://chromium.googlesource.com/external/github.com/google/googletest.git@6450691fd7d07ef932582206fbafb1a513927e08',
# Always download Linux x64 package regardless of host OS for RBE workers.
'src/third_party/cpython3/linux-amd64': {
'packages': [
{
'package': 'infra/3pp/tools/cpython3/linux-amd64',
'version': Var('cpython3_version'),
},
],
'condition': 'non_git_source',
'dep_type': 'cipd',
},
# Host platform package. ${platform} folder is not used as in .gn the variable
# is not initialized yet by the time Python is required.
'src/third_party/cpython3/host': {
'packages': [
{
'package': 'infra/3pp/tools/cpython3/${{platform}}',
'version': Var('cpython3_version'),
},
],
'condition': 'non_git_source',
'dep_type': 'cipd',
},
'src/third_party/icu': {
'url': 'https://chromium.googlesource.com/chromium/deps/icu.git@b09986242cfb165b9111ade98be6b042ef973b86',
},
'src/third_party/jdk/current': {
'packages': [
{
'package': 'chromium/third_party/jdk/${{platform}}',
'version': 'version:2@jdk-25.0.5+8.f32c55fd1a.cr0',
},
],
# Needed on Linux for use on chromium_presubmit (for checkstyle).
'condition': '(checkout_android or checkout_linux) and non_git_source',
'dep_type': 'cipd',
},
# Deprecated - only use for tools which are broken real JDK.
# Not used by WebRTC. Added for compatibility with Chromium.
'src/third_party/jdk11': {
'packages': [
{
'package': 'chromium/third_party/jdk',
# Do not update this hash - any newer hash will point to JDK17+.
'version': 'egbcSHbmF1XZQbKxp_PQiGLFWlQK65krTGqQE-Bj4j8C',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/jsoncpp/source':
'https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git@93acc7b155048f1a66c43235cc205519f1e7a6ea', # from svn 248
'src/third_party/junit/src': {
'url': 'https://chromium.googlesource.com/external/junit.git@890f3c972647de378f25e7271d8fbbd9d3456b79',
'condition': 'checkout_android',
},
'src/third_party/kotlinc/current': {
'packages': [
{
'package': 'chromium/third_party/kotlinc',
'version': 'KONJL1FlbaajWlp8EaVhvWdfCn9vgR-sXxgXdgB5UzwC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/libFuzzer/src':
'https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git@c7ea90fb61105752fa78e257e77a7c5d62fff7d3',
'src/third_party/fuzztest/src':
'https://chromium.googlesource.com/external/github.com/google/fuzztest.git@a2d3cb097f07a91dd26768db7d9f0898cd42b0f0',
'src/third_party/libprotobuf-mutator/src':
Var('chromium_git') + '/external/github.com/google/libprotobuf-mutator.git@a0448e5055e4740774e00d496f016d9fcd572200',
'src/third_party/libjpeg_turbo':
'https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git@640f254ad0fa03f6b1f29f89b7dd9366f2f6e533',
'src/third_party/libsrtp':
'https://chromium.googlesource.com/chromium/deps/libsrtp.git@cd5d177bf1fde755ddb4c7f0d9ff7693f8b49e5e',
'src/third_party/dav1d/libdav1d':
'https://chromium.googlesource.com/external/github.com/videolan/dav1d.git@4e3ab21fbbf84a4bd283ea27f96287fcd7c228c1',
'src/third_party/libaom/source/libaom':
'https://aomedia.googlesource.com/aom.git@c29c09a4055894d5d73fedd09475bce19d3519b3',
'src/third_party/libgav1/src':
Var('chromium_git') + '/codecs/libgav1.git' + '@' + '4ad433700e5d7c45df3d6146b7c92c8945c19e64',
'src/third_party/libunwindstack': {
'url': 'https://chromium.googlesource.com/chromium/src/third_party/libunwindstack.git@f1d37918397daa1afd6f21de6e6a4c5ab0bee53b',
'condition': 'checkout_android',
},
'src/third_party/perfetto':
Var('chromium_git') + '/external/github.com/google/perfetto.git' + '@' + '907b997015a3232fce8fc5d0bcb4d5fde3f21afc',
'src/third_party/protobuf-javascript/src':
Var('chromium_git') + '/external/github.com/protocolbuffers/protobuf-javascript' + '@' + 'e6d763860001ba1a76a63adcff5efb12b1c96024',
'src/third_party/libvpx/source/libvpx':
'https://chromium.googlesource.com/webm/libvpx.git@fb0a26ad923b58c3663aaa9523992cf779b1563b',
'src/third_party/libyuv':
'https://chromium.googlesource.com/libyuv/libyuv.git@1e2e3a35993609da1d89ac170b907719d555f4b3',
'src/third_party/lss': {
'url': 'https://chromium.googlesource.com/linux-syscall-support.git@29164a80da4d41134950d76d55199ea33fbb9613',
'condition': 'checkout_android or checkout_linux',
},
'src/third_party/mockito/src': {
'url': 'https://chromium.googlesource.com/external/mockito/mockito.git@04a2a289a4222f80ad20717c25144981210d2eac',
'condition': 'checkout_android',
},
'src/third_party/instrumented_libs': {
'url': Var('chromium_git') + '/chromium/third_party/instrumented_libraries.git' + '@' + '490c778c3a20405a7bfbe42bc426e5d18e5b3bab',
'condition': 'checkout_instrumented_libraries',
},
# Used by boringssl.
'src/third_party/nasm': {
'url': 'https://chromium.googlesource.com/chromium/deps/nasm.git@525a09a813be0f75b646ee93fc2a31c27b87d722'
},
'src/third_party/openh264/src':
'https://chromium.googlesource.com/external/github.com/cisco/openh264@1bca62311e447fd9c39fc93de2c4b96cd5ce971c',
'src/third_party/re2/src':
'https://chromium.googlesource.com/external/github.com/google/re2.git@2da0056814cf180480a19f5cf811e7e1c054bf6d',
'src/third_party/sframe/src':
Var('chromium_git') + '/external/github.com/cisco/sframe' + '@' + '6a37f061f4eda0c6594c91ecf99b5ff498c8c124',
'src/third_party/r8/cipd': {
'packages': [
{
'package': 'chromium/third_party/r8',
'version': '_g4PuSmHqDoHr2tisn-rmRfuAht-Aa1hI3YMK8s4AC4C',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/android_build_tools/signflinger/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_build_tools/signflinger',
'version': 'sR382zqUwar3urYhP_Zf4n9TGzyuJQRGJznAtGCSGOUC',
},
],
'condition': 'checkout_android and non_git_source',
'dep_type': 'cipd',
},
'src/third_party/requests/src': {
'url': 'https://chromium.googlesource.com/external/github.com/kennethreitz/requests.git@c2b307dbefe21177af03f9feb37181a89a799fcc',
'condition': 'checkout_android',
},
'src/tools':
'https://chromium.googlesource.com/chromium/src/tools@4a418af98a9731169fb9b0148ec34c44de834354',
'src/third_party/espresso': {
'packages': [
{
'package': 'chromium/third_party/espresso',
'version': '5LoBT0j383h_4dXbnap7gnNQMtMjpbMJD1JaGIYNj-IC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/hamcrest/cipd': {
'packages': [
{
'package': 'chromium/third_party/hamcrest',
'version': 'dBioOAmFJjqAr_DY7dipbXdVfAxUQwjOBNibMPtX8lQC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/android_toolchain/ndk': {
'packages': [
{
'package': 'chromium/third_party/android_toolchain/android_toolchain/${{platform}}',
'version': 'version:2@30.0.16248370',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/androidx/cipd': {
'packages': [
{
'package': 'chromium/third_party/androidx',
'version': 'rJNX3-ArlvZ1JTBkoOaFANJ-pomeprZZA5stNXCu-psC',
},
],
'condition': 'checkout_android and non_git_source',
'dep_type': 'cipd',
},
'src/third_party/android_build_tools/bazel_tools/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_build_tools/bazel_tools/${{platform}}',
'version': 'version:2@7.4.1',
},
],
'condition': 'checkout_android and non_git_source and '
'((host_os == "linux" and host_cpu == "x64") or '
'(host_os == "mac" and host_cpu == "arm64"))',
'dep_type': 'cipd',
},
'src/third_party/android_build_tools/manifest_merger/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_build_tools/manifest_merger',
'version': 'r210EZVHGOLD6PgqyMpRe9DHMckVbi4c15VXmfQaLskC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/android_sdk/public': {
'packages': [
{
'package': 'chromium/third_party/android_sdk/public/build-tools/37.0.0/${{os}}',
'version': 'version_37.0.0',
},
{
'package': 'chromium/third_party/android_sdk/public/emulator',
'version': '9lGp8nTUCRRWGMnI_96HcKfzjnxEJKUcfvfwmA3wXNkC',
},
{
'package': 'chromium/third_party/android_sdk/public/platform-tools',
'version': 'qTD9QdBlBf3dyHsN1lJ0RH6AhHxR42Hmg2Ih-Vj4zIEC'
},
{
'package': 'chromium/third_party/android_sdk/public/platforms/android-37.2',
'version': 'AAswZ5rZBFDhMaH4QbKPmVtP4vnjiNUW_zPhdWvNe6wC',
},
{
'package': 'chromium/third_party/android_sdk/public/cmdline-tools/${{os}}',
'version': 'version:23.0.0',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/icu4j/cipd': {
'packages': [
{
'package': 'chromium/third_party/icu4j',
'version': '8dV7WRVX0tTaNNqkLEnCA_dMofr2MJXFK400E7gOFygC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/robolectric/cipd': {
'packages': [
{
'package': 'chromium/third_party/robolectric/${{platform}}',
'version': 'version:2@android-all-17-robolectric-15733970-2921868143',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/sqlite4java/cipd': {
'packages': [
{
'package': 'chromium/third_party/sqlite4java',
'version': 'LofjKH9dgXIAJhRYCPQlMFywSwxYimrfDeBmaHc-Z5EC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/tflite/src':
Var('chromium_git') + '/external/github.com/tensorflow/tensorflow.git' + '@' + '961c96e7a721bed97b432b220c91ee567532dd58',
'src/third_party/turbine/cipd': {
'packages': [
{
'package': 'chromium/third_party/turbine',
'version': 'b3fPtzl9WgwMPjOjzK9PXT60jVPSU_snUux_tmDvjYUC',
},
],
'condition': 'checkout_android',
'dep_type': 'cipd',
},
'src/third_party/zstd/src': {
'url': Var('chromium_git') + '/external/github.com/facebook/zstd.git' + '@' + '10da6ba6de05e29169261fa4b68eb99239f770dd',
},
'src/tools/luci-go': {
'packages': [
{
'package': 'infra/tools/luci/cas/${{platform}}',
'version': 'git_revision:c28a961510f2dd6b4ffddf446eaf6efee0782ff7',
},
{
'package': 'infra/tools/luci/isolate/${{platform}}',
'version': 'git_revision:c28a961510f2dd6b4ffddf446eaf6efee0782ff7',
},
{
'package': 'infra/tools/luci/swarming/${{platform}}',
'version': 'git_revision:c28a961510f2dd6b4ffddf446eaf6efee0782ff7',
}
],
'dep_type': 'cipd',
},
'src/third_party/pipewire/src': {
'url': Var('chromium_git') + '/external/gitlab.freedesktop.org/pipewire/pipewire.git'
+ '@' + 'b741e0c74f5436f0c925f7741140db0efd32cf4e',
'condition': 'checkout_linux',
},
'src/third_party/wireplumber/linux-amd64': {
'packages': [
{
'package': 'chromium/third_party/wireplumber/linux-amd64',
'version': 'yfe349C2e6pWCcu7DaSPJHNWdwDbNP9FfSQoV9j6A5UC',
},
],
'condition': 'checkout_linux',
'dep_type': 'cipd',
},
'src/third_party/android_deps/cipd': {
'packages': [
{
'package': 'chromium/third_party/android_deps/autorolled',
'version': 'jlZgo06Pz5zh0Rcw53Wb8Xg7EIEn7OU4LZVkRuQGcscC',
},
],
'condition': 'checkout_android and non_git_source',
'dep_type': 'cipd',
},
'src/third_party/pthreadpool/src':
Var('chromium_git') + '/external/github.com/google/pthreadpool.git' + '@' + '15a6644ba1c45f1acc16ac1e883efc3e56c6bed2',
'src/third_party/xnnpack/src':
Var('chromium_git') + '/external/github.com/google/XNNPACK.git' + '@' + '82be86388c131862c3673c177d9dbcd5d3e3844d',
'src/third_party/farmhash/src':
Var('chromium_git') + '/external/github.com/google/farmhash.git' + '@' + '9d99331eb762e9ee22fd97d15a594525ad98310a',
'src/third_party/ruy/src':
Var('chromium_git') + '/external/github.com/google/ruy.git' + '@' + '6f524b038f29504a2d2a7fff2d79d40194aca493',
'src/third_party/cpuinfo/src':
Var('chromium_git') + '/external/github.com/pytorch/cpuinfo.git' + '@' + '731932997e55e84900e6f95aefb6edd167b0edcc',
'src/third_party/eigen3/src':
Var('chromium_git') + '/external/gitlab.com/libeigen/eigen.git' + '@' + '4d27d9d82d755c1f9cea5b773d1997ea7720b8db',
'src/third_party/fp16/src':
Var('chromium_git') + '/external/github.com/Maratyszcza/FP16.git' + '@' + '782eea126dc5c755827be751a099eb01826175cf',
'src/third_party/gemmlowp/src':
Var('chromium_git') + '/external/github.com/google/gemmlowp.git' + '@' + '16e8662c34917be0065110bfcd9cc27d30f52fdf',
'src/third_party/fxdiv/src':
Var('chromium_git') + '/external/github.com/Maratyszcza/FXdiv.git' + '@' + '63058eff77e11aa15bf531df5dd34395ec3017c8',
'src/third_party/neon_2_sse/src':
Var('chromium_git') + '/external/github.com/intel/ARM_NEON_2_x86_SSE.git' + '@' + '78784fefa872994ea9acbb7371d3003884815116',
# Everything coming after this is automatically updated by the auto-roller.
# === ANDROID_DEPS Generated Code Start ===
# Generated by //third_party/android_deps/fetch_all.py
# === ANDROID_DEPS Generated Code End ===
}
hooks = [
{
# This clobbers when necessary (based on get_landmines.py). It should be
# an early hook but it will need to be run after syncing Chromium and
# setting up the links, so the script actually exists.
'name': 'landmines',
'pattern': '.',
'action': [
'python3',
'src/build/landmines.py',
'--landmine-scripts',
'src/tools_webrtc/get_landmines.py',
'--src-dir',
'src',
],
},
{
# Ensure that the DEPS'd "depot_tools" has its self-update capability
# disabled.
'name': 'disable_depot_tools_selfupdate',
'pattern': '.',
'action': [
'python3',
'src/third_party/depot_tools/update_depot_tools_toggle.py',
'--disable',
],
},
{
'name': 'sysroot_arm',
'pattern': '.',
'condition': 'checkout_linux and checkout_arm',
'action': ['python3', 'src/build/linux/sysroot_scripts/install-sysroot.py',
'--arch=arm'],
},
{
'name': 'sysroot_arm64',
'pattern': '.',
'condition': 'checkout_linux and checkout_arm64',
'action': ['python3', 'src/build/linux/sysroot_scripts/install-sysroot.py',
'--arch=arm64'],
},
{
'name': 'sysroot_x86',
'pattern': '.',
'condition': 'checkout_linux and (checkout_x86 or checkout_x64)',
# TODO(mbonadei): change to --arch=x86.
'action': ['python3', 'src/build/linux/sysroot_scripts/install-sysroot.py',
'--arch=i386'],
},
{
'name': 'sysroot_mips',
'pattern': '.',
'condition': 'checkout_linux and checkout_mips',
# TODO(mbonadei): change to --arch=mips.
'action': ['python3', 'src/build/linux/sysroot_scripts/install-sysroot.py',
'--arch=mipsel'],
},
{
'name': 'sysroot_x64',
'pattern': '.',
'condition': 'checkout_linux and checkout_x64',
# TODO(mbonadei): change to --arch=x64.
'action': ['python3', 'src/build/linux/sysroot_scripts/install-sysroot.py',
'--arch=amd64'],
},
{
# Case-insensitivity for the Win SDK. Must run before win_toolchain below.
'name': 'ciopfs_linux',
'pattern': '.',
'condition': 'checkout_win and host_os == "linux"',
'action': [ 'python3',
'src/third_party/depot_tools/download_from_google_storage.py',
'--no_resume',
'--bucket', 'chromium-browser-clang/ciopfs',
'-s', 'src/build/ciopfs.sha1',
]
},
{
# Update the Windows toolchain if necessary. Must run before 'clang' below.
'name': 'win_toolchain',
'pattern': '.',
'condition': 'checkout_win',
'action': ['python3', 'src/build/vs_toolchain.py', 'update', '--force'],
},
{
# Update the Mac toolchain if necessary.
'name': 'mac_toolchain',
'pattern': '.',
'condition': 'checkout_mac',
'action': ['python3', 'src/build/mac_toolchain.py'],
},
{
'name': 'Download Fuchsia SDK from GCS',
'pattern': '.',
'condition': 'checkout_fuchsia',
'action': [
'python3',
'src/build/fuchsia/update_sdk.py',
'--cipd-prefix={fuchsia_sdk_cipd_prefix}',
'--version={fuchsia_version}',
],
},
{
'name': 'Download Fuchsia system images',
'pattern': '.',
'condition': 'checkout_fuchsia and checkout_fuchsia_product_bundles',
'action': [
'python3',
'src/build/fuchsia/update_product_bundles.py',
'{checkout_fuchsia_boot_images}',
],
},
{
# Update LASTCHANGE.
'name': 'lastchange',
'pattern': '.',
'action': ['python3', 'src/build/util/lastchange.py',
'-o', 'src/build/util/LASTCHANGE'],
},
# Pull dsymutil binaries using checked-in hashes.
{
'name': 'dsymutil_mac_arm64',
'pattern': '.',
'condition': 'host_os == "mac" and host_cpu == "arm64"',
'action': [ 'python3',
'src/third_party/depot_tools/download_from_google_storage.py',
'--no_resume',
'--bucket', 'chromium-browser-clang',
'-s', 'src/tools/clang/dsymutil/bin/dsymutil.arm64.sha1',
'-o', 'src/tools/clang/dsymutil/bin/dsymutil',
],
},
{
'name': 'dsymutil_mac_x64',
'pattern': '.',
'condition': 'host_os == "mac" and host_cpu == "x64"',
'action': [ 'python3',
'src/third_party/depot_tools/download_from_google_storage.py',
'--no_resume',
'--bucket', 'chromium-browser-clang',
'-s', 'src/tools/clang/dsymutil/bin/dsymutil.x64.sha1',
'-o', 'src/tools/clang/dsymutil/bin/dsymutil',
],
},
# Pull rc binaries using checked-in hashes.
{
'name': 'rc_win',
'pattern': '.',
'condition': 'checkout_win and host_os == "win"',
'action': [ 'python3',
'src/third_party/depot_tools/download_from_google_storage.py',
'--no_resume',
'--bucket', 'chromium-browser-clang/rc',
'-s', 'src/build/toolchain/win/rc/win/rc.exe.sha1',
],
},
{
'name': 'rc_mac',
'pattern': '.',
'condition': 'checkout_win and host_os == "mac"',
'action': [ 'python3',
'src/third_party/depot_tools/download_from_google_storage.py',
'--no_resume',
'--bucket', 'chromium-browser-clang/rc',
'-s', 'src/build/toolchain/win/rc/mac/rc.sha1',
],
},
{
'name': 'rc_linux',
'pattern': '.',
'condition': 'checkout_win and host_os == "linux"',
'action': [ 'python3',
'src/third_party/depot_tools/download_from_google_storage.py',
'--no_resume',
'--bucket', 'chromium-browser-clang/rc',
'-s', 'src/build/toolchain/win/rc/linux64/rc.sha1',
],
},
{
# Download test resources, i.e. video and audio files from Google Storage.
'pattern': '.',
'action': ['download_from_google_storage',
'--directory',
'--recursive',
'--num_threads=10',
'--quiet',
'--bucket', 'chromium-webrtc-resources',
'src/resources'],
},
{
'name': 'Generate component metadata for tests',
'pattern': '.',
'action': [
'vpython3',
'src/testing/generate_location_tags.py',
'--out',
'src/testing/location_tags.json',
],
},
# Download and initialize "vpython" VirtualEnv environment packages.
{
'name': 'vpython_common',
'pattern': '.',
'action': [ 'vpython3',
'-vpython-spec', 'src/vpython.toml',
'-vpython-tool', 'install',
],
},
# Download remote exec cfg files
{
'name': 'configure_reclient_cfgs',
'pattern': '.',
'condition': 'download_remoteexec_cfg',
'action': ['python3',
'src/buildtools/reclient_cfgs/configure_reclient_cfgs.py',
'--rbe_instance',
Var('rbe_instance'),
'--quiet',
],
},
# Configure Siso for developer builds.
{
'name': 'configure_siso',
'pattern': '.',
'action': ['python3',
'src/build/config/siso/configure_siso.py',
'--rbe_instance',
Var('rbe_instance'),
],
},
{
# Ensure we remove any file from disk that is no longer needed (e.g. after
# hooks to native GCS deps migration).
'name': 'remove_stale_files',
'pattern': '.',
'action': [
'python3',
'src/tools/remove_stale_files.py',
'src/third_party/test_fonts/test_fonts.tar.gz', # Remove after 20240901
],
},
{
# Populate src/third_party/.git/info/exclude with nested src/third_party/*
# DEPS paths so `gclient sync --reset --delete_unversioned_trees` does not
# delete nested sub-repositories and the Windows toolchain on every build.
'name': 'configure_third_party_exclude',
'pattern': '.',
'action': [
'python3',
'src/tools_webrtc/configure_third_party_exclude.py',
],
},
]
pre_deps_hooks = [
{
'name': 'configure_third_party_exclude',
'pattern': '.',
'action': [
'python3',
'src/tools_webrtc/configure_third_party_exclude.py',
],
},
]
recursedeps = [
'src/buildtools',
'src/third_party/instrumented_libs',
]
# Define rules for which include paths are allowed in our source.
include_rules = [
# Base is only used to build Android APK tests and may not be referenced by
# WebRTC production code.
"-base",
"-chromium",
"+external/webrtc/webrtc", # Android platform build.
"+libyuv",
# These should eventually move out of here.
"+common_types.h",
"+WebRTC",
"+api",
"+modules/include",
"+rtc_base",
"+test",
"+rtc_tools",
# Abseil allowlist. Keep this in sync with abseil-in-webrtc.md.
"+absl/algorithm/algorithm.h",
"+absl/algorithm/container.h",
"+absl/base/attributes.h",
"+absl/base/config.h",
"+absl/base/nullability.h",
"+absl/base/macros.h",
"+absl/base/no_destructor.h",
"+absl/cleanup/cleanup.h",
"+absl/container",
"-absl/container/fixed_array.h",
"+absl/crc",
"+absl/functional/any_invocable.h",
"+absl/functional/bind_front.h",
"+absl/memory/memory.h",
"+absl/numeric/bits.h",
"+absl/strings/ascii.h",
"+absl/strings/escaping.h",
"+absl/strings/match.h",
"+absl/strings/str_cat.h", # note - allowed for single argument version only
"+absl/strings/str_replace.h",
"+absl/strings/string_view.h",
# Abseil flags are allowed in tests and tools.
"+absl/flags",
# Perfetto should be used through rtc_base/trace_event.h
'-third_party/perfetto',
'-perfetto',
'-protos/perfetto',
]
specific_include_rules = {
"webrtc_lib_link_test\\.cc": [
"+media/engine",
"+modules/audio_device",
"+modules/audio_processing",
]
}