blob: f57f9168ea5d2f20d47a3086e2cdd4d8bcea5a3d [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 Madilld1978032018-06-05 14:37:00 -040012 'deqp_revision': '4c0f2a4fba813e1046115c43c887eccb749b7bb3',
Edward Lemur8ae09b02018-06-01 14:18:28 -040013
14 # Current revision of glslang, the Khronos SPIRV compiler.
Tobin Ehlis3a181e32018-08-29 15:17:05 -060015 'glslang_revision': '312dcfb070a7274066d3e85e10970f57b1e3af6e',
Edward Lemur8ae09b02018-06-01 14:18:28 -040016
17 # Current revision fo the SPIRV-Headers Vulkan support library.
Jamie Madill534343a2018-07-09 16:43:16 -040018 'spirv_headers_revision': 'ff684ffc6a35d2a58f0f63108877d0064ea33feb',
Edward Lemur8ae09b02018-06-01 14:18:28 -040019
20 # Current revision of SPIRV-Tools for Vulkan.
Jamie Madill534343a2018-07-09 16:43:16 -040021 'spirv_tools_revision': '48326d443e434f55eb50a7cfc9acdc968daad5e3',
Edward Lemur8ae09b02018-06-01 14:18:28 -040022
Tobin Ehlisb971f492018-05-24 10:56:17 -060023 # Current revision of Khronos Vulkan-Headers.
Tobin Ehlis3a181e32018-08-29 15:17:05 -060024 'vulkan_headers_revision': 'db09f95ac00e44149f3894bf82c918e58277cfdb',
Tobin Ehlisb971f492018-05-24 10:56:17 -060025
26 # Current revision of Khronos Vulkan-Loader.
Tobin Ehlis3a181e32018-08-29 15:17:05 -060027 'vulkan_loader_revision': '808c5cb8f5b420adb3cf5e28aee6b6112076e27c',
Tobin Ehlisb971f492018-05-24 10:56:17 -060028
29 # Current revision of Khronos Vulkan-Tools.
Tobin Ehlis3a181e32018-08-29 15:17:05 -060030 'vulkan_tools_revision': '31030a11a6425701566d8f5194b528f4d911eab5',
Tobin Ehlisb971f492018-05-24 10:56:17 -060031
32 # Current revision of Khronos Vulkan-ValidationLayers.
Tobin Ehlis3a181e32018-08-29 15:17:05 -060033 'vulkan_validation_revision': '1ffea21fdebb90f314274b8b7dadaae0ca1ffe65',
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': {
Frank Henigmanc0edff62018-08-22 20:08:47 -040039 'url': '{chromium_git}/chromium/src/build.git@ee922ea8f8ed211d485add7906a64ccd2ffc358b',
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': {
Frank Henigman21e5e852018-08-14 15:58:12 -040044 'url': '{chromium_git}/chromium/buildtools.git@2dff9c9c74e9d732e6fe57c84ef7fd044cc45d96',
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': {
Frank Henigmanc0edff62018-08-22 20:08:47 -040049 'url': '{chromium_git}/chromium/src/testing@f6b3243e8ba941f4dfa6b579137738803f43aa18',
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': {
Edward Lemur47463d82018-06-01 17:03:40 -040064 'url': '{android_git}/platform/external/shaderc/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': {
Edward Lemur8ae09b02018-06-01 14:18:28 -040068 'url': '{chromium_git}/external/github.com/google/googletest.git@145d05750b15324899473340c8dd5af50d125d33',
69 '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}',
Edward Lemur8ae09b02018-06-01 14:18:28 -040087 },
Jamie Madill37ee8a62016-12-13 15:18:58 -050088
Yuly Novikov85d8ee82018-09-12 17:36:57 +000089 '{angle_root}/third_party/spirv-tools/src': {
Edward Lemur47463d82018-06-01 17:03:40 -040090 'url': '{android_git}/platform/external/shaderc/spirv-tools@{spirv_tools_revision}',
Edward Lemur8ae09b02018-06-01 14:18:28 -040091 },
Jamie Madill37ee8a62016-12-13 15:18:58 -050092
Yuly Novikov85d8ee82018-09-12 17:36:57 +000093 '{angle_root}/third_party/vulkan-headers/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -060094 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Headers@{vulkan_headers_revision}',
95 },
96
Yuly Novikov85d8ee82018-09-12 17:36:57 +000097 '{angle_root}/third_party/vulkan-loader/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -060098 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Loader@{vulkan_loader_revision}',
99 },
100
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000101 '{angle_root}/third_party/vulkan-tools/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -0600102 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-Tools@{vulkan_tools_revision}',
103 },
104
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000105 '{angle_root}/third_party/vulkan-validation-layers/src': {
Tobin Ehlisb971f492018-05-24 10:56:17 -0600106 'url': '{chromium_git}/external/github.com/KhronosGroup/Vulkan-ValidationLayers@{vulkan_validation_revision}',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400107 },
Jamie Madill3cd438d2015-03-17 11:25:27 -0400108
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000109 '{angle_root}/third_party/zlib': {
Frank Henigmanc0edff62018-08-22 20:08:47 -0400110 'url': '{chromium_git}/chromium/src/third_party/zlib@de0fe056df0577ea69cbf5f46dfe66debe046e5c',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400111 'condition': 'not build_with_chromium',
112 },
Frank Henigmand0ef13a2017-08-28 22:53:24 -0400113
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000114 '{angle_root}/tools/clang': {
Frank Henigmanc0edff62018-08-22 20:08:47 -0400115 'url': '{chromium_git}/chromium/src/tools/clang.git@99ac9bf4ad0d629e1168a0bda9a82f87062ce106',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400116 'condition': 'not build_with_chromium',
117 },
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000118}
119
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000120hooks = [
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400121 # Pull clang-format binaries using checked-in hashes.
122 {
123 'name': 'clang_format_win',
124 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400125 'condition': 'host_os == "win" and not build_with_chromium',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400126 'action': [ 'download_from_google_storage',
127 '--no_resume',
128 '--platform=win32',
129 '--no_auth',
130 '--bucket', 'chromium-clang-format',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000131 '-s', '{angle_root}/buildtools/win/clang-format.exe.sha1',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400132 ],
133 },
134 {
135 'name': 'clang_format_mac',
136 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400137 'condition': 'host_os == "mac" and not build_with_chromium',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400138 'action': [ 'download_from_google_storage',
139 '--no_resume',
140 '--platform=darwin',
141 '--no_auth',
142 '--bucket', 'chromium-clang-format',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000143 '-s', '{angle_root}/buildtools/mac/clang-format.sha1',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400144 ],
145 },
146 {
147 'name': 'clang_format_linux',
148 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400149 'condition': 'host_os == "linux" and not build_with_chromium',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400150 'action': [ 'download_from_google_storage',
151 '--no_resume',
152 '--platform=linux*',
153 '--no_auth',
154 '--bucket', 'chromium-clang-format',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000155 '-s', '{angle_root}/buildtools/linux64/clang-format.sha1',
Jamie Madill2fdd3da2015-07-20 10:14:54 -0400156 ],
157 },
Corentin Wallez570f67d2016-02-05 15:28:24 -0500158 # Pull GN binaries using checked-in hashes.
159 {
160 'name': 'gn_win',
161 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400162 'condition': 'host_os == "win" and not build_with_chromium',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500163 'action': [ 'download_from_google_storage',
164 '--no_resume',
165 '--platform=win32',
166 '--no_auth',
167 '--bucket', 'chromium-gn',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000168 '-s', '{angle_root}/buildtools/win/gn.exe.sha1',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500169 ],
170 },
171 {
172 'name': 'gn_mac',
173 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400174 'condition': 'host_os == "mac" and not build_with_chromium',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500175 'action': [ 'download_from_google_storage',
176 '--no_resume',
177 '--platform=darwin',
178 '--no_auth',
179 '--bucket', 'chromium-gn',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000180 '-s', '{angle_root}/buildtools/mac/gn.sha1',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500181 ],
182 },
183 {
184 'name': 'gn_linux64',
185 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400186 'condition': 'host_os == "linux" and not build_with_chromium',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500187 'action': [ 'download_from_google_storage',
188 '--no_resume',
189 '--platform=linux*',
190 '--no_auth',
191 '--bucket', 'chromium-gn',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000192 '-s', '{angle_root}/buildtools/linux64/gn.sha1',
Corentin Wallez570f67d2016-02-05 15:28:24 -0500193 ],
194 },
Tobin Ehlis9d4277b2018-05-21 16:22:22 -0600195 {
196 'name': 'sysroot_x86',
197 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400198 'condition': 'checkout_linux and ((checkout_x86 or checkout_x64) and not build_with_chromium)',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000199 'action': ['python', '{angle_root}/build/linux/sysroot_scripts/install-sysroot.py',
Tobin Ehlis9d4277b2018-05-21 16:22:22 -0600200 '--arch=x86'],
201 },
202 {
203 'name': 'sysroot_x64',
204 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400205 'condition': 'checkout_linux and (checkout_x64 and not build_with_chromium)',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000206 'action': ['python', '{angle_root}/build/linux/sysroot_scripts/install-sysroot.py',
Tobin Ehlis9d4277b2018-05-21 16:22:22 -0600207 '--arch=x64'],
208 },
Jamie Madill027717f2018-04-13 15:51:24 -0400209 {
210 # Update the Windows toolchain if necessary. Must run before 'clang' below.
211 'name': 'win_toolchain',
212 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400213 'condition': 'checkout_win and not build_with_chromium',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000214 'action': ['python', '{angle_root}/build/vs_toolchain.py', 'update', '--force'],
Jamie Madill027717f2018-04-13 15:51:24 -0400215 },
216
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000217 {
Frank Henigmand0ef13a2017-08-28 22:53:24 -0400218 # Note: On Win, this should run after win_toolchain, as it may use it.
219 'name': 'clang',
220 'pattern': '.',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000221 'action': ['python', '{angle_root}/tools/clang/scripts/update.py'],
Edward Lemur8ae09b02018-06-01 14:18:28 -0400222 'condition': 'not build_with_chromium',
Frank Henigmand0ef13a2017-08-28 22:53:24 -0400223 },
Jamie Madill940c48b2017-10-23 23:25:17 -0400224
225 # Pull rc binaries using checked-in hashes.
226 {
227 'name': 'rc_win',
228 'pattern': '.',
Edward Lemur8ae09b02018-06-01 14:18:28 -0400229 'condition': 'checkout_win and (host_os == "win" and not build_with_chromium)',
Jamie Madill940c48b2017-10-23 23:25:17 -0400230 'action': [ 'download_from_google_storage',
231 '--no_resume',
232 '--no_auth',
233 '--bucket', 'chromium-browser-clang/rc',
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000234 '-s', '{angle_root}/build/toolchain/win/rc/win/rc.exe.sha1',
Jamie Madill940c48b2017-10-23 23:25:17 -0400235 ],
236 },
alokp@chromium.org29d56fb2010-04-06 15:42:22 +0000237]
Jamie Madill20789312016-10-28 14:05:26 -0400238
239recursedeps = [
240 # buildtools provides clang_format.
Yuly Novikov85d8ee82018-09-12 17:36:57 +0000241 '{angle_root}/buildtools',
Jamie Madill20789312016-10-28 14:05:26 -0400242]