BrowserStateKeyedServiceFactory::BuildServiceInstanceFor returns scoped_ptr<>
[chromium-blink-merge.git] / DEPS
blob475f87b89967ef42f0c5021a6f98b8136f04a248
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   'webkit_revision': '371830bde978f0ba61d73e56e90430cb14cc9562', # from svn revision 197435
34   'chromium_git': 'https://chromium.googlesource.com',
35   'libvpx_revision': 'db3f34772338a7e02fc5a7fb9da4d72de68e71b9',
36   'sfntly_revision': '1bdaae8fc788a5ac8936d68bf24f37d977a13dac',
37   'skia_revision': '9aa9e716ecba6f62b7ab3f9626f790dce96e61a5',
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': '54980111481673c6e28cf1033e2ed0f2c395666e',
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': 'b39a448d8522392389b28f6997126a6ab04bfe87',
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': 'f0c1d0292d2f04e82ed0aea80359a85f32672a4e',
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': 'fa660d47fa1a6c649d5c29e001348447c55709e6',
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': '2ca8fcbc8a7a3ef6adfac154c47068c1696205d0',
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': '22bb1085a6a0f6f3589a8c3d60ed0a9b82248275',
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': 'af0e32cb84f0c9cc65b9233a3414d2562642b342',
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': '6f97298fe3794e92c8c896a6bc06e0b36e4c3de3',
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': 'aecd00db6b864f86947a55e0827fe74c922df76d',
88 # Only these hosts are allowed for dependencies in this DEPS file.
89 # If you need to add a new host, contact chrome infrastracture team.
90 allowed_hosts = [
91   'chromium.googlesource.com',
92   'boringssl.googlesource.com',
93   'pdfium.googlesource.com',
94   'android.googlesource.com',
97 deps = {
98   'src/breakpad/src':
99    Var('chromium_git') + '/external/google-breakpad/src.git' + '@' + 'd7e4030ff7d38e0d88d7ca39c1c1222940bfb3b7', # from svn revision 1456
101   'src/buildtools':
102    Var('chromium_git') + '/chromium/buildtools.git' + '@' +  Var('buildtools_revision'),
104   'src/sdch/open-vcdiff':
105    Var('chromium_git') + '/external/open-vcdiff.git' + '@' + '438f2a5be6d809bc21611a94cd37bfc8c28ceb33', # from svn revision 41
107   'src/testing/gtest':
108    Var('chromium_git') + '/external/googletest.git' + '@' + '23574bf2333f834ff665f894c97bef8a5b33a0a9', # from svn revision 711
110   'src/testing/gmock':
111    Var('chromium_git') + '/external/googlemock.git' + '@' + '29763965ab52f24565299976b936d1265cb6a271', # from svn revision 501
113   'src/third_party/angle':
114    Var('chromium_git') + '/angle/angle.git' + '@' +  Var('angle_revision'),
116   'src/third_party/colorama/src':
117    Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
119   'src/third_party/crashpad/crashpad':
120    Var('chromium_git') + '/crashpad/crashpad.git' + '@' + '797adb320680a4a8ad39428075cca287e04b111f',
122   'src/third_party/trace-viewer':
123    Var('chromium_git') + '/external/trace-viewer.git' + '@' + '1df70ec66653aad064b762bfb3f9b68900d80589',
125   'src/third_party/WebKit':
126    Var('chromium_git') + '/chromium/blink.git' + '@' +  Var('webkit_revision'),
128   'src/third_party/icu':
129    Var('chromium_git') + '/chromium/deps/icu.git' + '@' + '00af1a4e512477e48ba3d5efc97adbc95462685e',
131   'src/third_party/libexif/sources':
132    Var('chromium_git') + '/chromium/deps/libexif/sources.git' + '@' + 'ed98343daabd7b4497f97fda972e132e6877c48a',
134   'src/third_party/hunspell_dictionaries':
135    Var('chromium_git') + '/chromium/deps/hunspell_dictionaries.git' + '@' + '80796932b89ab36431399d76c5b8391ea471e30a', # from svn revision 294404
137   'src/third_party/safe_browsing/testing':
138     Var('chromium_git') + '/external/google-safe-browsing/testing.git' + '@' + '9d7e8064f3ca2e45891470c9b5b1dce54af6a9d6',
140   'src/third_party/leveldatabase/src':
141     Var('chromium_git') + '/external/leveldb.git' + '@' + '40c17c0b84ac0b791fb434096fd5c05f3819ad55',
143   'src/third_party/snappy/src':
144     Var('chromium_git') + '/external/snappy.git' + '@' + '762bb32f0c9d2f31ba4958c7c0933d22e80c20bf',
146   'src/tools/grit':
147     Var('chromium_git') + '/external/grit-i18n.git' + '@' + 'c1b1591a05209c1ad467e845ba8543c22f9072af', # from svn revision 189
149   'src/tools/gyp':
150     Var('chromium_git') + '/external/gyp.git' + '@' + '5122240c5e5c4d8da12c543d82b03d6089eb77c5',
152   'src/tools/swarming_client':
153    Var('chromium_git') + '/external/swarming.client.git' + '@' +  Var('swarming_revision'),
155   'src/v8':
156     Var('chromium_git') + '/v8/v8.git' + '@' +  Var('v8_revision'),
158   'src/native_client':
159    Var('chromium_git') + '/native_client/src/native_client.git' + '@' + Var('nacl_revision'),
161   'src/third_party/sfntly/cpp/src':
162     Var('chromium_git') + '/external/sfntly/cpp/src.git' + '@' +  Var('sfntly_revision'),
164   'src/third_party/skia':
165    Var('chromium_git') + '/skia.git' + '@' +  Var('skia_revision'),
167   'src/tools/page_cycler/acid3':
168    Var('chromium_git') + '/chromium/deps/acid3.git' + '@' + '6be0a66a1ebd7ebc5abc1b2f405a945f6d871521',
170   'src/chrome/test/data/perf/canvas_bench':
171    Var('chromium_git') + '/chromium/canvas_bench.git' + '@' + 'a7b40ea5ae0239517d78845a5fc9b12976bfc732',
173   'src/chrome/test/data/perf/frame_rate/content':
174    Var('chromium_git') + '/chromium/frame_rate/content.git' + '@' + 'c10272c88463efeef6bb19c9ec07c42bc8fe22b9',
176   'src/third_party/bidichecker':
177     Var('chromium_git') + '/external/bidichecker/lib.git' + '@' + '97f2aa645b74c28c57eca56992235c79850fa9e0',
179   'src/third_party/webgl/src':
180    Var('chromium_git') + '/external/khronosgroup/webgl.git' + '@' + '8986f8bfa84547b1a30a9256ebdd665024d68d71',
182   'src/third_party/webdriver/pylib':
183     Var('chromium_git') + '/external/selenium/py.git' + '@' + '5fd78261a75fe08d27ca4835fb6c5ce4b42275bd',
185   'src/third_party/libvpx':
186    Var('chromium_git') + '/chromium/deps/libvpx.git' + '@' +  Var('libvpx_revision'),
188   'src/third_party/ffmpeg':
189    Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '0ec2f1eee82359bb9c02a912feb1914a3a169cbe',
191   'src/third_party/libjingle/source/talk':
192     Var('chromium_git') + '/external/webrtc/trunk/talk.git' + '@' + '9602631f8667fd9a96edb157954a0dfadea6b5d2', # commit position 9433
194   'src/third_party/usrsctp/usrsctplib':
195     Var('chromium_git') + '/external/usrsctplib.git' + '@' + '36444a999739e9e408f8f587cb4c3ffeef2e50ac', # from svn revision 9215
197   'src/third_party/libsrtp':
198    Var('chromium_git') + '/chromium/deps/libsrtp.git' + '@' + '9c53f858cddd4d890e405e91ff3af0b48dfd90e6', # from svn revision 295151
200   'src/third_party/yasm/source/patched-yasm':
201    Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + '4671120cd8558ce62ee8672ebf3eb6f5216f909b',
203   'src/third_party/libjpeg_turbo':
204    Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + 'f4631b6ee8b1dbb05e51ae335a7886f9ac598ab6',
206   'src/third_party/flac':
207    Var('chromium_git') + '/chromium/deps/flac.git' + '@' + '0635a091379d9677f1ddde5f2eec85d0f096f219',
209   'src/third_party/pyftpdlib/src':
210     Var('chromium_git') + '/external/pyftpdlib.git' + '@' + '2be6d65e31c7ee6320d059f581f05ae8d89d7e45',
212   'src/third_party/scons-2.0.1':
213    Var('chromium_git') + '/native_client/src/third_party/scons-2.0.1.git' + '@' + '1c1550e17fc26355d08627fbdec13d8291227067',
215   'src/third_party/webrtc':
216     Var('chromium_git') + '/external/webrtc/trunk/webrtc.git' + '@' + '407258cf782b0a8c24819835561a0a709ec70873', # commit position 9432
218   'src/third_party/openmax_dl':
219     Var('chromium_git') + '/external/webrtc/deps/third_party/openmax.git' + '@' +  Var('openmax_dl_revision'),
221   'src/third_party/jsoncpp/source':
222     Var('chromium_git') + '/external/github.com/open-source-parsers/jsoncpp.git' + '@' + 'f572e8e42e22cfcf5ab0aea26574f408943edfa4', # from svn 248
224   'src/third_party/libyuv':
225     Var('chromium_git') + '/libyuv/libyuv.git' + '@' + '632c50f29cdacb8c5872ce9938444b676b4a0c81', # from svn revision 1407
227   'src/third_party/smhasher/src':
228     Var('chromium_git') + '/external/smhasher.git' + '@' + 'e87738e57558e0ec472b2fc3a643b838e5b6e88f',
230   'src/third_party/libaddressinput/src':
231     Var('chromium_git') + '/external/libaddressinput.git' + '@' + '5eeeb797e79fa01503fcdcbebdc50036fac023ef',
233   # These are all at libphonenumber r728.
234   'src/third_party/libphonenumber/src/phonenumbers':
235     Var('chromium_git') + '/external/libphonenumber/cpp/src/phonenumbers.git' + '@' + '0d6e3e50e17c94262ad1ca3b7d52b11223084bca',
236   'src/third_party/libphonenumber/src/test':
237     Var('chromium_git') + '/external/libphonenumber/cpp/test.git' + '@' + 'f351a7e007f9c9995494499120bbc361ca808a16',
238   'src/third_party/libphonenumber/src/resources':
239     Var('chromium_git') + '/external/libphonenumber/resources.git' + '@' + 'b6dfdc7952571ff7ee72643cd88c988cbe966396',
241   'src/tools/deps2git':
242    Var('chromium_git') + '/chromium/tools/deps2git.git' + '@' + 'f04828eb0b5acd3e7ad983c024870f17f17b06d9',
244   'src/third_party/webpagereplay':
245    Var('chromium_git') + '/external/github.com/chromium/web-page-replay.git' + '@' + '5da5975950daa7b30a6938da73fd0b3200901b0c',
247   'src/third_party/pywebsocket/src':
248     Var('chromium_git') + '/external/pywebsocket/src.git' + '@' + 'cb349e87ddb30ff8d1fa1a89be39cec901f4a29c',
250   'src/third_party/opus/src':
251    Var('chromium_git') + '/chromium/deps/opus.git' + '@' + 'cae696156f1e60006e39821e79a1811ae1933c69',
253   'src/media/cdm/ppapi/api':
254    Var('chromium_git') + '/chromium/cdm.git' + '@' + '7377023e384f296cbb27644eb2c485275f1f92e8', # from svn revision 294518
256   'src/third_party/mesa/src':
257    Var('chromium_git') + '/chromium/deps/mesa.git' + '@' + '071d25db04c23821a12a8b260ab9d96a097402f0',
259   'src/third_party/cld_2/src':
260     Var('chromium_git') + '/external/cld2.git' + '@' + '14d9ef8d4766326f8aa7de54402d1b9c782d4481', # from svn revision 193
262   'src/third_party/pdfium':
263    'https://pdfium.googlesource.com/pdfium.git' + '@' +  Var('pdfium_revision'),
265   'src/third_party/boringssl/src':
266    'https://boringssl.googlesource.com/boringssl.git' + '@' +  Var('boringssl_revision'),
268   'src/third_party/py_trace_event/src':
269     Var('chromium_git') + '/external/py_trace_event.git' + '@' + 'dd463ea9e2c430de2b9e53dea57a77b4c3ac9b30',
271   'src/third_party/dom_distiller_js/dist':
272     Var('chromium_git') + '/external/github.com/chromium/dom-distiller-dist.git' + '@' + 'f93cf9c2817926a92f4f347b20fa840a1998d5f3',
276 deps_os = {
277   'win': {
278     'src/chrome/tools/test/reference_build/chrome_win':
279      Var('chromium_git') + '/chromium/reference_builds/chrome_win.git' + '@' + 'f8a3a845dfc845df6b14280f04f86a61959357ef',
281     'src/third_party/cygwin':
282      Var('chromium_git') + '/chromium/deps/cygwin.git' + '@' + 'c89e446b273697fadf3a10ff1007a97c0b7de6df',
284     'src/third_party/psyco_win32':
285      Var('chromium_git') + '/chromium/deps/psyco_win32.git' + '@' + 'f5af9f6910ee5a8075bbaeed0591469f1661d868',
287     'src/third_party/bison':
288      Var('chromium_git') + '/chromium/deps/bison.git' + '@' + '083c9a45e4affdd5464ee2b224c2df649c6e26c3',
290     'src/third_party/gperf':
291      Var('chromium_git') + '/chromium/deps/gperf.git' + '@' + 'd892d79f64f9449770443fb06da49b5a1e5d33c1',
293     'src/third_party/perl':
294      Var('chromium_git') + '/chromium/deps/perl.git' + '@' + 'ac0d98b5cee6c024b0cffeb4f8f45b6fc5ccdb78',
296     'src/third_party/lighttpd':
297      Var('chromium_git') + '/chromium/deps/lighttpd.git' + '@' + Var('lighttpd_revision'),
299     # Parses Windows PE/COFF executable format.
300     'src/third_party/pefile':
301      Var('chromium_git') + '/external/pefile.git' + '@' + '72c6ae42396cb913bcab63c15585dc3b5c3f92f1',
303     # NSS, for SSLClientSocketNSS.
304     'src/third_party/nss':
305      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
307     # GNU binutils assembler for x86-32.
308     'src/third_party/gnu_binutils':
309       Var('chromium_git') + '/native_client/deps/third_party/gnu_binutils.git' + '@' + 'f4003433b61b25666565690caf3d7a7a1a4ec436',
310     # GNU binutils assembler for x86-64.
311     'src/third_party/mingw-w64/mingw/bin':
312       Var('chromium_git') + '/native_client/deps/third_party/mingw-w64/mingw/bin.git' + '@' + '3cc8b140b883a9fe4986d12cfd46c16a093d3527',
314     # Dependencies used by libjpeg-turbo
315     'src/third_party/yasm/binaries':
316      Var('chromium_git') + '/chromium/deps/yasm/binaries.git' + '@' + '52f9b3f4b0aa06da24ef8b123058bb61ee468881',
318     # Binaries for nacl sdk.
319     'src/third_party/nacl_sdk_binaries':
320      Var('chromium_git') + '/chromium/deps/nacl_sdk_binaries.git' + '@' + '759dfca03bdc774da7ecbf974f6e2b84f43699a5',
321   },
322   'ios': {
323     'src/ios/third_party/gcdwebserver/src':
324      Var('chromium_git') + '/external/github.com/swisspol/GCDWebServer.git' + '@' + '3d5fd0b8281a7224c057deb2d17709b5bea64836',
326     'src/third_party/google_toolbox_for_mac/src':
327       Var('chromium_git') + '/external/google-toolbox-for-mac.git' + '@' + Var('google_toolbox_for_mac_revision'),
329     'src/third_party/nss':
330      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
332     # class-dump utility to generate header files for undocumented SDKs
333     'src/third_party/class-dump/src':
334      Var('chromium_git') + '/external/github.com/nygard/class-dump.git' + '@' + '93e7c6a5419380d89656dcc511dc60d475199b67',
336     # Code that's not needed due to not building everything
337     'src/chrome/test/data/perf/canvas_bench': None,
338     'src/chrome/test/data/perf/frame_rate/content': None,
339     'src/native_client': None,
340     'src/third_party/ffmpeg': None,
341     'src/third_party/hunspell_dictionaries': None,
342     'src/third_party/webgl': None,
343   },
344   'mac': {
345     'src/chrome/tools/test/reference_build/chrome_mac':
346      Var('chromium_git') + '/chromium/reference_builds/chrome_mac.git' + '@' + '8dc181329e7c5255f83b4b85dc2f71498a237955',
348     'src/third_party/google_toolbox_for_mac/src':
349       Var('chromium_git') + '/external/google-toolbox-for-mac.git' + '@' + Var('google_toolbox_for_mac_revision'),
352     'src/third_party/pdfsqueeze':
353       Var('chromium_git') + '/external/pdfsqueeze.git' + '@' + '5936b871e6a087b7e50d4cbcb122378d8a07499f',
355     'src/third_party/lighttpd':
356      Var('chromium_git') + '/chromium/deps/lighttpd.git' + '@' + Var('lighttpd_revision'),
358     # NSS, for SSLClientSocketNSS.
359     'src/third_party/nss':
360      Var('chromium_git') + '/chromium/deps/nss.git' + '@' + Var('nss_revision'),
362     'src/chrome/installer/mac/third_party/xz/xz':
363      Var('chromium_git') + '/chromium/deps/xz.git' + '@' + 'eecaf55632ca72e90eb2641376bce7cdbc7284f7',
364   },
365   'unix': {
366     # Linux, really.
367     'src/chrome/tools/test/reference_build/chrome_linux':
368      Var('chromium_git') + '/chromium/reference_builds/chrome_linux64.git' + '@' + '033d053a528e820e1de3e2db766678d862a86b36',
370     'src/third_party/xdg-utils':
371      Var('chromium_git') + '/chromium/deps/xdg-utils.git' + '@' + 'd80274d5869b17b8c9067a1022e4416ee7ed5e0d',
373     'src/third_party/lss':
374       Var('chromium_git') + '/external/linux-syscall-support/lss.git' + '@' + Var('lss_revision'),
376     # For Linux and Chromium OS.
377     'src/third_party/cros_system_api':
378      Var('chromium_git') + '/chromiumos/platform/system_api.git' + '@' + 'ba08c21a075ab091ca9bdc783435c2aec8c6f807',
380     # Note that this is different from Android's freetype repo.
381     'src/third_party/freetype2/src':
382      Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + '1dd5f5f4a909866f15c92a45c9702bce290a0151',
384     # Build tools for Chrome OS.
385     'src/third_party/chromite':
386      Var('chromium_git') + '/chromiumos/chromite.git' + '@' + '8a83c625c57a1ad990ba8f5f95890b57d204501f',
388     # Dependency of chromite.git.
389     'src/third_party/pyelftools':
390      Var('chromium_git') + '/chromiumos/third_party/pyelftools.git' + '@' + 'bdc1d380acd88d4bfaf47265008091483b0d614e',
392     'src/third_party/liblouis/src':
393      Var('chromium_git') + '/external/liblouis-github.git' + '@' + '5f9c03f2a3478561deb6ae4798175094be8a26c2',
395     # Used for embedded builds. CrOS & Linux use the system version.
396     'src/third_party/fontconfig/src':
397      Var('chromium_git') + '/external/fontconfig.git' + '@' + 'f16c3118e25546c1b749f9823c51827a60aeb5c1',
399     'src/third_party/stp/src':
400      Var('chromium_git') + '/external/github.com/stp/stp.git' + '@' + 'fc94a599207752ab4d64048204f0c88494811b62',
401   },
402   'android': {
403     'src/third_party/android_protobuf/src':
404      Var('chromium_git') + '/external/android_protobuf.git' + '@' + '999188d0dc72e97f7fe08bb756958a2cf090f4e7',
406     'src/third_party/android_tools':
407      Var('chromium_git') + '/android_tools.git' + '@' + 'ed3dde6470c39b196c70f0c20374894d169754ec',
409     'src/third_party/apache-mime4j':
410      Var('chromium_git') + '/chromium/deps/apache-mime4j.git' + '@' + '28cb1108bff4b6cf0a2e86ff58b3d025934ebe3a',
412     'src/third_party/appurify-python/src':
413      Var('chromium_git') + '/external/github.com/appurify/appurify-python.git' + '@' + 'ee7abd5c5ae3106f72b2a0b9d2cb55094688e867',
415     'src/third_party/cardboard-java/src':
416      Var('chromium_git') + '/external/github.com/googlesamples/cardboard-java.git' + '@' + '08ad25a04f2801bd822c3f2cd28301b68d74aef6',
418     'src/third_party/findbugs':
419      Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '7f69fa78a6db6dc31866d09572a0e356e921bf12',
421     'src/third_party/freetype-android/src':
422      Var('chromium_git') + '/chromium/src/third_party/freetype2.git' + '@' + 'e186230678ee8e4ea4ac4797ece8125761e3225a',
424    'src/third_party/elfutils/src':
425      Var('chromium_git') + '/external/elfutils.git' + '@' + '249673729a7e5dbd5de4f3760bdcaa3d23d154d7',
427     'src/third_party/httpcomponents-client':
428      Var('chromium_git') + '/chromium/deps/httpcomponents-client.git' + '@' + '285c4dafc5de0e853fa845dce5773e223219601c',
430     'src/third_party/httpcomponents-core':
431      Var('chromium_git') + '/chromium/deps/httpcomponents-core.git' + '@' + '9f7180a96f8fa5cab23f793c14b413356d419e62',
433     'src/third_party/jarjar':
434      Var('chromium_git') + '/chromium/deps/jarjar.git' + '@' + '2e1ead4c68c450e0b77fe49e3f9137842b8b6920',
436     'src/third_party/jsr-305/src':
437       Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
439     'src/third_party/junit/src':
440       Var('chromium_git') + '/external/junit.git' + '@' + '45a44647e7306262162e1346b750c3209019f2e1',
442     'src/third_party/mockito/src':
443       Var('chromium_git') + '/external/mockito/mockito.git' + '@' + 'ed99a52e94a84bd7c467f2443b475a22fcc6ba8e',
445     'src/third_party/robolectric/lib':
446       Var('chromium_git') + '/chromium/third_party/robolectric.git' + '@' + '6b63c99a8b6967acdb42cbed0adb067c80efc810',
448     'src/third_party/ub-uiautomator/lib':
449       Var('chromium_git') + '/chromium/third_party/ub-uiautomator.git' + '@' + 'e6f02481bada8bdbdfdd7987dd6e648c44a3adcb',
451     'src/third_party/lss':
452       Var('chromium_git') + '/external/linux-syscall-support/lss.git' + '@' + Var('lss_revision'),
454     'src/third_party/requests/src':
455       Var('chromium_git') + '/external/github.com/kennethreitz/requests.git' + '@' + 'f172b30356d821d180fa4ecfa3e71c7274a32de4',
457   },
461 include_rules = [
462   # Everybody can use some things.
463   # NOTE: THIS HAS TO STAY IN SYNC WITH third_party/DEPS which disallows these.
464   '+base',
465   '+build',
466   '+ipc',
468   # Everybody can use headers generated by tools/generate_library_loader.
469   '+library_loaders',
471   '+testing',
472   '+third_party/icu/source/common/unicode',
473   '+third_party/icu/source/i18n/unicode',
474   '+url',
478 # checkdeps.py shouldn't check include paths for files in these dirs:
479 skip_child_includes = [
480   'breakpad',
481   'native_client_sdk',
482   'out',
483   'sdch',
484   'skia',
485   'testing',
486   'v8',
487   'win8',
491 hooks = [
492   {
493     # This clobbers when necessary (based on get_landmines.py). It must be the
494     # first hook so that other things that get/generate into the output
495     # directory will not subsequently be clobbered.
496     'name': 'landmines',
497     'pattern': '.',
498     'action': [
499         'python',
500         'src/build/landmines.py',
501     ],
502   },
503   {
504     # This downloads binaries for Native Client's newlib toolchain.
505     # Done in lieu of building the toolchain from scratch as it can take
506     # anywhere from 30 minutes to 4 hours depending on platform to build.
507     'name': 'nacltools',
508     'pattern': '.',
509     'action': [
510         'python',
511         'src/build/download_nacl_toolchains.py',
512         '--mode', 'nacl_core_sdk',
513         'sync', '--extract',
514     ],
515   },
516   {
517     # This downloads SDK extras and puts them in the
518     # third_party/android_tools/sdk/extras directory on the bots. Developers
519     # need to manually install these packages and accept the ToS.
520     'name': 'sdkextras',
521     'pattern': '.',
522     # When adding a new sdk extras package to download, add the package
523     # directory and zip file to .gitignore in third_party/android_tools.
524     'action': ['python', 'src/build/download_sdk_extras.py'],
525   },
526   {
527     # Downloads the Debian Wheezy sysroot to chrome/installer/linux if needed.
528     # This sysroot updates at about the same rate that the chrome build deps
529     # change. This script is a no-op except for linux users who are doing
530     # official chrome builds.
531     'name': 'sysroot',
532     'pattern': '.',
533     'action': [
534         'python',
535         'src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py',
536         '--running-as-hook'],
537   },
538   {
539     # Update the Windows toolchain if necessary.
540     'name': 'win_toolchain',
541     'pattern': '.',
542     'action': ['python', 'src/build/vs_toolchain.py', 'update'],
543   },
544   # Pull binutils for linux, enabled debug fission for faster linking /
545   # debugging when used with clang on Ubuntu Precise.
546   # https://code.google.com/p/chromium/issues/detail?id=352046
547   {
548     'name': 'binutils',
549     'pattern': 'src/third_party/binutils',
550     'action': [
551         'python',
552         'src/third_party/binutils/download.py',
553     ],
554   },
555   {
556     # Pull clang if needed or requested via GYP_DEFINES.
557     # Note: On Win, this should run after win_toolchain, as it may use it.
558     'name': 'clang',
559     'pattern': '.',
560     'action': ['python', 'src/tools/clang/scripts/update.py', '--if-needed'],
561   },
562   {
563     # Update LASTCHANGE.
564     'name': 'lastchange',
565     'pattern': '.',
566     'action': ['python', 'src/build/util/lastchange.py',
567                '-o', 'src/build/util/LASTCHANGE'],
568   },
569   {
570     # Update LASTCHANGE.blink.
571     'name': 'lastchange',
572     'pattern': '.',
573     'action': ['python', 'src/build/util/lastchange.py',
574                '-s', 'src/third_party/WebKit',
575                '-o', 'src/build/util/LASTCHANGE.blink'],
576   },
577   # Pull GN binaries. This needs to be before running GYP below.
578   {
579     'name': 'gn_win',
580     'pattern': '.',
581     'action': [ 'download_from_google_storage',
582                 '--no_resume',
583                 '--platform=win32',
584                 '--no_auth',
585                 '--bucket', 'chromium-gn',
586                 '-s', 'src/buildtools/win/gn.exe.sha1',
587     ],
588   },
589   {
590     'name': 'gn_mac',
591     'pattern': '.',
592     'action': [ 'download_from_google_storage',
593                 '--no_resume',
594                 '--platform=darwin',
595                 '--no_auth',
596                 '--bucket', 'chromium-gn',
597                 '-s', 'src/buildtools/mac/gn.sha1',
598     ],
599   },
600   {
601     'name': 'gn_linux64',
602     'pattern': '.',
603     'action': [ 'download_from_google_storage',
604                 '--no_resume',
605                 '--platform=linux*',
606                 '--no_auth',
607                 '--bucket', 'chromium-gn',
608                 '-s', 'src/buildtools/linux64/gn.sha1',
609     ],
610   },
611   # Pull clang-format binaries using checked-in hashes.
612   {
613     'name': 'clang_format_win',
614     'pattern': '.',
615     'action': [ 'download_from_google_storage',
616                 '--no_resume',
617                 '--platform=win32',
618                 '--no_auth',
619                 '--bucket', 'chromium-clang-format',
620                 '-s', 'src/buildtools/win/clang-format.exe.sha1',
621     ],
622   },
623   {
624     'name': 'clang_format_mac',
625     'pattern': '.',
626     'action': [ 'download_from_google_storage',
627                 '--no_resume',
628                 '--platform=darwin',
629                 '--no_auth',
630                 '--bucket', 'chromium-clang-format',
631                 '-s', 'src/buildtools/mac/clang-format.sha1',
632     ],
633   },
634   {
635     'name': 'clang_format_linux',
636     'pattern': '.',
637     'action': [ 'download_from_google_storage',
638                 '--no_resume',
639                 '--platform=linux*',
640                 '--no_auth',
641                 '--bucket', 'chromium-clang-format',
642                 '-s', 'src/buildtools/linux64/clang-format.sha1',
643     ],
644   },
645   # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
646   {
647     'name': 'luci-go_win',
648     'pattern': '.',
649     'action': [ 'download_from_google_storage',
650                 '--no_resume',
651                 '--platform=win32',
652                 '--no_auth',
653                 '--bucket', 'chromium-luci',
654                 '-d', 'src/tools/luci-go/win64',
655     ],
656   },
657   {
658     'name': 'luci-go_mac',
659     'pattern': '.',
660     'action': [ 'download_from_google_storage',
661                 '--no_resume',
662                 '--platform=darwin',
663                 '--no_auth',
664                 '--bucket', 'chromium-luci',
665                 '-d', 'src/tools/luci-go/mac64',
666     ],
667   },
668   {
669     'name': 'luci-go_linux',
670     'pattern': '.',
671     'action': [ 'download_from_google_storage',
672                 '--no_resume',
673                 '--platform=linux*',
674                 '--no_auth',
675                 '--bucket', 'chromium-luci',
676                 '-d', 'src/tools/luci-go/linux64',
677     ],
678   },
679   # Pull eu-strip binaries using checked-in hashes.
680   {
681     'name': 'eu-strip',
682     'pattern': '.',
683     'action': [ 'download_from_google_storage',
684                 '--no_resume',
685                 '--platform=linux*',
686                 '--no_auth',
687                 '--bucket', 'chromium-eu-strip',
688                 '-s', 'src/build/linux/bin/eu-strip.sha1',
689     ],
690   },
691   {
692     'name': 'drmemory',
693     'pattern': '.',
694     'action': [ 'download_from_google_storage',
695                 '--no_resume',
696                 '--platform=win32',
697                 '--no_auth',
698                 '--bucket', 'chromium-drmemory',
699                 '-s', 'src/third_party/drmemory/drmemory-windows-sfx.exe.sha1',
700               ],
701   },
702   # Pull the Syzygy binaries, used for optimization and instrumentation.
703   {
704     'name': 'syzygy-binaries',
705     'pattern': '.',
706     'action': ['python',
707                'src/build/get_syzygy_binaries.py',
708                '--output-dir=src/third_party/syzygy/binaries',
709                '--revision=e50a9822fc8aeb5e7902da5e2940ea135d732e57',
710                '--overwrite',
711     ],
712   },
713   {
714     'name': 'kasko',
715     'pattern': '.',
716     'action': ['python',
717                'src/build/get_syzygy_binaries.py',
718                '--output-dir=src/third_party/kasko',
719                '--revision=9d16d06290d1c3d326cc37753560c8120021c938',
720                '--resource=kasko.zip',
721                '--resource=kasko_symbols.zip',
722                '--overwrite',
723     ],
724   },
725   {
726     'name': 'apache_win32',
727     'pattern': '\\.sha1',
728     'action': [ 'download_from_google_storage',
729                 '--no_resume',
730                 '--platform=win32',
731                 '--directory',
732                 '--recursive',
733                 '--no_auth',
734                 '--num_threads=16',
735                 '--bucket', 'chromium-apache-win32',
736                 'src/third_party/apache-win32',
737     ],
738   },
739   # Pull the mojo_shell binary, used for mojo development
740   {
741     'name': 'download_mojo_shell',
742     'pattern': '',
743     'action': [ 'python',
744                 'src/third_party/mojo/src/mojo/public/tools/download_shell_binary.py',
745                 '--tools-directory=../../../../../../tools',
746               ],
747   },
748   {
749     # Pull sanitizer-instrumented third-party libraries if requested via
750     # GYP_DEFINES.
751     'name': 'instrumented_libraries',
752     'pattern': '\\.sha1',
753     'action': ['python', 'src/third_party/instrumented_libraries/scripts/download_binaries.py'],
754   },
755   {
756     # Ensure that while generating dependencies lists in .gyp files we don't
757     # accidentally reference any .pyc files whose corresponding .py files have
758     # already been deleted.
759     # We should actually try to avoid generating .pyc files, crbug.com/500078.
760     'name': 'remove_stale_pyc_files',
761     'pattern': '.',
762     'action': [
763         'python',
764         'src/tools/remove_stale_pyc_files.py',
765         'src/android_webview/tools',
766         'src/gpu/gles2_conform_support',
767         'src/ppapi',
768         'src/printing',
769         'src/third_party/closure_compiler/build',
770         'src/tools',
771     ],
772   },
773   {
774     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
775     'name': 'gyp',
776     'pattern': '.',
777     'action': ['python', 'src/build/gyp_chromium'],
778   },
779   {
780     # Verify committers' ~/.netc, gclient and git are properly configured for
781     # write access to the git repo. To be removed sometime after Chrome to git
782     # migration completes (let's say Sep 1 2014).
783     'name': 'check_git_config',
784     'pattern': '.',
785     'action': [
786         'python',
787         'src/tools/check_git_config.py',
788         '--running-as-hook',
789     ],
790   },