blob: a17e26dd32f360bc7d3431fad933414ee5d26708 [file] [log] [blame]
kjellander@webrtc.org177567c2016-12-22 09:40:281# This file contains dependencies for WebRTC.
kjellander@webrtc.org89256622014-08-20 12:10:112
andrew@webrtc.org4ce52bb2012-07-31 21:54:133vars = {
kjellander@webrtc.org8e5c8142014-12-03 07:11:444 'chromium_git': 'https://chromium.googlesource.com',
Artem Titova04d1402018-05-11 09:23:005 # Used by the WebRTC DEPS autoroller to update third_party/. If you need to run autoroller localy,
6 # you can set it via custom_vars section in the .gclient file.
7 'roll_chromium_into_webrtc': False,
Mirko Bonadeicb2bc112017-10-10 11:28:188 # By default, we should check out everything needed to run on the main
9 # chromium waterfalls. More info at: crbug.com/570091.
10 'checkout_configuration': 'default',
11 'checkout_instrumented_libraries': 'checkout_linux and checkout_configuration == "default"',
Henrik Kjellandera9d4da82017-09-14 05:28:1012 'webrtc_git': 'https://webrtc.googlesource.com',
Autoroller0d4ee0a2018-06-22 01:44:0913 'chromium_revision': '72ef4e47846d30d3fa26599c7864efd38def1704',
kjellander@webrtc.org177567c2016-12-22 09:40:2814 'boringssl_git': 'https://boringssl.googlesource.com',
15 # Three lines of non-changing comments so that
16 # the commit queue can handle CLs rolling swarming_client
17 # and whatever else without interference from each other.
Autoroller024eeff2018-06-19 04:44:0918 'swarming_revision': '9a518d097dca20b7b00ce3bdfc5d418ccc79893a',
kjellander@webrtc.org177567c2016-12-22 09:40:2819 # Three lines of non-changing comments so that
kjellander@webrtc.org177567c2016-12-22 09:40:2820 # the commit queue can handle CLs rolling BoringSSL
21 # and whatever else without interference from each other.
Autoroller024eeff2018-06-19 04:44:0922 'boringssl_revision': '6ff2ba80b758025fdb137d9357dcbba0a9c04dbf',
kjellander@webrtc.org177567c2016-12-22 09:40:2823 # Three lines of non-changing comments so that
kjellander@webrtc.org177567c2016-12-22 09:40:2824 # the commit queue can handle CLs rolling lss
25 # and whatever else without interference from each other.
Oleh Prypin3ebed362017-10-27 08:14:4526 'lss_revision': 'e6527b0cd469e3ff5764785dadcb39bf7d787154',
kjellander@webrtc.org177567c2016-12-22 09:40:2827 # Three lines of non-changing comments so that
28 # the commit queue can handle CLs rolling catapult
29 # and whatever else without interference from each other.
Autoroller0d4ee0a2018-06-22 01:44:0930 'catapult_revision': '7a75f465f541280d20b4e96caf477517b0fc4b18',
kjellander@webrtc.org177567c2016-12-22 09:40:2831 # Three lines of non-changing comments so that
32 # the commit queue can handle CLs rolling libFuzzer
33 # and whatever else without interference from each other.
Autorollerb7beba42018-06-08 22:46:3534 'libfuzzer_revision': '873dc11d9a5281034e2cb74d0e87e9149a0e1045',
Mirko Bonadei25acef72018-04-23 09:17:5035 # Three lines of non-changing comments so that
36 # the commit queue can handle CLs rolling freetype
37 # and whatever else without interference from each other.
Autoroller751a8172018-06-19 19:44:3738 'freetype_revision': '7915fd51f123d0adbe6a0b9ad19eb941e1733c87',
Mirko Bonadei25acef72018-04-23 09:17:5039 # Three lines of non-changing comments so that
40 # the commit queue can handle CLs rolling HarfBuzz
41 # and whatever else without interference from each other.
42 'harfbuzz_revision': '957e7756634a4fdf1654041e20e883cf964ecac9',
Artem Titova04d1402018-05-11 09:23:0043 # Three lines of non-changing comments so that
44 # the commit queue can handle CLs rolling Chromium third_party
45 # and whatever else without interference from each other.
Autoroller0d4ee0a2018-06-22 01:44:0946 'chromium_third_party_revision': '1703674da32a0f52f8037c71c59cc1555cb13091',
andrew@webrtc.org4ce52bb2012-07-31 21:54:1347}
andrew@webrtc.org4ce52bb2012-07-31 21:54:1348deps = {
kjellander@webrtc.org177567c2016-12-22 09:40:2849 # TODO(kjellander): Move this to be Android-only once the libevent dependency
50 # in base/third_party/libevent is solved.
51 'src/base':
Autoroller0d4ee0a2018-06-22 01:44:0952 Var('chromium_git') + '/chromium/src/base' + '@' + '9559d3ec4d8aeb3261c79143b24afccf06257199',
kjellander@webrtc.org177567c2016-12-22 09:40:2853 'src/build':
Autoroller0d4ee0a2018-06-22 01:44:0954 Var('chromium_git') + '/chromium/src/build' + '@' + '379377c701fd069cbdc4a23c31f85939fff1f2fc',
kjellander@webrtc.org177567c2016-12-22 09:40:2855 'src/buildtools':
Autoroller024eeff2018-06-19 04:44:0956 Var('chromium_git') + '/chromium/buildtools.git' + '@' + '5941c1b3df96c1db756a2834343533335c394c4a',
Mirko Bonadeid3fb8642018-01-22 07:50:3257 # Gradle 4.3-rc4. Used for testing Android Studio project generation for WebRTC.
58 'src/examples/androidtests/third_party/gradle': {
59 'url': Var('chromium_git') + '/external/github.com/gradle/gradle.git' + '@' +
60 '89af43c4d0506f69980f00dde78c97b2f81437f8',
61 'condition': 'checkout_android',
62 },
Henrik Kjellander5a17ea92017-10-09 11:14:2363 'src/ios': {
Autoroller0d4ee0a2018-06-22 01:44:0964 'url': Var('chromium_git') + '/chromium/src/ios' + '@' + 'a0396d2bffb1e73ac1c5b97e4a66947740f7ed64',
Henrik Kjellander5a17ea92017-10-09 11:14:2365 'condition': 'checkout_ios',
66 },
kjellander@webrtc.org177567c2016-12-22 09:40:2867 'src/testing':
Autoroller0d4ee0a2018-06-22 01:44:0968 Var('chromium_git') + '/chromium/src/testing' + '@' + '6de780425ced9bb6f27b7a862019d5b067abfd72',
Artem Titova04d1402018-05-11 09:23:0069 # This entry is used for chromium third_party rolling into webrtc third_party only.
70 'src/third_party_chromium': {
71 'url': Var('chromium_git') + '/chromium/src/third_party' + '@' + Var('chromium_third_party_revision'),
72 'condition': 'roll_chromium_into_webrtc',
73 },
Edward Lemur55536f22018-01-11 13:14:2674 'src/third_party/android_ndk': {
Autorollerbf51de82018-05-04 10:44:2375 'url': Var('chromium_git') + '/android_ndk.git' + '@' + '5cd86312e794bdf542a3685c6f10cbb96072990b',
Edward Lemur55536f22018-01-11 13:14:2676 'condition': 'checkout_android',
77 },
Henrik Kjellander5a17ea92017-10-09 11:14:2378 'src/third_party/android_tools': {
Autoroller0d4ee0a2018-06-22 01:44:0979 'url': Var('chromium_git') + '/android_tools.git' + '@' + '3545ab5b9883087a54cb9e5337c32617cb2a443d',
Henrik Kjellander5a17ea92017-10-09 11:14:2380 'condition': 'checkout_android',
81 },
Mirko Bonadei969d4a92017-11-05 23:57:3882 'src/third_party/auto/src': {
Autoroller23b5cc92018-01-18 20:45:1083 'url': Var('chromium_git') + '/external/github.com/google/auto.git' + '@' + '8a81a858ae7b78a1aef71ac3905fade0bbd64e82',
Mirko Bonadei969d4a92017-11-05 23:57:3884 'condition': 'checkout_android',
85 },
kjellander@webrtc.org177567c2016-12-22 09:40:2886 'src/third_party/boringssl/src':
Henrik Kjellander5a17ea92017-10-09 11:14:2387 Var('boringssl_git') + '/boringssl.git' + '@' + Var('boringssl_revision'),
kjellander@webrtc.org177567c2016-12-22 09:40:2888 'src/third_party/catapult':
Henrik Kjellander5a17ea92017-10-09 11:14:2389 Var('chromium_git') + '/catapult.git' + '@' + Var('catapult_revision'),
90 'src/third_party/ced/src': {
91 'url': Var('chromium_git') + '/external/github.com/google/compact_enc_det.git' + '@' + '94c367a1fe3a13207f4b22604fcfd1d9f9ddf6d9',
92 'condition': 'checkout_android',
93 },
kjellander@webrtc.org177567c2016-12-22 09:40:2894 'src/third_party/colorama/src':
95 Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
oprypin40e7ebd2017-07-27 08:40:1896 'src/third_party/depot_tools':
Autoroller0d4ee0a2018-06-22 01:44:0997 Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '4099daa97b38b2ddb95e34d9fc3e2d37f58df069',
Mirko Bonadei65ceb662017-10-13 07:45:3798 'src/third_party/errorprone/lib': {
Oleh Prypina12bdbf2018-04-26 13:49:1199 'url': Var('chromium_git') + '/chromium/third_party/errorprone.git' + '@' + '980d49e839aa4984015efed34b0134d4b2c9b6d7',
Mirko Bonadei65ceb662017-10-13 07:45:37100 'condition': 'checkout_android',
101 },
kjellander@webrtc.org177567c2016-12-22 09:40:28102 'src/third_party/ffmpeg':
Autorollerd8b4f1e2018-05-03 09:44:16103 Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '90210b5e10d3917567a3025e4853704bfefd8384',
Oleh Prypine39c3792017-11-14 22:09:08104 'src/third_party/findbugs': {
105 'url': Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '4275d9ac8610db6b1bc9a5e887f97e41b33fac67',
106 'condition': 'checkout_android',
107 },
Mirko Bonadei25acef72018-04-23 09:17:50108 'src/third_party/freetype/src':
109 Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + Var('freetype_revision'),
110 'src/third_party/harfbuzz-ng/src':
111 Var('chromium_git') + '/external/github.com/harfbuzz/harfbuzz.git' + '@' + Var('harfbuzz_revision'),
Henrik Kjellander5a17ea92017-10-09 11:14:23112 # WebRTC-only dependency (not present in Chromium).
113 'src/third_party/gtest-parallel':
Autorollerb4e0e502018-05-10 01:45:49114 Var('chromium_git') + '/external/github.com/google/gtest-parallel' + '@' + 'cb3514a0858be0f66281d892e2242d1073fd75fe',
kjellander3dae7052017-05-03 13:44:36115 'src/third_party/googletest/src':
Autoroller024eeff2018-06-19 04:44:09116 Var('chromium_git') + '/external/github.com/google/googletest.git' + '@' + 'ce468a17c434e4e79724396ee1b51d86bfc8a88b',
Henrik Kjellander5a17ea92017-10-09 11:14:23117 'src/third_party/icu': {
Autoroller5f5819f2018-06-21 20:44:00118 'url': Var('chromium_git') + '/chromium/deps/icu.git' + '@' + '172d33141cd16df9d027cfd49bfe940b1dc66f1a',
Henrik Kjellander5a17ea92017-10-09 11:14:23119 },
120 'src/third_party/jsr-305/src': {
121 'url': Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
122 'condition': 'checkout_android',
123 },
kjellander@webrtc.org177567c2016-12-22 09:40:28124 'src/third_party/jsoncpp/source':
125 Var('chromium_git') + '/external/github.com/open-source-parsers/jsoncpp.git' + '@' + 'f572e8e42e22cfcf5ab0aea26574f408943edfa4', # from svn 248
Henrik Kjellander5a17ea92017-10-09 11:14:23126 'src/third_party/junit/src': {
127 'url': Var('chromium_git') + '/external/junit.git' + '@' + '64155f8a9babcfcf4263cf4d08253a1556e75481',
128 'condition': 'checkout_android',
129 },
kjellander@webrtc.org177567c2016-12-22 09:40:28130 # Used for building libFuzzers (only supports Linux).
131 'src/third_party/libFuzzer/src':
oprypin801f7222017-09-01 12:43:07132 Var('chromium_git') + '/chromium/llvm-project/compiler-rt/lib/fuzzer.git' + '@' + Var('libfuzzer_revision'),
kjellander@webrtc.org177567c2016-12-22 09:40:28133 'src/third_party/libjpeg_turbo':
buildbot1c23e942017-04-20 16:30:13134 Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + 'a1750dbc79a8792dde3d3f7d7d8ac28ba01ac9dd',
kjellander@webrtc.org177567c2016-12-22 09:40:28135 'src/third_party/libsrtp':
Autoroller96a0e602018-04-07 02:45:43136 Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + 'fc2345089a6b3c5aca9ecd2e1941871a78a13e9c',
kjellander@webrtc.org177567c2016-12-22 09:40:28137 'src/third_party/libvpx/source/libvpx':
Autoroller024eeff2018-06-19 04:44:09138 Var('chromium_git') + '/webm/libvpx.git' + '@' + '8648a64c83b5660eae774d5d41f34fc014ba7b4b',
kjellander@webrtc.org177567c2016-12-22 09:40:28139 'src/third_party/libyuv':
Autoroller188301c2018-06-20 01:44:29140 Var('chromium_git') + '/libyuv/libyuv.git' + '@' + 'bc383e76d6316cf7ca59c76d18d0d7e61f007780',
Henrik Kjellander5a17ea92017-10-09 11:14:23141 'src/third_party/lss': {
142 'url': Var('chromium_git') + '/linux-syscall-support.git' + '@' + Var('lss_revision'),
143 'condition': 'checkout_android or checkout_linux',
144 },
145 'src/third_party/mockito/src': {
Autoroller0d4ee0a2018-06-22 01:44:09146 'url': Var('chromium_git') + '/external/mockito/mockito.git' + '@' + '04a2a289a4222f80ad20717c25144981210d2eac',
Henrik Kjellander5a17ea92017-10-09 11:14:23147 'condition': 'checkout_android',
148 },
kjellander@webrtc.org177567c2016-12-22 09:40:28149 'src/third_party/openh264/src':
Autoroller5d16e2c2018-05-03 17:44:45150 Var('chromium_git') + '/external/github.com/cisco/openh264' + '@' + '3b51f16a4a41df729f8d647f03e48c5f272911ff',
Patrik Höglund72520532018-06-08 08:43:05151 'src/third_party/r8': {
152 'packages': [
153 {
154 'package': 'chromium/third_party/r8',
155 'version': 'version:1.0.30',
156 },
157 ],
158 'condition': 'checkout_android',
159 'dep_type': 'cipd',
160 },
Henrik Kjellander5a17ea92017-10-09 11:14:23161 'src/third_party/requests/src': {
162 'url': Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
163 'condition': 'checkout_android',
164 },
165 'src/third_party/robolectric/robolectric': {
Autorollere9fe8b52017-11-30 23:46:32166 'url': Var('chromium_git') + '/external/robolectric.git' + '@' + '7e067f1112e1502caa742f7be72d37b5678d3403',
Henrik Kjellander5a17ea92017-10-09 11:14:23167 'condition': 'checkout_android',
168 },
169 'src/third_party/ub-uiautomator/lib': {
170 'url': Var('chromium_git') + '/chromium/third_party/ub-uiautomator.git' + '@' + '00270549ce3161ae72ceb24712618ea28b4f9434',
171 'condition': 'checkout_android',
172 },
kjellander@webrtc.org177567c2016-12-22 09:40:28173 'src/third_party/usrsctp/usrsctplib':
Autoroller1b3bd0b2018-03-26 12:44:30174 Var('chromium_git') + '/external/github.com/sctplab/usrsctp' + '@' + '159d060dceec41a64a57356cbba8c455105f3f72',
Henrik Kjellander5a17ea92017-10-09 11:14:23175 # WebRTC-only dependency (not present in Chromium).
176 'src/third_party/winsdk_samples': {
Mirko Bonadeief003102018-05-15 09:24:00177 'url': Var('webrtc_git') + '/deps/third_party/winsdk_samples_v71' + '@' + 'a59391ef795986633735a1695caa97622a9bfd56',
Henrik Kjellander5a17ea92017-10-09 11:14:23178 'condition': 'checkout_win',
179 },
180 # Dependency used by libjpeg-turbo.
181 'src/third_party/yasm/binaries': {
182 'url': Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
183 'condition': 'checkout_win',
184 },
kjellander@webrtc.org177567c2016-12-22 09:40:28185 'src/third_party/yasm/source/patched-yasm':
buildbotf3f7f622017-08-11 04:29:33186 Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + 'b98114e18d8b9b84586b10d24353ab8616d4c5fc',
kjellander@webrtc.org177567c2016-12-22 09:40:28187 'src/tools':
Autoroller0d4ee0a2018-06-22 01:44:09188 Var('chromium_git') + '/chromium/src/tools' + '@' + '2e2b8c6c4c2a558ddbd74d7f7f920ea961f32996',
oprypin4ccd9c12017-08-30 07:42:43189 'src/tools/swarming_client':
190 Var('chromium_git') + '/infra/luci/client-py.git' + '@' + Var('swarming_revision'),
Oleh Prypine18e2692018-02-19 17:43:17191
192 'src/third_party/accessibility_test_framework': {
193 'packages': [
194 {
195 'package': 'chromium/third_party/accessibility-test-framework',
196 'version': 'version:2.1-cr0',
197 },
198 ],
199 'condition': 'checkout_android',
200 'dep_type': 'cipd',
201 },
202
203 'src/third_party/android_support_test_runner': {
204 'packages': [
205 {
206 'package': 'chromium/third_party/android_support_test_runner',
207 'version': 'version:0.5-cr0',
208 },
209 ],
210 'condition': 'checkout_android',
211 'dep_type': 'cipd',
212 },
213
214 'src/third_party/apk-patch-size-estimator': {
215 'packages': [
216 {
217 'package': 'chromium/third_party/apk-patch-size-estimator',
218 'version': 'version:0.2-cr0',
219 },
220 ],
221 'condition': 'checkout_android',
222 'dep_type': 'cipd',
223 },
224
225 'src/third_party/bazel': {
226 'packages': [
227 {
228 'package': 'chromium/third_party/bazel',
229 'version': 'version:0.10.0',
230 },
231 ],
232 'condition': 'checkout_android',
233 'dep_type': 'cipd',
234 },
235
236 'src/third_party/bouncycastle': {
237 'packages': [
238 {
239 'package': 'chromium/third_party/bouncycastle',
240 'version': 'version:1.46-cr0',
241 },
242 ],
243 'condition': 'checkout_android',
244 'dep_type': 'cipd',
245 },
246
247 'src/third_party/byte_buddy': {
248 'packages': [
249 {
250 'package': 'chromium/third_party/byte_buddy',
Autoroller0d4ee0a2018-06-22 01:44:09251 'version': 'version:1.8.8-cr0',
Oleh Prypine18e2692018-02-19 17:43:17252 },
253 ],
254 'condition': 'checkout_android',
255 'dep_type': 'cipd',
256 },
257
258 'src/third_party/espresso': {
259 'packages': [
260 {
261 'package': 'chromium/third_party/espresso',
262 'version': 'version:2.2.1-cr0',
263 },
264 ],
265 'condition': 'checkout_android',
266 'dep_type': 'cipd',
267 },
268
269 'src/third_party/gson': {
270 'packages': [
271 {
272 'package': 'chromium/third_party/gson',
273 'version': 'version:2.8.0-cr0',
274 },
275 ],
276 'condition': 'checkout_android',
277 'dep_type': 'cipd',
278 },
279
280 'src/third_party/guava': {
281 'packages': [
282 {
283 'package': 'chromium/third_party/guava',
284 'version': 'version:23.0-cr0',
285 },
286 ],
287 'condition': 'checkout_android',
288 'dep_type': 'cipd',
289 },
290
291 'src/third_party/hamcrest': {
292 'packages': [
293 {
294 'package': 'chromium/third_party/hamcrest',
295 'version': 'version:1.3-cr0',
296 },
297 ],
298 'condition': 'checkout_android',
299 'dep_type': 'cipd',
300 },
301
302 'src/third_party/icu4j': {
303 'packages': [
304 {
305 'package': 'chromium/third_party/icu4j',
306 'version': 'version:53.1-cr0',
307 },
308 ],
309 'condition': 'checkout_android',
310 'dep_type': 'cipd',
311 },
312
313 'src/third_party/intellij': {
314 'packages': [
315 {
316 'package': 'chromium/third_party/intellij',
317 'version': 'version:12.0-cr0',
318 },
319 ],
320 'condition': 'checkout_android',
321 'dep_type': 'cipd',
322 },
323
324 'src/third_party/javax_inject': {
325 'packages': [
326 {
327 'package': 'chromium/third_party/javax_inject',
328 'version': 'version:1-cr0',
329 },
330 ],
331 'condition': 'checkout_android',
332 'dep_type': 'cipd',
333 },
334
335 'src/third_party/objenesis': {
336 'packages': [
337 {
338 'package': 'chromium/third_party/objenesis',
339 'version': 'version:2.4-cr0',
340 },
341 ],
342 'condition': 'checkout_android',
343 'dep_type': 'cipd',
344 },
345
346 'src/third_party/ow2_asm': {
347 'packages': [
348 {
349 'package': 'chromium/third_party/ow2_asm',
350 'version': 'version:5.0.1-cr0',
351 },
352 ],
353 'condition': 'checkout_android',
354 'dep_type': 'cipd',
355 },
356
357 'src/third_party/robolectric': {
358 'packages': [
359 {
360 'package': 'chromium/third_party/robolectric',
361 'version': 'version:3.5.1',
362 },
363 ],
364 'condition': 'checkout_android',
365 'dep_type': 'cipd',
366 },
367
368 'src/third_party/sqlite4java': {
369 'packages': [
370 {
371 'package': 'chromium/third_party/sqlite4java',
372 'version': 'version:0.282-cr0',
373 },
374 ],
375 'condition': 'checkout_android',
376 'dep_type': 'cipd',
377 },
378
379 'src/third_party/xstream': {
380 'packages': [
381 {
382 'package': 'chromium/third_party/xstream',
383 'version': 'version:1.4.8-cr0',
384 },
385 ],
386 'condition': 'checkout_android',
387 'dep_type': 'cipd',
388 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13389}
kjellander200028f2017-08-17 16:54:12390
andrew@webrtc.org4ce52bb2012-07-31 21:54:13391hooks = [
392 {
Henrik Kjellander27576e02015-10-15 12:24:09393 # This clobbers when necessary (based on get_landmines.py). It should be
394 # an early hook but it will need to be run after syncing Chromium and
395 # setting up the links, so the script actually exists.
396 'name': 'landmines',
397 'pattern': '.',
398 'action': [
399 'python',
400 'src/build/landmines.py',
401 '--landmine-scripts',
Henrik Kjellander90fd7d82017-05-09 06:30:10402 'src/tools_webrtc/get_landmines.py',
Henrik Kjellander27576e02015-10-15 12:24:09403 '--src-dir',
404 'src',
405 ],
406 },
oprypin40e7ebd2017-07-27 08:40:18407 {
408 # Ensure that the DEPS'd "depot_tools" has its self-update capability
409 # disabled.
410 'name': 'disable_depot_tools_selfupdate',
411 'pattern': '.',
412 'action': [
413 'python',
414 'src/third_party/depot_tools/update_depot_tools_toggle.py',
415 '--disable',
416 ],
417 },
kjellander24d812d2016-11-22 15:02:11418 {
Mirko Bonadeib8a7d9d2018-02-12 07:57:35419 'name': 'sysroot_arm',
kjellander24d812d2016-11-22 15:02:11420 'pattern': '.',
Mirko Bonadeib8a7d9d2018-02-12 07:57:35421 'condition': 'checkout_linux and checkout_arm',
kjellander24d812d2016-11-22 15:02:11422 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
Mirko Bonadeib8a7d9d2018-02-12 07:57:35423 '--arch=arm'],
424 },
425 {
426 'name': 'sysroot_arm64',
427 'pattern': '.',
428 'condition': 'checkout_linux and checkout_arm64',
429 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
430 '--arch=arm64'],
431 },
432 {
433 'name': 'sysroot_x86',
434 'pattern': '.',
435 'condition': 'checkout_linux and (checkout_x86 or checkout_x64)',
436 # TODO(mbonadei): change to --arch=x86.
437 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
438 '--arch=i386'],
439 },
440 {
441 'name': 'sysroot_mips',
442 'pattern': '.',
443 'condition': 'checkout_linux and checkout_mips',
444 # TODO(mbonadei): change to --arch=mips.
445 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
446 '--arch=mipsel'],
447 },
448 {
449 'name': 'sysroot_x64',
450 'pattern': '.',
451 'condition': 'checkout_linux and checkout_x64',
452 # TODO(mbonadei): change to --arch=x64.
453 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
454 '--arch=amd64'],
kjellander24d812d2016-11-22 15:02:11455 },
456 {
Mirko Bonadeia55bdc22018-02-12 12:22:50457 # Case-insensitivity for the Win SDK. Must run before win_toolchain below.
458 'name': 'ciopfs_linux',
459 'pattern': '.',
460 'condition': 'checkout_win and host_os == "linux"',
461 'action': [ 'python',
462 'src/third_party/depot_tools/download_from_google_storage.py',
463 '--no_resume',
464 '--no_auth',
465 '--bucket', 'chromium-browser-clang/ciopfs',
466 '-s', 'src/build/ciopfs.sha1',
467 ]
468 },
469 {
Henrik Kjellander6b269752017-10-09 11:00:41470 # Update the Windows toolchain if necessary. Must run before 'clang' below.
kjellander24d812d2016-11-22 15:02:11471 'name': 'win_toolchain',
472 'pattern': '.',
Mirko Bonadeif0707cb2018-02-13 10:29:09473 'condition': 'checkout_win',
474 'action': ['python', 'src/build/vs_toolchain.py', 'update', '--force'],
kjellander24d812d2016-11-22 15:02:11475 },
kjellanderec2c93e2017-09-08 17:52:17476 {
477 # Update the Mac toolchain if necessary.
478 'name': 'mac_toolchain',
479 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41480 'condition': 'checkout_mac',
kjellanderec2c93e2017-09-08 17:52:17481 'action': ['python', 'src/build/mac_toolchain.py'],
482 },
kjellander24d812d2016-11-22 15:02:11483 # Pull binutils for linux, enabled debug fission for faster linking /
484 # debugging when used with clang on Ubuntu Precise.
485 # https://code.google.com/p/chromium/issues/detail?id=352046
486 {
487 'name': 'binutils',
488 'pattern': 'src/third_party/binutils',
Henrik Kjellander6b269752017-10-09 11:00:41489 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 15:02:11490 'action': [
491 'python',
492 'src/third_party/binutils/download.py',
493 ],
494 },
495 {
kjellander24d812d2016-11-22 15:02:11496 # Note: On Win, this should run after win_toolchain, as it may use it.
497 'name': 'clang',
498 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41499 'action': ['python', 'src/tools/clang/scripts/update.py'],
kjellander24d812d2016-11-22 15:02:11500 },
ehmaldonado293bc2a2016-11-25 12:58:47501 {
502 # Update LASTCHANGE.
503 'name': 'lastchange',
504 'pattern': '.',
505 'action': ['python', 'src/build/util/lastchange.py',
506 '-o', 'src/build/util/LASTCHANGE'],
507 },
kjellander24d812d2016-11-22 15:02:11508 # Pull GN binaries.
509 {
510 'name': 'gn_win',
511 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41512 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 15:02:11513 'action': [ 'download_from_google_storage',
514 '--no_resume',
515 '--platform=win32',
516 '--no_auth',
517 '--bucket', 'chromium-gn',
518 '-s', 'src/buildtools/win/gn.exe.sha1',
519 ],
520 },
521 {
522 'name': 'gn_mac',
523 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41524 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 15:02:11525 'action': [ 'download_from_google_storage',
526 '--no_resume',
527 '--platform=darwin',
528 '--no_auth',
529 '--bucket', 'chromium-gn',
530 '-s', 'src/buildtools/mac/gn.sha1',
531 ],
532 },
533 {
534 'name': 'gn_linux64',
535 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41536 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 15:02:11537 'action': [ 'download_from_google_storage',
538 '--no_resume',
539 '--platform=linux*',
540 '--no_auth',
541 '--bucket', 'chromium-gn',
542 '-s', 'src/buildtools/linux64/gn.sha1',
543 ],
544 },
545 # Pull clang-format binaries using checked-in hashes.
546 {
547 'name': 'clang_format_win',
548 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41549 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 15:02:11550 'action': [ 'download_from_google_storage',
551 '--no_resume',
552 '--platform=win32',
553 '--no_auth',
554 '--bucket', 'chromium-clang-format',
555 '-s', 'src/buildtools/win/clang-format.exe.sha1',
556 ],
557 },
558 {
559 'name': 'clang_format_mac',
560 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41561 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 15:02:11562 'action': [ 'download_from_google_storage',
563 '--no_resume',
564 '--platform=darwin',
565 '--no_auth',
566 '--bucket', 'chromium-clang-format',
567 '-s', 'src/buildtools/mac/clang-format.sha1',
568 ],
569 },
570 {
571 'name': 'clang_format_linux',
572 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41573 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 15:02:11574 'action': [ 'download_from_google_storage',
575 '--no_resume',
576 '--platform=linux*',
577 '--no_auth',
578 '--bucket', 'chromium-clang-format',
579 '-s', 'src/buildtools/linux64/clang-format.sha1',
580 ],
581 },
Oleh Prypin3ebed362017-10-27 08:14:45582 # Pull rc binaries using checked-in hashes.
583 {
584 'name': 'rc_win',
585 'pattern': '.',
586 'condition': 'checkout_win and host_os == "win"',
587 'action': [ 'python',
588 'src/third_party/depot_tools/download_from_google_storage.py',
589 '--no_resume',
590 '--no_auth',
591 '--bucket', 'chromium-browser-clang/rc',
592 '-s', 'src/build/toolchain/win/rc/win/rc.exe.sha1',
593 ],
594 },
595 {
596 'name': 'rc_mac',
597 'pattern': '.',
598 'condition': 'checkout_win and host_os == "mac"',
599 'action': [ 'python',
600 'src/third_party/depot_tools/download_from_google_storage.py',
601 '--no_resume',
602 '--no_auth',
603 '--bucket', 'chromium-browser-clang/rc',
604 '-s', 'src/build/toolchain/win/rc/mac/rc.sha1',
605 ],
606 },
607 {
608 'name': 'rc_linux',
609 'pattern': '.',
610 'condition': 'checkout_win and host_os == "linux"',
611 'action': [ 'python',
612 'src/third_party/depot_tools/download_from_google_storage.py',
613 '--no_resume',
614 '--no_auth',
615 '--bucket', 'chromium-browser-clang/rc',
616 '-s', 'src/build/toolchain/win/rc/linux64/rc.sha1',
617 ],
618 },
kjellander24d812d2016-11-22 15:02:11619 # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
620 {
621 'name': 'luci-go_win',
622 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41623 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 15:02:11624 'action': [ 'download_from_google_storage',
625 '--no_resume',
626 '--platform=win32',
627 '--no_auth',
628 '--bucket', 'chromium-luci',
629 '-d', 'src/tools/luci-go/win64',
630 ],
631 },
632 {
633 'name': 'luci-go_mac',
634 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41635 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 15:02:11636 'action': [ 'download_from_google_storage',
637 '--no_resume',
638 '--platform=darwin',
639 '--no_auth',
640 '--bucket', 'chromium-luci',
641 '-d', 'src/tools/luci-go/mac64',
642 ],
643 },
644 {
645 'name': 'luci-go_linux',
646 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41647 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 15:02:11648 'action': [ 'download_from_google_storage',
649 '--no_resume',
650 '--platform=linux*',
651 '--no_auth',
652 '--bucket', 'chromium-luci',
653 '-d', 'src/tools/luci-go/linux64',
654 ],
655 },
Henrik Kjellander55dad1b2017-05-11 10:00:53656 # Pull the Syzygy binaries, used for optimization and instrumentation.
657 {
658 'name': 'syzygy-binaries',
659 'pattern': '.',
Henrik Kjellander6b269752017-10-09 11:00:41660 'condition': 'host_os == "win"',
Henrik Kjellander55dad1b2017-05-11 10:00:53661 'action': ['python',
662 'src/build/get_syzygy_binaries.py',
663 '--output-dir=src/third_party/syzygy/binaries',
664 '--revision=a8456d9248a126881dcfb8707ca7dcdae56e1ac7',
665 '--overwrite',
666 ],
667 },
kjellander24d812d2016-11-22 15:02:11668 {
Mirko Bonadeicb2bc112017-10-10 11:28:18669 'name': 'msan_chained_origins',
670 'pattern': '.',
671 'condition': 'checkout_instrumented_libraries',
672 'action': [ 'python',
673 'src/third_party/depot_tools/download_from_google_storage.py',
674 "--no_resume",
675 "--no_auth",
676 "--bucket", "chromium-instrumented-libraries",
677 "-s", "src/third_party/instrumented_libraries/binaries/msan-chained-origins-trusty.tgz.sha1",
678 ],
679 },
680 {
681 'name': 'msan_no_origins',
682 'pattern': '.',
683 'condition': 'checkout_instrumented_libraries',
684 'action': [ 'python',
685 'src/third_party/depot_tools/download_from_google_storage.py',
686 "--no_resume",
687 "--no_auth",
688 "--bucket", "chromium-instrumented-libraries",
689 "-s", "src/third_party/instrumented_libraries/binaries/msan-no-origins-trusty.tgz.sha1",
690 ],
kjellander24d812d2016-11-22 15:02:11691 },
692 {
kjellander@webrtc.org80174582013-11-04 12:07:57693 # Download test resources, i.e. video and audio files from Google Storage.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44694 'pattern': '.',
695 'action': ['download_from_google_storage',
696 '--directory',
697 '--recursive',
698 '--num_threads=10',
699 '--no_auth',
kjellander4ff818e2015-12-18 20:29:28700 '--quiet',
kjellander@webrtc.org8e5c8142014-12-03 07:11:44701 '--bucket', 'chromium-webrtc-resources',
702 'src/resources'],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13703 },
Henrik Kjellander5a17ea92017-10-09 11:14:23704 {
705 # This downloads SDK extras and puts them in the
706 # third_party/android_tools/sdk/extras directory.
707 'name': 'sdkextras',
708 'pattern': '.',
709 'condition': 'checkout_android',
710 # When adding a new sdk extras package to download, add the package
711 # directory and zip file to .gitignore in third_party/android_tools.
712 'action': ['python',
713 'src/build/android/play_services/update.py',
714 'download'
715 ],
716 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13717]
kjellander200028f2017-08-17 16:54:12718
kjellander24d812d2016-11-22 15:02:11719recursedeps = [
720 # buildtools provides clang_format, libc++, and libc++abi.
721 'src/buildtools',
722 # android_tools manages the NDK.
723 'src/third_party/android_tools',
724]
Mirko Bonadeibb547202017-09-15 04:15:48725
726# Define rules for which include paths are allowed in our source.
727include_rules = [
728 # Base is only used to build Android APK tests and may not be referenced by
729 # WebRTC production code.
730 "-base",
731 "-chromium",
732 "+external/webrtc/webrtc", # Android platform build.
Mirko Bonadeibb547202017-09-15 04:15:48733 "+libyuv",
Patrik Höglund5991ac92018-05-21 13:54:42734
735 # These should eventually move out of here.
Mirko Bonadei92ea95e2017-09-15 04:47:31736 "+common_types.h",
Mirko Bonadei92ea95e2017-09-15 04:47:31737 "+typedefs.h",
Mirko Bonadeibb547202017-09-15 04:15:48738
739 "+WebRTC",
Mirko Bonadei92ea95e2017-09-15 04:47:31740 "+api",
741 "+modules/include",
742 "+rtc_base",
743 "+test",
744 "+rtc_tools",
Danil Chapovalov9dce71b2018-06-11 07:48:31745
746 # Abseil whitelist.
747 "+absl/types/optional.h",
Mirko Bonadeibb547202017-09-15 04:15:48748]