Use a less compiler-specific way for preventing inlining / tail-call optimization.
[chromium-blink-merge.git] / DEPS
blob00febb8835d813426a57e82f71499f3be48882c2
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 the
21 #  # desired SVN revision number (e.g., third_party/foo/bar and a revision such
22 #  # number from Subversion)
23 #  roll-dep third_party/foo/bar REVISION_NUMBER
24 #  # You should now have a modified DEPS file; commit and upload as normal
25 #  git commit -a
26 #  git cl upload
29 vars = {
30   # Use this googlecode_url variable only if there is an internal mirror for it.
31   # If you do not know, use the full path while defining your new deps entry.
32   'googlecode_url': 'http://%s.googlecode.com/svn',
33   'sourceforge_url': 'http://svn.code.sf.net/p/%(repo)s/code',
34   'llvm_url': 'http://src.chromium.org/llvm-project',
35   'llvm_git': 'https://llvm.googlesource.com',
36   'webkit_trunk': 'http://src.chromium.org/blink/trunk',
37   'webkit_revision': '315737e67e775f741f5deb7e1a9c6e0ba629c57d', # from svn revision 192381
38   'chromium_git': 'https://chromium.googlesource.com',
39   'chromiumos_git': 'https://chromium.googlesource.com/chromiumos',
40   'pdfium_git': 'https://pdfium.googlesource.com',
41   'skia_git': 'https://skia.googlesource.com',
42   'boringssl_git': 'https://boringssl.googlesource.com',
43   'libvpx_revision': '00cf1b1656d1669e1874fa8c70c493e2c3accad5',
44   'sfntly_revision': '1bdaae8fc788a5ac8936d68bf24f37d977a13dac',
45   'skia_revision': '92d04da38f03dfabd8cd9a7244588a49be9a2f41',
46   # Three lines of non-changing comments so that
47   # the commit queue can handle CLs rolling Skia
48   # and V8 without interference from each other.
49   'v8_branch': 'trunk',
50   'v8_revision': '230d131d173ab2d60291d303177bc04ec3f6e519',
51   # Three lines of non-changing comments so that
52   # the commit queue can handle CLs rolling WebRTC
53   # and V8 without interference from each other.
54   # Three lines of non-changing comments so that
55   # the commit queue can handle CLs rolling swarming_client
56   # and whatever else without interference from each other.
57   'swarming_revision': 'b61a1802f5ef4bb8c7b81060cc80add47e6cf302',
58   # Three lines of non-changing comments so that
59   # the commit queue can handle CLs rolling ANGLE
60   # and whatever else without interference from each other.
61   'angle_revision': 'bdd419f9f5b006e913606e7363125942c8ae06bc',
62   # Three lines of non-changing comments so that
63   # the commit queue can handle CLs rolling build tools
64   # and whatever else without interference from each other.
65   'buildtools_revision': '3b302fef93f7cc58d9b8168466905237484b2772',
66   # Three lines of non-changing comments so that
67   # the commit queue can handle CLs rolling PDFium
68   # and whatever else without interference from each other.
69   'pdfium_revision': 'b0115665b0f33971f1b7077740d51e155583cec0',
70   # Three lines of non-changing comments so that
71   # the commit queue can handle CLs rolling openmax_dl
72   # and whatever else without interference from each other.
73   'openmax_dl_revision': '0b238cb62c32b6f45680cf577eddb1b051ae0219',
74   # Three lines of non-changing comments so that
75   # the commit queue can handle CLs rolling BoringSSL
76   # and whatever else without interference from each other.
77   'boringssl_revision': '642f1498d056dbba3e50ed5a232ab2f482626dec',
78   # Three lines of non-changing comments so that
79   # the commit queue can handle CLs rolling nss
80   # and whatever else without interference from each other.
81   'nss_revision': 'bb4e75a43d007518ae7d618665ea2f25b0c60b63',
82   # Three lines of non-changing comments so that
83   # the commit queue can handle CLs rolling google-toolbox-for-mac
84   # and whatever else without interference from each other.
85   'google_toolbox_for_mac_revision': '17eee6933bb4a978bf045ef1b12fc68f15b08cd2', # from svn revision 703
86   # Three lines of non-changing comments so that
87   # the commit queue can handle CLs rolling lighttpd
88   # and whatever else without interference from each other.
89   'lighttpd_revision': '9dfa55d15937a688a92cbf2b7a8621b0927d06eb',
90   # Three lines of non-changing comments so that
91   # the commit queue can handle CLs rolling lss
92   # and whatever else without interference from each other.
93   'lss_revision': 'e079768b7e3a94dcbe7d338496c0c3bde7151b6e',
94   # Three lines of non-changing comments so that
95   # the commit queue can handle CLs rolling NaCl
96   # and whatever else without interference from each other.
97   'nacl_revision': 'cc3597c9c13978079ef85a31d78dc4bf7f18000c',
100 # Only these hosts are allowed for dependencies in this DEPS file.
101 # If you need to add a new host, contact chrome infrastracture team.
102 allowed_hosts = [
103   'chromium.googlesource.com',
104   'boringssl.googlesource.com',
105   'pdfium.googlesource.com',
108 deps = {
109   'src/breakpad/src':
110    Var('chromium_git') + '/external/google-breakpad/src.git' + '@' + '2c37c225e729d6ada72d5ffd808406db9c916985', # from svn revision 1434
112   'src/buildtools':
113    Var('chromium_git') + '/chromium/buildtools.git' + '@' +  Var('buildtools_revision'),
115   'src/sdch/open-vcdiff':
116    Var('chromium_git') + '/external/open-vcdiff.git' + '@' + '438f2a5be6d809bc21611a94cd37bfc8c28ceb33', # from svn revision 41
118   'src/testing/gtest':
119    Var('chromium_git') + '/external/googletest.git' + '@' + 'be1868139ffe0ccd0e8e3b37292b84c821d9c8ad', # from svn revision 704
121   'src/testing/gmock':
122    Var('chromium_git') + '/external/googlemock.git' + '@' + '29763965ab52f24565299976b936d1265cb6a271', # from svn revision 501
124   'src/third_party/angle':
125    Var('chromium_git') + '/angle/angle.git' + '@' +  Var('angle_revision'),
127   'src/third_party/colorama/src':
128    Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
130   'src/third_party/crashpad/crashpad':
131    Var('chromium_git') + '/crashpad/crashpad.git' + '@' + '5d0a133ecd6625f30c6491d502f12f26a0bef32d',
133   'src/third_party/trace-viewer':
134    Var('chromium_git') + '/external/trace-viewer.git' + '@' + 'ff20313e37892c3c7f20c88bb22ab6f6e65659ae',
136   'src/third_party/WebKit':
137    Var('chromium_git') + '/chromium/blink.git' + '@' +  Var('webkit_revision'),
139   'src/third_party/icu':
140    Var('chromium_git') + '/chromium/deps/icu.git' + '@' + '7c81740601355556e630da515b74d889ba2f8d08',
142   'src/third_party/libexif/sources':
143    Var('chromium_git') + '/chromium/deps/libexif/sources.git' + '@' + 'ed98343daabd7b4497f97fda972e132e6877c48a',
145   'src/third_party/hunspell':
146    Var('chromium_git') + '/chromium/deps/hunspell.git' + '@' + 'c956c0e97af00ef789afb2f64d02c9a5a50e6eb1',
148   'src/third_party/hunspell_dictionaries':
149    Var('chromium_git') + '/chromium/deps/hunspell_dictionaries.git' + '@' + '80796932b89ab36431399d76c5b8391ea471e30a', # from svn revision 294404
151   'src/third_party/safe_browsing/testing':
152     Var('chromium_git') + '/external/google-safe-browsing/testing.git' + '@' + '9d7e8064f3ca2e45891470c9b5b1dce54af6a9d6',
154   'src/third_party/cacheinvalidation/src':
155     Var('chromium_git') + '/external/google-cache-invalidation-api/src.git' + '@' + 'c91bd9d9fed06bf440be64f87b94a2effdb32bc4', # from svn revision 341
157   'src/third_party/leveldatabase/src':
158     Var('chromium_git') + '/external/leveldb.git' + '@' + '251ebf5dc70129ad3c38193fe6c99a5b0ec6b9fa',
160   'src/third_party/snappy/src':
161     Var('chromium_git') + '/external/snappy.git' + '@' + '762bb32f0c9d2f31ba4958c7c0933d22e80c20bf',
163   'src/tools/grit':
164     Var('chromium_git') + '/external/grit-i18n.git' + '@' + '0287c187b11ed53590254e4d817e836a44a7a1a7', # from svn revision 186
166   'src/tools/gyp':
167     Var('chromium_git') + '/external/gyp.git' + '@' + 'd174d75bf69c682cb62af9187879e01513b35e52',
169   'src/tools/swarming_client':
170    Var('chromium_git') + '/external/swarming.client.git' + '@' +  Var('swarming_revision'),
172   'src/v8':
173     Var('chromium_git') + '/v8/v8.git' + '@' +  Var('v8_revision'),
175   'src/native_client':
176    Var('chromium_git') + '/native_client/src/native_client.git' + '@' + Var('nacl_revision'),
178   'src/third_party/sfntly/cpp/src':
179     Var('chromium_git') + '/external/sfntly/cpp/src.git' + '@' +  Var('sfntly_revision'),
181   'src/third_party/skia':
182    Var('chromium_git') + '/skia.git' + '@' +  Var('skia_revision'),
184   'src/tools/page_cycler/acid3':
185    Var('chromium_git') + '/chromium/deps/acid3.git' + '@' + '6be0a66a1ebd7ebc5abc1b2f405a945f6d871521',
187   'src/chrome/test/data/perf/canvas_bench':
188    Var('chromium_git') + '/chromium/canvas_bench.git' + '@' + 'a7b40ea5ae0239517d78845a5fc9b12976bfc732',
190   'src/chrome/test/data/perf/frame_rate/content':
191    Var('chromium_git') + '/chromium/frame_rate/content.git' + '@' + 'c10272c88463efeef6bb19c9ec07c42bc8fe22b9',
193   'src/third_party/bidichecker':
194     Var('chromium_git') + '/external/bidichecker/lib.git' + '@' + '97f2aa645b74c28c57eca56992235c79850fa9e0',
196   'src/third_party/webgl/src':
197    Var('chromium_git') + '/external/khronosgroup/webgl.git' + '@' + '0c2bcf36a740181f50ce94a0eaad357219441dee',
199   'src/third_party/swig/Lib':
200    Var('chromium_git') + '/chromium/deps/swig/Lib.git' + '@' + 'f2a695d52e61e6a8d967731434f165ed400f0d69',
202   'src/third_party/webdriver/pylib':
203     Var('chromium_git') + '/external/selenium/py.git' + '@' + '5fd78261a75fe08d27ca4835fb6c5ce4b42275bd',
205   'src/third_party/libvpx':
206    Var('chromium_git') + '/chromium/deps/libvpx.git' + '@' +  Var('libvpx_revision'),
208   'src/third_party/ffmpeg':
209    Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + 'b3dc5aa44575049edf6b24e34578487dfaade6a4',
211   'src/third_party/libjingle/source/talk':
212     Var('chromium_git') + '/external/webrtc/trunk/talk.git' + '@' + 'fed547e9df46fb9a5b5a62db7edf131225e09e36', # commit position 8836
214   'src/third_party/usrsctp/usrsctplib':
215     Var('chromium_git') + '/external/usrsctplib.git' + '@' + '13718c7b9fd376fde092cbd3c5347d15059ac652', # from svn revision 9167
217   'src/third_party/libsrtp':
218    Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + '6446144c7f083552f21cc4e6768e891bcb767574',
220   'src/third_party/yasm/source/patched-yasm':
221    Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + '4671120cd8558ce62ee8672ebf3eb6f5216f909b',
223   'src/third_party/libjpeg_turbo':
224    Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + '034e9a9747e0983bc19808ea70e469bc8342081f',
226   'src/third_party/flac':
227    Var('chromium_git') + '/chromium/deps/flac.git' + '@' + '0635a091379d9677f1ddde5f2eec85d0f096f219',
229   'src/third_party/pyftpdlib/src':
230     Var('chromium_git') + '/external/pyftpdlib.git' + '@' + '2be6d65e31c7ee6320d059f581f05ae8d89d7e45',
232   'src/third_party/scons-2.0.1':
233    Var('chromium_git') + '/native_client/src/third_party/scons-2.0.1.git' + '@' + '1c1550e17fc26355d08627fbdec13d8291227067',
235   'src/third_party/webrtc':
236     Var('chromium_git') + '/external/webrtc/trunk/webrtc.git' + '@' + '2112dbbe491a5dbf28ed33978530e7fcaedb4a04', # commit position 8837
238   'src/third_party/openmax_dl':
239     Var('chromium_git') + '/external/webrtc/deps/third_party/openmax.git' + '@' +  Var('openmax_dl_revision'),
241   'src/third_party/jsoncpp/source/include':
242     Var('chromium_git') + '/external/jsoncpp/jsoncpp/include.git' + '@' + 'b0dd48e02b6e6248328db78a65b5c601f150c349',
244   'src/third_party/jsoncpp/source/src/lib_json':
245     Var('chromium_git') + '/external/jsoncpp/jsoncpp/src/lib_json.git' + '@' + 'a8caa51ba2f80971a45880425bf2ae864a786784',
247   'src/third_party/libyuv':
248     Var('chromium_git') + '/external/libyuv.git' + '@' + 'd204db647e591ccf0e2589236ecea90330d65a66', # from svn revision 1171
250   'src/third_party/smhasher/src':
251     Var('chromium_git') + '/external/smhasher.git' + '@' + 'e87738e57558e0ec472b2fc3a643b838e5b6e88f',
253   'src/third_party/libaddressinput/src':
254     Var('chromium_git') + '/external/libaddressinput.git' + '@' + '61f63da7ae6fa469138d60dec5d6bbecc6ab43d6',
256   # These are all at libphonenumber r728.
257   'src/third_party/libphonenumber/src/phonenumbers':
258     Var('chromium_git') + '/external/libphonenumber/cpp/src/phonenumbers.git' + '@' + '0d6e3e50e17c94262ad1ca3b7d52b11223084bca',
259   'src/third_party/libphonenumber/src/test':
260     Var('chromium_git') + '/external/libphonenumber/cpp/test.git' + '@' + 'f351a7e007f9c9995494499120bbc361ca808a16',
261   'src/third_party/libphonenumber/src/resources':
262     Var('chromium_git') + '/external/libphonenumber/resources.git' + '@' + 'b6dfdc7952571ff7ee72643cd88c988cbe966396',
264   'src/tools/deps2git':
265    Var('chromium_git') + '/chromium/tools/deps2git.git' + '@' + 'f04828eb0b5acd3e7ad983c024870f17f17b06d9',
267   'src/third_party/webpagereplay':
268    Var('chromium_git') + '/external/web-page-replay.git' + '@' + '532b413ff95e8595d5028e0dae75dcf3ba712d2e',
270   'src/third_party/pywebsocket/src':
271     Var('chromium_git') + '/external/pywebsocket/src.git' + '@' + 'cb349e87ddb30ff8d1fa1a89be39cec901f4a29c',
273   'src/third_party/opus/src':
274    Var('chromium_git') + '/chromium/deps/opus.git' + '@' + 'cae696156f1e60006e39821e79a1811ae1933c69',
276   'src/media/cdm/ppapi/api':
277    Var('chromium_git') + '/chromium/cdm.git' + '@' + '7377023e384f296cbb27644eb2c485275f1f92e8', # from svn revision 294518
279   'src/third_party/mesa/src':
280    Var('chromium_git') + '/chromium/deps/mesa.git' + '@' + '071d25db04c23821a12a8b260ab9d96a097402f0',
282   'src/third_party/cld_2/src':
283     Var('chromium_git') + '/external/cld2.git' + '@' + '14d9ef8d4766326f8aa7de54402d1b9c782d4481', # from svn revision 193
285   'src/third_party/pdfium':
286    'https://pdfium.googlesource.com/pdfium.git' + '@' +  Var('pdfium_revision'),
288   'src/third_party/boringssl/src':
289    'https://boringssl.googlesource.com/boringssl.git' + '@' +  Var('boringssl_revision'),
291   'src/third_party/py_trace_event/src':
292     Var('chromium_git') + '/external/py_trace_event.git' + '@' + 'dd463ea9e2c430de2b9e53dea57a77b4c3ac9b30',
294   'src/third_party/dom_distiller_js/dist':
295     Var('chromium_git') + '/external/github.com/chromium/dom-distiller-dist.git' + '@' + '964272de851ef5d5d1096d319526b992d8d3d7f6',
299 deps_os = {
300   'win': {
301     'src/chrome/tools/test/reference_build/chrome_win':
302      Var('chromium_git') + '/chromium/reference_builds/chrome_win.git' + '@' + 'f8a3a845dfc845df6b14280f04f86a61959357ef',
304     'src/third_party/cygwin':
305      Var('chromium_git') + '/chromium/deps/cygwin.git' + '@' + 'c89e446b273697fadf3a10ff1007a97c0b7de6df',
307     'src/third_party/psyco_win32':
308      Var('chromium_git') + '/chromium/deps/psyco_win32.git' + '@' + 'f5af9f6910ee5a8075bbaeed0591469f1661d868',
310     'src/third_party/bison':
311      Var('chromium_git') + '/chromium/deps/bison.git' + '@' + '083c9a45e4affdd5464ee2b224c2df649c6e26c3',
313     'src/third_party/gperf':
314      Var('chromium_git') + '/chromium/deps/gperf.git' + '@' + 'd892d79f64f9449770443fb06da49b5a1e5d33c1',
316     'src/third_party/perl':
317      Var('chromium_git') + '/chromium/deps/perl.git' + '@' + 'ac0d98b5cee6c024b0cffeb4f8f45b6fc5ccdb78',
319     'src/third_party/lighttpd':
320      Var('chromium_git') + '/chromium/deps/lighttpd.git' + '@' + Var('lighttpd_revision'),
322     # Parses Windows PE/COFF executable format.
323     'src/third_party/pefile':
324      Var('chromium_git') + '/external/pefile.git' + '@' + '72c6ae42396cb913bcab63c15585dc3b5c3f92f1',
326     # NSS, for SSLClientSocketNSS.
327     'src/third_party/nss':
328      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
330     'src/third_party/swig/win':
331      Var('chromium_git') + '/chromium/deps/swig/win.git' + '@' + '986f013ba518541adf5c839811efb35630a31031',
333     # GNU binutils assembler for x86-32.
334     'src/third_party/gnu_binutils':
335       Var('chromium_git') + '/native_client/deps/third_party/gnu_binutils.git' + '@' + 'f4003433b61b25666565690caf3d7a7a1a4ec436',
336     # GNU binutils assembler for x86-64.
337     'src/third_party/mingw-w64/mingw/bin':
338       Var('chromium_git') + '/native_client/deps/third_party/mingw-w64/mingw/bin.git' + '@' + '3cc8b140b883a9fe4986d12cfd46c16a093d3527',
340     # Dependencies used by libjpeg-turbo
341     'src/third_party/yasm/binaries':
342      Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
344     # Binaries for nacl sdk.
345     'src/third_party/nacl_sdk_binaries':
346      Var('chromium_git') + '/chromium/deps/nacl_sdk_binaries.git' + '@' + '759dfca03bdc774da7ecbf974f6e2b84f43699a5',
348     # Omaha code for src/app_installer/.
349     'src/third_party/omaha/src/omaha':
350      Var('chromium_git') + '/external/omaha.git' + '@' + '098c7a3d157218dab4eed595e8f2fbe5a20a0bae',
351   },
352   'ios': {
353     'src/ios/third_party/gcdwebserver/src':
354      Var('chromium_git') + '/external/github.com/swisspol/GCDWebServer.git' + '@' + '18889793b75d7ee593d62ac88997caad850acdb6',
356     'src/third_party/google_toolbox_for_mac/src':
357       Var('chromium_git') + '/external/google-toolbox-for-mac.git' + '@' + Var('google_toolbox_for_mac_revision'),
359     'src/third_party/nss':
360      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
362     # class-dump utility to generate header files for undocumented SDKs
363     'src/testing/iossim/third_party/class-dump':
364      Var('chromium_git') + '/chromium/deps/class-dump.git' + '@' + '89bd40883c767584240b4dade8b74e6f57b9bdab',
366     # Code that's not needed due to not building everything
367     'src/chrome/test/data/perf/canvas_bench': None,
368     'src/chrome/test/data/perf/frame_rate/content': None,
369     'src/native_client': None,
370     'src/third_party/ffmpeg': None,
371     'src/third_party/hunspell_dictionaries': None,
372     'src/third_party/hunspell': None,
373     'src/third_party/webgl': None,
374   },
375   'mac': {
376     'src/chrome/tools/test/reference_build/chrome_mac':
377      Var('chromium_git') + '/chromium/reference_builds/chrome_mac.git' + '@' + '8dc181329e7c5255f83b4b85dc2f71498a237955',
379     'src/third_party/google_toolbox_for_mac/src':
380       Var('chromium_git') + '/external/google-toolbox-for-mac.git' + '@' + Var('google_toolbox_for_mac_revision'),
383     'src/third_party/pdfsqueeze':
384       Var('chromium_git') + '/external/pdfsqueeze.git' + '@' + '5936b871e6a087b7e50d4cbcb122378d8a07499f',
386     'src/third_party/lighttpd':
387      Var('chromium_git') + '/chromium/deps/lighttpd.git' + '@' + Var('lighttpd_revision'),
389     'src/third_party/swig/mac':
390      Var('chromium_git') + '/chromium/deps/swig/mac.git' + '@' + '1b182eef16df2b506f1d710b34df65d55c1ac44e',
392     # NSS, for SSLClientSocketNSS.
393     'src/third_party/nss':
394      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
396     'src/chrome/installer/mac/third_party/xz/xz':
397      Var('chromium_git') + '/chromium/deps/xz.git' + '@' + 'eecaf55632ca72e90eb2641376bce7cdbc7284f7',
398   },
399   'unix': {
400     # Linux, really.
401     'src/chrome/tools/test/reference_build/chrome_linux':
402      Var('chromium_git') + '/chromium/reference_builds/chrome_linux64.git' + '@' + '033d053a528e820e1de3e2db766678d862a86b36',
404     'src/third_party/xdg-utils':
405      Var('chromium_git') + '/chromium/deps/xdg-utils.git' + '@' + 'd80274d5869b17b8c9067a1022e4416ee7ed5e0d',
407     'src/third_party/swig/linux':
408      Var('chromium_git') + '/chromium/deps/swig/linux.git' + '@' + '866b8e0e0e0cfe99ebe608260030916ca0c3f92d',
410     'src/third_party/lss':
411       Var('chromium_git') + '/external/linux-syscall-support/lss.git' + '@' + Var('lss_revision'),
413     # For Linux and Chromium OS.
414     'src/third_party/cros_system_api':
415      Var('chromium_git') + '/chromiumos/platform/system_api.git' + '@' + '95c486f3d3da2cb4e6564f1cd69ab522cf315ea1',
417     # Note that this is different from Android's freetype repo.
418     'src/third_party/freetype2/src':
419      Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + '495a23fce9cd125f715dc20643d14fed226d76ac',
421     # Build tools for Chrome OS.
422     'src/third_party/chromite':
423      Var('chromium_git') + '/chromiumos/chromite.git' + '@' + 'fdc9440cb96f8de35202abc285ffb896e04292d3',
425     # Dependency of chromite.git.
426     'src/third_party/pyelftools':
427      Var('chromium_git') + '/chromiumos/third_party/pyelftools.git' + '@' + '19b3e610c86fcadb837d252c794cb5e8008826ae',
429     'src/third_party/undoview':
430      Var('chromium_git') + '/chromium/deps/undoview.git' + '@' + '3ba503e248f3cdbd81b78325a24ece0984637559',
432     'src/third_party/liblouis/src':
433      Var('chromium_git') + '/external/liblouis-github.git' + '@' + '5f9c03f2a3478561deb6ae4798175094be8a26c2',
435     # Used for embedded builds. CrOS & Linux use the system version.
436     'src/third_party/fontconfig/src':
437      Var('chromium_git') + '/external/fontconfig.git' + '@' + 'f16c3118e25546c1b749f9823c51827a60aeb5c1',
439     'src/third_party/stp/src':
440      Var('chromium_git') + '/external/github.com/stp/stp.git' + '@' + 'fc94a599207752ab4d64048204f0c88494811b62',
441   },
442   'android': {
443     'src/third_party/android_protobuf/src':
444      Var('chromium_git') + '/external/android_protobuf.git' + '@' + '94f522f907e3f34f70d9e7816b947e62fddbb267',
446     'src/third_party/android_tools':
447      Var('chromium_git') + '/android_tools.git' + '@' + 'a1ffd63322c438627d78ea56eb73fb8779e06950',
449     'src/third_party/apache-mime4j':
450      Var('chromium_git') + '/chromium/deps/apache-mime4j.git' + '@' + '28cb1108bff4b6cf0a2e86ff58b3d025934ebe3a',
452     'src/third_party/appurify-python/src':
453      Var('chromium_git') + '/external/github.com/appurify/appurify-python.git' + '@' + 'ee7abd5c5ae3106f72b2a0b9d2cb55094688e867',
455     'src/third_party/findbugs':
456      Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '7f69fa78a6db6dc31866d09572a0e356e921bf12',
458     'src/third_party/freetype':
459      Var('chromium_git') + '/chromium/src/third_party/freetype.git' + '@' + 'fd6919ac23f74b876c209aba5eaa2be662086391',
461    'src/third_party/elfutils/src':
462      Var('chromium_git') + '/external/elfutils.git' + '@' + '249673729a7e5dbd5de4f3760bdcaa3d23d154d7',
464     'src/third_party/httpcomponents-client':
465      Var('chromium_git') + '/chromium/deps/httpcomponents-client.git' + '@' + '285c4dafc5de0e853fa845dce5773e223219601c',
467     'src/third_party/httpcomponents-core':
468      Var('chromium_git') + '/chromium/deps/httpcomponents-core.git' + '@' + '9f7180a96f8fa5cab23f793c14b413356d419e62',
470     'src/third_party/jarjar':
471      Var('chromium_git') + '/chromium/deps/jarjar.git' + '@' + '2e1ead4c68c450e0b77fe49e3f9137842b8b6920',
473     'src/third_party/jsr-305/src':
474       Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
476     'src/third_party/junit/src':
477       Var('chromium_git') + '/external/junit.git' + '@' + '45a44647e7306262162e1346b750c3209019f2e1',
479     'src/third_party/mockito/src':
480       Var('chromium_git') + '/external/mockito/mockito.git' + '@' + 'ed99a52e94a84bd7c467f2443b475a22fcc6ba8e',
482     'src/third_party/robolectric/lib':
483       Var('chromium_git') + '/chromium/third_party/robolectric.git' + '@' + '6b63c99a8b6967acdb42cbed0adb067c80efc810',
485     'src/third_party/lss':
486       Var('chromium_git') + '/external/linux-syscall-support/lss.git' + '@' + Var('lss_revision'),
488     'src/third_party/requests/src':
489       Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
491   },
495 include_rules = [
496   # Everybody can use some things.
497   '+base',
498   '+build',
499   '+ipc',
501   # Everybody can use headers generated by tools/generate_library_loader.
502   '+library_loaders',
504   '+testing',
505   '+third_party/icu/source/common/unicode',
506   '+third_party/icu/source/i18n/unicode',
507   '+url',
511 # checkdeps.py shouldn't check include paths for files in these dirs:
512 skip_child_includes = [
513   'breakpad',
514   'delegate_execute',
515   'metro_driver',
516   'native_client_sdk',
517   'o3d',
518   'sdch',
519   'skia',
520   'testing',
521   'third_party',
522   'v8',
523   'win8',
527 hooks = [
528   {
529     # This clobbers when necessary (based on get_landmines.py). It must be the
530     # first hook so that other things that get/generate into the output
531     # directory will not subsequently be clobbered.
532     'name': 'landmines',
533     'pattern': '.',
534     'action': [
535         'python',
536         'src/build/landmines.py',
537     ],
538   },
539   {
540     # This downloads binaries for Native Client's newlib toolchain.
541     # Done in lieu of building the toolchain from scratch as it can take
542     # anywhere from 30 minutes to 4 hours depending on platform to build.
543     'name': 'nacltools',
544     'pattern': '.',
545     'action': [
546         'python',
547         'src/build/download_nacl_toolchains.py',
548         '--mode', 'nacl_core_sdk',
549         'sync', '--extract',
550     ],
551   },
552   {
553     # This downloads SDK extras and puts them in the
554     # third_party/android_tools/sdk/extras directory on the bots. Developers
555     # need to manually install these packages and accept the ToS.
556     'name': 'sdkextras',
557     'pattern': '.',
558     # When adding a new sdk extras package to download, add the package
559     # directory and zip file to .gitignore in third_party/android_tools.
560     'action': ['python', 'src/build/download_sdk_extras.py'],
561   },
562   {
563     # Downloads the Debian Wheezy sysroot to chrome/installer/linux if needed.
564     # This sysroot updates at about the same rate that the chrome build deps
565     # change. This script is a no-op except for linux users who are doing
566     # official chrome builds.
567     'name': 'sysroot',
568     'pattern': '.',
569     'action': [
570         'python',
571         'src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py',
572         '--linux-only'],
573   },
574   {
575     # Update the Windows toolchain if necessary.
576     'name': 'win_toolchain',
577     'pattern': '.',
578     'action': ['python', 'src/build/vs_toolchain.py', 'update'],
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. This is also run by export_tarball.py in
589     # src/tools/export_tarball - please keep them in sync.
590     'name': 'lastchange',
591     'pattern': '.',
592     'action': ['python', 'src/build/util/lastchange.py',
593                '-o', 'src/build/util/LASTCHANGE'],
594   },
595   {
596     # Update LASTCHANGE.blink. This is also run by export_tarball.py in
597     # src/tools/export_tarball - please keep them in sync.
598     'name': 'lastchange',
599     'pattern': '.',
600     'action': ['python', 'src/build/util/lastchange.py',
601                '-s', 'src/third_party/WebKit',
602                '-o', 'src/build/util/LASTCHANGE.blink'],
603   },
604   # Pull GN binaries. This needs to be before running GYP below.
605   {
606     'name': 'gn_win',
607     'pattern': '.',
608     'action': [ 'download_from_google_storage',
609                 '--no_resume',
610                 '--platform=win32',
611                 '--no_auth',
612                 '--bucket', 'chromium-gn',
613                 '-s', 'src/buildtools/win/gn.exe.sha1',
614     ],
615   },
616   {
617     'name': 'gn_mac',
618     'pattern': '.',
619     'action': [ 'download_from_google_storage',
620                 '--no_resume',
621                 '--platform=darwin',
622                 '--no_auth',
623                 '--bucket', 'chromium-gn',
624                 '-s', 'src/buildtools/mac/gn.sha1',
625     ],
626   },
627   {
628     'name': 'gn_linux32',
629     'pattern': '.',
630     'action': [ 'download_from_google_storage',
631                 '--no_resume',
632                 '--platform=linux*',
633                 '--no_auth',
634                 '--bucket', 'chromium-gn',
635                 '-s', 'src/buildtools/linux32/gn.sha1',
636     ],
637   },
638   {
639     'name': 'gn_linux64',
640     'pattern': '.',
641     'action': [ 'download_from_google_storage',
642                 '--no_resume',
643                 '--platform=linux*',
644                 '--no_auth',
645                 '--bucket', 'chromium-gn',
646                 '-s', 'src/buildtools/linux64/gn.sha1',
647     ],
648   },
649   # Pull clang-format binaries using checked-in hashes.
650   {
651     'name': 'clang_format_win',
652     'pattern': '.',
653     'action': [ 'download_from_google_storage',
654                 '--no_resume',
655                 '--platform=win32',
656                 '--no_auth',
657                 '--bucket', 'chromium-clang-format',
658                 '-s', 'src/buildtools/win/clang-format.exe.sha1',
659     ],
660   },
661   {
662     'name': 'clang_format_mac',
663     'pattern': '.',
664     'action': [ 'download_from_google_storage',
665                 '--no_resume',
666                 '--platform=darwin',
667                 '--no_auth',
668                 '--bucket', 'chromium-clang-format',
669                 '-s', 'src/buildtools/mac/clang-format.sha1',
670     ],
671   },
672   {
673     'name': 'clang_format_linux',
674     'pattern': '.',
675     'action': [ 'download_from_google_storage',
676                 '--no_resume',
677                 '--platform=linux*',
678                 '--no_auth',
679                 '--bucket', 'chromium-clang-format',
680                 '-s', 'src/buildtools/linux64/clang-format.sha1',
681     ],
682   },
683   # Pull binutils for linux, enabled debug fission for faster linking /
684   # debugging when used with clang on Ubuntu Precise.
685   # https://code.google.com/p/chromium/issues/detail?id=352046
686   {
687     'name': 'binutils',
688     'pattern': 'src/third_party/binutils',
689     'action': [
690         'python',
691         'src/third_party/binutils/download.py',
692     ],
693   },
694   # Pull eu-strip binaries using checked-in hashes.
695   {
696     'name': 'eu-strip',
697     'pattern': '.',
698     'action': [ 'download_from_google_storage',
699                 '--no_resume',
700                 '--platform=linux*',
701                 '--no_auth',
702                 '--bucket', 'chromium-eu-strip',
703                 '-s', 'src/build/linux/bin/eu-strip.sha1',
704     ],
705   },
706   {
707     'name': 'drmemory',
708     'pattern': '.',
709     'action': [ 'download_from_google_storage',
710                 '--no_resume',
711                 '--platform=win32',
712                 '--no_auth',
713                 '--bucket', 'chromium-drmemory',
714                 '-s', 'src/third_party/drmemory/drmemory-windows-sfx.exe.sha1',
715               ],
716   },
717   # Pull the Syzygy binaries, used for optimization and instrumentation.
718   {
719     'name': 'syzygy-binaries',
720     'pattern': '.',
721     'action': ['python',
722                'src/build/get_syzygy_binaries.py',
723                '--output-dir=src/third_party/syzygy/binaries',
724                '--revision=e869aa03e0f40f74321a70d6d4578f5bbbc29bda',
725                '--overwrite',
726     ],
727   },
728   {
729     'name': 'kasko',
730     'pattern': '.',
731     'action': ['python',
732                'src/build/get_syzygy_binaries.py',
733                '--output-dir=src/third_party/kasko',
734                '--revision=3278b959bdf6c9aa4b326a38e8b953e566c1ec58',
735                '--resource=kasko.zip',
736                '--resource=kasko_symbols.zip',
737                '--overwrite',
738     ],
739   },
740   {
741     'name': 'apache_win32',
742     'pattern': '\\.sha1',
743     'action': [ 'download_from_google_storage',
744                 '--no_resume',
745                 '--platform=win32',
746                 '--directory',
747                 '--recursive',
748                 '--no_auth',
749                 '--num_threads=16',
750                 '--bucket', 'chromium-apache-win32',
751                 'src/third_party/apache-win32',
752     ],
753   },
754   # Pull the mojo_shell binary, used for mojo development
755   {
756     'name': 'download_mojo_shell',
757     'pattern': '',
758     'action': [ 'python',
759                 'src/third_party/mojo/src/mojo/public/tools/download_shell_binary.py',
760                 '--tools-directory=../../../../../../tools',
761               ],
762   },
763   {
764     # Pull sanitizer-instrumented third-party libraries if requested via
765     # GYP_DEFINES.
766     'name': 'instrumented_libraries',
767     'pattern': '\\.sha1',
768     'action': ['python', 'src/third_party/instrumented_libraries/scripts/download_binaries.py'],
769   },
770   {
771     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
772     'name': 'gyp',
773     'pattern': '.',
774     'action': ['python', 'src/build/gyp_chromium'],
775   },
776   {
777     # Verify committers' ~/.netc, gclient and git are properly configured for
778     # write access to the git repo. To be removed sometime after Chrome to git
779     # migration completes (let's say Sep 1 2014).
780     'name': 'check_git_config',
781     'pattern': '.',
782     'action': [
783         'python',
784         'src/tools/check_git_config.py',
785         '--running-as-hook',
786     ],
787   },
788   {
789     # Ensure that we don't accidentally reference any .pyc files whose
790     # corresponding .py files have already been deleted.
791     'name': 'remove_stale_pyc_files',
792     'pattern': 'src/tools/.*\\.py',
793     'action': [
794         'python',
795         'src/tools/remove_stale_pyc_files.py',
796         'src/tools',
797     ],
798   },