[refactor] More post-NSS WebCrypto cleanups (utility functions).
[chromium-blink-merge.git] / DEPS
blob6e3f028a6294998d013ae5b91cf92287bf40e4f6
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   'webkit_revision': '06cb9e9812e943177bae80abff9b6333cd95bfdd', # from svn revision 202558
35   'chromium_git': 'https://chromium.googlesource.com',
36   'libvpx_revision': '0d6551cd1e1359423a7f4af503472d280437e9bb',
37   'sfntly_revision': '1bdaae8fc788a5ac8936d68bf24f37d977a13dac',
38   'skia_revision': '2440fcd9413cf6c235352eb540404e98e573219d',
39   # Three lines of non-changing comments so that
40   # the commit queue can handle CLs rolling V8
41   # and whatever else without interference from each other.
42   'v8_revision': 'a3a266a8135e31261e8f41c470445b4e2a51b2dd',
43   # Three lines of non-changing comments so that
44   # the commit queue can handle CLs rolling swarming_client
45   # and whatever else without interference from each other.
46   'swarming_revision': 'f71d1a3fbe207d91bb2f0bd96c8821ff90bb7c28',
47   # Three lines of non-changing comments so that
48   # the commit queue can handle CLs rolling ANGLE
49   # and whatever else without interference from each other.
50   'angle_revision': 'c5b2ba53591c98d5f1c539dc8fcab6f76cc6318e',
51   # Three lines of non-changing comments so that
52   # the commit queue can handle CLs rolling build tools
53   # and whatever else without interference from each other.
54   'buildtools_revision': 'f7310ee61725e68b1c8921e381830362cf4f0999',
55   # Three lines of non-changing comments so that
56   # the commit queue can handle CLs rolling PDFium
57   # and whatever else without interference from each other.
58   'pdfium_revision': '6f34355e9d091fd4e031e9354fdfa778000b0d4a',
59   # Three lines of non-changing comments so that
60   # the commit queue can handle CLs rolling openmax_dl
61   # and whatever else without interference from each other.
62   'openmax_dl_revision': '2eb98d819bed3082071a09268b886bc4496c6fb5',
63   # Three lines of non-changing comments so that
64   # the commit queue can handle CLs rolling BoringSSL
65   # and whatever else without interference from each other.
66   'boringssl_revision': '231cb8214511ea5784dd94a59f3e5f5fb7d39f8e',
67   # Three lines of non-changing comments so that
68   # the commit queue can handle CLs rolling nss
69   # and whatever else without interference from each other.
70   'nss_revision': 'aab0d08a298b29407397fbb1c4219f99e99431ed', # from svn revision 295435
71   # Three lines of non-changing comments so that
72   # the commit queue can handle CLs rolling google-toolbox-for-mac
73   # and whatever else without interference from each other.
74   'google_toolbox_for_mac_revision': 'ce47a231ea0b238fbe95538e86cc61d74c234be6', # from svn revision 705
75   # Three lines of non-changing comments so that
76   # the commit queue can handle CLs rolling lighttpd
77   # and whatever else without interference from each other.
78   'lighttpd_revision': '9dfa55d15937a688a92cbf2b7a8621b0927d06eb',
79   # Three lines of non-changing comments so that
80   # the commit queue can handle CLs rolling lss
81   # and whatever else without interference from each other.
82   'lss_revision': '4fc942258fe5509549333b9487ec018e3c8c5b10',
83   # Three lines of non-changing comments so that
84   # the commit queue can handle CLs rolling NaCl
85   # and whatever else without interference from each other.
86   'nacl_revision': '719fce7fa0c1f11cf05d5c20cdfa6648e8a35611',
87   # Three lines of non-changing comments so that
88   # the commit queue can handle CLs rolling dEQP
89   # and whatever else without interference from each other.
90   'deqp_revision': '194294e69d44eac48bc1fb063bd607189650aa5e',
91   'deqp_url': 'https://android.googlesource.com/platform/external/deqp',
94 # Only these hosts are allowed for dependencies in this DEPS file.
95 # If you need to add a new host, contact chrome infrastracture team.
96 allowed_hosts = [
97   'chromium.googlesource.com',
98   'boringssl.googlesource.com',
99   'pdfium.googlesource.com',
100   'android.googlesource.com',
103 deps = {
104   'src/breakpad/src':
105    Var('chromium_git') + '/breakpad/breakpad/src.git' + '@' + '027db3c04fbea96f3efa8e1f722ffff11b19a085',
107   'src/buildtools':
108    Var('chromium_git') + '/chromium/buildtools.git' + '@' +  Var('buildtools_revision'),
110   'src/sdch/open-vcdiff':
111    Var('chromium_git') + '/external/github.com/google/open-vcdiff.git' + '@' + '21d7d0b9c3d0c3ccbdb221c85ae889373f0a2a58',
113   'src/testing/gtest':
114    Var('chromium_git') + '/external/googletest.git' + '@' + '9855a87157778d39b95eccfb201a9dc90f6d61c6', # from svn revision 746
116   'src/testing/gmock':
117    Var('chromium_git') + '/external/googlemock.git' + '@' + '0421b6f358139f02e102c9c332ce19a33faf75be', # from svn revision 566
119   'src/third_party/angle':
120    Var('chromium_git') + '/angle/angle.git' + '@' +  Var('angle_revision'),
122   'src/third_party/colorama/src':
123    Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
125   'src/third_party/crashpad/crashpad':
126    Var('chromium_git') + '/crashpad/crashpad.git' + '@' + '595803e1be18aa789ba561aa06db73cfc3c2e7a2',
128   'src/third_party/WebKit':
129    Var('chromium_git') + '/chromium/blink.git' + '@' +  Var('webkit_revision'),
131   'src/third_party/icu':
132    Var('chromium_git') + '/chromium/deps/icu.git' + '@' + '6b3ce817f8e828c3b7a577d2395f0882eb56ef18',
134   'src/third_party/libexif/sources':
135    Var('chromium_git') + '/chromium/deps/libexif/sources.git' + '@' + 'ed98343daabd7b4497f97fda972e132e6877c48a',
137   'src/third_party/hunspell_dictionaries':
138    Var('chromium_git') + '/chromium/deps/hunspell_dictionaries.git' + '@' + 'c106afdcec5d3de2622e19f1b3294c47bbd8bd72',
140   'src/third_party/safe_browsing/testing':
141     Var('chromium_git') + '/external/google-safe-browsing/testing.git' + '@' + '9d7e8064f3ca2e45891470c9b5b1dce54af6a9d6',
143   'src/third_party/leveldatabase/src':
144     Var('chromium_git') + '/external/leveldb.git' + '@' + '40c17c0b84ac0b791fb434096fd5c05f3819ad55',
146   'src/third_party/snappy/src':
147     Var('chromium_git') + '/external/snappy.git' + '@' + '762bb32f0c9d2f31ba4958c7c0933d22e80c20bf',
149   'src/tools/grit':
150     Var('chromium_git') + '/external/grit-i18n.git' + '@' + '15d48e32cc9f346245c823ce48c54209d02ea983', # from svn revision 196
152   'src/tools/gyp':
153     Var('chromium_git') + '/external/gyp.git' + '@' + 'cf3170e30578d600b8ec8cd68553cc5e606d42eb',
155   'src/tools/swarming_client':
156    Var('chromium_git') + '/external/swarming.client.git' + '@' +  Var('swarming_revision'),
158   'src/v8':
159     Var('chromium_git') + '/v8/v8.git' + '@' +  Var('v8_revision'),
161   'src/native_client':
162    Var('chromium_git') + '/native_client/src/native_client.git' + '@' + Var('nacl_revision'),
164   'src/third_party/sfntly/cpp/src':
165     Var('chromium_git') + '/external/sfntly/cpp/src.git' + '@' +  Var('sfntly_revision'),
167   'src/third_party/skia':
168    Var('chromium_git') + '/skia.git' + '@' +  Var('skia_revision'),
170   'src/tools/page_cycler/acid3':
171    Var('chromium_git') + '/chromium/deps/acid3.git' + '@' + '6be0a66a1ebd7ebc5abc1b2f405a945f6d871521',
173   'src/chrome/test/data/perf/canvas_bench':
174    Var('chromium_git') + '/chromium/canvas_bench.git' + '@' + 'a7b40ea5ae0239517d78845a5fc9b12976bfc732',
176   'src/chrome/test/data/perf/frame_rate/content':
177    Var('chromium_git') + '/chromium/frame_rate/content.git' + '@' + 'c10272c88463efeef6bb19c9ec07c42bc8fe22b9',
179   'src/third_party/bidichecker':
180     Var('chromium_git') + '/external/bidichecker/lib.git' + '@' + '97f2aa645b74c28c57eca56992235c79850fa9e0',
182   'src/third_party/webgl/src':
183    Var('chromium_git') + '/external/khronosgroup/webgl.git' + '@' + 'a62453dbe975574d6b0550d3ef87a7e279ae86a1',
185   'src/third_party/webdriver/pylib':
186     Var('chromium_git') + '/external/selenium/py.git' + '@' + '5fd78261a75fe08d27ca4835fb6c5ce4b42275bd',
188   'src/third_party/libvpx':
189    Var('chromium_git') + '/chromium/deps/libvpx.git' + '@' +  Var('libvpx_revision'),
191   'src/third_party/libvpx_new/source/libvpx':
192    Var('chromium_git') + '/webm/libvpx.git' + '@' +  'c5f11912ae328a912ef087fdcd074ff07e96d8f9',
194   'src/third_party/ffmpeg':
195    Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '67cde45fbfa5145bd7ebfe0fb811ae7a80902d43',
197   'src/third_party/libjingle/source/talk':
198     Var('chromium_git') + '/external/webrtc/trunk/talk.git' + '@' + '15e5120c8fa279eaaf113a638288a002172b6abb', # commit position 9991
200   'src/third_party/usrsctp/usrsctplib':
201     Var('chromium_git') + '/external/usrsctplib.git' + '@' + '36444a999739e9e408f8f587cb4c3ffeef2e50ac', # from svn revision 9215
203   'src/third_party/libsrtp':
204    Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + '502e81a238a864cfce774d4de3893810629bf227', # from svn revision 295151
206   'src/third_party/yasm/source/patched-yasm':
207    Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + '4671120cd8558ce62ee8672ebf3eb6f5216f909b',
209   'src/third_party/libjpeg_turbo':
210    Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + 'e4e75037f29745f1546b6ebf5cf532e841c04c2c',
212   'src/third_party/flac':
213    Var('chromium_git') + '/chromium/deps/flac.git' + '@' + '2c4b86af352b23498315c016dc207e3fb2733fc0',
215   'src/third_party/pyftpdlib/src':
216     Var('chromium_git') + '/external/pyftpdlib.git' + '@' + '2be6d65e31c7ee6320d059f581f05ae8d89d7e45',
218   'src/third_party/scons-2.0.1':
219    Var('chromium_git') + '/native_client/src/third_party/scons-2.0.1.git' + '@' + '1c1550e17fc26355d08627fbdec13d8291227067',
221   'src/third_party/webrtc':
222     Var('chromium_git') + '/external/webrtc/trunk/webrtc.git' + '@' + '18a924e2f2c783dd18c1f8a47d8be7a4dbc7eae4', # commit position 9992
224   'src/third_party/openmax_dl':
225     Var('chromium_git') + '/external/webrtc/deps/third_party/openmax.git' + '@' +  Var('openmax_dl_revision'),
227   'src/third_party/jsoncpp/source':
228     Var('chromium_git') + '/external/github.com/open-source-parsers/jsoncpp.git' + '@' + 'f572e8e42e22cfcf5ab0aea26574f408943edfa4', # from svn 248
230   'src/third_party/libyuv':
231     Var('chromium_git') + '/libyuv/libyuv.git' + '@' + 'fcacbfb27f4cdc71a4b8f636a16235f6b9af465c', # from version 1483
233   'src/third_party/smhasher/src':
234     Var('chromium_git') + '/external/smhasher.git' + '@' + 'e87738e57558e0ec472b2fc3a643b838e5b6e88f',
236   'src/third_party/libaddressinput/src':
237     Var('chromium_git') + '/external/libaddressinput.git' + '@' + '5eeeb797e79fa01503fcdcbebdc50036fac023ef',
239   # These are all at libphonenumber r728.
240   'src/third_party/libphonenumber/src/phonenumbers':
241     Var('chromium_git') + '/external/libphonenumber/cpp/src/phonenumbers.git' + '@' + '0d6e3e50e17c94262ad1ca3b7d52b11223084bca',
242   'src/third_party/libphonenumber/src/test':
243     Var('chromium_git') + '/external/libphonenumber/cpp/test.git' + '@' + 'f351a7e007f9c9995494499120bbc361ca808a16',
244   'src/third_party/libphonenumber/src/resources':
245     Var('chromium_git') + '/external/libphonenumber/resources.git' + '@' + 'b6dfdc7952571ff7ee72643cd88c988cbe966396',
247   'src/tools/deps2git':
248    Var('chromium_git') + '/chromium/tools/deps2git.git' + '@' + 'f04828eb0b5acd3e7ad983c024870f17f17b06d9',
250   'src/third_party/webpagereplay':
251    Var('chromium_git') + '/external/github.com/chromium/web-page-replay.git' + '@' + '7564939bdf6482d57b9bd5e9c931679f96d8cf75',
253   'src/third_party/pywebsocket/src':
254     Var('chromium_git') + '/external/github.com/google/pywebsocket.git' + '@' + '09d842794c14ca064f8a4223b313ac2c84bd33c8',
256   'src/third_party/opus/src':
257    Var('chromium_git') + '/chromium/deps/opus.git' + '@' + 'cae696156f1e60006e39821e79a1811ae1933c69',
259   'src/media/cdm/ppapi/api':
260    Var('chromium_git') + '/chromium/cdm.git' + '@' + '7377023e384f296cbb27644eb2c485275f1f92e8', # from svn revision 294518
262   'src/third_party/mesa/src':
263    Var('chromium_git') + '/chromium/deps/mesa.git' + '@' + '3918dbd3bced7843af396a0ee9f9da081d968806',
265   'src/third_party/cld_2/src':
266     Var('chromium_git') + '/external/github.com/CLD2Owners/cld2.git' + '@' + '84b58a5d7690ebf05a91406f371ce00c3daf31c0',
268   'src/third_party/libwebm/source':
269    Var('chromium_git') + '/webm/libwebm.git' + '@' + '75a6d2da8b63e0c446ec0ce1ac942c2962d959d7',
271   'src/third_party/pdfium':
272    'https://pdfium.googlesource.com/pdfium.git' + '@' +  Var('pdfium_revision'),
274   'src/third_party/boringssl/src':
275    'https://boringssl.googlesource.com/boringssl.git' + '@' +  Var('boringssl_revision'),
277   'src/third_party/py_trace_event/src':
278     Var('chromium_git') + '/external/py_trace_event.git' + '@' + 'dd463ea9e2c430de2b9e53dea57a77b4c3ac9b30',
280   'src/third_party/dom_distiller_js/dist':
281     Var('chromium_git') + '/external/github.com/chromium/dom-distiller-dist.git' + '@' + '81e5b59da2a7a0a518b90b5ded58670322c98128',
283   'src/third_party/catapult':
284     Var('chromium_git') + '/external/github.com/catapult-project/catapult.git' + '@' +
285     'dc1a60501d508cc469c8dc94305724b153e556e2',
289 deps_os = {
290   'win': {
291     'src/chrome/tools/test/reference_build/chrome_win':
292      Var('chromium_git') + '/chromium/reference_builds/chrome_win.git' + '@' + 'f8a3a845dfc845df6b14280f04f86a61959357ef',
294     'src/third_party/cygwin':
295      Var('chromium_git') + '/chromium/deps/cygwin.git' + '@' + 'c89e446b273697fadf3a10ff1007a97c0b7de6df',
297     'src/third_party/psyco_win32':
298      Var('chromium_git') + '/chromium/deps/psyco_win32.git' + '@' + 'f5af9f6910ee5a8075bbaeed0591469f1661d868',
300     'src/third_party/bison':
301      Var('chromium_git') + '/chromium/deps/bison.git' + '@' + '083c9a45e4affdd5464ee2b224c2df649c6e26c3',
303     'src/third_party/gperf':
304      Var('chromium_git') + '/chromium/deps/gperf.git' + '@' + 'd892d79f64f9449770443fb06da49b5a1e5d33c1',
306     'src/third_party/perl':
307      Var('chromium_git') + '/chromium/deps/perl.git' + '@' + 'ac0d98b5cee6c024b0cffeb4f8f45b6fc5ccdb78',
309     'src/third_party/lighttpd':
310      Var('chromium_git') + '/chromium/deps/lighttpd.git' + '@' + Var('lighttpd_revision'),
312     # Parses Windows PE/COFF executable format.
313     'src/third_party/pefile':
314      Var('chromium_git') + '/external/pefile.git' + '@' + '72c6ae42396cb913bcab63c15585dc3b5c3f92f1',
316     # NSS, for SSLClientSocketNSS.
317     'src/third_party/nss':
318      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
320     # GNU binutils assembler for x86-32.
321     'src/third_party/gnu_binutils':
322       Var('chromium_git') + '/native_client/deps/third_party/gnu_binutils.git' + '@' + 'f4003433b61b25666565690caf3d7a7a1a4ec436',
323     # GNU binutils assembler for x86-64.
324     'src/third_party/mingw-w64/mingw/bin':
325       Var('chromium_git') + '/native_client/deps/third_party/mingw-w64/mingw/bin.git' + '@' + '3cc8b140b883a9fe4986d12cfd46c16a093d3527',
327     # Dependencies used by libjpeg-turbo
328     'src/third_party/yasm/binaries':
329      Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
331     # Binaries for nacl sdk.
332     'src/third_party/nacl_sdk_binaries':
333      Var('chromium_git') + '/chromium/deps/nacl_sdk_binaries.git' + '@' + '759dfca03bdc774da7ecbf974f6e2b84f43699a5',
335     # ANGLE uses dEQP for GPU testing
336     'src/third_party/deqp/src':
337      Var('deqp_url') + '@' + Var('deqp_revision'),
338   },
339   'ios': {
340     'src/ios/third_party/gcdwebserver/src':
341      Var('chromium_git') + '/external/github.com/swisspol/GCDWebServer.git' + '@' + '3d5fd0b8281a7224c057deb2d17709b5bea64836',
343     'src/third_party/google_toolbox_for_mac/src':
344       Var('chromium_git') + '/external/google-toolbox-for-mac.git' + '@' + Var('google_toolbox_for_mac_revision'),
346     'src/third_party/nss':
347      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
349     # class-dump utility to generate header files for undocumented SDKs
350     'src/third_party/class-dump/src':
351      Var('chromium_git') + '/external/github.com/nygard/class-dump.git' + '@' + '978d177ca6f0d2e5e34acf3e8dadc63e3140ebbc',
353     # Code that's not needed due to not building everything
354     'src/chrome/test/data/perf/canvas_bench': None,
355     'src/chrome/test/data/perf/frame_rate/content': None,
356     'src/native_client': None,
357     'src/third_party/ffmpeg': None,
358     'src/third_party/hunspell_dictionaries': None,
359     'src/third_party/webgl': None,
360   },
361   'mac': {
362     'src/chrome/tools/test/reference_build/chrome_mac':
363      Var('chromium_git') + '/chromium/reference_builds/chrome_mac.git' + '@' + '8dc181329e7c5255f83b4b85dc2f71498a237955',
365     'src/third_party/google_toolbox_for_mac/src':
366       Var('chromium_git') + '/external/google-toolbox-for-mac.git' + '@' + Var('google_toolbox_for_mac_revision'),
369     'src/third_party/pdfsqueeze':
370       Var('chromium_git') + '/external/pdfsqueeze.git' + '@' + '5936b871e6a087b7e50d4cbcb122378d8a07499f',
372     'src/third_party/lighttpd':
373      Var('chromium_git') + '/chromium/deps/lighttpd.git' + '@' + Var('lighttpd_revision'),
375     # NSS, for SSLClientSocketNSS.
376     'src/third_party/nss':
377      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
379     'src/chrome/installer/mac/third_party/xz/xz':
380      Var('chromium_git') + '/chromium/deps/xz.git' + '@' + 'eecaf55632ca72e90eb2641376bce7cdbc7284f7',
381   },
382   'unix': {
383     # Linux, really.
384     'src/chrome/tools/test/reference_build/chrome_linux':
385      Var('chromium_git') + '/chromium/reference_builds/chrome_linux64.git' + '@' + '033d053a528e820e1de3e2db766678d862a86b36',
387     'src/third_party/xdg-utils':
388      Var('chromium_git') + '/chromium/deps/xdg-utils.git' + '@' + 'd80274d5869b17b8c9067a1022e4416ee7ed5e0d',
390     'src/third_party/lss':
391       Var('chromium_git') + '/external/linux-syscall-support/lss.git' + '@' + Var('lss_revision'),
393     # For Linux and Chromium OS.
394     'src/third_party/cros_system_api':
395      Var('chromium_git') + '/chromiumos/platform/system_api.git' + '@' + '0b175578c8150c7ee0e7e4fd6d4dc7480979e248',
397     # Note that this is different from Android's freetype repo.
398     'src/third_party/freetype2/src':
399      Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + 'fc1532a7c4c592f24a4c1a0261d2845524ca5cff',
401     # Build tools for Chrome OS.
402     'src/third_party/chromite':
403      Var('chromium_git') + '/chromiumos/chromite.git' + '@' + 'e19f83ba227bf1ec0077f5d3a816a415f1dd88d0',
405     # Dependency of chromite.git.
406     'src/third_party/pyelftools':
407      Var('chromium_git') + '/chromiumos/third_party/pyelftools.git' + '@' + 'bdc1d380acd88d4bfaf47265008091483b0d614e',
409     'src/third_party/liblouis/src':
410      Var('chromium_git') + '/external/liblouis-github.git' + '@' + '5f9c03f2a3478561deb6ae4798175094be8a26c2',
412     # Used for embedded builds. CrOS & Linux use the system version.
413     'src/third_party/fontconfig/src':
414      Var('chromium_git') + '/external/fontconfig.git' + '@' + 'f16c3118e25546c1b749f9823c51827a60aeb5c1',
416     # ANGLE uses dEQP for GPU testing
417     'src/third_party/deqp/src':
418      Var('deqp_url') + '@' + Var('deqp_revision'),
420     # Graphics buffer allocator for Chrome OS.
421     'src/third_party/minigbm/src':
422      Var('chromium_git') + '/chromiumos/platform/minigbm.git' + '@' + 'f9d2ab79a15a1bb6a1307f3b608964c81c27791b',
423   },
424   'android': {
425     'src/third_party/android_protobuf/src':
426      Var('chromium_git') + '/external/android_protobuf.git' + '@' + '999188d0dc72e97f7fe08bb756958a2cf090f4e7',
428     'src/third_party/android_tools':
429      Var('chromium_git') + '/android_tools.git' + '@' + '4238a28593b7e6178c95431f91ca8c24e45fa7eb',
431     'src/third_party/apache-mime4j':
432      Var('chromium_git') + '/chromium/deps/apache-mime4j.git' + '@' + '28cb1108bff4b6cf0a2e86ff58b3d025934ebe3a',
434     'src/third_party/appurify-python/src':
435      Var('chromium_git') + '/external/github.com/appurify/appurify-python.git' + '@' + 'ee7abd5c5ae3106f72b2a0b9d2cb55094688e867',
437     'src/third_party/cardboard-java/src':
438      Var('chromium_git') + '/external/github.com/googlesamples/cardboard-java.git' + '@' + 'e36ee57e72bbd057ddb53b127954177b50e18df7',
440     'src/third_party/errorprone/lib':
441       Var('chromium_git') + '/chromium/third_party/errorprone.git' + '@' + '95f929ff6f9213bc7d078c200db3f3dc864f425f',
443     'src/third_party/findbugs':
444      Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '57f05238d3ac77ea0a194813d3065dd780c6e566',
446     'src/third_party/freetype-android/src':
447      Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + 'e186230678ee8e4ea4ac4797ece8125761e3225a',
449    'src/third_party/elfutils/src':
450      Var('chromium_git') + '/external/elfutils.git' + '@' + '249673729a7e5dbd5de4f3760bdcaa3d23d154d7',
452     'src/third_party/httpcomponents-client':
453      Var('chromium_git') + '/chromium/deps/httpcomponents-client.git' + '@' + '285c4dafc5de0e853fa845dce5773e223219601c',
455     'src/third_party/httpcomponents-core':
456      Var('chromium_git') + '/chromium/deps/httpcomponents-core.git' + '@' + '9f7180a96f8fa5cab23f793c14b413356d419e62',
458     'src/third_party/jarjar':
459      Var('chromium_git') + '/chromium/deps/jarjar.git' + '@' + '2e1ead4c68c450e0b77fe49e3f9137842b8b6920',
461     'src/third_party/jsr-305/src':
462       Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
464     'src/third_party/junit/src':
465       Var('chromium_git') + '/external/junit.git' + '@' + '45a44647e7306262162e1346b750c3209019f2e1',
467     'src/third_party/mockito/src':
468       Var('chromium_git') + '/external/mockito/mockito.git' + '@' + '4d987dcd923b81525c42b1333e6c4e07440776c3',
470     'src/third_party/robolectric/lib':
471       Var('chromium_git') + '/chromium/third_party/robolectric.git' + '@' + '6b63c99a8b6967acdb42cbed0adb067c80efc810',
473     'src/third_party/ub-uiautomator/lib':
474       Var('chromium_git') + '/chromium/third_party/ub-uiautomator.git' + '@' + '00270549ce3161ae72ceb24712618ea28b4f9434',
476     'src/third_party/lss':
477       Var('chromium_git') + '/external/linux-syscall-support/lss.git' + '@' + Var('lss_revision'),
479     'src/third_party/requests/src':
480       Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
482     'src/third_party/custom_tabs_client/src':
483       Var('chromium_git') + '/external/github.com/GoogleChrome/custom-tabs-client.git' + '@' + 'bbbf71f41e79b0cfe21199220f495cbd0a3a4ffb',
484   },
488 include_rules = [
489   # Everybody can use some things.
490   # NOTE: THIS HAS TO STAY IN SYNC WITH third_party/DEPS which disallows these.
491   '+base',
492   '+build',
493   '+ipc',
495   # Everybody can use headers generated by tools/generate_library_loader.
496   '+library_loaders',
498   '+testing',
499   '+third_party/icu/source/common/unicode',
500   '+third_party/icu/source/i18n/unicode',
501   '+url',
505 # checkdeps.py shouldn't check include paths for files in these dirs:
506 skip_child_includes = [
507   'breakpad',
508   'native_client_sdk',
509   'out',
510   'sdch',
511   'skia',
512   'testing',
513   'v8',
514   'win8',
518 hooks = [
519   {
520     # This clobbers when necessary (based on get_landmines.py). It must be the
521     # first hook so that other things that get/generate into the output
522     # directory will not subsequently be clobbered.
523     'name': 'landmines',
524     'pattern': '.',
525     'action': [
526         'python',
527         'src/build/landmines.py',
528     ],
529   },
530   {
531     # This downloads binaries for Native Client's newlib toolchain.
532     # Done in lieu of building the toolchain from scratch as it can take
533     # anywhere from 30 minutes to 4 hours depending on platform to build.
534     'name': 'nacltools',
535     'pattern': '.',
536     'action': [
537         'python',
538         'src/build/download_nacl_toolchains.py',
539         '--mode', 'nacl_core_sdk',
540         'sync', '--extract',
541     ],
542   },
543   {
544     # This downloads SDK extras and puts them in the
545     # third_party/android_tools/sdk/extras directory on the bots. Developers
546     # need to manually install these packages and accept the ToS.
547     'name': 'sdkextras',
548     'pattern': '.',
549     # When adding a new sdk extras package to download, add the package
550     # directory and zip file to .gitignore in third_party/android_tools.
551     'action': ['python', 'src/build/download_sdk_extras.py'],
552   },
553   {
554     # Downloads the current stable linux sysroot to build/linux/ if needed.
555     # This sysroot updates at about the same rate that the chrome build deps
556     # change. This script is a no-op except for linux users who are doing
557     # official chrome builds or cross compiling.
558     'name': 'sysroot',
559     'pattern': '.',
560     'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
561                '--running-as-hook'],
562   },
563   {
564     # Update the Windows toolchain if necessary.
565     'name': 'win_toolchain',
566     'pattern': '.',
567     'action': ['python', 'src/build/vs_toolchain.py', 'update'],
568   },
569   # Pull binutils for linux, enabled debug fission for faster linking /
570   # debugging when used with clang on Ubuntu Precise.
571   # https://code.google.com/p/chromium/issues/detail?id=352046
572   {
573     'name': 'binutils',
574     'pattern': 'src/third_party/binutils',
575     'action': [
576         'python',
577         'src/third_party/binutils/download.py',
578     ],
579   },
580   {
581     # Pull clang if needed or requested via GYP_DEFINES.
582     # Note: On Win, this should run after win_toolchain, as it may use it.
583     'name': 'clang',
584     'pattern': '.',
585     'action': ['python', 'src/tools/clang/scripts/update.py', '--if-needed'],
586   },
587   {
588     # Update LASTCHANGE.
589     'name': 'lastchange',
590     'pattern': '.',
591     'action': ['python', 'src/build/util/lastchange.py',
592                '-o', 'src/build/util/LASTCHANGE'],
593   },
594   {
595     # Update LASTCHANGE.blink.
596     'name': 'lastchange',
597     'pattern': '.',
598     'action': ['python', 'src/build/util/lastchange.py',
599                '-s', 'src/third_party/WebKit',
600                '-o', 'src/build/util/LASTCHANGE.blink'],
601   },
602   {
603     # Update CANARY_VERSION.
604     'name': 'ios_canary_version',
605     'pattern': '.',
606     'action': ['python', 'src/ios/build/util/canary_version.py',
607                '-o', 'src/ios/build/util/CANARY_VERSION'],
608   },
609   # Pull GN binaries. This needs to be before running GYP below.
610   {
611     'name': 'gn_win',
612     'pattern': '.',
613     'action': [ 'download_from_google_storage',
614                 '--no_resume',
615                 '--platform=win32',
616                 '--no_auth',
617                 '--bucket', 'chromium-gn',
618                 '-s', 'src/buildtools/win/gn.exe.sha1',
619     ],
620   },
621   {
622     'name': 'gn_mac',
623     'pattern': '.',
624     'action': [ 'download_from_google_storage',
625                 '--no_resume',
626                 '--platform=darwin',
627                 '--no_auth',
628                 '--bucket', 'chromium-gn',
629                 '-s', 'src/buildtools/mac/gn.sha1',
630     ],
631   },
632   {
633     'name': 'gn_linux64',
634     'pattern': '.',
635     'action': [ 'download_from_google_storage',
636                 '--no_resume',
637                 '--platform=linux*',
638                 '--no_auth',
639                 '--bucket', 'chromium-gn',
640                 '-s', 'src/buildtools/linux64/gn.sha1',
641     ],
642   },
643   # Pull clang-format binaries using checked-in hashes.
644   {
645     'name': 'clang_format_win',
646     'pattern': '.',
647     'action': [ 'download_from_google_storage',
648                 '--no_resume',
649                 '--platform=win32',
650                 '--no_auth',
651                 '--bucket', 'chromium-clang-format',
652                 '-s', 'src/buildtools/win/clang-format.exe.sha1',
653     ],
654   },
655   {
656     'name': 'clang_format_mac',
657     'pattern': '.',
658     'action': [ 'download_from_google_storage',
659                 '--no_resume',
660                 '--platform=darwin',
661                 '--no_auth',
662                 '--bucket', 'chromium-clang-format',
663                 '-s', 'src/buildtools/mac/clang-format.sha1',
664     ],
665   },
666   {
667     'name': 'clang_format_linux',
668     'pattern': '.',
669     'action': [ 'download_from_google_storage',
670                 '--no_resume',
671                 '--platform=linux*',
672                 '--no_auth',
673                 '--bucket', 'chromium-clang-format',
674                 '-s', 'src/buildtools/linux64/clang-format.sha1',
675     ],
676   },
677   # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
678   {
679     'name': 'luci-go_win',
680     'pattern': '.',
681     'action': [ 'download_from_google_storage',
682                 '--no_resume',
683                 '--platform=win32',
684                 '--no_auth',
685                 '--bucket', 'chromium-luci',
686                 '-d', 'src/tools/luci-go/win64',
687     ],
688   },
689   {
690     'name': 'luci-go_mac',
691     'pattern': '.',
692     'action': [ 'download_from_google_storage',
693                 '--no_resume',
694                 '--platform=darwin',
695                 '--no_auth',
696                 '--bucket', 'chromium-luci',
697                 '-d', 'src/tools/luci-go/mac64',
698     ],
699   },
700   {
701     'name': 'luci-go_linux',
702     'pattern': '.',
703     'action': [ 'download_from_google_storage',
704                 '--no_resume',
705                 '--platform=linux*',
706                 '--no_auth',
707                 '--bucket', 'chromium-luci',
708                 '-d', 'src/tools/luci-go/linux64',
709     ],
710   },
711   # Pull eu-strip binaries using checked-in hashes.
712   {
713     'name': 'eu-strip',
714     'pattern': '.',
715     'action': [ 'download_from_google_storage',
716                 '--no_resume',
717                 '--platform=linux*',
718                 '--no_auth',
719                 '--bucket', 'chromium-eu-strip',
720                 '-s', 'src/build/linux/bin/eu-strip.sha1',
721     ],
722   },
723   {
724     'name': 'drmemory',
725     'pattern': '.',
726     'action': [ 'download_from_google_storage',
727                 '--no_resume',
728                 '--platform=win32',
729                 '--no_auth',
730                 '--bucket', 'chromium-drmemory',
731                 '-s', 'src/third_party/drmemory/drmemory-windows-sfx.exe.sha1',
732               ],
733   },
734   # Pull the Syzygy binaries, used for optimization and instrumentation.
735   {
736     'name': 'syzygy-binaries',
737     'pattern': '.',
738     'action': ['python',
739                'src/build/get_syzygy_binaries.py',
740                '--output-dir=src/third_party/syzygy/binaries',
741                '--revision=8341560b55cebb58351b56bcb809bbbe22ca5398',
742                '--overwrite',
743     ],
744   },
745   {
746     'name': 'kasko',
747     'pattern': '.',
748     'action': ['python',
749                'src/build/get_syzygy_binaries.py',
750                '--output-dir=src/third_party/kasko',
751                '--revision=56f13b37f044639b4c28cb75f327ca5e3db8758e',
752                '--resource=kasko.zip',
753                '--resource=kasko_symbols.zip',
754                '--overwrite',
755     ],
756   },
757   {
758     'name': 'apache_win32',
759     'pattern': '\\.sha1',
760     'action': [ 'download_from_google_storage',
761                 '--no_resume',
762                 '--platform=win32',
763                 '--directory',
764                 '--recursive',
765                 '--no_auth',
766                 '--num_threads=16',
767                 '--bucket', 'chromium-apache-win32',
768                 'src/third_party/apache-win32',
769     ],
770   },
771   {
772     # Pull sanitizer-instrumented third-party libraries if requested via
773     # GYP_DEFINES.
774     'name': 'instrumented_libraries',
775     'pattern': '\\.sha1',
776     'action': ['python', 'src/third_party/instrumented_libraries/scripts/download_binaries.py'],
777   },
778   {
779     # Ensure that while generating dependencies lists in .gyp files we don't
780     # accidentally reference any .pyc files whose corresponding .py files have
781     # already been deleted.
782     # We should actually try to avoid generating .pyc files, crbug.com/500078.
783     'name': 'remove_stale_pyc_files',
784     'pattern': '.',
785     'action': [
786         'python',
787         'src/tools/remove_stale_pyc_files.py',
788         'src/android_webview/tools',
789         'src/gpu/gles2_conform_support',
790         'src/infra',
791         'src/ppapi',
792         'src/printing',
793         'src/third_party/closure_compiler/build',
794         'src/tools',
795     ],
796   },
797   {
798     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
799     'name': 'gyp',
800     'pattern': '.',
801     'action': ['python', 'src/build/gyp_chromium'],
802   },
803   {
804     # Verify committers' ~/.netc, gclient and git are properly configured for
805     # write access to the git repo. To be removed sometime after Chrome to git
806     # migration completes (let's say Sep 1 2014).
807     'name': 'check_git_config',
808     'pattern': '.',
809     'action': [
810         'python',
811         'src/tools/check_git_config.py',
812         '--running-as-hook',
813     ],
814   },