[SyncFS] Refactor SyncWorker interface
[chromium-blink-merge.git] / DEPS
blob6615e55b2dcfa7b85e301030f4c4e79aad61c8bf
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 -w <gclientdir>
8 # where <gcliendir> is the absolute path to the directory containing the
9 # .gclient file (the parent of "src").
11 # Then commit .DEPS.git locally (gclient doesn't like dirty trees) and run
12 #   gclient sync
13 # Verify the thing happened you wanted. Then revert your .DEPS.git change
14 # DO NOT CHECK IN CHANGES TO .DEPS.git upstream. It will be automatically
15 # updated by a bot when you modify this one.
17 # When adding a new dependency, please update the top-level .gitignore file
18 # to list the dependency's destination directory.
20 vars = {
21   # Use this googlecode_url variable only if there is an internal mirror for it.
22   # If you do not know, use the full path while defining your new deps entry.
23   "googlecode_url": "http://%s.googlecode.com/svn",
24   "sourceforge_url": "http://svn.code.sf.net/p/%(repo)s/code",
25   "llvm_url": "http://src.chromium.org/llvm-project",
26   "llvm_git": "https://llvm.googlesource.com",
27   "libcxx_revision": "206024",
28   "libcxxabi_revision": "206024",
29   "webkit_trunk": "http://src.chromium.org/blink/trunk",
30   "nacl_trunk": "http://src.chromium.org/native_client/trunk",
31   "webkit_revision": "178800",
32   "chromium_git": "https://chromium.googlesource.com",
33   "chromiumos_git": "https://chromium.googlesource.com/chromiumos",
34   "pdfium_git": "https://pdfium.googlesource.com",
35   "skia_git": "https://skia.googlesource.com",
36   "boringssl_git": "https://boringssl.googlesource.com",
37   "swig_revision": "230490",
38   "nacl_revision": "13506",
39   # After changing nacl_revision, run 'glient sync' and check native_client/DEPS
40   # to update other nacl_*_revision's.
41   "nacl_tools_revision": "13077",  # native_client/DEPS: tools_rev
42   "google_toolbox_for_mac_revision": "662",
43   "libaddressinput_revision": "316",
44   "libphonenumber_revision": "621",
45   "libvpx_revision": "282874",
46   "lss_revision": "26",
47   "sfntly_revision": "239",
48   "lighttpd_revision": "33737",
49   "skia_revision": "2da0f85488879d7e3072fb6449b20eca5e1b4ec5",
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": "22537",
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": "6683",
59   "jsoncpp_revision": "248",
60   "nss_revision": "277057",
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": "2cbc12487aea464730bcf60230f4d4d63d61ac51",
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": "284247",
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": "048c4fe74a08b1139635cdeb50e0bb0b8324cd71",
73   # Three lines of non-changing comments so that
74   # the commit queue can handle CLs rolling build tools
75   # and whatever else without interference from each other.
76   "buildtools_revision": "59b93247766e1cdac6e482637ad493df38f7aeb7",
77   # Three lines of non-changing comments so that
78   # the commit queue can handle CLs rolling PDFIum
79   # and whatever else without interference from each other.
80   "pdfium_revision": "a08cf99d066b16e4e16393efc15174193e002371",
81   # Three lines of non-changing comments so that
82   # the commit queue can handle CLs rolling openmax_dl
83   # and whatever else without interference from each other.
84   "openmax_dl_revision": "6483",
85   # Three lines of non-changing comments so that
86   # the commit queue can handle CLs rolling BoringSSL
87   # and whatever else without interference from each other.
88   "boringssl_revision": "de620d9c87293fd0ed3b0a348550833565a0b61a",
91 # recursedeps controls which sub-repos are also searched for DEPS files
92 # that we should also import repos from.
93 recursedeps = [ 'src/third_party/WebKit' ]
95 deps = {
96   "src/breakpad/src":
97     (Var("googlecode_url") % "google-breakpad") + "/trunk/src@1356",
99   "src/buildtools":
100     Var("chromium_git") + "/chromium/buildtools.git@" +
101      Var("buildtools_revision"),
103   "src/sdch/open-vcdiff":
104     (Var("googlecode_url") % "open-vcdiff") + "/trunk@42",
106   "src/testing/gtest":
107     (Var("googlecode_url") % "googletest") + "/trunk@643",
109   "src/testing/gmock":
110     (Var("googlecode_url") % "googlemock") + "/trunk@410",
112   "src/third_party/angle":
113     Var("chromium_git") + "/angle/angle.git@" + Var("angle_revision"),
115   "src/third_party/colorama/src":
116     Var("chromium_git") + "/external/colorama.git@799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8",
118   "src/third_party/trace-viewer":
119     (Var("googlecode_url") % "trace-viewer") + "/trunk@1308",
121   "src/third_party/WebKit":
122     Var("webkit_trunk") + "@" + Var("webkit_revision"),
124   "src/third_party/WebKit/LayoutTests/w3c/web-platform-tests":
125     Var("chromium_git") +
126     "/external/w3c/web-platform-tests.git@6bed4516fe8522d65512c76ef02e4f0ae8234395",
128   "src/third_party/WebKit/LayoutTests/w3c/csswg-test":
129     Var("chromium_git") +
130     "/external/w3c/csswg-test.git@bacbb4a8dca702cd86646761fde96793db13d4f1",
132   "src/third_party/icu":
133     "/trunk/deps/third_party/icu52@277999",
135   "src/third_party/libexif/sources":
136     "/trunk/deps/third_party/libexif/sources@265008",
138   "src/third_party/hunspell":
139     "/trunk/deps/third_party/hunspell@283809",
141   "src/third_party/hunspell_dictionaries":
142     "/trunk/deps/third_party/hunspell_dictionaries@255132",
144   "src/third_party/safe_browsing/testing":
145     (Var("googlecode_url") % "google-safe-browsing") + "/trunk/testing@112",
147   "src/third_party/cacheinvalidation/src":
148     (Var("googlecode_url") % "google-cache-invalidation-api") +
149     "/trunk/src@335",
151   "src/third_party/leveldatabase/src":
152     (Var("googlecode_url") % "leveldb") + "/trunk@80",
154   "src/third_party/libc++/trunk":
155     Var("llvm_url") + "/libcxx/trunk@" + Var("libcxx_revision"),
157   "src/third_party/libc++abi/trunk":
158     Var("llvm_url") + "/libcxxabi/trunk@" + Var("libcxxabi_revision"),
160   "src/third_party/snappy/src":
161     (Var("googlecode_url") % "snappy") + "/trunk@80",
163   "src/tools/grit":
164     (Var("googlecode_url") % "grit-i18n") + "/trunk@171",
166   "src/tools/gyp":
167     (Var("googlecode_url") % "gyp") + "/trunk@1953",
169   "src/tools/swarming_client":
170     Var("chromium_git") + "/external/swarming.client.git@" +
171         Var("swarming_revision"),
173   "src/v8":
174     (Var("googlecode_url") % "v8") + "/" + Var("v8_branch") + "@" +
175     Var("v8_revision"),
177   "src/native_client":
178     Var("nacl_trunk") + "/src/native_client@" + Var("nacl_revision"),
180   "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin":
181     Var("nacl_trunk") + "/src/native_client/tests/prebuilt@" +
182     Var("nacl_revision"),
184   "src/third_party/sfntly/cpp/src":
185     (Var("googlecode_url") % "sfntly") + "/trunk/cpp/src@" +
186     Var("sfntly_revision"),
188   "src/third_party/skia":
189     Var("chromium_git") + "/skia.git@" + Var("skia_revision"),
191   "src/third_party/ots":
192     (Var("googlecode_url") % "ots") + "/trunk@115",
194   "src/third_party/brotli/src":
195     Var("chromium_git") +
196     "/external/font-compression-reference.git@6cef49677dc4c650ef6e3f56041e0a41803afa8c",
198   "src/tools/page_cycler/acid3":
199     "/trunk/deps/page_cycler/acid3@171600",
201   "src/chrome/test/data/perf/canvas_bench":
202     "/trunk/deps/canvas_bench@122605",
204   "src/chrome/test/data/perf/frame_rate/content":
205     "/trunk/deps/frame_rate/content@93671",
207   "src/third_party/bidichecker":
208     (Var("googlecode_url") % "bidichecker") + "/trunk/lib@4",
210   "src/third_party/webgl/src":
211     Var("chromium_git") +
212     "/external/khronosgroup/webgl.git@7c8cb656a753b6237e50c546c31ad826373abf04",
214   "src/third_party/swig/Lib":
215     "/trunk/deps/third_party/swig/Lib@" + Var("swig_revision"),
217   # Make sure you update the two functional.DEPS and webdriver.DEPS too.
218   "src/third_party/webdriver/pylib":
219     (Var("googlecode_url") % "selenium") + "/trunk/py@18337",
221   "src/third_party/libvpx":
222     "/trunk/deps/third_party/libvpx@" +
223     Var("libvpx_revision"),
225   "src/third_party/ffmpeg":
226     Var("chromium_git") +
227     "/chromium/third_party/ffmpeg.git@11cc55f45980d8bcf78992e68d5c60809d24f449",
229   "src/third_party/libjingle/source/talk":
230     (Var("googlecode_url") % "webrtc") + "/trunk/talk@" +
231     Var("webrtc_revision"),
233   "src/third_party/usrsctp/usrsctplib":
234     (Var("googlecode_url") % "sctp-refimpl") +
235     "/trunk/KERN/usrsctp/usrsctplib@8912",
237   "src/third_party/libsrtp":
238     "/trunk/deps/third_party/libsrtp@283418",
240   "src/third_party/speex":
241     "/trunk/deps/third_party/speex@272757",
243   "src/third_party/yasm/source/patched-yasm":
244     "/trunk/deps/third_party/yasm/patched-yasm@167605",
246   "src/third_party/libjpeg_turbo":
247     "/trunk/deps/third_party/libjpeg_turbo@272637",
249   "src/third_party/flac":
250     "/trunk/deps/third_party/flac@222897",
252   "src/third_party/pyftpdlib/src":
253     (Var("googlecode_url") % "pyftpdlib") + "/trunk@977",
255   "src/third_party/scons-2.0.1":
256     Var("nacl_trunk") + "/src/third_party/scons-2.0.1@" +
257         Var("nacl_tools_revision"),
259   "src/third_party/webrtc":
260     (Var("googlecode_url") % "webrtc") + "/trunk/webrtc@" + Var("webrtc_revision"),
262   "src/third_party/openmax_dl":
263     (Var("googlecode_url") % "webrtc") + "/deps/third_party/openmax@" + Var("openmax_dl_revision"),
265   "src/third_party/jsoncpp/source/include":
266     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
267         "/trunk/jsoncpp/include@" + Var("jsoncpp_revision"),
269   "src/third_party/jsoncpp/source/src/lib_json":
270     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
271         "/trunk/jsoncpp/src/lib_json@" + Var("jsoncpp_revision"),
273   "src/third_party/libyuv":
274     (Var("googlecode_url") % "libyuv") + "/trunk@1035",
276   "src/third_party/smhasher/src":
277     (Var("googlecode_url") % "smhasher") + "/trunk@152",
279   "src/third_party/libaddressinput/src/cpp":
280     (Var("googlecode_url") % "libaddressinput") + "/trunk/cpp@" +
281         Var("libaddressinput_revision"),
282   "src/third_party/libaddressinput/src/testdata":
283     (Var("googlecode_url") % "libaddressinput") + "/trunk/testdata@" +
284         Var("libaddressinput_revision"),
286   "src/third_party/libphonenumber/src/phonenumbers":
287     (Var("googlecode_url") % "libphonenumber") +
288         "/trunk/cpp/src/phonenumbers@" + Var("libphonenumber_revision"),
289   "src/third_party/libphonenumber/src/test":
290     (Var("googlecode_url") % "libphonenumber") + "/trunk/cpp/test@" +
291         Var("libphonenumber_revision"),
292   "src/third_party/libphonenumber/src/resources":
293     (Var("googlecode_url") % "libphonenumber") + "/trunk/resources@" +
294         Var("libphonenumber_revision"),
296   "src/tools/deps2git":
297     "/trunk/tools/deps2git@276439",
299   "src/third_party/webpagereplay":
300     Var("chromium_git") + "/external/web-page-replay.git@" +
301     "b62c02d3b64cf00a2f65a82cca0721aa42c3d6ad",
303   "src/third_party/pywebsocket/src":
304     (Var("googlecode_url") % "pywebsocket") + "/trunk/src@790",
306   "src/third_party/opus/src":
307     "/trunk/deps/third_party/opus@256783",
309   "src/media/cdm/ppapi/api":
310     "/trunk/deps/cdm@273356",
312   "src/third_party/mesa/src":
313     "/trunk/deps/third_party/mesa@265279",
315   "src/third_party/cld_2/src":
316     (Var("googlecode_url") % "cld2") + "/trunk@161",
318   "src/chrome/browser/resources/pdf/html_office":
319      Var("chromium_git") +
320          "/chromium/html-office-public.git@eeff97614f65e0578529490d44d412032c3d7359",
322   "src/third_party/libwebm/source":
323     Var("chromium_git") +
324       "/webm/libwebm.git@0d4cb404ea4195e5e21d04db2c955615535ce62e",
326   "src/third_party/openssl":
327     "/trunk/deps/third_party/openssl@" + Var("openssl_revision"),
329   "src/third_party/pdfium":
330     Var("pdfium_git") + "/pdfium.git@" + Var("pdfium_revision"),
332   "src/third_party/boringssl/src":
333     Var("boringssl_git") + "/boringssl.git@" + Var("boringssl_revision"),
337 deps_os = {
338   "win": {
339     "src/chrome/tools/test/reference_build/chrome_win":
340       "/trunk/deps/reference_builds/chrome_win@273882",
342     "src/third_party/cygwin":
343       "/trunk/deps/third_party/cygwin@231940",
345     "src/third_party/psyco_win32":
346       "/trunk/deps/third_party/psyco_win32@237949",
348     "src/third_party/bison":
349       "/trunk/deps/third_party/bison@147303",
351     "src/third_party/gperf":
352       "/trunk/deps/third_party/gperf@147304",
354     "src/third_party/perl":
355       "/trunk/deps/third_party/perl@147900",
357     "src/third_party/lighttpd":
358       "/trunk/deps/third_party/lighttpd@" + Var("lighttpd_revision"),
360     # Parses Windows PE/COFF executable format.
361     "src/third_party/pefile":
362       Var("chromium_git") + '/external/pefile.git@' +
363       '72c6ae42396cb913bcab63c15585dc3b5c3f92f1',
365     # NSS, for SSLClientSocketNSS.
366     "src/third_party/nss":
367       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
369     "src/third_party/swig/win":
370       "/trunk/deps/third_party/swig/win@" + Var("swig_revision"),
372     # GNU binutils assembler for x86-32.
373     "src/third_party/gnu_binutils":
374       (Var("nacl_trunk") + "/deps/third_party/gnu_binutils@" +
375        Var("nacl_tools_revision")),
376     # GNU binutils assembler for x86-64.
377     "src/third_party/mingw-w64/mingw/bin":
378       (Var("nacl_trunk") + "/deps/third_party/mingw-w64/mingw/bin@" +
379        Var("nacl_tools_revision")),
381     # Dependencies used by libjpeg-turbo
382     "src/third_party/yasm/binaries":
383       "/trunk/deps/third_party/yasm/binaries@154708",
385     # Binaries for nacl sdk.
386     "src/third_party/nacl_sdk_binaries":
387       "/trunk/deps/third_party/nacl_sdk_binaries@111576",
388   },
389   "ios": {
390     "src/third_party/google_toolbox_for_mac/src":
391       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
392       Var("google_toolbox_for_mac_revision"),
394     "src/third_party/nss":
395       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
397     # class-dump utility to generate header files for undocumented SDKs
398     "src/testing/iossim/third_party/class-dump":
399       "/trunk/deps/third_party/class-dump@199203",
401     # Code that's not needed due to not building everything
402     "src/build/util/support": None,
403     "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin": None,
404     "src/chrome/test/data/perf/canvas_bench": None,
405     "src/chrome/test/data/perf/frame_rate/content": None,
406     "src/media/cdm/ppapi/api": None,
407     "src/native_client": None,
408     "src/native_client/src/third_party/ppapi": None,
409     "src/third_party/angle": None,
410     "src/third_party/bidichecker": None,
411     "src/third_party/brotli/src": None,
412     "src/third_party/cld_2/src": None,
413     "src/third_party/ffmpeg": None,
414     "src/third_party/hunspell_dictionaries": None,
415     "src/third_party/hunspell": None,
416     "src/third_party/libc++/trunk": None,
417     "src/third_party/libc++abi/trunk": None,
418     "src/third_party/libexif/sources": None,
419     "src/third_party/libjpeg_turbo": None,
420     "src/third_party/libsrtp": None,
421     "src/third_party/libvpx": None,
422     "src/third_party/libyuv": None,
423     "src/third_party/mesa/src": None,
424     "src/third_party/opus/src": None,
425     "src/third_party/openmax_dl": None,
426     "src/third_party/ots": None,
427     "src/third_party/pymox/src": None,
428     "src/third_party/safe_browsing/testing": None,
429     "src/third_party/scons-2.0.1": None,
430     "src/third_party/sfntly/cpp/src": None,
431     "src/third_party/speex": None,
432     "src/third_party/swig/Lib": None,
433     "src/third_party/usrsctp/usrsctplib": None,
434     "src/third_party/v8-i18n": None,
435     "src/third_party/webdriver/pylib": None,
436     "src/third_party/webgl": None,
437     "src/third_party/webpagereplay": None,
438     "src/third_party/webrtc": None,
439     "src/third_party/WebKit/LayoutTests/w3c/web-platform-tests": None,
440     "src/third_party/WebKit/LayoutTests/w3c/csswg-test": None,
441     "src/third_party/yasm/source/patched-yasm": None,
442     "src/tools/page_cycler/acid3": None,
443     "src/v8": None,
444   },
445   "mac": {
446     "src/chrome/tools/test/reference_build/chrome_mac":
447       "/trunk/deps/reference_builds/chrome_mac@273882",
449     "src/third_party/google_toolbox_for_mac/src":
450       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
451       Var("google_toolbox_for_mac_revision"),
453     "src/third_party/pdfsqueeze":
454       (Var("googlecode_url") % "pdfsqueeze") + "/trunk@5",
456     "src/third_party/lighttpd":
457       "/trunk/deps/third_party/lighttpd@" + Var("lighttpd_revision"),
459     "src/third_party/swig/mac":
460       "/trunk/deps/third_party/swig/mac@" + Var("swig_revision"),
462     # NSS, for SSLClientSocketNSS.
463     "src/third_party/nss":
464       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
466     "src/chrome/installer/mac/third_party/xz/xz":
467       "/trunk/deps/third_party/xz@233311",
468   },
469   "unix": {
470     # Linux, really.
471     "src/chrome/tools/test/reference_build/chrome_linux":
472       "/trunk/deps/reference_builds/chrome_linux64@273882",
474     "src/third_party/xdg-utils":
475       "/trunk/deps/third_party/xdg-utils@203785",
477     "src/third_party/swig/linux":
478       "/trunk/deps/third_party/swig/linux@" + Var("swig_revision"),
480     "src/third_party/lss":
481       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
482        Var("lss_revision")),
484     # For Linux and Chromium OS.
485     "src/third_party/cros_system_api":
486       Var("chromiumos_git") + "/platform/system_api.git" +
487       "@562b63142d3028ce3803746b3afe66c1670aff54",
489     # Note that this is different from Android's freetype repo.
490     "src/third_party/freetype2/src":
491       Var("chromium_git") + "/chromium/src/third_party/freetype2.git" +
492       "@d699c2994ecc178c4ed05ac2086061b2034c2178",
494     # Build tools for targeting ChromeOS.
495     "src/third_party/chromite":
496       Var("chromiumos_git") + "/chromite.git" +
497       "@371a0a5adec10a47f6040241b574b96b9bc00fbc",
499     # Dependency of chromite.git.
500     "src/third_party/pyelftools":
501       Var("chromiumos_git") + "/third_party/pyelftools.git" +
502       "@bdc1d380acd88d4bfaf47265008091483b0d614e",
504     "src/third_party/undoview":
505       "/trunk/deps/third_party/undoview@119694",
507     "src/third_party/liblouis/src":
508       Var("chromium_git") +
509       "/external/liblouis.git@3c2daee56250162e5a75830871601d74328d39f5",
511     # Used for embedded builds. CrOS & Linux use the system version.
512     "src/third_party/fontconfig/src":
513       Var("chromium_git") + "/external/fontconfig.git" +
514       "@f16c3118e25546c1b749f9823c51827a60aeb5c1",
515   },
516   "android": {
517     "src/third_party/android_tools":
518       Var("chromium_git") + "/android_tools.git" +
519       "@8301b711a9ac7de56e9a9ff3dee0b2ebfc9a380f",
521     "src/third_party/aosp":
522       "/trunk/deps/third_party/aosp@148330",
524     "src/third_party/apache-mime4j":
525       "/trunk/deps/third_party/apache-mime4j@170888",
527     "src/third_party/findbugs":
528       "/trunk/deps/third_party/findbugs@245039",
530     "src/third_party/freetype":
531       Var("chromium_git") + "/chromium/src/third_party/freetype.git" +
532       "@a2b9955b49034a51dfbc8bf9f4e9d312149cecac",
534     "src/third_party/guava/src":
535       Var("chromium_git") + "/external/guava-libraries.git" +
536       "@c523556ab7d0f05afadebd20e7768d4c16af8771",
538    "src/third_party/elfutils/src":
539       Var("chromium_git") + "/external/elfutils.git" +
540       "@249673729a7e5dbd5de4f3760bdcaa3d23d154d7",
542     "src/third_party/httpcomponents-client":
543       "/trunk/deps/third_party/httpcomponents-client@170888",
545     "src/third_party/httpcomponents-core":
546       "/trunk/deps/third_party/httpcomponents-core@170888",
548     "src/third_party/jarjar":
549       "/trunk/deps/third_party/jarjar@170888",
551     "src/third_party/jsr-305/src":
552       (Var("googlecode_url") % "jsr-305") + "/trunk@51",
554     "src/third_party/lss":
555       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
556        Var("lss_revision")),
558     "src/third_party/eyesfree/src/android/java/src/com/googlecode/eyesfree/braille":
559       (Var("googlecode_url") % "eyes-free") + "/trunk/braille/client/src/com/googlecode/eyesfree/braille@797",
560   },
564 include_rules = [
565   # Everybody can use some things.
566   "+base",
567   "+build",
568   "+ipc",
570   # Everybody can use headers generated by tools/generate_library_loader.
571   "+library_loaders",
573   "+testing",
574   "+third_party/icu/source/common/unicode",
575   "+third_party/icu/source/i18n/unicode",
576   "+url",
580 # checkdeps.py shouldn't check include paths for files in these dirs:
581 skip_child_includes = [
582   "breakpad",
583   "delegate_execute",
584   "metro_driver",
585   "native_client_sdk",
586   "o3d",
587   "sdch",
588   "skia",
589   "testing",
590   "third_party",
591   "v8",
592   "win8",
596 hooks = [
597   {
598     # This downloads binaries for Native Client's newlib toolchain.
599     # Done in lieu of building the toolchain from scratch as it can take
600     # anywhere from 30 minutes to 4 hours depending on platform to build.
601     "name": "nacltools",
602     "pattern": ".",
603     "action": [
604         "python", "src/build/download_nacl_toolchains.py",
605         "--exclude", "arm_trusted",
606     ],
607   },
608   {
609     # Downloads an ARM sysroot image to src/arm-sysroot. This image updates
610     # at about the same rate that the chrome build deps change.
611     # This script is a no-op except for linux users who have
612     # target_arch=arm in their GYP_DEFINES.
613     "name": "sysroot",
614     "pattern": ".",
615     "action": ["python", "src/build/linux/install-arm-sysroot.py",
616                "--linux-only"],
617   },
618   {
619     # Downloads the Debian Wheezy sysroot to chrome/installer/linux if needed.
620     # This sysroot updates at about the same rate that the chrome build deps
621     # change. This script is a no-op except for linux users who are doing
622     # official chrome builds.
623     "name": "sysroot",
624     "pattern": ".",
625     "action": [
626         "python",
627         "src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py",
628         "--linux-only",
629         "--arch=amd64"],
630   },
631   {
632     # Same as above, but for 32-bit Linux.
633     "name": "sysroot",
634     "pattern": ".",
635     "action": [
636         "python",
637         "src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py",
638         "--linux-only",
639         "--arch=i386"],
640   },
641   {
642     # Pull clang if on Mac or clang is requested via GYP_DEFINES.
643     "name": "clang",
644     "pattern": ".",
645     "action": ["python", "src/tools/clang/scripts/update.py", "--if-needed"],
646   },
647   {
648     # Update the Windows toolchain if necessary.
649     "name": "win_toolchain",
650     "pattern": ".",
651     "action": ["python", "src/build/vs_toolchain.py", "update"],
652   },
653   {
654     # Update LASTCHANGE. This is also run by export_tarball.py in
655     # src/tools/export_tarball - please keep them in sync.
656     "name": "lastchange",
657     "pattern": ".",
658     "action": ["python", "src/build/util/lastchange.py",
659                "-o", "src/build/util/LASTCHANGE"],
660   },
661   {
662     # Update LASTCHANGE.blink. This is also run by export_tarball.py in
663     # src/tools/export_tarball - please keep them in sync.
664     "name": "lastchange",
665     "pattern": ".",
666     "action": ["python", "src/build/util/lastchange.py",
667                "-s", "src/third_party/WebKit",
668                "-o", "src/build/util/LASTCHANGE.blink"],
669   },
670   # Pull GN binaries. This needs to be before running GYP below.
671   {
672     "name": "gn_win",
673     "pattern": ".",
674     "action": [ "download_from_google_storage",
675                 "--no_resume",
676                 "--platform=win32",
677                 "--no_auth",
678                 "--bucket", "chromium-gn",
679                 "-s", "src/buildtools/win/gn.exe.sha1",
680     ],
681   },
682   {
683     "name": "gn_mac",
684     "pattern": ".",
685     "action": [ "download_from_google_storage",
686                 "--no_resume",
687                 "--platform=darwin",
688                 "--no_auth",
689                 "--bucket", "chromium-gn",
690                 "-s", "src/buildtools/mac/gn.sha1",
691     ],
692   },
693   {
694     "name": "gn_linux32",
695     "pattern": ".",
696     "action": [ "download_from_google_storage",
697                 "--no_resume",
698                 "--platform=linux*",
699                 "--no_auth",
700                 "--bucket", "chromium-gn",
701                 "-s", "src/buildtools/linux32/gn.sha1",
702     ],
703   },
704   {
705     "name": "gn_linux64",
706     "pattern": ".",
707     "action": [ "download_from_google_storage",
708                 "--no_resume",
709                 "--platform=linux*",
710                 "--no_auth",
711                 "--bucket", "chromium-gn",
712                 "-s", "src/buildtools/linux64/gn.sha1",
713     ],
714   },
715   {
716     # Remove GN binaries from tools/gn/bin that aren't used anymore.
717     # TODO(brettw) remove after the end of July, 2014.
718     "name": "remove_old_gn_binaries",
719     "pattern": ".",
720     "action": ["python", "src/tools/gn/bin/rm_binaries.py"],
721   },
722   # Pull clang-format binaries using checked-in hashes.
723   {
724     "name": "clang_format_win",
725     "pattern": ".",
726     "action": [ "download_from_google_storage",
727                 "--no_resume",
728                 "--platform=win32",
729                 "--no_auth",
730                 "--bucket", "chromium-clang-format",
731                 "-s", "src/buildtools/win/clang-format.exe.sha1",
732     ],
733   },
734   {
735     "name": "clang_format_mac",
736     "pattern": ".",
737     "action": [ "download_from_google_storage",
738                 "--no_resume",
739                 "--platform=darwin",
740                 "--no_auth",
741                 "--bucket", "chromium-clang-format",
742                 "-s", "src/buildtools/mac/clang-format.sha1",
743     ],
744   },
745   {
746     "name": "clang_format_linux",
747     "pattern": ".",
748     "action": [ "download_from_google_storage",
749                 "--no_resume",
750                 "--platform=linux*",
751                 "--no_auth",
752                 "--bucket", "chromium-clang-format",
753                 "-s", "src/buildtools/linux64/clang-format.sha1",
754     ],
755   },
756   # Pull binutils for linux, enabled debug fission for faster linking /
757   # debugging when used with clang on Ubuntu Precise.
758   # https://code.google.com/p/chromium/issues/detail?id=352046
759   {
760     "name": "binutils",
761     "pattern": "src/third_party/binutils",
762     "action": [
763         "python",
764         "src/third_party/binutils/download.py",
765     ],
766   },
767   # Pull eu-strip binaries using checked-in hashes.
768   {
769     "name": "eu-strip",
770     "pattern": ".",
771     "action": [ "download_from_google_storage",
772                 "--no_resume",
773                 "--platform=linux*",
774                 "--no_auth",
775                 "--bucket", "chromium-eu-strip",
776                 "-s", "src/build/linux/bin/eu-strip.sha1",
777     ],
778   },
779   {
780     "name": "drmemory",
781     "pattern": ".",
782     "action": [ "download_from_google_storage",
783                 "--no_resume",
784                 "--platform=win32",
785                 "--no_auth",
786                 "--bucket", "chromium-drmemory",
787                 "-s", "src/third_party/drmemory/drmemory-windows-sfx.exe.sha1",
788               ],
789   },
790   # Pull the Syzygy binaries, used for optimization and instrumentation.
791   {
792     "name": "syzygy-binaries",
793     "pattern": ".",
794     "action": ["python",
795                "src/build/get_syzygy_binaries.py",
796                "--output-dir=src/third_party/syzygy/binaries",
797                "--revision=363bc02a09c380b6f5f397606cc0744d85d54a51",
798                "--overwrite",
799     ],
800   },
801   {
802     "name": "apache_win32",
803     "pattern": "\\.sha1",
804     "action": [ "download_from_google_storage",
805                 "--no_resume",
806                 "--platform=win32",
807                 "--directory",
808                 "--recursive",
809                 "--no_auth",
810                 "--num_threads=16",
811                 "--bucket", "chromium-apache-win32",
812                 "src/third_party/apache-win32",
813     ],
814   },
815   {
816     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
817     "name": "gyp",
818     "pattern": ".",
819     "action": ["python", "src/build/gyp_chromium"],
820   },