blob: 2d1d53f1a26e246163f2acb6dc50699bba0375c9 [file] [log] [blame]
Jamie Madill2fdd3da2015-07-20 10:14:54 -04001vars = {
Jamie Madill37ee8a62016-12-13 15:18:58 -05002 'android_git': 'https://android.googlesource.com',
Jamie Madill2fdd3da2015-07-20 10:14:54 -04003 'chromium_git': 'https://chromium.googlesource.com',
Jamie Madill027717f2018-04-13 15:51:24 -04004
Yuly Novikov85d8ee82018-09-12 17:36:57 +00005 # This variable is set on the Chrome infra for compatiblity with gclient.
6 'angle_root': '.',
7
Edward Lemur8ae09b02018-06-01 14:18:28 -04008 # This variable is overrided in Chromium's DEPS file.
9 'build_with_chromium': False,
10
11 # Current revision of dEQP.
Jamie Madill915d4062019-01-28 18:15:43 -050012 'deqp_revision': '66a49e0a43f7af654ee1de8a3b1bcaf6c0d14aa4',
Edward Lemur8ae09b02018-06-01 14:18:28 -040013
14 # Current revision of glslang, the Khronos SPIRV compiler.
Shahbaz Youssefi6f1a8522019-02-26 15:00:54 +000015 'glslang_revision': 'f6e7c4d2de0d59724ea07739df70c466d169a2cd',
Edward Lemur8ae09b02018-06-01 14:18:28 -040016
17 # Current revision fo the SPIRV-Headers Vulkan support library.
Shahbaz Youssefi6f1a8522019-02-26 15:00:54 +000018 'spirv_headers_revision': '8bea0a266ac9b718aa0818d9e3a47c0b77c2cb23',
Edward Lemur8ae09b02018-06-01 14:18:28 -040019
20 # Current revision of SPIRV-Tools for Vulkan.
Jamie Madillcf9b2852019-02-13 09:15:26 -050021 'spirv_tools_revision': 'fde69dcd80cc1ca548300702adf01eeb25441f3e',
Edward Lemur8ae09b02018-06-01 14:18:28 -040022
Tobin Ehlisb971f492018-05-24 10:56:17 -060023 # Current revision of Khronos Vulkan-Headers.
Shahbaz Youssefi6f1a8522019-02-26 15:00:54 +000024 'vulkan_headers_revision': 'c200cb25db0f47364d3318d92c1d8e9dfff2fef1',
Tobin Ehlisb971f492018-05-24 10:56:17 -060025
26 # Current revision of Khronos Vulkan-Loader.
Shahbaz Youssefi6f1a8522019-02-26 15:00:54 +000027 'vulkan_loader_revision': 'e1eafa18e17d00374253bcd37d015befa89fcc43',
Tobin Ehlisb971f492018-05-24 10:56:17 -060028
29 # Current revision of Khronos Vulkan-Tools.
Shahbaz Youssefi6f1a8522019-02-26 15:00:54 +000030 'vulkan_tools_revision': '91b17fd866b2e9cfb875bf516b05536d059416b1',
Tobin Ehlisb971f492018-05-24 10:56:17 -060031
32 # Current revision of Khronos Vulkan-ValidationLayers.
Shahbaz Youssefi6f1a8522019-02-26 15:00:54 +000033 'vulkan_validation_revision': '4eee269ae976567ef78db9c9feaafc3364578c87',
Jamie Madill2fdd3da2015-07-20 10:14:54 -040034}
35
alokp@chromium.org29d56fb2010-04-06 15:42:22 +000036deps = {
alokp@chromium.org416fcd32012-04-11 16:23:44 +000037
Yuly Novikov85d8ee82018-09-12 17:36:57 +000038 '{angle_root}/build': {
Michael Spang229fc832019-01-21 18:09:15 -050039 'url': '{chromium_git}/chromium/src/build.git@9a53be87ebb636c35f2ed9772e5deaeb350d790b',
Edward Lemur8ae09b02018-06-01 14:18:28 -040040 'condition': 'not build_with_chromium',
41 },
Frank Henigmand0ef13a2017-08-28 22:53:24 -040042
Yuly Novikov85d8ee82018-09-12 17:36:57 +000043 '{angle_root}/buildtools': {
Michael Spang229fc832019-01-21 18:09:15 -050044 'url': '{chromium_git}/chromium/buildtools.git@6fbda1b24c1893a893b17aa219b765b9e7c801d8',
Edward Lemur8ae09b02018-06-01 14:18:28 -040045 'condition': 'not build_with_chromium',
46 },
Frank Henigmand0ef13a2017-08-28 22:53:24 -040047
Yuly Novikov85d8ee82018-09-12 17:36:57 +000048 '{angle_root}/testing': {
Jamie Madill1c6b26a2018-11-18 17:03:19 -050049 'url': '{chromium_git}/chromium/src/testing@7bdda3c6577f21fd0ec986a0383ecfce28f5d761',
Edward Lemur8ae09b02018-06-01 14:18:28 -040050 'condition': 'not build_with_chromium',
51 },
alokp@chromium.org5cd9c602012-05-16 23:37:50 +000052
Jamie Madill9e76f562015-10-02 08:57:14 -040053 # Cherry is a dEQP management GUI written in Go. We use it for viewing test results.
Yuly Novikov85d8ee82018-09-12 17:36:57 +000054 '{angle_root}/third_party/cherry': {
Edward Lemur8ae09b02018-06-01 14:18:28 -040055 'url': '{android_git}/platform/external/cherry@4f8fb08d33ca5ff05a1c638f04c85bbb8d8b52cc',
56 'condition': 'not build_with_chromium',
57 },
Jamie Madill9e76f562015-10-02 08:57:14 -040058
Yuly Novikov85d8ee82018-09-12 17:36:57 +000059 '{angle_root}/third_party/deqp/src': {
Jamie Madill915d4062019-01-28 18:15:43 -050060 'url': '{chromium_git}/external/deqp@{deqp_revision}',
Edward Lemur8ae09b02018-06-01 14:18:28 -040061 },
Jamie Madill37ee8a62016-12-13 15:18:58 -050062
Yuly Novikov85d8ee82018-09-12 17:36:57 +000063 '{angle_root}/third_party/glslang/src': {
Tobin Ehlis317a9eb2018-11-29 12:51:46 -070064 'url': '{chromium_git}/external/github.com/KhronosGroup/glslang@{glslang_revision}',
Jamie Madill0cb3b0f2019-01-28 09:55:20 -050065 'condition': 'not build_with_chromium',
66 },
Jamie Madill37ee8a62016-12-13 15:18:58 -050067
Jamie Madillcf9b2852019-02-13 09:15:26 -050068 '{angle_root}/third_party/googletest': {
69 'url': '{chromium_git}/chromium/src/third_party/googletest@660425b1c5ca04559ab7e50c7572b5b771acca1c',
70 'condition': 'not build_with_chromium',
71 },
72
Yuly Novikov85d8ee82018-09-12 17:36:57 +000073 '{angle_root}/third_party/googletest/src': {
Jamie Madillcf9b2852019-02-13 09:15:26 -050074 'url': '{chromium_git}/external/github.com/google/googletest.git@7203f37f57e4fef0d77670098aabc186309eb874',
Edward Lemur8ae09b02018-06-01 14:18:28 -040075 'condition': 'not build_with_chromium',
76 },
Frank Henigman6b076a02017-10-11 13:28:22 -040077
Yuly Novikov85d8ee82018-09-12 17:36:57 +000078 '{angle_root}/third_party/libpng/src': {
Edward Lemur8ae09b02018-06-01 14:18:28 -040079 'url': '{android_git}/platform/external/libpng@094e181e79a3d6c23fd005679025058b7df1ad6c',
80 'condition': 'not build_with_chromium',
81 },
Jamie Madill37ee8a62016-12-13 15:18:58 -050082
Yuly Novikov85d8ee82018-09-12 17:36:57 +000083 '{angle_root}/third_party/jsoncpp': {
Jamie Madill7ada46c2018-09-06 10:58:26 -040084 'url': '{chromium_git}/chromium/src/third_party/jsoncpp@fd0ac8ce63a47e99b71a58f1489136fbb19c9137',
Jamie Madill0cb3b0f2019-01-28 09:55:20 -050085 'condition': 'not build_with_chromium',
86 },
Jamie Madill7ada46c2018-09-06 10:58:26 -040087
Yuly Novikov85d8ee82018-09-12 17:36:57 +000088 '{angle_root}/third_party/jsoncpp/source': {
Jamie Madill0cb3b0f2019-01-28 09:55:20 -050089 'url' : '{chromium_git}/external/github.com/open-source-parsers/jsoncpp@f572e8e42e22cfcf5ab0aea26574f408943edfa4',
90 'condition': 'not build_with_chromium',
91 },
Tobin Ehlis5fdc38c2018-08-28 09:20:57 -060092
Michael Spang229fc832019-01-21 18:09:15 -050093 '{angle_root}/third_party/qemu-linux-x64': {
94 'packages': [
95 {
96 'package': 'fuchsia/qemu/linux-amd64',
97 'version': '9cc486c5b18a0be515c39a280ca9a309c54cf994'
98 },
99 ],
100 'condition': 'not build_with_chromium and (host_os == "linux" and checkout_fuchsia)',
101 'dep_type': 'cipd',
102 },
103
104 '{angle_root}/third_party/qemu-mac-x64': {
105 'packages': [
106 {
107 'package': 'fuchsia/qemu/mac-amd64',
108 'version': '2d3358ae9a569b2d4a474f498b32b202a152134f'
109 },
110 ],
111 'condition': 'not build_with_chromium and (host_os == "mac" and checkout_fuchsia)',
112 'dep_type': 'cipd',
113 },
114
Jamie Madill46d32e02019-02-25 17:13:16 -0500115 '{angle_root}/third_party/rapidjson/src': {
116 'url': '{chromium_git}/external/github.com/Tencent/rapidjson@7484e06c589873e1ed80382d262087e4fa80fb63',
117 },
118
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000119 '{angle_root}/third_party/spirv-headers/src': {
Jamie Madill0cb3b0f2019-01-28 09:55:20 -0500120 'url': '{chromium_git}/external/github.com/KhronosGroup/SPIRV-Headers@{spirv_headers_revision}',
Corentin Walleza883dd02018-08-03 18:11:46 +0200121 'condition': 'not build_with_chromium',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400122 },
Jamie Madill37ee8a62016-12-13 15:18:58 -0500123
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000124 '{angle_root}/third_party/spirv-tools/src': {
Jamie Madill0cb3b0f2019-01-28 09:55:20 -0500125 'url': '{chromium_git}/external/github.com/KhronosGroup/SPIRV-Tools@{spirv_tools_revision}',
Corentin Walleza883dd02018-08-03 18:11:46 +0200126 'condition': 'not build_with_chromium',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400127 },
Jamie Madill37ee8a62016-12-13 15:18:58 -0500128
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000129 '{angle_root}/third_party/vulkan-headers/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -0600130 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Headers@{vulkan_headers_revision}',
131 },
132
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000133 '{angle_root}/third_party/vulkan-loader/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -0600134 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Loader@{vulkan_loader_revision}',
135 },
136
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000137 '{angle_root}/third_party/vulkan-tools/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -0600138 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Tools@{vulkan_tools_revision}',
139 },
140
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000141 '{angle_root}/third_party/vulkan-validation-layers/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -0600142 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-ValidationLayers@{vulkan_validation_revision}',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400143 },
Jamie Madill3cd438d2015-03-17 11:25:27 -0400144
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000145 '{angle_root}/third_party/zlib': {
Jamie Madill720ca442018-12-17 14:04:10 -0500146 'url': '{chromium_git}/chromium/src/third_party/zlib@f95aeb0fa7f136ef4a457a6d9ba6f3c2701a444b',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400147 'condition': 'not build_with_chromium',
148 },
Frank Henigmand0ef13a2017-08-28 22:53:24 -0400149
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000150 '{angle_root}/tools/clang': {
Jamie Madillc09ae152019-02-01 14:16:32 -0500151 'url': '{chromium_git}/chromium/src/tools/clang.git@3114fbc11f9644c54dd0a4cdbfa867bac50ff983',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400152 'condition': 'not build_with_chromium',
153 },
Michael Spang229fc832019-01-21 18:09:15 -0500154
155 '{angle_root}/third_party/fuchsia-sdk': {
156 'url': '{chromium_git}/chromium/src/third_party/fuchsia-sdk.git@8e8db13b538ecb251e5ce9d5c781fc142f9752fd',
157 'condition': 'checkout_fuchsia and not build_with_chromium',
158 },
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000159}
160
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000161hooks = [
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400162 # Pull clang-format binaries using checked-in hashes.
163 {
164 'name': 'clang_format_win',
165 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400166 'condition': 'host_os == "win" and not build_with_chromium',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400167 'action': [ 'download_from_google_storage',
168 '--no_resume',
169 '--platform=win32',
170 '--no_auth',
171 '--bucket', 'chromium-clang-format',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000172 '-s', '{angle_root}/buildtools/win/clang-format.exe.sha1',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400173 ],
174 },
175 {
176 'name': 'clang_format_mac',
177 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400178 'condition': 'host_os == "mac" and not build_with_chromium',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400179 'action': [ 'download_from_google_storage',
180 '--no_resume',
181 '--platform=darwin',
182 '--no_auth',
183 '--bucket', 'chromium-clang-format',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000184 '-s', '{angle_root}/buildtools/mac/clang-format.sha1',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400185 ],
186 },
187 {
188 'name': 'clang_format_linux',
189 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400190 'condition': 'host_os == "linux" and not build_with_chromium',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400191 'action': [ 'download_from_google_storage',
192 '--no_resume',
193 '--platform=linux*',
194 '--no_auth',
195 '--bucket', 'chromium-clang-format',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000196 '-s', '{angle_root}/buildtools/linux64/clang-format.sha1',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400197 ],
198 },
Corentin Wallez570f67d2016-02-05 15:28:24 -0500199 # Pull GN binaries using checked-in hashes.
200 {
201 'name': 'gn_win',
202 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400203 'condition': 'host_os == "win" and not build_with_chromium',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500204 'action': [ 'download_from_google_storage',
205 '--no_resume',
206 '--platform=win32',
207 '--no_auth',
208 '--bucket', 'chromium-gn',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000209 '-s', '{angle_root}/buildtools/win/gn.exe.sha1',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500210 ],
211 },
212 {
213 'name': 'gn_mac',
214 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400215 'condition': 'host_os == "mac" and not build_with_chromium',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500216 'action': [ 'download_from_google_storage',
217 '--no_resume',
218 '--platform=darwin',
219 '--no_auth',
220 '--bucket', 'chromium-gn',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000221 '-s', '{angle_root}/buildtools/mac/gn.sha1',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500222 ],
223 },
224 {
225 'name': 'gn_linux64',
226 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400227 'condition': 'host_os == "linux" and not build_with_chromium',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500228 'action': [ 'download_from_google_storage',
229 '--no_resume',
230 '--platform=linux*',
231 '--no_auth',
232 '--bucket', 'chromium-gn',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000233 '-s', '{angle_root}/buildtools/linux64/gn.sha1',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500234 ],
235 },
Tobin Ehlis9d4277b2018-05-21 16:22:22 -0600236 {
237 'name': 'sysroot_x86',
238 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400239 'condition': 'checkout_linux and ((checkout_x86 or checkout_x64) and not build_with_chromium)',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000240 'action': ['python', '{angle_root}/build/linux/sysroot_scripts/install-sysroot.py',
Tobin Ehlis9d4277b2018-05-21 16:22:22 -0600241 '--arch=x86'],
242 },
243 {
244 'name': 'sysroot_x64',
245 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400246 'condition': 'checkout_linux and (checkout_x64 and not build_with_chromium)',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000247 'action': ['python', '{angle_root}/build/linux/sysroot_scripts/install-sysroot.py',
Tobin Ehlis9d4277b2018-05-21 16:22:22 -0600248 '--arch=x64'],
249 },
Jamie Madill027717f2018-04-13 15:51:24 -0400250 {
251 # Update the Windows toolchain if necessary. Must run before 'clang' below.
252 'name': 'win_toolchain',
253 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400254 'condition': 'checkout_win and not build_with_chromium',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000255 'action': ['python', '{angle_root}/build/vs_toolchain.py', 'update', '--force'],
Jamie Madill027717f2018-04-13 15:51:24 -0400256 },
257
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000258 {
Frank Henigmand0ef13a2017-08-28 22:53:24 -0400259 # Note: On Win, this should run after win_toolchain, as it may use it.
260 'name': 'clang',
261 'pattern': '.',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000262 'action': ['python', '{angle_root}/tools/clang/scripts/update.py'],
Edward Lemur8ae09b02018-06-01 14:18:28 -0400263 'condition': 'not build_with_chromium',
Frank Henigmand0ef13a2017-08-28 22:53:24 -0400264 },
Jamie Madill940c48b2017-10-23 23:25:17 -0400265
Shahbaz Youssefi957e9b82018-10-05 11:00:50 -0400266 {
267 # Update LASTCHANGE.
268 'name': 'lastchange',
269 'pattern': '.',
270 'condition': 'not build_with_chromium',
271 'action': ['python', '{angle_root}/build/util/lastchange.py',
272 '-o', '{angle_root}/build/util/LASTCHANGE'],
273 },
274
Jamie Madill940c48b2017-10-23 23:25:17 -0400275 # Pull rc binaries using checked-in hashes.
276 {
277 'name': 'rc_win',
278 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400279 'condition': 'checkout_win and (host_os == "win" and not build_with_chromium)',
Jamie Madill940c48b2017-10-23 23:25:17 -0400280 'action': [ 'download_from_google_storage',
281 '--no_resume',
282 '--no_auth',
283 '--bucket', 'chromium-browser-clang/rc',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000284 '-s', '{angle_root}/build/toolchain/win/rc/win/rc.exe.sha1',
Jamie Madill940c48b2017-10-23 23:25:17 -0400285 ],
286 },
Michael Spang229fc832019-01-21 18:09:15 -0500287
288 {
289 'name': 'fuchsia_sdk',
290 'pattern': '.',
291 'condition': 'checkout_fuchsia and not build_with_chromium',
292 'action': [
293 'python',
294 '{angle_root}/build/fuchsia/update_sdk.py',
295 ],
296 },
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000297]
Jamie Madill20789312016-10-28 14:05:26 -0400298
299recursedeps = [
300 # buildtools provides clang_format.
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000301 '{angle_root}/buildtools',
Jamie Madill20789312016-10-28 14:05:26 -0400302]