Update V8 to version 3.29.9 (based on bleeding_edge revision r23193).
[chromium-blink-merge.git] / DEPS
blob4842b60fce8f42a669090e054416ddf9c85222db
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": "180640",
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": "13626",
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": "327",
44   "libphonenumber_revision": "621",
45   "libvpx_revision": "290670",
46   "lss_revision": "31",
47   "sfntly_revision": "239",
48   "lighttpd_revision": "33737",
49   "skia_revision": "d2a3522503ca0c39829f1bb41f01201d1affdaf6",
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": "23212",
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": "6905",
59   "jsoncpp_revision": "248",
60   "nss_revision": "289430",
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": "b8aeeaef087fa2571aaaf64a8a8dbec06a0e0e41",
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": "bc75f36b04c8bab99bcecf8cdca16ecee3ac58ee",
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": "48edf30c463fc41fb9fb0926f8466b473cb177fa",
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": "635e82ec20b3d5ffcb24f9a1b1be9f1f24d8a3f4",
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": "6925",
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": "d4178fd9d85f246620b6f1a2158a1268d2d2d4a5",
91 deps = {
92   "src/breakpad/src":
93     Var("chromium_git") + "/external/google-breakpad/src.git@17f614cd8365f5b78577ffcc237300a970db9813", # from svn revision 1359
95   "src/buildtools":
96     Var("chromium_git") + "/chromium/buildtools.git@" +
97      Var("buildtools_revision"),
99   "src/sdch/open-vcdiff":
100     Var("chromium_git") + "/external/open-vcdiff.git@438f2a5be6d809bc21611a94cd37bfc8c28ceb33", # from svn revision 41
102   "src/testing/gtest":
103     Var("chromium_git") + "/external/googletest.git@4650552ff637bb44ecf7784060091cbed3252211", # from svn revision 692
105   "src/testing/gmock":
106     Var("chromium_git") + "/external/googlemock.git@896ba0e03f520fb9b6ed582bde2bd00847e3c3f2", # from svn revision 485
108   "src/third_party/angle":
109     Var("chromium_git") + "/angle/angle.git@" + Var("angle_revision"),
111   "src/third_party/colorama/src":
112     Var("chromium_git") + "/external/colorama.git@799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8",
114   "src/third_party/trace-viewer":
115     Var("chromium_git") + "/external/trace-viewer.git@6f49169ab7d1d58a6c10e6631ebe91f191b4892b", # from svn revision 1489
117   "src/third_party/WebKit":
118     Var("webkit_trunk") + "@" + Var("webkit_revision"),
120   "src/third_party/WebKit/LayoutTests/w3c/web-platform-tests":
121     Var("chromium_git") +
122     "/external/w3c/web-platform-tests.git@3e0f28376857901b2d3eefda82a3b622bbcabd41",
124   "src/third_party/WebKit/LayoutTests/w3c/csswg-test":
125     Var("chromium_git") +
126     "/external/w3c/csswg-test.git@0b12ea22689ee2179f3e9bff389db22f4efd6ed5",
128   "src/third_party/icu":
129     "/trunk/deps/third_party/icu52@287122",
131   "src/third_party/libexif/sources":
132     "/trunk/deps/third_party/libexif/sources@265008",
134   "src/third_party/hunspell":
135     "/trunk/deps/third_party/hunspell@287123",
137   "src/third_party/hunspell_dictionaries":
138     "/trunk/deps/third_party/hunspell_dictionaries@255132",
140   "src/third_party/safe_browsing/testing":
141     (Var("googlecode_url") % "google-safe-browsing") + "/trunk/testing@112",
143   "src/third_party/cacheinvalidation/src":
144     (Var("googlecode_url") % "google-cache-invalidation-api") +
145     "/trunk/src@335",
147   "src/third_party/leveldatabase/src":
148     (Var("googlecode_url") % "leveldb") + "/trunk@80",
150   "src/third_party/libc++/trunk":
151     Var("llvm_url") + "/libcxx/trunk@" + Var("libcxx_revision"),
153   "src/third_party/libc++abi/trunk":
154     Var("llvm_url") + "/libcxxabi/trunk@" + Var("libcxxabi_revision"),
156   "src/third_party/snappy/src":
157     (Var("googlecode_url") % "snappy") + "/trunk@80",
159   "src/tools/grit":
160     (Var("googlecode_url") % "grit-i18n") + "/trunk@172",
162   "src/tools/gyp":
163     (Var("googlecode_url") % "gyp") + "/trunk@1967",
165   "src/tools/swarming_client":
166     Var("chromium_git") + "/external/swarming.client.git@" +
167         Var("swarming_revision"),
169   "src/v8":
170     (Var("googlecode_url") % "v8") + "/" + Var("v8_branch") + "@" +
171     Var("v8_revision"),
173   "src/native_client":
174     Var("nacl_trunk") + "/src/native_client@" + Var("nacl_revision"),
176   "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin":
177     Var("nacl_trunk") + "/src/native_client/tests/prebuilt@" +
178     Var("nacl_revision"),
180   "src/third_party/sfntly/cpp/src":
181     (Var("googlecode_url") % "sfntly") + "/trunk/cpp/src@" +
182     Var("sfntly_revision"),
184   "src/third_party/skia":
185     Var("chromium_git") + "/skia.git@" + Var("skia_revision"),
187   "src/third_party/ots":
188     (Var("googlecode_url") % "ots") + "/trunk@115",
190   "src/third_party/brotli/src":
191     Var("chromium_git") +
192     "/external/font-compression-reference.git@6cef49677dc4c650ef6e3f56041e0a41803afa8c",
194   "src/tools/page_cycler/acid3":
195     "/trunk/deps/page_cycler/acid3@171600",
197   "src/chrome/test/data/perf/canvas_bench":
198     "/trunk/deps/canvas_bench@122605",
200   "src/chrome/test/data/perf/frame_rate/content":
201     "/trunk/deps/frame_rate/content@93671",
203   "src/third_party/bidichecker":
204     (Var("googlecode_url") % "bidichecker") + "/trunk/lib@4",
206   "src/third_party/webgl/src":
207     Var("chromium_git") +
208     "/external/khronosgroup/webgl.git@c81b6b214549bfeb475c25bf1de7bd3096c5d1c3",
210   "src/third_party/swig/Lib":
211     "/trunk/deps/third_party/swig/Lib@" + Var("swig_revision"),
213   "src/third_party/webdriver/pylib":
214     (Var("googlecode_url") % "selenium") + "/trunk/py@18456",
216   "src/third_party/libvpx":
217     "/trunk/deps/third_party/libvpx@" +
218     Var("libvpx_revision"),
220   "src/third_party/ffmpeg":
221     Var("chromium_git") +
222     "/chromium/third_party/ffmpeg.git@95a2bce6dad6569ec65b547169f4a9d58877a1f4",
224   "src/third_party/libjingle/source/talk":
225     (Var("googlecode_url") % "webrtc") + "/trunk/talk@" +
226     Var("webrtc_revision"),
228   "src/third_party/usrsctp/usrsctplib":
229     (Var("googlecode_url") % "sctp-refimpl") +
230     "/trunk/KERN/usrsctp/usrsctplib@8912",
232   "src/third_party/libsrtp":
233     "/trunk/deps/third_party/libsrtp@283418",
235   "src/third_party/speex":
236     "/trunk/deps/third_party/speex@272757",
238   "src/third_party/yasm/source/patched-yasm":
239     "/trunk/deps/third_party/yasm/patched-yasm@167605",
241   "src/third_party/libjpeg_turbo":
242     "/trunk/deps/third_party/libjpeg_turbo@290390",
244   "src/third_party/flac":
245     "/trunk/deps/third_party/flac@287124",
247   "src/third_party/pyftpdlib/src":
248     (Var("googlecode_url") % "pyftpdlib") + "/trunk@977",
250   "src/third_party/scons-2.0.1":
251     Var("nacl_trunk") + "/src/third_party/scons-2.0.1@" +
252         Var("nacl_tools_revision"),
254   "src/third_party/webrtc":
255     (Var("googlecode_url") % "webrtc") + "/trunk/webrtc@" + Var("webrtc_revision"),
257   "src/third_party/openmax_dl":
258     (Var("googlecode_url") % "webrtc") + "/deps/third_party/openmax@" + Var("openmax_dl_revision"),
260   "src/third_party/jsoncpp/source/include":
261     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
262         "/trunk/jsoncpp/include@" + Var("jsoncpp_revision"),
264   "src/third_party/jsoncpp/source/src/lib_json":
265     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
266         "/trunk/jsoncpp/src/lib_json@" + Var("jsoncpp_revision"),
268   "src/third_party/libyuv":
269     (Var("googlecode_url") % "libyuv") + "/trunk@1038",
271   "src/third_party/smhasher/src":
272     (Var("googlecode_url") % "smhasher") + "/trunk@152",
274   "src/third_party/libaddressinput/src/cpp":
275     (Var("googlecode_url") % "libaddressinput") + "/trunk/cpp@" +
276         Var("libaddressinput_revision"),
277   "src/third_party/libaddressinput/src/testdata":
278     (Var("googlecode_url") % "libaddressinput") + "/trunk/testdata@" +
279         Var("libaddressinput_revision"),
281   "src/third_party/libphonenumber/src/phonenumbers":
282     (Var("googlecode_url") % "libphonenumber") +
283         "/trunk/cpp/src/phonenumbers@" + Var("libphonenumber_revision"),
284   "src/third_party/libphonenumber/src/test":
285     (Var("googlecode_url") % "libphonenumber") + "/trunk/cpp/test@" +
286         Var("libphonenumber_revision"),
287   "src/third_party/libphonenumber/src/resources":
288     (Var("googlecode_url") % "libphonenumber") + "/trunk/resources@" +
289         Var("libphonenumber_revision"),
291   "src/tools/deps2git":
292     "/trunk/tools/deps2git@276439",
294   "src/third_party/webpagereplay":
295     Var("chromium_git") + "/external/web-page-replay.git@" +
296     "b62c02d3b64cf00a2f65a82cca0721aa42c3d6ad",
298   "src/third_party/pywebsocket/src":
299     (Var("googlecode_url") % "pywebsocket") + "/trunk/src@790",
301   "src/third_party/opus/src":
302     "/trunk/deps/third_party/opus@289085",
304   "src/media/cdm/ppapi/api":
305     "/trunk/deps/cdm@288172",
307   "src/third_party/mesa/src":
308     "/trunk/deps/third_party/mesa@265279",
310   "src/third_party/cld_2/src":
311     (Var("googlecode_url") % "cld2") + "/trunk@167",
313   "src/chrome/browser/resources/pdf/html_office":
314      Var("chromium_git") +
315          "/chromium/html-office-public.git@eeff97614f65e0578529490d44d412032c3d7359",
317   "src/third_party/libwebm/source":
318     Var("chromium_git") +
319       "/webm/libwebm.git@0d4cb404ea4195e5e21d04db2c955615535ce62e",
321   "src/third_party/openssl":
322     "/trunk/deps/third_party/openssl@" + Var("openssl_revision"),
324   "src/third_party/pdfium":
325     Var("pdfium_git") + "/pdfium.git@" + Var("pdfium_revision"),
327   "src/third_party/boringssl/src":
328     Var("boringssl_git") + "/boringssl.git@" + Var("boringssl_revision"),
332 deps_os = {
333   "win": {
334     "src/chrome/tools/test/reference_build/chrome_win":
335       "/trunk/deps/reference_builds/chrome_win@273882",
337     "src/third_party/cygwin":
338       "/trunk/deps/third_party/cygwin@231940",
340     "src/third_party/psyco_win32":
341       "/trunk/deps/third_party/psyco_win32@237949",
343     "src/third_party/bison":
344       "/trunk/deps/third_party/bison@147303",
346     "src/third_party/gperf":
347       "/trunk/deps/third_party/gperf@147304",
349     "src/third_party/perl":
350       "/trunk/deps/third_party/perl@147900",
352     "src/third_party/lighttpd":
353       "/trunk/deps/third_party/lighttpd@" + Var("lighttpd_revision"),
355     # Parses Windows PE/COFF executable format.
356     "src/third_party/pefile":
357       Var("chromium_git") + "/external/pefile.git@" +
358       "72c6ae42396cb913bcab63c15585dc3b5c3f92f1",
360     # NSS, for SSLClientSocketNSS.
361     "src/third_party/nss":
362       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
364     "src/third_party/swig/win":
365       "/trunk/deps/third_party/swig/win@" + Var("swig_revision"),
367     # GNU binutils assembler for x86-32.
368     "src/third_party/gnu_binutils":
369       (Var("nacl_trunk") + "/deps/third_party/gnu_binutils@" +
370        Var("nacl_tools_revision")),
371     # GNU binutils assembler for x86-64.
372     "src/third_party/mingw-w64/mingw/bin":
373       (Var("nacl_trunk") + "/deps/third_party/mingw-w64/mingw/bin@" +
374        Var("nacl_tools_revision")),
376     # Dependencies used by libjpeg-turbo
377     "src/third_party/yasm/binaries":
378       "/trunk/deps/third_party/yasm/binaries@154708",
380     # Binaries for nacl sdk.
381     "src/third_party/nacl_sdk_binaries":
382       "/trunk/deps/third_party/nacl_sdk_binaries@111576",
383   },
384   "ios": {
385     "src/third_party/google_toolbox_for_mac/src":
386       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
387       Var("google_toolbox_for_mac_revision"),
389     "src/third_party/nss":
390       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
392     # class-dump utility to generate header files for undocumented SDKs
393     "src/testing/iossim/third_party/class-dump":
394       "/trunk/deps/third_party/class-dump@199203",
396     # Code that's not needed due to not building everything
397     "src/build/util/support": None,
398     "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin": None,
399     "src/chrome/test/data/perf/canvas_bench": None,
400     "src/chrome/test/data/perf/frame_rate/content": None,
401     "src/media/cdm/ppapi/api": None,
402     "src/native_client": None,
403     "src/native_client/src/third_party/ppapi": None,
404     "src/third_party/bidichecker": None,
405     "src/third_party/brotli/src": None,
406     "src/third_party/cld_2/src": None,
407     "src/third_party/ffmpeg": None,
408     "src/third_party/hunspell_dictionaries": None,
409     "src/third_party/hunspell": None,
410     "src/third_party/libc++/trunk": None,
411     "src/third_party/libc++abi/trunk": None,
412     "src/third_party/libexif/sources": None,
413     "src/third_party/libjpeg_turbo": None,
414     "src/third_party/libsrtp": None,
415     "src/third_party/mesa/src": None,
416     "src/third_party/opus/src": None,
417     "src/third_party/openmax_dl": None,
418     "src/third_party/ots": None,
419     "src/third_party/pymox/src": None,
420     "src/third_party/safe_browsing/testing": None,
421     "src/third_party/scons-2.0.1": None,
422     "src/third_party/sfntly/cpp/src": None,
423     "src/third_party/speex": None,
424     "src/third_party/swig/Lib": None,
425     "src/third_party/usrsctp/usrsctplib": None,
426     "src/third_party/v8-i18n": None,
427     "src/third_party/webdriver/pylib": None,
428     "src/third_party/webgl": None,
429     "src/third_party/webpagereplay": None,
430     "src/third_party/WebKit/LayoutTests/w3c/web-platform-tests": None,
431     "src/third_party/WebKit/LayoutTests/w3c/csswg-test": None,
432     "src/third_party/yasm/source/patched-yasm": None,
433     "src/tools/page_cycler/acid3": None,
434     "src/v8": None,
435   },
436   "mac": {
437     "src/chrome/tools/test/reference_build/chrome_mac":
438       "/trunk/deps/reference_builds/chrome_mac@273882",
440     "src/third_party/google_toolbox_for_mac/src":
441       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
442       Var("google_toolbox_for_mac_revision"),
444     "src/third_party/pdfsqueeze":
445       (Var("googlecode_url") % "pdfsqueeze") + "/trunk@5",
447     "src/third_party/lighttpd":
448       "/trunk/deps/third_party/lighttpd@" + Var("lighttpd_revision"),
450     "src/third_party/swig/mac":
451       "/trunk/deps/third_party/swig/mac@" + Var("swig_revision"),
453     # NSS, for SSLClientSocketNSS.
454     "src/third_party/nss":
455       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
457     "src/chrome/installer/mac/third_party/xz/xz":
458       "/trunk/deps/third_party/xz@233311",
459   },
460   "unix": {
461     # Linux, really.
462     "src/chrome/tools/test/reference_build/chrome_linux":
463       "/trunk/deps/reference_builds/chrome_linux64@273882",
465     "src/third_party/xdg-utils":
466       "/trunk/deps/third_party/xdg-utils@203785",
468     "src/third_party/swig/linux":
469       "/trunk/deps/third_party/swig/linux@" + Var("swig_revision"),
471     "src/third_party/lss":
472       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
473        Var("lss_revision")),
475     # For Linux and Chromium OS.
476     "src/third_party/cros_system_api":
477       Var("chromiumos_git") + "/platform/system_api.git" +
478       "@e59913eb5a1562e23256b0527fb709be967bedc9",
480     # Note that this is different from Android's freetype repo.
481     "src/third_party/freetype2/src":
482       Var("chromium_git") + "/chromium/src/third_party/freetype2.git" +
483       "@d699c2994ecc178c4ed05ac2086061b2034c2178",
485     # Build tools for Chrome OS.
486     "src/third_party/chromite":
487       Var("chromiumos_git") + "/chromite.git" +
488       "@9350f2b004f2301477b76727b8c935aa8481c9f5",
490     # Dependency of chromite.git.
491     "src/third_party/pyelftools":
492       Var("chromiumos_git") + "/third_party/pyelftools.git" +
493       "@bdc1d380acd88d4bfaf47265008091483b0d614e",
495     "src/third_party/undoview":
496       "/trunk/deps/third_party/undoview@119694",
498     "src/third_party/liblouis/src":
499       Var("chromium_git") +
500       "/external/liblouis.git@3c2daee56250162e5a75830871601d74328d39f5",
502     # Used for embedded builds. CrOS & Linux use the system version.
503     "src/third_party/fontconfig/src":
504       Var("chromium_git") + "/external/fontconfig.git" +
505       "@f16c3118e25546c1b749f9823c51827a60aeb5c1",
506   },
507   "android": {
508     "src/third_party/android_tools":
509       Var("chromium_git") + "/android_tools.git" +
510       "@31869996507de16812bb53a3d0aaa15cd6194c16",
512     "src/third_party/aosp":
513       "/trunk/deps/third_party/aosp@148330",
515     "src/third_party/apache-mime4j":
516       "/trunk/deps/third_party/apache-mime4j@170888",
518     "src/third_party/findbugs":
519       "/trunk/deps/third_party/findbugs@245039",
521     "src/third_party/freetype":
522       Var("chromium_git") + "/chromium/src/third_party/freetype.git" +
523       "@a2b9955b49034a51dfbc8bf9f4e9d312149cecac",
525     "src/third_party/guava/src":
526       Var("chromium_git") + "/external/guava-libraries.git" +
527       "@c523556ab7d0f05afadebd20e7768d4c16af8771",
529    "src/third_party/elfutils/src":
530       Var("chromium_git") + "/external/elfutils.git" +
531       "@249673729a7e5dbd5de4f3760bdcaa3d23d154d7",
533     "src/third_party/httpcomponents-client":
534       "/trunk/deps/third_party/httpcomponents-client@170888",
536     "src/third_party/httpcomponents-core":
537       "/trunk/deps/third_party/httpcomponents-core@170888",
539     "src/third_party/jarjar":
540       "/trunk/deps/third_party/jarjar@170888",
542     "src/third_party/jsr-305/src":
543       (Var("googlecode_url") % "jsr-305") + "/trunk@51",
545     "src/third_party/lss":
546       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
547        Var("lss_revision")),
549     "src/third_party/eyesfree/src/android/java/src/com/googlecode/eyesfree/braille":
550       (Var("googlecode_url") % "eyes-free") + "/trunk/braille/client/src/com/googlecode/eyesfree/braille@797",
551   },
555 include_rules = [
556   # Everybody can use some things.
557   "+base",
558   "+build",
559   "+ipc",
561   # Everybody can use headers generated by tools/generate_library_loader.
562   "+library_loaders",
564   "+testing",
565   "+third_party/icu/source/common/unicode",
566   "+third_party/icu/source/i18n/unicode",
567   "+url",
571 # checkdeps.py shouldn't check include paths for files in these dirs:
572 skip_child_includes = [
573   "breakpad",
574   "delegate_execute",
575   "metro_driver",
576   "native_client_sdk",
577   "o3d",
578   "sdch",
579   "skia",
580   "testing",
581   "third_party",
582   "v8",
583   "win8",
587 hooks = [
588   {
589     # This clobbers when necessary (based on get_landmines.py). It must be the
590     # first hook so that other things that get/generate into the output
591     # directory will not subsequently be clobbered.
592     "name": "landmines",
593     "pattern": ".",
594     "action": [
595         "python",
596         "src/build/landmines.py",
597     ],
598   },
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         "--exclude", "arm_trusted",
608     ],
609   },
610   {
611     # Downloads an ARM sysroot image to src/arm-sysroot. This image updates
612     # at about the same rate that the chrome build deps change.
613     # This script is a no-op except for linux users who have
614     # target_arch=arm in their GYP_DEFINES.
615     "name": "sysroot",
616     "pattern": ".",
617     "action": ["python", "src/build/linux/install-arm-sysroot.py",
618                "--linux-only"],
619   },
620   {
621     # Downloads the Debian Wheezy sysroot to chrome/installer/linux if needed.
622     # This sysroot updates at about the same rate that the chrome build deps
623     # change. This script is a no-op except for linux users who are doing
624     # official chrome builds.
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=amd64"],
632   },
633   {
634     # Same as above, but for 32-bit Linux.
635     "name": "sysroot",
636     "pattern": ".",
637     "action": [
638         "python",
639         "src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py",
640         "--linux-only",
641         "--arch=i386"],
642   },
643   {
644     # Pull clang if on Mac or clang is requested via GYP_DEFINES.
645     "name": "clang",
646     "pattern": ".",
647     "action": ["python", "src/tools/clang/scripts/update.py", "--if-needed"],
648   },
649   {
650     # Update the Windows toolchain if necessary.
651     "name": "win_toolchain",
652     "pattern": ".",
653     "action": ["python", "src/build/vs_toolchain.py", "update"],
654   },
655   {
656     # Update LASTCHANGE. 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                "-o", "src/build/util/LASTCHANGE"],
662   },
663   {
664     # Update LASTCHANGE.blink. This is also run by export_tarball.py in
665     # src/tools/export_tarball - please keep them in sync.
666     "name": "lastchange",
667     "pattern": ".",
668     "action": ["python", "src/build/util/lastchange.py",
669                "-s", "src/third_party/WebKit",
670                "-o", "src/build/util/LASTCHANGE.blink"],
671   },
672   # Pull GN binaries. This needs to be before running GYP below.
673   {
674     "name": "gn_win",
675     "pattern": ".",
676     "action": [ "download_from_google_storage",
677                 "--no_resume",
678                 "--platform=win32",
679                 "--no_auth",
680                 "--bucket", "chromium-gn",
681                 "-s", "src/buildtools/win/gn.exe.sha1",
682     ],
683   },
684   {
685     "name": "gn_mac",
686     "pattern": ".",
687     "action": [ "download_from_google_storage",
688                 "--no_resume",
689                 "--platform=darwin",
690                 "--no_auth",
691                 "--bucket", "chromium-gn",
692                 "-s", "src/buildtools/mac/gn.sha1",
693     ],
694   },
695   {
696     "name": "gn_linux32",
697     "pattern": ".",
698     "action": [ "download_from_google_storage",
699                 "--no_resume",
700                 "--platform=linux*",
701                 "--no_auth",
702                 "--bucket", "chromium-gn",
703                 "-s", "src/buildtools/linux32/gn.sha1",
704     ],
705   },
706   {
707     "name": "gn_linux64",
708     "pattern": ".",
709     "action": [ "download_from_google_storage",
710                 "--no_resume",
711                 "--platform=linux*",
712                 "--no_auth",
713                 "--bucket", "chromium-gn",
714                 "-s", "src/buildtools/linux64/gn.sha1",
715     ],
716   },
717   {
718     # Remove GN binaries from tools/gn/bin that aren't used anymore.
719     # TODO(brettw) remove after the end of July, 2014.
720     "name": "remove_old_gn_binaries",
721     "pattern": ".",
722     "action": ["python", "src/tools/gn/bin/rm_binaries.py"],
723   },
724   # Pull clang-format binaries using checked-in hashes.
725   {
726     "name": "clang_format_win",
727     "pattern": ".",
728     "action": [ "download_from_google_storage",
729                 "--no_resume",
730                 "--platform=win32",
731                 "--no_auth",
732                 "--bucket", "chromium-clang-format",
733                 "-s", "src/buildtools/win/clang-format.exe.sha1",
734     ],
735   },
736   {
737     "name": "clang_format_mac",
738     "pattern": ".",
739     "action": [ "download_from_google_storage",
740                 "--no_resume",
741                 "--platform=darwin",
742                 "--no_auth",
743                 "--bucket", "chromium-clang-format",
744                 "-s", "src/buildtools/mac/clang-format.sha1",
745     ],
746   },
747   {
748     "name": "clang_format_linux",
749     "pattern": ".",
750     "action": [ "download_from_google_storage",
751                 "--no_resume",
752                 "--platform=linux*",
753                 "--no_auth",
754                 "--bucket", "chromium-clang-format",
755                 "-s", "src/buildtools/linux64/clang-format.sha1",
756     ],
757   },
758   # Pull binutils for linux, enabled debug fission for faster linking /
759   # debugging when used with clang on Ubuntu Precise.
760   # https://code.google.com/p/chromium/issues/detail?id=352046
761   {
762     "name": "binutils",
763     "pattern": "src/third_party/binutils",
764     "action": [
765         "python",
766         "src/third_party/binutils/download.py",
767     ],
768   },
769   # Pull eu-strip binaries using checked-in hashes.
770   {
771     "name": "eu-strip",
772     "pattern": ".",
773     "action": [ "download_from_google_storage",
774                 "--no_resume",
775                 "--platform=linux*",
776                 "--no_auth",
777                 "--bucket", "chromium-eu-strip",
778                 "-s", "src/build/linux/bin/eu-strip.sha1",
779     ],
780   },
781   {
782     "name": "drmemory",
783     "pattern": ".",
784     "action": [ "download_from_google_storage",
785                 "--no_resume",
786                 "--platform=win32",
787                 "--no_auth",
788                 "--bucket", "chromium-drmemory",
789                 "-s", "src/third_party/drmemory/drmemory-windows-sfx.exe.sha1",
790               ],
791   },
792   # Pull the Syzygy binaries, used for optimization and instrumentation.
793   {
794     "name": "syzygy-binaries",
795     "pattern": ".",
796     "action": ["python",
797                "src/build/get_syzygy_binaries.py",
798                "--output-dir=src/third_party/syzygy/binaries",
799                "--revision=363bc02a09c380b6f5f397606cc0744d85d54a51",
800                "--overwrite",
801     ],
802   },
803   {
804     "name": "apache_win32",
805     "pattern": "\\.sha1",
806     "action": [ "download_from_google_storage",
807                 "--no_resume",
808                 "--platform=win32",
809                 "--directory",
810                 "--recursive",
811                 "--no_auth",
812                 "--num_threads=16",
813                 "--bucket", "chromium-apache-win32",
814                 "src/third_party/apache-win32",
815     ],
816   },
817   {
818     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
819     "name": "gyp",
820     "pattern": ".",
821     "action": ["python", "src/build/gyp_chromium"],
822   },
823   {
824     # Verify committers' ~/.netc, gclient and git are properly configured for
825     # write access to the git repo. To be removed sometime after Chrome to git
826     # migration completes (let's say Sep 1 2014).
827     "name": "check_git_config",
828     "pattern": ".",
829     "action": [
830         "python",
831         "src/tools/check_git_config.py",
832         "--running-as-hook",
833     ],
834   },