| use_relative_paths = True | 
 |  | 
 | gclient_gn_args_file = 'build/config/gclient_args.gni' | 
 | gclient_gn_args = [ | 
 |   'checkout_android', | 
 |   'checkout_skia', | 
 | ] | 
 |  | 
 | vars = { | 
 |   # By default, we should check out everything needed to run on the main | 
 |   # pdfium waterfalls. This var can be also be set to 'small', in order to skip | 
 |   # things are not strictly needed to build pdfium for development purposes, | 
 |   # by adding the following line to the .gclient file inside a solutions entry: | 
 |   #      "custom_vars": { "checkout_configuration": "small" }, | 
 |   # Similarly, this var can be set to 'minimal' to also skip the Skia and V8 | 
 |   # checkouts for the smallest possible checkout, where some features will not | 
 |   # work. | 
 |   'checkout_configuration': 'default', | 
 |  | 
 |   # By default, don't check out android. Will be overridden by gclient | 
 |   # variables. | 
 |   # TODO(crbug.com/875037): Remove this once the bug in gclient is fixed. | 
 |   'checkout_android': False, | 
 |  | 
 |   # Pull in Android native toolchain dependencies, so we can build ARC++ | 
 |   # support libraries. | 
 |   'checkout_android_native_support': 'checkout_android', | 
 |  | 
 |   'checkout_clang_coverage_tools': 'False', | 
 |  | 
 |   'checkout_clang_tidy': 'False', | 
 |  | 
 |   'checkout_clangd': 'False', | 
 |  | 
 |   'checkout_instrumented_libraries': 'checkout_linux and checkout_configuration != "small" and checkout_configuration != "minimal"', | 
 |  | 
 |   # Fetch the rust toolchain. | 
 |   # | 
 |   # Use a custom_vars section to enable it: | 
 |   # "custom_vars": { | 
 |   #   "checkout_rust": True, | 
 |   # } | 
 |   'checkout_rust': False, | 
 |  | 
 |   'checkout_skia': 'checkout_configuration != "minimal"', | 
 |  | 
 |   'checkout_testing_corpus': 'checkout_configuration != "small" and checkout_configuration != "minimal"', | 
 |  | 
 |   'checkout_v8': 'checkout_configuration != "minimal"', | 
 |  | 
 |   # condition to allowlist deps for non-git-source processing. | 
 |   'non_git_source': 'True', | 
 |  | 
 |   # 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(''), | 
 |   # reclient CIPD package | 
 |   'reclient_package': 'infra/rbe/client/', | 
 |   # reclient CIPD package version | 
 |   'reclient_version': 're_client_version:0.179.0.28341fc7-gomaip', | 
 |  | 
 |   'chromium_git': 'https://chromium.googlesource.com', | 
 |   'pdfium_git': 'https://pdfium.googlesource.com', | 
 |   'skia_git': 'https://skia.googlesource.com', | 
 |  | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling abseil | 
 |   # and whatever else without interference from each other. | 
 |   'abseil_revision': '1e18dc54a045a632de52d420e9636072662841b4', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling android_toolchain | 
 |   # and whatever else without interference from each other. | 
 |   'android_toolchain_version': 'KXOia11cm9lVdUdPlbGLu8sCz6Y4ey_HV2s8_8qeqhgC', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling build | 
 |   # and whatever else without interference from each other. | 
 |   'build_revision': 'ac578f1d43317d83f78eff4d568da3942269842f', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling buildtools | 
 |   # and whatever else without interference from each other. | 
 |   'buildtools_revision': '460cef8967904d3a5fcfad728eb33db0c3a7da70', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling catapult | 
 |   # and whatever else without interference from each other. | 
 |   'catapult_revision': '26075d3aef248195fd27846e846759daee3dac20', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling clang format | 
 |   # and whatever else without interference from each other. | 
 |   'clang_format_revision': '1549a8dba21b6c022c6f5ccee4edf18e5ceb2109', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling clang | 
 |   # and whatever else without interference from each other. | 
 |   'clang_revision': 'cd1691927648f2e251f58b7f564d9e11521ebae3', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling code_coverage | 
 |   # and whatever else without interference from each other. | 
 |   'code_coverage_revision': 'ef6864ec11f191c3f30d3dc4f5a3cc97135069e5', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling cpu_features | 
 |   # and whatever else without interference from each other. | 
 |   'cpu_features_revision': '936b9ab5515dead115606559502e3864958f7f6e', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling depot_tools | 
 |   # and whatever else without interference from each other. | 
 |   'depot_tools_revision': 'dd6e72e9681827a40b81c5f0027dd6f6b54e925a', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling dragonbox | 
 |   # and whatever else without interference from each other. | 
 |   'dragonbox_revision': '6c7c925b571d54486b9ffae8d9d18a822801cbda', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling fast_float | 
 |   # and whatever else without interference from each other. | 
 |   'fast_float_revision': 'cb1d42aaa1e14b09e1452cfdef373d051b8c02a4', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling fp16 | 
 |   # and whatever else without interference from each other. | 
 |   'fp16_revision': '581ac1c79dd9d9f6f4e8b2934e7a55c7becf0799', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling freetype | 
 |   # and whatever else without interference from each other. | 
 |   'freetype_revision': '08805be530d6820d2bf8a1b7685826de40f06812', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling GN CIPD package version | 
 |   # and whatever else without interference from each other. | 
 |   'gn_version': 'git_revision:3a4f5cea73eca32e9586e8145f97b04cbd4a1aee', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling goldctl CIPD package version | 
 |   # and whatever else without interference from each other. | 
 |   'goldctl_version': 'git_revision:39c6fad2c962304377b51970980a0affe87b8a82', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling gtest | 
 |   # and whatever else without interference from each other. | 
 |   'gtest_revision': '373af2e3df71599b87a40ce0e37164523849166b', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling highway | 
 |   # and whatever else without interference from each other. | 
 |   'highway_revision': '00fe003dac355b979f36157f9407c7c46448958e', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling icu | 
 |   # and whatever else without interference from each other. | 
 |   'icu_revision': '1b2e3e8a421efae36141a7b932b41e315b089af8', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling instrumented_lib | 
 |   # and whatever else without interference from each other. | 
 |   'instrumented_lib_revision': '69015643b3f68dbd438c010439c59adc52cac808', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling jinja2 | 
 |   # and whatever else without interference from each other. | 
 |   'jinja2_revision': 'c3027d884967773057bf74b957e3fea87e5df4d7', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling jpeg_turbo | 
 |   # and whatever else without interference from each other. | 
 |   'jpeg_turbo_revision': 'e14cbfaa85529d47f9f55b0f104a579c1061f9ad', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling libc++ | 
 |   # and whatever else without interference from each other. | 
 |   # If you change this, also update the libc++ revision in | 
 |   # //buildtools/deps_revisions.gni. | 
 |   'libcxx_revision': 'adbb4a5210ae2a8a4e27fa6199221156c02a9b1a', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling libc++abi | 
 |   # and whatever else without interference from each other. | 
 |   'libcxxabi_revision': 'a6c815c69d55ec59d020abde636754d120b402ad', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling libpng | 
 |   # and whatever else without interference from each other. | 
 |   'libpng_revision': 'cb7e5155c4a1c086992b05ec68f55d7211fc93f7', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling libunwind | 
 |   # and whatever else without interference from each other. | 
 |   'libunwind_revision': '84c5262b57147e9934c0a8f2302d989b44ec7093', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling llvm-libc | 
 |   # and whatever else without interference from each other. | 
 |   'llvm_libc_revision': '6adc0aa946a413c124758a3a0ac12e5a536c7dd3', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling markupsafe | 
 |   # and whatever else without interference from each other. | 
 |   'markupsafe_revision': '4256084ae14175d38a3ff7d739dca83ae49ccec6', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling nasm_source | 
 |   # and whatever else without interference from each other. | 
 |   'nasm_source_revision': 'e2c93c34982b286b27ce8b56dd7159e0b90869a2', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling Ninja CIPD package version | 
 |   # and whatever else without interference from each other. | 
 |   'ninja_version': 'version:3@1.12.1.chromium.4', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling partition_allocator | 
 |   # and whatever else without interference from each other. | 
 |   'partition_allocator_revision': '57104f156773d81ca03b0c41d118821475646bf5', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling pdfium_tests | 
 |   # and whatever else without interference from each other. | 
 |   'pdfium_tests_revision': '96eff75d5335bc025e9ac6d9495cd329dc485759', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling result_adapter_revision | 
 |   # and whatever else without interference from each other. | 
 |   'result_adapter_revision': 'git_revision:5fb3ca203842fd691cab615453f8e5a14302a1d8', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling rust | 
 |   # and whatever else without interference from each other. | 
 |   'rust_revision': '8bbd6f5553fdeb11e0b32cd1f4f26510438828c9', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling simdutf | 
 |   # and whatever else without interference from each other. | 
 |   'simdutf_revision': 'c6c377dbb834a65fbea1423a670d82ecc2d576d2', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling siso | 
 |   # and whatever else without interference from each other. | 
 |   'siso_version': 'git_revision:e5fa67c5a456c1ab932f440ddfb195a8a33c235b', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling skia | 
 |   # and whatever else without interference from each other. | 
 |   'skia_revision': 'af6d6eb383a6c8610d54bd3b0d8f69abf1020e34', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling test_fonts | 
 |   # and whatever else without interference from each other. | 
 |   'test_fonts_revision': '7f51783942943e965cd56facf786544ccfc07713', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling testing_rust | 
 |   # and whatever else without interference from each other. | 
 |   'testing_rust_revision': '6712dc59f4a6c5626f391057cded3842700a17eb', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling tools_memory | 
 |   # and whatever else without interference from each other. | 
 |   'tools_memory_revision': '7f4bdaac14afec7c4fff3c9c88194c4a8f49ab25', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling tools_rust | 
 |   # and whatever else without interference from each other. | 
 |   'tools_rust_revision': 'fa1df48579a1f8af4ddafd9a65705bf0b40e5186', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling v8 | 
 |   # and whatever else without interference from each other. | 
 |   'v8_revision': '596261193b6c808f82e6bcd0150f39129793f1f3', | 
 |   # Three lines of non-changing comments so that | 
 |   # the commit queue can handle CLs rolling zlib | 
 |   # and whatever else without interference from each other. | 
 |   'zlib_revision': '363a126ed293970f3df97ee5f760cba29a29e193', | 
 | } | 
 |  | 
 | # Only these hosts are allowed for dependencies in this DEPS file. | 
 | # If you need to add a new host, and the new host is not in Chromium's DEPS | 
 | # file's allowed_hosts list, contact Chrome infrastructure team. | 
 | allowed_hosts = [ | 
 |   'chromium.googlesource.com', | 
 |   'pdfium.googlesource.com', | 
 |   'skia.googlesource.com', | 
 |  | 
 |    # TODO(337061377): Move into a separate allowed gcs bucket list. | 
 |   'chromium-browser-clang', | 
 | ] | 
 |  | 
 | deps = { | 
 |   'base/allocator/partition_allocator': | 
 |     Var('chromium_git') + | 
 |         '/chromium/src/base/allocator/partition_allocator.git@' + | 
 |         Var('partition_allocator_revision'), | 
 |  | 
 |   'build': | 
 |     Var('chromium_git') + '/chromium/src/build.git@' + Var('build_revision'), | 
 |  | 
 |   'buildtools': | 
 |     Var('chromium_git') + '/chromium/src/buildtools.git@' + | 
 |         Var('buildtools_revision'), | 
 |  | 
 |   'buildtools/linux64': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'gn/gn/linux-${{arch}}', | 
 |         'version': Var('gn_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |     'condition': 'host_os == "linux"', | 
 |   }, | 
 |  | 
 |   'buildtools/mac': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'gn/gn/mac-${{arch}}', | 
 |         'version': Var('gn_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |     'condition': 'host_os == "mac"', | 
 |   }, | 
 |  | 
 |   'buildtools/reclient': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': Var('reclient_package') + '${{platform}}', | 
 |         'version': Var('reclient_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |   }, | 
 |  | 
 |   'buildtools/win': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'gn/gn/windows-amd64', | 
 |         'version': Var('gn_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |     'condition': 'host_os == "win"', | 
 |   }, | 
 |  | 
 |   'testing/corpus': { | 
 |     'url': Var('pdfium_git') + '/pdfium_tests@' + Var('pdfium_tests_revision'), | 
 |     'condition': 'checkout_testing_corpus', | 
 |   }, | 
 |  | 
 |   'testing/scripts/rust': { | 
 |     'url': Var('chromium_git') + '/chromium/src/testing/scripts/rust.git@' + | 
 |         Var('testing_rust_revision'), | 
 |     'condition': 'checkout_rust', | 
 |   }, | 
 |  | 
 |   'third_party/abseil-cpp': | 
 |     Var('chromium_git') + '/chromium/src/third_party/abseil-cpp.git@' + | 
 |         Var('abseil_revision'), | 
 |  | 
 |   'third_party/android_toolchain/ndk': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'chromium/third_party/android_toolchain/android_toolchain', | 
 |         'version': Var('android_toolchain_version'), | 
 |       }, | 
 |     ], | 
 |     'condition': 'checkout_android_native_support', | 
 |     'dep_type': 'cipd', | 
 |   }, | 
 |  | 
 |   'third_party/catapult': { | 
 |     'url': Var('chromium_git') + '/catapult.git@' + Var('catapult_revision'), | 
 |     'condition': 'checkout_android', | 
 |   }, | 
 |  | 
 |   'third_party/clang-format/script': | 
 |     Var('chromium_git') + | 
 |         '/external/github.com/llvm/llvm-project/clang/tools/clang-format.git@' + | 
 |         Var('clang_format_revision'), | 
 |  | 
 |   'third_party/cpu_features/src': { | 
 |     'url': Var('chromium_git') + | 
 |         '/external/github.com/google/cpu_features.git@' + | 
 |         Var('cpu_features_revision'), | 
 |     'condition': 'checkout_android', | 
 |   }, | 
 |  | 
 |   'third_party/depot_tools': | 
 |     Var('chromium_git') + '/chromium/tools/depot_tools.git@' + | 
 |         Var('depot_tools_revision'), | 
 |  | 
 |   'third_party/dragonbox/src': { | 
 |     'url': Var('chromium_git') + '/external/github.com/jk-jeon/dragonbox.git@' + | 
 |         Var('dragonbox_revision'), | 
 |     'condition': 'checkout_v8', | 
 |   }, | 
 |  | 
 |   'third_party/fast_float/src': | 
 |     Var('chromium_git') + '/external/github.com/fastfloat/fast_float.git@' + | 
 |         Var('fast_float_revision'), | 
 |  | 
 |   'third_party/fp16/src': | 
 |     Var('chromium_git') + '/external/github.com/Maratyszcza/FP16.git@' + | 
 |         Var('fp16_revision'), | 
 |  | 
 |   'third_party/freetype/src': | 
 |     Var('chromium_git') + '/chromium/src/third_party/freetype2.git@' + | 
 |         Var('freetype_revision'), | 
 |  | 
 |   'third_party/googletest/src': | 
 |     Var('chromium_git') + '/external/github.com/google/googletest.git@' + | 
 |         Var('gtest_revision'), | 
 |  | 
 |   'third_party/highway/src': { | 
 |     'url': Var('chromium_git') + '/external/github.com/google/highway.git@' + | 
 |         Var('highway_revision'), | 
 |     'condition': 'checkout_v8', | 
 |   }, | 
 |  | 
 |   'third_party/icu': | 
 |     Var('chromium_git') + '/chromium/deps/icu.git@' + Var('icu_revision'), | 
 |  | 
 |   'third_party/instrumented_libs': | 
 |     Var('chromium_git') + | 
 |         '/chromium/third_party/instrumented_libraries.git@' + | 
 |         Var('instrumented_lib_revision'), | 
 |  | 
 |   'third_party/jinja2': | 
 |     Var('chromium_git') + '/chromium/src/third_party/jinja2.git@' + | 
 |         Var('jinja2_revision'), | 
 |  | 
 |   'third_party/libc++/src': | 
 |     Var('chromium_git') + | 
 |         '/external/github.com/llvm/llvm-project/libcxx.git@' + | 
 |         Var('libcxx_revision'), | 
 |  | 
 |   'third_party/libc++abi/src': | 
 |     Var('chromium_git') + | 
 |         '/external/github.com/llvm/llvm-project/libcxxabi.git@' + | 
 |         Var('libcxxabi_revision'), | 
 |  | 
 |   'third_party/libunwind/src': { | 
 |     'url': Var('chromium_git') + | 
 |         '/external/github.com/llvm/llvm-project/libunwind.git@' + | 
 |         Var('libunwind_revision'), | 
 |     'condition': 'checkout_android', | 
 |   }, | 
 |  | 
 |   'third_party/libjpeg_turbo': | 
 |     Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git@' + | 
 |         Var('jpeg_turbo_revision'), | 
 |  | 
 |   'third_party/libpng': | 
 |     Var('chromium_git') + '/chromium/src/third_party/libpng.git@' + | 
 |         Var('libpng_revision'), | 
 |  | 
 |   'third_party/llvm-build/Release+Asserts': { | 
 |     'dep_type': 'gcs', | 
 |     'bucket': 'chromium-browser-clang', | 
 |     'objects': [ | 
 |       { | 
 |         'object_name': 'Linux_x64/clang-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': 'b448a78b42740352a37b458115a9482f213097bbf28f1f839e72cab829bdfa6d', | 
 |         'size_bytes': 55133120, | 
 |         'generation': 1753983011666559, | 
 |         'condition': '(host_os == "linux" or checkout_android) and non_git_source', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Linux_x64/llvmobjdump-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': '1e4be8737102bff65c33e37867d28960b297bdd718fb43d544e5a977aa73e58e', | 
 |         'size_bytes': 5675780, | 
 |         'generation': 1753983011751371, | 
 |         'condition': '(host_os == "linux" or checkout_android) and non_git_source', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Mac/clang-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': '0cfd4ac1d5c922f3868b7d0f59731596c9f7651541a4e2cd32fcae91cb707389', | 
 |         'size_bytes': 52423592, | 
 |         'generation': 1753983013393204, | 
 |         'condition': 'host_os == "mac" and host_cpu == "x64"', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Mac/llvmobjdump-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': '3ee5d49e92ad6cd1e532118f0713532962d6ef14aa119f81a893b72c95046ac6', | 
 |         'size_bytes': 5484504, | 
 |         'generation': 1753983013468350, | 
 |         'condition': 'host_os == "mac" and host_cpu == "x64"', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Mac/clang-mac-runtime-library-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': '6267cf2fdd697c4f5ff60c1ea949dcde2c5638c86c254e410fd8093d8ba88854', | 
 |         'size_bytes': 995072, | 
 |         'generation': 1753983021140243, | 
 |         'condition': 'checkout_mac and not host_os == "mac"', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Mac_arm64/clang-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': 'afed7bb50e1e7f25472f3a43e942a774c3ef5dcc31a1a9cf817224aec411f4fb', | 
 |         'size_bytes': 44337520, | 
 |         'generation': 1753983022809149, | 
 |         'condition': 'host_os == "mac" and host_cpu == "arm64"', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Mac_arm64/llvmobjdump-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': '76f2d491e7535e6051f3a6bc4a6948602a8e4a231882305e13c9adb9ce6af125', | 
 |         'size_bytes': 5313688, | 
 |         'generation': 1753983022869504, | 
 |         'condition': 'host_os == "mac" and host_cpu == "arm64"', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Win/clang-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': '418c186740c926b9ba85c173540ffa3ed459e3fab06ee45fe524f9b480c2a7a6', | 
 |         'size_bytes': 47378940, | 
 |         'generation': 1753983032535097, | 
 |         'condition': 'host_os == "win"', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Win/clang-win-runtime-library-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': '2a7678deda052620fa8aff586922d1607d1e39e51726dee9e9325a668c495df4', | 
 |         'size_bytes': 2506544, | 
 |         'generation': 1753983040294404, | 
 |         'condition': 'checkout_win and not host_os == "win"', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Win/clangd-llvmorg-21-init-16348-gbd809ffb-15.tar.xz', | 
 |         'sha256sum': '79a70ce9405ed33f4dfddb4d3be82d827964fb79b898b82f892d9855d5dd3195', | 
 |         'size_bytes': 13904768, | 
 |         'generation': 1753983032665184, | 
 |         'condition': 'host_os == "win"', | 
 |       }, | 
 |     ] | 
 |   }, | 
 |  | 
 |   'third_party/llvm-libc/src': | 
 |     Var('chromium_git') + '/external/github.com/llvm/llvm-project/libc.git@' + | 
 |         Var('llvm_libc_revision'), | 
 |  | 
 |   'third_party/markupsafe': | 
 |     Var('chromium_git') + '/chromium/src/third_party/markupsafe.git@' + | 
 |         Var('markupsafe_revision'), | 
 |  | 
 |   'third_party/nasm': | 
 |     Var('chromium_git') + '/chromium/deps/nasm.git@' + | 
 |         Var('nasm_source_revision'), | 
 |  | 
 |   'third_party/ninja': { | 
 |     'packages': [ | 
 |       { | 
 |         # https://chrome-infra-packages.appspot.com/p/infra/3pp/tools/ninja | 
 |         'package': 'infra/3pp/tools/ninja/${{platform}}', | 
 |         'version': Var('ninja_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |   }, | 
 |  | 
 |   'third_party/rust': { | 
 |     'url': Var('chromium_git') + '/chromium/src/third_party/rust@' + | 
 |         Var('rust_revision'), | 
 |     'condition': 'checkout_rust', | 
 |   }, | 
 |  | 
 |   'third_party/rust-toolchain': { | 
 |     'dep_type': 'gcs', | 
 |     'bucket': 'chromium-browser-clang', | 
 |     'objects': [ | 
 |       { | 
 |         'object_name': 'Linux_x64/rust-toolchain-22be76b7e259f27bf3e55eb931f354cd8b69d55f-3-llvmorg-21-init-16348-gbd809ffb.tar.xz', | 
 |         'sha256sum': '5f8e9ad847e5bf586e0de1bb563c9a49e05ad36edfad5037900d7510004fc577', | 
 |         'size_bytes': 138573136, | 
 |         'generation': 1750840933611077, | 
 |         'condition': 'host_os == "linux" and non_git_source', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Mac/rust-toolchain-22be76b7e259f27bf3e55eb931f354cd8b69d55f-3-llvmorg-21-init-16348-gbd809ffb.tar.xz', | 
 |         'sha256sum': '357db812ca0a518ef0fc4394ddc859d68f23384931294412b7424bb3aabb3c09', | 
 |         'size_bytes': 132392604, | 
 |         'generation': 1750840935469331, | 
 |         'condition': 'host_os == "mac" and host_cpu == "x64"', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Mac_arm64/rust-toolchain-22be76b7e259f27bf3e55eb931f354cd8b69d55f-3-llvmorg-21-init-16348-gbd809ffb.tar.xz', | 
 |         'sha256sum': 'd3cb60c6388e86d3d1a0c46c539f1ea0ed1ff48cf907dc21b2cb5ff441b23c03', | 
 |         'size_bytes': 120354192, | 
 |         'generation': 1750840937280735, | 
 |         'condition': 'host_os == "mac" and host_cpu == "arm64"', | 
 |       }, | 
 |       { | 
 |         'object_name': 'Win/rust-toolchain-22be76b7e259f27bf3e55eb931f354cd8b69d55f-3-llvmorg-21-init-16348-gbd809ffb.tar.xz', | 
 |         'sha256sum': '7e804f3a8bef4c8ca32d3368ca7564e5c12b684899453d9a522bdd05b1f1df7b', | 
 |         'size_bytes': 195000356, | 
 |         'generation': 1750840939064273, | 
 |         'condition': 'host_os == "win"', | 
 |       }, | 
 |     ], | 
 |   }, | 
 |  | 
 |   'third_party/simdutf': { | 
 |     'url': Var('chromium_git') + '/chromium/src/third_party/simdutf@' + | 
 |         Var('simdutf_revision'), | 
 |     'condition': 'checkout_v8', | 
 |   }, | 
 |  | 
 |   'third_party/siso/cipd': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'infra/build/siso/${{platform}}', | 
 |         'version': Var('siso_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |   }, | 
 |  | 
 |   'third_party/skia': { | 
 |     'url': Var('skia_git') + '/skia.git@' + Var('skia_revision'), | 
 |     'condition': 'checkout_skia', | 
 |   }, | 
 |  | 
 |   'third_party/test_fonts': | 
 |     Var('chromium_git') + '/chromium/src/third_party/test_fonts.git@' + | 
 |         Var('test_fonts_revision'), | 
 |  | 
 |   'third_party/zlib': | 
 |     Var('chromium_git') + '/chromium/src/third_party/zlib.git@' + | 
 |         Var('zlib_revision'), | 
 |  | 
 |   'tools/clang': | 
 |     Var('chromium_git') + '/chromium/src/tools/clang@' + Var('clang_revision'), | 
 |  | 
 |   'tools/code_coverage': | 
 |     Var('chromium_git') + '/chromium/src/tools/code_coverage.git@' + | 
 |         Var('code_coverage_revision'), | 
 |  | 
 |   'tools/memory': | 
 |     Var('chromium_git') + '/chromium/src/tools/memory@' + | 
 |         Var('tools_memory_revision'), | 
 |  | 
 |   'tools/resultdb': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'infra/tools/result_adapter/${{platform}}', | 
 |         'version': Var('result_adapter_revision'), | 
 |       }, | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |   }, | 
 |  | 
 |   'tools/rust': { | 
 |     'url': Var('chromium_git') + '/chromium/src/tools/rust@' + | 
 |         Var('tools_rust_revision'), | 
 |     'condition': 'checkout_rust', | 
 |   }, | 
 |  | 
 |   'tools/skia_goldctl/linux': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'skia/tools/goldctl/linux-amd64', | 
 |         'version': Var('goldctl_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |     'condition': 'checkout_linux', | 
 |   }, | 
 |  | 
 |   'tools/skia_goldctl/mac_amd64': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'skia/tools/goldctl/mac-amd64', | 
 |         'version': Var('goldctl_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |     'condition': 'checkout_mac', | 
 |   }, | 
 |  | 
 |   'tools/skia_goldctl/mac_arm64': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'skia/tools/goldctl/mac-arm64', | 
 |         'version': Var('goldctl_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |     'condition': 'checkout_mac', | 
 |   }, | 
 |  | 
 |   'tools/skia_goldctl/win': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'skia/tools/goldctl/windows-amd64', | 
 |         'version': Var('goldctl_version'), | 
 |       } | 
 |     ], | 
 |     'dep_type': 'cipd', | 
 |     'condition': 'checkout_win', | 
 |   }, | 
 |  | 
 |   'v8': { | 
 |     'url': Var('chromium_git') + '/v8/v8.git@' + Var('v8_revision'), | 
 |     'condition': 'checkout_v8', | 
 |   }, | 
 |  | 
 | } | 
 |  | 
 | recursedeps = [ | 
 |   'build', | 
 |   'buildtools', | 
 |   'third_party/instrumented_libs', | 
 | ] | 
 |  | 
 | include_rules = [ | 
 |   # Basic stuff that everyone can use. | 
 |   # Note: public is not here because core cannot depend on public. | 
 |   '+build/build_config.h', | 
 |   '+constants', | 
 |   '+testing', | 
 |  | 
 |   # Abseil is allowed by default, but some features are banned. See Chromium's | 
 |   # //styleguide/c++/c++-features.md. | 
 |   '+third_party/abseil-cpp', | 
 |   '-third_party/abseil-cpp/absl/algorithm/container.h', | 
 |   '-third_party/abseil-cpp/absl/base/attributes.h', | 
 |   '-third_party/abseil-cpp/absl/base/no_destructor.h', | 
 |   '-third_party/abseil-cpp/absl/base/nullability.h', | 
 |   '-third_party/abseil-cpp/absl/container/btree_map.h', | 
 |   '-third_party/abseil-cpp/absl/container/btree_set.h', | 
 |   '-third_party/abseil-cpp/absl/flags', | 
 |   '-third_party/abseil-cpp/absl/functional/any_invocable.h', | 
 |   '-third_party/abseil-cpp/absl/functional/bind_front.h', | 
 |   '-third_party/abseil-cpp/absl/functional/function_ref.h', | 
 |   '-third_party/abseil-cpp/absl/hash', | 
 |   '-third_party/abseil-cpp/absl/log', | 
 |   '-third_party/abseil-cpp/absl/random', | 
 |   '-third_party/abseil-cpp/absl/status/statusor.h', | 
 |   '-third_party/abseil-cpp/absl/strings', | 
 |   '+third_party/abseil-cpp/absl/strings/ascii.h', | 
 |   '+third_party/abseil-cpp/absl/strings/cord.h', | 
 |   '+third_party/abseil-cpp/absl/strings/str_format.h', | 
 |   '-third_party/abseil-cpp/absl/synchronization', | 
 |   '-third_party/abseil-cpp/absl/time', | 
 |   '-third_party/abseil-cpp/absl/types/any.h', | 
 |   '-third_party/abseil-cpp/absl/types/optional.h', | 
 |   '-third_party/abseil-cpp/absl/types/span.h', | 
 |   '-third_party/abseil-cpp/absl/types/variant.h', | 
 |   '-third_party/abseil-cpp/absl/utility/utility.h', | 
 | ] | 
 |  | 
 | specific_include_rules = { | 
 |   # Allow embedder tests to use public APIs. | 
 |   '(.*embeddertest\.cpp)': [ | 
 |     '+public', | 
 |   ] | 
 | } | 
 |  | 
 | 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', | 
 |     ], | 
 |   }, | 
 |   { | 
 |     # 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.  Must run before 'clang' below. | 
 |     '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'], | 
 |   }, | 
 |   # 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': 'test_fonts', | 
 |     'pattern': '.', | 
 |     'action': [ 'python3', | 
 |                 'third_party/depot_tools/download_from_google_storage.py', | 
 |                 '--no_resume', | 
 |                 '--extract', | 
 |                 '--bucket', 'chromium-fonts', | 
 |                 '-s', 'third_party/test_fonts/test_fonts.tar.gz.sha1', | 
 |     ], | 
 |   }, | 
 |   { | 
 |     # Update LASTCHANGE. | 
 |     'name': 'lastchange', | 
 |     'pattern': '.', | 
 |     'action': ['python3', 'build/util/lastchange.py', | 
 |                '-o', 'build/util/LASTCHANGE'], | 
 |   }, | 
 |   # Configure remote exec cfg files | 
 |   { | 
 |     # Use luci_auth if on windows and using chrome-untrusted project | 
 |     'name': 'download_and_configure_reclient_cfgs', | 
 |     'pattern': '.', | 
 |     'condition': 'download_remoteexec_cfg and host_os == "win"', | 
 |     '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'), | 
 |                '--use_luci_auth_credshelper', | 
 |                '--quiet', | 
 |                ], | 
 |   },  { | 
 |     'name': 'download_and_configure_reclient_cfgs', | 
 |     'pattern': '.', | 
 |     'condition': 'download_remoteexec_cfg and not host_os == "win"', | 
 |     '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', | 
 |     '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', | 
 |                '--quiet', | 
 |                ], | 
 |   }, | 
 |   # Configure Siso for developer builds. | 
 |   { | 
 |     'name': 'configure_siso', | 
 |     'pattern': '.', | 
 |     'action': ['python3', | 
 |                'build/config/siso/configure_siso.py', | 
 |                '--rbe_instance', | 
 |                Var('rbe_instance'), | 
 |                ], | 
 |   }, | 
 | ] |