# This file is used to manage the dependencies of the ANGLE git repo. It is # used by gclient to determine what version of each dependency to check out, and # where. # Avoids the need for a custom root variable. use_relative_paths = True gclient_gn_args_file = 'build/config/gclient_args.gni' gclient_gn_args = [ 'mac_xcode_version', ] vars = { # This can be overridden, e.g. with custom_vars, to download a nonstandard # Xcode version in build/mac_toolchain.py instead of downloading the # prebuilt pinned revision. 'mac_xcode_version': 'default', 'android_git': 'https://android.googlesource.com', 'chromium_git': 'https://chromium.googlesource.com', 'chrome_internal_git': 'https://chrome-internal.googlesource.com', 'swiftshader_git': 'https://swiftshader.googlesource.com', # This variable is overrided in Chromium's DEPS file. 'build_with_chromium': False, # Only check out public sources by default. This can be overridden with custom_vars. 'checkout_angle_internal': False, # Version of Chromium our Chromium-based DEPS are mirrored from. 'chromium_revision': 'a927c079f7db2ce20762950c78cb7540ca0d203e', # We never want to checkout chromium, # but need a dummy DEPS entry for the autoroller 'dummy_checkout_chromium': False, # Current revision of VK-GL-CTS (a.k.a dEQP). 'vk_gl_cts_revision': '9e07e4424cd4b64ec55d0050185f93e94f38ed0d', # Current revision of glslang, the Khronos SPIRV compiler. 'glslang_revision': '142cb87f803d42f5ae3dd2da8dff4f19f6f15e8c', # Current revision of googletest. # Note: this dep cannot be auto-rolled b/c of nesting. 'googletest_revision': '4fe018038f87675c083d0cfb6a6b57c274fb1753', # Current revision of Chrome's third_party googletest directory. This # repository is mirrored as a separate repository, with separate git hashes # that don't match the external googletest repository or Chrome. Mirrored # patches will have a different git hash associated with them. # To roll, first get the new hash for chromium_googletest_revision from the # mirror of third_party/googletest located here: # https://chromium.googlesource.com/chromium/src/third_party/googletest/ # Then get the new hash for googletest_revision from the root Chrome DEPS # file: https://source.chromium.org/chromium/chromium/src/+/master:DEPS 'chromium_googletest_revision': 'c20c5a3085ab4d90fdb403e3ac98e7991317dd27', # Current revision of jsoncpp. # Note: this dep cannot be auto-rolled b/c of nesting. 'jsoncpp_revision': '645250b6690785be60ab6780ce4b58698d884d11', # Current revision of Chrome's third_party jsoncpp directory. This repository # is mirrored as a separate repository, with separate git hashes that # don't match the external JsonCpp repository or Chrome. Mirrored patches # will have a different git hash associated with them. # To roll, first get the new hash for chromium_jsoncpp_revision from the # mirror of third_party/jsoncpp located here: # https://chromium.googlesource.com/chromium/src/third_party/jsoncpp/ # Then get the new hash for jsoncpp_revision from the root Chrome DEPS file: # https://source.chromium.org/chromium/chromium/src/+/master:DEPS 'chromium_jsoncpp_revision': '30a6ac108e24dabac7c2e0df4d33d55032af4ee7', # Current revision of patched-yasm. # Note: this dep cannot be auto-rolled b/c of nesting. 'patched_yasm_revision': '720b70524a4424b15fc57e82263568c8ba0496ad', # Current revision of spirv-cross, the Khronos SPIRV cross compiler. 'spirv_cross_revision': 'f38cbeb814c73510b85697adbe5e894f9eac978f', # Current revision fo the SPIRV-Headers Vulkan support library. 'spirv_headers_revision': '05836bdba63e7debce9fa9feaed42f20cd43af9d', # Current revision of SPIRV-Tools for Vulkan. 'spirv_tools_revision': '1cda495274bb3cb67b50ecd5de3ea9caf971e7c7', # Current revision of Khronos Vulkan-Headers. 'vulkan_headers_revision': '670ffea9d61b9f4b8f68c919dab7caf33dfd9718', # Current revision of Khronos Vulkan-Loader. 'vulkan_loader_revision': 'f635feea18cb409780b76db3212d885a73feb65a', # Current revision of Khronos Vulkan-Tools. 'vulkan_tools_revision': 'df1edd1738a6577b783d1fc75678ac1ee9c421f1', # Current revision of Khronos Vulkan-ValidationLayers. 'vulkan_validation_revision': '128608f6da3ae0d0a497569a42b7681704472903', # 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': 'ac95abdb4b129e77ae3a70095c68498b4ed4a375', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling luci-go # and whatever else without interference from each other. 'luci_go': 'git_revision:1a022d3a4c50be4207ee93451255d71896416596', } deps = { 'build': { 'url': '{chromium_git}/chromium/src/build.git@b666d10c4bacb47333a86e0eb9e322ccd4c1acf4', 'condition': 'not build_with_chromium', }, 'buildtools': { 'url': '{chromium_git}/chromium/src/buildtools.git@6302c1175607a436e18947a5abe9df2209e845fc', 'condition': 'not build_with_chromium', }, 'testing': { 'url': '{chromium_git}/chromium/src/testing@df939790645c899c86d29f2c52c0f20126164927', 'condition': 'not build_with_chromium', }, 'third_party/abseil-cpp': { 'url': '{chromium_git}/chromium/src/third_party/abseil-cpp@57b05d3c2e554abc8367fe6682e3ffbbf1fe3e73', 'condition': 'not build_with_chromium', }, 'third_party/android_ndk': { 'url': '{chromium_git}/android_ndk.git@27c0a8d090c666a50e40fceb4ee5b40b1a2d3f87', 'condition': 'checkout_android and not build_with_chromium', }, 'third_party/catapult': { 'url': '{chromium_git}/catapult.git@{catapult_revision}', 'condition': 'not build_with_chromium', }, # Cherry is a dEQP/VK-GL-CTS management GUI written in Go. We use it for viewing test results. 'third_party/cherry': { 'url': '{android_git}/platform/external/cherry@4f8fb08d33ca5ff05a1c638f04c85bbb8d8b52cc', 'condition': 'not build_with_chromium', }, # We never want to checkout chromium, # but need a dummy DEPS entry for the autoroller 'third_party/dummy_chromium': { 'url': '{chromium_git}/chromium/src.git@{chromium_revision}', 'condition': 'dummy_checkout_chromium', }, 'third_party/fuchsia-sdk': { 'url': '{chromium_git}/chromium/src/third_party/fuchsia-sdk.git@1785f0ac8e1fe81cb25e260acbe7de8f62fa3e44', 'condition': 'checkout_fuchsia and not build_with_chromium', }, # Closed-source OpenGL ES 1.1 Conformance tests. 'third_party/gles1_conform': { 'url': '{chrome_internal_git}/angle/es-cts.git@dc9f502f709c9cd88d7f8d3974f1c77aa246958e', 'condition': 'checkout_angle_internal', }, # glmark2 is a GPL3-licensed OpenGL ES 2.0 benchmark. We use it for testing. 'third_party/glmark2/src': { 'url': '{chromium_git}/external/github.com/glmark2/glmark2@9e01aef1a786b28aca73135a5b00f85c357e8f5e', }, 'third_party/glslang/src': { 'url': '{chromium_git}/external/github.com/KhronosGroup/glslang@{glslang_revision}', 'condition': 'not build_with_chromium', }, 'third_party/googletest': { 'url': '{chromium_git}/chromium/src/third_party/googletest@{chromium_googletest_revision}', 'condition': 'not build_with_chromium', }, # libjpeg_turbo is used by glmark2. 'third_party/libjpeg_turbo': { 'url': '{chromium_git}/chromium/deps/libjpeg_turbo.git@d5148db386ceb4a608058320071cbed890bd6ad2', 'condition': 'not build_with_chromium', }, 'third_party/libpng/src': { 'url': '{android_git}/platform/external/libpng@094e181e79a3d6c23fd005679025058b7df1ad6c', 'condition': 'not build_with_chromium', }, 'third_party/jsoncpp': { 'url': '{chromium_git}/chromium/src/third_party/jsoncpp@{chromium_jsoncpp_revision}', 'condition': 'not build_with_chromium', }, 'third_party/nasm': { 'url': '{chromium_git}/chromium/deps/nasm.git@19f3fad68da99277b2882939d3b2fa4c4b8d51d9', 'condition': 'not build_with_chromium', }, 'third_party/protobuf': { 'url': '{chromium_git}/chromium/src/third_party/protobuf@eedd6353ca8239f3bcefd1143b4a2cc4a0c3b9dd', 'condition': 'not build_with_chromium', }, 'third_party/Python-Markdown': { 'url': '{chromium_git}/chromium/src/third_party/Python-Markdown@ad4fc19d612de0a3f6ea19441af703ff5a5223f3', 'condition': 'not build_with_chromium', }, 'third_party/qemu-linux-x64': { 'packages': [ { 'package': 'fuchsia/qemu/linux-amd64', 'version': '9cc486c5b18a0be515c39a280ca9a309c54cf994' }, ], 'condition': 'not build_with_chromium and (host_os == "linux" and checkout_fuchsia)', 'dep_type': 'cipd', }, 'third_party/qemu-mac-x64': { 'packages': [ { 'package': 'fuchsia/qemu/mac-amd64', 'version': '2d3358ae9a569b2d4a474f498b32b202a152134f' }, ], 'condition': 'not build_with_chromium and (host_os == "mac" and checkout_fuchsia)', 'dep_type': 'cipd', }, 'third_party/rapidjson/src': { 'url': '{chromium_git}/external/github.com/Tencent/rapidjson@7484e06c589873e1ed80382d262087e4fa80fb63', }, 'third_party/spirv-cross/src': { 'url': '{chromium_git}/external/github.com/KhronosGroup/SPIRV-Cross@{spirv_cross_revision}', 'condition': 'not build_with_chromium', }, 'third_party/spirv-headers/src': { 'url': '{chromium_git}/external/github.com/KhronosGroup/SPIRV-Headers@{spirv_headers_revision}', 'condition': 'not build_with_chromium', }, 'third_party/spirv-tools/src': { 'url': '{chromium_git}/external/github.com/KhronosGroup/SPIRV-Tools@{spirv_tools_revision}', 'condition': 'not build_with_chromium', }, 'third_party/SwiftShader': { 'url': '{swiftshader_git}/SwiftShader@4ed9d3498dcffa987acba1a8007ff8dec336f263', 'condition': 'not build_with_chromium', }, 'third_party/VK-GL-CTS/src': { 'url': '{chromium_git}/external/github.com/KhronosGroup/VK-GL-CTS@{vk_gl_cts_revision}', }, 'third_party/vulkan-headers/src': { 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Headers@{vulkan_headers_revision}', }, 'third_party/vulkan-loader/src': { 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Loader@{vulkan_loader_revision}', }, 'third_party/vulkan_memory_allocator': { 'url': '{chromium_git}/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator@065e739079d9d58bef28ccd793cbf512261f09ed', 'condition': 'not build_with_chromium', }, 'third_party/vulkan-tools/src': { 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Tools@{vulkan_tools_revision}', }, 'third_party/vulkan-validation-layers/src': { 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-ValidationLayers@{vulkan_validation_revision}', }, 'third_party/zlib': { 'url': '{chromium_git}/chromium/src/third_party/zlib@e84c9a3fd75fdc39055b7ae27d6ec508e50bd39e', 'condition': 'not build_with_chromium', }, 'tools/clang': { 'url': '{chromium_git}/chromium/src/tools/clang.git@3aa688cdf8bd54f9e2dad5e1c65d4a385bd0b48d', 'condition': 'not build_with_chromium', }, 'tools/clang/dsymutil': { 'packages': [ { 'package': 'chromium/llvm-build-tools/dsymutil', 'version': 'M56jPzDv1620Rnm__jTMYS62Zi8rxHVq7yw0qeBFEgkC', } ], 'condition': 'checkout_mac and not build_with_chromium', 'dep_type': 'cipd', }, 'tools/luci-go': { 'packages': [ { 'package': 'infra/tools/luci/isolate/${{platform}}', 'version': Var('luci_go'), }, { 'package': 'infra/tools/luci/isolated/${{platform}}', 'version': Var('luci_go'), }, { 'package': 'infra/tools/luci/swarming/${{platform}}', 'version': Var('luci_go'), }, ], 'condition': 'not build_with_chromium', 'dep_type': 'cipd', }, 'tools/mb': { 'url': '{chromium_git}/chromium/src/tools/mb@cfce7ca8c9161c5582baf18c03a5d7ed2f0992b4', 'condition': 'not build_with_chromium', }, 'tools/md_browser': { 'url': '{chromium_git}/chromium/src/tools/md_browser@60141af3603925d99bf3fb22fdfca138416339b1', 'condition': 'not build_with_chromium', }, 'tools/memory': { 'url': '{chromium_git}/chromium/src/tools/memory@f685c086bde38d670a7a3b30ebe1a076d404c140', 'condition': 'not build_with_chromium', }, 'tools/protoc_wrapper': { 'url': '{chromium_git}/chromium/src/tools/protoc_wrapper@203790d7975787dd77c3d870dadb9e4fdc9c907b', 'condition': 'not build_with_chromium', }, 'tools/skia_goldctl/linux': { 'packages': [ { 'package': 'skia/tools/goldctl/linux-amd64', 'version': 'F1V3MxURYBy3ZkQCqWrW-_qo1aZFer1oyHdGOjT_CZoC', }, ], 'dep_type': 'cipd', 'condition': 'checkout_linux and not build_with_chromium', }, 'tools/skia_goldctl/win': { 'packages': [ { 'package': 'skia/tools/goldctl/windows-amd64', 'version': 'qZ2Cb5DPSSKjIrxhfYGgVzooq2ElNVLxNOVjsMKgfV0C', }, ], 'dep_type': 'cipd', 'condition': 'checkout_win and not build_with_chromium', }, 'tools/skia_goldctl/mac': { 'packages': [ { 'package': 'skia/tools/goldctl/mac-amd64', 'version': 'Z_FxtkL4vnfqaGkZhy2qkTcVwRXIfMzIP0gDJO5O6HkC', }, ], 'dep_type': 'cipd', 'condition': 'checkout_mac and not build_with_chromium', }, } hooks = [ # Pull clang-format binaries using checked-in hashes. { 'name': 'clang_format_win', 'pattern': '.', 'condition': 'host_os == "win" and not build_with_chromium', 'action': [ 'download_from_google_storage', '--no_resume', '--platform=win32', '--no_auth', '--bucket', 'chromium-clang-format', '-s', 'buildtools/win/clang-format.exe.sha1', ], }, { 'name': 'clang_format_mac', 'pattern': '.', 'condition': 'host_os == "mac" and not build_with_chromium', 'action': [ 'download_from_google_storage', '--no_resume', '--platform=darwin', '--no_auth', '--bucket', 'chromium-clang-format', '-s', 'buildtools/mac/clang-format.sha1', ], }, { 'name': 'clang_format_linux', 'pattern': '.', 'condition': 'host_os == "linux" and not build_with_chromium', 'action': [ 'download_from_google_storage', '--no_resume', '--platform=linux*', '--no_auth', '--bucket', 'chromium-clang-format', '-s', 'buildtools/linux64/clang-format.sha1', ], }, { 'name': 'sysroot_x86', 'pattern': '.', 'condition': 'checkout_linux and ((checkout_x86 or checkout_x64) and not build_with_chromium)', 'action': ['python', 'build/linux/sysroot_scripts/install-sysroot.py', '--arch=x86'], }, { 'name': 'sysroot_x64', 'pattern': '.', 'condition': 'checkout_linux and (checkout_x64 and not build_with_chromium)', 'action': ['python', 'build/linux/sysroot_scripts/install-sysroot.py', '--arch=x64'], }, { # Update the Windows toolchain if necessary. Must run before 'clang' below. 'name': 'win_toolchain', 'pattern': '.', 'condition': 'checkout_win and not build_with_chromium', 'action': ['python', 'build/vs_toolchain.py', 'update', '--force'], }, { # Update the Mac toolchain if necessary. 'name': 'mac_toolchain', 'pattern': '.', 'condition': 'checkout_mac and not build_with_chromium', 'action': ['python', 'build/mac_toolchain.py'], }, { # Note: On Win, this should run after win_toolchain, as it may use it. 'name': 'clang', 'pattern': '.', 'action': ['python', 'tools/clang/scripts/update.py'], 'condition': 'not build_with_chromium', }, { # Update LASTCHANGE. 'name': 'lastchange', 'pattern': '.', 'condition': 'not build_with_chromium', 'action': ['python', 'build/util/lastchange.py', '-o', 'build/util/LASTCHANGE'], }, # Pull rc binaries using checked-in hashes. { 'name': 'rc_win', 'pattern': '.', 'condition': 'checkout_win and (host_os == "win" and not build_with_chromium)', 'action': [ 'download_from_google_storage', '--no_resume', '--no_auth', '--bucket', 'chromium-browser-clang/rc', '-s', 'build/toolchain/win/rc/win/rc.exe.sha1', ], }, { 'name': 'fuchsia_sdk', 'pattern': '.', 'condition': 'checkout_fuchsia and not build_with_chromium', 'action': [ 'python', 'build/fuchsia/update_sdk.py', ], }, # Download glslang validator binary for Linux. { 'name': 'linux_glslang_validator', 'pattern': '.', 'condition': 'checkout_linux and not build_with_chromium', 'action': [ 'download_from_google_storage', '--no_resume', '--platform=linux*', '--no_auth', '--bucket', 'angle-glslang-validator', '-s', 'tools/glslang/glslang_validator.sha1', ], }, # Download glslang validator binary for Windows. { 'name': 'win_glslang_validator', 'pattern': '.', 'condition': 'checkout_win and not build_with_chromium', 'action': [ 'download_from_google_storage', '--no_resume', '--platform=win32*', '--no_auth', '--bucket', 'angle-glslang-validator', '-s', 'tools/glslang/glslang_validator.exe.sha1', ], }, # Download flex/bison binaries for Linux. { 'name': 'linux_flex_bison', 'pattern': '.', 'condition': 'checkout_linux and not build_with_chromium', 'action': [ 'download_from_google_storage', '--no_resume', '--platform=linux*', '--no_auth', '--bucket', 'angle-flex-bison', '-d', 'tools/flex-bison/linux/', ], }, # Download flex/bison binaries for Windows. { 'name': 'win_flex_bison', 'pattern': '.', 'condition': 'checkout_win and not build_with_chromium', 'action': [ 'download_from_google_storage', '--no_resume', '--platform=win32*', '--no_auth', '--bucket', 'angle-flex-bison', '-d', 'tools/flex-bison/windows/', ], }, # Download internal captures for perf tests { 'name': 'restricted_traces', 'pattern': '\\.sha1', 'condition': 'checkout_angle_internal', 'action': [ 'vpython3', 'src/tests/restricted_traces/download_restricted_traces.py', 'src/tests/restricted_traces', ] } ] recursedeps = [ # buildtools provides clang_format. 'buildtools', 'third_party/googletest', 'third_party/jsoncpp', ]