blob: fa7bf5a441e746c74eb5929b22646751fb8f1e5c [file] [log] [blame]
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +00001use_relative_paths = True
2
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +00003vars = {
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +00004 # Override root_dir in your .gclient's custom_vars to specify a custom root
5 # folder name.
6 "root_dir": "trunk",
andrew@webrtc.orgea5d0e52012-08-09 17:37:03 +00007 "extra_gyp_flag": "-Dextra_gyp_flag=0",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +00008
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +00009 # Use this googlecode_url variable only if there is an internal mirror for it.
10 # If you do not know, use the full path while defining your new deps entry.
11 "googlecode_url": "http://%s.googlecode.com/svn",
pbos@webrtc.org62e5af42013-08-20 09:19:16 +000012 "sourceforge_url": "http://svn.code.sf.net/p/%(repo)s/code",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000013 "chromium_trunk" : "http://src.chromium.org/svn/trunk",
fischman@webrtc.org4610f1d2014-05-23 20:56:12 +000014 "chromium_revision": "272489",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000015
kjellander@webrtc.org430464c2013-06-04 16:29:45 +000016 # A small subset of WebKit is needed for the Android Python test framework.
17 "webkit_trunk": "http://src.chromium.org/blink/trunk",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000018}
19
20# NOTE: Prefer revision numbers to tags for svn deps. Use http rather than
21# https; the latter can cause problems for users behind proxies.
22deps = {
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000023 "../chromium_deps":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000024 File(Var("chromium_trunk") + "/src/DEPS@" + Var("chromium_revision")),
25
wjia@webrtc.org03cfde22014-01-14 17:48:34 +000026 "../chromium_gn":
27 File(Var("chromium_trunk") + "/src/.gn@" + Var("chromium_revision")),
28
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000029 "build":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000030 Var("chromium_trunk") + "/src/build@" + Var("chromium_revision"),
31
andrew@webrtc.orgb9d20642012-09-19 23:08:50 +000032 # Needed by common.gypi.
33 "google_apis/build":
34 Var("chromium_trunk") + "/src/google_apis/build@" + Var("chromium_revision"),
35
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000036 "testing":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000037 Var("chromium_trunk") + "/src/testing@" + Var("chromium_revision"),
38
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000039 "testing/gmock":
40 From("chromium_deps", "src/testing/gmock"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000041
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000042 "testing/gtest":
43 From("chromium_deps", "src/testing/gtest"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000044
kjellander@webrtc.org59343ee2014-04-29 09:36:40 +000045 "third_party/binutils":
46 Var("chromium_trunk") + "/src/third_party/binutils@" + Var("chromium_revision"),
47
andrew@webrtc.org36291da2014-02-04 01:45:10 +000048 "third_party/clang_format":
49 Var("chromium_trunk") + "/src/third_party/clang_format@" + Var("chromium_revision"),
50
kjellander@webrtc.org607c8052014-02-09 18:38:31 +000051 "third_party/clang_format/script":
52 From("chromium_deps", "src/third_party/clang_format/script"),
53
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000054 "third_party/expat":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000055 Var("chromium_trunk") + "/src/third_party/expat@" + Var("chromium_revision"),
56
kjellander@webrtc.orgcbdb9d12013-08-20 16:18:35 +000057 # When rolling gflags, also update deps/third_party/webrtc/webrtc.DEPS/DEPS
58 # in Chromium's repo.
fischman@webrtc.orgdde7d4c2013-08-15 23:31:30 +000059 "third_party/gflags/src":
60 (Var("googlecode_url") % "gflags") + "/trunk/src@84",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000061
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000062 "third_party/icu/":
63 From("chromium_deps", "src/third_party/icu"),
64
65 "third_party/jsoncpp/":
66 Var("chromium_trunk") + "/src/third_party/jsoncpp@" + Var("chromium_revision"),
67
68 "third_party/jsoncpp/source":
pbos@webrtc.org62e5af42013-08-20 09:19:16 +000069 (Var("sourceforge_url") % {"repo": "jsoncpp"}) + "/trunk/jsoncpp@248",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000070
71 "third_party/junit/":
72 (Var("googlecode_url") % "webrtc") + "/deps/third_party/junit@3367",
kjellander@webrtc.org287f07b2013-09-27 16:57:10 +000073
kjellander@webrtc.org59343ee2014-04-29 09:36:40 +000074 "third_party/libc++":
75 Var("chromium_trunk") + "/src/third_party/libc++@" + Var("chromium_revision"),
76
77 "third_party/libc++/trunk":
78 From("chromium_deps", "src/third_party/libc++/trunk"),
79
80 "third_party/libc++abi":
81 Var("chromium_trunk") + "/src/third_party/libc++abi@" + Var("chromium_revision"),
82
83 "third_party/libc++abi/trunk":
84 From("chromium_deps", "src/third_party/libc++abi/trunk"),
85
turaj@webrtc.org560dce52014-05-01 18:53:51 +000086 "third_party/openmax_dl/":
turaj@webrtc.orge14ffaa2014-05-09 21:40:23 +000087 (Var("googlecode_url") % "webrtc") + "/deps/third_party/openmax@6096",
turaj@webrtc.org560dce52014-05-01 18:53:51 +000088
mikhal@webrtc.org0b960cf2013-08-30 16:30:53 +000089 "third_party/libjpeg":
90 Var("chromium_trunk") + "/src/third_party/libjpeg@" + Var("chromium_revision"),
91
92 "third_party/libjpeg_turbo":
93 From("chromium_deps", "src/third_party/libjpeg_turbo"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000094
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000095 "third_party/libsrtp/":
96 From("chromium_deps", "src/third_party/libsrtp"),
97
andrew@webrtc.orge6e344a2013-02-12 19:35:18 +000098 "third_party/libvpx":
fgalligan@google.com27f062a2014-06-12 14:59:28 +000099 Var("chromium_trunk") + "/deps/third_party/libvpx@275816",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000100
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000101 "third_party/libyuv":
fbarchard@google.com3dfabf92014-04-21 22:06:06 +0000102 (Var("googlecode_url") % "libyuv") + "/trunk@1000",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000103
tina.legrand@webrtc.org1f8c02a2012-10-25 12:37:08 +0000104 "third_party/opus":
tina.legrand@webrtc.orgcfb18dd2014-05-06 11:57:01 +0000105 Var("chromium_trunk") + "/src/third_party/opus@266564",
tina.legrand@webrtc.org1f8c02a2012-10-25 12:37:08 +0000106
107 "third_party/opus/src":
tina.legrand@webrtc.orgff7908a2014-03-25 16:12:43 +0000108 Var("chromium_trunk") + "/deps/third_party/opus@256783",
tina.legrand@webrtc.org1f8c02a2012-10-25 12:37:08 +0000109
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000110 "third_party/protobuf":
solenberg@webrtc.orgc6db88b2014-06-04 17:15:42 +0000111 Var("chromium_trunk") + "/src/third_party/protobuf@" + Var("chromium_revision"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000112
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000113 "third_party/sqlite/":
114 Var("chromium_trunk") + "/src/third_party/sqlite@" + Var("chromium_revision"),
115
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000116 "third_party/yasm":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000117 Var("chromium_trunk") + "/src/third_party/yasm@" + Var("chromium_revision"),
118
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000119 "third_party/yasm/source/patched-yasm":
120 From("chromium_deps", "src/third_party/yasm/source/patched-yasm"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000121
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000122 "tools/clang":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000123 Var("chromium_trunk") + "/src/tools/clang@" + Var("chromium_revision"),
124
wjia@webrtc.org03cfde22014-01-14 17:48:34 +0000125 "tools/gn":
126 Var("chromium_trunk") + "/src/tools/gn@" + Var("chromium_revision"),
127
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000128 "tools/gyp":
129 From("chromium_deps", "src/tools/gyp"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000130
andrew@webrtc.org225f2b82013-05-20 21:12:58 +0000131 "tools/protoc_wrapper":
132 Var("chromium_trunk") + "/src/tools/protoc_wrapper@" + Var("chromium_revision"),
133
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000134 "tools/python":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000135 Var("chromium_trunk") + "/src/tools/python@" + Var("chromium_revision"),
136
kjellander@webrtc.orgf9bdbe32013-12-11 13:37:12 +0000137 "tools/swarming_client":
138 From("chromium_deps", "src/tools/swarming_client"),
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000139
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000140 "tools/valgrind":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000141 Var("chromium_trunk") + "/src/tools/valgrind@" + Var("chromium_revision"),
142
143 # Needed by build/common.gypi.
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000144 "tools/win/supalink":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000145 Var("chromium_trunk") + "/src/tools/win/supalink@" + Var("chromium_revision"),
jiayl@webrtc.orga576faf2014-01-29 17:45:53 +0000146
147 "net/third_party/nss":
148 Var("chromium_trunk") + "/src/net/third_party/nss@" + Var("chromium_revision"),
149
150 "third_party/usrsctp/":
151 Var("chromium_trunk") + "/src/third_party/usrsctp@" + Var("chromium_revision"),
152
153 "third_party/usrsctp/usrsctplib":
154 (Var("googlecode_url") % "sctp-refimpl") + "/trunk/KERN/usrsctp/usrsctplib@8723",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000155}
156
157deps_os = {
158 "win": {
kjellander@webrtc.org31f967c2014-06-09 07:30:37 +0000159 "third_party/drmemory":
160 Var("chromium_trunk") + "/src/third_party/drmemory@275048",
161
andrew@webrtc.org8cd18c52012-11-21 18:46:45 +0000162 "third_party/winsdk_samples/src":
163 (Var("googlecode_url") % "webrtc") + "/deps/third_party/winsdk_samples_v71@3145",
164
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000165 # Used by libjpeg-turbo.
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000166 "third_party/yasm/binaries":
167 From("chromium_deps", "src/third_party/yasm/binaries"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000168
169 # NSS, for SSLClientSocketNSS.
170 "third_party/nss":
171 From("chromium_deps", "src/third_party/nss"),
kjellander@webrtc.org4c617922013-10-10 11:56:09 +0000172
173 # SyzyASan to make it possible to run tests under ASan on Windows.
174 "third_party/syzygy/binaries":
175 From("chromium_deps", "src/third_party/syzygy/binaries"),
kjellander@webrtc.org6b0cbcb2014-03-10 09:51:17 +0000176
177 "tools/find_depot_tools":
178 File(Var("chromium_trunk") + "/src/tools/find_depot_tools.py@" + Var("chromium_revision")),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000179 },
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000180
181 "mac": {
182 # NSS, for SSLClientSocketNSS.
183 "third_party/nss":
184 From("chromium_deps", "src/third_party/nss"),
fischman@webrtc.orgca539bb2014-04-15 20:26:41 +0000185
186 # TODO(kjellander): remove once bug 2152 is fixed.
187 # This needs to specify the path directly (instead of using the
188 # chromium_deps version) because chromium_deps only defines this for ios.
189 "testing/iossim/third_party/class-dump":
190 Var("chromium_trunk") + "/deps/third_party/class-dump@199203",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000191 },
192
193 "ios": {
194 # NSS, for SSLClientSocketNSS.
195 "third_party/nss":
196 From("chromium_deps", "src/third_party/nss"),
fischman@webrtc.org1bc19542013-08-01 18:29:45 +0000197
fischman@webrtc.org1bc19542013-08-01 18:29:45 +0000198 # class-dump utility to generate header files for undocumented SDKs.
199 "testing/iossim/third_party/class-dump":
200 From("chromium_deps", "src/testing/iossim/third_party/class-dump"),
201
202 # Helper for running under the simulator.
203 "testing/iossim":
204 Var("chromium_trunk") + "/src/testing/iossim@" + Var("chromium_revision"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000205 },
206
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000207 "android": {
kjellander@webrtc.org6cfe1782013-06-18 07:14:33 +0000208 # Precompiled tools needed for Android test execution. Needed since we can't
209 # compile them from source in WebRTC since they depend on Chromium's base.
210 "tools/android":
solenberg@webrtc.orgc6db88b2014-06-04 17:15:42 +0000211 (Var("googlecode_url") % "webrtc") + "/deps/tools/android@6306",
kjellander@webrtc.org6cfe1782013-06-18 07:14:33 +0000212
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000213 "third_party/android_tools":
214 From("chromium_deps", "src/third_party/android_tools"),
215
216 "third_party/android_testrunner":
217 Var("chromium_trunk") + "/src/third_party/android_testrunner@" + Var("chromium_revision"),
kjellander@webrtc.org430464c2013-06-04 16:29:45 +0000218
219 "third_party/WebKit/Tools/Scripts":
220 Var("webkit_trunk") + "/Tools/Scripts@151677",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000221
222 "third_party/openssl":
223 From("chromium_deps", "src/third_party/openssl"),
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000224 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000225}
226
227hooks = [
228 {
wjia@webrtc.org03cfde22014-01-14 17:48:34 +0000229 # Copy .gn from temporary place (../chromium_gn) to root_dir.
230 "name": "copy .gn",
231 "pattern": ".",
232 "action": ["python", Var("root_dir") + "/build/cp.py",
233 Var("root_dir") + "/../chromium_gn/.gn",
234 Var("root_dir")],
235 },
236 # Pull GN binaries. This needs to be before running GYP below.
237 {
238 "name": "gn_win",
239 "pattern": "tools/gn/bin/win/gn.exe.sha1",
240 "action": [ "download_from_google_storage",
241 "--no_resume",
242 "--platform=win32",
243 "--no_auth",
244 "--bucket", "chromium-gn",
245 "-s", Var("root_dir") + "/tools/gn/bin/win/gn.exe.sha1",
246 ],
247 },
248 {
249 "name": "gn_mac",
250 "pattern": "tools/gn/bin/mac/gn.sha1",
251 "action": [ "download_from_google_storage",
252 "--no_resume",
253 "--platform=darwin",
254 "--no_auth",
255 "--bucket", "chromium-gn",
256 "-s", Var("root_dir") + "/tools/gn/bin/mac/gn.sha1",
257 ],
258 },
259 {
260 "name": "gn_linux",
261 "pattern": "tools/gn/bin/linux/gn.sha1",
262 "action": [ "download_from_google_storage",
263 "--no_resume",
264 "--platform=linux*",
265 "--no_auth",
266 "--bucket", "chromium-gn",
267 "-s", Var("root_dir") + "/tools/gn/bin/linux/gn.sha1",
268 ],
269 },
270 {
271 "name": "gn_linux32",
272 "pattern": "tools/gn/bin/linux/gn32.sha1",
273 "action": [ "download_from_google_storage",
274 "--no_resume",
275 "--platform=linux*",
276 "--no_auth",
277 "--bucket", "chromium-gn",
278 "-s", Var("root_dir") + "/tools/gn/bin/linux/gn32.sha1",
279 ],
280 },
andrew@webrtc.org36291da2014-02-04 01:45:10 +0000281 # Pull clang-format binaries using checked-in hashes.
282 {
283 "name": "clang_format_win",
284 "pattern": "third_party/clang_format/bin/win/clang-format.exe.sha1",
285 "action": [ "download_from_google_storage",
286 "--no_resume",
287 "--platform=win32",
288 "--no_auth",
289 "--bucket", "chromium-clang-format",
290 "-s", Var("root_dir") + "/third_party/clang_format/bin/win/clang-format.exe.sha1",
291 ],
292 },
293 {
294 "name": "clang_format_mac",
295 "pattern": "third_party/clang_format/bin/mac/clang-format.sha1",
296 "action": [ "download_from_google_storage",
297 "--no_resume",
298 "--platform=darwin",
299 "--no_auth",
300 "--bucket", "chromium-clang-format",
301 "-s", Var("root_dir") + "/third_party/clang_format/bin/mac/clang-format.sha1",
302 ],
303 },
304 {
305 "name": "clang_format_linux",
306 "pattern": "third_party/clang_format/bin/linux/clang-format.sha1",
307 "action": [ "download_from_google_storage",
308 "--no_resume",
309 "--platform=linux*",
310 "--no_auth",
311 "--bucket", "chromium-clang-format",
312 "-s", Var("root_dir") + "/third_party/clang_format/bin/linux/clang-format.sha1",
313 ],
314 },
wjia@webrtc.org03cfde22014-01-14 17:48:34 +0000315 {
kjellander@webrtc.orgd10bdd32014-04-01 10:40:03 +0000316 # Pull clang if on Mac or clang is requested via GYP_DEFINES.
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000317 "pattern": ".",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000318 "action": ["python", Var("root_dir") + "/tools/clang/scripts/update.py",
kjellander@webrtc.orgd10bdd32014-04-01 10:40:03 +0000319 "--if-needed"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000320 },
321 {
kjellander@webrtc.org59343ee2014-04-29 09:36:40 +0000322 # Update the Windows toolchain if necessary.
323 "name": "win_toolchain",
324 "pattern": ".",
325 "action": ["python",
326 Var("root_dir") + "/webrtc/build/download_vs_toolchain.py",
327 "update"],
328 },
329 {
330 # Pull binutils for gold.
331 "name": "binutils",
332 "pattern": ".",
333 "action": ["python", Var("root_dir") + "/third_party/binutils/download.py"],
334 },
335 {
kjellander@webrtc.org31f967c2014-06-09 07:30:37 +0000336 "name": "drmemory",
337 "pattern": ".",
338 "action": [ "download_from_google_storage",
339 "--no_resume",
340 "--platform=win32",
341 "--no_auth",
342 "--bucket", "chromium-drmemory",
343 "-s", Var("root_dir") + "/third_party/drmemory/drmemory-windows-sfx.exe.sha1",
344 ],
345 },
346 {
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000347 # Download test resources, i.e. video and audio files from Google Storage.
348 "pattern": "\\.sha1",
349 "action": ["download_from_google_storage",
350 "--directory",
351 "--recursive",
352 "--num_threads=10",
wjia@webrtc.org776d8df2014-01-27 19:55:16 +0000353 "--no_auth",
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000354 "--bucket", "chromium-webrtc-resources",
355 Var("root_dir") + "/resources"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000356 },
357 {
358 # A change to a .gyp, .gypi, or to GYP itself should run the generator.
kjellander@webrtc.org6b0cbcb2014-03-10 09:51:17 +0000359 "name": "gyp",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000360 "pattern": ".",
kjellander@webrtc.org7d7f0892014-01-31 09:34:51 +0000361 "action": ["python", Var("root_dir") + "/webrtc/build/gyp_webrtc",
andrew@webrtc.orgea5d0e52012-08-09 17:37:03 +0000362 Var("extra_gyp_flag")],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000363 },
364]
365