blob: 34f63ad6ac9546991e71843312ece9d113be2f75 [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",
minyue@webrtc.orgc8b99a42014-01-27 12:21:42 +000014 "chromium_revision": "245382",
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
andrew@webrtc.org36291da2014-02-04 01:45:10 +000045 "third_party/clang_format":
46 Var("chromium_trunk") + "/src/third_party/clang_format@" + Var("chromium_revision"),
47
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000048 "third_party/expat":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000049 Var("chromium_trunk") + "/src/third_party/expat@" + Var("chromium_revision"),
50
kjellander@webrtc.orgcbdb9d12013-08-20 16:18:35 +000051 # When rolling gflags, also update deps/third_party/webrtc/webrtc.DEPS/DEPS
52 # in Chromium's repo.
fischman@webrtc.orgdde7d4c2013-08-15 23:31:30 +000053 "third_party/gflags/src":
54 (Var("googlecode_url") % "gflags") + "/trunk/src@84",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000055
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000056 "third_party/icu/":
57 From("chromium_deps", "src/third_party/icu"),
58
59 "third_party/jsoncpp/":
60 Var("chromium_trunk") + "/src/third_party/jsoncpp@" + Var("chromium_revision"),
61
62 "third_party/jsoncpp/source":
pbos@webrtc.org62e5af42013-08-20 09:19:16 +000063 (Var("sourceforge_url") % {"repo": "jsoncpp"}) + "/trunk/jsoncpp@248",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000064
65 "third_party/junit/":
66 (Var("googlecode_url") % "webrtc") + "/deps/third_party/junit@3367",
kjellander@webrtc.org287f07b2013-09-27 16:57:10 +000067
mikhal@webrtc.org0b960cf2013-08-30 16:30:53 +000068 "third_party/libjpeg":
69 Var("chromium_trunk") + "/src/third_party/libjpeg@" + Var("chromium_revision"),
70
71 "third_party/libjpeg_turbo":
72 From("chromium_deps", "src/third_party/libjpeg_turbo"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000073
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000074 "third_party/libsrtp/":
75 From("chromium_deps", "src/third_party/libsrtp"),
76
andrew@webrtc.orge6e344a2013-02-12 19:35:18 +000077 "third_party/libvpx":
marpan@webrtc.orge88c1862014-02-04 00:02:35 +000078 Var("chromium_trunk") + "/deps/third_party/libvpx@241571",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000079
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000080 "third_party/libyuv":
fbarchard@google.com69ff90e2014-01-28 03:58:46 +000081 (Var("googlecode_url") % "libyuv") + "/trunk@976",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000082
tina.legrand@webrtc.org1f8c02a2012-10-25 12:37:08 +000083 "third_party/opus":
minyue@webrtc.org83dd9542014-01-28 08:46:58 +000084 Var("chromium_trunk") + "/src/third_party/opus@245176",
tina.legrand@webrtc.org1f8c02a2012-10-25 12:37:08 +000085
86 "third_party/opus/src":
minyue@webrtc.org83dd9542014-01-28 08:46:58 +000087 Var("chromium_trunk") + "/deps/third_party/opus@239448",
tina.legrand@webrtc.org1f8c02a2012-10-25 12:37:08 +000088
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000089 "third_party/protobuf":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000090 Var("chromium_trunk") + "/src/third_party/protobuf@" + Var("chromium_revision"),
91
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000092 "third_party/sqlite/":
93 Var("chromium_trunk") + "/src/third_party/sqlite@" + Var("chromium_revision"),
94
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000095 "third_party/yasm":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000096 Var("chromium_trunk") + "/src/third_party/yasm@" + Var("chromium_revision"),
97
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000098 "third_party/yasm/source/patched-yasm":
99 From("chromium_deps", "src/third_party/yasm/source/patched-yasm"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000100
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000101 "tools/clang":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000102 Var("chromium_trunk") + "/src/tools/clang@" + Var("chromium_revision"),
103
wjia@webrtc.org03cfde22014-01-14 17:48:34 +0000104 "tools/gn":
105 Var("chromium_trunk") + "/src/tools/gn@" + Var("chromium_revision"),
106
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000107 "tools/gyp":
108 From("chromium_deps", "src/tools/gyp"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000109
andrew@webrtc.org225f2b82013-05-20 21:12:58 +0000110 "tools/protoc_wrapper":
111 Var("chromium_trunk") + "/src/tools/protoc_wrapper@" + Var("chromium_revision"),
112
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000113 "tools/python":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000114 Var("chromium_trunk") + "/src/tools/python@" + Var("chromium_revision"),
115
kjellander@webrtc.orgf9bdbe32013-12-11 13:37:12 +0000116 "tools/swarming_client":
117 From("chromium_deps", "src/tools/swarming_client"),
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000118
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000119 "tools/valgrind":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000120 Var("chromium_trunk") + "/src/tools/valgrind@" + Var("chromium_revision"),
121
122 # Needed by build/common.gypi.
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000123 "tools/win/supalink":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000124 Var("chromium_trunk") + "/src/tools/win/supalink@" + Var("chromium_revision"),
jiayl@webrtc.orga576faf2014-01-29 17:45:53 +0000125
126 "net/third_party/nss":
127 Var("chromium_trunk") + "/src/net/third_party/nss@" + Var("chromium_revision"),
128
129 "third_party/usrsctp/":
130 Var("chromium_trunk") + "/src/third_party/usrsctp@" + Var("chromium_revision"),
131
132 "third_party/usrsctp/usrsctplib":
133 (Var("googlecode_url") % "sctp-refimpl") + "/trunk/KERN/usrsctp/usrsctplib@8723",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000134}
135
136deps_os = {
137 "win": {
138 # Use our own, stripped down, version of Cygwin (required by GYP).
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000139 "third_party/cygwin":
andrew@webrtc.org7b2e9192012-08-28 15:56:40 +0000140 (Var("googlecode_url") % "webrtc") + "/deps/third_party/cygwin@2672",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000141
andrew@webrtc.org8cd18c52012-11-21 18:46:45 +0000142 "third_party/winsdk_samples/src":
143 (Var("googlecode_url") % "webrtc") + "/deps/third_party/winsdk_samples_v71@3145",
144
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000145 # Used by libjpeg-turbo.
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000146 "third_party/yasm/binaries":
147 From("chromium_deps", "src/third_party/yasm/binaries"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000148
149 # NSS, for SSLClientSocketNSS.
150 "third_party/nss":
151 From("chromium_deps", "src/third_party/nss"),
kjellander@webrtc.org4c617922013-10-10 11:56:09 +0000152
153 # SyzyASan to make it possible to run tests under ASan on Windows.
154 "third_party/syzygy/binaries":
155 From("chromium_deps", "src/third_party/syzygy/binaries"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000156 },
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000157
158 "mac": {
159 # NSS, for SSLClientSocketNSS.
160 "third_party/nss":
161 From("chromium_deps", "src/third_party/nss"),
162 },
163
164 "ios": {
165 # NSS, for SSLClientSocketNSS.
166 "third_party/nss":
167 From("chromium_deps", "src/third_party/nss"),
fischman@webrtc.org1bc19542013-08-01 18:29:45 +0000168
fischman@webrtc.org1bc19542013-08-01 18:29:45 +0000169 # class-dump utility to generate header files for undocumented SDKs.
170 "testing/iossim/third_party/class-dump":
171 From("chromium_deps", "src/testing/iossim/third_party/class-dump"),
172
173 # Helper for running under the simulator.
174 "testing/iossim":
175 Var("chromium_trunk") + "/src/testing/iossim@" + Var("chromium_revision"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000176 },
177
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000178 "unix": {
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000179 "third_party/gold":
180 From("chromium_deps", "src/third_party/gold"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000181 },
jiayl@webrtc.orga576faf2014-01-29 17:45:53 +0000182
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000183 "android": {
kjellander@webrtc.org6cfe1782013-06-18 07:14:33 +0000184 # Precompiled tools needed for Android test execution. Needed since we can't
185 # compile them from source in WebRTC since they depend on Chromium's base.
186 "tools/android":
yujie.mao@webrtc.org9f07ea42013-07-18 01:57:04 +0000187 (Var("googlecode_url") % "webrtc") + "/deps/tools/android@4258",
kjellander@webrtc.org6cfe1782013-06-18 07:14:33 +0000188
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000189 "third_party/android_tools":
190 From("chromium_deps", "src/third_party/android_tools"),
191
192 "third_party/android_testrunner":
193 Var("chromium_trunk") + "/src/third_party/android_testrunner@" + Var("chromium_revision"),
kjellander@webrtc.org430464c2013-06-04 16:29:45 +0000194
195 "third_party/WebKit/Tools/Scripts":
196 Var("webkit_trunk") + "/Tools/Scripts@151677",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000197
198 "third_party/openssl":
199 From("chromium_deps", "src/third_party/openssl"),
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000200 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000201}
202
203hooks = [
204 {
wjia@webrtc.org03cfde22014-01-14 17:48:34 +0000205 # Copy .gn from temporary place (../chromium_gn) to root_dir.
206 "name": "copy .gn",
207 "pattern": ".",
208 "action": ["python", Var("root_dir") + "/build/cp.py",
209 Var("root_dir") + "/../chromium_gn/.gn",
210 Var("root_dir")],
211 },
212 # Pull GN binaries. This needs to be before running GYP below.
213 {
214 "name": "gn_win",
215 "pattern": "tools/gn/bin/win/gn.exe.sha1",
216 "action": [ "download_from_google_storage",
217 "--no_resume",
218 "--platform=win32",
219 "--no_auth",
220 "--bucket", "chromium-gn",
221 "-s", Var("root_dir") + "/tools/gn/bin/win/gn.exe.sha1",
222 ],
223 },
224 {
225 "name": "gn_mac",
226 "pattern": "tools/gn/bin/mac/gn.sha1",
227 "action": [ "download_from_google_storage",
228 "--no_resume",
229 "--platform=darwin",
230 "--no_auth",
231 "--bucket", "chromium-gn",
232 "-s", Var("root_dir") + "/tools/gn/bin/mac/gn.sha1",
233 ],
234 },
235 {
236 "name": "gn_linux",
237 "pattern": "tools/gn/bin/linux/gn.sha1",
238 "action": [ "download_from_google_storage",
239 "--no_resume",
240 "--platform=linux*",
241 "--no_auth",
242 "--bucket", "chromium-gn",
243 "-s", Var("root_dir") + "/tools/gn/bin/linux/gn.sha1",
244 ],
245 },
246 {
247 "name": "gn_linux32",
248 "pattern": "tools/gn/bin/linux/gn32.sha1",
249 "action": [ "download_from_google_storage",
250 "--no_resume",
251 "--platform=linux*",
252 "--no_auth",
253 "--bucket", "chromium-gn",
254 "-s", Var("root_dir") + "/tools/gn/bin/linux/gn32.sha1",
255 ],
256 },
andrew@webrtc.org36291da2014-02-04 01:45:10 +0000257 # Pull clang-format binaries using checked-in hashes.
258 {
259 "name": "clang_format_win",
260 "pattern": "third_party/clang_format/bin/win/clang-format.exe.sha1",
261 "action": [ "download_from_google_storage",
262 "--no_resume",
263 "--platform=win32",
264 "--no_auth",
265 "--bucket", "chromium-clang-format",
266 "-s", Var("root_dir") + "/third_party/clang_format/bin/win/clang-format.exe.sha1",
267 ],
268 },
269 {
270 "name": "clang_format_mac",
271 "pattern": "third_party/clang_format/bin/mac/clang-format.sha1",
272 "action": [ "download_from_google_storage",
273 "--no_resume",
274 "--platform=darwin",
275 "--no_auth",
276 "--bucket", "chromium-clang-format",
277 "-s", Var("root_dir") + "/third_party/clang_format/bin/mac/clang-format.sha1",
278 ],
279 },
280 {
281 "name": "clang_format_linux",
282 "pattern": "third_party/clang_format/bin/linux/clang-format.sha1",
283 "action": [ "download_from_google_storage",
284 "--no_resume",
285 "--platform=linux*",
286 "--no_auth",
287 "--bucket", "chromium-clang-format",
288 "-s", Var("root_dir") + "/third_party/clang_format/bin/linux/clang-format.sha1",
289 ],
290 },
wjia@webrtc.org03cfde22014-01-14 17:48:34 +0000291 {
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000292 # Pull clang on mac. If nothing changed, or on non-mac platforms, this takes
293 # zero seconds to run. If something changed, it downloads a prebuilt clang.
294 "pattern": ".",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000295 "action": ["python", Var("root_dir") + "/tools/clang/scripts/update.py",
296 "--mac-only"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000297 },
298 {
stefan@webrtc.orgc3115832012-08-17 06:57:58 +0000299 # Update the cygwin mount on Windows.
300 # This is necessary to get the correct mapping between e.g. /bin and the
301 # cygwin path on Windows. Without it we can't run bash scripts in actions.
302 # Ideally this should be solved in "pylib/gyp/msvs_emulation.py".
303 "pattern": ".",
304 "action": ["python", Var("root_dir") + "/build/win/setup_cygwin_mount.py",
305 "--win-only"],
306 },
307 {
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000308 # Download test resources, i.e. video and audio files from Google Storage.
309 "pattern": "\\.sha1",
310 "action": ["download_from_google_storage",
311 "--directory",
312 "--recursive",
313 "--num_threads=10",
wjia@webrtc.org776d8df2014-01-27 19:55:16 +0000314 "--no_auth",
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000315 "--bucket", "chromium-webrtc-resources",
316 Var("root_dir") + "/resources"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000317 },
318 {
319 # A change to a .gyp, .gypi, or to GYP itself should run the generator.
320 "pattern": ".",
kjellander@webrtc.org7d7f0892014-01-31 09:34:51 +0000321 "action": ["python", Var("root_dir") + "/webrtc/build/gyp_webrtc",
andrew@webrtc.orgea5d0e52012-08-09 17:37:03 +0000322 Var("extra_gyp_flag")],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000323 },
324]
325