Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 1 | use_relative_paths = True |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 2 | |
Corentin Wallez | 4e2d7cf | 2020-07-14 15:53:34 +0000 | [diff] [blame] | 3 | gclient_gn_args_file = 'build/config/gclient_args.gni' |
Corentin Wallez | 4e2d7cf | 2020-07-14 15:53:34 +0000 | [diff] [blame] | 4 | |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 5 | gclient_gn_args = [ |
| 6 | 'generate_location_tags', |
| 7 | ] |
| 8 | |
Joanna Wang | 77ce559 | 2023-08-04 22:26:55 +0000 | [diff] [blame] | 9 | git_dependencies = 'SYNC' |
| 10 | |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 11 | vars = { |
| 12 | 'chromium_git': 'https://chromium.googlesource.com', |
Corentin Wallez | 4c35101 | 2018-08-27 10:10:28 +0200 | [diff] [blame] | 13 | 'dawn_git': 'https://dawn.googlesource.com', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 14 | 'github_git': 'https://github.com', |
Corentin Wallez | 74cebd6 | 2019-11-26 18:21:51 +0000 | [diff] [blame] | 15 | 'swiftshader_git': 'https://swiftshader.googlesource.com', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 16 | |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 17 | 'dawn_standalone': True, |
Ben Clayton | dc890d6 | 2021-09-27 22:55:39 +0000 | [diff] [blame] | 18 | 'dawn_node': False, # Also fetches dependencies required for building NodeJS bindings. |
Corentin Wallez | fa1a547 | 2022-08-02 16:07:45 +0000 | [diff] [blame] | 19 | 'dawn_cmake_version': 'version:2@3.23.3', |
Austin Eng | 4948c81 | 2021-10-15 14:28:32 +0000 | [diff] [blame] | 20 | 'dawn_cmake_win32_sha1': 'b106d66bcdc8a71ea2cdf5446091327bfdb1bcd7', |
Corentin Wallez | 49b3b11 | 2022-03-23 18:45:14 +0000 | [diff] [blame] | 21 | 'dawn_gn_version': 'git_revision:bd99dbf98cbdefe18a4128189665c5761263bcfb', |
Junji Watanabe | 4ad7f01 | 2022-10-03 02:48:52 +0000 | [diff] [blame] | 22 | # ninja CIPD package version. |
| 23 | # https://chrome-infra-packages.appspot.com/p/infra/3pp/tools/ninja |
Corentin Wallez | 89b7809 | 2023-01-27 15:36:18 +0000 | [diff] [blame] | 24 | 'dawn_ninja_version': 'version:2@1.11.1.chromium.6', |
Corentin Wallez | fa1a547 | 2022-08-02 16:07:45 +0000 | [diff] [blame] | 25 | 'dawn_go_version': 'version:2@1.18.4', |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 26 | |
Ben Clayton | 6f8ff74 | 2022-03-28 19:55:42 +0000 | [diff] [blame] | 27 | 'node_darwin_arm64_sha': '31859fc1fa0994a95f44f09c367d6ff63607cfde', |
| 28 | 'node_darwin_x64_sha': '16dfd094763b71988933a31735f9dea966f9abd6', |
| 29 | 'node_linux_x64_sha': 'ab9544e24e752d3d17f335fb7b2055062e582d11', |
| 30 | 'node_win_x64_sha': '5ef847033c517c499f56f9d136d159b663bab717', |
| 31 | |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 32 | # GN variable required by //testing that will be output in the gclient_args.gni |
| 33 | 'generate_location_tags': False, |
dan sinclair | 93cf346 | 2022-05-16 12:58:24 +0000 | [diff] [blame] | 34 | |
| 35 | # Fetch clang-tidy into the same bin/ directory as our clang binary. |
| 36 | 'checkout_clang_tidy': False, |
Ryan Harrison | 29fc5e9 | 2023-07-17 16:12:27 +0000 | [diff] [blame] | 37 | |
| 38 | # Fetch configuration files required for the 'use_remoteexec' gn arg |
| 39 | 'download_remoteexec_cfg': False, |
| 40 | # RBE instance to use for running remote builds |
Corentin Wallez | 5905d92 | 2023-07-27 21:33:21 +0000 | [diff] [blame] | 41 | 'rbe_instance': 'projects/rbe-chrome-untrusted/instances/default_instance', |
Ryan Harrison | 29fc5e9 | 2023-07-17 16:12:27 +0000 | [diff] [blame] | 42 | # RBE project to download rewrapper config files for. Only needed if |
| 43 | # different from the project used in 'rbe_instance' |
Corentin Wallez | 5905d92 | 2023-07-27 21:33:21 +0000 | [diff] [blame] | 44 | 'rewrapper_cfg_project': '', |
Ryan Harrison | 29fc5e9 | 2023-07-17 16:12:27 +0000 | [diff] [blame] | 45 | # reclient CIPD package |
| 46 | 'reclient_package': 'infra/rbe/client/', |
| 47 | # reclient CIPD package version |
| 48 | 'reclient_version': 're_client_version:0.108.0.7cdbbe9-gomaip', |
Joanna Wang | 77ce559 | 2023-08-04 22:26:55 +0000 | [diff] [blame] | 49 | |
| 50 | # 'magic' text to tell depot_tools that git submodules should be accepted |
| 51 | # but parity with DEPS file is expected. |
| 52 | 'SUBMODULE_MIGRATION': 'True' |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 53 | } |
| 54 | |
| 55 | deps = { |
| 56 | # Dependencies required to use GN/Clang in standalone |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 57 | 'build': { |
Joanna Wang | 8cc3960 | 2023-08-03 23:27:41 +0000 | [diff] [blame] | 58 | 'url': '{chromium_git}/chromium/src/build@5885d3c24833ad72845a52a1b913a2b8bc651b56', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 59 | 'condition': 'dawn_standalone', |
| 60 | }, |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 61 | 'buildtools': { |
Joanna Wang | 8cc3960 | 2023-08-03 23:27:41 +0000 | [diff] [blame] | 62 | 'url': '{chromium_git}/chromium/src/buildtools@79ab87fa54614258c4c95891e873223371194525', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 63 | 'condition': 'dawn_standalone', |
| 64 | }, |
Loko Kung | 2d988ce | 2023-05-25 23:28:34 +0000 | [diff] [blame] | 65 | 'third_party/clang-format/script': { |
Austin Eng | 99ad82a | 2022-07-27 21:57:30 +0000 | [diff] [blame] | 66 | 'url': '{chromium_git}/external/github.com/llvm/llvm-project/clang/tools/clang-format.git@8b525d2747f2584fc35d8c7e612e66f377858df7', |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 67 | 'condition': 'dawn_standalone', |
| 68 | }, |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 69 | 'buildtools/linux64': { |
| 70 | 'packages': [{ |
| 71 | 'package': 'gn/gn/linux-amd64', |
Corentin Wallez | 88d5e07 | 2021-12-13 15:24:55 +0000 | [diff] [blame] | 72 | 'version': Var('dawn_gn_version'), |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 73 | }], |
| 74 | 'dep_type': 'cipd', |
| 75 | 'condition': 'dawn_standalone and host_os == "linux"', |
| 76 | }, |
| 77 | 'buildtools/mac': { |
| 78 | 'packages': [{ |
| 79 | 'package': 'gn/gn/mac-${{arch}}', |
Corentin Wallez | 88d5e07 | 2021-12-13 15:24:55 +0000 | [diff] [blame] | 80 | 'version': Var('dawn_gn_version'), |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 81 | }], |
| 82 | 'dep_type': 'cipd', |
| 83 | 'condition': 'dawn_standalone and host_os == "mac"', |
| 84 | }, |
| 85 | 'buildtools/win': { |
| 86 | 'packages': [{ |
| 87 | 'package': 'gn/gn/windows-amd64', |
Corentin Wallez | 88d5e07 | 2021-12-13 15:24:55 +0000 | [diff] [blame] | 88 | 'version': Var('dawn_gn_version'), |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 89 | }], |
| 90 | 'dep_type': 'cipd', |
| 91 | 'condition': 'dawn_standalone and host_os == "win"', |
| 92 | }, |
| 93 | |
Joanna Wang | ff5d8b5 | 2023-08-02 16:35:08 +0000 | [diff] [blame] | 94 | 'third_party/libc++/src': { |
Joanna Wang | 8cc3960 | 2023-08-03 23:27:41 +0000 | [diff] [blame] | 95 | 'url': '{chromium_git}/external/github.com/llvm/llvm-project/libcxx.git@84fb809dd6dae36d556dc0bb702c6cc2ce9d4b80', |
Joanna Wang | e7e54c0 | 2023-07-25 17:59:41 +0000 | [diff] [blame] | 96 | 'condition': 'dawn_standalone', |
| 97 | }, |
| 98 | |
Joanna Wang | ff5d8b5 | 2023-08-02 16:35:08 +0000 | [diff] [blame] | 99 | 'third_party/libc++abi/src': { |
Joanna Wang | 8cc3960 | 2023-08-03 23:27:41 +0000 | [diff] [blame] | 100 | 'url': '{chromium_git}/external/github.com/llvm/llvm-project/libcxxabi.git@d4760c0af99ccc9bce077960d5ddde4d66146c05', |
Joanna Wang | e7e54c0 | 2023-07-25 17:59:41 +0000 | [diff] [blame] | 101 | 'condition': 'dawn_standalone', |
| 102 | }, |
| 103 | |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 104 | 'tools/clang': { |
James Price | e5603fb | 2023-08-18 20:18:33 +0000 | [diff] [blame] | 105 | 'url': '{chromium_git}/chromium/src/tools/clang@8f75392b4aa947fb55c7c206b36804229595e4da', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 106 | 'condition': 'dawn_standalone', |
| 107 | }, |
Kai Ninomiya | f526d77 | 2020-04-06 22:27:02 +0000 | [diff] [blame] | 108 | 'tools/clang/dsymutil': { |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 109 | 'packages': [{ |
| 110 | 'package': 'chromium/llvm-build-tools/dsymutil', |
| 111 | 'version': 'M56jPzDv1620Rnm__jTMYS62Zi8rxHVq7yw0qeBFEgkC', |
| 112 | }], |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 113 | 'condition': 'dawn_standalone and (checkout_mac or checkout_ios)', |
Kai Ninomiya | f526d77 | 2020-04-06 22:27:02 +0000 | [diff] [blame] | 114 | 'dep_type': 'cipd', |
| 115 | }, |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 116 | |
Corentin Wallez | 649e2fe | 2018-08-03 15:57:43 +0200 | [diff] [blame] | 117 | # Testing, GTest and GMock |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 118 | 'testing': { |
Austin Eng | a0e96b5 | 2023-02-18 00:39:01 +0000 | [diff] [blame] | 119 | 'url': '{chromium_git}/chromium/src/testing@166db27fd0d53afc0c716b1ae9c15725e380871f', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 120 | 'condition': 'dawn_standalone', |
| 121 | }, |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 122 | 'third_party/googletest': { |
Austin Eng | a0e96b5 | 2023-02-18 00:39:01 +0000 | [diff] [blame] | 123 | 'url': '{chromium_git}/external/github.com/google/googletest@7a7231c442484be389fdf01594310349ca0e42a8', |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 124 | 'condition': 'dawn_standalone', |
| 125 | }, |
| 126 | # This is a dependency of //testing |
| 127 | 'third_party/catapult': { |
Anne Redulla | 3bcc93f | 2023-08-09 15:12:58 +0000 | [diff] [blame] | 128 | 'url': '{chromium_git}/catapult.git@dd218dfd815774289f8a81015f7a3131f72afbde', |
Corentin Wallez | 649e2fe | 2018-08-03 15:57:43 +0200 | [diff] [blame] | 129 | 'condition': 'dawn_standalone', |
| 130 | }, |
Austin Eng | 6a7bba5 | 2023-04-17 18:11:51 +0000 | [diff] [blame] | 131 | 'third_party/google_benchmark/src': { |
| 132 | 'url': '{chromium_git}/external/github.com/google/benchmark.git' + '@' + 'efc89f0b524780b1994d5dddd83a92718e5be492', |
| 133 | 'condition': 'dawn_standalone', |
| 134 | }, |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 135 | |
Corentin Wallez | 3bb0bb9 | 2018-08-13 17:47:44 +0200 | [diff] [blame] | 136 | # Jinja2 and MarkupSafe for the code generator |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 137 | 'third_party/jinja2': { |
Anne Redulla | 3bcc93f | 2023-08-09 15:12:58 +0000 | [diff] [blame] | 138 | 'url': '{chromium_git}/chromium/src/third_party/jinja2@515dd10de9bf63040045902a4a310d2ba25213a0', |
Corentin Wallez | 3bb0bb9 | 2018-08-13 17:47:44 +0200 | [diff] [blame] | 139 | 'condition': 'dawn_standalone', |
| 140 | }, |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 141 | 'third_party/markupsafe': { |
Anne Redulla | 3bcc93f | 2023-08-09 15:12:58 +0000 | [diff] [blame] | 142 | 'url': '{chromium_git}/chromium/src/third_party/markupsafe@006709ba3ed87660a17bd4548c45663628f5ed85', |
Corentin Wallez | 3bb0bb9 | 2018-08-13 17:47:44 +0200 | [diff] [blame] | 143 | 'condition': 'dawn_standalone', |
| 144 | }, |
| 145 | |
Corentin Wallez | 4d7d169 | 2018-08-13 08:23:27 +0200 | [diff] [blame] | 146 | # GLFW for tests and samples |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 147 | 'third_party/glfw': { |
Corentin Wallez | 6903c46 | 2022-05-25 17:46:04 +0000 | [diff] [blame] | 148 | 'url': '{chromium_git}/external/github.com/glfw/glfw@62e175ef9fae75335575964c845a302447c012c7', |
Corentin Wallez | 4d7d169 | 2018-08-13 08:23:27 +0200 | [diff] [blame] | 149 | }, |
| 150 | |
Stephen White | 77fcdf7 | 2021-01-11 15:52:12 +0000 | [diff] [blame] | 151 | 'third_party/vulkan_memory_allocator': { |
Shahbaz Youssefi | eaa4e7e | 2023-07-14 17:17:20 +0000 | [diff] [blame] | 152 | 'url': '{chromium_git}/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator@e87036508bb156f9986ea959323de1869e328f58', |
Stephen White | 77fcdf7 | 2021-01-11 15:52:12 +0000 | [diff] [blame] | 153 | 'condition': 'dawn_standalone', |
| 154 | }, |
| 155 | |
| 156 | 'third_party/angle': { |
Dawn Autoroller | 4817c52 | 2023-08-26 05:01:41 +0000 | [diff] [blame] | 157 | 'url': '{chromium_git}/angle/angle@57388ab2e24d28c19c552574bf3f5806ef997dc6', |
Stephen White | 77fcdf7 | 2021-01-11 15:52:12 +0000 | [diff] [blame] | 158 | 'condition': 'dawn_standalone', |
| 159 | }, |
| 160 | |
Corentin Wallez | 74cebd6 | 2019-11-26 18:21:51 +0000 | [diff] [blame] | 161 | 'third_party/swiftshader': { |
Dawn Autoroller | 4ab0008 | 2023-08-25 19:27:49 +0000 | [diff] [blame] | 162 | 'url': '{swiftshader_git}/SwiftShader@32f9332d1d7aacbdba7c1aa5df894bb1890bb2cc', |
Corentin Wallez | 74cebd6 | 2019-11-26 18:21:51 +0000 | [diff] [blame] | 163 | 'condition': 'dawn_standalone', |
| 164 | }, |
| 165 | |
Stephen White | f1fa60b | 2021-01-06 17:41:50 +0000 | [diff] [blame] | 166 | 'third_party/vulkan-deps': { |
dawn-autoroll | f392317 | 2023-08-26 22:33:23 +0000 | [diff] [blame^] | 167 | 'url': '{chromium_git}/vulkan-deps@da4fc1e938a84efb4744eea8c3e09398759ad446', |
Corentin Wallez | 1fdd059 | 2021-04-02 18:04:27 +0000 | [diff] [blame] | 168 | 'condition': 'dawn_standalone', |
Stephen White | 77fcdf7 | 2021-01-11 15:52:12 +0000 | [diff] [blame] | 169 | }, |
| 170 | |
| 171 | 'third_party/zlib': { |
Anne Redulla | 3bcc93f | 2023-08-09 15:12:58 +0000 | [diff] [blame] | 172 | 'url': '{chromium_git}/chromium/src/third_party/zlib@526382e41c9c5275dc329db4328b54e4f344a204', |
Stephen White | f1fa60b | 2021-01-06 17:41:50 +0000 | [diff] [blame] | 173 | 'condition': 'dawn_standalone', |
| 174 | }, |
Brandon Jones | a04663c | 2021-09-23 20:36:03 +0000 | [diff] [blame] | 175 | |
| 176 | 'third_party/abseil-cpp': { |
James Price | 39bbc58 | 2023-08-22 17:59:02 +0000 | [diff] [blame] | 177 | 'url': '{chromium_git}/chromium/src/third_party/abseil-cpp@4ef9b33175828ea46d091e7e5ec28259d39a8ba5', |
Brandon Jones | a04663c | 2021-09-23 20:36:03 +0000 | [diff] [blame] | 178 | 'condition': 'dawn_standalone', |
| 179 | }, |
Ben Clayton | dc890d6 | 2021-09-27 22:55:39 +0000 | [diff] [blame] | 180 | |
Antonio Maiorano | ad5e108 | 2023-06-22 20:45:54 +0000 | [diff] [blame] | 181 | 'third_party/dxc': { |
Dawn Autoroller | 90a557b | 2023-08-26 06:31:45 +0000 | [diff] [blame] | 182 | 'url': '{chromium_git}/external/github.com/microsoft/DirectXShaderCompiler@a88709aa3cec39c55cf391b50c4233edfa1b9080', |
Antonio Maiorano | ad5e108 | 2023-06-22 20:45:54 +0000 | [diff] [blame] | 183 | }, |
Antonio Maiorano | 83bdc7f | 2023-08-21 15:29:35 +0000 | [diff] [blame] | 184 | |
Antonio Maiorano | ad5e108 | 2023-06-22 20:45:54 +0000 | [diff] [blame] | 185 | 'third_party/dxheaders': { |
| 186 | # The non-Windows build of DXC depends on DirectX-Headers, and at a specific commit (not ToT) |
| 187 | 'url': '{chromium_git}/external/github.com/microsoft/DirectX-Headers@980971e835876dc0cde415e8f9bc646e64667bf7', |
Austin Eng | c02f143 | 2023-07-05 22:38:39 +0000 | [diff] [blame] | 188 | 'condition': 'host_os != "win"', |
Antonio Maiorano | ad5e108 | 2023-06-22 20:45:54 +0000 | [diff] [blame] | 189 | }, |
| 190 | |
Antonio Maiorano | 83bdc7f | 2023-08-21 15:29:35 +0000 | [diff] [blame] | 191 | 'third_party/khronos/OpenGL-Registry': { |
| 192 | 'url': '{chromium_git}/external/github.com/KhronosGroup/OpenGL-Registry@5bae8738b23d06968e7c3a41308568120943ae77', |
| 193 | }, |
| 194 | |
| 195 | 'third_party/khronos/EGL-Registry': { |
| 196 | 'url': '{chromium_git}/external/github.com/KhronosGroup/EGL-Registry@7dea2ed79187cd13f76183c4b9100159b9e3e071', |
| 197 | }, |
| 198 | |
Kai Ninomiya | 5c780d7 | 2022-03-17 21:43:17 +0000 | [diff] [blame] | 199 | # WebGPU CTS - not used directly by Dawn, only transitively by Chromium. |
| 200 | 'third_party/webgpu-cts': { |
Brandon Jones | fafeb72 | 2023-08-25 00:44:47 +0000 | [diff] [blame] | 201 | 'url': '{chromium_git}/external/github.com/gpuweb/cts@5dfa3b88f0863c3949f713804e0461c9cc34a030', |
Kai Ninomiya | 5c780d7 | 2022-03-17 21:43:17 +0000 | [diff] [blame] | 202 | 'condition': 'build_with_chromium', |
| 203 | }, |
| 204 | |
Ben Clayton | 6f8ff74 | 2022-03-28 19:55:42 +0000 | [diff] [blame] | 205 | # Dependencies required to build / run Dawn NodeJS bindings |
Ben Clayton | dc890d6 | 2021-09-27 22:55:39 +0000 | [diff] [blame] | 206 | 'third_party/node-api-headers': { |
| 207 | 'url': '{github_git}/nodejs/node-api-headers.git@d68505e4055ecb630e14c26c32e5c2c65e179bba', |
| 208 | 'condition': 'dawn_node', |
| 209 | }, |
| 210 | 'third_party/node-addon-api': { |
| 211 | 'url': '{github_git}/nodejs/node-addon-api.git@4a3de56c3e4ed0031635a2f642b27efeeed00add', |
| 212 | 'condition': 'dawn_node', |
| 213 | }, |
| 214 | 'third_party/gpuweb': { |
Corentin Wallez | dbd477f | 2023-05-31 12:02:12 +0000 | [diff] [blame] | 215 | 'url': '{github_git}/gpuweb/gpuweb.git@913189072715569b8ad60e5c2e38e501273bd5b0', |
Ben Clayton | dc890d6 | 2021-09-27 22:55:39 +0000 | [diff] [blame] | 216 | 'condition': 'dawn_node', |
| 217 | }, |
Austin Eng | 4948c81 | 2021-10-15 14:28:32 +0000 | [diff] [blame] | 218 | |
| 219 | 'tools/golang': { |
Austin Eng | 4948c81 | 2021-10-15 14:28:32 +0000 | [diff] [blame] | 220 | 'packages': [{ |
| 221 | 'package': 'infra/3pp/tools/go/${{platform}}', |
| 222 | 'version': Var('dawn_go_version'), |
| 223 | }], |
| 224 | 'dep_type': 'cipd', |
| 225 | }, |
| 226 | |
| 227 | 'tools/cmake': { |
| 228 | 'condition': 'dawn_node and (host_os == "mac" or host_os == "linux")', |
| 229 | 'packages': [{ |
| 230 | 'package': 'infra/3pp/tools/cmake/${{platform}}', |
| 231 | 'version': Var('dawn_cmake_version'), |
| 232 | }], |
| 233 | 'dep_type': 'cipd', |
| 234 | }, |
Ryan Harrison | e87ac76 | 2022-04-06 15:37:27 -0400 | [diff] [blame] | 235 | |
Junji Watanabe | 4ad7f01 | 2022-10-03 02:48:52 +0000 | [diff] [blame] | 236 | 'third_party/ninja': { |
| 237 | 'packages': [ |
| 238 | { |
| 239 | 'package': 'infra/3pp/tools/ninja/${{platform}}', |
| 240 | 'version': Var('dawn_ninja_version'), |
| 241 | } |
| 242 | ], |
| 243 | 'dep_type': 'cipd', |
| 244 | }, |
| 245 | |
Ryan Harrison | 29fc5e9 | 2023-07-17 16:12:27 +0000 | [diff] [blame] | 246 | # RBE dependencies |
| 247 | 'buildtools/reclient': { |
| 248 | 'packages': [ |
| 249 | { |
| 250 | 'package': Var('reclient_package') + '${{platform}}', |
| 251 | 'version': Var('reclient_version'), |
| 252 | } |
| 253 | ], |
| 254 | 'dep_type': 'cipd', |
| 255 | 'condition': 'dawn_standalone', |
| 256 | }, |
Ryan Harrison | 29fc5e9 | 2023-07-17 16:12:27 +0000 | [diff] [blame] | 257 | |
Ryan Harrison | e87ac76 | 2022-04-06 15:37:27 -0400 | [diff] [blame] | 258 | # Misc dependencies inherited from Tint |
Ryan Harrison | 3374f43 | 2022-03-28 18:01:02 +0000 | [diff] [blame] | 259 | 'third_party/protobuf': { |
James Price | 182fb64 | 2023-08-22 18:39:48 +0000 | [diff] [blame] | 260 | 'url': '{chromium_git}/external/github.com/protocolbuffers/protobuf.git@2b673bbb57e34fe1bd4570f726fc86b769a3a3d2', |
Ryan Harrison | e87ac76 | 2022-04-06 15:37:27 -0400 | [diff] [blame] | 261 | 'condition': 'dawn_standalone', |
Ryan Harrison | 3374f43 | 2022-03-28 18:01:02 +0000 | [diff] [blame] | 262 | }, |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 263 | } |
| 264 | |
| 265 | hooks = [ |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 266 | # Pull the compilers and system libraries for hermetic builds |
| 267 | { |
| 268 | 'name': 'sysroot_x86', |
| 269 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 270 | 'condition': 'dawn_standalone and checkout_linux and (checkout_x86 or checkout_x64)', |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 271 | 'action': ['python3', 'build/linux/sysroot_scripts/install-sysroot.py', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 272 | '--arch=x86'], |
| 273 | }, |
| 274 | { |
| 275 | 'name': 'sysroot_x64', |
| 276 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 277 | 'condition': 'dawn_standalone and checkout_linux and checkout_x64', |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 278 | 'action': ['python3', 'build/linux/sysroot_scripts/install-sysroot.py', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 279 | '--arch=x64'], |
| 280 | }, |
| 281 | { |
Corentin Wallez | d4e7f08 | 2020-11-17 21:16:31 +0000 | [diff] [blame] | 282 | # Update the Mac toolchain if possible, this makes builders use "hermetic XCode" which is |
| 283 | # is more consistent (only changes when rolling build/) and is cached. |
| 284 | 'name': 'mac_toolchain', |
| 285 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 286 | 'condition': 'dawn_standalone and checkout_mac', |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 287 | 'action': ['python3', 'build/mac_toolchain.py'], |
Corentin Wallez | d4e7f08 | 2020-11-17 21:16:31 +0000 | [diff] [blame] | 288 | }, |
| 289 | { |
Peng Huang | 78583a1 | 2023-02-10 13:53:31 +0000 | [diff] [blame] | 290 | # Case-insensitivity for the Win SDK. Must run before win_toolchain below. |
| 291 | 'name': 'ciopfs_linux', |
| 292 | 'pattern': '.', |
Peng Huang | 708a077 | 2023-02-13 11:38:38 +0000 | [diff] [blame] | 293 | 'condition': 'dawn_standalone and checkout_win and host_os == "linux"', |
Peng Huang | 78583a1 | 2023-02-10 13:53:31 +0000 | [diff] [blame] | 294 | 'action': [ 'download_from_google_storage', |
| 295 | '--no_resume', |
| 296 | '--no_auth', |
| 297 | '--bucket', 'chromium-browser-clang/ciopfs', |
| 298 | '-s', 'build/ciopfs.sha1', |
| 299 | ] |
| 300 | }, |
| 301 | { |
Corentin Wallez | 682c44a | 2018-08-13 17:48:16 +0200 | [diff] [blame] | 302 | # Update the Windows toolchain if necessary. Must run before 'clang' below. |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 303 | 'name': 'win_toolchain', |
| 304 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 305 | 'condition': 'dawn_standalone and checkout_win', |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 306 | 'action': ['python3', 'build/vs_toolchain.py', 'update', '--force'], |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 307 | }, |
| 308 | { |
| 309 | # Note: On Win, this should run after win_toolchain, as it may use it. |
| 310 | 'name': 'clang', |
| 311 | 'pattern': '.', |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 312 | 'action': ['python3', 'tools/clang/scripts/update.py'], |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 313 | 'condition': 'dawn_standalone', |
| 314 | }, |
| 315 | { |
dan sinclair | 93cf346 | 2022-05-16 12:58:24 +0000 | [diff] [blame] | 316 | # This is also supposed to support the same set of platforms as 'clang' |
| 317 | # above. LLVM ToT support isn't provided at the moment. |
| 318 | 'name': 'clang_tidy', |
| 319 | 'pattern': '.', |
Corentin Wallez | c4051b1 | 2022-05-17 08:21:02 +0000 | [diff] [blame] | 320 | 'condition': 'dawn_standalone and checkout_clang_tidy', |
dan sinclair | 93cf346 | 2022-05-16 12:58:24 +0000 | [diff] [blame] | 321 | 'action': ['python3', 'tools/clang/scripts/update.py', |
| 322 | '--package=clang-tidy'], |
| 323 | }, |
| 324 | { |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 325 | # Pull rc binaries using checked-in hashes. |
| 326 | 'name': 'rc_win', |
| 327 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 328 | 'condition': 'dawn_standalone and checkout_win and host_os == "win"', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 329 | 'action': [ 'download_from_google_storage', |
| 330 | '--no_resume', |
| 331 | '--no_auth', |
| 332 | '--bucket', 'chromium-browser-clang/rc', |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 333 | '-s', 'build/toolchain/win/rc/win/rc.exe.sha1', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 334 | ], |
| 335 | }, |
Peng Huang | 78583a1 | 2023-02-10 13:53:31 +0000 | [diff] [blame] | 336 | { |
| 337 | 'name': 'rc_linux', |
| 338 | 'pattern': '.', |
Peng Huang | 708a077 | 2023-02-13 11:38:38 +0000 | [diff] [blame] | 339 | 'condition': 'dawn_standalone and checkout_win and host_os == "linux"', |
Peng Huang | 78583a1 | 2023-02-10 13:53:31 +0000 | [diff] [blame] | 340 | 'action': [ 'download_from_google_storage', |
| 341 | '--no_resume', |
| 342 | '--no_auth', |
| 343 | '--bucket', 'chromium-browser-clang/rc', |
| 344 | '-s', 'build/toolchain/win/rc/linux64/rc.sha1', |
| 345 | ] |
| 346 | }, |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 347 | # Pull clang-format binaries using checked-in hashes. |
| 348 | { |
Corentin Wallez | 51723bd | 2022-04-07 10:40:46 +0000 | [diff] [blame] | 349 | 'name': 'clang_format_win', |
| 350 | 'pattern': '.', |
| 351 | 'condition': 'dawn_standalone and host_os == "win"', |
| 352 | 'action': [ 'download_from_google_storage', |
| 353 | '--no_resume', |
| 354 | '--no_auth', |
| 355 | '--bucket', 'chromium-clang-format', |
| 356 | '-s', 'buildtools/win/clang-format.exe.sha1', |
| 357 | ], |
| 358 | }, |
| 359 | { |
Ben Clayton | 088a600 | 2022-04-06 19:57:42 +0000 | [diff] [blame] | 360 | 'name': 'clang_format_mac_x64', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 361 | 'pattern': '.', |
Ben Clayton | 088a600 | 2022-04-06 19:57:42 +0000 | [diff] [blame] | 362 | 'condition': 'dawn_standalone and host_os == "mac" and host_cpu == "x64"', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 363 | 'action': [ 'download_from_google_storage', |
| 364 | '--no_resume', |
| 365 | '--no_auth', |
| 366 | '--bucket', 'chromium-clang-format', |
Ben Clayton | 088a600 | 2022-04-06 19:57:42 +0000 | [diff] [blame] | 367 | '-s', 'buildtools/mac/clang-format.x64.sha1', |
| 368 | '-o', 'buildtools/mac/clang-format', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 369 | ], |
| 370 | }, |
| 371 | { |
Ben Clayton | 088a600 | 2022-04-06 19:57:42 +0000 | [diff] [blame] | 372 | 'name': 'clang_format_mac_arm64', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 373 | 'pattern': '.', |
Ben Clayton | 088a600 | 2022-04-06 19:57:42 +0000 | [diff] [blame] | 374 | 'condition': 'dawn_standalone and host_os == "mac" and host_cpu == "arm64"', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 375 | 'action': [ 'download_from_google_storage', |
| 376 | '--no_resume', |
| 377 | '--no_auth', |
| 378 | '--bucket', 'chromium-clang-format', |
Ben Clayton | 088a600 | 2022-04-06 19:57:42 +0000 | [diff] [blame] | 379 | '-s', 'buildtools/mac/clang-format.arm64.sha1', |
| 380 | '-o', 'buildtools/mac/clang-format', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 381 | ], |
| 382 | }, |
| 383 | { |
| 384 | 'name': 'clang_format_linux', |
| 385 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 386 | 'condition': 'dawn_standalone and host_os == "linux"', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 387 | 'action': [ 'download_from_google_storage', |
| 388 | '--no_resume', |
| 389 | '--no_auth', |
| 390 | '--bucket', 'chromium-clang-format', |
| 391 | '-s', 'buildtools/linux64/clang-format.sha1', |
| 392 | ], |
| 393 | }, |
Corentin Wallez | 15d8cb7 | 2018-11-19 10:13:31 +0000 | [diff] [blame] | 394 | # Update build/util/LASTCHANGE. |
| 395 | { |
| 396 | 'name': 'lastchange', |
| 397 | 'pattern': '.', |
Jiajie Hu | 2ffc55a | 2020-07-01 05:08:36 +0000 | [diff] [blame] | 398 | 'condition': 'dawn_standalone', |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 399 | 'action': ['python3', 'build/util/lastchange.py', |
Corentin Wallez | 15d8cb7 | 2018-11-19 10:13:31 +0000 | [diff] [blame] | 400 | '-o', 'build/util/LASTCHANGE'], |
| 401 | }, |
Austin Eng | 4948c81 | 2021-10-15 14:28:32 +0000 | [diff] [blame] | 402 | # TODO(https://crbug.com/1180257): Use CIPD for CMake on Windows. |
| 403 | { |
| 404 | 'name': 'cmake_win32', |
| 405 | 'pattern': '.', |
| 406 | 'condition': 'dawn_node and host_os == "win"', |
| 407 | 'action': [ 'download_from_google_storage', |
| 408 | '--no_resume', |
| 409 | '--platform=win32', |
| 410 | '--no_auth', |
| 411 | '--bucket', 'chromium-tools', |
| 412 | Var('dawn_cmake_win32_sha1'), |
| 413 | '-o', 'tools/cmake-win32.zip' |
| 414 | ], |
| 415 | }, |
| 416 | { |
| 417 | 'name': 'cmake_win32_extract', |
| 418 | 'pattern': '.', |
| 419 | 'condition': 'dawn_node and host_os == "win"', |
Corentin Wallez | d520366 | 2022-01-05 15:54:08 +0000 | [diff] [blame] | 420 | 'action': [ 'python3', |
Austin Eng | 4948c81 | 2021-10-15 14:28:32 +0000 | [diff] [blame] | 421 | 'scripts/extract.py', |
| 422 | 'tools/cmake-win32.zip', |
| 423 | 'tools/cmake-win32/', |
| 424 | ], |
| 425 | }, |
Ben Clayton | 6f8ff74 | 2022-03-28 19:55:42 +0000 | [diff] [blame] | 426 | |
| 427 | # Node binaries, when dawn_node is enabled |
| 428 | { |
| 429 | 'name': 'node_linux64', |
| 430 | 'pattern': '.', |
| 431 | 'condition': 'dawn_node and host_os == "linux"', |
| 432 | 'action': [ 'download_from_google_storage', |
| 433 | '--no_resume', |
| 434 | '--extract', |
| 435 | '--no_auth', |
| 436 | '--bucket', 'chromium-nodejs/16.13.0', |
| 437 | Var('node_linux_x64_sha'), |
| 438 | '-o', 'third_party/node/node-linux-x64.tar.gz', |
| 439 | ], |
| 440 | }, |
| 441 | { |
| 442 | 'name': 'node_mac', |
| 443 | 'pattern': '.', |
| 444 | 'condition': 'dawn_node and host_os == "mac"', |
| 445 | 'action': [ 'download_from_google_storage', |
| 446 | '--no_resume', |
| 447 | '--extract', |
| 448 | '--no_auth', |
| 449 | '--bucket', 'chromium-nodejs/16.13.0', |
| 450 | Var('node_darwin_x64_sha'), |
| 451 | '-o', 'third_party/node/node-darwin-x64.tar.gz', |
| 452 | ], |
| 453 | }, |
| 454 | { |
| 455 | 'name': 'node_mac_arm64', |
| 456 | 'pattern': '.', |
| 457 | 'condition': 'dawn_node and host_os == "mac"', |
| 458 | 'action': [ 'download_from_google_storage', |
| 459 | '--no_resume', |
| 460 | '--extract', |
| 461 | '--no_auth', |
| 462 | '--bucket', 'chromium-nodejs/16.13.0', |
| 463 | Var('node_darwin_arm64_sha'), |
| 464 | '-o', 'third_party/node/node-darwin-arm64.tar.gz', |
| 465 | ], |
| 466 | }, |
| 467 | { |
| 468 | 'name': 'node_win', |
| 469 | 'pattern': '.', |
| 470 | 'condition': 'dawn_node and host_os == "win"', |
| 471 | 'action': [ 'download_from_google_storage', |
| 472 | '--no_resume', |
| 473 | '--no_auth', |
| 474 | '--bucket', 'chromium-nodejs/16.13.0', |
| 475 | Var('node_win_x64_sha'), |
| 476 | '-o', 'third_party/node/node.exe', |
| 477 | ], |
| 478 | }, |
Ryan Harrison | ce158be | 2023-07-20 17:06:56 +0000 | [diff] [blame] | 479 | { |
| 480 | # Download remote exec cfg files |
| 481 | 'name': 'fetch_reclient_cfgs', |
| 482 | 'pattern': '.', |
Austin Eng | d6c4f66 | 2023-07-21 01:00:22 +0000 | [diff] [blame] | 483 | 'condition': 'download_remoteexec_cfg and dawn_standalone', |
Ryan Harrison | ce158be | 2023-07-20 17:06:56 +0000 | [diff] [blame] | 484 | 'action': ['python3', |
| 485 | 'buildtools/reclient_cfgs/fetch_reclient_cfgs.py', |
| 486 | '--rbe_instance', |
| 487 | Var('rbe_instance'), |
| 488 | '--reproxy_cfg_template', |
| 489 | 'reproxy.cfg.template', |
| 490 | '--rewrapper_cfg_project', |
| 491 | Var('rewrapper_cfg_project'), |
| 492 | '--quiet', |
Ryan Harrison | ce158be | 2023-07-20 17:06:56 +0000 | [diff] [blame] | 493 | ], |
| 494 | }, |
Corentin Wallez | ca81bd3 | 2018-09-03 11:55:58 +0200 | [diff] [blame] | 495 | ] |
| 496 | |
| 497 | recursedeps = [ |
Stephen White | f1fa60b | 2021-01-06 17:41:50 +0000 | [diff] [blame] | 498 | 'third_party/vulkan-deps', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 499 | ] |