blob: 92bd23710e75ee3490df119715afee5632aab36b [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.
Yuly Novikov3420dcb2018-10-29 20:49:38 +000012 'deqp_revision': 'f5637d67a00a1081a13008bb8dc93b2616c935e2',
Edward Lemur8ae09b02018-06-01 14:18:28 -040013
14 # Current revision of glslang, the Khronos SPIRV compiler.
Tobin Ehlis317a9eb2018-11-29 12:51:46 -070015 'glslang_revision': 'f9edfdab0e872c674e0a80e083239aa9637871ba',
Edward Lemur8ae09b02018-06-01 14:18:28 -040016
17 # Current revision fo the SPIRV-Headers Vulkan support library.
Corentin Walleza883dd02018-08-03 18:11:46 +020018 'spirv_headers_revision': 'd5b2e1255f706ce1f88812217e9a554f299848af',
Edward Lemur8ae09b02018-06-01 14:18:28 -040019
20 # Current revision of SPIRV-Tools for Vulkan.
Shahbaz Youssefib4ead902018-10-02 17:08:04 -040021 'spirv_tools_revision': 'd73b9d8dfbf7761e3fde323af00ec18ebfc0020c',
Edward Lemur8ae09b02018-06-01 14:18:28 -040022
Tobin Ehlisb971f492018-05-24 10:56:17 -060023 # Current revision of Khronos Vulkan-Headers.
Tobin Ehlis317a9eb2018-11-29 12:51:46 -070024 'vulkan_headers_revision': 'b65941cc4b2b43b74de00534d110b581c52c394b',
Tobin Ehlisb971f492018-05-24 10:56:17 -060025
26 # Current revision of Khronos Vulkan-Loader.
Tobin Ehlis317a9eb2018-11-29 12:51:46 -070027 'vulkan_loader_revision': '2aa6dcc10189f7700824bc5e21120beeff013c3a',
Tobin Ehlisb971f492018-05-24 10:56:17 -060028
29 # Current revision of Khronos Vulkan-Tools.
Yuly Novikov7cba6be2018-10-30 15:37:52 +000030 'vulkan_tools_revision': '2e8d601de618eddf2bab8597fd140b2824a060b2',
Tobin Ehlisb971f492018-05-24 10:56:17 -060031
32 # Current revision of Khronos Vulkan-ValidationLayers.
Tobin Ehlis317a9eb2018-11-29 12:51:46 -070033 'vulkan_validation_revision': '0fa2823fa693cc22afaa6e6c6d34aadb97104a2d',
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': {
Jamie Madill1c6b26a2018-11-18 17:03:19 -050039 'url': '{chromium_git}/chromium/src/build.git@2fb6537bf59c9c9a736997b8bd888ca0ecf54322',
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': {
Jamie Madill1c6b26a2018-11-18 17:03:19 -050044 'url': '{chromium_git}/chromium/buildtools.git@24ebce4578745db15274e180da1938ebc1358243',
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': {
Edward Lemur8ae09b02018-06-01 14:18:28 -040060 'url': '{android_git}/platform/external/deqp@{deqp_revision}',
61 },
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}',
Edward Lemur8ae09b02018-06-01 14:18:28 -040065 },
Jamie Madill37ee8a62016-12-13 15:18:58 -050066
Yuly Novikov85d8ee82018-09-12 17:36:57 +000067 '{angle_root}/third_party/googletest/src': {
Jamie Madill1c6b26a2018-11-18 17:03:19 -050068 'url': '{chromium_git}/external/github.com/google/googletest.git@d5932506d6eed73ac80b9bcc47ed723c8c74eb1e',
Edward Lemur8ae09b02018-06-01 14:18:28 -040069 'condition': 'not build_with_chromium',
70 },
Frank Henigman6b076a02017-10-11 13:28:22 -040071
Yuly Novikov85d8ee82018-09-12 17:36:57 +000072 '{angle_root}/third_party/libpng/src': {
Edward Lemur8ae09b02018-06-01 14:18:28 -040073 'url': '{android_git}/platform/external/libpng@094e181e79a3d6c23fd005679025058b7df1ad6c',
74 'condition': 'not build_with_chromium',
75 },
Jamie Madill37ee8a62016-12-13 15:18:58 -050076
Yuly Novikov85d8ee82018-09-12 17:36:57 +000077 '{angle_root}/third_party/jsoncpp': {
Jamie Madill7ada46c2018-09-06 10:58:26 -040078 'url': '{chromium_git}/chromium/src/third_party/jsoncpp@fd0ac8ce63a47e99b71a58f1489136fbb19c9137',
79 },
80
Yuly Novikov85d8ee82018-09-12 17:36:57 +000081 '{angle_root}/third_party/jsoncpp/source': {
Jamie Madill7ada46c2018-09-06 10:58:26 -040082 'url' : '{chromium_git}/external/github.com/open-source-parsers/jsoncpp@f572e8e42e22cfcf5ab0aea26574f408943edfa4'
Tobin Ehlis5fdc38c2018-08-28 09:20:57 -060083 },
84
Yuly Novikov85d8ee82018-09-12 17:36:57 +000085 '{angle_root}/third_party/spirv-headers/src': {
Edward Lemur47463d82018-06-01 17:03:40 -040086 'url': '{android_git}/platform/external/shaderc/spirv-headers@{spirv_headers_revision}',
Corentin Walleza883dd02018-08-03 18:11:46 +020087 'condition': 'not build_with_chromium',
Edward Lemur8ae09b02018-06-01 14:18:28 -040088 },
Jamie Madill37ee8a62016-12-13 15:18:58 -050089
Yuly Novikov85d8ee82018-09-12 17:36:57 +000090 '{angle_root}/third_party/spirv-tools/src': {
Edward Lemur47463d82018-06-01 17:03:40 -040091 'url': '{android_git}/platform/external/shaderc/spirv-tools@{spirv_tools_revision}',
Corentin Walleza883dd02018-08-03 18:11:46 +020092 'condition': 'not build_with_chromium',
Edward Lemur8ae09b02018-06-01 14:18:28 -040093 },
Jamie Madill37ee8a62016-12-13 15:18:58 -050094
Yuly Novikov85d8ee82018-09-12 17:36:57 +000095 '{angle_root}/third_party/vulkan-headers/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -060096 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Headers@{vulkan_headers_revision}',
97 },
98
Yuly Novikov85d8ee82018-09-12 17:36:57 +000099 '{angle_root}/third_party/vulkan-loader/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -0600100 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Loader@{vulkan_loader_revision}',
101 },
102
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000103 '{angle_root}/third_party/vulkan-tools/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -0600104 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Tools@{vulkan_tools_revision}',
105 },
106
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000107 '{angle_root}/third_party/vulkan-validation-layers/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -0600108 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-ValidationLayers@{vulkan_validation_revision}',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400109 },
Jamie Madill3cd438d2015-03-17 11:25:27 -0400110
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000111 '{angle_root}/third_party/zlib': {
Jamie Madill720ca442018-12-17 14:04:10 -0500112 'url': '{chromium_git}/chromium/src/third_party/zlib@f95aeb0fa7f136ef4a457a6d9ba6f3c2701a444b',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400113 'condition': 'not build_with_chromium',
114 },
Frank Henigmand0ef13a2017-08-28 22:53:24 -0400115
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000116 '{angle_root}/tools/clang': {
Jamie Madill1c6b26a2018-11-18 17:03:19 -0500117 'url': '{chromium_git}/chromium/src/tools/clang.git@1d879cee563167a2b18baffb096cf9e29f2f9376',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400118 'condition': 'not build_with_chromium',
119 },
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000120}
121
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000122hooks = [
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400123 # Pull clang-format binaries using checked-in hashes.
124 {
125 'name': 'clang_format_win',
126 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400127 'condition': 'host_os == "win" and not build_with_chromium',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400128 'action': [ 'download_from_google_storage',
129 '--no_resume',
130 '--platform=win32',
131 '--no_auth',
132 '--bucket', 'chromium-clang-format',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000133 '-s', '{angle_root}/buildtools/win/clang-format.exe.sha1',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400134 ],
135 },
136 {
137 'name': 'clang_format_mac',
138 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400139 'condition': 'host_os == "mac" and not build_with_chromium',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400140 'action': [ 'download_from_google_storage',
141 '--no_resume',
142 '--platform=darwin',
143 '--no_auth',
144 '--bucket', 'chromium-clang-format',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000145 '-s', '{angle_root}/buildtools/mac/clang-format.sha1',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400146 ],
147 },
148 {
149 'name': 'clang_format_linux',
150 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400151 'condition': 'host_os == "linux" and not build_with_chromium',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400152 'action': [ 'download_from_google_storage',
153 '--no_resume',
154 '--platform=linux*',
155 '--no_auth',
156 '--bucket', 'chromium-clang-format',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000157 '-s', '{angle_root}/buildtools/linux64/clang-format.sha1',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400158 ],
159 },
Corentin Wallez570f67d2016-02-05 15:28:24 -0500160 # Pull GN binaries using checked-in hashes.
161 {
162 'name': 'gn_win',
163 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400164 'condition': 'host_os == "win" and not build_with_chromium',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500165 'action': [ 'download_from_google_storage',
166 '--no_resume',
167 '--platform=win32',
168 '--no_auth',
169 '--bucket', 'chromium-gn',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000170 '-s', '{angle_root}/buildtools/win/gn.exe.sha1',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500171 ],
172 },
173 {
174 'name': 'gn_mac',
175 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400176 'condition': 'host_os == "mac" and not build_with_chromium',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500177 'action': [ 'download_from_google_storage',
178 '--no_resume',
179 '--platform=darwin',
180 '--no_auth',
181 '--bucket', 'chromium-gn',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000182 '-s', '{angle_root}/buildtools/mac/gn.sha1',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500183 ],
184 },
185 {
186 'name': 'gn_linux64',
187 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400188 'condition': 'host_os == "linux" and not build_with_chromium',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500189 'action': [ 'download_from_google_storage',
190 '--no_resume',
191 '--platform=linux*',
192 '--no_auth',
193 '--bucket', 'chromium-gn',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000194 '-s', '{angle_root}/buildtools/linux64/gn.sha1',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500195 ],
196 },
Tobin Ehlis9d4277b2018-05-21 16:22:22 -0600197 {
198 'name': 'sysroot_x86',
199 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400200 'condition': 'checkout_linux and ((checkout_x86 or checkout_x64) and not build_with_chromium)',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000201 'action': ['python', '{angle_root}/build/linux/sysroot_scripts/install-sysroot.py',
Tobin Ehlis9d4277b2018-05-21 16:22:22 -0600202 '--arch=x86'],
203 },
204 {
205 'name': 'sysroot_x64',
206 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400207 'condition': 'checkout_linux and (checkout_x64 and not build_with_chromium)',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000208 'action': ['python', '{angle_root}/build/linux/sysroot_scripts/install-sysroot.py',
Tobin Ehlis9d4277b2018-05-21 16:22:22 -0600209 '--arch=x64'],
210 },
Jamie Madill027717f2018-04-13 15:51:24 -0400211 {
212 # Update the Windows toolchain if necessary. Must run before 'clang' below.
213 'name': 'win_toolchain',
214 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400215 'condition': 'checkout_win and not build_with_chromium',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000216 'action': ['python', '{angle_root}/build/vs_toolchain.py', 'update', '--force'],
Jamie Madill027717f2018-04-13 15:51:24 -0400217 },
218
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000219 {
Frank Henigmand0ef13a2017-08-28 22:53:24 -0400220 # Note: On Win, this should run after win_toolchain, as it may use it.
221 'name': 'clang',
222 'pattern': '.',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000223 'action': ['python', '{angle_root}/tools/clang/scripts/update.py'],
Edward Lemur8ae09b02018-06-01 14:18:28 -0400224 'condition': 'not build_with_chromium',
Frank Henigmand0ef13a2017-08-28 22:53:24 -0400225 },
Jamie Madill940c48b2017-10-23 23:25:17 -0400226
Shahbaz Youssefi957e9b82018-10-05 11:00:50 -0400227 {
228 # Update LASTCHANGE.
229 'name': 'lastchange',
230 'pattern': '.',
231 'condition': 'not build_with_chromium',
232 'action': ['python', '{angle_root}/build/util/lastchange.py',
233 '-o', '{angle_root}/build/util/LASTCHANGE'],
234 },
235
Jamie Madill940c48b2017-10-23 23:25:17 -0400236 # Pull rc binaries using checked-in hashes.
237 {
238 'name': 'rc_win',
239 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400240 'condition': 'checkout_win and (host_os == "win" and not build_with_chromium)',
Jamie Madill940c48b2017-10-23 23:25:17 -0400241 'action': [ 'download_from_google_storage',
242 '--no_resume',
243 '--no_auth',
244 '--bucket', 'chromium-browser-clang/rc',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000245 '-s', '{angle_root}/build/toolchain/win/rc/win/rc.exe.sha1',
Jamie Madill940c48b2017-10-23 23:25:17 -0400246 ],
247 },
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000248]
Jamie Madill20789312016-10-28 14:05:26 -0400249
250recursedeps = [
251 # buildtools provides clang_format.
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000252 '{angle_root}/buildtools',
Jamie Madill20789312016-10-28 14:05:26 -0400253]