blob: 6be7a51bdfe1a9dc2d9bdb7a75c2c6fcd9aa2be9 [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',
Autoroller153eebd2017-12-08 14:47:01 -080010 'chromium_revision': '55d42e80a50141c6ca9e64f64ce40ef9e06aee92',
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.
Sami Kalliomäki28c35712017-12-07 10:05:08 +010015 'swarming_revision': '4bd9152f8a975d57c972c071dfb4ddf668e02200',
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.
Autorollerdc3cdcd2017-12-08 05:45:36 -080023 'boringssl_revision': '296a61d6007688a1472798879b81517920e35dff',
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.
Autorollerf615cf62017-12-08 13:48:16 -080031 'catapult_revision': 'd624b3ced2c81d4fb4ea98a8dbb4532272cc1e0a',
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.
Autorolleredaf5aa2017-11-17 14:41:18 -080035 'libfuzzer_revision': 'a00e8070bea627f21df4a7eb1d58083f1bcfbba1',
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':
Autoroller153eebd2017-12-08 14:47:01 -080041 Var('chromium_git') + '/chromium/src/base' + '@' + '091bdb8ac78783c386ffd7ff4a0c0cb75dbbe16c',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010042 'src/build':
Autorollercd763a12017-12-08 12:47:46 -080043 Var('chromium_git') + '/chromium/src/build' + '@' + 'd1735e8e2f031bab18d81dbe0988e3d5da6257e9',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010044 'src/buildtools':
Autoroller7e3ace12017-11-30 19:46:14 -080045 Var('chromium_git') + '/chromium/buildtools.git' + '@' + '282996b8c3cf7f05bbb5209432e9fe8162c6e7ac',
Sami Kalliomäkice502392017-10-30 09:11:57 +010046 # Gradle 4.3-rc4. Used for testing Android Studio project generation for WebRTC.
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020047 'src/examples/androidtests/third_party/gradle': {
48 'url': Var('chromium_git') + '/external/github.com/gradle/gradle.git' + '@' +
Sami Kalliomäkice502392017-10-30 09:11:57 +010049 '89af43c4d0506f69980f00dde78c97b2f81437f8',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020050 'condition': 'checkout_android',
51 },
52 'src/ios': {
Autoroller153eebd2017-12-08 14:47:01 -080053 'url': Var('chromium_git') + '/chromium/src/ios' + '@' + 'f8917826b7ec184241b1fe4e519f262b7da354ad',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020054 'condition': 'checkout_ios',
55 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010056 'src/testing':
Autorollerf615cf62017-12-08 13:48:16 -080057 Var('chromium_git') + '/chromium/src/testing' + '@' + 'fa1655e92f9d6ab290a9083ef1efd3c91a45f6cb',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010058 'src/third_party':
Autoroller153eebd2017-12-08 14:47:01 -080059 Var('chromium_git') + '/chromium/src/third_party' + '@' + '6d8f800e7125b3057e7ba7bc7b0d570c9ea2d651',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020060 'src/third_party/android_tools': {
Edward Lemur1b7f9882017-11-29 19:59:02 +010061 'url': Var('chromium_git') + '/android_tools.git' + '@' + 'a2e9bc7c1b41d983577907df51d339fb1e0fd02f',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020062 'condition': 'checkout_android',
63 },
Mirko Bonadei969d4a92017-11-05 15:57:38 -080064 'src/third_party/auto/src': {
65 'url': Var('chromium_git') + '/external/github.com/google/auto.git' + '@' + '71802f2ae74dae2744abd999f8434e13055c4ee3',
66 'condition': 'checkout_android',
67 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010068 'src/third_party/boringssl/src':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020069 Var('boringssl_git') + '/boringssl.git' + '@' + Var('boringssl_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010070 'src/third_party/catapult':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020071 Var('chromium_git') + '/catapult.git' + '@' + Var('catapult_revision'),
72 'src/third_party/ced/src': {
73 'url': Var('chromium_git') + '/external/github.com/google/compact_enc_det.git' + '@' + '94c367a1fe3a13207f4b22604fcfd1d9f9ddf6d9',
74 'condition': 'checkout_android',
75 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010076 'src/third_party/colorama/src':
77 Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
oprypin40e7ebd2017-07-27 01:40:18 -070078 'src/third_party/depot_tools':
Autoroller5cfd5cb2017-12-05 21:46:43 -080079 Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '0afcd104300db48c3d996e19d8c450272eff703e',
Mirko Bonadei65ceb662017-10-13 09:45:37 +020080 'src/third_party/errorprone/lib': {
Autorolleredaf5aa2017-11-17 14:41:18 -080081 'url': Var('chromium_git') + '/chromium/third_party/errorprone.git' + '@' + '635c410fc42614b48518ae6818105bc83af88497',
Mirko Bonadei65ceb662017-10-13 09:45:37 +020082 'condition': 'checkout_android',
83 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010084 'src/third_party/ffmpeg':
Autoroller8c0cdd02017-11-30 21:46:30 -080085 Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '423f74fab02ff573b52abd542eb5dfdadaa05cf4',
Oleh Prypine39c3792017-11-14 23:09:08 +010086 'src/third_party/findbugs': {
87 'url': Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '4275d9ac8610db6b1bc9a5e887f97e41b33fac67',
88 'condition': 'checkout_android',
89 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020090 # WebRTC-only dependency (not present in Chromium).
91 'src/third_party/gtest-parallel':
Autorollere06570b2017-12-06 12:47:07 -080092 Var('chromium_git') + '/external/github.com/google/gtest-parallel' + '@' + '180c2f52341c065fd4d8418a238375ab6c91b336',
kjellander3dae7052017-05-03 06:44:36 -070093 'src/third_party/googletest/src':
Autoroller2fb64502017-12-06 07:45:33 -080094 Var('chromium_git') + '/external/github.com/google/googletest.git' + '@' + '247a3d8e5e5d403f7fcacdb8ccc71e5059f15daa',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020095 'src/third_party/icu': {
Autorollercd763a12017-12-08 12:47:46 -080096 'url': Var('chromium_git') + '/chromium/deps/icu.git' + '@' + 'e3b480d3be4446ea17011c0cdc9c4cd380a5c58f',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020097 },
98 'src/third_party/jsr-305/src': {
99 'url': Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
100 'condition': 'checkout_android',
101 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100102 'src/third_party/jsoncpp/source':
103 Var('chromium_git') + '/external/github.com/open-source-parsers/jsoncpp.git' + '@' + 'f572e8e42e22cfcf5ab0aea26574f408943edfa4', # from svn 248
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200104 'src/third_party/junit/src': {
105 'url': Var('chromium_git') + '/external/junit.git' + '@' + '64155f8a9babcfcf4263cf4d08253a1556e75481',
106 'condition': 'checkout_android',
107 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100108 # Used for building libFuzzers (only supports Linux).
109 'src/third_party/libFuzzer/src':
oprypin801f7222017-09-01 05:43:07 -0700110 Var('chromium_git') + '/chromium/llvm-project/compiler-rt/lib/fuzzer.git' + '@' + Var('libfuzzer_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100111 'src/third_party/libjpeg_turbo':
buildbot1c23e942017-04-20 09:30:13 -0700112 Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + 'a1750dbc79a8792dde3d3f7d7d8ac28ba01ac9dd',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100113 'src/third_party/libsrtp':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200114 Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + '1d45b8e599dc2db6ea3ae22dbc94a8c504652423',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100115 'src/third_party/libvpx/source/libvpx':
Autorollerdc3cdcd2017-12-08 05:45:36 -0800116 Var('chromium_git') + '/webm/libvpx.git' + '@' + '14dbdd95e686eafbe556c154c9e0bd76fe1d2d1a',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100117 'src/third_party/libyuv':
Autorollerb81eccc2017-11-17 18:48:12 -0800118 Var('chromium_git') + '/libyuv/libyuv.git' + '@' + '12c904a97c81c3ef4cab0fc8fb1f0485b4ec4e8c',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200119 'src/third_party/lss': {
120 'url': Var('chromium_git') + '/linux-syscall-support.git' + '@' + Var('lss_revision'),
121 'condition': 'checkout_android or checkout_linux',
122 },
123 'src/third_party/mockito/src': {
124 'url': Var('chromium_git') + '/external/mockito/mockito.git' + '@' + 'de83ad4598ad4cf5ea53c69a8a8053780b04b850',
125 'condition': 'checkout_android',
126 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100127 'src/third_party/openh264/src':
ssilkin1440c9f2017-09-28 03:35:45 -0700128 Var('chromium_git') + '/external/github.com/cisco/openh264' + '@' + 'a180c9d4d6f1a4830ca9eed9d159d54996bd63cb',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100129 'src/third_party/openmax_dl':
Henrik Kjellandera9d4da82017-09-14 07:28:10 +0200130 Var('webrtc_git') + '/deps/third_party/openmax.git' + '@' + Var('openmax_dl_revision'),
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200131 'src/third_party/requests/src': {
132 'url': Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
133 'condition': 'checkout_android',
134 },
135 'src/third_party/robolectric/robolectric': {
Autorollere9fe8b52017-11-30 15:46:32 -0800136 'url': Var('chromium_git') + '/external/robolectric.git' + '@' + '7e067f1112e1502caa742f7be72d37b5678d3403',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200137 'condition': 'checkout_android',
138 },
139 'src/third_party/ub-uiautomator/lib': {
140 'url': Var('chromium_git') + '/chromium/third_party/ub-uiautomator.git' + '@' + '00270549ce3161ae72ceb24712618ea28b4f9434',
141 'condition': 'checkout_android',
142 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100143 'src/third_party/usrsctp/usrsctplib':
Autoroller153eebd2017-12-08 14:47:01 -0800144 Var('chromium_git') + '/external/github.com/sctplab/usrsctp' + '@' + '0e076261b832121cf120ddc04aaff87ac3a34d30',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200145 # WebRTC-only dependency (not present in Chromium).
146 'src/third_party/winsdk_samples': {
147 'url': Var('webrtc_git') + '/deps/third_party/winsdk_samples_v71' + '@' + '2d31a1cbecc86359e6ec041fb9ff6c082babd073',
148 'condition': 'checkout_win',
149 },
150 # Dependency used by libjpeg-turbo.
151 'src/third_party/yasm/binaries': {
152 'url': Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
153 'condition': 'checkout_win',
154 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100155 'src/third_party/yasm/source/patched-yasm':
buildbotf3f7f622017-08-10 21:29:33 -0700156 Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + 'b98114e18d8b9b84586b10d24353ab8616d4c5fc',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100157 'src/tools':
Autoroller153eebd2017-12-08 14:47:01 -0800158 Var('chromium_git') + '/chromium/src/tools' + '@' + '1987e0d5193dccbb4a50946d414b3dbdd6db02b0',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100159 'src/tools/gyp':
buildbot2f0803c2017-07-25 11:40:43 -0700160 Var('chromium_git') + '/external/gyp.git' + '@' + 'd61a9397e668fa9843c4aa7da9e79460fe590bfb',
oprypin4ccd9c12017-08-30 00:42:43 -0700161 'src/tools/swarming_client':
162 Var('chromium_git') + '/infra/luci/client-py.git' + '@' + Var('swarming_revision'),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000163}
kjellander200028f2017-08-17 09:54:12 -0700164
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000165hooks = [
166 {
Henrik Kjellander27576e02015-10-15 14:24:09 +0200167 # This clobbers when necessary (based on get_landmines.py). It should be
168 # an early hook but it will need to be run after syncing Chromium and
169 # setting up the links, so the script actually exists.
170 'name': 'landmines',
171 'pattern': '.',
172 'action': [
173 'python',
174 'src/build/landmines.py',
175 '--landmine-scripts',
Henrik Kjellander90fd7d82017-05-09 08:30:10 +0200176 'src/tools_webrtc/get_landmines.py',
Henrik Kjellander27576e02015-10-15 14:24:09 +0200177 '--src-dir',
178 'src',
179 ],
180 },
oprypin40e7ebd2017-07-27 01:40:18 -0700181 {
182 # Ensure that the DEPS'd "depot_tools" has its self-update capability
183 # disabled.
184 'name': 'disable_depot_tools_selfupdate',
185 'pattern': '.',
186 'action': [
187 'python',
188 'src/third_party/depot_tools/update_depot_tools_toggle.py',
189 '--disable',
190 ],
191 },
kjellander24d812d2016-11-22 07:02:11 -0800192 {
193 # Downloads the current stable linux sysroot to build/linux/ if needed.
194 # This sysroot updates at about the same rate that the chrome build deps
195 # change. This script is a no-op except for linux users who are doing
196 # official chrome builds or cross compiling.
197 'name': 'sysroot',
198 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200199 'condition': 'checkout_linux',
kjellander24d812d2016-11-22 07:02:11 -0800200 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
201 '--running-as-hook'],
202 },
203 {
Henrik Kjellander6b269752017-10-09 13:00:41 +0200204 # Update the Windows toolchain if necessary. Must run before 'clang' below.
kjellander24d812d2016-11-22 07:02:11 -0800205 'name': 'win_toolchain',
206 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200207 # TODO(thakis): Put some condition here. Not just host_os == 'win', because
208 # we also need this for (mac|linux) -> win cross builds.
kjellander24d812d2016-11-22 07:02:11 -0800209 'action': ['python', 'src/build/vs_toolchain.py', 'update'],
210 },
kjellanderec2c93e2017-09-08 10:52:17 -0700211 {
212 # Update the Mac toolchain if necessary.
213 'name': 'mac_toolchain',
214 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200215 'condition': 'checkout_mac',
kjellanderec2c93e2017-09-08 10:52:17 -0700216 'action': ['python', 'src/build/mac_toolchain.py'],
217 },
kjellander24d812d2016-11-22 07:02:11 -0800218 # Pull binutils for linux, enabled debug fission for faster linking /
219 # debugging when used with clang on Ubuntu Precise.
220 # https://code.google.com/p/chromium/issues/detail?id=352046
221 {
222 'name': 'binutils',
223 'pattern': 'src/third_party/binutils',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200224 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800225 'action': [
226 'python',
227 'src/third_party/binutils/download.py',
228 ],
229 },
230 {
kjellander24d812d2016-11-22 07:02:11 -0800231 # Note: On Win, this should run after win_toolchain, as it may use it.
232 'name': 'clang',
233 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200234 'action': ['python', 'src/tools/clang/scripts/update.py'],
kjellander24d812d2016-11-22 07:02:11 -0800235 },
ehmaldonado293bc2a2016-11-25 04:58:47 -0800236 {
237 # Update LASTCHANGE.
238 'name': 'lastchange',
239 'pattern': '.',
240 'action': ['python', 'src/build/util/lastchange.py',
241 '-o', 'src/build/util/LASTCHANGE'],
242 },
kjellander24d812d2016-11-22 07:02:11 -0800243 # Pull GN binaries.
244 {
245 'name': 'gn_win',
246 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200247 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800248 'action': [ 'download_from_google_storage',
249 '--no_resume',
250 '--platform=win32',
251 '--no_auth',
252 '--bucket', 'chromium-gn',
253 '-s', 'src/buildtools/win/gn.exe.sha1',
254 ],
255 },
256 {
257 'name': 'gn_mac',
258 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200259 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800260 'action': [ 'download_from_google_storage',
261 '--no_resume',
262 '--platform=darwin',
263 '--no_auth',
264 '--bucket', 'chromium-gn',
265 '-s', 'src/buildtools/mac/gn.sha1',
266 ],
267 },
268 {
269 'name': 'gn_linux64',
270 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200271 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800272 'action': [ 'download_from_google_storage',
273 '--no_resume',
274 '--platform=linux*',
275 '--no_auth',
276 '--bucket', 'chromium-gn',
277 '-s', 'src/buildtools/linux64/gn.sha1',
278 ],
279 },
280 # Pull clang-format binaries using checked-in hashes.
281 {
282 'name': 'clang_format_win',
283 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200284 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800285 'action': [ 'download_from_google_storage',
286 '--no_resume',
287 '--platform=win32',
288 '--no_auth',
289 '--bucket', 'chromium-clang-format',
290 '-s', 'src/buildtools/win/clang-format.exe.sha1',
291 ],
292 },
293 {
294 'name': 'clang_format_mac',
295 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200296 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800297 'action': [ 'download_from_google_storage',
298 '--no_resume',
299 '--platform=darwin',
300 '--no_auth',
301 '--bucket', 'chromium-clang-format',
302 '-s', 'src/buildtools/mac/clang-format.sha1',
303 ],
304 },
305 {
306 'name': 'clang_format_linux',
307 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200308 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800309 'action': [ 'download_from_google_storage',
310 '--no_resume',
311 '--platform=linux*',
312 '--no_auth',
313 '--bucket', 'chromium-clang-format',
314 '-s', 'src/buildtools/linux64/clang-format.sha1',
315 ],
316 },
Oleh Prypin3ebed362017-10-27 10:14:45 +0200317 # Pull rc binaries using checked-in hashes.
318 {
319 'name': 'rc_win',
320 'pattern': '.',
321 'condition': 'checkout_win and host_os == "win"',
322 'action': [ 'python',
323 'src/third_party/depot_tools/download_from_google_storage.py',
324 '--no_resume',
325 '--no_auth',
326 '--bucket', 'chromium-browser-clang/rc',
327 '-s', 'src/build/toolchain/win/rc/win/rc.exe.sha1',
328 ],
329 },
330 {
331 'name': 'rc_mac',
332 'pattern': '.',
333 'condition': 'checkout_win and host_os == "mac"',
334 'action': [ 'python',
335 'src/third_party/depot_tools/download_from_google_storage.py',
336 '--no_resume',
337 '--no_auth',
338 '--bucket', 'chromium-browser-clang/rc',
339 '-s', 'src/build/toolchain/win/rc/mac/rc.sha1',
340 ],
341 },
342 {
343 'name': 'rc_linux',
344 'pattern': '.',
345 'condition': 'checkout_win and host_os == "linux"',
346 'action': [ 'python',
347 'src/third_party/depot_tools/download_from_google_storage.py',
348 '--no_resume',
349 '--no_auth',
350 '--bucket', 'chromium-browser-clang/rc',
351 '-s', 'src/build/toolchain/win/rc/linux64/rc.sha1',
352 ],
353 },
kjellander24d812d2016-11-22 07:02:11 -0800354 # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
355 {
356 'name': 'luci-go_win',
357 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200358 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800359 'action': [ 'download_from_google_storage',
360 '--no_resume',
361 '--platform=win32',
362 '--no_auth',
363 '--bucket', 'chromium-luci',
364 '-d', 'src/tools/luci-go/win64',
365 ],
366 },
367 {
368 'name': 'luci-go_mac',
369 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200370 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800371 'action': [ 'download_from_google_storage',
372 '--no_resume',
373 '--platform=darwin',
374 '--no_auth',
375 '--bucket', 'chromium-luci',
376 '-d', 'src/tools/luci-go/mac64',
377 ],
378 },
379 {
380 'name': 'luci-go_linux',
381 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200382 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800383 'action': [ 'download_from_google_storage',
384 '--no_resume',
385 '--platform=linux*',
386 '--no_auth',
387 '--bucket', 'chromium-luci',
388 '-d', 'src/tools/luci-go/linux64',
389 ],
390 },
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200391 # Pull the Syzygy binaries, used for optimization and instrumentation.
392 {
393 'name': 'syzygy-binaries',
394 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200395 'condition': 'host_os == "win"',
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200396 'action': ['python',
397 'src/build/get_syzygy_binaries.py',
398 '--output-dir=src/third_party/syzygy/binaries',
399 '--revision=a8456d9248a126881dcfb8707ca7dcdae56e1ac7',
400 '--overwrite',
401 ],
402 },
kjellander24d812d2016-11-22 07:02:11 -0800403 {
Mirko Bonadeicb2bc112017-10-10 13:28:18 +0200404 'name': 'msan_chained_origins',
405 'pattern': '.',
406 'condition': 'checkout_instrumented_libraries',
407 'action': [ 'python',
408 'src/third_party/depot_tools/download_from_google_storage.py',
409 "--no_resume",
410 "--no_auth",
411 "--bucket", "chromium-instrumented-libraries",
412 "-s", "src/third_party/instrumented_libraries/binaries/msan-chained-origins-trusty.tgz.sha1",
413 ],
414 },
415 {
416 'name': 'msan_no_origins',
417 'pattern': '.',
418 'condition': 'checkout_instrumented_libraries',
419 'action': [ 'python',
420 'src/third_party/depot_tools/download_from_google_storage.py',
421 "--no_resume",
422 "--no_auth",
423 "--bucket", "chromium-instrumented-libraries",
424 "-s", "src/third_party/instrumented_libraries/binaries/msan-no-origins-trusty.tgz.sha1",
425 ],
kjellander24d812d2016-11-22 07:02:11 -0800426 },
427 {
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000428 # Download test resources, i.e. video and audio files from Google Storage.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000429 'pattern': '.',
430 'action': ['download_from_google_storage',
431 '--directory',
432 '--recursive',
433 '--num_threads=10',
434 '--no_auth',
kjellander4ff818e2015-12-18 12:29:28 -0800435 '--quiet',
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000436 '--bucket', 'chromium-webrtc-resources',
437 'src/resources'],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000438 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200439 {
Edward Lemur82752c42017-11-08 19:08:54 +0100440 'name': 'Android CIPD Ensure',
441 'pattern': '.',
442 'condition': 'checkout_android',
443 'action': ['src/build/cipd/cipd_wrapper.py',
444 '--chromium-root', 'src',
445 '--ensure-file', 'src/build/cipd/android/android.ensure',
446 ],
447 },
448 {
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200449 # This downloads SDK extras and puts them in the
450 # third_party/android_tools/sdk/extras directory.
451 'name': 'sdkextras',
452 'pattern': '.',
453 'condition': 'checkout_android',
454 # When adding a new sdk extras package to download, add the package
455 # directory and zip file to .gitignore in third_party/android_tools.
456 'action': ['python',
457 'src/build/android/play_services/update.py',
458 'download'
459 ],
460 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000461]
kjellander200028f2017-08-17 09:54:12 -0700462
kjellander24d812d2016-11-22 07:02:11 -0800463recursedeps = [
464 # buildtools provides clang_format, libc++, and libc++abi.
465 'src/buildtools',
466 # android_tools manages the NDK.
467 'src/third_party/android_tools',
468]
Mirko Bonadeibb547202017-09-15 06:15:48 +0200469
470# Define rules for which include paths are allowed in our source.
471include_rules = [
472 # Base is only used to build Android APK tests and may not be referenced by
473 # WebRTC production code.
474 "-base",
475 "-chromium",
476 "+external/webrtc/webrtc", # Android platform build.
Mirko Bonadeibb547202017-09-15 06:15:48 +0200477 "+libyuv",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200478 # Individual headers that will be moved out of here, see webrtc:4243.
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200479 "+call/rtp_config.h",
480 "+common_types.h",
481 "+transport.h",
482 "+typedefs.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200483
484 "+WebRTC",
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200485 "+api",
486 "+modules/include",
487 "+rtc_base",
488 "+test",
489 "+rtc_tools",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200490]
491
492# The below rules will be removed when webrtc:4243 is fixed.
493specific_include_rules = {
494 "video_receive_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200495 "+call/video_receive_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200496 ],
497 "video_send_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200498 "+call/video_send_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200499 ],
500}