blob: 778a06658ebf114b5f968afe428d770f5a430471 [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',
Autoroller0c1c6e22017-10-11 03:41:14 -070010 'chromium_revision': '961817f7c152c667729417f4aedebd8602df042e',
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.
buildbotb600d872017-09-11 06:55:38 -070015 'swarming_revision': '5e8001d9a710121ce7a68efd0804430a34b4f9e4',
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.
19 'openmax_dl_revision': '7acede9c039ea5d14cf326f44aad1245b9e674a7',
20 # 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.
Autorollere19d1ba2017-10-09 02:55:35 -070023 'boringssl_revision': '12fdd08a401d2ef562612638abd016f8b5794cc7',
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.
kjellander251eb272017-04-05 22:49:24 -070027 'lss_revision': '63f24c8221a229f677d26ebe8f3d1528a9d787ac',
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.
Autoroller0c1c6e22017-10-11 03:41:14 -070031 'catapult_revision': '54300395720040d73b5173748015c3950c6d1ab7',
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.
Autorollere19d1ba2017-10-09 02:55:35 -070035 'libfuzzer_revision': '06fb50cc1f0197398c8a70658928a3b91912e68a',
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000036}
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000037deps = {
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010038 # TODO(kjellander): Move this to be Android-only once the libevent dependency
39 # in base/third_party/libevent is solved.
40 'src/base':
Autoroller0c1c6e22017-10-11 03:41:14 -070041 Var('chromium_git') + '/chromium/src/base' + '@' + '8a2e6ca6a27b660c3955c1fdfc01e5084e90ec76',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010042 'src/build':
Autoroller0c1c6e22017-10-11 03:41:14 -070043 Var('chromium_git') + '/chromium/src/build' + '@' + '66371a176b29144bbfc5abfca3ebfcc12138f9da',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010044 'src/buildtools':
Autorollere10c01c2017-09-21 05:49:56 -070045 Var('chromium_git') + '/chromium/buildtools.git' + '@' + 'f6d165d9d842ddd29056c127a5f3a3c5d8e0d2e3',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020046 # Gradle 3.5.0. Used for testing Android Studio project generation for WebRTC.
47 'src/examples/androidtests/third_party/gradle': {
48 'url': Var('chromium_git') + '/external/github.com/gradle/gradle.git' + '@' +
49 '941559e020f6c357ebb08d5c67acdb858a3defc2',
50 'condition': 'checkout_android',
51 },
52 'src/ios': {
Autoroller0c1c6e22017-10-11 03:41:14 -070053 'url': Var('chromium_git') + '/chromium/src/ios' + '@' + 'fe5b1b2962f3f7f3f0a5538848b43dfe5024b99d',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020054 'condition': 'checkout_ios',
55 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010056 'src/testing':
Autoroller0c1c6e22017-10-11 03:41:14 -070057 Var('chromium_git') + '/chromium/src/testing' + '@' + '8d5bbc677eda8c9a50f7f810281b24d9af189aec',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010058 'src/third_party':
Autoroller0c1c6e22017-10-11 03:41:14 -070059 Var('chromium_git') + '/chromium/src/third_party' + '@' + 'dd57a5da7dddd0de100a301295d95044d68e633b',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020060 'src/third_party/android_tools': {
61 'url': Var('chromium_git') + '/android_tools.git' + '@' + 'ca9dc7245b888c75307f0619e4a39fb46a82de66',
62 'condition': 'checkout_android',
63 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010064 'src/third_party/boringssl/src':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020065 Var('boringssl_git') + '/boringssl.git' + '@' + Var('boringssl_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010066 'src/third_party/catapult':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020067 Var('chromium_git') + '/catapult.git' + '@' + Var('catapult_revision'),
68 'src/third_party/ced/src': {
69 'url': Var('chromium_git') + '/external/github.com/google/compact_enc_det.git' + '@' + '94c367a1fe3a13207f4b22604fcfd1d9f9ddf6d9',
70 'condition': 'checkout_android',
71 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010072 'src/third_party/colorama/src':
73 Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
oprypin40e7ebd2017-07-27 01:40:18 -070074 'src/third_party/depot_tools':
Autoroller0c1c6e22017-10-11 03:41:14 -070075 Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + 'cd27f01b1a49e4b02bad0640b6f4bd50930bcf74',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010076 'src/third_party/ffmpeg':
Autoroller0c1c6e22017-10-11 03:41:14 -070077 Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '62ff55193a061c21c039a2ba0b39641136912c2e',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020078 # WebRTC-only dependency (not present in Chromium).
79 'src/third_party/gtest-parallel':
80 Var('chromium_git') + '/external/github.com/google/gtest-parallel' + '@' + 'ee2027381105650fb1c66b2b121ba00b79e84d5c',
kjellander3dae7052017-05-03 06:44:36 -070081 'src/third_party/googletest/src':
buildbot8f82e632017-08-30 21:18:15 -070082 Var('chromium_git') + '/external/github.com/google/googletest.git' + '@' + '7f8fefabedf2965980585be8c2bff97458f28e0b',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020083 'src/third_party/icu': {
Autoroller0c1c6e22017-10-11 03:41:14 -070084 'url': Var('chromium_git') + '/chromium/deps/icu.git' + '@' + '7f873c45c23fa1baf1a1d90f449c5c4c34bd8ba6',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020085 },
86 'src/third_party/jsr-305/src': {
87 'url': Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
88 'condition': 'checkout_android',
89 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010090 'src/third_party/jsoncpp/source':
91 Var('chromium_git') + '/external/github.com/open-source-parsers/jsoncpp.git' + '@' + 'f572e8e42e22cfcf5ab0aea26574f408943edfa4', # from svn 248
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020092 'src/third_party/junit/src': {
93 'url': Var('chromium_git') + '/external/junit.git' + '@' + '64155f8a9babcfcf4263cf4d08253a1556e75481',
94 'condition': 'checkout_android',
95 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010096 # Used for building libFuzzers (only supports Linux).
97 'src/third_party/libFuzzer/src':
oprypin801f7222017-09-01 05:43:07 -070098 Var('chromium_git') + '/chromium/llvm-project/compiler-rt/lib/fuzzer.git' + '@' + Var('libfuzzer_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010099 'src/third_party/libjpeg_turbo':
buildbot1c23e942017-04-20 09:30:13 -0700100 Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + 'a1750dbc79a8792dde3d3f7d7d8ac28ba01ac9dd',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100101 'src/third_party/libsrtp':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200102 Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + '1d45b8e599dc2db6ea3ae22dbc94a8c504652423',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100103 'src/third_party/libvpx/source/libvpx':
Oleh Prypin4627a332017-10-06 01:11:00 +0200104 Var('chromium_git') + '/webm/libvpx.git' + '@' + 'fe7b869104806752a26a262dc60923639d9a384f',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100105 'src/third_party/libyuv':
Autorolleraa0fe122017-09-20 17:49:57 -0700106 Var('chromium_git') + '/libyuv/libyuv.git' + '@' + '5b1af9a33545895ea12c52bf007f17914de19173',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200107 'src/third_party/lss': {
108 'url': Var('chromium_git') + '/linux-syscall-support.git' + '@' + Var('lss_revision'),
109 'condition': 'checkout_android or checkout_linux',
110 },
111 'src/third_party/mockito/src': {
112 'url': Var('chromium_git') + '/external/mockito/mockito.git' + '@' + 'de83ad4598ad4cf5ea53c69a8a8053780b04b850',
113 'condition': 'checkout_android',
114 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100115 'src/third_party/openh264/src':
ssilkin1440c9f2017-09-28 03:35:45 -0700116 Var('chromium_git') + '/external/github.com/cisco/openh264' + '@' + 'a180c9d4d6f1a4830ca9eed9d159d54996bd63cb',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100117 'src/third_party/openmax_dl':
Henrik Kjellandera9d4da82017-09-14 07:28:10 +0200118 Var('webrtc_git') + '/deps/third_party/openmax.git' + '@' + Var('openmax_dl_revision'),
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200119 'src/third_party/requests/src': {
120 'url': Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
121 'condition': 'checkout_android',
122 },
123 'src/third_party/robolectric/robolectric': {
124 'url': Var('chromium_git') + '/external/robolectric.git' + '@' + 'b02c65cc6d7465f58f0de48a39914aa905692afa',
125 'condition': 'checkout_android',
126 },
127 'src/third_party/ub-uiautomator/lib': {
128 'url': Var('chromium_git') + '/chromium/third_party/ub-uiautomator.git' + '@' + '00270549ce3161ae72ceb24712618ea28b4f9434',
129 'condition': 'checkout_android',
130 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100131 'src/third_party/usrsctp/usrsctplib':
buildbot1b20dc42017-08-07 12:55:14 -0700132 Var('chromium_git') + '/external/github.com/sctplab/usrsctp' + '@' + 'f4819e1b177f7bfdd761c147f5a649b9f1a78c06',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200133 # WebRTC-only dependency (not present in Chromium).
134 'src/third_party/winsdk_samples': {
135 'url': Var('webrtc_git') + '/deps/third_party/winsdk_samples_v71' + '@' + '2d31a1cbecc86359e6ec041fb9ff6c082babd073',
136 'condition': 'checkout_win',
137 },
138 # Dependency used by libjpeg-turbo.
139 'src/third_party/yasm/binaries': {
140 'url': Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
141 'condition': 'checkout_win',
142 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100143 'src/third_party/yasm/source/patched-yasm':
buildbotf3f7f622017-08-10 21:29:33 -0700144 Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + 'b98114e18d8b9b84586b10d24353ab8616d4c5fc',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100145 'src/tools':
Autoroller0c1c6e22017-10-11 03:41:14 -0700146 Var('chromium_git') + '/chromium/src/tools' + '@' + 'c5a868d906bf45d3dc85338be6933e9f8c65d776',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100147 'src/tools/gyp':
buildbot2f0803c2017-07-25 11:40:43 -0700148 Var('chromium_git') + '/external/gyp.git' + '@' + 'd61a9397e668fa9843c4aa7da9e79460fe590bfb',
oprypin4ccd9c12017-08-30 00:42:43 -0700149 'src/tools/swarming_client':
150 Var('chromium_git') + '/infra/luci/client-py.git' + '@' + Var('swarming_revision'),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000151}
kjellander200028f2017-08-17 09:54:12 -0700152
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000153hooks = [
154 {
Henrik Kjellander27576e02015-10-15 14:24:09 +0200155 # This clobbers when necessary (based on get_landmines.py). It should be
156 # an early hook but it will need to be run after syncing Chromium and
157 # setting up the links, so the script actually exists.
158 'name': 'landmines',
159 'pattern': '.',
160 'action': [
161 'python',
162 'src/build/landmines.py',
163 '--landmine-scripts',
Henrik Kjellander90fd7d82017-05-09 08:30:10 +0200164 'src/tools_webrtc/get_landmines.py',
Henrik Kjellander27576e02015-10-15 14:24:09 +0200165 '--src-dir',
166 'src',
167 ],
168 },
oprypin40e7ebd2017-07-27 01:40:18 -0700169 {
170 # Ensure that the DEPS'd "depot_tools" has its self-update capability
171 # disabled.
172 'name': 'disable_depot_tools_selfupdate',
173 'pattern': '.',
174 'action': [
175 'python',
176 'src/third_party/depot_tools/update_depot_tools_toggle.py',
177 '--disable',
178 ],
179 },
kjellander24d812d2016-11-22 07:02:11 -0800180 {
181 # Downloads the current stable linux sysroot to build/linux/ if needed.
182 # This sysroot updates at about the same rate that the chrome build deps
183 # change. This script is a no-op except for linux users who are doing
184 # official chrome builds or cross compiling.
185 'name': 'sysroot',
186 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200187 'condition': 'checkout_linux',
kjellander24d812d2016-11-22 07:02:11 -0800188 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
189 '--running-as-hook'],
190 },
191 {
Henrik Kjellander6b269752017-10-09 13:00:41 +0200192 # Update the Windows toolchain if necessary. Must run before 'clang' below.
kjellander24d812d2016-11-22 07:02:11 -0800193 'name': 'win_toolchain',
194 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200195 # TODO(thakis): Put some condition here. Not just host_os == 'win', because
196 # we also need this for (mac|linux) -> win cross builds.
kjellander24d812d2016-11-22 07:02:11 -0800197 'action': ['python', 'src/build/vs_toolchain.py', 'update'],
198 },
kjellanderec2c93e2017-09-08 10:52:17 -0700199 {
200 # Update the Mac toolchain if necessary.
201 'name': 'mac_toolchain',
202 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200203 'condition': 'checkout_mac',
kjellanderec2c93e2017-09-08 10:52:17 -0700204 'action': ['python', 'src/build/mac_toolchain.py'],
205 },
kjellander24d812d2016-11-22 07:02:11 -0800206 # Pull binutils for linux, enabled debug fission for faster linking /
207 # debugging when used with clang on Ubuntu Precise.
208 # https://code.google.com/p/chromium/issues/detail?id=352046
209 {
210 'name': 'binutils',
211 'pattern': 'src/third_party/binutils',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200212 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800213 'action': [
214 'python',
215 'src/third_party/binutils/download.py',
216 ],
217 },
218 {
kjellander24d812d2016-11-22 07:02:11 -0800219 # Note: On Win, this should run after win_toolchain, as it may use it.
220 'name': 'clang',
221 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200222 'action': ['python', 'src/tools/clang/scripts/update.py'],
kjellander24d812d2016-11-22 07:02:11 -0800223 },
ehmaldonado293bc2a2016-11-25 04:58:47 -0800224 {
225 # Update LASTCHANGE.
226 'name': 'lastchange',
227 'pattern': '.',
228 'action': ['python', 'src/build/util/lastchange.py',
229 '-o', 'src/build/util/LASTCHANGE'],
230 },
kjellander24d812d2016-11-22 07:02:11 -0800231 # Pull GN binaries.
232 {
233 'name': 'gn_win',
234 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200235 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800236 'action': [ 'download_from_google_storage',
237 '--no_resume',
238 '--platform=win32',
239 '--no_auth',
240 '--bucket', 'chromium-gn',
241 '-s', 'src/buildtools/win/gn.exe.sha1',
242 ],
243 },
244 {
245 'name': 'gn_mac',
246 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200247 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800248 'action': [ 'download_from_google_storage',
249 '--no_resume',
250 '--platform=darwin',
251 '--no_auth',
252 '--bucket', 'chromium-gn',
253 '-s', 'src/buildtools/mac/gn.sha1',
254 ],
255 },
256 {
257 'name': 'gn_linux64',
258 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200259 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800260 'action': [ 'download_from_google_storage',
261 '--no_resume',
262 '--platform=linux*',
263 '--no_auth',
264 '--bucket', 'chromium-gn',
265 '-s', 'src/buildtools/linux64/gn.sha1',
266 ],
267 },
268 # Pull clang-format binaries using checked-in hashes.
269 {
270 'name': 'clang_format_win',
271 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200272 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800273 'action': [ 'download_from_google_storage',
274 '--no_resume',
275 '--platform=win32',
276 '--no_auth',
277 '--bucket', 'chromium-clang-format',
278 '-s', 'src/buildtools/win/clang-format.exe.sha1',
279 ],
280 },
281 {
282 'name': 'clang_format_mac',
283 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200284 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800285 'action': [ 'download_from_google_storage',
286 '--no_resume',
287 '--platform=darwin',
288 '--no_auth',
289 '--bucket', 'chromium-clang-format',
290 '-s', 'src/buildtools/mac/clang-format.sha1',
291 ],
292 },
293 {
294 'name': 'clang_format_linux',
295 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200296 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800297 'action': [ 'download_from_google_storage',
298 '--no_resume',
299 '--platform=linux*',
300 '--no_auth',
301 '--bucket', 'chromium-clang-format',
302 '-s', 'src/buildtools/linux64/clang-format.sha1',
303 ],
304 },
305 # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
306 {
307 'name': 'luci-go_win',
308 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200309 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800310 'action': [ 'download_from_google_storage',
311 '--no_resume',
312 '--platform=win32',
313 '--no_auth',
314 '--bucket', 'chromium-luci',
315 '-d', 'src/tools/luci-go/win64',
316 ],
317 },
318 {
319 'name': 'luci-go_mac',
320 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200321 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800322 'action': [ 'download_from_google_storage',
323 '--no_resume',
324 '--platform=darwin',
325 '--no_auth',
326 '--bucket', 'chromium-luci',
327 '-d', 'src/tools/luci-go/mac64',
328 ],
329 },
330 {
331 'name': 'luci-go_linux',
332 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200333 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800334 'action': [ 'download_from_google_storage',
335 '--no_resume',
336 '--platform=linux*',
337 '--no_auth',
338 '--bucket', 'chromium-luci',
339 '-d', 'src/tools/luci-go/linux64',
340 ],
341 },
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200342 # Pull the Syzygy binaries, used for optimization and instrumentation.
343 {
344 'name': 'syzygy-binaries',
345 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200346 'condition': 'host_os == "win"',
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200347 'action': ['python',
348 'src/build/get_syzygy_binaries.py',
349 '--output-dir=src/third_party/syzygy/binaries',
350 '--revision=a8456d9248a126881dcfb8707ca7dcdae56e1ac7',
351 '--overwrite',
352 ],
353 },
kjellander24d812d2016-11-22 07:02:11 -0800354 {
Mirko Bonadeicb2bc112017-10-10 13:28:18 +0200355 'name': 'msan_chained_origins',
356 'pattern': '.',
357 'condition': 'checkout_instrumented_libraries',
358 'action': [ 'python',
359 'src/third_party/depot_tools/download_from_google_storage.py',
360 "--no_resume",
361 "--no_auth",
362 "--bucket", "chromium-instrumented-libraries",
363 "-s", "src/third_party/instrumented_libraries/binaries/msan-chained-origins-trusty.tgz.sha1",
364 ],
365 },
366 {
367 'name': 'msan_no_origins',
368 'pattern': '.',
369 'condition': 'checkout_instrumented_libraries',
370 'action': [ 'python',
371 'src/third_party/depot_tools/download_from_google_storage.py',
372 "--no_resume",
373 "--no_auth",
374 "--bucket", "chromium-instrumented-libraries",
375 "-s", "src/third_party/instrumented_libraries/binaries/msan-no-origins-trusty.tgz.sha1",
376 ],
kjellander24d812d2016-11-22 07:02:11 -0800377 },
378 {
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000379 # Download test resources, i.e. video and audio files from Google Storage.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000380 'pattern': '.',
381 'action': ['download_from_google_storage',
382 '--directory',
383 '--recursive',
384 '--num_threads=10',
385 '--no_auth',
kjellander4ff818e2015-12-18 12:29:28 -0800386 '--quiet',
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000387 '--bucket', 'chromium-webrtc-resources',
388 'src/resources'],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000389 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200390 {
391 # This downloads SDK extras and puts them in the
392 # third_party/android_tools/sdk/extras directory.
393 'name': 'sdkextras',
394 'pattern': '.',
395 'condition': 'checkout_android',
396 # When adding a new sdk extras package to download, add the package
397 # directory and zip file to .gitignore in third_party/android_tools.
398 'action': ['python',
399 'src/build/android/play_services/update.py',
400 'download'
401 ],
402 },
403 {
404 'name': 'intellij',
405 'pattern': '.',
406 'condition': 'checkout_android',
407 'action': ['python',
408 'src/build/android/update_deps/update_third_party_deps.py',
409 'download',
410 '-b', 'chromium-intellij',
411 '-l', 'third_party/intellij'
412 ],
413 },
414 {
415 'name': 'javax_inject',
416 'pattern': '.',
417 'condition': 'checkout_android',
418 'action': ['python',
419 'src/build/android/update_deps/update_third_party_deps.py',
420 'download',
421 '-b', 'chromium-javax-inject',
422 '-l', 'third_party/javax_inject'
423 ],
424 },
425 {
426 'name': 'hamcrest',
427 'pattern': '.',
428 'condition': 'checkout_android',
429 'action': ['python',
430 'src/build/android/update_deps/update_third_party_deps.py',
431 'download',
432 '-b', 'chromium-hamcrest',
433 '-l', 'third_party/hamcrest'
434 ],
435 },
436 {
437 'name': 'guava',
438 'pattern': '.',
439 'condition': 'checkout_android',
440 'action': ['python',
441 'src/build/android/update_deps/update_third_party_deps.py',
442 'download',
443 '-b', 'chromium-guava',
444 '-l', 'third_party/guava'
445 ],
446 },
447 {
448 'name': 'android_support_test_runner',
449 'pattern': '.',
450 'condition': 'checkout_android',
451 'action': ['python',
452 'src/build/android/update_deps/update_third_party_deps.py',
453 'download',
454 '-b', 'chromium-android-support-test-runner',
455 '-l', 'third_party/android_support_test_runner'
456 ],
457 },
458 {
459 'name': 'byte_buddy',
460 'pattern': '.',
461 'condition': 'checkout_android',
462 'action': ['python',
463 'src/build/android/update_deps/update_third_party_deps.py',
464 'download',
465 '-b', 'chromium-byte-buddy',
466 '-l', 'third_party/byte_buddy'
467 ],
468 },
469 {
470 'name': 'espresso',
471 'pattern': '.',
472 'condition': 'checkout_android',
473 'action': ['python',
474 'src/build/android/update_deps/update_third_party_deps.py',
475 'download',
476 '-b', 'chromium-espresso',
477 '-l', 'third_party/espresso'
478 ],
479 },
480 {
481 'name': 'robolectric_libs',
482 'pattern': '.',
483 'condition': 'checkout_android',
484 'action': ['python',
485 'src/build/android/update_deps/update_third_party_deps.py',
486 'download',
487 '-b', 'chromium-robolectric',
488 '-l', 'third_party/robolectric'
489 ],
490 },
491 {
492 'name': 'apache_velocity',
493 'pattern': '.',
494 'condition': 'checkout_android',
495 'action': ['python',
496 'src/build/android/update_deps/update_third_party_deps.py',
497 'download',
498 '-b', 'chromium-apache-velocity',
499 '-l', 'third_party/apache_velocity'
500 ],
501 },
502 {
503 'name': 'ow2_asm',
504 'pattern': '.',
505 'condition': 'checkout_android',
506 'action': ['python',
507 'src/build/android/update_deps/update_third_party_deps.py',
508 'download',
509 '-b', 'chromium-ow2-asm',
510 '-l', 'third_party/ow2_asm'
511 ],
512 },
513 {
514 'name': 'desugar',
515 'pattern': '.',
516 'condition': 'checkout_android',
517 'action': ['python',
518 'src/build/android/update_deps/update_third_party_deps.py',
519 'download',
520 '-b', 'chromium-android-tools/bazel/desugar',
521 '-l', 'third_party/bazel/desugar'
522 ],
523 },
524 {
525 'name': 'icu4j',
526 'pattern': '.',
527 'condition': 'checkout_android',
528 'action': ['python',
529 'src/build/android/update_deps/update_third_party_deps.py',
530 'download',
531 '-b', 'chromium-icu4j',
532 '-l', 'third_party/icu4j'
533 ],
534 },
535 {
536 'name': 'accessibility_test_framework',
537 'pattern': '.',
538 'condition': 'checkout_android',
539 'action': ['python',
540 'src/build/android/update_deps/update_third_party_deps.py',
541 'download',
542 '-b', 'chromium-accessibility-test-framework',
543 '-l', 'third_party/accessibility_test_framework'
544 ],
545 },
546 {
547 'name': 'bouncycastle',
548 'pattern': '.',
549 'condition': 'checkout_android',
550 'action': ['python',
551 'src/build/android/update_deps/update_third_party_deps.py',
552 'download',
553 '-b', 'chromium-bouncycastle',
554 '-l', 'third_party/bouncycastle'
555 ],
556 },
557 {
558 'name': 'sqlite4java',
559 'pattern': '.',
560 'condition': 'checkout_android',
561 'action': ['python',
562 'src/build/android/update_deps/update_third_party_deps.py',
563 'download',
564 '-b', 'chromium-sqlite4java',
565 '-l', 'third_party/sqlite4java'
566 ],
567 },
568 {
569 'name': 'xstream',
570 'pattern': '.',
571 'condition': 'checkout_android',
572 'action': ['python',
573 'src/build/android/update_deps/update_third_party_deps.py',
574 'download',
575 '-b', 'chromium-robolectric',
576 '-l', 'third_party/xstream'
577 ],
578 },
579 {
580 'name': 'objenesis',
581 'pattern': '.',
582 'condition': 'checkout_android',
583 'action': ['python',
584 'src/build/android/update_deps/update_third_party_deps.py',
585 'download',
586 '-b', 'chromium-objenesis',
587 '-l', 'third_party/objenesis'
588 ],
589 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000590]
kjellander200028f2017-08-17 09:54:12 -0700591
kjellander24d812d2016-11-22 07:02:11 -0800592recursedeps = [
593 # buildtools provides clang_format, libc++, and libc++abi.
594 'src/buildtools',
595 # android_tools manages the NDK.
596 'src/third_party/android_tools',
597]
Mirko Bonadeibb547202017-09-15 06:15:48 +0200598
599# Define rules for which include paths are allowed in our source.
600include_rules = [
601 # Base is only used to build Android APK tests and may not be referenced by
602 # WebRTC production code.
603 "-base",
604 "-chromium",
605 "+external/webrtc/webrtc", # Android platform build.
Mirko Bonadeibb547202017-09-15 06:15:48 +0200606 "+libyuv",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200607 # Individual headers that will be moved out of here, see webrtc:4243.
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200608 "+call/rtp_config.h",
609 "+common_types.h",
610 "+transport.h",
611 "+typedefs.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200612
613 "+WebRTC",
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200614 "+api",
615 "+modules/include",
616 "+rtc_base",
617 "+test",
618 "+rtc_tools",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200619]
620
621# The below rules will be removed when webrtc:4243 is fixed.
622specific_include_rules = {
623 "video_receive_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200624 "+call/video_receive_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200625 ],
626 "video_send_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200627 "+call/video_send_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200628 ],
629}