Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / DEPS
blob6c291de47561711c7d74e4a5fda2bd306210e991
1 # This file is used to manage the dependencies of the Chromium src repo. It is
2 # used by gclient to determine what version of each dependency to check out, and
3 # where.
5 # For more information, please refer to the official documentation:
6 #   https://sites.google.com/a/chromium.org/dev/developers/how-tos/get-the-code
8 # When adding a new dependency, please update the top-level .gitignore file
9 # to list the dependency's destination directory.
11 # -----------------------------------------------------------------------------
12 # Rolling deps
13 # -----------------------------------------------------------------------------
14 # All repositories in this file are git-based, using Chromium git mirrors where
15 # necessary (e.g., a git mirror is used when the source project is SVN-based).
16 # To update the revision that Chromium pulls for a given dependency:
18 #  # Create and switch to a new branch
19 #  git new-branch depsroll
20 #  # Run roll-dep (provided by depot_tools) giving the dep's path and optionally
21 #  # a regex that will match the line in this file that contains the current
22 #  # revision. The script ALWAYS rolls the dependency to the latest revision
23 #  # in origin/master. The path for the dep should start with src/.
24 #  roll-dep src/third_party/foo_package/src foo_package.git
25 #  # You should now have a modified DEPS file; commit and upload as normal
26 #  git commit -a
27 #  git cl upload
30 vars = {
31   # Use this googlecode_url variable only if there is an internal mirror for it.
32   # If you do not know, use the full path while defining your new deps entry.
33   'googlecode_url': 'http://%s.googlecode.com/svn',
34   'chromium_git': 'https://chromium.googlesource.com',
35   'libvpx_revision': '0d6551cd1e1359423a7f4af503472d280437e9bb',
36   'sfntly_revision': '1bdaae8fc788a5ac8936d68bf24f37d977a13dac',
37   'skia_revision': '55fb4f3fdaa301c1c251259fedff4ab0b958c23b',
38   # Three lines of non-changing comments so that
39   # the commit queue can handle CLs rolling V8
40   # and whatever else without interference from each other.
41   'v8_revision': '4890671f8f41d117bc88633096fdd30cdf15bb6e',
42   # Three lines of non-changing comments so that
43   # the commit queue can handle CLs rolling swarming_client
44   # and whatever else without interference from each other.
45   'swarming_revision': 'f71d1a3fbe207d91bb2f0bd96c8821ff90bb7c28',
46   # Three lines of non-changing comments so that
47   # the commit queue can handle CLs rolling ANGLE
48   # and whatever else without interference from each other.
49   'angle_revision': 'c5b2ba53591c98d5f1c539dc8fcab6f76cc6318e',
50   # Three lines of non-changing comments so that
51   # the commit queue can handle CLs rolling build tools
52   # and whatever else without interference from each other.
53   'buildtools_revision': 'f7310ee61725e68b1c8921e381830362cf4f0999',
54   # Three lines of non-changing comments so that
55   # the commit queue can handle CLs rolling PDFium
56   # and whatever else without interference from each other.
57   'pdfium_revision': 'bca779d0957965eb2ebfad5479e0894844749626',
58   # Three lines of non-changing comments so that
59   # the commit queue can handle CLs rolling openmax_dl
60   # and whatever else without interference from each other.
61   'openmax_dl_revision': '2eb98d819bed3082071a09268b886bc4496c6fb5',
62   # Three lines of non-changing comments so that
63   # the commit queue can handle CLs rolling BoringSSL
64   # and whatever else without interference from each other.
65   'boringssl_revision': '231cb8214511ea5784dd94a59f3e5f5fb7d39f8e',
66   # Three lines of non-changing comments so that
67   # the commit queue can handle CLs rolling nss
68   # and whatever else without interference from each other.
69   'nss_revision': 'aab0d08a298b29407397fbb1c4219f99e99431ed', # from svn revision 295435
70   # Three lines of non-changing comments so that
71   # the commit queue can handle CLs rolling google-toolbox-for-mac
72   # and whatever else without interference from each other.
73   'google_toolbox_for_mac_revision': 'ce47a231ea0b238fbe95538e86cc61d74c234be6', # from svn revision 705
74   # Three lines of non-changing comments so that
75   # the commit queue can handle CLs rolling lighttpd
76   # and whatever else without interference from each other.
77   'lighttpd_revision': '9dfa55d15937a688a92cbf2b7a8621b0927d06eb',
78   # Three lines of non-changing comments so that
79   # the commit queue can handle CLs rolling lss
80   # and whatever else without interference from each other.
81   'lss_revision': '4fc942258fe5509549333b9487ec018e3c8c5b10',
82   # Three lines of non-changing comments so that
83   # the commit queue can handle CLs rolling NaCl
84   # and whatever else without interference from each other.
85   'nacl_revision': '719fce7fa0c1f11cf05d5c20cdfa6648e8a35611',
86   # Three lines of non-changing comments so that
87   # the commit queue can handle CLs rolling dEQP
88   # and whatever else without interference from each other.
89   'deqp_revision': '194294e69d44eac48bc1fb063bd607189650aa5e',
90   'deqp_url': 'https://android.googlesource.com/platform/external/deqp',
93 # Only these hosts are allowed for dependencies in this DEPS file.
94 # If you need to add a new host, contact chrome infrastracture team.
95 allowed_hosts = [
96   'chromium.googlesource.com',
97   'boringssl.googlesource.com',
98   'pdfium.googlesource.com',
99   'android.googlesource.com',
102 deps = {
103   'src/breakpad/src':
104    Var('chromium_git') + '/breakpad/breakpad/src.git' + '@' + '027db3c04fbea96f3efa8e1f722ffff11b19a085',
106   'src/buildtools':
107    Var('chromium_git') + '/chromium/buildtools.git' + '@' +  Var('buildtools_revision'),
109   'src/sdch/open-vcdiff':
110    Var('chromium_git') + '/external/github.com/google/open-vcdiff.git' + '@' + '21d7d0b9c3d0c3ccbdb221c85ae889373f0a2a58',
112   'src/testing/gtest':
113    Var('chromium_git') + '/external/googletest.git' + '@' + '9855a87157778d39b95eccfb201a9dc90f6d61c6', # from svn revision 746
115   'src/testing/gmock':
116    Var('chromium_git') + '/external/googlemock.git' + '@' + '0421b6f358139f02e102c9c332ce19a33faf75be', # from svn revision 566
118   'src/third_party/angle':
119    Var('chromium_git') + '/angle/angle.git' + '@' +  Var('angle_revision'),
121   'src/third_party/colorama/src':
122    Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
124   'src/third_party/crashpad/crashpad':
125    Var('chromium_git') + '/crashpad/crashpad.git' + '@' + '595803e1be18aa789ba561aa06db73cfc3c2e7a2',
127   'src/third_party/icu':
128    Var('chromium_git') + '/chromium/deps/icu.git' + '@' + '6b3ce817f8e828c3b7a577d2395f0882eb56ef18',
130   'src/third_party/libexif/sources':
131    Var('chromium_git') + '/chromium/deps/libexif/sources.git' + '@' + 'ed98343daabd7b4497f97fda972e132e6877c48a',
133   'src/third_party/hunspell_dictionaries':
134    Var('chromium_git') + '/chromium/deps/hunspell_dictionaries.git' + '@' + 'c106afdcec5d3de2622e19f1b3294c47bbd8bd72',
136   'src/third_party/safe_browsing/testing':
137     Var('chromium_git') + '/external/google-safe-browsing/testing.git' + '@' + '9d7e8064f3ca2e45891470c9b5b1dce54af6a9d6',
139   'src/third_party/leveldatabase/src':
140     Var('chromium_git') + '/external/leveldb.git' + '@' + '40c17c0b84ac0b791fb434096fd5c05f3819ad55',
142   'src/third_party/snappy/src':
143     Var('chromium_git') + '/external/snappy.git' + '@' + '762bb32f0c9d2f31ba4958c7c0933d22e80c20bf',
145   'src/tools/grit':
146     Var('chromium_git') + '/external/grit-i18n.git' + '@' + '15d48e32cc9f346245c823ce48c54209d02ea983', # from svn revision 196
148   'src/tools/gyp':
149     Var('chromium_git') + '/external/gyp.git' + '@' + '01528c7244837168a1c80f06ff60fa5a9793c824',
151   'src/tools/swarming_client':
152    Var('chromium_git') + '/external/swarming.client.git' + '@' +  Var('swarming_revision'),
154   'src/v8':
155     Var('chromium_git') + '/v8/v8.git' + '@' +  Var('v8_revision'),
157   'src/native_client':
158    Var('chromium_git') + '/native_client/src/native_client.git' + '@' + Var('nacl_revision'),
160   'src/third_party/sfntly/cpp/src':
161     Var('chromium_git') + '/external/sfntly/cpp/src.git' + '@' +  Var('sfntly_revision'),
163   'src/third_party/skia':
164    Var('chromium_git') + '/skia.git' + '@' +  Var('skia_revision'),
166   'src/tools/page_cycler/acid3':
167    Var('chromium_git') + '/chromium/deps/acid3.git' + '@' + '6be0a66a1ebd7ebc5abc1b2f405a945f6d871521',
169   'src/chrome/test/data/perf/canvas_bench':
170    Var('chromium_git') + '/chromium/canvas_bench.git' + '@' + 'a7b40ea5ae0239517d78845a5fc9b12976bfc732',
172   'src/chrome/test/data/perf/frame_rate/content':
173    Var('chromium_git') + '/chromium/frame_rate/content.git' + '@' + 'c10272c88463efeef6bb19c9ec07c42bc8fe22b9',
175   'src/third_party/bidichecker':
176     Var('chromium_git') + '/external/bidichecker/lib.git' + '@' + '97f2aa645b74c28c57eca56992235c79850fa9e0',
178   'src/third_party/webgl/src':
179    Var('chromium_git') + '/external/khronosgroup/webgl.git' + '@' + '397fdf9245912ce37a01611b7a0ad02cd80de89f',
181   'src/third_party/webdriver/pylib':
182     Var('chromium_git') + '/external/selenium/py.git' + '@' + '5fd78261a75fe08d27ca4835fb6c5ce4b42275bd',
184   'src/third_party/libvpx':
185    Var('chromium_git') + '/chromium/deps/libvpx.git' + '@' +  Var('libvpx_revision'),
187   'src/third_party/libvpx_new/source/libvpx':
188    Var('chromium_git') + '/webm/libvpx.git' + '@' +  'c5f11912ae328a912ef087fdcd074ff07e96d8f9',
190   'src/third_party/ffmpeg':
191    Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '382b031ebab06b25df0708dd44aafad235657d2c',
193   'src/third_party/libjingle/source/talk':
194     Var('chromium_git') + '/external/webrtc/trunk/talk.git' + '@' + 'df1b109ca587295b6ec2e83e8c6c80de3a09dce8', # commit position 9994
196   'src/third_party/usrsctp/usrsctplib':
197     Var('chromium_git') + '/external/usrsctplib.git' + '@' + '36444a999739e9e408f8f587cb4c3ffeef2e50ac', # from svn revision 9215
199   'src/third_party/libsrtp':
200    Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + '502e81a238a864cfce774d4de3893810629bf227', # from svn revision 295151
202   'src/third_party/yasm/source/patched-yasm':
203    Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + '4671120cd8558ce62ee8672ebf3eb6f5216f909b',
205   'src/third_party/libjpeg_turbo':
206    Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + 'e4e75037f29745f1546b6ebf5cf532e841c04c2c',
208   'src/third_party/flac':
209    Var('chromium_git') + '/chromium/deps/flac.git' + '@' + '2c4b86af352b23498315c016dc207e3fb2733fc0',
211   'src/third_party/pyftpdlib/src':
212     Var('chromium_git') + '/external/pyftpdlib.git' + '@' + '2be6d65e31c7ee6320d059f581f05ae8d89d7e45',
214   'src/third_party/scons-2.0.1':
215    Var('chromium_git') + '/native_client/src/third_party/scons-2.0.1.git' + '@' + '1c1550e17fc26355d08627fbdec13d8291227067',
217   'src/third_party/webrtc':
218     Var('chromium_git') + '/external/webrtc/trunk/webrtc.git' + '@' + '47b95c6276e4d174aef09a910e50c1fae26cb50c', # commit position 9994
220   'src/third_party/openmax_dl':
221     Var('chromium_git') + '/external/webrtc/deps/third_party/openmax.git' + '@' +  Var('openmax_dl_revision'),
223   'src/third_party/jsoncpp/source':
224     Var('chromium_git') + '/external/github.com/open-source-parsers/jsoncpp.git' + '@' + 'f572e8e42e22cfcf5ab0aea26574f408943edfa4', # from svn 248
226   'src/third_party/libyuv':
227     Var('chromium_git') + '/libyuv/libyuv.git' + '@' + '62c49dc811f078e78ed76bfd7c6358c8b7513a14', # from version 1487
229   'src/third_party/smhasher/src':
230     Var('chromium_git') + '/external/smhasher.git' + '@' + 'e87738e57558e0ec472b2fc3a643b838e5b6e88f',
232   'src/third_party/libaddressinput/src':
233     Var('chromium_git') + '/external/libaddressinput.git' + '@' + '5eeeb797e79fa01503fcdcbebdc50036fac023ef',
235   # These are all at libphonenumber r728.
236   'src/third_party/libphonenumber/src/phonenumbers':
237     Var('chromium_git') + '/external/libphonenumber/cpp/src/phonenumbers.git' + '@' + '0d6e3e50e17c94262ad1ca3b7d52b11223084bca',
238   'src/third_party/libphonenumber/src/test':
239     Var('chromium_git') + '/external/libphonenumber/cpp/test.git' + '@' + 'f351a7e007f9c9995494499120bbc361ca808a16',
240   'src/third_party/libphonenumber/src/resources':
241     Var('chromium_git') + '/external/libphonenumber/resources.git' + '@' + 'b6dfdc7952571ff7ee72643cd88c988cbe966396',
243   'src/tools/deps2git':
244    Var('chromium_git') + '/chromium/tools/deps2git.git' + '@' + 'f04828eb0b5acd3e7ad983c024870f17f17b06d9',
246   'src/third_party/webpagereplay':
247    Var('chromium_git') + '/external/github.com/chromium/web-page-replay.git' + '@' + '7564939bdf6482d57b9bd5e9c931679f96d8cf75',
249   'src/third_party/pywebsocket/src':
250     Var('chromium_git') + '/external/github.com/google/pywebsocket.git' + '@' + '09d842794c14ca064f8a4223b313ac2c84bd33c8',
252   'src/third_party/opus/src':
253    Var('chromium_git') + '/chromium/deps/opus.git' + '@' + 'cae696156f1e60006e39821e79a1811ae1933c69',
255   'src/media/cdm/ppapi/api':
256    Var('chromium_git') + '/chromium/cdm.git' + '@' + '7377023e384f296cbb27644eb2c485275f1f92e8', # from svn revision 294518
258   'src/third_party/mesa/src':
259    Var('chromium_git') + '/chromium/deps/mesa.git' + '@' + '3918dbd3bced7843af396a0ee9f9da081d968806',
261   'src/third_party/cld_2/src':
262     Var('chromium_git') + '/external/github.com/CLD2Owners/cld2.git' + '@' + '84b58a5d7690ebf05a91406f371ce00c3daf31c0',
264   'src/third_party/libwebm/source':
265    Var('chromium_git') + '/webm/libwebm.git' + '@' + '75a6d2da8b63e0c446ec0ce1ac942c2962d959d7',
267   'src/third_party/pdfium':
268    'https://pdfium.googlesource.com/pdfium.git' + '@' +  Var('pdfium_revision'),
270   'src/third_party/boringssl/src':
271    'https://boringssl.googlesource.com/boringssl.git' + '@' +  Var('boringssl_revision'),
273   'src/third_party/py_trace_event/src':
274     Var('chromium_git') + '/external/py_trace_event.git' + '@' + 'dd463ea9e2c430de2b9e53dea57a77b4c3ac9b30',
276   'src/third_party/dom_distiller_js/dist':
277     Var('chromium_git') + '/external/github.com/chromium/dom-distiller-dist.git' + '@' + '81e5b59da2a7a0a518b90b5ded58670322c98128',
279   'src/third_party/catapult':
280     Var('chromium_git') + '/external/github.com/catapult-project/catapult.git' + '@' +
281     'dc1a60501d508cc469c8dc94305724b153e556e2',
285 deps_os = {
286   'win': {
287     'src/chrome/tools/test/reference_build/chrome_win':
288      Var('chromium_git') + '/chromium/reference_builds/chrome_win.git' + '@' + 'f8a3a845dfc845df6b14280f04f86a61959357ef',
290     'src/third_party/cygwin':
291      Var('chromium_git') + '/chromium/deps/cygwin.git' + '@' + 'c89e446b273697fadf3a10ff1007a97c0b7de6df',
293     'src/third_party/psyco_win32':
294      Var('chromium_git') + '/chromium/deps/psyco_win32.git' + '@' + 'f5af9f6910ee5a8075bbaeed0591469f1661d868',
296     'src/third_party/bison':
297      Var('chromium_git') + '/chromium/deps/bison.git' + '@' + '083c9a45e4affdd5464ee2b224c2df649c6e26c3',
299     'src/third_party/gperf':
300      Var('chromium_git') + '/chromium/deps/gperf.git' + '@' + 'd892d79f64f9449770443fb06da49b5a1e5d33c1',
302     'src/third_party/perl':
303      Var('chromium_git') + '/chromium/deps/perl.git' + '@' + 'ac0d98b5cee6c024b0cffeb4f8f45b6fc5ccdb78',
305     'src/third_party/lighttpd':
306      Var('chromium_git') + '/chromium/deps/lighttpd.git' + '@' + Var('lighttpd_revision'),
308     # Parses Windows PE/COFF executable format.
309     'src/third_party/pefile':
310      Var('chromium_git') + '/external/pefile.git' + '@' + '72c6ae42396cb913bcab63c15585dc3b5c3f92f1',
312     # NSS, for SSLClientSocketNSS.
313     'src/third_party/nss':
314      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
316     # GNU binutils assembler for x86-32.
317     'src/third_party/gnu_binutils':
318       Var('chromium_git') + '/native_client/deps/third_party/gnu_binutils.git' + '@' + 'f4003433b61b25666565690caf3d7a7a1a4ec436',
319     # GNU binutils assembler for x86-64.
320     'src/third_party/mingw-w64/mingw/bin':
321       Var('chromium_git') + '/native_client/deps/third_party/mingw-w64/mingw/bin.git' + '@' + '3cc8b140b883a9fe4986d12cfd46c16a093d3527',
323     # Dependencies used by libjpeg-turbo
324     'src/third_party/yasm/binaries':
325      Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
327     # Binaries for nacl sdk.
328     'src/third_party/nacl_sdk_binaries':
329      Var('chromium_git') + '/chromium/deps/nacl_sdk_binaries.git' + '@' + '759dfca03bdc774da7ecbf974f6e2b84f43699a5',
331     # ANGLE uses dEQP for GPU testing
332     'src/third_party/deqp/src':
333      Var('deqp_url') + '@' + Var('deqp_revision'),
334   },
335   'ios': {
336     'src/ios/third_party/gcdwebserver/src':
337      Var('chromium_git') + '/external/github.com/swisspol/GCDWebServer.git' + '@' + '3d5fd0b8281a7224c057deb2d17709b5bea64836',
339     'src/third_party/google_toolbox_for_mac/src':
340       Var('chromium_git') + '/external/google-toolbox-for-mac.git' + '@' + Var('google_toolbox_for_mac_revision'),
342     'src/third_party/nss':
343      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
345     # class-dump utility to generate header files for undocumented SDKs
346     'src/third_party/class-dump/src':
347      Var('chromium_git') + '/external/github.com/nygard/class-dump.git' + '@' + '978d177ca6f0d2e5e34acf3e8dadc63e3140ebbc',
349     # Code that's not needed due to not building everything
350     'src/chrome/test/data/perf/canvas_bench': None,
351     'src/chrome/test/data/perf/frame_rate/content': None,
352     'src/native_client': None,
353     'src/third_party/ffmpeg': None,
354     'src/third_party/hunspell_dictionaries': None,
355     'src/third_party/webgl': None,
356   },
357   'mac': {
358     'src/chrome/tools/test/reference_build/chrome_mac':
359      Var('chromium_git') + '/chromium/reference_builds/chrome_mac.git' + '@' + '8dc181329e7c5255f83b4b85dc2f71498a237955',
361     'src/third_party/google_toolbox_for_mac/src':
362       Var('chromium_git') + '/external/google-toolbox-for-mac.git' + '@' + Var('google_toolbox_for_mac_revision'),
365     'src/third_party/pdfsqueeze':
366       Var('chromium_git') + '/external/pdfsqueeze.git' + '@' + '5936b871e6a087b7e50d4cbcb122378d8a07499f',
368     'src/third_party/lighttpd':
369      Var('chromium_git') + '/chromium/deps/lighttpd.git' + '@' + Var('lighttpd_revision'),
371     # NSS, for SSLClientSocketNSS.
372     'src/third_party/nss':
373      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
375     'src/chrome/installer/mac/third_party/xz/xz':
376      Var('chromium_git') + '/chromium/deps/xz.git' + '@' + 'eecaf55632ca72e90eb2641376bce7cdbc7284f7',
377   },
378   'unix': {
379     # Linux, really.
380     'src/chrome/tools/test/reference_build/chrome_linux':
381      Var('chromium_git') + '/chromium/reference_builds/chrome_linux64.git' + '@' + '033d053a528e820e1de3e2db766678d862a86b36',
383     'src/third_party/xdg-utils':
384      Var('chromium_git') + '/chromium/deps/xdg-utils.git' + '@' + 'd80274d5869b17b8c9067a1022e4416ee7ed5e0d',
386     'src/third_party/lss':
387       Var('chromium_git') + '/external/linux-syscall-support/lss.git' + '@' + Var('lss_revision'),
389     # For Linux and Chromium OS.
390     'src/third_party/cros_system_api':
391      Var('chromium_git') + '/chromiumos/platform/system_api.git' + '@' + '0b175578c8150c7ee0e7e4fd6d4dc7480979e248',
393     # Note that this is different from Android's freetype repo.
394     'src/third_party/freetype2/src':
395      Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + 'fc1532a7c4c592f24a4c1a0261d2845524ca5cff',
397     # Build tools for Chrome OS.
398     'src/third_party/chromite':
399      Var('chromium_git') + '/chromiumos/chromite.git' + '@' + 'e19f83ba227bf1ec0077f5d3a816a415f1dd88d0',
401     # Dependency of chromite.git.
402     'src/third_party/pyelftools':
403      Var('chromium_git') + '/chromiumos/third_party/pyelftools.git' + '@' + 'bdc1d380acd88d4bfaf47265008091483b0d614e',
405     'src/third_party/liblouis/src':
406      Var('chromium_git') + '/external/liblouis-github.git' + '@' + '5f9c03f2a3478561deb6ae4798175094be8a26c2',
408     # Used for embedded builds. CrOS & Linux use the system version.
409     'src/third_party/fontconfig/src':
410      Var('chromium_git') + '/external/fontconfig.git' + '@' + 'f16c3118e25546c1b749f9823c51827a60aeb5c1',
412     # ANGLE uses dEQP for GPU testing
413     'src/third_party/deqp/src':
414      Var('deqp_url') + '@' + Var('deqp_revision'),
416     # Graphics buffer allocator for Chrome OS.
417     'src/third_party/minigbm/src':
418      Var('chromium_git') + '/chromiumos/platform/minigbm.git' + '@' + 'f9d2ab79a15a1bb6a1307f3b608964c81c27791b',
419   },
420   'android': {
421     'src/third_party/android_protobuf/src':
422      Var('chromium_git') + '/external/android_protobuf.git' + '@' + '999188d0dc72e97f7fe08bb756958a2cf090f4e7',
424     'src/third_party/android_tools':
425      Var('chromium_git') + '/android_tools.git' + '@' + '4238a28593b7e6178c95431f91ca8c24e45fa7eb',
427     'src/third_party/apache-mime4j':
428      Var('chromium_git') + '/chromium/deps/apache-mime4j.git' + '@' + '28cb1108bff4b6cf0a2e86ff58b3d025934ebe3a',
430     'src/third_party/appurify-python/src':
431      Var('chromium_git') + '/external/github.com/appurify/appurify-python.git' + '@' + 'ee7abd5c5ae3106f72b2a0b9d2cb55094688e867',
433     'src/third_party/cardboard-java/src':
434      Var('chromium_git') + '/external/github.com/googlesamples/cardboard-java.git' + '@' + 'e36ee57e72bbd057ddb53b127954177b50e18df7',
436     'src/third_party/errorprone/lib':
437       Var('chromium_git') + '/chromium/third_party/errorprone.git' + '@' + '95f929ff6f9213bc7d078c200db3f3dc864f425f',
439     'src/third_party/findbugs':
440      Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '57f05238d3ac77ea0a194813d3065dd780c6e566',
442     'src/third_party/freetype-android/src':
443      Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + 'e186230678ee8e4ea4ac4797ece8125761e3225a',
445    'src/third_party/elfutils/src':
446      Var('chromium_git') + '/external/elfutils.git' + '@' + '249673729a7e5dbd5de4f3760bdcaa3d23d154d7',
448     'src/third_party/httpcomponents-client':
449      Var('chromium_git') + '/chromium/deps/httpcomponents-client.git' + '@' + '285c4dafc5de0e853fa845dce5773e223219601c',
451     'src/third_party/httpcomponents-core':
452      Var('chromium_git') + '/chromium/deps/httpcomponents-core.git' + '@' + '9f7180a96f8fa5cab23f793c14b413356d419e62',
454     'src/third_party/jarjar':
455      Var('chromium_git') + '/chromium/deps/jarjar.git' + '@' + '2e1ead4c68c450e0b77fe49e3f9137842b8b6920',
457     'src/third_party/jsr-305/src':
458       Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
460     'src/third_party/junit/src':
461       Var('chromium_git') + '/external/junit.git' + '@' + '45a44647e7306262162e1346b750c3209019f2e1',
463     'src/third_party/mockito/src':
464       Var('chromium_git') + '/external/mockito/mockito.git' + '@' + '4d987dcd923b81525c42b1333e6c4e07440776c3',
466     'src/third_party/robolectric/lib':
467       Var('chromium_git') + '/chromium/third_party/robolectric.git' + '@' + '6b63c99a8b6967acdb42cbed0adb067c80efc810',
469     'src/third_party/ub-uiautomator/lib':
470       Var('chromium_git') + '/chromium/third_party/ub-uiautomator.git' + '@' + '00270549ce3161ae72ceb24712618ea28b4f9434',
472     'src/third_party/lss':
473       Var('chromium_git') + '/external/linux-syscall-support/lss.git' + '@' + Var('lss_revision'),
475     'src/third_party/requests/src':
476       Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
478     'src/third_party/custom_tabs_client/src':
479       Var('chromium_git') + '/external/github.com/GoogleChrome/custom-tabs-client.git' + '@' + 'bbbf71f41e79b0cfe21199220f495cbd0a3a4ffb',
480   },
484 include_rules = [
485   # Everybody can use some things.
486   # NOTE: THIS HAS TO STAY IN SYNC WITH third_party/DEPS which disallows these.
487   '+base',
488   '+build',
489   '+ipc',
491   # Everybody can use headers generated by tools/generate_library_loader.
492   '+library_loaders',
494   '+testing',
495   '+third_party/icu/source/common/unicode',
496   '+third_party/icu/source/i18n/unicode',
497   '+url',
501 # checkdeps.py shouldn't check include paths for files in these dirs:
502 skip_child_includes = [
503   'breakpad',
504   'native_client_sdk',
505   'out',
506   'sdch',
507   'skia',
508   'testing',
509   'v8',
510   'win8',
514 hooks = [
515   {
516     # This clobbers when necessary (based on get_landmines.py). It must be the
517     # first hook so that other things that get/generate into the output
518     # directory will not subsequently be clobbered.
519     'name': 'landmines',
520     'pattern': '.',
521     'action': [
522         'python',
523         'src/build/landmines.py',
524     ],
525   },
526   {
527     # This downloads binaries for Native Client's newlib toolchain.
528     # Done in lieu of building the toolchain from scratch as it can take
529     # anywhere from 30 minutes to 4 hours depending on platform to build.
530     'name': 'nacltools',
531     'pattern': '.',
532     'action': [
533         'python',
534         'src/build/download_nacl_toolchains.py',
535         '--mode', 'nacl_core_sdk',
536         'sync', '--extract',
537     ],
538   },
539   {
540     # This downloads SDK extras and puts them in the
541     # third_party/android_tools/sdk/extras directory on the bots. Developers
542     # need to manually install these packages and accept the ToS.
543     'name': 'sdkextras',
544     'pattern': '.',
545     # When adding a new sdk extras package to download, add the package
546     # directory and zip file to .gitignore in third_party/android_tools.
547     'action': ['python', 'src/build/download_sdk_extras.py'],
548   },
549   {
550     # Downloads the current stable linux sysroot to build/linux/ if needed.
551     # This sysroot updates at about the same rate that the chrome build deps
552     # change. This script is a no-op except for linux users who are doing
553     # official chrome builds or cross compiling.
554     'name': 'sysroot',
555     'pattern': '.',
556     'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
557                '--running-as-hook'],
558   },
559   {
560     # Update the Windows toolchain if necessary.
561     'name': 'win_toolchain',
562     'pattern': '.',
563     'action': ['python', 'src/build/vs_toolchain.py', 'update'],
564   },
565   # Pull binutils for linux, enabled debug fission for faster linking /
566   # debugging when used with clang on Ubuntu Precise.
567   # https://code.google.com/p/chromium/issues/detail?id=352046
568   {
569     'name': 'binutils',
570     'pattern': 'src/third_party/binutils',
571     'action': [
572         'python',
573         'src/third_party/binutils/download.py',
574     ],
575   },
576   {
577     # Pull clang if needed or requested via GYP_DEFINES.
578     # Note: On Win, this should run after win_toolchain, as it may use it.
579     'name': 'clang',
580     'pattern': '.',
581     'action': ['python', 'src/tools/clang/scripts/update.py', '--if-needed'],
582   },
583   {
584     # Update LASTCHANGE.
585     'name': 'lastchange',
586     'pattern': '.',
587     'action': ['python', 'src/build/util/lastchange.py',
588                '-o', 'src/build/util/LASTCHANGE'],
589   },
590   {
591     # Update LASTCHANGE.blink.
592     'name': 'lastchange',
593     'pattern': '.',
594     'action': ['python', 'src/build/util/lastchange.py',
595                '-s', 'src/third_party/WebKit',
596                '-o', 'src/build/util/LASTCHANGE.blink'],
597   },
598   {
599     # Update CANARY_VERSION.
600     'name': 'ios_canary_version',
601     'pattern': '.',
602     'action': ['python', 'src/ios/build/util/canary_version.py',
603                '-o', 'src/ios/build/util/CANARY_VERSION'],
604   },
605   # Pull GN binaries. This needs to be before running GYP below.
606   {
607     'name': 'gn_win',
608     'pattern': '.',
609     'action': [ 'download_from_google_storage',
610                 '--no_resume',
611                 '--platform=win32',
612                 '--no_auth',
613                 '--bucket', 'chromium-gn',
614                 '-s', 'src/buildtools/win/gn.exe.sha1',
615     ],
616   },
617   {
618     'name': 'gn_mac',
619     'pattern': '.',
620     'action': [ 'download_from_google_storage',
621                 '--no_resume',
622                 '--platform=darwin',
623                 '--no_auth',
624                 '--bucket', 'chromium-gn',
625                 '-s', 'src/buildtools/mac/gn.sha1',
626     ],
627   },
628   {
629     'name': 'gn_linux64',
630     'pattern': '.',
631     'action': [ 'download_from_google_storage',
632                 '--no_resume',
633                 '--platform=linux*',
634                 '--no_auth',
635                 '--bucket', 'chromium-gn',
636                 '-s', 'src/buildtools/linux64/gn.sha1',
637     ],
638   },
639   # Pull clang-format binaries using checked-in hashes.
640   {
641     'name': 'clang_format_win',
642     'pattern': '.',
643     'action': [ 'download_from_google_storage',
644                 '--no_resume',
645                 '--platform=win32',
646                 '--no_auth',
647                 '--bucket', 'chromium-clang-format',
648                 '-s', 'src/buildtools/win/clang-format.exe.sha1',
649     ],
650   },
651   {
652     'name': 'clang_format_mac',
653     'pattern': '.',
654     'action': [ 'download_from_google_storage',
655                 '--no_resume',
656                 '--platform=darwin',
657                 '--no_auth',
658                 '--bucket', 'chromium-clang-format',
659                 '-s', 'src/buildtools/mac/clang-format.sha1',
660     ],
661   },
662   {
663     'name': 'clang_format_linux',
664     'pattern': '.',
665     'action': [ 'download_from_google_storage',
666                 '--no_resume',
667                 '--platform=linux*',
668                 '--no_auth',
669                 '--bucket', 'chromium-clang-format',
670                 '-s', 'src/buildtools/linux64/clang-format.sha1',
671     ],
672   },
673   # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
674   {
675     'name': 'luci-go_win',
676     'pattern': '.',
677     'action': [ 'download_from_google_storage',
678                 '--no_resume',
679                 '--platform=win32',
680                 '--no_auth',
681                 '--bucket', 'chromium-luci',
682                 '-d', 'src/tools/luci-go/win64',
683     ],
684   },
685   {
686     'name': 'luci-go_mac',
687     'pattern': '.',
688     'action': [ 'download_from_google_storage',
689                 '--no_resume',
690                 '--platform=darwin',
691                 '--no_auth',
692                 '--bucket', 'chromium-luci',
693                 '-d', 'src/tools/luci-go/mac64',
694     ],
695   },
696   {
697     'name': 'luci-go_linux',
698     'pattern': '.',
699     'action': [ 'download_from_google_storage',
700                 '--no_resume',
701                 '--platform=linux*',
702                 '--no_auth',
703                 '--bucket', 'chromium-luci',
704                 '-d', 'src/tools/luci-go/linux64',
705     ],
706   },
707   # Pull eu-strip binaries using checked-in hashes.
708   {
709     'name': 'eu-strip',
710     'pattern': '.',
711     'action': [ 'download_from_google_storage',
712                 '--no_resume',
713                 '--platform=linux*',
714                 '--no_auth',
715                 '--bucket', 'chromium-eu-strip',
716                 '-s', 'src/build/linux/bin/eu-strip.sha1',
717     ],
718   },
719   {
720     'name': 'drmemory',
721     'pattern': '.',
722     'action': [ 'download_from_google_storage',
723                 '--no_resume',
724                 '--platform=win32',
725                 '--no_auth',
726                 '--bucket', 'chromium-drmemory',
727                 '-s', 'src/third_party/drmemory/drmemory-windows-sfx.exe.sha1',
728               ],
729   },
730   # Pull the Syzygy binaries, used for optimization and instrumentation.
731   {
732     'name': 'syzygy-binaries',
733     'pattern': '.',
734     'action': ['python',
735                'src/build/get_syzygy_binaries.py',
736                '--output-dir=src/third_party/syzygy/binaries',
737                '--revision=8341560b55cebb58351b56bcb809bbbe22ca5398',
738                '--overwrite',
739     ],
740   },
741   {
742     'name': 'kasko',
743     'pattern': '.',
744     'action': ['python',
745                'src/build/get_syzygy_binaries.py',
746                '--output-dir=src/third_party/kasko',
747                '--revision=56f13b37f044639b4c28cb75f327ca5e3db8758e',
748                '--resource=kasko.zip',
749                '--resource=kasko_symbols.zip',
750                '--overwrite',
751     ],
752   },
753   {
754     'name': 'apache_win32',
755     'pattern': '\\.sha1',
756     'action': [ 'download_from_google_storage',
757                 '--no_resume',
758                 '--platform=win32',
759                 '--directory',
760                 '--recursive',
761                 '--no_auth',
762                 '--num_threads=16',
763                 '--bucket', 'chromium-apache-win32',
764                 'src/third_party/apache-win32',
765     ],
766   },
767   {
768     # Pull sanitizer-instrumented third-party libraries if requested via
769     # GYP_DEFINES.
770     'name': 'instrumented_libraries',
771     'pattern': '\\.sha1',
772     'action': ['python', 'src/third_party/instrumented_libraries/scripts/download_binaries.py'],
773   },
774   {
775     # Ensure that while generating dependencies lists in .gyp files we don't
776     # accidentally reference any .pyc files whose corresponding .py files have
777     # already been deleted.
778     # We should actually try to avoid generating .pyc files, crbug.com/500078.
779     'name': 'remove_stale_pyc_files',
780     'pattern': '.',
781     'action': [
782         'python',
783         'src/tools/remove_stale_pyc_files.py',
784         'src/android_webview/tools',
785         'src/gpu/gles2_conform_support',
786         'src/infra',
787         'src/ppapi',
788         'src/printing',
789         'src/third_party/closure_compiler/build',
790         'src/tools',
791     ],
792   },
793   {
794     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
795     'name': 'gyp',
796     'pattern': '.',
797     'action': ['python', 'src/build/gyp_chromium'],
798   },
799   {
800     # Verify committers' ~/.netc, gclient and git are properly configured for
801     # write access to the git repo. To be removed sometime after Chrome to git
802     # migration completes (let's say Sep 1 2014).
803     'name': 'check_git_config',
804     'pattern': '.',
805     'action': [
806         'python',
807         'src/tools/check_git_config.py',
808         '--running-as-hook',
809     ],
810   },