| # Note: The buildbots evaluate this file with CWD set to the parent |
| # directory and assume that the root of the checkout is in ./v8/, so |
| # all paths in here must match this assumption. |
| |
| use_relative_paths = True |
| |
| gclient_gn_args_file = 'build/config/gclient_args.gni' |
| gclient_gn_args = [ |
| 'checkout_src_internal', |
| ] |
| |
| vars = { |
| # Fetches only the SDK boot images which match at least one of the whitelist |
| # entries in a comma-separated list. |
| # |
| # Available images: |
| # Emulation: |
| # - terminal.qemu-x64 |
| # - terminal.qemu-arm64 |
| # - workstation.qemu-x64-release |
| # Hardware: |
| # - minimal.x64 |
| # - core.x64-dfv2 |
| # |
| # 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 (e.g., qemu.arm64) can override this with additional images. |
| 'checkout_fuchsia_boot_images': "terminal.x64", |
| 'checkout_fuchsia_product_bundles': '"{checkout_fuchsia_boot_images}" != ""', |
| |
| 'checkout_instrumented_libraries': False, |
| 'checkout_ittapi': False, |
| |
| # 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 clang-tidy into the same bin/ directory as our clang binary. |
| 'checkout_clang_tidy': False, |
| |
| # Fetch clangd into the same bin/ directory as our clang binary. |
| 'checkout_clangd': False, |
| |
| # Fetch and build V8 builtins with PGO profiles |
| 'checkout_v8_builtins_pgo_profiles': False, |
| |
| 'android_url': 'https://android.googlesource.com', |
| 'chromium_url': 'https://chromium.googlesource.com', |
| 'download_gcmole': False, |
| 'download_jsfunfuzz': False, |
| 'download_prebuilt_bazel': False, |
| 'download_prebuilt_arm64_llvm_symbolizer': False, |
| 'check_v8_header_includes': False, |
| |
| # By default, download the fuchsia sdk from the public sdk directory. |
| 'fuchsia_sdk_cipd_prefix': 'fuchsia/sdk/core/', |
| |
| # Used for downloading the Fuchsia SDK without running hooks. |
| 'checkout_fuchsia_no_hooks': False, |
| |
| # V8 doesn't need src_internal, but some shared GN files use this variable. |
| 'checkout_src_internal': False, |
| |
| # reclient CIPD package version |
| 'reclient_version': 're_client_version:0.185.0.db415f21-gomaip', |
| |
| # Fetch configuration files required for the 'use_remoteexec' gn arg |
| 'download_remoteexec_cfg': False, |
| |
| # RBE instance to use for running remote builds |
| 'rbe_instance': Str('projects/rbe-chrome-untrusted/instances/default_instance'), |
| |
| # RBE project to download rewrapper config files for. Only needed if |
| # different from the project used in 'rbe_instance' |
| 'rewrapper_cfg_project': Str(''), |
| |
| # This variable is overrided in Chromium's DEPS file. |
| 'build_with_chromium': False, |
| |
| # GN CIPD package version. |
| 'gn_version': 'git_revision:07d3c6f4dc290fae5ca6152ebcb37d6815c411ab', |
| |
| # ninja CIPD package version |
| # https://chrome-infra-packages.appspot.com/p/infra/3pp/tools/ninja |
| 'ninja_version': 'version:3@1.12.1.chromium.4', |
| |
| # siso CIPD package version |
| 'siso_version': 'git_revision:0915813c4c786240e12d03aa3018c02bab4df14f', |
| |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling Fuchsia sdk |
| # and whatever else without interference from each other. |
| 'fuchsia_version': 'version:29.20251023.3.1', |
| |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling partition_alloc_version |
| # and whatever else without interference from each other. |
| 'partition_alloc_version': 'fa63bd8319311b5c5f5a4e63678830c4a3655b04', |
| |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling android_sdk_build-tools_version |
| # and whatever else without interference from each other. |
| 'android_sdk_build-tools_version': 'y3EsZLg4bxPmpW0oYsAHylywNyMnIwPS3kh1VbQLAFAC', |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling android_sdk_emulator_version |
| # and whatever else without interference from each other. |
| 'android_sdk_emulator_version': '9lGp8nTUCRRWGMnI_96HcKfzjnxEJKUcfvfwmA3wXNkC', |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling android_sdk_extras_version |
| # and whatever else without interference from each other. |
| 'android_sdk_extras_version': 'bY55nDqO6FAm6FkGIj09sh2KW9oqAkCGKjYok5nUvBMC', |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling android_sdk_patcher_version |
| # and whatever else without interference from each other. |
| 'android_sdk_patcher_version': 'I6FNMhrXlpB-E1lOhMlvld7xt9lBVNOO83KIluXDyA0C', |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling android_sdk_platform-tools_version |
| # and whatever else without interference from each other. |
| 'android_sdk_platform-tools_version': 'qTD9QdBlBf3dyHsN1lJ0RH6AhHxR42Hmg2Ih-Vj4zIEC', |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling android_sdk_platforms_version |
| # and whatever else without interference from each other. |
| 'android_sdk_platforms_version': '_YHemUrK49JrE7Mctdf5DDNOHu1VKBx_PTcWnZ-cbOAC', |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling android_sdk_sources_version |
| # and whatever else without interference from each other. |
| 'android_sdk_sources_version': 'qfTSF99e29-w3eIVPpfcif0Em5etyvxuicTDTntWHQMC', |
| # Three lines of non-changing comments so that |
| # the commit queue can handle CLs rolling android_sdk_tools-lint_version |
| # and whatever else without interference from each other. |
| 'android_sdk_cmdline-tools_version': 'gekOVsZjseS1w9BXAT3FsoW__ByGDJYS9DgqesiwKYoC', |
| } |
| |
| deps = { |
| 'build': |
| Var('chromium_url') + '/chromium/src/build.git' + '@' + '18498377a4679e4c940738cf2b0997637be2bc86', |
| 'buildtools': |
| Var('chromium_url') + '/chromium/src/buildtools.git' + '@' + 'c143f025f554adce6170d55f1ecdfdfaed5603b3', |
| 'buildtools/linux64': { |
| 'packages': [ |
| { |
| 'package': 'gn/gn/linux-${{arch}}', |
| 'version': Var('gn_version'), |
| } |
| ], |
| 'dep_type': 'cipd', |
| 'condition': 'host_os == "linux" and host_cpu != "s390" and host_os != "zos" and host_cpu != "ppc"', |
| }, |
| 'buildtools/mac': { |
| 'packages': [ |
| { |
| 'package': 'gn/gn/mac-${{arch}}', |
| 'version': Var('gn_version'), |
| } |
| ], |
| 'dep_type': 'cipd', |
| 'condition': 'host_os == "mac"', |
| }, |
| 'buildtools/win': { |
| 'packages': [ |
| { |
| 'package': 'gn/gn/windows-amd64', |
| 'version': Var('gn_version'), |
| } |
| ], |
| 'dep_type': 'cipd', |
| 'condition': 'host_os == "win"', |
| }, |
| 'buildtools/reclient': { |
| 'packages': [ |
| { |
| 'package': 'infra/rbe/client/${{platform}}', |
| 'version': Var('reclient_version'), |
| } |
| ], |
| 'dep_type': 'cipd', |
| 'condition': '(host_os == "linux" or host_os == "mac" or host_os == "win") and host_cpu != "s390" and host_os != "zos" and host_cpu != "ppc" and (host_cpu != "arm64" or host_os == "mac")', |
| }, |
| 'test/benchmarks/data': |
| Var('chromium_url') + '/v8/deps/third_party/benchmarks.git' + '@' + '05d7188267b4560491ff9155c5ee13e207ecd65f', |
| 'test/mozilla/data': |
| Var('chromium_url') + '/v8/deps/third_party/mozilla-tests.git' + '@' + 'f6c578a10ea707b1a8ab0b88943fe5115ce2b9be', |
| 'test/test262/data': |
| Var('chromium_url') + '/external/github.com/tc39/test262.git' + '@' + 'd2940bdbb0e28fd002ec31b89f8182bbf63da092', |
| 'third_party/android_platform': { |
| 'url': Var('chromium_url') + '/chromium/src/third_party/android_platform.git' + '@' + 'e3919359f2387399042d31401817db4a02d756ec', |
| 'condition': 'checkout_android', |
| }, |
| 'third_party/android_sdk/public': { |
| 'packages': [ |
| { |
| 'package': 'chromium/third_party/android_sdk/public/build-tools/36.0.0', |
| 'version': Var('android_sdk_build-tools_version'), |
| }, |
| { |
| 'package': 'chromium/third_party/android_sdk/public/emulator', |
| 'version': Var('android_sdk_emulator_version'), |
| }, |
| { |
| 'package': 'chromium/third_party/android_sdk/public/extras', |
| 'version': Var('android_sdk_extras_version'), |
| }, |
| { |
| 'package': 'chromium/third_party/android_sdk/public/patcher', |
| 'version': Var('android_sdk_patcher_version'), |
| }, |
| { |
| 'package': 'chromium/third_party/android_sdk/public/platform-tools', |
| 'version': Var('android_sdk_platform-tools_version'), |
| }, |
| { |
| 'package': 'chromium/third_party/android_sdk/public/platforms/android-36', |
| 'version': Var('android_sdk_platforms_version'), |
| }, |
| { |
| 'package': 'chromium/third_party/android_sdk/public/sources/android-30', |
| 'version': Var('android_sdk_sources_version'), |
| }, |
| { |
| 'package': 'chromium/third_party/android_sdk/public/cmdline-tools', |
| 'version': Var('android_sdk_cmdline-tools_version'), |
| }, |
| ], |
| 'condition': 'checkout_android', |
| 'dep_type': 'cipd', |
| }, |
| 'third_party/android_toolchain/ndk': { |
| 'packages': [ |
| { |
| 'package': 'chromium/third_party/android_toolchain/android_toolchain', |
| 'version': 'KXOia11cm9lVdUdPlbGLu8sCz6Y4ey_HV2s8_8qeqhgC', |
| }, |
| ], |
| 'condition': 'checkout_android', |
| 'dep_type': 'cipd', |
| }, |
| 'third_party/catapult': { |
| 'url': Var('chromium_url') + '/catapult.git' + '@' + '3db5a81c0f80c8fe6aaae62a308a890c1bdb17fb', |
| 'condition': 'checkout_android', |
| }, |
| 'third_party/clang-format/script': |
| Var('chromium_url') + '/external/github.com/llvm/llvm-project/clang/tools/clang-format.git' + '@' + 'c2725e0622e1a86d55f14514f2177a39efea4a0e', |
| 'third_party/colorama/src': { |
| 'url': Var('chromium_url') + '/external/colorama.git' + '@' + '3de9f013df4b470069d03d250224062e8cf15c49', |
| 'condition': 'checkout_android', |
| }, |
| 'third_party/cpu_features/src': { |
| 'url': Var('chromium_url') + '/external/github.com/google/cpu_features.git' + '@' + '936b9ab5515dead115606559502e3864958f7f6e', |
| 'condition': 'checkout_android', |
| }, |
| 'third_party/depot_tools': |
| Var('chromium_url') + '/chromium/tools/depot_tools.git' + '@' + 'ef1d5129a33e73d4f395dad928d8d228e47cc5eb', |
| 'third_party/dragonbox/src': |
| Var('chromium_url') + '/external/github.com/jk-jeon/dragonbox.git' + '@' + '6c7c925b571d54486b9ffae8d9d18a822801cbda', |
| 'third_party/fp16/src': |
| Var('chromium_url') + '/external/github.com/Maratyszcza/FP16.git' + '@' + '3d2de1816307bac63c16a297e8c4dc501b4076df', |
| 'third_party/fast_float/src': |
| Var('chromium_url') + '/external/github.com/fastfloat/fast_float.git' + '@' + 'cb1d42aaa1e14b09e1452cfdef373d051b8c02a4', |
| 'third_party/fuchsia-gn-sdk': { |
| 'url': Var('chromium_url') + '/chromium/src/third_party/fuchsia-gn-sdk.git' + '@' + '99294ee55f28f8ae5a3552f4c435528e4c1686b6', |
| 'condition': 'checkout_fuchsia', |
| }, |
| 'third_party/simdutf': |
| Var('chromium_url') + '/chromium/src/third_party/simdutf' + '@' + 'acd71a451c1bcb808b7c3a77e0242052909e381e', |
| # Exists for rolling the Fuchsia SDK. Check out of the SDK should always |
| # rely on the hook running |update_sdk.py| script below. |
| 'third_party/fuchsia-sdk/sdk': { |
| 'packages': [ |
| { |
| 'package': Var('fuchsia_sdk_cipd_prefix') + '${{platform}}', |
| 'version': Var('fuchsia_version'), |
| }, |
| ], |
| 'condition': 'checkout_fuchsia_no_hooks', |
| 'dep_type': 'cipd', |
| }, |
| 'third_party/google_benchmark_chrome': { |
| 'url': Var('chromium_url') + '/chromium/src/third_party/google_benchmark.git' + '@' + 'fa1929c5500ccfc01852ba50ff9258303e93601e', |
| }, |
| 'third_party/google_benchmark_chrome/src': { |
| 'url': Var('chromium_url') + '/external/github.com/google/benchmark.git' + '@' + '761305ec3b33abf30e08d50eb829e19a802581cc', |
| }, |
| 'third_party/fuzztest': |
| Var('chromium_url') + '/chromium/src/third_party/fuzztest.git' + '@' + 'aa6ba9074b8d66a2e2853a0a0992c25966022e13', |
| 'third_party/fuzztest/src': |
| Var('chromium_url') + '/external/github.com/google/fuzztest.git' + '@' + 'abdba4e3e992aef9d54c312615b6985be01a3425', |
| 'third_party/googletest/src': |
| Var('chromium_url') + '/external/github.com/google/googletest.git' + '@' + '6ec14dfd8c409d05fba94e18e3a02df35b874353', |
| 'third_party/highway/src': |
| Var('chromium_url') + '/external/github.com/google/highway.git' + '@' + '84379d1c73de9681b54fbe1c035a23c7bd5d272d', |
| 'third_party/icu': |
| Var('chromium_url') + '/chromium/deps/icu.git' + '@' + 'f27805b7d7d8618fa73ce89e9d28e0a8b2216fec', |
| 'third_party/instrumented_libs': { |
| 'url': Var('chromium_url') + '/chromium/third_party/instrumented_libraries.git' + '@' + '69015643b3f68dbd438c010439c59adc52cac808', |
| 'condition': 'checkout_instrumented_libraries', |
| }, |
| 'third_party/ittapi': { |
| # Force checkout ittapi libraries to pass v8 header includes check on |
| # bots that has check_v8_header_includes enabled. |
| 'url': Var('chromium_url') + '/external/github.com/intel/ittapi' + '@' + 'a3911fff01a775023a06af8754f9ec1e5977dd97', |
| 'condition': "checkout_ittapi or check_v8_header_includes", |
| }, |
| 'third_party/jinja2': |
| Var('chromium_url') + '/chromium/src/third_party/jinja2.git' + '@' + 'c3027d884967773057bf74b957e3fea87e5df4d7', |
| 'third_party/jsoncpp/source': |
| Var('chromium_url') + '/external/github.com/open-source-parsers/jsoncpp.git'+ '@' + '42e892d96e47b1f6e29844cc705e148ec4856448', |
| 'third_party/libc++/src': |
| Var('chromium_url') + '/external/github.com/llvm/llvm-project/libcxx.git' + '@' + '7ecf96c74a655e9416fa2e5c2ac05816d76d792f', |
| 'third_party/libc++abi/src': |
| Var('chromium_url') + '/external/github.com/llvm/llvm-project/libcxxabi.git' + '@' + 'a1e05c981bb96e3772b3e24686f5a408db34e09e', |
| 'third_party/libpfm4': |
| Var('chromium_url') + '/chromium/src/third_party/libpfm4.git' + '@' + '25c29f04c9127e1ca09e6c1181f74850aa7f118b', |
| 'third_party/libpfm4/src': |
| Var('chromium_url') + '/external/git.code.sf.net/p/perfmon2/libpfm4.git' + '@' + '964baf9d35d5f88d8422f96d8a82c672042e7064', |
| 'third_party/libunwind/src': |
| Var('chromium_url') + '/external/github.com/llvm/llvm-project/libunwind.git' + '@' + '14b9dee79c12dd8cdd3d662ee0be49200c6d9b71', |
| 'third_party/llvm-libc/src': |
| Var('chromium_url') + '/external/github.com/llvm/llvm-project/libc.git' + '@' + 'b4bdef8f8c6bdb155e204c303013b773131dbdbd', |
| 'third_party/llvm-build/Release+Asserts': { |
| 'dep_type': 'gcs', |
| 'bucket': 'chromium-browser-clang', |
| 'objects': [ |
| { |
| 'object_name': 'Linux_x64/clang-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'ffec41dcf83423532ea5cf11662b212d167b7a872b58bc4f731507d9b8fd1b7a', |
| 'size_bytes': 56109980, |
| 'generation': 1761337932156611, |
| 'condition': 'host_os == "linux"', |
| }, |
| { |
| 'object_name': 'Linux_x64/clang-tidy-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'b7e9a0644956ea65a327b337f78d093fdf8ef10394cffd47e2777d0fc3eb8d97', |
| 'size_bytes': 14230956, |
| 'generation': 1761337932193057, |
| 'condition': 'host_os == "linux" and checkout_clang_tidy', |
| }, |
| { |
| 'object_name': 'Linux_x64/clangd-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'a03330b69e92764a8861cb5cc0a3ad6a2514fe69f1474797f6ca46456e8a8cb6', |
| 'size_bytes': 14426688, |
| 'generation': 1761337932232398, |
| 'condition': 'host_os == "linux" and checkout_clangd', |
| }, |
| { |
| 'object_name': 'Linux_x64/llvm-code-coverage-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '327248b52b5160ddf440e0355d7abd5817d5144fc49a69a234bc7dd7174ae4b8', |
| 'size_bytes': 2292772, |
| 'generation': 1761337932297003, |
| 'condition': 'host_os == "linux" and checkout_clang_coverage_tools', |
| }, |
| { |
| 'object_name': 'Linux_x64/llvmobjdump-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '875b27a1b78f3b5ee97894cf3efa6faa9be5de646075f9fe1cceb8903405ffe5', |
| 'size_bytes': 5703936, |
| 'generation': 1761337932232851, |
| 'condition': '(checkout_linux or checkout_mac or checkout_android) and host_os == "linux"', |
| }, |
| { |
| 'object_name': 'Mac/clang-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '3644769a80f6fbd182643a6cb9554e7270b5b571f62d546130f8786c5d47b581', |
| 'size_bytes': 53974704, |
| 'generation': 1761337933985979, |
| 'condition': 'host_os == "mac" and host_cpu == "x64"', |
| }, |
| { |
| 'object_name': 'Mac/clang-mac-runtime-library-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '5843537eae828493dbf3cea4f5ed0a014329ef3d48c0b65825848f377a7f7e93', |
| 'size_bytes': 1010116, |
| 'generation': 1761337941802663, |
| 'condition': 'checkout_mac and not host_os == "mac"', |
| }, |
| { |
| 'object_name': 'Mac/clang-tidy-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'a512248b32bf96356264d0004c483c31f9db0649e53ca2cf159db6283e97ec8b', |
| 'size_bytes': 14292684, |
| 'generation': 1761337933988162, |
| 'condition': 'host_os == "mac" and host_cpu == "x64" and checkout_clang_tidy', |
| }, |
| { |
| 'object_name': 'Mac/clangd-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '3caffede54b9f16cf846b06caab23bd6fd71043ed68bb2b866bf2f37cc60c071', |
| 'size_bytes': 15805316, |
| 'generation': 1761337934002952, |
| 'condition': 'host_os == "mac" and host_cpu == "x64" and checkout_clangd', |
| }, |
| { |
| 'object_name': 'Mac/llvm-code-coverage-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '03da082317c7d2fa540b83f9d14f29ef0f42a7671c26e416a8d74c9fd37f4f43', |
| 'size_bytes': 2335124, |
| 'generation': 1761337934119552, |
| 'condition': 'host_os == "mac" and host_cpu == "x64" and checkout_clang_coverage_tools', |
| }, |
| { |
| 'object_name': 'Mac/llvmobjdump-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '37284075951953ebe8b273856b87148b596a7eb75ae619669c7cec0eb2fa72bd', |
| 'size_bytes': 5599068, |
| 'generation': 1761337933999423, |
| 'condition': 'host_os == "mac" and host_cpu == "x64"', |
| }, |
| { |
| 'object_name': 'Mac_arm64/clang-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '9ccaa556dd7b4478fa9a90ed82b8c78dd2cc337e055e13654ee26d517760cdce', |
| 'size_bytes': 45058144, |
| 'generation': 1761337943479305, |
| 'condition': 'host_os == "mac" and host_cpu == "arm64"', |
| }, |
| { |
| 'object_name': 'Mac_arm64/clang-tidy-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'b9c37a6417648f9d4ccf8fbe4afb5448ef708c8e61291204d3ce4654c8427c15', |
| 'size_bytes': 12282788, |
| 'generation': 1761337943478346, |
| 'condition': 'host_os == "mac" and host_cpu == "arm64" and checkout_clang_tidy', |
| }, |
| { |
| 'object_name': 'Mac_arm64/clangd-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'dd0afd0386ea01f328db0d04841e53ad0740b691cd0744226223537de7fae38a', |
| 'size_bytes': 12677444, |
| 'generation': 1761337943476703, |
| 'condition': 'host_os == "mac" and host_cpu == "arm64" and checkout_clangd', |
| }, |
| { |
| 'object_name': 'Mac_arm64/llvm-code-coverage-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'd426d5ac2159f94e8e3e8edb923cc465bd7969ad6df0a337aa923adcf52a1be3', |
| 'size_bytes': 1967576, |
| 'generation': 1761337943522567, |
| 'condition': 'host_os == "mac" and host_cpu == "arm64" and checkout_clang_coverage_tools', |
| }, |
| { |
| 'object_name': 'Mac_arm64/llvmobjdump-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'a0ef0f87d8796dbf5d0ecec65b688a9afa8054c9a7bb620e32179555de2ded67', |
| 'size_bytes': 5347212, |
| 'generation': 1761337943489457, |
| 'condition': 'host_os == "mac" and host_cpu == "arm64"', |
| }, |
| { |
| 'object_name': 'Win/clang-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'a3b528676d56cfb2c3df9b771ce75e2edc73346905416c81576710d20b6ae02c', |
| 'size_bytes': 48228992, |
| 'generation': 1761337953371073, |
| 'condition': 'host_os == "win"', |
| }, |
| { |
| 'object_name': 'Win/clang-tidy-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '5adfd4ec4b905f283b54d1f0f7969b21f3f82bc7d02dc430054cbe6ebb769387', |
| 'size_bytes': 14192380, |
| 'generation': 1761337953407064, |
| 'condition': 'host_os == "win" and checkout_clang_tidy', |
| }, |
| { |
| 'object_name': 'Win/clang-win-runtime-library-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '1fad7810f49dba86ff46334813f3bd7d26771cf72a9ad0d8785442a83c823f27', |
| 'size_bytes': 2517344, |
| 'generation': 1761337961187718, |
| 'condition': 'checkout_win and not host_os == "win"', |
| }, |
| { |
| 'object_name': 'Win/clangd-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': '7160a3896b95a0a2c20fe4a7d7a64aea65ff833fa296d73b28cd238ae71e16b6', |
| 'size_bytes': 14604224, |
| 'generation': 1761337953407009, |
| 'condition': 'host_os == "win" and checkout_clangd', |
| }, |
| { |
| 'object_name': 'Win/llvm-code-coverage-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'a873ab24e0b65523965ce4e27d74ba3eee447f262e72ba690d1eb98a76959dc6', |
| 'size_bytes': 2378244, |
| 'generation': 1761337953490821, |
| 'condition': 'host_os == "win" and checkout_clang_coverage_tools', |
| }, |
| { |
| 'object_name': 'Win/llvmobjdump-llvmorg-22-init-12326-g8a5f1533-1.tar.xz', |
| 'sha256sum': 'c9ab59eb04490e9df3a477d354516c2ee16ca9fa456698b5ca99f689325a34ef', |
| 'size_bytes': 5706036, |
| 'generation': 1761337953424721, |
| 'condition': '(checkout_linux or checkout_mac or checkout_android) and host_os == "win"', |
| }, |
| ], |
| }, |
| 'third_party/logdog/logdog': |
| Var('chromium_url') + '/infra/luci/luci-py/client/libs/logdog' + '@' + '0b2078a90f7a638d576b3a7c407d136f2fb62399', |
| 'third_party/markupsafe': |
| Var('chromium_url') + '/chromium/src/third_party/markupsafe.git' + '@' + '4256084ae14175d38a3ff7d739dca83ae49ccec6', |
| 'third_party/ninja': { |
| 'packages': [ |
| { |
| 'package': 'infra/3pp/tools/ninja/${{platform}}', |
| 'version': Var('ninja_version'), |
| } |
| ], |
| 'dep_type': 'cipd', |
| 'condition': 'host_cpu != "s390" and host_os != "zos" and host_cpu != "ppc"' |
| }, |
| 'third_party/partition_alloc': { |
| 'url': Var('chromium_url') + '/chromium/src/base/allocator/partition_allocator.git@' + Var('partition_alloc_version'), |
| 'condition': 'not build_with_chromium', |
| }, |
| 'third_party/perfetto': |
| Var('android_url') + '/platform/external/perfetto.git' + '@' + '40b529923598b739b2892a536a7692eedbed5685', |
| 'third_party/protobuf': |
| Var('chromium_url') + '/chromium/src/third_party/protobuf.git' + '@' + 'fcb7931541e4fe633b796db3f3e6f54c2dd297a8', |
| 'third_party/re2/src': |
| Var('chromium_url') + '/external/github.com/google/re2.git' + '@' + '61c4644171ee6b480540bf9e569cba06d9090b4b', |
| 'third_party/requests': { |
| 'url': Var('chromium_url') + '/external/github.com/kennethreitz/requests.git' + '@' + 'c7e0fc087ceeadb8b4c84a0953a422c474093d6d', |
| 'condition': 'checkout_android', |
| }, |
| 'tools/rust': |
| Var('chromium_url') + '/chromium/src/tools/rust' + '@' + '3580ba3b66ccc363c3ef4e6328c669b5ef4adc99', |
| 'tools/win': |
| Var('chromium_url') + '/chromium/src/tools/win' + '@' + '24494b071e019a2baea4355d9870ffc5fc0bbafe', |
| 'third_party/rust': |
| Var('chromium_url') + '/chromium/src/third_party/rust' + '@' + 'b90c35ee700e5e18bfe9d2d54e114e26760e1bb9', |
| 'third_party/rust-toolchain': { |
| 'dep_type': 'gcs', |
| 'bucket': 'chromium-browser-clang', |
| 'objects': [ |
| { |
| 'object_name': 'Linux_x64/rust-toolchain-ab925646fae038b02bd462cd328ae9eef1639236-1-llvmorg-22-init-12326-g8a5f1533.tar.xz', |
| 'sha256sum': '5328ade0c0423d46e4c0adee3c450f7591a2a0d43f6b75ba3380664c1d330029', |
| 'size_bytes': 139811332, |
| 'generation': 1761588638046533, |
| 'condition': 'host_os == "linux"', |
| }, |
| { |
| 'object_name': 'Mac/rust-toolchain-ab925646fae038b02bd462cd328ae9eef1639236-1-llvmorg-22-init-12326-g8a5f1533.tar.xz', |
| 'sha256sum': '5dde3a3290de03eaa1a95663cd27806d968db32e10982626f206747346dfaaa3', |
| 'size_bytes': 133675660, |
| 'generation': 1761588639737647, |
| 'condition': 'host_os == "mac" and host_cpu == "x64"', |
| }, |
| { |
| 'object_name': 'Mac_arm64/rust-toolchain-ab925646fae038b02bd462cd328ae9eef1639236-1-llvmorg-22-init-12326-g8a5f1533.tar.xz', |
| 'sha256sum': 'c9e7bcfafa17993c6f600b793b2a81e106c4d9fb5a35e0dd02d4b761a81c1922', |
| 'size_bytes': 121330332, |
| 'generation': 1761588641355703, |
| 'condition': 'host_os == "mac" and host_cpu == "arm64"', |
| }, |
| { |
| 'object_name': 'Win/rust-toolchain-ab925646fae038b02bd462cd328ae9eef1639236-1-llvmorg-22-init-12326-g8a5f1533.tar.xz', |
| 'sha256sum': '0fa51fc7c08697dfe39de8291136da146d48cd51e497674472afcfd9dcc38d95', |
| 'size_bytes': 197215156, |
| 'generation': 1761588643038978, |
| 'condition': 'host_os == "win"', |
| }, |
| ], |
| }, |
| 'third_party/siso': { |
| 'packages': [ |
| { |
| 'package': 'build/siso/${{platform}}', |
| 'version': Var('siso_version'), |
| } |
| ], |
| 'dep_type': 'cipd', |
| 'condition': 'not build_with_chromium and host_cpu != "s390" and host_os != "zos" and host_cpu != "ppc"', |
| }, |
| 'third_party/zlib': |
| Var('chromium_url') + '/chromium/src/third_party/zlib.git'+ '@' + '5aa617372945f61b628d5b18d3ab1cd1877b750a', |
| 'tools/clang': |
| Var('chromium_url') + '/chromium/src/tools/clang.git' + '@' + 'c32a3112f46745b6b0ec81b933bb3bd6303c7af0', |
| 'tools/protoc_wrapper': |
| Var('chromium_url') + '/chromium/src/tools/protoc_wrapper.git' + '@' + '3438d4183bfc7c0d6850e8b970204cc8189f0323', |
| 'third_party/abseil-cpp': { |
| 'url': Var('chromium_url') + '/chromium/src/third_party/abseil-cpp.git' + '@' + 'a07576ec82e2d2296ef8fddacbb4216ba560a8de', |
| 'condition': 'not build_with_chromium', |
| }, |
| 'third_party/zoslib': { |
| 'url': Var('chromium_url') + '/external/github.com/ibmruntimes/zoslib.git' + '@' + '1e68de6e37efced3738a88536fccb6bbfe2d70b2', |
| 'condition': 'host_os == "zos"', |
| } |
| } |
| |
| include_rules = [ |
| # Everybody can use some things. |
| '+include', |
| '+unicode', |
| '+third_party/dragonbox/src/include', |
| '+third_party/fast_float/src/include', |
| '+third_party/fdlibm', |
| '+third_party/fp16/src/include', |
| '+third_party/fuzztest', |
| '+third_party/ittapi/include', |
| '+third_party/simdutf', |
| '+third_party/v8/codegen', |
| '+third_party/vtune', |
| '+hwy/highway.h', |
| # Abseil features are allow-listed. Please use your best judgement when adding |
| # to this set -- if in doubt, email v8-dev@. For general guidance, refer to |
| # the Chromium guidelines (though note that some requirements in V8 may be |
| # different to Chromium's): |
| # https://chromium.googlesource.com/chromium/src/+/main/styleguide/c++/c++-features.md |
| '+absl/container/flat_hash_map.h', |
| '+absl/container/flat_hash_set.h', |
| '+absl/container/btree_map.h', |
| '+absl/functional/overload.h', |
| '+absl/status', |
| '+absl/strings/str_format.h', |
| '+absl/synchronization/mutex.h', |
| '+absl/time/time.h', |
| # Some abseil features are explicitly banned. |
| '-absl/types/any.h', # Requires RTTI. |
| '-absl/types/flags', # Requires RTTI. |
| '-absl/functional/function_ref.h', # Use base::FunctionRef |
| ] |
| |
| # checkdeps.py shouldn't check for includes in these directories: |
| skip_child_includes = [ |
| 'build', |
| 'third_party', |
| ] |
| |
| hooks = [ |
| { |
| # Ensure that the DEPS'd "depot_tools" has its self-update capability |
| # disabled. |
| 'name': 'disable_depot_tools_selfupdate', |
| 'pattern': '.', |
| 'action': [ |
| 'python3', |
| 'third_party/depot_tools/update_depot_tools_toggle.py', |
| '--disable', |
| ], |
| }, |
| { |
| # This clobbers when necessary (based on get_landmines.py). It must be the |
| # first hook so that other things that get/generate into the output |
| # directory will not subsequently be clobbered. |
| 'name': 'landmines', |
| 'pattern': '.', |
| 'action': [ |
| 'python3', |
| 'build/landmines.py', |
| '--landmine-scripts', |
| 'tools/get_landmines.py', |
| ], |
| }, |
| { |
| 'name': 'bazel', |
| 'pattern': '.', |
| 'condition': 'download_prebuilt_bazel', |
| 'action': [ 'python3', |
| 'third_party/depot_tools/download_from_google_storage.py', |
| '--bucket', 'chromium-v8-prebuilt-bazel/linux', |
| '--no_resume', |
| '-s', 'tools/bazel/bazel.sha1', |
| '--platform=linux*', |
| ], |
| }, |
| # Pull dsymutil binaries using checked-in hashes. |
| { |
| 'name': 'dsymutil_mac_arm64', |
| 'pattern': '.', |
| 'condition': 'host_os == "mac" and host_cpu == "arm64"', |
| 'action': [ 'python3', |
| 'third_party/depot_tools/download_from_google_storage.py', |
| '--no_resume', |
| '--bucket', 'chromium-browser-clang', |
| '-s', 'tools/clang/dsymutil/bin/dsymutil.arm64.sha1', |
| '-o', 'tools/clang/dsymutil/bin/dsymutil', |
| ], |
| }, |
| { |
| 'name': 'dsymutil_mac_x64', |
| 'pattern': '.', |
| 'condition': 'host_os == "mac" and host_cpu == "x64"', |
| 'action': [ 'python3', |
| 'third_party/depot_tools/download_from_google_storage.py', |
| '--no_resume', |
| '--bucket', 'chromium-browser-clang', |
| '-s', 'tools/clang/dsymutil/bin/dsymutil.x64.sha1', |
| '-o', 'tools/clang/dsymutil/bin/dsymutil', |
| ], |
| }, |
| { |
| 'name': 'gcmole', |
| 'pattern': '.', |
| 'condition': 'download_gcmole', |
| 'action': [ 'python3', |
| 'third_party/depot_tools/download_from_google_storage.py', |
| '--bucket', 'chrome-v8-gcmole', |
| '-u', '--no_resume', |
| '-s', 'tools/gcmole/gcmole-tools.tar.gz.sha1', |
| '--platform=linux*', |
| ], |
| }, |
| { |
| 'name': 'jsfunfuzz', |
| 'pattern': '.', |
| 'condition': 'download_jsfunfuzz', |
| 'action': [ 'python3', |
| 'third_party/depot_tools/download_from_google_storage.py', |
| '--bucket', 'chrome-v8-jsfunfuzz', |
| '-u', '--no_resume', |
| '-s', 'tools/jsfunfuzz/jsfunfuzz.tar.gz.sha1', |
| '--platform=linux*', |
| ], |
| }, |
| { |
| 'name': 'llvm_symbolizer', |
| 'pattern': '.', |
| 'condition': 'download_prebuilt_arm64_llvm_symbolizer', |
| 'action': [ 'python3', |
| 'third_party/depot_tools/download_from_google_storage.py', |
| '--bucket', 'chromium-v8/llvm/arm64', |
| '--no_resume', |
| '-s', 'tools/sanitizers/linux/arm64/llvm-symbolizer.sha1', |
| '--platform=linux*', |
| ], |
| }, |
| { |
| 'name': 'wasm_spec_tests', |
| 'pattern': '.', |
| 'action': [ 'python3', |
| 'third_party/depot_tools/download_from_google_storage.py', |
| '--no_resume', |
| '-u', |
| '--bucket', 'v8-wasm-spec-tests', |
| '-s', 'test/wasm-spec-tests/tests.tar.gz.sha1', |
| ], |
| }, |
| { |
| 'name': 'wasm_js', |
| 'pattern': '.', |
| 'action': [ 'python3', |
| 'third_party/depot_tools/download_from_google_storage.py', |
| '--no_resume', |
| '-u', |
| '--bucket', 'v8-wasm-spec-tests', |
| '-s', 'test/wasm-js/tests.tar.gz.sha1', |
| ], |
| }, |
| { |
| # 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', |
| 'third_party/depot_tools/download_from_google_storage.py', |
| '--no_resume', |
| '--bucket', 'chromium-browser-clang/ciopfs', |
| '-s', 'build/ciopfs.sha1', |
| ] |
| }, |
| { |
| # Update the Windows toolchain if necessary. |
| 'name': 'win_toolchain', |
| 'pattern': '.', |
| 'condition': 'checkout_win', |
| 'action': ['python3', 'build/vs_toolchain.py', 'update', '--force'], |
| }, |
| { |
| # Update the Mac toolchain if necessary. |
| 'name': 'mac_toolchain', |
| 'pattern': '.', |
| 'condition': 'checkout_mac', |
| 'action': ['python3', 'build/mac_toolchain.py'], |
| }, |
| { |
| # Update LASTCHANGE. |
| 'name': 'lastchange', |
| 'pattern': '.', |
| 'action': ['python3', 'build/util/lastchange.py', |
| '-o', 'build/util/LASTCHANGE'], |
| }, |
| { |
| 'name': 'Download Fuchsia SDK from GCS', |
| 'pattern': '.', |
| 'condition': 'checkout_fuchsia', |
| 'action': [ |
| 'python3', |
| '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', |
| 'build/fuchsia/update_product_bundles.py', |
| '{checkout_fuchsia_boot_images}', |
| ], |
| }, |
| { |
| # Mac does not have llvm-objdump, download it for cross builds in Fuchsia. |
| 'name': 'llvm-objdump', |
| 'pattern': '.', |
| 'condition': 'host_os == "mac" and checkout_fuchsia', |
| 'action': ['python3', 'tools/clang/scripts/update.py', |
| '--package=objdump'], |
| }, |
| { |
| 'name': 'vpython3_common', |
| 'pattern': '.', |
| 'action': [ 'vpython3', |
| '-vpython-spec', '.vpython3', |
| '-vpython-tool', 'install', |
| ], |
| }, |
| { |
| 'name': 'check_v8_header_includes', |
| 'pattern': '.', |
| 'condition': 'check_v8_header_includes', |
| 'action': [ |
| 'python3', |
| 'tools/generate-header-include-checks.py', |
| ], |
| }, |
| { |
| 'name': 'checkout_v8_builtins_pgo_profiles', |
| 'pattern': '.', |
| 'condition': 'checkout_v8_builtins_pgo_profiles', |
| 'action': [ |
| 'python3', |
| 'tools/builtins-pgo/download_profiles.py', |
| 'download', |
| '--quiet', |
| ], |
| }, |
| # Configure remote exec cfg files |
| { |
| 'name': 'download_and_configure_reclient_cfgs', |
| 'pattern': '.', |
| 'condition': 'download_remoteexec_cfg and not build_with_chromium', |
| 'action': ['python3', |
| 'buildtools/reclient_cfgs/configure_reclient_cfgs.py', |
| '--rbe_instance', |
| Var('rbe_instance'), |
| '--reproxy_cfg_template', |
| 'reproxy.cfg.template', |
| '--rewrapper_cfg_project', |
| Var('rewrapper_cfg_project'), |
| '--quiet', |
| ], |
| }, |
| { |
| 'name': 'configure_reclient_cfgs', |
| 'pattern': '.', |
| 'condition': 'not download_remoteexec_cfg and not build_with_chromium', |
| 'action': ['python3', |
| 'buildtools/reclient_cfgs/configure_reclient_cfgs.py', |
| '--rbe_instance', |
| Var('rbe_instance'), |
| '--reproxy_cfg_template', |
| 'reproxy.cfg.template', |
| '--rewrapper_cfg_project', |
| Var('rewrapper_cfg_project'), |
| '--skip_remoteexec_cfg_fetch', |
| ], |
| }, |
| # Configure Siso for developer builds. |
| { |
| 'name': 'configure_siso', |
| 'pattern': '.', |
| 'condition': 'not build_with_chromium', |
| 'action': ['python3', |
| 'build/config/siso/configure_siso.py', |
| '--rbe_instance', |
| Var('rbe_instance'), |
| ], |
| }, |
| ] |
| |
| recursedeps = [ |
| 'build', |
| 'buildtools', |
| 'third_party/instrumented_libs', |
| ] |