blob: 3d6320ee7c06fbbb111575432bd8a0c7dbeb1e30 [file] [log] [blame]
kjellander@webrtc.org177567c2016-12-22 10:40:28 +01001# This file contains dependencies for WebRTC.
kjellander@webrtc.org89256622014-08-20 12:10:11 +00002
Mirko Bonadeif0e88d42018-04-24 11:09:06 +02003gclient_gn_args_file = 'src/build/config/gclient_args.gni'
4gclient_gn_args = [
5 'checkout_android',
6]
7
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +00008vars = {
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +00009 'chromium_git': 'https://chromium.googlesource.com',
Mirko Bonadeicb2bc112017-10-10 13:28:18 +020010 # By default, we should check out everything needed to run on the main
11 # chromium waterfalls. More info at: crbug.com/570091.
12 'checkout_configuration': 'default',
13 'checkout_instrumented_libraries': 'checkout_linux and checkout_configuration == "default"',
Henrik Kjellandera9d4da82017-09-14 07:28:10 +020014 'webrtc_git': 'https://webrtc.googlesource.com',
Autorollerf4f0cbb2018-04-24 04:44:17 -070015 'chromium_revision': 'b218f3e0f3d8d80733e8391274eda6cc17e17dd8',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010016 'boringssl_git': 'https://boringssl.googlesource.com',
17 # Three lines of non-changing comments so that
18 # the commit queue can handle CLs rolling swarming_client
19 # and whatever else without interference from each other.
Autoroller2f510ad2018-01-15 07:44:21 -080020 'swarming_revision': '88229872dd17e71658fe96763feaa77915d8cbd6',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010021 # Three lines of non-changing comments so that
22 # the commit queue can handle CLs rolling openmax_dl
23 # and whatever else without interference from each other.
Autoroller780dc382018-04-05 20:45:14 -070024 'openmax_dl_revision': '59265e0e9105ec94e473b59c5c7ca1941e4dbd83',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010025 # Three lines of non-changing comments so that
26 # the commit queue can handle CLs rolling BoringSSL
27 # and whatever else without interference from each other.
Autorollera16ac582018-04-20 04:44:57 -070028 'boringssl_revision': '9f0e7cb314ae64234b928fd379381ae9760a9a5f',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010029 # Three lines of non-changing comments so that
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010030 # the commit queue can handle CLs rolling lss
31 # and whatever else without interference from each other.
Oleh Prypin3ebed362017-10-27 10:14:45 +020032 'lss_revision': 'e6527b0cd469e3ff5764785dadcb39bf7d787154',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010033 # Three lines of non-changing comments so that
34 # the commit queue can handle CLs rolling catapult
35 # and whatever else without interference from each other.
Autorollerf4f0cbb2018-04-24 04:44:17 -070036 'catapult_revision': '93b7358c3cf04df1129e0510f17fef388a4c3ec0',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010037 # Three lines of non-changing comments so that
38 # the commit queue can handle CLs rolling libFuzzer
39 # and whatever else without interference from each other.
Autorollerf4f0cbb2018-04-24 04:44:17 -070040 'libfuzzer_revision': 'fda403cf93ecb8792cb1d061564d89a6553ca020',
Mirko Bonadei25acef72018-04-23 11:17:50 +020041 # Three lines of non-changing comments so that
42 # the commit queue can handle CLs rolling freetype
43 # and whatever else without interference from each other.
44 'freetype_revision': '26ad1acbcb4ca9e25163bd102971c8f0e1b56d87',
45 # Three lines of non-changing comments so that
46 # the commit queue can handle CLs rolling HarfBuzz
47 # and whatever else without interference from each other.
48 'harfbuzz_revision': '957e7756634a4fdf1654041e20e883cf964ecac9',
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000049}
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000050deps = {
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010051 # TODO(kjellander): Move this to be Android-only once the libevent dependency
52 # in base/third_party/libevent is solved.
53 'src/base':
Autorollerf4f0cbb2018-04-24 04:44:17 -070054 Var('chromium_git') + '/chromium/src/base' + '@' + '978301251dd9eed7fafde1be9c0ac67e2cffeaf7',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010055 'src/build':
Autorollerf4f0cbb2018-04-24 04:44:17 -070056 Var('chromium_git') + '/chromium/src/build' + '@' + '3aa0a756dafc2d84c9d82e6ef535a2caa5353907',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010057 'src/buildtools':
Autorollerd0859362018-04-20 11:45:13 -070058 Var('chromium_git') + '/chromium/buildtools.git' + '@' + 'ab7b6a7b350dd15804c87c20ce78982811fdd76f',
Mirko Bonadeid3fb8642018-01-22 08:50:32 +010059 # Gradle 4.3-rc4. Used for testing Android Studio project generation for WebRTC.
60 'src/examples/androidtests/third_party/gradle': {
61 'url': Var('chromium_git') + '/external/github.com/gradle/gradle.git' + '@' +
62 '89af43c4d0506f69980f00dde78c97b2f81437f8',
63 'condition': 'checkout_android',
64 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020065 'src/ios': {
Autorollerf4f0cbb2018-04-24 04:44:17 -070066 'url': Var('chromium_git') + '/chromium/src/ios' + '@' + '0689970cde3ef2cd8df529df1c432b97e450adf7',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020067 'condition': 'checkout_ios',
68 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010069 'src/testing':
Autorollerf4f0cbb2018-04-24 04:44:17 -070070 Var('chromium_git') + '/chromium/src/testing' + '@' + '61bc46fc03ba29d43cef9579b2668fa816e8fabc',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010071 'src/third_party':
Autorollerf4f0cbb2018-04-24 04:44:17 -070072 Var('chromium_git') + '/chromium/src/third_party' + '@' + 'cf9408b2f5a2b69cd28f5e56ca1a6af27396827a',
Edward Lemur55536f22018-01-11 14:14:26 +010073 'src/third_party/android_ndk': {
Autorollerdcb4cd12018-03-05 07:44:30 -080074 'url': Var('chromium_git') + '/android_ndk.git' + '@' + '635bc380968a76f6948fee65f80a0b28db53ae81',
Edward Lemur55536f22018-01-11 14:14:26 +010075 'condition': 'checkout_android',
76 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020077 'src/third_party/android_tools': {
Autoroller94ffe902018-03-05 13:45:22 -080078 'url': Var('chromium_git') + '/android_tools.git' + '@' + 'c22a664c39af72dd8f89200220713dcad811300a',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020079 'condition': 'checkout_android',
80 },
Mirko Bonadei969d4a92017-11-05 15:57:38 -080081 'src/third_party/auto/src': {
Autoroller23b5cc92018-01-18 12:45:10 -080082 'url': Var('chromium_git') + '/external/github.com/google/auto.git' + '@' + '8a81a858ae7b78a1aef71ac3905fade0bbd64e82',
Mirko Bonadei969d4a92017-11-05 15:57:38 -080083 'condition': 'checkout_android',
84 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010085 'src/third_party/boringssl/src':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020086 Var('boringssl_git') + '/boringssl.git' + '@' + Var('boringssl_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010087 'src/third_party/catapult':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020088 Var('chromium_git') + '/catapult.git' + '@' + Var('catapult_revision'),
89 'src/third_party/ced/src': {
90 'url': Var('chromium_git') + '/external/github.com/google/compact_enc_det.git' + '@' + '94c367a1fe3a13207f4b22604fcfd1d9f9ddf6d9',
91 'condition': 'checkout_android',
92 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010093 'src/third_party/colorama/src':
94 Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
oprypin40e7ebd2017-07-27 01:40:18 -070095 'src/third_party/depot_tools':
Autorollerf4f0cbb2018-04-24 04:44:17 -070096 Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '2c9a04604fa3d3ce46ddeb5c9505fc1217a3b8cb',
Mirko Bonadei65ceb662017-10-13 09:45:37 +020097 'src/third_party/errorprone/lib': {
Autorollera16ac582018-04-20 04:44:57 -070098 'url': Var('chromium_git') + '/chromium/third_party/errorprone.git' + '@' + 'e352be7c87f3f9fc06bdfffe8a5e0801a6951ec1',
Mirko Bonadei65ceb662017-10-13 09:45:37 +020099 'condition': 'checkout_android',
100 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100101 'src/third_party/ffmpeg':
Autorollerf9e65a82018-04-12 18:44:29 -0700102 Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + 'c6aed052aba910a88d6e68c02946d17f94702da5',
Oleh Prypine39c3792017-11-14 23:09:08 +0100103 'src/third_party/findbugs': {
104 'url': Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '4275d9ac8610db6b1bc9a5e887f97e41b33fac67',
105 'condition': 'checkout_android',
106 },
Mirko Bonadei25acef72018-04-23 11:17:50 +0200107 'src/third_party/freetype/src':
108 Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + Var('freetype_revision'),
109 'src/third_party/harfbuzz-ng/src':
110 Var('chromium_git') + '/external/github.com/harfbuzz/harfbuzz.git' + '@' + Var('harfbuzz_revision'),
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200111 # WebRTC-only dependency (not present in Chromium).
112 'src/third_party/gtest-parallel':
Oleh Prypincb415b22018-03-01 19:03:34 +0100113 Var('chromium_git') + '/external/github.com/google/gtest-parallel' + '@' + 'a8f5453ffc8d6c55a456d3b8395801c3aea9c714',
kjellander3dae7052017-05-03 06:44:36 -0700114 'src/third_party/googletest/src':
Autorollera16ac582018-04-20 04:44:57 -0700115 Var('chromium_git') + '/external/github.com/google/googletest.git' + '@' + '4bd8c4638ada823a8da2569735cc0a9402fb8052',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200116 'src/third_party/icu': {
Autorollerf9e65a82018-04-12 18:44:29 -0700117 'url': Var('chromium_git') + '/chromium/deps/icu.git' + '@' + 'aff99f5c22aded55ee29753ce049e61570294967',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200118 },
119 'src/third_party/jsr-305/src': {
120 'url': Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
121 'condition': 'checkout_android',
122 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100123 'src/third_party/jsoncpp/source':
124 Var('chromium_git') + '/external/github.com/open-source-parsers/jsoncpp.git' + '@' + 'f572e8e42e22cfcf5ab0aea26574f408943edfa4', # from svn 248
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200125 'src/third_party/junit/src': {
126 'url': Var('chromium_git') + '/external/junit.git' + '@' + '64155f8a9babcfcf4263cf4d08253a1556e75481',
127 'condition': 'checkout_android',
128 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100129 # Used for building libFuzzers (only supports Linux).
130 'src/third_party/libFuzzer/src':
oprypin801f7222017-09-01 05:43:07 -0700131 Var('chromium_git') + '/chromium/llvm-project/compiler-rt/lib/fuzzer.git' + '@' + Var('libfuzzer_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100132 'src/third_party/libjpeg_turbo':
buildbot1c23e942017-04-20 09:30:13 -0700133 Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + 'a1750dbc79a8792dde3d3f7d7d8ac28ba01ac9dd',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100134 'src/third_party/libsrtp':
Autoroller96a0e602018-04-06 19:45:43 -0700135 Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + 'fc2345089a6b3c5aca9ecd2e1941871a78a13e9c',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100136 'src/third_party/libvpx/source/libvpx':
Autoroller6c358482018-04-20 16:44:24 -0700137 Var('chromium_git') + '/webm/libvpx.git' + '@' + '3b460db214b5bec07a3da6914a224d90c361ccac',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100138 'src/third_party/libyuv':
Autorollerae3f02d2018-04-04 00:45:10 -0700139 Var('chromium_git') + '/libyuv/libyuv.git' + '@' + 'a9626b9daf62a9b260737e9c2de821ad087b19a1',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200140 'src/third_party/lss': {
141 'url': Var('chromium_git') + '/linux-syscall-support.git' + '@' + Var('lss_revision'),
142 'condition': 'checkout_android or checkout_linux',
143 },
144 'src/third_party/mockito/src': {
145 'url': Var('chromium_git') + '/external/mockito/mockito.git' + '@' + 'de83ad4598ad4cf5ea53c69a8a8053780b04b850',
146 'condition': 'checkout_android',
147 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100148 'src/third_party/openh264/src':
Autorollere36a7cb2018-01-18 03:45:00 -0800149 Var('chromium_git') + '/external/github.com/cisco/openh264' + '@' + '2e96d62426547ac4fb5cbcd122e5f6eb68d66ee6',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100150 'src/third_party/openmax_dl':
Henrik Kjellandera9d4da82017-09-14 07:28:10 +0200151 Var('webrtc_git') + '/deps/third_party/openmax.git' + '@' + Var('openmax_dl_revision'),
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200152 'src/third_party/requests/src': {
153 'url': Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
154 'condition': 'checkout_android',
155 },
156 'src/third_party/robolectric/robolectric': {
Autorollere9fe8b52017-11-30 15:46:32 -0800157 'url': Var('chromium_git') + '/external/robolectric.git' + '@' + '7e067f1112e1502caa742f7be72d37b5678d3403',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200158 'condition': 'checkout_android',
159 },
160 'src/third_party/ub-uiautomator/lib': {
161 'url': Var('chromium_git') + '/chromium/third_party/ub-uiautomator.git' + '@' + '00270549ce3161ae72ceb24712618ea28b4f9434',
162 'condition': 'checkout_android',
163 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100164 'src/third_party/usrsctp/usrsctplib':
Autoroller1b3bd0b2018-03-26 05:44:30 -0700165 Var('chromium_git') + '/external/github.com/sctplab/usrsctp' + '@' + '159d060dceec41a64a57356cbba8c455105f3f72',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200166 # WebRTC-only dependency (not present in Chromium).
167 'src/third_party/winsdk_samples': {
Autorollercf06a532018-04-03 02:44:18 -0700168 'url': Var('webrtc_git') + '/deps/third_party/winsdk_samples_v71' + '@' + '601401003ba059795e221e6cb93d925200034b3c',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200169 'condition': 'checkout_win',
170 },
171 # Dependency used by libjpeg-turbo.
172 'src/third_party/yasm/binaries': {
173 'url': Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
174 'condition': 'checkout_win',
175 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100176 'src/third_party/yasm/source/patched-yasm':
buildbotf3f7f622017-08-10 21:29:33 -0700177 Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + 'b98114e18d8b9b84586b10d24353ab8616d4c5fc',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100178 'src/tools':
Autorollerf4f0cbb2018-04-24 04:44:17 -0700179 Var('chromium_git') + '/chromium/src/tools' + '@' + 'd5203b88dbe00430aa5a8bad108856850cf2a76e',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100180 'src/tools/gyp':
buildbot2f0803c2017-07-25 11:40:43 -0700181 Var('chromium_git') + '/external/gyp.git' + '@' + 'd61a9397e668fa9843c4aa7da9e79460fe590bfb',
oprypin4ccd9c12017-08-30 00:42:43 -0700182 'src/tools/swarming_client':
183 Var('chromium_git') + '/infra/luci/client-py.git' + '@' + Var('swarming_revision'),
Oleh Prypine18e2692018-02-19 18:43:17 +0100184
185 'src/third_party/accessibility_test_framework': {
186 'packages': [
187 {
188 'package': 'chromium/third_party/accessibility-test-framework',
189 'version': 'version:2.1-cr0',
190 },
191 ],
192 'condition': 'checkout_android',
193 'dep_type': 'cipd',
194 },
195
196 'src/third_party/android_support_test_runner': {
197 'packages': [
198 {
199 'package': 'chromium/third_party/android_support_test_runner',
200 'version': 'version:0.5-cr0',
201 },
202 ],
203 'condition': 'checkout_android',
204 'dep_type': 'cipd',
205 },
206
207 'src/third_party/apk-patch-size-estimator': {
208 'packages': [
209 {
210 'package': 'chromium/third_party/apk-patch-size-estimator',
211 'version': 'version:0.2-cr0',
212 },
213 ],
214 'condition': 'checkout_android',
215 'dep_type': 'cipd',
216 },
217
218 'src/third_party/bazel': {
219 'packages': [
220 {
221 'package': 'chromium/third_party/bazel',
222 'version': 'version:0.10.0',
223 },
224 ],
225 'condition': 'checkout_android',
226 'dep_type': 'cipd',
227 },
228
229 'src/third_party/bouncycastle': {
230 'packages': [
231 {
232 'package': 'chromium/third_party/bouncycastle',
233 'version': 'version:1.46-cr0',
234 },
235 ],
236 'condition': 'checkout_android',
237 'dep_type': 'cipd',
238 },
239
240 'src/third_party/byte_buddy': {
241 'packages': [
242 {
243 'package': 'chromium/third_party/byte_buddy',
244 'version': 'version:1.4.17-cr0',
245 },
246 ],
247 'condition': 'checkout_android',
248 'dep_type': 'cipd',
249 },
250
251 'src/third_party/espresso': {
252 'packages': [
253 {
254 'package': 'chromium/third_party/espresso',
255 'version': 'version:2.2.1-cr0',
256 },
257 ],
258 'condition': 'checkout_android',
259 'dep_type': 'cipd',
260 },
261
262 'src/third_party/gson': {
263 'packages': [
264 {
265 'package': 'chromium/third_party/gson',
266 'version': 'version:2.8.0-cr0',
267 },
268 ],
269 'condition': 'checkout_android',
270 'dep_type': 'cipd',
271 },
272
273 'src/third_party/guava': {
274 'packages': [
275 {
276 'package': 'chromium/third_party/guava',
277 'version': 'version:23.0-cr0',
278 },
279 ],
280 'condition': 'checkout_android',
281 'dep_type': 'cipd',
282 },
283
284 'src/third_party/hamcrest': {
285 'packages': [
286 {
287 'package': 'chromium/third_party/hamcrest',
288 'version': 'version:1.3-cr0',
289 },
290 ],
291 'condition': 'checkout_android',
292 'dep_type': 'cipd',
293 },
294
295 'src/third_party/icu4j': {
296 'packages': [
297 {
298 'package': 'chromium/third_party/icu4j',
299 'version': 'version:53.1-cr0',
300 },
301 ],
302 'condition': 'checkout_android',
303 'dep_type': 'cipd',
304 },
305
306 'src/third_party/intellij': {
307 'packages': [
308 {
309 'package': 'chromium/third_party/intellij',
310 'version': 'version:12.0-cr0',
311 },
312 ],
313 'condition': 'checkout_android',
314 'dep_type': 'cipd',
315 },
316
317 'src/third_party/javax_inject': {
318 'packages': [
319 {
320 'package': 'chromium/third_party/javax_inject',
321 'version': 'version:1-cr0',
322 },
323 ],
324 'condition': 'checkout_android',
325 'dep_type': 'cipd',
326 },
327
328 'src/third_party/objenesis': {
329 'packages': [
330 {
331 'package': 'chromium/third_party/objenesis',
332 'version': 'version:2.4-cr0',
333 },
334 ],
335 'condition': 'checkout_android',
336 'dep_type': 'cipd',
337 },
338
339 'src/third_party/ow2_asm': {
340 'packages': [
341 {
342 'package': 'chromium/third_party/ow2_asm',
343 'version': 'version:5.0.1-cr0',
344 },
345 ],
346 'condition': 'checkout_android',
347 'dep_type': 'cipd',
348 },
349
350 'src/third_party/robolectric': {
351 'packages': [
352 {
353 'package': 'chromium/third_party/robolectric',
354 'version': 'version:3.5.1',
355 },
356 ],
357 'condition': 'checkout_android',
358 'dep_type': 'cipd',
359 },
360
361 'src/third_party/sqlite4java': {
362 'packages': [
363 {
364 'package': 'chromium/third_party/sqlite4java',
365 'version': 'version:0.282-cr0',
366 },
367 ],
368 'condition': 'checkout_android',
369 'dep_type': 'cipd',
370 },
371
372 'src/third_party/xstream': {
373 'packages': [
374 {
375 'package': 'chromium/third_party/xstream',
376 'version': 'version:1.4.8-cr0',
377 },
378 ],
379 'condition': 'checkout_android',
380 'dep_type': 'cipd',
381 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000382}
kjellander200028f2017-08-17 09:54:12 -0700383
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000384hooks = [
385 {
Henrik Kjellander27576e02015-10-15 14:24:09 +0200386 # This clobbers when necessary (based on get_landmines.py). It should be
387 # an early hook but it will need to be run after syncing Chromium and
388 # setting up the links, so the script actually exists.
389 'name': 'landmines',
390 'pattern': '.',
391 'action': [
392 'python',
393 'src/build/landmines.py',
394 '--landmine-scripts',
Henrik Kjellander90fd7d82017-05-09 08:30:10 +0200395 'src/tools_webrtc/get_landmines.py',
Henrik Kjellander27576e02015-10-15 14:24:09 +0200396 '--src-dir',
397 'src',
398 ],
399 },
oprypin40e7ebd2017-07-27 01:40:18 -0700400 {
401 # Ensure that the DEPS'd "depot_tools" has its self-update capability
402 # disabled.
403 'name': 'disable_depot_tools_selfupdate',
404 'pattern': '.',
405 'action': [
406 'python',
407 'src/third_party/depot_tools/update_depot_tools_toggle.py',
408 '--disable',
409 ],
410 },
kjellander24d812d2016-11-22 07:02:11 -0800411 {
Mirko Bonadeib8a7d9d2018-02-12 08:57:35 +0100412 'name': 'sysroot_arm',
kjellander24d812d2016-11-22 07:02:11 -0800413 'pattern': '.',
Mirko Bonadeib8a7d9d2018-02-12 08:57:35 +0100414 'condition': 'checkout_linux and checkout_arm',
kjellander24d812d2016-11-22 07:02:11 -0800415 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
Mirko Bonadeib8a7d9d2018-02-12 08:57:35 +0100416 '--arch=arm'],
417 },
418 {
419 'name': 'sysroot_arm64',
420 'pattern': '.',
421 'condition': 'checkout_linux and checkout_arm64',
422 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
423 '--arch=arm64'],
424 },
425 {
426 'name': 'sysroot_x86',
427 'pattern': '.',
428 'condition': 'checkout_linux and (checkout_x86 or checkout_x64)',
429 # TODO(mbonadei): change to --arch=x86.
430 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
431 '--arch=i386'],
432 },
433 {
434 'name': 'sysroot_mips',
435 'pattern': '.',
436 'condition': 'checkout_linux and checkout_mips',
437 # TODO(mbonadei): change to --arch=mips.
438 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
439 '--arch=mipsel'],
440 },
441 {
442 'name': 'sysroot_x64',
443 'pattern': '.',
444 'condition': 'checkout_linux and checkout_x64',
445 # TODO(mbonadei): change to --arch=x64.
446 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
447 '--arch=amd64'],
kjellander24d812d2016-11-22 07:02:11 -0800448 },
449 {
Mirko Bonadeia55bdc22018-02-12 13:22:50 +0100450 # Case-insensitivity for the Win SDK. Must run before win_toolchain below.
451 'name': 'ciopfs_linux',
452 'pattern': '.',
453 'condition': 'checkout_win and host_os == "linux"',
454 'action': [ 'python',
455 'src/third_party/depot_tools/download_from_google_storage.py',
456 '--no_resume',
457 '--no_auth',
458 '--bucket', 'chromium-browser-clang/ciopfs',
459 '-s', 'src/build/ciopfs.sha1',
460 ]
461 },
462 {
Henrik Kjellander6b269752017-10-09 13:00:41 +0200463 # Update the Windows toolchain if necessary. Must run before 'clang' below.
kjellander24d812d2016-11-22 07:02:11 -0800464 'name': 'win_toolchain',
465 'pattern': '.',
Mirko Bonadeif0707cb2018-02-13 11:29:09 +0100466 'condition': 'checkout_win',
467 'action': ['python', 'src/build/vs_toolchain.py', 'update', '--force'],
kjellander24d812d2016-11-22 07:02:11 -0800468 },
kjellanderec2c93e2017-09-08 10:52:17 -0700469 {
470 # Update the Mac toolchain if necessary.
471 'name': 'mac_toolchain',
472 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200473 'condition': 'checkout_mac',
kjellanderec2c93e2017-09-08 10:52:17 -0700474 'action': ['python', 'src/build/mac_toolchain.py'],
475 },
kjellander24d812d2016-11-22 07:02:11 -0800476 # Pull binutils for linux, enabled debug fission for faster linking /
477 # debugging when used with clang on Ubuntu Precise.
478 # https://code.google.com/p/chromium/issues/detail?id=352046
479 {
480 'name': 'binutils',
481 'pattern': 'src/third_party/binutils',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200482 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800483 'action': [
484 'python',
485 'src/third_party/binutils/download.py',
486 ],
487 },
488 {
kjellander24d812d2016-11-22 07:02:11 -0800489 # Note: On Win, this should run after win_toolchain, as it may use it.
490 'name': 'clang',
491 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200492 'action': ['python', 'src/tools/clang/scripts/update.py'],
kjellander24d812d2016-11-22 07:02:11 -0800493 },
ehmaldonado293bc2a2016-11-25 04:58:47 -0800494 {
495 # Update LASTCHANGE.
496 'name': 'lastchange',
497 'pattern': '.',
498 'action': ['python', 'src/build/util/lastchange.py',
499 '-o', 'src/build/util/LASTCHANGE'],
500 },
kjellander24d812d2016-11-22 07:02:11 -0800501 # Pull GN binaries.
502 {
503 'name': 'gn_win',
504 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200505 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800506 'action': [ 'download_from_google_storage',
507 '--no_resume',
508 '--platform=win32',
509 '--no_auth',
510 '--bucket', 'chromium-gn',
511 '-s', 'src/buildtools/win/gn.exe.sha1',
512 ],
513 },
514 {
515 'name': 'gn_mac',
516 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200517 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800518 'action': [ 'download_from_google_storage',
519 '--no_resume',
520 '--platform=darwin',
521 '--no_auth',
522 '--bucket', 'chromium-gn',
523 '-s', 'src/buildtools/mac/gn.sha1',
524 ],
525 },
526 {
527 'name': 'gn_linux64',
528 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200529 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800530 'action': [ 'download_from_google_storage',
531 '--no_resume',
532 '--platform=linux*',
533 '--no_auth',
534 '--bucket', 'chromium-gn',
535 '-s', 'src/buildtools/linux64/gn.sha1',
536 ],
537 },
538 # Pull clang-format binaries using checked-in hashes.
539 {
540 'name': 'clang_format_win',
541 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200542 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800543 'action': [ 'download_from_google_storage',
544 '--no_resume',
545 '--platform=win32',
546 '--no_auth',
547 '--bucket', 'chromium-clang-format',
548 '-s', 'src/buildtools/win/clang-format.exe.sha1',
549 ],
550 },
551 {
552 'name': 'clang_format_mac',
553 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200554 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800555 'action': [ 'download_from_google_storage',
556 '--no_resume',
557 '--platform=darwin',
558 '--no_auth',
559 '--bucket', 'chromium-clang-format',
560 '-s', 'src/buildtools/mac/clang-format.sha1',
561 ],
562 },
563 {
564 'name': 'clang_format_linux',
565 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200566 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800567 'action': [ 'download_from_google_storage',
568 '--no_resume',
569 '--platform=linux*',
570 '--no_auth',
571 '--bucket', 'chromium-clang-format',
572 '-s', 'src/buildtools/linux64/clang-format.sha1',
573 ],
574 },
Oleh Prypin3ebed362017-10-27 10:14:45 +0200575 # Pull rc binaries using checked-in hashes.
576 {
577 'name': 'rc_win',
578 'pattern': '.',
579 'condition': 'checkout_win and host_os == "win"',
580 'action': [ 'python',
581 'src/third_party/depot_tools/download_from_google_storage.py',
582 '--no_resume',
583 '--no_auth',
584 '--bucket', 'chromium-browser-clang/rc',
585 '-s', 'src/build/toolchain/win/rc/win/rc.exe.sha1',
586 ],
587 },
588 {
589 'name': 'rc_mac',
590 'pattern': '.',
591 'condition': 'checkout_win and host_os == "mac"',
592 'action': [ 'python',
593 'src/third_party/depot_tools/download_from_google_storage.py',
594 '--no_resume',
595 '--no_auth',
596 '--bucket', 'chromium-browser-clang/rc',
597 '-s', 'src/build/toolchain/win/rc/mac/rc.sha1',
598 ],
599 },
600 {
601 'name': 'rc_linux',
602 'pattern': '.',
603 'condition': 'checkout_win and host_os == "linux"',
604 'action': [ 'python',
605 'src/third_party/depot_tools/download_from_google_storage.py',
606 '--no_resume',
607 '--no_auth',
608 '--bucket', 'chromium-browser-clang/rc',
609 '-s', 'src/build/toolchain/win/rc/linux64/rc.sha1',
610 ],
611 },
kjellander24d812d2016-11-22 07:02:11 -0800612 # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
613 {
614 'name': 'luci-go_win',
615 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200616 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800617 'action': [ 'download_from_google_storage',
618 '--no_resume',
619 '--platform=win32',
620 '--no_auth',
621 '--bucket', 'chromium-luci',
622 '-d', 'src/tools/luci-go/win64',
623 ],
624 },
625 {
626 'name': 'luci-go_mac',
627 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200628 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800629 'action': [ 'download_from_google_storage',
630 '--no_resume',
631 '--platform=darwin',
632 '--no_auth',
633 '--bucket', 'chromium-luci',
634 '-d', 'src/tools/luci-go/mac64',
635 ],
636 },
637 {
638 'name': 'luci-go_linux',
639 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200640 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800641 'action': [ 'download_from_google_storage',
642 '--no_resume',
643 '--platform=linux*',
644 '--no_auth',
645 '--bucket', 'chromium-luci',
646 '-d', 'src/tools/luci-go/linux64',
647 ],
648 },
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200649 # Pull the Syzygy binaries, used for optimization and instrumentation.
650 {
651 'name': 'syzygy-binaries',
652 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200653 'condition': 'host_os == "win"',
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200654 'action': ['python',
655 'src/build/get_syzygy_binaries.py',
656 '--output-dir=src/third_party/syzygy/binaries',
657 '--revision=a8456d9248a126881dcfb8707ca7dcdae56e1ac7',
658 '--overwrite',
659 ],
660 },
kjellander24d812d2016-11-22 07:02:11 -0800661 {
Mirko Bonadeicb2bc112017-10-10 13:28:18 +0200662 'name': 'msan_chained_origins',
663 'pattern': '.',
664 'condition': 'checkout_instrumented_libraries',
665 'action': [ 'python',
666 'src/third_party/depot_tools/download_from_google_storage.py',
667 "--no_resume",
668 "--no_auth",
669 "--bucket", "chromium-instrumented-libraries",
670 "-s", "src/third_party/instrumented_libraries/binaries/msan-chained-origins-trusty.tgz.sha1",
671 ],
672 },
673 {
674 'name': 'msan_no_origins',
675 'pattern': '.',
676 'condition': 'checkout_instrumented_libraries',
677 'action': [ 'python',
678 'src/third_party/depot_tools/download_from_google_storage.py',
679 "--no_resume",
680 "--no_auth",
681 "--bucket", "chromium-instrumented-libraries",
682 "-s", "src/third_party/instrumented_libraries/binaries/msan-no-origins-trusty.tgz.sha1",
683 ],
kjellander24d812d2016-11-22 07:02:11 -0800684 },
685 {
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000686 # Download test resources, i.e. video and audio files from Google Storage.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000687 'pattern': '.',
688 'action': ['download_from_google_storage',
689 '--directory',
690 '--recursive',
691 '--num_threads=10',
692 '--no_auth',
kjellander4ff818e2015-12-18 12:29:28 -0800693 '--quiet',
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000694 '--bucket', 'chromium-webrtc-resources',
695 'src/resources'],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000696 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200697 {
698 # This downloads SDK extras and puts them in the
699 # third_party/android_tools/sdk/extras directory.
700 'name': 'sdkextras',
701 'pattern': '.',
702 'condition': 'checkout_android',
703 # When adding a new sdk extras package to download, add the package
704 # directory and zip file to .gitignore in third_party/android_tools.
705 'action': ['python',
706 'src/build/android/play_services/update.py',
707 'download'
708 ],
709 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000710]
kjellander200028f2017-08-17 09:54:12 -0700711
kjellander24d812d2016-11-22 07:02:11 -0800712recursedeps = [
713 # buildtools provides clang_format, libc++, and libc++abi.
714 'src/buildtools',
715 # android_tools manages the NDK.
716 'src/third_party/android_tools',
717]
Mirko Bonadeibb547202017-09-15 06:15:48 +0200718
719# Define rules for which include paths are allowed in our source.
720include_rules = [
721 # Base is only used to build Android APK tests and may not be referenced by
722 # WebRTC production code.
723 "-base",
724 "-chromium",
725 "+external/webrtc/webrtc", # Android platform build.
Mirko Bonadeibb547202017-09-15 06:15:48 +0200726 "+libyuv",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200727 # Individual headers that will be moved out of here, see webrtc:4243.
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200728 "+call/rtp_config.h",
729 "+common_types.h",
730 "+transport.h",
731 "+typedefs.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200732
733 "+WebRTC",
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200734 "+api",
735 "+modules/include",
736 "+rtc_base",
737 "+test",
738 "+rtc_tools",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200739]
740
741# The below rules will be removed when webrtc:4243 is fixed.
742specific_include_rules = {
743 "video_receive_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200744 "+call/video_receive_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200745 ],
746 "video_send_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200747 "+call/video_send_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200748 ],
749}