blob: 7bead580c6906d59cf3c97796ad7c101afc0fe28 [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
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +00003vars = {
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +00004 'chromium_git': 'https://chromium.googlesource.com',
Mirko Bonadeicb2bc112017-10-10 13:28:18 +02005 # By default, we should check out everything needed to run on the main
6 # chromium waterfalls. More info at: crbug.com/570091.
7 'checkout_configuration': 'default',
8 'checkout_instrumented_libraries': 'checkout_linux and checkout_configuration == "default"',
Henrik Kjellandera9d4da82017-09-14 07:28:10 +02009 'webrtc_git': 'https://webrtc.googlesource.com',
Autoroller62c0c2d2018-05-03 16:45:33 -070010 'chromium_revision': '3cf20c1972f791f9c1ddc21e5673bad4592b118f',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010011 'boringssl_git': 'https://boringssl.googlesource.com',
12 # Three lines of non-changing comments so that
13 # the commit queue can handle CLs rolling swarming_client
14 # and whatever else without interference from each other.
Autoroller2f510ad2018-01-15 07:44:21 -080015 'swarming_revision': '88229872dd17e71658fe96763feaa77915d8cbd6',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010016 # Three lines of non-changing comments so that
17 # the commit queue can handle CLs rolling openmax_dl
18 # and whatever else without interference from each other.
Autoroller780dc382018-04-05 20:45:14 -070019 'openmax_dl_revision': '59265e0e9105ec94e473b59c5c7ca1941e4dbd83',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010020 # Three lines of non-changing comments so that
21 # the commit queue can handle CLs rolling BoringSSL
22 # and whatever else without interference from each other.
Autoroller62c0c2d2018-05-03 16:45:33 -070023 'boringssl_revision': '8e75ae488047c519f14f2c08b02a55bf7712fa1d',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010024 # Three lines of non-changing comments so that
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010025 # the commit queue can handle CLs rolling lss
26 # and whatever else without interference from each other.
Oleh Prypin3ebed362017-10-27 10:14:45 +020027 'lss_revision': 'e6527b0cd469e3ff5764785dadcb39bf7d787154',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010028 # Three lines of non-changing comments so that
29 # the commit queue can handle CLs rolling catapult
30 # and whatever else without interference from each other.
Autoroller5d16e2c2018-05-03 10:44:45 -070031 'catapult_revision': '19282cf9d32d6e656bc35dfea9e97c5b42d9e238',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010032 # Three lines of non-changing comments so that
33 # the commit queue can handle CLs rolling libFuzzer
34 # and whatever else without interference from each other.
Autorollerf4f0cbb2018-04-24 04:44:17 -070035 'libfuzzer_revision': 'fda403cf93ecb8792cb1d061564d89a6553ca020',
Mirko Bonadei25acef72018-04-23 11:17:50 +020036 # Three lines of non-changing comments so that
37 # the commit queue can handle CLs rolling freetype
38 # and whatever else without interference from each other.
Oleh Prypina12bdbf2018-04-26 15:49:11 +020039 'freetype_revision': '2157d8fa6f7e12063ca166476ed2223d24234db7',
Mirko Bonadei25acef72018-04-23 11:17:50 +020040 # Three lines of non-changing comments so that
41 # the commit queue can handle CLs rolling HarfBuzz
42 # and whatever else without interference from each other.
43 'harfbuzz_revision': '957e7756634a4fdf1654041e20e883cf964ecac9',
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000044}
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000045deps = {
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010046 # TODO(kjellander): Move this to be Android-only once the libevent dependency
47 # in base/third_party/libevent is solved.
48 'src/base':
Autorollerd8b4f1e2018-05-03 02:44:16 -070049 Var('chromium_git') + '/chromium/src/base' + '@' + '18c4fb51231dbc8ecdf7b4808791eb5ada00b33f',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010050 'src/build':
Autoroller62c0c2d2018-05-03 16:45:33 -070051 Var('chromium_git') + '/chromium/src/build' + '@' + '31e3cff15fefd97c03bf5eb1126c05d3269e0371',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010052 'src/buildtools':
Autorollerd8b4f1e2018-05-03 02:44:16 -070053 Var('chromium_git') + '/chromium/buildtools.git' + '@' + '0b71401b977fba99eb0c7bb01bdb3338f45bd911',
Mirko Bonadeid3fb8642018-01-22 08:50:32 +010054 # Gradle 4.3-rc4. Used for testing Android Studio project generation for WebRTC.
55 'src/examples/androidtests/third_party/gradle': {
56 'url': Var('chromium_git') + '/external/github.com/gradle/gradle.git' + '@' +
57 '89af43c4d0506f69980f00dde78c97b2f81437f8',
58 'condition': 'checkout_android',
59 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020060 'src/ios': {
Autoroller62c0c2d2018-05-03 16:45:33 -070061 'url': Var('chromium_git') + '/chromium/src/ios' + '@' + 'b694f35e8be810b2151c20f1c0816215854cf23f',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020062 'condition': 'checkout_ios',
63 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010064 'src/testing':
Autoroller62c0c2d2018-05-03 16:45:33 -070065 Var('chromium_git') + '/chromium/src/testing' + '@' + '30f16b77f804166f09320a257567a4ea5295ca9b',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010066 'src/third_party':
Autoroller62c0c2d2018-05-03 16:45:33 -070067 Var('chromium_git') + '/chromium/src/third_party' + '@' + 'c4ac2571a7a89711493db8a9139a999b03d55298',
Edward Lemur55536f22018-01-11 14:14:26 +010068 'src/third_party/android_ndk': {
Autorollerdcb4cd12018-03-05 07:44:30 -080069 'url': Var('chromium_git') + '/android_ndk.git' + '@' + '635bc380968a76f6948fee65f80a0b28db53ae81',
Edward Lemur55536f22018-01-11 14:14:26 +010070 'condition': 'checkout_android',
71 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020072 'src/third_party/android_tools': {
Autoroller94ffe902018-03-05 13:45:22 -080073 'url': Var('chromium_git') + '/android_tools.git' + '@' + 'c22a664c39af72dd8f89200220713dcad811300a',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020074 'condition': 'checkout_android',
75 },
Mirko Bonadei969d4a92017-11-05 15:57:38 -080076 'src/third_party/auto/src': {
Autoroller23b5cc92018-01-18 12:45:10 -080077 'url': Var('chromium_git') + '/external/github.com/google/auto.git' + '@' + '8a81a858ae7b78a1aef71ac3905fade0bbd64e82',
Mirko Bonadei969d4a92017-11-05 15:57:38 -080078 'condition': 'checkout_android',
79 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010080 'src/third_party/boringssl/src':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020081 Var('boringssl_git') + '/boringssl.git' + '@' + Var('boringssl_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010082 'src/third_party/catapult':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020083 Var('chromium_git') + '/catapult.git' + '@' + Var('catapult_revision'),
84 'src/third_party/ced/src': {
85 'url': Var('chromium_git') + '/external/github.com/google/compact_enc_det.git' + '@' + '94c367a1fe3a13207f4b22604fcfd1d9f9ddf6d9',
86 'condition': 'checkout_android',
87 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010088 'src/third_party/colorama/src':
89 Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
oprypin40e7ebd2017-07-27 01:40:18 -070090 'src/third_party/depot_tools':
Autorollerd8b4f1e2018-05-03 02:44:16 -070091 Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '6c692edf010ce9e43737406c53f399b13631ac4f',
Mirko Bonadei65ceb662017-10-13 09:45:37 +020092 'src/third_party/errorprone/lib': {
Oleh Prypina12bdbf2018-04-26 15:49:11 +020093 'url': Var('chromium_git') + '/chromium/third_party/errorprone.git' + '@' + '980d49e839aa4984015efed34b0134d4b2c9b6d7',
Mirko Bonadei65ceb662017-10-13 09:45:37 +020094 'condition': 'checkout_android',
95 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010096 'src/third_party/ffmpeg':
Autorollerd8b4f1e2018-05-03 02:44:16 -070097 Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '90210b5e10d3917567a3025e4853704bfefd8384',
Oleh Prypine39c3792017-11-14 23:09:08 +010098 'src/third_party/findbugs': {
99 'url': Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '4275d9ac8610db6b1bc9a5e887f97e41b33fac67',
100 'condition': 'checkout_android',
101 },
Mirko Bonadei25acef72018-04-23 11:17:50 +0200102 'src/third_party/freetype/src':
103 Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + Var('freetype_revision'),
104 'src/third_party/harfbuzz-ng/src':
105 Var('chromium_git') + '/external/github.com/harfbuzz/harfbuzz.git' + '@' + Var('harfbuzz_revision'),
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200106 # WebRTC-only dependency (not present in Chromium).
107 'src/third_party/gtest-parallel':
Oleh Prypincb415b22018-03-01 19:03:34 +0100108 Var('chromium_git') + '/external/github.com/google/gtest-parallel' + '@' + 'a8f5453ffc8d6c55a456d3b8395801c3aea9c714',
kjellander3dae7052017-05-03 06:44:36 -0700109 'src/third_party/googletest/src':
Autoroller65e94392018-04-26 18:45:57 -0700110 Var('chromium_git') + '/external/github.com/google/googletest.git' + '@' + 'a6f06bf2fd3b832822cd4e9e554b7d47f32ec084',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200111 'src/third_party/icu': {
Oleh Prypina12bdbf2018-04-26 15:49:11 +0200112 'url': Var('chromium_git') + '/chromium/deps/icu.git' + '@' + 'e4194dc7bbb3305d84cbb1b294274ca70d230721',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200113 },
114 'src/third_party/jsr-305/src': {
115 'url': Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
116 'condition': 'checkout_android',
117 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100118 'src/third_party/jsoncpp/source':
119 Var('chromium_git') + '/external/github.com/open-source-parsers/jsoncpp.git' + '@' + 'f572e8e42e22cfcf5ab0aea26574f408943edfa4', # from svn 248
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200120 'src/third_party/junit/src': {
121 'url': Var('chromium_git') + '/external/junit.git' + '@' + '64155f8a9babcfcf4263cf4d08253a1556e75481',
122 'condition': 'checkout_android',
123 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100124 # Used for building libFuzzers (only supports Linux).
125 'src/third_party/libFuzzer/src':
oprypin801f7222017-09-01 05:43:07 -0700126 Var('chromium_git') + '/chromium/llvm-project/compiler-rt/lib/fuzzer.git' + '@' + Var('libfuzzer_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100127 'src/third_party/libjpeg_turbo':
buildbot1c23e942017-04-20 09:30:13 -0700128 Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + 'a1750dbc79a8792dde3d3f7d7d8ac28ba01ac9dd',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100129 'src/third_party/libsrtp':
Autoroller96a0e602018-04-06 19:45:43 -0700130 Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + 'fc2345089a6b3c5aca9ecd2e1941871a78a13e9c',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100131 'src/third_party/libvpx/source/libvpx':
Autorollerd8b4f1e2018-05-03 02:44:16 -0700132 Var('chromium_git') + '/webm/libvpx.git' + '@' + 'e4408a07bea94740f5fc1cd05e62aa2dda5f57ff',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100133 'src/third_party/libyuv':
Autorollerae3f02d2018-04-04 00:45:10 -0700134 Var('chromium_git') + '/libyuv/libyuv.git' + '@' + 'a9626b9daf62a9b260737e9c2de821ad087b19a1',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200135 'src/third_party/lss': {
136 'url': Var('chromium_git') + '/linux-syscall-support.git' + '@' + Var('lss_revision'),
137 'condition': 'checkout_android or checkout_linux',
138 },
139 'src/third_party/mockito/src': {
140 'url': Var('chromium_git') + '/external/mockito/mockito.git' + '@' + 'de83ad4598ad4cf5ea53c69a8a8053780b04b850',
141 'condition': 'checkout_android',
142 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100143 'src/third_party/openh264/src':
Autoroller5d16e2c2018-05-03 10:44:45 -0700144 Var('chromium_git') + '/external/github.com/cisco/openh264' + '@' + '3b51f16a4a41df729f8d647f03e48c5f272911ff',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100145 'src/third_party/openmax_dl':
Henrik Kjellandera9d4da82017-09-14 07:28:10 +0200146 Var('webrtc_git') + '/deps/third_party/openmax.git' + '@' + Var('openmax_dl_revision'),
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200147 'src/third_party/requests/src': {
148 'url': Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
149 'condition': 'checkout_android',
150 },
151 'src/third_party/robolectric/robolectric': {
Autorollere9fe8b52017-11-30 15:46:32 -0800152 'url': Var('chromium_git') + '/external/robolectric.git' + '@' + '7e067f1112e1502caa742f7be72d37b5678d3403',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200153 'condition': 'checkout_android',
154 },
155 'src/third_party/ub-uiautomator/lib': {
156 'url': Var('chromium_git') + '/chromium/third_party/ub-uiautomator.git' + '@' + '00270549ce3161ae72ceb24712618ea28b4f9434',
157 'condition': 'checkout_android',
158 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100159 'src/third_party/usrsctp/usrsctplib':
Autoroller1b3bd0b2018-03-26 05:44:30 -0700160 Var('chromium_git') + '/external/github.com/sctplab/usrsctp' + '@' + '159d060dceec41a64a57356cbba8c455105f3f72',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200161 # WebRTC-only dependency (not present in Chromium).
162 'src/third_party/winsdk_samples': {
Autorollercf06a532018-04-03 02:44:18 -0700163 'url': Var('webrtc_git') + '/deps/third_party/winsdk_samples_v71' + '@' + '601401003ba059795e221e6cb93d925200034b3c',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200164 'condition': 'checkout_win',
165 },
166 # Dependency used by libjpeg-turbo.
167 'src/third_party/yasm/binaries': {
168 'url': Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
169 'condition': 'checkout_win',
170 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100171 'src/third_party/yasm/source/patched-yasm':
buildbotf3f7f622017-08-10 21:29:33 -0700172 Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + 'b98114e18d8b9b84586b10d24353ab8616d4c5fc',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100173 'src/tools':
Autoroller62c0c2d2018-05-03 16:45:33 -0700174 Var('chromium_git') + '/chromium/src/tools' + '@' + '77696cc490193ca82141c6674cb44fafa9417b09',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100175 'src/tools/gyp':
buildbot2f0803c2017-07-25 11:40:43 -0700176 Var('chromium_git') + '/external/gyp.git' + '@' + 'd61a9397e668fa9843c4aa7da9e79460fe590bfb',
oprypin4ccd9c12017-08-30 00:42:43 -0700177 'src/tools/swarming_client':
178 Var('chromium_git') + '/infra/luci/client-py.git' + '@' + Var('swarming_revision'),
Oleh Prypine18e2692018-02-19 18:43:17 +0100179
180 'src/third_party/accessibility_test_framework': {
181 'packages': [
182 {
183 'package': 'chromium/third_party/accessibility-test-framework',
184 'version': 'version:2.1-cr0',
185 },
186 ],
187 'condition': 'checkout_android',
188 'dep_type': 'cipd',
189 },
190
191 'src/third_party/android_support_test_runner': {
192 'packages': [
193 {
194 'package': 'chromium/third_party/android_support_test_runner',
195 'version': 'version:0.5-cr0',
196 },
197 ],
198 'condition': 'checkout_android',
199 'dep_type': 'cipd',
200 },
201
202 'src/third_party/apk-patch-size-estimator': {
203 'packages': [
204 {
205 'package': 'chromium/third_party/apk-patch-size-estimator',
206 'version': 'version:0.2-cr0',
207 },
208 ],
209 'condition': 'checkout_android',
210 'dep_type': 'cipd',
211 },
212
213 'src/third_party/bazel': {
214 'packages': [
215 {
216 'package': 'chromium/third_party/bazel',
217 'version': 'version:0.10.0',
218 },
219 ],
220 'condition': 'checkout_android',
221 'dep_type': 'cipd',
222 },
223
224 'src/third_party/bouncycastle': {
225 'packages': [
226 {
227 'package': 'chromium/third_party/bouncycastle',
228 'version': 'version:1.46-cr0',
229 },
230 ],
231 'condition': 'checkout_android',
232 'dep_type': 'cipd',
233 },
234
235 'src/third_party/byte_buddy': {
236 'packages': [
237 {
238 'package': 'chromium/third_party/byte_buddy',
239 'version': 'version:1.4.17-cr0',
240 },
241 ],
242 'condition': 'checkout_android',
243 'dep_type': 'cipd',
244 },
245
246 'src/third_party/espresso': {
247 'packages': [
248 {
249 'package': 'chromium/third_party/espresso',
250 'version': 'version:2.2.1-cr0',
251 },
252 ],
253 'condition': 'checkout_android',
254 'dep_type': 'cipd',
255 },
256
257 'src/third_party/gson': {
258 'packages': [
259 {
260 'package': 'chromium/third_party/gson',
261 'version': 'version:2.8.0-cr0',
262 },
263 ],
264 'condition': 'checkout_android',
265 'dep_type': 'cipd',
266 },
267
268 'src/third_party/guava': {
269 'packages': [
270 {
271 'package': 'chromium/third_party/guava',
272 'version': 'version:23.0-cr0',
273 },
274 ],
275 'condition': 'checkout_android',
276 'dep_type': 'cipd',
277 },
278
279 'src/third_party/hamcrest': {
280 'packages': [
281 {
282 'package': 'chromium/third_party/hamcrest',
283 'version': 'version:1.3-cr0',
284 },
285 ],
286 'condition': 'checkout_android',
287 'dep_type': 'cipd',
288 },
289
290 'src/third_party/icu4j': {
291 'packages': [
292 {
293 'package': 'chromium/third_party/icu4j',
294 'version': 'version:53.1-cr0',
295 },
296 ],
297 'condition': 'checkout_android',
298 'dep_type': 'cipd',
299 },
300
301 'src/third_party/intellij': {
302 'packages': [
303 {
304 'package': 'chromium/third_party/intellij',
305 'version': 'version:12.0-cr0',
306 },
307 ],
308 'condition': 'checkout_android',
309 'dep_type': 'cipd',
310 },
311
312 'src/third_party/javax_inject': {
313 'packages': [
314 {
315 'package': 'chromium/third_party/javax_inject',
316 'version': 'version:1-cr0',
317 },
318 ],
319 'condition': 'checkout_android',
320 'dep_type': 'cipd',
321 },
322
323 'src/third_party/objenesis': {
324 'packages': [
325 {
326 'package': 'chromium/third_party/objenesis',
327 'version': 'version:2.4-cr0',
328 },
329 ],
330 'condition': 'checkout_android',
331 'dep_type': 'cipd',
332 },
333
334 'src/third_party/ow2_asm': {
335 'packages': [
336 {
337 'package': 'chromium/third_party/ow2_asm',
338 'version': 'version:5.0.1-cr0',
339 },
340 ],
341 'condition': 'checkout_android',
342 'dep_type': 'cipd',
343 },
344
345 'src/third_party/robolectric': {
346 'packages': [
347 {
348 'package': 'chromium/third_party/robolectric',
349 'version': 'version:3.5.1',
350 },
351 ],
352 'condition': 'checkout_android',
353 'dep_type': 'cipd',
354 },
355
356 'src/third_party/sqlite4java': {
357 'packages': [
358 {
359 'package': 'chromium/third_party/sqlite4java',
360 'version': 'version:0.282-cr0',
361 },
362 ],
363 'condition': 'checkout_android',
364 'dep_type': 'cipd',
365 },
366
367 'src/third_party/xstream': {
368 'packages': [
369 {
370 'package': 'chromium/third_party/xstream',
371 'version': 'version:1.4.8-cr0',
372 },
373 ],
374 'condition': 'checkout_android',
375 'dep_type': 'cipd',
376 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000377}
kjellander200028f2017-08-17 09:54:12 -0700378
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000379hooks = [
380 {
Henrik Kjellander27576e02015-10-15 14:24:09 +0200381 # This clobbers when necessary (based on get_landmines.py). It should be
382 # an early hook but it will need to be run after syncing Chromium and
383 # setting up the links, so the script actually exists.
384 'name': 'landmines',
385 'pattern': '.',
386 'action': [
387 'python',
388 'src/build/landmines.py',
389 '--landmine-scripts',
Henrik Kjellander90fd7d82017-05-09 08:30:10 +0200390 'src/tools_webrtc/get_landmines.py',
Henrik Kjellander27576e02015-10-15 14:24:09 +0200391 '--src-dir',
392 'src',
393 ],
394 },
oprypin40e7ebd2017-07-27 01:40:18 -0700395 {
396 # Ensure that the DEPS'd "depot_tools" has its self-update capability
397 # disabled.
398 'name': 'disable_depot_tools_selfupdate',
399 'pattern': '.',
400 'action': [
401 'python',
402 'src/third_party/depot_tools/update_depot_tools_toggle.py',
403 '--disable',
404 ],
405 },
kjellander24d812d2016-11-22 07:02:11 -0800406 {
Mirko Bonadeib8a7d9d2018-02-12 08:57:35 +0100407 'name': 'sysroot_arm',
kjellander24d812d2016-11-22 07:02:11 -0800408 'pattern': '.',
Mirko Bonadeib8a7d9d2018-02-12 08:57:35 +0100409 'condition': 'checkout_linux and checkout_arm',
kjellander24d812d2016-11-22 07:02:11 -0800410 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
Mirko Bonadeib8a7d9d2018-02-12 08:57:35 +0100411 '--arch=arm'],
412 },
413 {
414 'name': 'sysroot_arm64',
415 'pattern': '.',
416 'condition': 'checkout_linux and checkout_arm64',
417 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
418 '--arch=arm64'],
419 },
420 {
421 'name': 'sysroot_x86',
422 'pattern': '.',
423 'condition': 'checkout_linux and (checkout_x86 or checkout_x64)',
424 # TODO(mbonadei): change to --arch=x86.
425 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
426 '--arch=i386'],
427 },
428 {
429 'name': 'sysroot_mips',
430 'pattern': '.',
431 'condition': 'checkout_linux and checkout_mips',
432 # TODO(mbonadei): change to --arch=mips.
433 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
434 '--arch=mipsel'],
435 },
436 {
437 'name': 'sysroot_x64',
438 'pattern': '.',
439 'condition': 'checkout_linux and checkout_x64',
440 # TODO(mbonadei): change to --arch=x64.
441 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
442 '--arch=amd64'],
kjellander24d812d2016-11-22 07:02:11 -0800443 },
444 {
Mirko Bonadeia55bdc22018-02-12 13:22:50 +0100445 # Case-insensitivity for the Win SDK. Must run before win_toolchain below.
446 'name': 'ciopfs_linux',
447 'pattern': '.',
448 'condition': 'checkout_win and host_os == "linux"',
449 'action': [ 'python',
450 'src/third_party/depot_tools/download_from_google_storage.py',
451 '--no_resume',
452 '--no_auth',
453 '--bucket', 'chromium-browser-clang/ciopfs',
454 '-s', 'src/build/ciopfs.sha1',
455 ]
456 },
457 {
Henrik Kjellander6b269752017-10-09 13:00:41 +0200458 # Update the Windows toolchain if necessary. Must run before 'clang' below.
kjellander24d812d2016-11-22 07:02:11 -0800459 'name': 'win_toolchain',
460 'pattern': '.',
Mirko Bonadeif0707cb2018-02-13 11:29:09 +0100461 'condition': 'checkout_win',
462 'action': ['python', 'src/build/vs_toolchain.py', 'update', '--force'],
kjellander24d812d2016-11-22 07:02:11 -0800463 },
kjellanderec2c93e2017-09-08 10:52:17 -0700464 {
465 # Update the Mac toolchain if necessary.
466 'name': 'mac_toolchain',
467 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200468 'condition': 'checkout_mac',
kjellanderec2c93e2017-09-08 10:52:17 -0700469 'action': ['python', 'src/build/mac_toolchain.py'],
470 },
kjellander24d812d2016-11-22 07:02:11 -0800471 # Pull binutils for linux, enabled debug fission for faster linking /
472 # debugging when used with clang on Ubuntu Precise.
473 # https://code.google.com/p/chromium/issues/detail?id=352046
474 {
475 'name': 'binutils',
476 'pattern': 'src/third_party/binutils',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200477 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800478 'action': [
479 'python',
480 'src/third_party/binutils/download.py',
481 ],
482 },
483 {
kjellander24d812d2016-11-22 07:02:11 -0800484 # Note: On Win, this should run after win_toolchain, as it may use it.
485 'name': 'clang',
486 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200487 'action': ['python', 'src/tools/clang/scripts/update.py'],
kjellander24d812d2016-11-22 07:02:11 -0800488 },
ehmaldonado293bc2a2016-11-25 04:58:47 -0800489 {
490 # Update LASTCHANGE.
491 'name': 'lastchange',
492 'pattern': '.',
493 'action': ['python', 'src/build/util/lastchange.py',
494 '-o', 'src/build/util/LASTCHANGE'],
495 },
kjellander24d812d2016-11-22 07:02:11 -0800496 # Pull GN binaries.
497 {
498 'name': 'gn_win',
499 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200500 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800501 'action': [ 'download_from_google_storage',
502 '--no_resume',
503 '--platform=win32',
504 '--no_auth',
505 '--bucket', 'chromium-gn',
506 '-s', 'src/buildtools/win/gn.exe.sha1',
507 ],
508 },
509 {
510 'name': 'gn_mac',
511 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200512 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800513 'action': [ 'download_from_google_storage',
514 '--no_resume',
515 '--platform=darwin',
516 '--no_auth',
517 '--bucket', 'chromium-gn',
518 '-s', 'src/buildtools/mac/gn.sha1',
519 ],
520 },
521 {
522 'name': 'gn_linux64',
523 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200524 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800525 'action': [ 'download_from_google_storage',
526 '--no_resume',
527 '--platform=linux*',
528 '--no_auth',
529 '--bucket', 'chromium-gn',
530 '-s', 'src/buildtools/linux64/gn.sha1',
531 ],
532 },
533 # Pull clang-format binaries using checked-in hashes.
534 {
535 'name': 'clang_format_win',
536 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200537 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800538 'action': [ 'download_from_google_storage',
539 '--no_resume',
540 '--platform=win32',
541 '--no_auth',
542 '--bucket', 'chromium-clang-format',
543 '-s', 'src/buildtools/win/clang-format.exe.sha1',
544 ],
545 },
546 {
547 'name': 'clang_format_mac',
548 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200549 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800550 'action': [ 'download_from_google_storage',
551 '--no_resume',
552 '--platform=darwin',
553 '--no_auth',
554 '--bucket', 'chromium-clang-format',
555 '-s', 'src/buildtools/mac/clang-format.sha1',
556 ],
557 },
558 {
559 'name': 'clang_format_linux',
560 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200561 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800562 'action': [ 'download_from_google_storage',
563 '--no_resume',
564 '--platform=linux*',
565 '--no_auth',
566 '--bucket', 'chromium-clang-format',
567 '-s', 'src/buildtools/linux64/clang-format.sha1',
568 ],
569 },
Oleh Prypin3ebed362017-10-27 10:14:45 +0200570 # Pull rc binaries using checked-in hashes.
571 {
572 'name': 'rc_win',
573 'pattern': '.',
574 'condition': 'checkout_win and host_os == "win"',
575 'action': [ 'python',
576 'src/third_party/depot_tools/download_from_google_storage.py',
577 '--no_resume',
578 '--no_auth',
579 '--bucket', 'chromium-browser-clang/rc',
580 '-s', 'src/build/toolchain/win/rc/win/rc.exe.sha1',
581 ],
582 },
583 {
584 'name': 'rc_mac',
585 'pattern': '.',
586 'condition': 'checkout_win and host_os == "mac"',
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/mac/rc.sha1',
593 ],
594 },
595 {
596 'name': 'rc_linux',
597 'pattern': '.',
598 'condition': 'checkout_win and host_os == "linux"',
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/linux64/rc.sha1',
605 ],
606 },
kjellander24d812d2016-11-22 07:02:11 -0800607 # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
608 {
609 'name': 'luci-go_win',
610 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200611 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800612 'action': [ 'download_from_google_storage',
613 '--no_resume',
614 '--platform=win32',
615 '--no_auth',
616 '--bucket', 'chromium-luci',
617 '-d', 'src/tools/luci-go/win64',
618 ],
619 },
620 {
621 'name': 'luci-go_mac',
622 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200623 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800624 'action': [ 'download_from_google_storage',
625 '--no_resume',
626 '--platform=darwin',
627 '--no_auth',
628 '--bucket', 'chromium-luci',
629 '-d', 'src/tools/luci-go/mac64',
630 ],
631 },
632 {
633 'name': 'luci-go_linux',
634 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200635 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800636 'action': [ 'download_from_google_storage',
637 '--no_resume',
638 '--platform=linux*',
639 '--no_auth',
640 '--bucket', 'chromium-luci',
641 '-d', 'src/tools/luci-go/linux64',
642 ],
643 },
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200644 # Pull the Syzygy binaries, used for optimization and instrumentation.
645 {
646 'name': 'syzygy-binaries',
647 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200648 'condition': 'host_os == "win"',
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200649 'action': ['python',
650 'src/build/get_syzygy_binaries.py',
651 '--output-dir=src/third_party/syzygy/binaries',
652 '--revision=a8456d9248a126881dcfb8707ca7dcdae56e1ac7',
653 '--overwrite',
654 ],
655 },
kjellander24d812d2016-11-22 07:02:11 -0800656 {
Mirko Bonadeicb2bc112017-10-10 13:28:18 +0200657 'name': 'msan_chained_origins',
658 'pattern': '.',
659 'condition': 'checkout_instrumented_libraries',
660 'action': [ 'python',
661 'src/third_party/depot_tools/download_from_google_storage.py',
662 "--no_resume",
663 "--no_auth",
664 "--bucket", "chromium-instrumented-libraries",
665 "-s", "src/third_party/instrumented_libraries/binaries/msan-chained-origins-trusty.tgz.sha1",
666 ],
667 },
668 {
669 'name': 'msan_no_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-no-origins-trusty.tgz.sha1",
678 ],
kjellander24d812d2016-11-22 07:02:11 -0800679 },
680 {
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000681 # Download test resources, i.e. video and audio files from Google Storage.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000682 'pattern': '.',
683 'action': ['download_from_google_storage',
684 '--directory',
685 '--recursive',
686 '--num_threads=10',
687 '--no_auth',
kjellander4ff818e2015-12-18 12:29:28 -0800688 '--quiet',
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000689 '--bucket', 'chromium-webrtc-resources',
690 'src/resources'],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000691 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200692 {
693 # This downloads SDK extras and puts them in the
694 # third_party/android_tools/sdk/extras directory.
695 'name': 'sdkextras',
696 'pattern': '.',
697 'condition': 'checkout_android',
698 # When adding a new sdk extras package to download, add the package
699 # directory and zip file to .gitignore in third_party/android_tools.
700 'action': ['python',
701 'src/build/android/play_services/update.py',
702 'download'
703 ],
704 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000705]
kjellander200028f2017-08-17 09:54:12 -0700706
kjellander24d812d2016-11-22 07:02:11 -0800707recursedeps = [
708 # buildtools provides clang_format, libc++, and libc++abi.
709 'src/buildtools',
710 # android_tools manages the NDK.
711 'src/third_party/android_tools',
712]
Mirko Bonadeibb547202017-09-15 06:15:48 +0200713
714# Define rules for which include paths are allowed in our source.
715include_rules = [
716 # Base is only used to build Android APK tests and may not be referenced by
717 # WebRTC production code.
718 "-base",
719 "-chromium",
720 "+external/webrtc/webrtc", # Android platform build.
Mirko Bonadeibb547202017-09-15 06:15:48 +0200721 "+libyuv",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200722 # Individual headers that will be moved out of here, see webrtc:4243.
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200723 "+call/rtp_config.h",
724 "+common_types.h",
725 "+transport.h",
726 "+typedefs.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200727
728 "+WebRTC",
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200729 "+api",
730 "+modules/include",
731 "+rtc_base",
732 "+test",
733 "+rtc_tools",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200734]
735
736# The below rules will be removed when webrtc:4243 is fixed.
737specific_include_rules = {
738 "video_receive_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200739 "+call/video_receive_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200740 ],
741 "video_send_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200742 "+call/video_send_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200743 ],
744}