blob: 8f9a64746c225f4a63c1f95eb1fd297ac6520d6e [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',
Autoroller88a38e322018-02-09 05:44:09 -080010 'chromium_revision': '24887ed1abf83620da42096dc5b4d43d8f80be8d',
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.
Autoroller5a943622017-12-13 17:46:26 -080019 'openmax_dl_revision': 'b611996df3b8f6b151339d22c12c21f167009cb6',
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.
Autorollerecfe2e82018-02-08 16:45:46 -080023 'boringssl_revision': '61dedd681501616de5928fe5c0eac6640d4de0c1',
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.
Autorollerecfe2e82018-02-08 16:45:46 -080031 'catapult_revision': 'e653c4b823f98c26bd29e4cf4e3bdacdffb4b041',
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.
Autorollerb5070022017-12-15 12:46:39 -080035 'libfuzzer_revision': 'ba2c1cd6f87accb32b5dbce297387c56a2e53a2f',
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':
Autoroller88a38e322018-02-09 05:44:09 -080041 Var('chromium_git') + '/chromium/src/base' + '@' + 'f1f7eec82e66a474e73af2cbe569aa7aa252ae15',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010042 'src/build':
Autoroller88a38e322018-02-09 05:44:09 -080043 Var('chromium_git') + '/chromium/src/build' + '@' + 'c7a79acbd202c85ddafbacdcde0f7926a53ae792',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010044 'src/buildtools':
Autoroller9f5abb62018-02-06 04:44:48 -080045 Var('chromium_git') + '/chromium/buildtools.git' + '@' + '2637e7e911524502ea862870f52c36ed2723a25f',
Mirko Bonadeid3fb8642018-01-22 08:50:32 +010046 # Gradle 4.3-rc4. 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 '89af43c4d0506f69980f00dde78c97b2f81437f8',
50 'condition': 'checkout_android',
51 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020052 'src/ios': {
Autorollerecfe2e82018-02-08 16:45:46 -080053 'url': Var('chromium_git') + '/chromium/src/ios' + '@' + '09590114049a704b094058cd2a6747346821504c',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020054 'condition': 'checkout_ios',
55 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010056 'src/testing':
Autoroller88a38e322018-02-09 05:44:09 -080057 Var('chromium_git') + '/chromium/src/testing' + '@' + '81576293e60c168fc2e7f4c719bedd614144e766',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010058 'src/third_party':
Autoroller88a38e322018-02-09 05:44:09 -080059 Var('chromium_git') + '/chromium/src/third_party' + '@' + '50ccc080529583c9e1fd9a7e739a6bc1f46dffe5',
Edward Lemur55536f22018-01-11 14:14:26 +010060 'src/third_party/android_ndk': {
61 'url': Var('chromium_git') + '/android_ndk.git' + '@' + 'e951c37287c7d8cd915bf8d4149fd4a06d808b55',
62 'condition': 'checkout_android',
63 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020064 'src/third_party/android_tools': {
Autorollerecfe2e82018-02-08 16:45:46 -080065 'url': Var('chromium_git') + '/android_tools.git' + '@' + '9a70d48fcdd68cd0e7e968f342bd767ee6323bd1',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020066 'condition': 'checkout_android',
67 },
Mirko Bonadei969d4a92017-11-05 15:57:38 -080068 'src/third_party/auto/src': {
Autoroller23b5cc92018-01-18 12:45:10 -080069 'url': Var('chromium_git') + '/external/github.com/google/auto.git' + '@' + '8a81a858ae7b78a1aef71ac3905fade0bbd64e82',
Mirko Bonadei969d4a92017-11-05 15:57:38 -080070 'condition': 'checkout_android',
71 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010072 'src/third_party/boringssl/src':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020073 Var('boringssl_git') + '/boringssl.git' + '@' + Var('boringssl_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010074 'src/third_party/catapult':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020075 Var('chromium_git') + '/catapult.git' + '@' + Var('catapult_revision'),
76 'src/third_party/ced/src': {
77 'url': Var('chromium_git') + '/external/github.com/google/compact_enc_det.git' + '@' + '94c367a1fe3a13207f4b22604fcfd1d9f9ddf6d9',
78 'condition': 'checkout_android',
79 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010080 'src/third_party/colorama/src':
81 Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
oprypin40e7ebd2017-07-27 01:40:18 -070082 'src/third_party/depot_tools':
Autorollerecfe2e82018-02-08 16:45:46 -080083 Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '71236c3af69153e838b29699a072bc03fa33eab3',
Mirko Bonadei65ceb662017-10-13 09:45:37 +020084 'src/third_party/errorprone/lib': {
Autoroller2f510ad2018-01-15 07:44:21 -080085 'url': Var('chromium_git') + '/chromium/third_party/errorprone.git' + '@' + 'ecc57c2b00627667874744b9ad8efe10734d97a8',
Mirko Bonadei65ceb662017-10-13 09:45:37 +020086 'condition': 'checkout_android',
87 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +010088 'src/third_party/ffmpeg':
Autorollerdba73702018-01-31 20:44:26 -080089 Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + 'f5964c36e1dc41b8b91380b5eff0659e3a5a1549',
Oleh Prypine39c3792017-11-14 23:09:08 +010090 'src/third_party/findbugs': {
91 'url': Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '4275d9ac8610db6b1bc9a5e887f97e41b33fac67',
92 'condition': 'checkout_android',
93 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020094 # WebRTC-only dependency (not present in Chromium).
95 'src/third_party/gtest-parallel':
Autorollere06570b2017-12-06 12:47:07 -080096 Var('chromium_git') + '/external/github.com/google/gtest-parallel' + '@' + '180c2f52341c065fd4d8418a238375ab6c91b336',
kjellander3dae7052017-05-03 06:44:36 -070097 'src/third_party/googletest/src':
Autoroller9f5abb62018-02-06 04:44:48 -080098 Var('chromium_git') + '/external/github.com/google/googletest.git' + '@' + 'ea31cb15f0c2ab9f5f5b18e82311eb522989d747',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +020099 'src/third_party/icu': {
Autoroller9f5abb62018-02-06 04:44:48 -0800100 'url': Var('chromium_git') + '/chromium/deps/icu.git' + '@' + 'd888fd2a1be890f4d35e43f68d6d79f42519a357',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200101 },
102 'src/third_party/jsr-305/src': {
103 'url': Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
104 'condition': 'checkout_android',
105 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100106 'src/third_party/jsoncpp/source':
107 Var('chromium_git') + '/external/github.com/open-source-parsers/jsoncpp.git' + '@' + 'f572e8e42e22cfcf5ab0aea26574f408943edfa4', # from svn 248
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200108 'src/third_party/junit/src': {
109 'url': Var('chromium_git') + '/external/junit.git' + '@' + '64155f8a9babcfcf4263cf4d08253a1556e75481',
110 'condition': 'checkout_android',
111 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100112 # Used for building libFuzzers (only supports Linux).
113 'src/third_party/libFuzzer/src':
oprypin801f7222017-09-01 05:43:07 -0700114 Var('chromium_git') + '/chromium/llvm-project/compiler-rt/lib/fuzzer.git' + '@' + Var('libfuzzer_revision'),
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100115 'src/third_party/libjpeg_turbo':
buildbot1c23e942017-04-20 09:30:13 -0700116 Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + 'a1750dbc79a8792dde3d3f7d7d8ac28ba01ac9dd',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100117 'src/third_party/libsrtp':
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200118 Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + '1d45b8e599dc2db6ea3ae22dbc94a8c504652423',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100119 'src/third_party/libvpx/source/libvpx':
Autoroller09e86b22018-02-02 16:45:08 -0800120 Var('chromium_git') + '/webm/libvpx.git' + '@' + 'ac54d233b6d7ba5674996353a86bae42417022ee',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100121 'src/third_party/libyuv':
Autorollerecfe2e82018-02-08 16:45:46 -0800122 Var('chromium_git') + '/libyuv/libyuv.git' + '@' + 'b792e0dbc152dbeea6f4a5ba59dccd05c32eb3c2',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200123 'src/third_party/lss': {
124 'url': Var('chromium_git') + '/linux-syscall-support.git' + '@' + Var('lss_revision'),
125 'condition': 'checkout_android or checkout_linux',
126 },
127 'src/third_party/mockito/src': {
128 'url': Var('chromium_git') + '/external/mockito/mockito.git' + '@' + 'de83ad4598ad4cf5ea53c69a8a8053780b04b850',
129 'condition': 'checkout_android',
130 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100131 'src/third_party/openh264/src':
Autorollere36a7cb2018-01-18 03:45:00 -0800132 Var('chromium_git') + '/external/github.com/cisco/openh264' + '@' + '2e96d62426547ac4fb5cbcd122e5f6eb68d66ee6',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100133 'src/third_party/openmax_dl':
Henrik Kjellandera9d4da82017-09-14 07:28:10 +0200134 Var('webrtc_git') + '/deps/third_party/openmax.git' + '@' + Var('openmax_dl_revision'),
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200135 'src/third_party/requests/src': {
136 'url': Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
137 'condition': 'checkout_android',
138 },
139 'src/third_party/robolectric/robolectric': {
Autorollere9fe8b52017-11-30 15:46:32 -0800140 'url': Var('chromium_git') + '/external/robolectric.git' + '@' + '7e067f1112e1502caa742f7be72d37b5678d3403',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200141 'condition': 'checkout_android',
142 },
143 'src/third_party/ub-uiautomator/lib': {
144 'url': Var('chromium_git') + '/chromium/third_party/ub-uiautomator.git' + '@' + '00270549ce3161ae72ceb24712618ea28b4f9434',
145 'condition': 'checkout_android',
146 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100147 'src/third_party/usrsctp/usrsctplib':
Autoroller153eebd2017-12-08 14:47:01 -0800148 Var('chromium_git') + '/external/github.com/sctplab/usrsctp' + '@' + '0e076261b832121cf120ddc04aaff87ac3a34d30',
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200149 # WebRTC-only dependency (not present in Chromium).
150 'src/third_party/winsdk_samples': {
151 'url': Var('webrtc_git') + '/deps/third_party/winsdk_samples_v71' + '@' + '2d31a1cbecc86359e6ec041fb9ff6c082babd073',
152 'condition': 'checkout_win',
153 },
154 # Dependency used by libjpeg-turbo.
155 'src/third_party/yasm/binaries': {
156 'url': Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
157 'condition': 'checkout_win',
158 },
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100159 'src/third_party/yasm/source/patched-yasm':
buildbotf3f7f622017-08-10 21:29:33 -0700160 Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + 'b98114e18d8b9b84586b10d24353ab8616d4c5fc',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100161 'src/tools':
Autoroller88a38e322018-02-09 05:44:09 -0800162 Var('chromium_git') + '/chromium/src/tools' + '@' + '4ee4992a32dc916b2fa1e46aff6150cf41ba9518',
kjellander@webrtc.org177567c2016-12-22 10:40:28 +0100163 'src/tools/gyp':
buildbot2f0803c2017-07-25 11:40:43 -0700164 Var('chromium_git') + '/external/gyp.git' + '@' + 'd61a9397e668fa9843c4aa7da9e79460fe590bfb',
oprypin4ccd9c12017-08-30 00:42:43 -0700165 'src/tools/swarming_client':
166 Var('chromium_git') + '/infra/luci/client-py.git' + '@' + Var('swarming_revision'),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000167}
kjellander200028f2017-08-17 09:54:12 -0700168
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000169hooks = [
170 {
Henrik Kjellander27576e02015-10-15 14:24:09 +0200171 # This clobbers when necessary (based on get_landmines.py). It should be
172 # an early hook but it will need to be run after syncing Chromium and
173 # setting up the links, so the script actually exists.
174 'name': 'landmines',
175 'pattern': '.',
176 'action': [
177 'python',
178 'src/build/landmines.py',
179 '--landmine-scripts',
Henrik Kjellander90fd7d82017-05-09 08:30:10 +0200180 'src/tools_webrtc/get_landmines.py',
Henrik Kjellander27576e02015-10-15 14:24:09 +0200181 '--src-dir',
182 'src',
183 ],
184 },
oprypin40e7ebd2017-07-27 01:40:18 -0700185 {
186 # Ensure that the DEPS'd "depot_tools" has its self-update capability
187 # disabled.
188 'name': 'disable_depot_tools_selfupdate',
189 'pattern': '.',
190 'action': [
191 'python',
192 'src/third_party/depot_tools/update_depot_tools_toggle.py',
193 '--disable',
194 ],
195 },
kjellander24d812d2016-11-22 07:02:11 -0800196 {
Mirko Bonadeib8a7d9d2018-02-12 08:57:35 +0100197 'name': 'sysroot_arm',
kjellander24d812d2016-11-22 07:02:11 -0800198 'pattern': '.',
Mirko Bonadeib8a7d9d2018-02-12 08:57:35 +0100199 'condition': 'checkout_linux and checkout_arm',
kjellander24d812d2016-11-22 07:02:11 -0800200 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
Mirko Bonadeib8a7d9d2018-02-12 08:57:35 +0100201 '--arch=arm'],
202 },
203 {
204 'name': 'sysroot_arm64',
205 'pattern': '.',
206 'condition': 'checkout_linux and checkout_arm64',
207 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
208 '--arch=arm64'],
209 },
210 {
211 'name': 'sysroot_x86',
212 'pattern': '.',
213 'condition': 'checkout_linux and (checkout_x86 or checkout_x64)',
214 # TODO(mbonadei): change to --arch=x86.
215 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
216 '--arch=i386'],
217 },
218 {
219 'name': 'sysroot_mips',
220 'pattern': '.',
221 'condition': 'checkout_linux and checkout_mips',
222 # TODO(mbonadei): change to --arch=mips.
223 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
224 '--arch=mipsel'],
225 },
226 {
227 'name': 'sysroot_x64',
228 'pattern': '.',
229 'condition': 'checkout_linux and checkout_x64',
230 # TODO(mbonadei): change to --arch=x64.
231 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
232 '--arch=amd64'],
kjellander24d812d2016-11-22 07:02:11 -0800233 },
234 {
Mirko Bonadeia55bdc22018-02-12 13:22:50 +0100235 # Case-insensitivity for the Win SDK. Must run before win_toolchain below.
236 'name': 'ciopfs_linux',
237 'pattern': '.',
238 'condition': 'checkout_win and host_os == "linux"',
239 'action': [ 'python',
240 'src/third_party/depot_tools/download_from_google_storage.py',
241 '--no_resume',
242 '--no_auth',
243 '--bucket', 'chromium-browser-clang/ciopfs',
244 '-s', 'src/build/ciopfs.sha1',
245 ]
246 },
247 {
Henrik Kjellander6b269752017-10-09 13:00:41 +0200248 # Update the Windows toolchain if necessary. Must run before 'clang' below.
kjellander24d812d2016-11-22 07:02:11 -0800249 'name': 'win_toolchain',
250 'pattern': '.',
Mirko Bonadeif0707cb2018-02-13 11:29:09 +0100251 'condition': 'checkout_win',
252 'action': ['python', 'src/build/vs_toolchain.py', 'update', '--force'],
kjellander24d812d2016-11-22 07:02:11 -0800253 },
kjellanderec2c93e2017-09-08 10:52:17 -0700254 {
255 # Update the Mac toolchain if necessary.
256 'name': 'mac_toolchain',
257 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200258 'condition': 'checkout_mac',
kjellanderec2c93e2017-09-08 10:52:17 -0700259 'action': ['python', 'src/build/mac_toolchain.py'],
260 },
kjellander24d812d2016-11-22 07:02:11 -0800261 # Pull binutils for linux, enabled debug fission for faster linking /
262 # debugging when used with clang on Ubuntu Precise.
263 # https://code.google.com/p/chromium/issues/detail?id=352046
264 {
265 'name': 'binutils',
266 'pattern': 'src/third_party/binutils',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200267 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800268 'action': [
269 'python',
270 'src/third_party/binutils/download.py',
271 ],
272 },
273 {
kjellander24d812d2016-11-22 07:02:11 -0800274 # Note: On Win, this should run after win_toolchain, as it may use it.
275 'name': 'clang',
276 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200277 'action': ['python', 'src/tools/clang/scripts/update.py'],
kjellander24d812d2016-11-22 07:02:11 -0800278 },
ehmaldonado293bc2a2016-11-25 04:58:47 -0800279 {
280 # Update LASTCHANGE.
281 'name': 'lastchange',
282 'pattern': '.',
283 'action': ['python', 'src/build/util/lastchange.py',
284 '-o', 'src/build/util/LASTCHANGE'],
285 },
kjellander24d812d2016-11-22 07:02:11 -0800286 # Pull GN binaries.
287 {
288 'name': 'gn_win',
289 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200290 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800291 'action': [ 'download_from_google_storage',
292 '--no_resume',
293 '--platform=win32',
294 '--no_auth',
295 '--bucket', 'chromium-gn',
296 '-s', 'src/buildtools/win/gn.exe.sha1',
297 ],
298 },
299 {
300 'name': 'gn_mac',
301 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200302 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800303 'action': [ 'download_from_google_storage',
304 '--no_resume',
305 '--platform=darwin',
306 '--no_auth',
307 '--bucket', 'chromium-gn',
308 '-s', 'src/buildtools/mac/gn.sha1',
309 ],
310 },
311 {
312 'name': 'gn_linux64',
313 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200314 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800315 'action': [ 'download_from_google_storage',
316 '--no_resume',
317 '--platform=linux*',
318 '--no_auth',
319 '--bucket', 'chromium-gn',
320 '-s', 'src/buildtools/linux64/gn.sha1',
321 ],
322 },
323 # Pull clang-format binaries using checked-in hashes.
324 {
325 'name': 'clang_format_win',
326 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200327 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800328 'action': [ 'download_from_google_storage',
329 '--no_resume',
330 '--platform=win32',
331 '--no_auth',
332 '--bucket', 'chromium-clang-format',
333 '-s', 'src/buildtools/win/clang-format.exe.sha1',
334 ],
335 },
336 {
337 'name': 'clang_format_mac',
338 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200339 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800340 'action': [ 'download_from_google_storage',
341 '--no_resume',
342 '--platform=darwin',
343 '--no_auth',
344 '--bucket', 'chromium-clang-format',
345 '-s', 'src/buildtools/mac/clang-format.sha1',
346 ],
347 },
348 {
349 'name': 'clang_format_linux',
350 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200351 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800352 'action': [ 'download_from_google_storage',
353 '--no_resume',
354 '--platform=linux*',
355 '--no_auth',
356 '--bucket', 'chromium-clang-format',
357 '-s', 'src/buildtools/linux64/clang-format.sha1',
358 ],
359 },
Oleh Prypin3ebed362017-10-27 10:14:45 +0200360 # Pull rc binaries using checked-in hashes.
361 {
362 'name': 'rc_win',
363 'pattern': '.',
364 'condition': 'checkout_win and host_os == "win"',
365 'action': [ 'python',
366 'src/third_party/depot_tools/download_from_google_storage.py',
367 '--no_resume',
368 '--no_auth',
369 '--bucket', 'chromium-browser-clang/rc',
370 '-s', 'src/build/toolchain/win/rc/win/rc.exe.sha1',
371 ],
372 },
373 {
374 'name': 'rc_mac',
375 'pattern': '.',
376 'condition': 'checkout_win and host_os == "mac"',
377 'action': [ 'python',
378 'src/third_party/depot_tools/download_from_google_storage.py',
379 '--no_resume',
380 '--no_auth',
381 '--bucket', 'chromium-browser-clang/rc',
382 '-s', 'src/build/toolchain/win/rc/mac/rc.sha1',
383 ],
384 },
385 {
386 'name': 'rc_linux',
387 'pattern': '.',
388 'condition': 'checkout_win and host_os == "linux"',
389 'action': [ 'python',
390 'src/third_party/depot_tools/download_from_google_storage.py',
391 '--no_resume',
392 '--no_auth',
393 '--bucket', 'chromium-browser-clang/rc',
394 '-s', 'src/build/toolchain/win/rc/linux64/rc.sha1',
395 ],
396 },
kjellander24d812d2016-11-22 07:02:11 -0800397 # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
398 {
399 'name': 'luci-go_win',
400 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200401 'condition': 'host_os == "win"',
kjellander24d812d2016-11-22 07:02:11 -0800402 'action': [ 'download_from_google_storage',
403 '--no_resume',
404 '--platform=win32',
405 '--no_auth',
406 '--bucket', 'chromium-luci',
407 '-d', 'src/tools/luci-go/win64',
408 ],
409 },
410 {
411 'name': 'luci-go_mac',
412 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200413 'condition': 'host_os == "mac"',
kjellander24d812d2016-11-22 07:02:11 -0800414 'action': [ 'download_from_google_storage',
415 '--no_resume',
416 '--platform=darwin',
417 '--no_auth',
418 '--bucket', 'chromium-luci',
419 '-d', 'src/tools/luci-go/mac64',
420 ],
421 },
422 {
423 'name': 'luci-go_linux',
424 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200425 'condition': 'host_os == "linux"',
kjellander24d812d2016-11-22 07:02:11 -0800426 'action': [ 'download_from_google_storage',
427 '--no_resume',
428 '--platform=linux*',
429 '--no_auth',
430 '--bucket', 'chromium-luci',
431 '-d', 'src/tools/luci-go/linux64',
432 ],
433 },
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200434 # Pull the Syzygy binaries, used for optimization and instrumentation.
435 {
436 'name': 'syzygy-binaries',
437 'pattern': '.',
Henrik Kjellander6b269752017-10-09 13:00:41 +0200438 'condition': 'host_os == "win"',
Henrik Kjellander55dad1b2017-05-11 12:00:53 +0200439 'action': ['python',
440 'src/build/get_syzygy_binaries.py',
441 '--output-dir=src/third_party/syzygy/binaries',
442 '--revision=a8456d9248a126881dcfb8707ca7dcdae56e1ac7',
443 '--overwrite',
444 ],
445 },
kjellander24d812d2016-11-22 07:02:11 -0800446 {
Mirko Bonadeicb2bc112017-10-10 13:28:18 +0200447 'name': 'msan_chained_origins',
448 'pattern': '.',
449 'condition': 'checkout_instrumented_libraries',
450 'action': [ 'python',
451 'src/third_party/depot_tools/download_from_google_storage.py',
452 "--no_resume",
453 "--no_auth",
454 "--bucket", "chromium-instrumented-libraries",
455 "-s", "src/third_party/instrumented_libraries/binaries/msan-chained-origins-trusty.tgz.sha1",
456 ],
457 },
458 {
459 'name': 'msan_no_origins',
460 'pattern': '.',
461 'condition': 'checkout_instrumented_libraries',
462 'action': [ 'python',
463 'src/third_party/depot_tools/download_from_google_storage.py',
464 "--no_resume",
465 "--no_auth",
466 "--bucket", "chromium-instrumented-libraries",
467 "-s", "src/third_party/instrumented_libraries/binaries/msan-no-origins-trusty.tgz.sha1",
468 ],
kjellander24d812d2016-11-22 07:02:11 -0800469 },
470 {
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000471 # Download test resources, i.e. video and audio files from Google Storage.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000472 'pattern': '.',
473 'action': ['download_from_google_storage',
474 '--directory',
475 '--recursive',
476 '--num_threads=10',
477 '--no_auth',
kjellander4ff818e2015-12-18 12:29:28 -0800478 '--quiet',
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000479 '--bucket', 'chromium-webrtc-resources',
480 'src/resources'],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000481 },
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200482 {
Edward Lemur82752c42017-11-08 19:08:54 +0100483 'name': 'Android CIPD Ensure',
484 'pattern': '.',
485 'condition': 'checkout_android',
486 'action': ['src/build/cipd/cipd_wrapper.py',
487 '--chromium-root', 'src',
488 '--ensure-file', 'src/build/cipd/android/android.ensure',
489 ],
490 },
491 {
Henrik Kjellander5a17ea92017-10-09 13:14:23 +0200492 # This downloads SDK extras and puts them in the
493 # third_party/android_tools/sdk/extras directory.
494 'name': 'sdkextras',
495 'pattern': '.',
496 'condition': 'checkout_android',
497 # When adding a new sdk extras package to download, add the package
498 # directory and zip file to .gitignore in third_party/android_tools.
499 'action': ['python',
500 'src/build/android/play_services/update.py',
501 'download'
502 ],
503 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000504]
kjellander200028f2017-08-17 09:54:12 -0700505
kjellander24d812d2016-11-22 07:02:11 -0800506recursedeps = [
507 # buildtools provides clang_format, libc++, and libc++abi.
508 'src/buildtools',
509 # android_tools manages the NDK.
510 'src/third_party/android_tools',
511]
Mirko Bonadeibb547202017-09-15 06:15:48 +0200512
513# Define rules for which include paths are allowed in our source.
514include_rules = [
515 # Base is only used to build Android APK tests and may not be referenced by
516 # WebRTC production code.
517 "-base",
518 "-chromium",
519 "+external/webrtc/webrtc", # Android platform build.
Mirko Bonadeibb547202017-09-15 06:15:48 +0200520 "+libyuv",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200521 # Individual headers that will be moved out of here, see webrtc:4243.
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200522 "+call/rtp_config.h",
523 "+common_types.h",
524 "+transport.h",
525 "+typedefs.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200526
527 "+WebRTC",
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200528 "+api",
529 "+modules/include",
530 "+rtc_base",
531 "+test",
532 "+rtc_tools",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200533]
534
535# The below rules will be removed when webrtc:4243 is fixed.
536specific_include_rules = {
537 "video_receive_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200538 "+call/video_receive_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200539 ],
540 "video_send_stream\.h": [
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200541 "+call/video_send_stream.h",
Mirko Bonadeibb547202017-09-15 06:15:48 +0200542 ],
543}