Add TSan flags to download_build_install.py
[chromium-blink-merge.git] / DEPS
blobeca3a77939cd0721bacc3dd8a81178531f13896b
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_url": "http://src.chromium.org/llvm-project",
21   "llvm_git": "https://llvm.googlesource.com",
22   "libcxx_revision": "197314",
23   "libcxxabi_revision": "197063",
24   "webkit_trunk": "http://src.chromium.org/blink/trunk",
25   "nacl_trunk": "http://src.chromium.org/native_client/trunk",
26   "webkit_revision": "169223",
27   "chromium_git": "https://chromium.googlesource.com",
28   "chromiumos_git": "https://chromium.googlesource.com/chromiumos",
29   "skia_git": "https://skia.googlesource.com",
30   "swig_revision": "230490",
31   "nacl_revision": "12835",
32   # After changing nacl_revision, run 'glient sync' and check native_client/DEPS
33   # to update other nacl_*_revision's.
34   "nacl_tools_revision": "12760",  # native_client/DEPS: tools_rev
35   "google_toolbox_for_mac_revision": "662",
36   "libaddressinput_revision": "176",
37   "libphonenumber_revision": "621",
38   "libvpx_revision": "255831",
39   "lss_revision": "24",
41   # These two FFmpeg variables must be updated together.  One is used for SVN
42   # checkouts and the other for Git checkouts.
43   "ffmpeg_revision": "255431",
44   "ffmpeg_hash": "681ca6bfed239ad2e1a6a3c8a586839c6dbd3e87",
46   "sfntly_revision": "228",
47   "lighttpd_revision": "33737",
48   "skia_revision": "13776",
49   "skia_hash": "e54a23fcfa42b2fc9d320650de72bcb2d9566b2d",
50   # Three lines of non-changing comments so that
51   # the commit queue can handle CLs rolling Skia
52   # and V8 without interference from each other.
53   "v8_branch": "trunk",
54   "v8_revision": "19915",
55   # Three lines of non-changing comments so that
56   # the commit queue can handle CLs rolling WebRTC
57   # and V8 without interference from each other.
58   "webrtc_revision": "5679",
59   "jsoncpp_revision": "248",
60   "nss_revision": "256695",
61   # Three lines of non-changing comments so that
62   # the commit queue can handle CLs rolling swarming_client
63   # and whatever else without interference from each other.
64   "swarming_revision": "2808311e2ba2c19f268a58a2c0f81c967910d52f",
65   # Three lines of non-changing comments so that
66   # the commit queue can handle CLs rolling openssl
67   # and whatever else without interference from each other.
68   "openssl_revision": "253925",
69   # Three lines of non-changing comments so that
70   # the commit queue can handle CLs rolling ANGLE
71   # and whatever else without interference from each other.
72   "angle_revision": "fa63e947cb3eccf463648d21a05d5002c9b8adfa",
75 deps = {
76   "src/breakpad/src":
77     (Var("googlecode_url") % "google-breakpad") + "/trunk/src@1271",
79   "src/sdch/open-vcdiff":
80     (Var("googlecode_url") % "open-vcdiff") + "/trunk@42",
82   "src/testing/gtest":
83     (Var("googlecode_url") % "googletest") + "/trunk@643",
85   "src/testing/gmock":
86     (Var("googlecode_url") % "googlemock") + "/trunk@410",
88   "src/third_party/angle":
89     Var("chromium_git") + "/angle/angle.git@" + Var("angle_revision"),
91   "src/third_party/trace-viewer":
92     (Var("googlecode_url") % "trace-viewer") + "/trunk@1203",
94   "src/third_party/WebKit":
95     Var("webkit_trunk") + "@" + Var("webkit_revision"),
97   "src/third_party/WebKit/LayoutTests/w3c/web-platform-tests":
98     Var("chromium_git") +
99     "/external/w3c/web-platform-tests.git@ac4322a338be82b3d8b722917d6d3d057c0a3f6a",
101   "src/third_party/WebKit/LayoutTests/w3c/csswg-test":
102     Var("chromium_git") +
103     "/external/w3c/csswg-test.git@8c415e3215a203fa3a22dbdd1799279fdf44c81e",
105   "src/third_party/icu":
106     "/trunk/deps/third_party/icu46@249466",
108   "src/third_party/libexif/sources":
109     "/trunk/deps/third_party/libexif/sources@146817",
111   "src/third_party/hunspell":
112    "/trunk/deps/third_party/hunspell@256272",
114   "src/third_party/hunspell_dictionaries":
115     "/trunk/deps/third_party/hunspell_dictionaries@193701",
117   "src/third_party/safe_browsing/testing":
118     (Var("googlecode_url") % "google-safe-browsing") + "/trunk/testing@112",
120   "src/third_party/cacheinvalidation/src":
121     (Var("googlecode_url") % "google-cache-invalidation-api") +
122     "/trunk/src@330",
124   "src/third_party/leveldatabase/src":
125     (Var("googlecode_url") % "leveldb") + "/trunk@79",
127   "src/third_party/libc++/trunk":
128     Var("llvm_url") + "/libcxx/trunk@" + Var("libcxx_revision"),
130   "src/third_party/libc++abi/trunk":
131     Var("llvm_url") + "/libcxxabi/trunk@" + Var("libcxxabi_revision"),
133   "src/third_party/snappy/src":
134     (Var("googlecode_url") % "snappy") + "/trunk@80",
136   "src/tools/grit":
137     (Var("googlecode_url") % "grit-i18n") + "/trunk@156",
139   "src/tools/gyp":
140     (Var("googlecode_url") % "gyp") + "/trunk@1872",
142   "src/tools/swarming_client":
143     Var("chromium_git") + "/external/swarming.client.git@" +
144         Var("swarming_revision"),
146   "src/v8":
147     (Var("googlecode_url") % "v8") + "/" + Var("v8_branch") + "@" +
148     Var("v8_revision"),
150   "src/native_client":
151     Var("nacl_trunk") + "/src/native_client@" + Var("nacl_revision"),
153   "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin":
154     Var("nacl_trunk") + "/src/native_client/tests/prebuilt@" +
155     Var("nacl_revision"),
157   "src/third_party/sfntly/cpp/src":
158     (Var("googlecode_url") % "sfntly") + "/trunk/cpp/src@" +
159     Var("sfntly_revision"),
161   "src/third_party/skia/src":
162     (Var("googlecode_url") % "skia") + "/trunk/src@" + Var("skia_revision"),
164   "src/third_party/skia/gyp":
165     (Var("googlecode_url") % "skia") + "/trunk/gyp@" + Var("skia_revision"),
167   "src/third_party/skia/include":
168     (Var("googlecode_url") % "skia") + "/trunk/include@" + Var("skia_revision"),
170   "src/third_party/ots":
171     (Var("googlecode_url") % "ots") + "/trunk@110",
173   "src/third_party/brotli/src":
174     Var("chromium_git") +
175     "/external/font-compression-reference.git@7f848593bd2ec83f4537b6d494a5bf55b9bd4456",
177   "src/tools/page_cycler/acid3":
178     "/trunk/deps/page_cycler/acid3@171600",
180   "src/chrome/test/data/perf/canvas_bench":
181     "/trunk/deps/canvas_bench@122605",
183   "src/chrome/test/data/perf/frame_rate/content":
184     "/trunk/deps/frame_rate/content@93671",
186   "src/chrome/test/data/perf/third_party/octane":
187     (Var("googlecode_url") % "octane-benchmark") + "/trunk@19",
189   "src/third_party/bidichecker":
190     (Var("googlecode_url") % "bidichecker") + "/trunk/lib@4",
192   "src/third_party/webgl/src":
193     Var("chromium_git") +
194     "/external/khronosgroup/webgl.git@b6bce42c2484666d3e28dc25b12f27eb06f39f27",
196   "src/third_party/swig/Lib":
197     "/trunk/deps/third_party/swig/Lib@" + Var("swig_revision"),
199   # Make sure you update the two functional.DEPS and webdriver.DEPS too.
200   "src/third_party/webdriver/pylib":
201     (Var("googlecode_url") % "selenium") + "/trunk/py@18337",
203   "src/third_party/libvpx":
204     "/trunk/deps/third_party/libvpx@" +
205     Var("libvpx_revision"),
207   "src/third_party/ffmpeg":
208     "/trunk/deps/third_party/ffmpeg@" +
209     Var("ffmpeg_revision"),
211   "src/third_party/libjingle/source/talk":
212     (Var("googlecode_url") % "webrtc") + "/trunk/talk@" +
213     Var("webrtc_revision"),
215   "src/third_party/usrsctp/usrsctplib":
216     (Var("googlecode_url") % "sctp-refimpl") +
217     "/trunk/KERN/usrsctp/usrsctplib@8723",
219   "src/third_party/libsrtp":
220     "/trunk/deps/third_party/libsrtp@250757",
222   "src/third_party/speex":
223     "/trunk/deps/third_party/speex@198168",
225   "src/third_party/yasm/source/patched-yasm":
226     "/trunk/deps/third_party/yasm/patched-yasm@167605",
228   "src/third_party/libjpeg_turbo":
229     "/trunk/deps/third_party/libjpeg_turbo@251747",
231   "src/third_party/flac":
232     "/trunk/deps/third_party/flac@222897",
234   "src/third_party/pyftpdlib/src":
235     (Var("googlecode_url") % "pyftpdlib") + "/trunk@977",
237   "src/third_party/scons-2.0.1":
238     Var("nacl_trunk") + "/src/third_party/scons-2.0.1@" +
239         Var("nacl_tools_revision"),
241   "src/third_party/webrtc":
242     (Var("googlecode_url") % "webrtc") + "/trunk/webrtc@" + Var("webrtc_revision"),
244   "src/third_party/openmax_dl":
245     (Var("googlecode_url") % "webrtc") + "/deps/third_party/openmax@5569",
247   "src/third_party/jsoncpp/source/include":
248     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
249         "/trunk/jsoncpp/include@" + Var("jsoncpp_revision"),
251   "src/third_party/jsoncpp/source/src/lib_json":
252     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
253         "/trunk/jsoncpp/src/lib_json@" + Var("jsoncpp_revision"),
255   "src/third_party/libyuv":
256     (Var("googlecode_url") % "libyuv") + "/trunk@979",
258   "src/third_party/smhasher/src":
259     (Var("googlecode_url") % "smhasher") + "/trunk@151",
261   "src/third_party/libaddressinput/src/cpp":
262     (Var("googlecode_url") % "libaddressinput") + "/trunk/cpp@" +
263         Var("libaddressinput_revision"),
264   "src/third_party/libaddressinput/src/testdata":
265     (Var("googlecode_url") % "libaddressinput") + "/trunk/testdata@" +
266         Var("libaddressinput_revision"),
268   "src/third_party/libphonenumber/src/phonenumbers":
269     (Var("googlecode_url") % "libphonenumber") +
270         "/trunk/cpp/src/phonenumbers@" + Var("libphonenumber_revision"),
271   "src/third_party/libphonenumber/src/test":
272     (Var("googlecode_url") % "libphonenumber") + "/trunk/cpp/test@" +
273         Var("libphonenumber_revision"),
274   "src/third_party/libphonenumber/src/resources":
275     (Var("googlecode_url") % "libphonenumber") + "/trunk/resources@" +
276         Var("libphonenumber_revision"),
278   "src/tools/deps2git":
279     "/trunk/tools/deps2git@248305",
281   "src/third_party/clang_format/script":
282     Var("llvm_url") + "/cfe/trunk/tools/clang-format@202065",
284   "src/third_party/webpagereplay":
285     (Var("googlecode_url") % "web-page-replay") + "/trunk@544",
287   "src/third_party/pywebsocket/src":
288     (Var("googlecode_url") % "pywebsocket") + "/trunk/src@662",
290   "src/third_party/opus/src":
291     "/trunk/deps/third_party/opus@237544",
293   "src/media/cdm/ppapi/api":
294     "/trunk/deps/cdm@249141",
296   "src/third_party/mesa/src":
297     "/trunk/deps/third_party/mesa@254411",
299   "src/third_party/cld_2/src":
300     (Var("googlecode_url") % "cld2") + "/trunk@84",
302   "src/chrome/browser/resources/pdf/html_office":
303      Var("chromium_git") +
304          "/chromium/html-office-public.git@9f76cc282c471ae4ff77415384db039fcab2faa8",
306   "src/third_party/libwebm/source":
307     Var("chromium_git") +
308       "/webm/libwebm.git@0f7815b036651e242ec8c2fcfb59fe54f69be1a8",
310   "src/third_party/openssl":
311     "/trunk/deps/third_party/openssl@" + Var("openssl_revision"),
315 deps_os = {
316   "win": {
317     "src/chrome/tools/test/reference_build/chrome_win":
318       "/trunk/deps/reference_builds/chrome_win@254637",
320     "src/third_party/cygwin":
321       "/trunk/deps/third_party/cygwin@231940",
323     "src/third_party/psyco_win32":
324       "/trunk/deps/third_party/psyco_win32@237949",
326     "src/third_party/bison":
327       "/trunk/deps/third_party/bison@147303",
329     "src/third_party/gperf":
330       "/trunk/deps/third_party/gperf@147304",
332     "src/third_party/perl":
333       "/trunk/deps/third_party/perl@147900",
335     "src/third_party/lighttpd":
336       "/trunk/deps/third_party/lighttpd@" + Var("lighttpd_revision"),
338     # Parses Windows PE/COFF executable format.
339     "src/third_party/pefile":
340       (Var("googlecode_url") % "pefile") + "/trunk@63",
342     # NSS, for SSLClientSocketNSS.
343     "src/third_party/nss":
344       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
346     "src/third_party/swig/win":
347       "/trunk/deps/third_party/swig/win@" + Var("swig_revision"),
349     # GNU binutils assembler for x86-32.
350     "src/third_party/gnu_binutils":
351       (Var("nacl_trunk") + "/deps/third_party/gnu_binutils@" +
352        Var("nacl_tools_revision")),
353     # GNU binutils assembler for x86-64.
354     "src/third_party/mingw-w64/mingw/bin":
355       (Var("nacl_trunk") + "/deps/third_party/mingw-w64/mingw/bin@" +
356        Var("nacl_tools_revision")),
358     # Dependencies used by libjpeg-turbo
359     "src/third_party/yasm/binaries":
360       "/trunk/deps/third_party/yasm/binaries@154708",
362     # Binary level profile guided optimizations. This points to the
363     # latest release binaries for the toolchain.
364     "src/third_party/syzygy/binaries":
365       (Var("googlecode_url") % "sawbuck") + "/trunk/syzygy/binaries@2058",
367     # Binaries for nacl sdk.
368     "src/third_party/nacl_sdk_binaries":
369       "/trunk/deps/third_party/nacl_sdk_binaries@111576",
370   },
371   "ios": {
372     "src/third_party/google_toolbox_for_mac/src":
373       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
374       Var("google_toolbox_for_mac_revision"),
376     "src/third_party/nss":
377       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
379     # class-dump utility to generate header files for undocumented SDKs
380     "src/testing/iossim/third_party/class-dump":
381       "/trunk/deps/third_party/class-dump@199203",
383     # Code that's not needed due to not building everything
384     "src/build/util/support": None,
385     "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin": None,
386     "src/chrome/test/data/perf/canvas_bench": None,
387     "src/chrome/test/data/perf/frame_rate/content": None,
388     "src/chrome/test/data/perf/third_party/octane": None,
389     "src/media/cdm/ppapi/api": None,
390     "src/native_client": None,
391     "src/native_client/src/third_party/ppapi": None,
392     "src/third_party/angle": None,
393     "src/third_party/bidichecker": None,
394     "src/third_party/brotli/src": None,
395     "src/third_party/cld_2/src": None,
396     "src/third_party/ffmpeg": None,
397     "src/third_party/hunspell_dictionaries": None,
398     "src/third_party/hunspell": None,
399     "src/third_party/libaddressinput/src/cpp": None,
400     "src/third_party/libaddressinput/src/testdata": None,
401     "src/third_party/libc++/trunk": None,
402     "src/third_party/libc++abi/trunk": None,
403     "src/third_party/libexif/sources": None,
404     "src/third_party/libjpeg_turbo": None,
405     "src/third_party/libsrtp": None,
406     "src/third_party/libvpx": None,
407     "src/third_party/libyuv": None,
408     "src/third_party/mesa/src": None,
409     "src/third_party/opus/src": None,
410     "src/third_party/openmax_dl": None,
411     "src/third_party/ots": None,
412     "src/third_party/pymox/src": None,
413     "src/third_party/safe_browsing/testing": None,
414     "src/third_party/scons-2.0.1": None,
415     "src/third_party/sfntly/cpp/src": None,
416     "src/third_party/speex": None,
417     "src/third_party/swig/Lib": None,
418     "src/third_party/usrsctp/usrsctplib": None,
419     "src/third_party/v8-i18n": None,
420     "src/third_party/webdriver/pylib": None,
421     "src/third_party/webgl": None,
422     "src/third_party/webpagereplay": None,
423     "src/third_party/webrtc": None,
424     "src/third_party/WebKit/LayoutTests/w3c/web-platform-tests": None,
425     "src/third_party/WebKit/LayoutTests/w3c/csswg-test": None,
426     "src/third_party/yasm/source/patched-yasm": None,
427     "src/tools/page_cycler/acid3": None,
428     "src/v8": None,
429   },
430   "mac": {
431     "src/chrome/tools/test/reference_build/chrome_mac":
432       "/trunk/deps/reference_builds/chrome_mac@255182",
434     "src/third_party/google_toolbox_for_mac/src":
435       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
436       Var("google_toolbox_for_mac_revision"),
438     "src/third_party/pdfsqueeze":
439       (Var("googlecode_url") % "pdfsqueeze") + "/trunk@5",
441     "src/third_party/lighttpd":
442       "/trunk/deps/third_party/lighttpd@" + Var("lighttpd_revision"),
444     "src/third_party/swig/mac":
445       "/trunk/deps/third_party/swig/mac@" + Var("swig_revision"),
447     # NSS, for SSLClientSocketNSS.
448     "src/third_party/nss":
449       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
451     "src/chrome/installer/mac/third_party/xz/xz":
452       "/trunk/deps/third_party/xz@233311",
453   },
454   "unix": {
455     # Linux, really.
456     "src/chrome/tools/test/reference_build/chrome_linux":
457       "/trunk/deps/reference_builds/chrome_linux64@254637",
459     "src/third_party/xdg-utils":
460       "/trunk/deps/third_party/xdg-utils@203785",
462     "src/third_party/swig/linux":
463       "/trunk/deps/third_party/swig/linux@" + Var("swig_revision"),
465     "src/third_party/lss":
466       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
467        Var("lss_revision")),
469     "src/third_party/gold":
470       "/trunk/deps/third_party/gold@228995",
472     "src/third_party/libmtp":
473       "/trunk/deps/third_party/libmtp@206535",
475     # Used on Linux only. CrOS already has a copy.
476     "src/third_party/mtpd/source":
477       Var("chromiumos_git") + "/platform/mtpd.git" +
478       "@e4e4656e9aa710f0617dab8746ab6116c0506ceb",
480     # Used on Linux only. CrOS already has a copy.
481     "src/third_party/cros_dbus_cplusplus/source":
482       Var("chromiumos_git") + "/third_party/dbus-cplusplus.git" +
483       "@e4120532bbf3ca9f743b0be1f539381a54d16867",
485     # For Linux and Chromium OS.
486     "src/third_party/cros_system_api":
487       Var("chromiumos_git") + "/platform/system_api.git" +
488       "@f5a15cd055c066c026ec0f495c875bc9426eb24c",
490     # Note that this is different from Android's freetype repo.
491     "src/third_party/freetype2/src":
492       Var("chromium_git") + "/chromium/src/third_party/freetype2.git" +
493       "@d699c2994ecc178c4ed05ac2086061b2034c2178",
495     # Build tools for targeting ChromeOS.
496     "src/third_party/chromite":
497       Var("chromiumos_git") + "/chromite.git" +
498       "@1ee2901d33ae698d1f2a1d95e9f3fd5bbd5f13f9",
500     # Dependency of chromite.git.
501     "src/third_party/pyelftools":
502       Var("chromiumos_git") + "/third_party/pyelftools.git" +
503       "@bdc1d380acd88d4bfaf47265008091483b0d614e",
505     "src/third_party/undoview":
506       "/trunk/deps/third_party/undoview@119694",
508     "src/third_party/liblouis/src":
509       Var("chromium_git") +
510       "/external/liblouis.git@3c2daee56250162e5a75830871601d74328d39f5",
512     # Used for embedded builds. CrOS & Linux use the system version.
513     "src/third_party/fontconfig/src":
514       Var("chromium_git") + "/external/fontconfig.git" +
515       "@f16c3118e25546c1b749f9823c51827a60aeb5c1",
516   },
517   "android": {
518     "src/third_party/android_tools":
519       Var("chromium_git") + "/android_tools.git" +
520       "@0582bdc17b4829beb522975441546a4eb99b11b5",
522     "src/third_party/aosp":
523       "/trunk/deps/third_party/aosp@148330",
525     "src/third_party/apache-mime4j":
526       "/trunk/deps/third_party/apache-mime4j@170888",
528     "src/third_party/findbugs":
529       "/trunk/deps/third_party/findbugs@245039",
531     "src/third_party/freetype":
532       Var("chromium_git") + "/chromium/src/third_party/freetype.git" +
533       "@a2b9955b49034a51dfbc8bf9f4e9d312149cecac",
535     "src/third_party/guava/src":
536       Var("chromium_git") + "/external/guava-libraries.git" +
537       "@c523556ab7d0f05afadebd20e7768d4c16af8771",
539     "src/third_party/httpcomponents-client":
540       "/trunk/deps/third_party/httpcomponents-client@170888",
542     "src/third_party/httpcomponents-core":
543       "/trunk/deps/third_party/httpcomponents-core@170888",
545     "src/third_party/jarjar":
546       "/trunk/deps/third_party/jarjar@170888",
548     "src/third_party/jsr-305/src":
549       (Var("googlecode_url") % "jsr-305") + "/trunk@51",
551     "src/third_party/lss":
552       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
553        Var("lss_revision")),
555     "src/third_party/eyesfree/src/android/java/src/com/googlecode/eyesfree/braille":
556       (Var("googlecode_url") % "eyes-free") + "/trunk/braille/client/src/com/googlecode/eyesfree/braille@797",
558     # Android shouldn't use this address validation library.
559     "src/third_party/libaddressinput/src/cpp": None,
560     "src/third_party/libaddressinput/src/testdata": None,
561   },
565 include_rules = [
566   # Everybody can use some things.
567   "+base",
568   "+build",
569   "+ipc",
571   # Everybody can use headers generated by tools/generate_library_loader.
572   "+library_loaders",
574   "+testing",
575   "+third_party/icu/source/common/unicode",
576   "+third_party/icu/source/i18n/unicode",
577   "+url",
581 # checkdeps.py shouldn't check include paths for files in these dirs:
582 skip_child_includes = [
583   "breakpad",
584   "delegate_execute",
585   "metro_driver",
586   "native_client_sdk",
587   "o3d",
588   "pdf",
589   "sdch",
590   "skia",
591   "testing",
592   "third_party",
593   "v8",
594   "win8",
598 hooks = [
599   {
600     # This downloads binaries for Native Client's newlib toolchain.
601     # Done in lieu of building the toolchain from scratch as it can take
602     # anywhere from 30 minutes to 4 hours depending on platform to build.
603     "name": "nacltools",
604     "pattern": ".",
605     "action": [
606         "python", "src/build/download_nacl_toolchains.py",
607          "--no-arm-trusted",
608          "--keep",
609     ],
610   },
611   {
612     # Downloads an ARM sysroot image to src/arm-sysroot. This image updates
613     # at about the same rate that the chrome build deps change.
614     # This script is a no-op except for linux users who have
615     # target_arch=arm in their GYP_DEFINES.
616     "name": "sysroot",
617     "pattern": ".",
618     "action": ["python", "src/build/linux/install-arm-sysroot.py",
619                "--linux-only"],
620   },
621   {
622     # Downloads the Debian Wheezy sysroot to chrome/installer/linux if needed.
623     # This sysroot updates at about the same rate that the chrome build deps
624     # change. This script is a no-op except for linux users who are doing
625     # official chrome builds.
626     "name": "sysroot",
627     "pattern": ".",
628     "action": [
629         "python",
630         "src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py",
631         "--linux-only",
632         "--arch=amd64"],
633   },
634   {
635     # Same as above, but for 32-bit Linux.
636     "name": "sysroot",
637     "pattern": ".",
638     "action": [
639         "python",
640         "src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py",
641         "--linux-only",
642         "--arch=i386"],
643   },
644   {
645     # Pull clang on mac. If nothing changed, or on non-mac platforms, this takes
646     # zero seconds to run. If something changed, it downloads a prebuilt clang,
647     # which takes ~20s, but clang speeds up builds by more than 20s.
648     "name": "clang",
649     "pattern": ".",
650     "action": ["python", "src/tools/clang/scripts/update.py", "--mac-only"],
651   },
652   {
653     # Update LASTCHANGE. This is also run by export_tarball.py in
654     # src/tools/export_tarball - please keep them in sync.
655     "name": "lastchange",
656     "pattern": ".",
657     "action": ["python", "src/build/util/lastchange.py",
658                "-o", "src/build/util/LASTCHANGE"],
659   },
660   {
661     # Update LASTCHANGE.blink. This is also run by export_tarball.py in
662     # src/tools/export_tarball - please keep them in sync.
663     "name": "lastchange",
664     "pattern": ".",
665     "action": ["python", "src/build/util/lastchange.py",
666                "-s", "src/third_party/WebKit",
667                "-o", "src/build/util/LASTCHANGE.blink"],
668   },
669   # Pull clang-format binaries using checked-in hashes.
670   {
671     "name": "clang_format_win",
672     "pattern": "src/third_party/clang_format/bin/win/clang-format.exe.sha1",
673     "action": [ "download_from_google_storage",
674                 "--no_resume",
675                 "--platform=win32",
676                 "--no_auth",
677                 "--bucket", "chromium-clang-format",
678                 "-s", "src/third_party/clang_format/bin/win/clang-format.exe.sha1",
679     ],
680   },
681   {
682     "name": "clang_format_mac",
683     "pattern": "src/third_party/clang_format/bin/mac/clang-format.sha1",
684     "action": [ "download_from_google_storage",
685                 "--no_resume",
686                 "--platform=darwin",
687                 "--no_auth",
688                 "--bucket", "chromium-clang-format",
689                 "-s", "src/third_party/clang_format/bin/mac/clang-format.sha1",
690     ],
691   },
692   {
693     "name": "clang_format_linux",
694     "pattern": "src/third_party/clang_format/bin/linux/clang-format.sha1",
695     "action": [ "download_from_google_storage",
696                 "--no_resume",
697                 "--platform=linux*",
698                 "--no_auth",
699                 "--bucket", "chromium-clang-format",
700                 "-s", "src/third_party/clang_format/bin/linux/clang-format.sha1",
701     ],
702   },
703   # Pull eu-strip binaries using checked-in hashes.
704   {
705     "name": "eu-strip",
706     "pattern": "src/build/linux/bin/eu-strip.sha1",
707     "action": [ "download_from_google_storage",
708                 "--no_resume",
709                 "--platform=linux*",
710                 "--no_auth",
711                 "--bucket", "chromium-eu-strip",
712                 "-s", "src/build/linux/bin/eu-strip.sha1",
713     ],
714   },
715   {
716     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
717     "name": "gyp",
718     "pattern": ".",
719     "action": ["python", "src/build/gyp_chromium"],
720   },