Update unit info file for perf dashboard.
[chromium-blink-merge.git] / DEPS
blob56cbad46b6ecfea55533fe7a628625e576f38f51
1 # This file is automatically processed to create .DEPS.git which is the file
2 # that gclient uses under git.
4 # See http://code.google.com/p/chromium/wiki/UsingGit
6 # To test manually, run:
7 #   python tools/deps2git/deps2git.py -o .DEPS.git
8 #   gclient runhooks
9 # DO NOT CHECK IN CHANGES TO .DEPS.git. It will be automatically updated by
10 # a bot when you modify this one.
12 # When adding a new dependency, please update the top-level .gitignore file
13 # to list the dependency's destination directory.
15 vars = {
16   # Use this googlecode_url variable only if there is an internal mirror for it.
17   # If you do not know, use the full path while defining your new deps entry.
18   "googlecode_url": "http://%s.googlecode.com/svn",
19   "sourceforge_url": "http://svn.code.sf.net/p/%(repo)s/code",
20   "llvm_git": "https://llvm.googlesource.com",
21   "libcxx_revision": "8f48c23568a122de6088455700e9d197b79bd8f8",
22   "libcxxabi_revision": "753a30dd68ae008948d48f16bc942d5963fe65a1",
23   "webkit_trunk": "http://src.chromium.org/blink/trunk",
24   "nacl_trunk": "http://src.chromium.org/native_client/trunk",
25   "webkit_revision": "164882",
26   "chromium_git": "https://chromium.googlesource.com",
27   "chromiumos_git": "https://chromium.googlesource.com/chromiumos",
28   "skia_git": "https://skia.googlesource.com",
29   "swig_revision": "230490",
30   "nacl_revision": "12586",
31   # After changing nacl_revision, run 'glient sync' and check native_client/DEPS
32   # to update other nacl_*_revision's.
33   "nacl_tools_revision": "12526",  # native_client/DEPS: tools_rev
34   "google_toolbox_for_mac_revision": "616",
35   "libaddressinput_revision": "176",
36   "libphonenumber_revision": "621",
37   "libvpx_revision": "241571",
38   "lss_revision": "24",
40   # These two FFmpeg variables must be updated together.  One is used for SVN
41   # checkouts and the other for Git checkouts.
42   "ffmpeg_revision": "244257",
43   "ffmpeg_hash": "172513a0692e299fb82e95f823351eb3696452d6",
45   "sfntly_revision": "228",
46   "lighttpd_revision": "33737",
47   "skia_revision": "13002",
48   "skia_hash": "303c4758ec7062daf1531c3642e9c7887423ef1b",
49   # Three lines of non-changing comments so that
50   # the commit queue can handle CLs rolling Skia
51   # and V8 without interference from each other.
52   "v8_revision": "18540",
53   # Three lines of non-changing comments so that
54   # the commit queue can handle CLs rolling WebRTC
55   # and V8 without interference from each other.
56   "webrtc_revision": "5300",
57   "jsoncpp_revision": "248",
58   "nss_revision": "243960",
59   # Three lines of non-changing comments so that
60   # the commit queue can handle CLs rolling swarming_client
61   # and whatever else without interference from each other.
62   "swarming_revision": "7124e396edf2801f23cf794bb1f08119c491ccf6",
63   # Three lines of non-changing comments so that
64   # the commit queue can handle CLs rolling openssl
65   # and whatever else without interference from each other.
66   "openssl_revision": "244037",
69 deps = {
70   "src/breakpad/src":
71     (Var("googlecode_url") % "google-breakpad") + "/trunk/src@1270",
73   "src/sdch/open-vcdiff":
74     (Var("googlecode_url") % "open-vcdiff") + "/trunk@42",
76   "src/testing/gtest":
77     (Var("googlecode_url") % "googletest") + "/trunk@643",
79   "src/testing/gmock":
80     (Var("googlecode_url") % "googlemock") + "/trunk@410",
82   "src/third_party/angle":
83     Var("chromium_git") +
84     "/angle/angle.git@95fa672f26db492aee2076b0acb524149d52c68f",
86   "src/third_party/trace-viewer":
87     (Var("googlecode_url") % "trace-viewer") + "/trunk@1084",
89   "src/third_party/WebKit":
90     Var("webkit_trunk") + "@" + Var("webkit_revision"),
92   "src/third_party/WebKit/LayoutTests/w3c/web-platform-tests":
93     Var("chromium_git") +
94     "/external/w3c/web-platform-tests.git@ac4322a338be82b3d8b722917d6d3d057c0a3f6a",
96   "src/third_party/WebKit/LayoutTests/w3c/csswg-test":
97     Var("chromium_git") +
98     "/external/w3c/csswg-test.git@8c415e3215a203fa3a22dbdd1799279fdf44c81e",
100   "src/third_party/icu":
101     "/trunk/deps/third_party/icu46@244134",
103   "src/third_party/libexif/sources":
104     "/trunk/deps/third_party/libexif/sources@146817",
106   "src/third_party/hunspell":
107    "/trunk/deps/third_party/hunspell@206172",
109   "src/third_party/hunspell_dictionaries":
110     "/trunk/deps/third_party/hunspell_dictionaries@193701",
112   "src/third_party/safe_browsing/testing":
113     (Var("googlecode_url") % "google-safe-browsing") + "/trunk/testing@112",
115   "src/third_party/cacheinvalidation/src":
116     (Var("googlecode_url") % "google-cache-invalidation-api") +
117     "/trunk/src@314",
119   "src/third_party/leveldatabase/src":
120     (Var("googlecode_url") % "leveldb") + "/trunk@78",
122   "src/third_party/libc++/trunk":
123     Var("llvm_git") + "/libcxx.git@" + Var("libcxx_revision"),
125   "src/third_party/libc++abi/trunk":
126     Var("llvm_git") + "/libcxxabi.git@" + Var("libcxxabi_revision"),
128   "src/third_party/snappy/src":
129     (Var("googlecode_url") % "snappy") + "/trunk@80",
131   "src/tools/grit":
132     (Var("googlecode_url") % "grit-i18n") + "/trunk@141",
134   "src/tools/gyp":
135     (Var("googlecode_url") % "gyp") + "/trunk@1833",
137   "src/tools/swarming_client":
138     Var("chromium_git") + "/external/swarming.client.git@" +
139         Var("swarming_revision"),
141   "src/v8":
142     (Var("googlecode_url") % "v8") + "/trunk@" + Var("v8_revision"),
144   "src/native_client":
145     Var("nacl_trunk") + "/src/native_client@" + Var("nacl_revision"),
147   "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin":
148     Var("nacl_trunk") + "/src/native_client/tests/prebuilt@" +
149     Var("nacl_revision"),
151   "src/third_party/sfntly/cpp/src":
152     (Var("googlecode_url") % "sfntly") + "/trunk/cpp/src@" +
153     Var("sfntly_revision"),
155   "src/third_party/skia/src":
156     (Var("googlecode_url") % "skia") + "/trunk/src@" + Var("skia_revision"),
158   "src/third_party/skia/gyp":
159     (Var("googlecode_url") % "skia") + "/trunk/gyp@" + Var("skia_revision"),
161   "src/third_party/skia/include":
162     (Var("googlecode_url") % "skia") + "/trunk/include@" + Var("skia_revision"),
164   "src/third_party/ots":
165     (Var("googlecode_url") % "ots") + "/trunk@108",
167   "src/third_party/brotli/src":
168     Var("chromium_git") +
169     "/external/font-compression-reference.git@dfc5a9f2151a7c88914c236c7db8fa119fee249c",
171   "src/tools/page_cycler/acid3":
172     "/trunk/deps/page_cycler/acid3@171600",
174   "src/chrome/test/data/perf/canvas_bench":
175     "/trunk/deps/canvas_bench@122605",
177   "src/chrome/test/data/perf/frame_rate/content":
178     "/trunk/deps/frame_rate/content@93671",
180   "src/chrome/test/data/perf/third_party/octane":
181     (Var("googlecode_url") % "octane-benchmark") + "/trunk@19",
183   "src/third_party/bidichecker":
184     (Var("googlecode_url") % "bidichecker") + "/trunk/lib@4",
186   "src/third_party/webgl/src":
187     Var("chromium_git") +
188     "/external/khronosgroup/webgl.git@159f31dd34842c871032d97d360a9dce5153f585",
190   "src/third_party/swig/Lib":
191     "/trunk/deps/third_party/swig/Lib@" + Var("swig_revision"),
193   # Make sure you update the two functional.DEPS and webdriver.DEPS too.
194   "src/third_party/webdriver/pylib":
195     (Var("googlecode_url") % "selenium") + "/trunk/py@18337",
197   "src/third_party/libvpx":
198     "/trunk/deps/third_party/libvpx@" +
199     Var("libvpx_revision"),
201   "src/third_party/ffmpeg":
202     "/trunk/deps/third_party/ffmpeg@" +
203     Var("ffmpeg_revision"),
205   "src/third_party/libjingle/source/talk":
206     (Var("googlecode_url") % "webrtc") + "/trunk/talk@" +
207     Var("webrtc_revision"),
209   "src/third_party/usrsctp/usrsctplib":
210     (Var("googlecode_url") % "sctp-refimpl") +
211     "/trunk/KERN/usrsctp/usrsctplib@8723",
213   "src/third_party/libsrtp":
214     "/trunk/deps/third_party/libsrtp@214783",
216   "src/third_party/speex":
217     "/trunk/deps/third_party/speex@198168",
219   "src/third_party/yasm/source/patched-yasm":
220     "/trunk/deps/third_party/yasm/patched-yasm@167605",
222   "src/third_party/libjpeg_turbo":
223     "/trunk/deps/third_party/libjpeg_turbo@239595",
225   "src/third_party/flac":
226     "/trunk/deps/third_party/flac@222897",
228   "src/third_party/pyftpdlib/src":
229     (Var("googlecode_url") % "pyftpdlib") + "/trunk@977",
231   "src/third_party/scons-2.0.1":
232     Var("nacl_trunk") + "/src/third_party/scons-2.0.1@" +
233         Var("nacl_tools_revision"),
235   "src/third_party/webrtc":
236     (Var("googlecode_url") % "webrtc") + "/trunk/webrtc@" + Var("webrtc_revision"),
238   "src/third_party/openmax_dl":
239     (Var("googlecode_url") % "webrtc") + "/deps/third_party/openmax@5205",
241   "src/third_party/jsoncpp/source/include":
242     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
243         "/trunk/jsoncpp/include@" + Var("jsoncpp_revision"),
245   "src/third_party/jsoncpp/source/src/lib_json":
246     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
247         "/trunk/jsoncpp/src/lib_json@" + Var("jsoncpp_revision"),
249   "src/third_party/libyuv":
250     (Var("googlecode_url") % "libyuv") + "/trunk@949",
252   "src/third_party/smhasher/src":
253     (Var("googlecode_url") % "smhasher") + "/trunk@151",
255   "src/third_party/libaddressinput/src/cpp":
256     (Var("googlecode_url") % "libaddressinput") + "/trunk/cpp@" +
257         Var("libaddressinput_revision"),
258   "src/third_party/libaddressinput/src/testdata":
259     (Var("googlecode_url") % "libaddressinput") + "/trunk/testdata@" +
260         Var("libaddressinput_revision"),
262   "src/third_party/libphonenumber/src/phonenumbers":
263     (Var("googlecode_url") % "libphonenumber") +
264         "/trunk/cpp/src/phonenumbers@" + Var("libphonenumber_revision"),
265   "src/third_party/libphonenumber/src/test":
266     (Var("googlecode_url") % "libphonenumber") + "/trunk/cpp/test@" +
267         Var("libphonenumber_revision"),
268   "src/third_party/libphonenumber/src/resources":
269     (Var("googlecode_url") % "libphonenumber") + "/trunk/resources@" +
270         Var("libphonenumber_revision"),
272   "src/tools/deps2git":
273     "/trunk/tools/deps2git@238405",
275   "src/third_party/webpagereplay":
276     (Var("googlecode_url") % "web-page-replay") + "/trunk@528",
278   "src/third_party/pywebsocket/src":
279     (Var("googlecode_url") % "pywebsocket") + "/trunk/src@662",
281   "src/third_party/opus/src":
282     "/trunk/deps/third_party/opus@237544",
284   "src/media/cdm/ppapi/api":
285     "/trunk/deps/cdm@241073",
287   "src/third_party/mesa/src":
288     "/trunk/deps/third_party/mesa@240938",
290   "src/third_party/cld_2/src":
291     (Var("googlecode_url") % "cld2") + "/trunk@84",
293   "src/third_party/html_office":
294      Var("chromium_git") +
295          "/chromium/html-office-public.git@1d04f3dfbd8bd604190dfb6f5a030d30233ba6ea",
299 deps_os = {
300   "win": {
301     "src/chrome/tools/test/reference_build/chrome_win":
302       "/trunk/deps/reference_builds/chrome_win@237381",
304     "src/third_party/cygwin":
305       "/trunk/deps/third_party/cygwin@231940",
307     "src/third_party/python_26":
308       "/trunk/tools/third_party/python_26@89111",
310     "src/third_party/psyco_win32":
311       "/trunk/deps/third_party/psyco_win32@237949",
313     "src/third_party/bison":
314       "/trunk/deps/third_party/bison@147303",
316     "src/third_party/gperf":
317       "/trunk/deps/third_party/gperf@147304",
319     "src/third_party/perl":
320       "/trunk/deps/third_party/perl@147900",
322     "src/third_party/lighttpd":
323       "/trunk/deps/third_party/lighttpd@" + Var("lighttpd_revision"),
325     # Parses Windows PE/COFF executable format.
326     "src/third_party/pefile":
327       (Var("googlecode_url") % "pefile") + "/trunk@63",
329     # NSS, for SSLClientSocketNSS.
330     "src/third_party/nss":
331       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
333     "src/third_party/swig/win":
334       "/trunk/deps/third_party/swig/win@" + Var("swig_revision"),
336     # GNU binutils assembler for x86-32.
337     "src/third_party/gnu_binutils":
338       (Var("nacl_trunk") + "/deps/third_party/gnu_binutils@" +
339        Var("nacl_tools_revision")),
340     # GNU binutils assembler for x86-64.
341     "src/third_party/mingw-w64/mingw/bin":
342       (Var("nacl_trunk") + "/deps/third_party/mingw-w64/mingw/bin@" +
343        Var("nacl_tools_revision")),
345     # Dependencies used by libjpeg-turbo
346     "src/third_party/yasm/binaries":
347       "/trunk/deps/third_party/yasm/binaries@154708",
349     # Binary level profile guided optimizations. This points to the
350     # latest release binaries for the toolchain.
351     "src/third_party/syzygy/binaries":
352       (Var("googlecode_url") % "sawbuck") + "/trunk/syzygy/binaries@1909",
354     # Binaries for nacl sdk.
355     "src/third_party/nacl_sdk_binaries":
356       "/trunk/deps/third_party/nacl_sdk_binaries@111576",
357   },
358   "ios": {
359     "src/third_party/google_toolbox_for_mac/src":
360       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
361       Var("google_toolbox_for_mac_revision"),
363     "src/third_party/nss":
364       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
366     # class-dump utility to generate header files for undocumented SDKs
367     "src/testing/iossim/third_party/class-dump":
368       "/trunk/deps/third_party/class-dump@199203",
370     # Code that's not needed due to not building everything
371     "src/build/util/support": None,
372     "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin": None,
373     "src/chrome/test/data/perf/canvas_bench": None,
374     "src/chrome/test/data/perf/frame_rate/content": None,
375     "src/chrome/test/data/perf/third_party/octane": None,
376     "src/media/cdm/ppapi/api": None,
377     "src/native_client": None,
378     "src/native_client/src/third_party/ppapi": None,
379     "src/third_party/angle": None,
380     "src/third_party/bidichecker": None,
381     "src/third_party/cld_2/src": None,
382     "src/third_party/ffmpeg": None,
383     "src/third_party/hunspell_dictionaries": None,
384     "src/third_party/hunspell": None,
385     "src/third_party/libaddressinput/src/cpp": None,
386     "src/third_party/libaddressinput/src/testdata": None,
387     "src/third_party/libexif/sources": None,
388     "src/third_party/libjpeg_turbo": None,
389     "src/third_party/libsrtp": None,
390     "src/third_party/libvpx": None,
391     "src/third_party/libyuv": None,
392     "src/third_party/mesa/src": None,
393     "src/third_party/opus/src": None,
394     "src/third_party/openmax_dl": None,
395     "src/third_party/ots": None,
396     "src/third_party/pymox/src": None,
397     "src/third_party/safe_browsing/testing": None,
398     "src/third_party/scons-2.0.1": None,
399     "src/third_party/sfntly/cpp/src": None,
400     "src/third_party/smhasher/src": None,
401     "src/third_party/swig/Lib": None,
402     "src/third_party/undoview": None,
403     "src/third_party/usrsctp/usrsctplib": None,
404     "src/third_party/v8-i18n": None,
405     "src/third_party/webdriver/pylib": None,
406     "src/third_party/webgl": None,
407     "src/third_party/webpagereplay": None,
408     "src/third_party/webrtc": None,
409     "src/third_party/yasm/source/patched-yasm": None,
410     "src/tools/page_cycler/acid3": None,
411     "src/v8": None,
412   },
413   "mac": {
414     "src/chrome/tools/test/reference_build/chrome_mac":
415       "/trunk/deps/reference_builds/chrome_mac@237381",
417     "src/third_party/google_toolbox_for_mac/src":
418       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
419       Var("google_toolbox_for_mac_revision"),
421     "src/third_party/pdfsqueeze":
422       (Var("googlecode_url") % "pdfsqueeze") + "/trunk@5",
424     "src/third_party/lighttpd":
425       "/trunk/deps/third_party/lighttpd@" + Var("lighttpd_revision"),
427     "src/third_party/swig/mac":
428       "/trunk/deps/third_party/swig/mac@" + Var("swig_revision"),
430     # NSS, for SSLClientSocketNSS.
431     "src/third_party/nss":
432       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
434     "src/chrome/installer/mac/third_party/xz/xz":
435       "/trunk/deps/third_party/xz@233311",
436   },
437   "unix": {
438     # Linux, really.
439     "src/chrome/tools/test/reference_build/chrome_linux":
440       "/trunk/deps/reference_builds/chrome_linux64@237381",
442     "src/third_party/xdg-utils":
443       "/trunk/deps/third_party/xdg-utils@203785",
445     "src/third_party/swig/linux":
446       "/trunk/deps/third_party/swig/linux@" + Var("swig_revision"),
448     "src/third_party/lss":
449       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
450        Var("lss_revision")),
452     "src/third_party/openssl":
453       "/trunk/deps/third_party/openssl@" + Var("openssl_revision"),
455     "src/third_party/gold":
456       "/trunk/deps/third_party/gold@228995",
458     "src/third_party/libmtp":
459       "/trunk/deps/third_party/libmtp@206535",
461     # Used on Linux only. CrOS already has a copy.
462     "src/third_party/mtpd/source":
463       Var("chromiumos_git") + "/platform/mtpd.git" +
464       "@5be739c938a0a229ba9479b00b180e1f9c843e81",
466     # Used on Linux only. CrOS already has a copy.
467     "src/third_party/cros_dbus_cplusplus/source":
468       Var("chromiumos_git") + "/third_party/dbus-cplusplus.git" +
469       "@5e8f6d9db5c2abfb91d91f751184f25bb5cd0900",
471     # For Linux and Chromium OS.
472     "src/third_party/cros_system_api":
473       Var("chromiumos_git") + "/platform/system_api.git" +
474       "@cfa23a554dcb262bfac10f9f5ac624d26c8c4e38",
476     # Note that this is different from Android's freetype repo.
477     "src/third_party/freetype2/src":
478       Var("chromium_git") + "/chromium/src/third_party/freetype2.git" +
479       "@d699c2994ecc178c4ed05ac2086061b2034c2178",
481     # Build tools for targeting ChromeOS.
482     "src/third_party/chromite":
483       Var("chromiumos_git") + "/chromite.git" +
484       "@6637dcd35a8b9f02ba54d2a369118306cee88432",
486     # Dependency of chromite.git.
487     "src/third_party/pyelftools":
488       Var("chromiumos_git") + "/third_party/pyelftools.git" +
489       "@bdc1d380acd88d4bfaf47265008091483b0d614e",
491     "src/third_party/undoview":
492       "/trunk/deps/third_party/undoview@119694",
494     "src/third_party/liblouis/src":
495       Var("chromium_git") +
496       "/external/liblouis.git@3c2daee56250162e5a75830871601d74328d39f5",
498     # Used for embedded builds. CrOS & Linux use the system version.
499     "src/third_party/fontconfig/src":
500       Var("chromium_git") + "/external/fontconfig.git" +
501       "@4f944971dac3c0bbc6fdd3bf3123e3c8378a3acb",
502   },
503   "android": {
504     "src/third_party/android_tools":
505       Var("chromium_git") + "/android_tools.git" +
506       "@25cf2d85072b06f78956ecaacd564ef56a054d65",
508     "src/third_party/aosp":
509       "/trunk/deps/third_party/aosp@148330",
511     "src/third_party/apache-mime4j":
512       "/trunk/deps/third_party/apache-mime4j@170888",
514     "src/third_party/findbugs":
515       "/trunk/deps/third_party/findbugs@163586",
517     "src/third_party/freetype":
518       Var("chromium_git") + "/chromium/src/third_party/freetype.git" +
519       "@a2b9955b49034a51dfbc8bf9f4e9d312149cecac",
521     "src/third_party/guava/src":
522       Var("chromium_git") + "/external/guava-libraries.git" +
523       "@c523556ab7d0f05afadebd20e7768d4c16af8771",
525     "src/third_party/httpcomponents-client":
526       "/trunk/deps/third_party/httpcomponents-client@170888",
528     "src/third_party/httpcomponents-core":
529       "/trunk/deps/third_party/httpcomponents-core@170888",
531     "src/third_party/jarjar":
532       "/trunk/deps/third_party/jarjar@170888",
534     "src/third_party/jsr-305/src":
535       (Var("googlecode_url") % "jsr-305") + "/trunk@51",
537     "src/third_party/lss":
538       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
539        Var("lss_revision")),
541     "src/third_party/openssl":
542       "/trunk/deps/third_party/openssl@" + Var("openssl_revision"),
544     "src/third_party/eyesfree/src/android/java/src/com/googlecode/eyesfree/braille":
545       (Var("googlecode_url") % "eyes-free") + "/trunk/braille/client/src/com/googlecode/eyesfree/braille@797",
547     # Android shouldn't use this address validation library.
548     "src/third_party/libaddressinput/src/cpp": None,
549     "src/third_party/libaddressinput/src/testdata": None,
550   },
554 include_rules = [
555   # Everybody can use some things.
556   "+base",
557   "+build",
558   "+ipc",
560   # Everybody can use headers generated by tools/generate_library_loader.
561   "+library_loaders",
563   "+testing",
564   "+third_party/icu/source/common/unicode",
565   "+third_party/icu/source/i18n/unicode",
566   "+url",
570 # checkdeps.py shouldn't check include paths for files in these dirs:
571 skip_child_includes = [
572   "breakpad",
573   "delegate_execute",
574   "metro_driver",
575   "native_client_sdk",
576   "o3d",
577   "pdf",
578   "sdch",
579   "skia",
580   "testing",
581   "third_party",
582   "v8",
583   "win8",
587 hooks = [
588   {
589     # This downloads binaries for Native Client's newlib toolchain.
590     # Done in lieu of building the toolchain from scratch as it can take
591     # anywhere from 30 minutes to 4 hours depending on platform to build.
592     "name": "nacltools",
593     "pattern": ".",
594     "action": [
595         "python", "src/build/download_nacl_toolchains.py",
596          "--no-arm-trusted",
597          "--keep",
598     ],
599   },
600   {
601     # Downloads an ARM sysroot image to src/arm-sysroot. This image updates
602     # at about the same rate that the chrome build deps change.
603     # This script is a no-op except for linux users who have
604     # target_arch=arm in their GYP_DEFINES.
605     "name": "sysroot",
606     "pattern": ".",
607     "action": ["python", "src/build/linux/install-arm-sysroot.py",
608                "--linux-only"],
609   },
610   {
611     # Downloads the Debian Wheezy sysroot to chrome/installer/linux if needed.
612     # This sysroot updates at about the same rate that the chrome build deps
613     # change. This script is a no-op except for linux users who are doing
614     # official chrome builds.
615     "name": "sysroot",
616     "pattern": ".",
617     "action": [
618         "python",
619         "src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py",
620         "--linux-only",
621         "--arch=amd64"],
622   },
623   {
624     # Same as above, but for 32-bit Linux.
625     "name": "sysroot",
626     "pattern": ".",
627     "action": [
628         "python",
629         "src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py",
630         "--linux-only",
631         "--arch=i386"],
632   },
633   {
634     # Pull clang on mac. If nothing changed, or on non-mac platforms, this takes
635     # zero seconds to run. If something changed, it downloads a prebuilt clang,
636     # which takes ~20s, but clang speeds up builds by more than 20s.
637     "name": "clang",
638     "pattern": ".",
639     "action": ["python", "src/tools/clang/scripts/update.py", "--mac-only"],
640   },
641   {
642     # Update the cygwin mount on Windows.
643     "name": "cygwin",
644     "pattern": ".",
645     "action": ["python", "src/build/win/setup_cygwin_mount.py", "--win-only"],
646   },
647   {
648     # Update LASTCHANGE. This is also run by export_tarball.py in
649     # src/tools/export_tarball - please keep them in sync.
650     "name": "lastchange",
651     "pattern": ".",
652     "action": ["python", "src/build/util/lastchange.py",
653                "-o", "src/build/util/LASTCHANGE"],
654   },
655   {
656     # Update LASTCHANGE.blink. This is also run by export_tarball.py in
657     # src/tools/export_tarball - please keep them in sync.
658     "name": "lastchange",
659     "pattern": ".",
660     "action": ["python", "src/build/util/lastchange.py",
661                "-s", "src/third_party/WebKit",
662                "-o", "src/build/util/LASTCHANGE.blink"],
663   },
664   # Pull GN binaries. This needs to be before running GYP below.
665   {
666     "name": "gn_win",
667     "pattern": "src/tools/gn/bin/win/gn.exe.sha1",
668     "action": [ "download_from_google_storage",
669                 "--no_resume",
670                 "--platform=win32",
671                 "--no_auth",
672                 "--bucket", "chromium-gn",
673                 "-s", "src/tools/gn/bin/win/gn.exe.sha1",
674     ],
675   },
676   {
677     "name": "gn_mac",
678     "pattern": "src/tools/gn/bin/mac/gn.sha1",
679     "action": [ "download_from_google_storage",
680                 "--no_resume",
681                 "--platform=darwin",
682                 "--no_auth",
683                 "--bucket", "chromium-gn",
684                 "-s", "src/tools/gn/bin/mac/gn.sha1",
685     ],
686   },
687   {
688     "name": "gn_linux",
689     "pattern": "src/tools/gn/bin/linux/gn.sha1",
690     "action": [ "download_from_google_storage",
691                 "--no_resume",
692                 "--platform=linux*",
693                 "--no_auth",
694                 "--bucket", "chromium-gn",
695                 "-s", "src/tools/gn/bin/linux/gn.sha1",
696     ],
697   },
698   {
699     "name": "gn_linux32",
700     "pattern": "src/tools/gn/bin/linux/gn32.sha1",
701     "action": [ "download_from_google_storage",
702                 "--no_resume",
703                 "--platform=linux*",
704                 "--no_auth",
705                 "--bucket", "chromium-gn",
706                 "-s", "src/tools/gn/bin/linux/gn32.sha1",
707     ],
708   },
709   # Pull clang-format binaries using checked-in hashes.
710   {
711     "name": "clang_format_win",
712     "pattern": "src/third_party/clang_format/bin/win/clang-format.exe.sha1",
713     "action": [ "download_from_google_storage",
714                 "--no_resume",
715                 "--platform=win32",
716                 "--no_auth",
717                 "--bucket", "chromium-clang-format",
718                 "-s", "src/third_party/clang_format/bin/win/clang-format.exe.sha1",
719     ],
720   },
721   {
722     "name": "clang_format_mac",
723     "pattern": "src/third_party/clang_format/bin/mac/clang-format.sha1",
724     "action": [ "download_from_google_storage",
725                 "--no_resume",
726                 "--platform=darwin",
727                 "--no_auth",
728                 "--bucket", "chromium-clang-format",
729                 "-s", "src/third_party/clang_format/bin/mac/clang-format.sha1",
730     ],
731   },
732   {
733     "name": "clang_format_linux",
734     "pattern": "src/third_party/clang_format/bin/linux/clang-format.sha1",
735     "action": [ "download_from_google_storage",
736                 "--no_resume",
737                 "--platform=linux*",
738                 "--no_auth",
739                 "--bucket", "chromium-clang-format",
740                 "-s", "src/third_party/clang_format/bin/linux/clang-format.sha1",
741     ],
742   },
743   {
744     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
745     "name": "gyp",
746     "pattern": ".",
747     "action": ["python", "src/build/gyp_chromium"],
748   },
749   {
750     # Check for landmines (reasons to clobber the build).
751     "name": "landmines",
752     "pattern": ".",
753     "action": ["python", "src/build/landmines.py"],
754   },