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 | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 5 | vars = { |
| 6 | 'chromium_git': 'https://chromium.googlesource.com', |
Corentin Wallez | 4c35101 | 2018-08-27 10:10:28 +0200 | [diff] [blame] | 7 | 'dawn_git': 'https://dawn.googlesource.com', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 8 | 'github_git': 'https://github.com', |
Corentin Wallez | 74cebd6 | 2019-11-26 18:21:51 +0000 | [diff] [blame] | 9 | 'swiftshader_git': 'https://swiftshader.googlesource.com', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 10 | |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 11 | 'dawn_standalone': True, |
| 12 | } |
| 13 | |
| 14 | deps = { |
| 15 | # Dependencies required to use GN/Clang in standalone |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 16 | 'build': { |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 17 | 'url': '{chromium_git}/chromium/src/build@ea192b29d26f84e94910791c1eeb89d24c063dd0', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 18 | 'condition': 'dawn_standalone', |
| 19 | }, |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 20 | 'buildtools': { |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 21 | 'url': '{chromium_git}/chromium/src/buildtools@69cc9b8a3ae010e0721c4bea12de7a352d9a93f9', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 22 | 'condition': 'dawn_standalone', |
| 23 | }, |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 24 | 'buildtools/clang_format/script': { |
| 25 | 'url': '{chromium_git}/external/github.com/llvm/llvm-project/clang/tools/clang-format.git@99803d74e35962f63a775f29477882afd4d57d94', |
| 26 | 'condition': 'dawn_standalone', |
| 27 | }, |
| 28 | |
| 29 | 'buildtools/linux64': { |
| 30 | 'packages': [{ |
| 31 | 'package': 'gn/gn/linux-amd64', |
| 32 | 'version': 'git_revision:dfcbc6fed0a8352696f92d67ccad54048ad182b3', |
| 33 | }], |
| 34 | 'dep_type': 'cipd', |
| 35 | 'condition': 'dawn_standalone and host_os == "linux"', |
| 36 | }, |
| 37 | 'buildtools/mac': { |
| 38 | 'packages': [{ |
| 39 | 'package': 'gn/gn/mac-${{arch}}', |
| 40 | 'version': 'git_revision:dfcbc6fed0a8352696f92d67ccad54048ad182b3', |
| 41 | }], |
| 42 | 'dep_type': 'cipd', |
| 43 | 'condition': 'dawn_standalone and host_os == "mac"', |
| 44 | }, |
| 45 | 'buildtools/win': { |
| 46 | 'packages': [{ |
| 47 | 'package': 'gn/gn/windows-amd64', |
| 48 | 'version': 'git_revision:dfcbc6fed0a8352696f92d67ccad54048ad182b3', |
| 49 | }], |
| 50 | 'dep_type': 'cipd', |
| 51 | 'condition': 'dawn_standalone and host_os == "win"', |
| 52 | }, |
| 53 | |
| 54 | 'buildtools/third_party/libc++/trunk': { |
| 55 | 'url': '{chromium_git}/external/github.com/llvm/llvm-project/libcxx.git@8fa87946779682841e21e2da977eccfb6cb3bded', |
| 56 | 'condition': 'dawn_standalone', |
| 57 | }, |
| 58 | |
| 59 | 'buildtools/third_party/libc++abi/trunk': { |
| 60 | 'url': '{chromium_git}/external/github.com/llvm/llvm-project/libcxxabi.git@6918862bfc2bff22b45058fac22b1596c49982fb', |
| 61 | 'condition': 'dawn_standalone', |
| 62 | }, |
| 63 | |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 64 | 'tools/clang': { |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 65 | 'url': '{chromium_git}/chromium/src/tools/clang@24cecabb89512de31a1083308b237420651a835c', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 66 | 'condition': 'dawn_standalone', |
| 67 | }, |
Kai Ninomiya | f526d77 | 2020-04-06 22:27:02 +0000 | [diff] [blame] | 68 | 'tools/clang/dsymutil': { |
Corentin Wallez | 60ca94b | 2021-03-24 16:22:32 +0000 | [diff] [blame] | 69 | 'packages': [{ |
| 70 | 'package': 'chromium/llvm-build-tools/dsymutil', |
| 71 | 'version': 'M56jPzDv1620Rnm__jTMYS62Zi8rxHVq7yw0qeBFEgkC', |
| 72 | }], |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 73 | 'condition': 'dawn_standalone and (checkout_mac or checkout_ios)', |
Kai Ninomiya | f526d77 | 2020-04-06 22:27:02 +0000 | [diff] [blame] | 74 | 'dep_type': 'cipd', |
| 75 | }, |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 76 | |
Corentin Wallez | 649e2fe | 2018-08-03 15:57:43 +0200 | [diff] [blame] | 77 | # Testing, GTest and GMock |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 78 | 'testing': { |
Corentin Wallez | bf1e953 | 2020-11-04 09:44:47 +0000 | [diff] [blame] | 79 | 'url': '{chromium_git}/chromium/src/testing@3e2640a325dc34ec3d9cb2802b8da874aecaf52d', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 80 | 'condition': 'dawn_standalone', |
| 81 | }, |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 82 | 'third_party/googletest': { |
Corentin Wallez | bf1e953 | 2020-11-04 09:44:47 +0000 | [diff] [blame] | 83 | 'url': '{chromium_git}/external/github.com/google/googletest@2828773179fa425ee406df61890a150577178ea2', |
Corentin Wallez | 649e2fe | 2018-08-03 15:57:43 +0200 | [diff] [blame] | 84 | 'condition': 'dawn_standalone', |
| 85 | }, |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 86 | |
Corentin Wallez | 3bb0bb9 | 2018-08-13 17:47:44 +0200 | [diff] [blame] | 87 | # Jinja2 and MarkupSafe for the code generator |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 88 | 'third_party/jinja2': { |
Corentin Wallez | bf1e953 | 2020-11-04 09:44:47 +0000 | [diff] [blame] | 89 | 'url': '{chromium_git}/chromium/src/third_party/jinja2@a82a4944a7f2496639f34a89c9923be5908b80aa', |
Corentin Wallez | 3bb0bb9 | 2018-08-13 17:47:44 +0200 | [diff] [blame] | 90 | 'condition': 'dawn_standalone', |
| 91 | }, |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 92 | 'third_party/markupsafe': { |
Corentin Wallez | bf1e953 | 2020-11-04 09:44:47 +0000 | [diff] [blame] | 93 | 'url': '{chromium_git}/chromium/src/third_party/markupsafe@0944e71f4b2cb9a871bcbe353f95e889b64a611a', |
Corentin Wallez | 3bb0bb9 | 2018-08-13 17:47:44 +0200 | [diff] [blame] | 94 | 'condition': 'dawn_standalone', |
| 95 | }, |
| 96 | |
Ryan Harrison | 991b947 | 2020-05-06 23:15:54 +0000 | [diff] [blame] | 97 | # WGSL support |
| 98 | 'third_party/tint': { |
Dawn Autoroller | 7f7f813 | 2021-05-27 15:13:43 +0000 | [diff] [blame] | 99 | 'url': '{dawn_git}/tint@5102f87e38e0092828664b0208e5398781e8686e', |
Ryan Harrison | 991b947 | 2020-05-06 23:15:54 +0000 | [diff] [blame] | 100 | }, |
| 101 | |
Corentin Wallez | 4d7d169 | 2018-08-13 08:23:27 +0200 | [diff] [blame] | 102 | # GLFW for tests and samples |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 103 | 'third_party/glfw': { |
Stephen White | 3aa929b | 2021-02-03 19:22:47 +0000 | [diff] [blame] | 104 | 'url': '{chromium_git}/external/github.com/glfw/glfw@94773111300fee0453844a4c9407af7e880b4df8', |
Corentin Wallez | 4d7d169 | 2018-08-13 08:23:27 +0200 | [diff] [blame] | 105 | 'condition': 'dawn_standalone', |
| 106 | }, |
| 107 | |
Austin Eng | f3f5bf4 | 2019-05-18 03:14:46 +0000 | [diff] [blame] | 108 | # Dependencies for samples: GLM |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 109 | 'third_party/glm': { |
Zhenyao Mo | 37193aa | 2020-04-14 16:20:14 +0000 | [diff] [blame] | 110 | 'url': '{github_git}/g-truc/glm.git@bf71a834948186f4097caa076cd2663c69a10e1e', |
Corentin Wallez | 4d7d169 | 2018-08-13 08:23:27 +0200 | [diff] [blame] | 111 | 'condition': 'dawn_standalone', |
| 112 | }, |
Corentin Wallez | 4c35101 | 2018-08-27 10:10:28 +0200 | [diff] [blame] | 113 | |
Stephen White | 77fcdf7 | 2021-01-11 15:52:12 +0000 | [diff] [blame] | 114 | 'third_party/vulkan_memory_allocator': { |
Corentin Wallez | c6a3876 | 2021-04-06 16:10:49 +0000 | [diff] [blame] | 115 | 'url': '{chromium_git}/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator@1ecb35c39875c77219c75ecb5c5b3316020f66b8', |
Stephen White | 77fcdf7 | 2021-01-11 15:52:12 +0000 | [diff] [blame] | 116 | 'condition': 'dawn_standalone', |
| 117 | }, |
| 118 | |
| 119 | 'third_party/angle': { |
Corentin Wallez | 8507f7e | 2021-05-18 16:01:03 +0000 | [diff] [blame] | 120 | 'url': '{chromium_git}/angle/angle@835bcb1e27f12cd55bbbdfb0cca2479f7f4b51de', |
Stephen White | 77fcdf7 | 2021-01-11 15:52:12 +0000 | [diff] [blame] | 121 | 'condition': 'dawn_standalone', |
| 122 | }, |
| 123 | |
Corentin Wallez | 74cebd6 | 2019-11-26 18:21:51 +0000 | [diff] [blame] | 124 | 'third_party/swiftshader': { |
Corentin Wallez | 6298b63 | 2020-10-19 18:35:39 +0000 | [diff] [blame] | 125 | 'url': '{swiftshader_git}/SwiftShader@df17a76102dfabb3f1bd6e51449cece9f77b45e3', |
Corentin Wallez | 74cebd6 | 2019-11-26 18:21:51 +0000 | [diff] [blame] | 126 | 'condition': 'dawn_standalone', |
| 127 | }, |
| 128 | |
Stephen White | f1fa60b | 2021-01-06 17:41:50 +0000 | [diff] [blame] | 129 | 'third_party/vulkan-deps': { |
Corentin Wallez | 8507f7e | 2021-05-18 16:01:03 +0000 | [diff] [blame] | 130 | 'url': '{chromium_git}/vulkan-deps@3d799e0e9b08dc14a3efa2e130d288f6ca33d3d0', |
Corentin Wallez | 1fdd059 | 2021-04-02 18:04:27 +0000 | [diff] [blame] | 131 | 'condition': 'dawn_standalone', |
Stephen White | 77fcdf7 | 2021-01-11 15:52:12 +0000 | [diff] [blame] | 132 | }, |
| 133 | |
| 134 | 'third_party/zlib': { |
| 135 | 'url': '{chromium_git}/chromium/src/third_party/zlib@c29ee8c9c3824ca013479bf8115035527967fe02', |
Stephen White | f1fa60b | 2021-01-06 17:41:50 +0000 | [diff] [blame] | 136 | 'condition': 'dawn_standalone', |
| 137 | }, |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 138 | } |
| 139 | |
| 140 | hooks = [ |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 141 | # Pull the compilers and system libraries for hermetic builds |
| 142 | { |
| 143 | 'name': 'sysroot_x86', |
| 144 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 145 | 'condition': 'dawn_standalone and checkout_linux and (checkout_x86 or checkout_x64)', |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 146 | 'action': ['python', 'build/linux/sysroot_scripts/install-sysroot.py', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 147 | '--arch=x86'], |
| 148 | }, |
| 149 | { |
| 150 | 'name': 'sysroot_x64', |
| 151 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 152 | 'condition': 'dawn_standalone and checkout_linux and checkout_x64', |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 153 | 'action': ['python', 'build/linux/sysroot_scripts/install-sysroot.py', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 154 | '--arch=x64'], |
| 155 | }, |
| 156 | { |
Corentin Wallez | d4e7f08 | 2020-11-17 21:16:31 +0000 | [diff] [blame] | 157 | # Update the Mac toolchain if possible, this makes builders use "hermetic XCode" which is |
| 158 | # is more consistent (only changes when rolling build/) and is cached. |
| 159 | 'name': 'mac_toolchain', |
| 160 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 161 | 'condition': 'dawn_standalone and checkout_mac', |
Corentin Wallez | d4e7f08 | 2020-11-17 21:16:31 +0000 | [diff] [blame] | 162 | 'action': ['python', 'build/mac_toolchain.py'], |
| 163 | }, |
| 164 | { |
Corentin Wallez | 682c44a | 2018-08-13 17:48:16 +0200 | [diff] [blame] | 165 | # Update the Windows toolchain if necessary. Must run before 'clang' below. |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 166 | 'name': 'win_toolchain', |
| 167 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 168 | 'condition': 'dawn_standalone and checkout_win', |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 169 | 'action': ['python', 'build/vs_toolchain.py', 'update', '--force'], |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 170 | }, |
| 171 | { |
| 172 | # Note: On Win, this should run after win_toolchain, as it may use it. |
| 173 | 'name': 'clang', |
| 174 | 'pattern': '.', |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 175 | 'action': ['python', 'tools/clang/scripts/update.py'], |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 176 | 'condition': 'dawn_standalone', |
| 177 | }, |
| 178 | { |
| 179 | # Pull rc binaries using checked-in hashes. |
| 180 | 'name': 'rc_win', |
| 181 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 182 | 'condition': 'dawn_standalone and checkout_win and host_os == "win"', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 183 | 'action': [ 'download_from_google_storage', |
| 184 | '--no_resume', |
| 185 | '--no_auth', |
| 186 | '--bucket', 'chromium-browser-clang/rc', |
Corentin Wallez | 1a0596d | 2018-09-10 15:16:10 +0200 | [diff] [blame] | 187 | '-s', 'build/toolchain/win/rc/win/rc.exe.sha1', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 188 | ], |
| 189 | }, |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 190 | # Pull clang-format binaries using checked-in hashes. |
| 191 | { |
| 192 | 'name': 'clang_format_win', |
| 193 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 194 | 'condition': 'dawn_standalone and host_os == "win"', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 195 | 'action': [ 'download_from_google_storage', |
| 196 | '--no_resume', |
| 197 | '--no_auth', |
| 198 | '--bucket', 'chromium-clang-format', |
| 199 | '-s', 'buildtools/win/clang-format.exe.sha1', |
| 200 | ], |
| 201 | }, |
| 202 | { |
| 203 | 'name': 'clang_format_mac', |
| 204 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 205 | 'condition': 'dawn_standalone and host_os == "mac"', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 206 | 'action': [ 'download_from_google_storage', |
| 207 | '--no_resume', |
| 208 | '--no_auth', |
| 209 | '--bucket', 'chromium-clang-format', |
| 210 | '-s', 'buildtools/mac/clang-format.sha1', |
| 211 | ], |
| 212 | }, |
| 213 | { |
| 214 | 'name': 'clang_format_linux', |
| 215 | 'pattern': '.', |
Corentin Wallez | 2015b2f | 2021-03-04 17:37:55 +0000 | [diff] [blame] | 216 | 'condition': 'dawn_standalone and host_os == "linux"', |
Corentin Wallez | 131e619 | 2020-11-03 18:18:06 +0000 | [diff] [blame] | 217 | 'action': [ 'download_from_google_storage', |
| 218 | '--no_resume', |
| 219 | '--no_auth', |
| 220 | '--bucket', 'chromium-clang-format', |
| 221 | '-s', 'buildtools/linux64/clang-format.sha1', |
| 222 | ], |
| 223 | }, |
Corentin Wallez | 15d8cb7 | 2018-11-19 10:13:31 +0000 | [diff] [blame] | 224 | # Update build/util/LASTCHANGE. |
| 225 | { |
| 226 | 'name': 'lastchange', |
| 227 | 'pattern': '.', |
Jiajie Hu | 2ffc55a | 2020-07-01 05:08:36 +0000 | [diff] [blame] | 228 | 'condition': 'dawn_standalone', |
Corentin Wallez | 15d8cb7 | 2018-11-19 10:13:31 +0000 | [diff] [blame] | 229 | 'action': ['python', 'build/util/lastchange.py', |
| 230 | '-o', 'build/util/LASTCHANGE'], |
| 231 | }, |
Corentin Wallez | ca81bd3 | 2018-09-03 11:55:58 +0200 | [diff] [blame] | 232 | ] |
| 233 | |
| 234 | recursedeps = [ |
Stephen White | f1fa60b | 2021-01-06 17:41:50 +0000 | [diff] [blame] | 235 | 'third_party/vulkan-deps', |
Corentin Wallez | 21a2385 | 2018-07-31 18:50:03 +0200 | [diff] [blame] | 236 | ] |