Android WebView: build debug/release based on variant.
[chromium-blink-merge.git] / DEPS
blob8088679869790e2b40395be2c434a7471efb220a
1 # When adding a new dependency, please update the top-level .gitignore file
2 # to list the dependency's destination directory.
4 vars = {
5   # Use this googlecode_url variable only if there is an internal mirror for it.
6   # If you do not know, use the full path while defining your new deps entry.
7   "googlecode_url": "http://%s.googlecode.com/svn",
8   "sourceforge_url": "http://%(repo)s.svn.sourceforge.net/svnroot/%(repo)s",
9   "webkit_trunk": "http://src.chromium.org/blink/trunk",
10   "nacl_trunk": "http://src.chromium.org/native_client/trunk",
11   "webkit_revision": "153000",
12   "chromium_git": "https://chromium.googlesource.com",
13   "chromiumos_git": "https://chromium.googlesource.com/chromiumos",
14   "swig_revision": "69281",
15   "nacl_revision": "11601",
16   # After changing nacl_revision, run 'glient sync' and check native_client/DEPS
17   # to update other nacl_*_revision's.
18   "nacl_tools_revision": "11437",  # native_client/DEPS: tools_rev
19   "gtm_revision": "608",
21   "libjingle_revision": "347",
22   "libphonenumber_revision": "584",
23   "libvpx_revision": "208227",
24   "lss_revision": "20",
26   # These two FFmpeg variables must be updated together.  One is used for SVN
27   # checkouts and the other for Git checkouts.
28   "ffmpeg_revision": "203786",
29   "ffmpeg_hash": "245a8c0cdfdd5ab3da9045089661017e9ddd8d0e",
31   "sfntly_revision": "134",
32   "skia_revision": "9712",
33   # Three lines of non-changing comments so that
34   # the commit queue can handle CLs rolling Skia
35   # and V8 without interference from each other.
36   "v8_revision": "15255",
37   # Three lines of non-changing comments so that
38   # the commit queue can handle CLs rolling WebRTC
39   # and V8 without interference from each other.
40   "webrtc_revision": "4253",
41   "jsoncpp_revision": "248",
42   "nss_revision": "206843",
43   # Three lines of non-changing comments so that
44   # the commit queue can handle CLs rolling swarm_client
45   # and whatever else without interference from each other.
46   "swarm_revision": "207274",
47   # Three lines of non-changing comments so that
48   # the commit queue can handle CLs rolling openssl
49   # and whatever else without interference from each other.
50   "openssl_revision": "207965",
53 deps = {
54   "src/breakpad/src":
55     (Var("googlecode_url") % "google-breakpad") + "/trunk/src@1182",
57   "src/googleurl":
58     (Var("googlecode_url") % "google-url") + "/trunk@185",
60   "src/sdch/open-vcdiff":
61     (Var("googlecode_url") % "open-vcdiff") + "/trunk@42",
63   "src/testing/gtest":
64     (Var("googlecode_url") % "googletest") + "/trunk@629",
66   "src/testing/gmock":
67     (Var("googlecode_url") % "googlemock") + "/trunk@410",
69   "src/third_party/angle_dx11":
70     Var("chromium_git") +
71     "/external/angle.git@f576cb24c8fc02d3f2fb90faebdcf333fb27892f",
73   "src/third_party/trace-viewer":
74     (Var("googlecode_url") % "trace-viewer") + "/trunk@653",
76   "src/third_party/WebKit":
77     Var("webkit_trunk") + "@" + Var("webkit_revision"),
79   "src/third_party/icu":
80     "/trunk/deps/third_party/icu46@205936",
82   "src/third_party/libexif/sources":
83     "/trunk/deps/third_party/libexif/sources@146817",
85   "src/third_party/hunspell":
86    "/trunk/deps/third_party/hunspell@206172",
88   "src/third_party/hunspell_dictionaries":
89     "/trunk/deps/third_party/hunspell_dictionaries@193701",
91   "src/third_party/safe_browsing/testing":
92     (Var("googlecode_url") % "google-safe-browsing") + "/trunk/testing@112",
94   "src/third_party/cacheinvalidation/src":
95     (Var("googlecode_url") % "google-cache-invalidation-api") +
96     "/trunk/src@309",
98   "src/third_party/leveldatabase/src":
99     (Var("googlecode_url") % "leveldb") + "/trunk@75",
101   "src/third_party/snappy/src":
102     (Var("googlecode_url") % "snappy") + "/trunk@74",
104   "src/tools/grit":
105     (Var("googlecode_url") % "grit-i18n") + "/trunk@127",
107   "src/tools/gyp":
108     (Var("googlecode_url") % "gyp") + "/trunk@1654",
110   "src/tools/swarm_client":
111     "/trunk/tools/swarm_client@" + Var("swarm_revision"),
113   "src/v8":
114     (Var("googlecode_url") % "v8") + "/trunk@" + Var("v8_revision"),
116   "src/native_client":
117     Var("nacl_trunk") + "/src/native_client@" + Var("nacl_revision"),
119   "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin":
120     Var("nacl_trunk") + "/src/native_client/tests/prebuilt@" +
121     Var("nacl_revision"),
123   "src/third_party/sfntly/cpp/src":
124     (Var("googlecode_url") % "sfntly") + "/trunk/cpp/src@" +
125     Var("sfntly_revision"),
127   "src/third_party/skia/src":
128     (Var("googlecode_url") % "skia") + "/trunk/src@" + Var("skia_revision"),
130   "src/third_party/skia/gyp":
131     (Var("googlecode_url") % "skia") + "/trunk/gyp@" + Var("skia_revision"),
133   "src/third_party/skia/include":
134     (Var("googlecode_url") % "skia") + "/trunk/include@" + Var("skia_revision"),
136   "src/third_party/ots":
137     (Var("googlecode_url") % "ots") + "/trunk@102",
139   "src/tools/page_cycler/acid3":
140     "/trunk/deps/page_cycler/acid3@171600",
142   "src/chrome/test/data/perf/canvas_bench":
143     "/trunk/deps/canvas_bench@122605",
145   "src/chrome/test/data/perf/frame_rate/content":
146     "/trunk/deps/frame_rate/content@93671",
148   "src/chrome/test/data/perf/third_party/octane":
149     (Var("googlecode_url") % "octane-benchmark") + "/trunk@19",
151   "src/third_party/bidichecker":
152     (Var("googlecode_url") % "bidichecker") + "/trunk/lib@4",
154   "src/third_party/v8-i18n":
155     (Var("googlecode_url") % "v8-i18n") + "/trunk@191",
157   # When roll to another webgl conformance tests revision, please goto
158   # chrome/test/gpu and run generate_webgl_conformance_test_list.py.
159   "src/third_party/webgl_conformance":
160     "/trunk/deps/third_party/webgl/sdk/tests@202601",
162   "src/third_party/swig/Lib":
163     "/trunk/deps/third_party/swig/Lib@" + Var("swig_revision"),
165   # Make sure you update the two functional.DEPS and webdriver.DEPS too.
166   "src/third_party/webdriver/pylib":
167     (Var("googlecode_url") % "selenium") + "/trunk/py@18337",
169   "src/third_party/libvpx":
170     "/trunk/deps/third_party/libvpx@" +
171     Var("libvpx_revision"),
173   "src/third_party/ffmpeg":
174     "/trunk/deps/third_party/ffmpeg@" +
175     Var("ffmpeg_revision"),
177   "src/third_party/libjingle/source":
178     (Var("googlecode_url") % "libjingle") + "/trunk@" +
179     Var("libjingle_revision"),
181   "src/third_party/usrsctp/usrsctplib":
182     (Var("googlecode_url") % "sctp-refimpl") +
183     "/trunk/KERN/usrsctp/usrsctplib@8463",
185   "src/third_party/libsrtp":
186     "/trunk/deps/third_party/libsrtp@189528",
188   "src/third_party/speex":
189     "/trunk/deps/third_party/speex@198168",
191   "src/third_party/yasm/source/patched-yasm":
192     "/trunk/deps/third_party/yasm/patched-yasm@167605",
194   "src/third_party/libjpeg_turbo":
195     "/trunk/deps/third_party/libjpeg_turbo@177737",
197   "src/third_party/flac":
198     "/trunk/deps/third_party/flac@198139",
200   "src/third_party/pyftpdlib/src":
201     (Var("googlecode_url") % "pyftpdlib") + "/trunk@977",
203   "src/third_party/scons-2.0.1":
204     Var("nacl_trunk") + "/src/third_party/scons-2.0.1@" +
205         Var("nacl_tools_revision"),
207   "src/third_party/webrtc":
208     (Var("googlecode_url") % "webrtc") + "/stable/webrtc@" + Var("webrtc_revision"),
210   "src/third_party/openmax_dl":
211     (Var("googlecode_url") % "webrtc") + "/deps/third_party/openmax@4148",
213   "src/third_party/jsoncpp/source/include":
214     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
215         "/trunk/jsoncpp/include@" + Var("jsoncpp_revision"),
217   "src/third_party/jsoncpp/source/src/lib_json":
218     (Var("sourceforge_url") % {"repo": "jsoncpp"}) +
219         "/trunk/jsoncpp/src/lib_json@" + Var("jsoncpp_revision"),
221   "src/third_party/libyuv":
222     (Var("googlecode_url") % "libyuv") + "/trunk@723",
224   "src/third_party/smhasher/src":
225     (Var("googlecode_url") % "smhasher") + "/trunk@149",
227   "src/third_party/libphonenumber/src/phonenumbers":
228      (Var("googlecode_url") % "libphonenumber") +
229          "/trunk/cpp/src/phonenumbers@" + Var("libphonenumber_revision"),
230   "src/third_party/libphonenumber/src/test":
231      (Var("googlecode_url") % "libphonenumber") + "/trunk/cpp/test@" +
232          Var("libphonenumber_revision"),
233   "src/third_party/libphonenumber/src/resources":
234      (Var("googlecode_url") % "libphonenumber") + "/trunk/resources@" +
235          Var("libphonenumber_revision"),
237   "src/tools/deps2git":
238     "/trunk/tools/deps2git@202885",
240   "src/third_party/webpagereplay":
241     (Var("googlecode_url") % "web-page-replay") + "/trunk@515",
243   "src/third_party/pywebsocket/src":
244     (Var("googlecode_url") % "pywebsocket") + "/trunk/src@662",
246   "src/third_party/opus/src":
247     "/trunk/deps/third_party/opus@185324",
249   "src/third_party/accessibility-developer-tools":
250     Var("chromium_git") + "/external/accessibility-developer-tools.git@ad5df9a5341d38778658c90e4aa241c4ebe4e8aa",
252   "src/webkit/renderer/media/crypto/ppapi/cdm":
253     "/trunk/deps/cdm@181763",
255   "src/third_party/mesa/src":
256     "/trunk/deps/third_party/mesa@204346",
260 deps_os = {
261   "win": {
262     "src/chrome/tools/test/reference_build/chrome_win":
263       "/trunk/deps/reference_builds/chrome_win@197743",
265     "src/third_party/cygwin":
266       "/trunk/deps/third_party/cygwin@133786",
268     "src/third_party/python_26":
269       "/trunk/tools/third_party/python_26@89111",
271     "src/third_party/psyco_win32":
272       "/trunk/deps/third_party/psyco_win32@79861",
274     "src/third_party/bison":
275       "/trunk/deps/third_party/bison@147303",
277     "src/third_party/gperf":
278       "/trunk/deps/third_party/gperf@147304",
280     "src/third_party/perl":
281       "/trunk/deps/third_party/perl@147900",
283     "src/third_party/lighttpd":
284       "/trunk/deps/third_party/lighttpd@33727",
286     # Chrome Frame related deps
287     "src/third_party/xulrunner-sdk":
288       "/trunk/deps/third_party/xulrunner-sdk@119756",
289     "src/chrome_frame/tools/test/reference_build/chrome_win":
290       "/trunk/deps/reference_builds/chrome_win@89574",
292     # Parses Windows PE/COFF executable format.
293     "src/third_party/pefile":
294       (Var("googlecode_url") % "pefile") + "/trunk@63",
296     # NSS, for SSLClientSocketNSS.
297     "src/third_party/nss":
298       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
300     "src/third_party/swig/win":
301       "/trunk/deps/third_party/swig/win@" + Var("swig_revision"),
303     # GNU binutils assembler for x86-32.
304     "src/third_party/gnu_binutils":
305       (Var("nacl_trunk") + "/deps/third_party/gnu_binutils@" +
306        Var("nacl_tools_revision")),
307     # GNU binutils assembler for x86-64.
308     "src/third_party/mingw-w64/mingw/bin":
309       (Var("nacl_trunk") + "/deps/third_party/mingw-w64/mingw/bin@" +
310        Var("nacl_tools_revision")),
312     # Dependencies used by libjpeg-turbo
313     "src/third_party/yasm/binaries":
314       "/trunk/deps/third_party/yasm/binaries@154708",
316     # Binary level profile guided optimizations. This points to the
317     # latest release binaries for the toolchain.
318     "src/third_party/syzygy/binaries":
319       (Var("googlecode_url") % "sawbuck") + "/trunk/syzygy/binaries@1584",
321     # Binaries for nacl sdk.
322     "src/third_party/nacl_sdk_binaries":
323       "/trunk/deps/third_party/nacl_sdk_binaries@111576",
324   },
325   "ios": {
326     "src/third_party/GTM":
327       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
328       Var("gtm_revision"),
330     "src/third_party/nss":
331       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
333     # class-dump utility to generate header files for undocumented SDKs
334     "src/testing/iossim/third_party/class-dump":
335       "/trunk/deps/third_party/class-dump@199203",
337     # Code that's not needed due to not building everything
338     "src/build/util/support": None,
339     "src/chrome/test/data/extensions/api_test/permissions/nacl_enabled/bin": None,
340     "src/chrome/test/data/perf/canvas_bench": None,
341     "src/chrome/test/data/perf/frame_rate/content": None,
342     "src/native_client": None,
343     "src/native_client/src/third_party/ppapi": None,
344     "src/third_party/angle": None,
345     "src/third_party/angle_dx11": None,
346     "src/third_party/bidichecker": None,
347     "src/third_party/webgl_conformance": None,
348     "src/third_party/ffmpeg": None,
349     "src/third_party/hunspell_dictionaries": None,
350     "src/third_party/hunspell": None,
351     "src/third_party/leveldatabase/src": None,
352     "src/third_party/libexif/sources": None,
353     "src/third_party/libjpeg_turbo": None,
354     "src/third_party/libphonenumber/src/phonenumbers": None,
355     "src/third_party/libphonenumber/src/test": None,
356     "src/third_party/libphonenumber/src/resources": None,
357     "src/third_party/libsrtp": None,
358     "src/third_party/usrsctp/usrsctplib": None,
359     "src/third_party/libvpx": None,
360     "src/third_party/libyuv": None,
361     "src/third_party/ots": None,
362     "src/third_party/pylib": None,
363     "src/third_party/pymox/src": None,
364     "src/third_party/safe_browsing/testing": None,
365     "src/third_party/scons-2.0.1": None,
366     "src/third_party/sfntly/cpp/src": None,
367     "src/third_party/smhasher/src": None,
368     "src/third_party/snappy/src": None,
369     "src/third_party/swig/Lib": None,
370     "src/third_party/undoview": None,
371     "src/third_party/v8-i18n": None,
372     "src/third_party/webdriver/pylib": None,
373     "src/third_party/webpagereplay": None,
374     "src/third_party/webrtc": None,
375     "src/third_party/yasm/source/patched-yasm": None,
376     "src/tools/page_cycler/acid3": None,
377     "src/v8": None,
378   },
379   "mac": {
380     "src/chrome/tools/test/reference_build/chrome_mac":
381       "/trunk/deps/reference_builds/chrome_mac@197743",
383     "src/third_party/GTM":
384       (Var("googlecode_url") % "google-toolbox-for-mac") + "/trunk@" +
385       Var("gtm_revision"),
386     "src/third_party/pdfsqueeze":
387       (Var("googlecode_url") % "pdfsqueeze") + "/trunk@5",
388     "src/third_party/lighttpd":
389       "/trunk/deps/third_party/lighttpd@33737",
391     "src/third_party/swig/mac":
392       "/trunk/deps/third_party/swig/mac@" + Var("swig_revision"),
394     # NSS, for SSLClientSocketNSS.
395     "src/third_party/nss":
396       "/trunk/deps/third_party/nss@" + Var("nss_revision"),
398     "src/chrome/installer/mac/third_party/xz/xz":
399       "/trunk/deps/third_party/xz@189101",
400   },
401   "unix": {
402     # Linux, really.
403     "src/chrome/tools/test/reference_build/chrome_linux":
404       "/trunk/deps/reference_builds/chrome_linux@197743",
406     "src/third_party/xdg-utils":
407       "/trunk/deps/third_party/xdg-utils@203785",
409     "src/third_party/swig/linux":
410       "/trunk/deps/third_party/swig/linux@" + Var("swig_revision"),
412     "src/third_party/lss":
413       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
414        Var("lss_revision")),
416     "src/third_party/openssl":
417       "/trunk/deps/third_party/openssl@" + Var("openssl_revision"),
419     "src/third_party/gold":
420       "/trunk/deps/third_party/gold@203758",
422     "src/third_party/libmtp":
423       "/trunk/deps/third_party/libmtp@206535",
425     # Used on Linux only. CrOS already has a copy.
426     "src/third_party/mtpd/source":
427       Var("chromiumos_git") + "/platform/mtpd.git" +
428       "@132604f107368f617a3073ba2d515b78641ceeed",
430     # Used on Linux only. CrOS already has a copy.
431     "src/third_party/cros_dbus_cplusplus/source":
432       Var("chromiumos_git") + "/third_party/dbus-cplusplus.git" +
433       "@5e8f6d9db5c2abfb91d91f751184f25bb5cd0900",
435     # For Linux and Chromium OS.
436     "src/third_party/cros_system_api":
437       Var("chromiumos_git") + "/platform/system_api.git" +
438       "@6172a6226134e6005d286573c068d7642eafd4c0",
440     # Note that this is different from Android's freetype repo.
441     "src/third_party/freetype2/src":
442       Var("chromium_git") + "/chromium/src/third_party/freetype2.git" +
443       "@d699c2994ecc178c4ed05ac2086061b2034c2178",
445     # Build tools for targeting ChromeOS.
446     "src/third_party/chromite":
447       Var("chromiumos_git") + "/chromite.git" +
448       "@785fedc51fc430445d8f397440012ea3b489bac9",
450     # Dependency of chromite.git.
451     "src/third_party/pyelftools":
452       Var("chromiumos_git") + "/third_party/pyelftools.git" +
453       "@bdc1d380acd88d4bfaf47265008091483b0d614e",
455     "src/third_party/undoview":
456       "/trunk/deps/third_party/undoview@119694",
457   },
458   "android": {
459     "src/third_party/android_tools":
460       Var("chromium_git") + "/android_tools.git" +
461       "@e9da75d5e88d3e122ac60ee1d642cdcc1acb2bd8",
463     "src/third_party/aosp":
464       "/trunk/deps/third_party/aosp@148330",
466     "src/third_party/apache-mime4j":
467       "/trunk/deps/third_party/apache-mime4j@170888",
469     "src/third_party/findbugs":
470       "/trunk/deps/third_party/findbugs@163586",
472     "src/third_party/freetype":
473       Var("chromium_git") + "/chromium/src/third_party/freetype.git" +
474       "@96551feab72aac26836e9aaf4fae0962d39d5ab0",
476     "src/third_party/guava/src":
477       Var("chromium_git") + "/external/guava-libraries.git" +
478       "@c523556ab7d0f05afadebd20e7768d4c16af8771",
480     "src/third_party/httpcomponents-client":
481       "/trunk/deps/third_party/httpcomponents-client@170888",
483     "src/third_party/httpcomponents-core":
484       "/trunk/deps/third_party/httpcomponents-core@170888",
486     "src/third_party/jarjar":
487       "/trunk/deps/third_party/jarjar@170888",
489     "src/third_party/jsr-305/src":
490       (Var("googlecode_url") % "jsr-305") + "/trunk@51",
492     "src/third_party/lss":
493       ((Var("googlecode_url") % "linux-syscall-support") + "/trunk/lss@" +
494        Var("lss_revision")),
496     "src/third_party/openssl":
497       "/trunk/deps/third_party/openssl@" + Var("openssl_revision"),
499     "src/third_party/eyesfree/src/android/java/src/com/googlecode/eyesfree/braille":
500       (Var("googlecode_url") % "eyes-free") + "/trunk/braille/client/src/com/googlecode/eyesfree/braille@797",
501   },
505 include_rules = [
506   # Everybody can use some things.
507   "+base",
508   "+build",
509   "+googleurl",
510   "+ipc",
512   # Everybody can use headers generated by tools/generate_library_loader.
513   "+library_loaders",
515   "+testing",
516   "+third_party/icu/public",
520 # checkdeps.py shouldn't check include paths for files in these dirs:
521 skip_child_includes = [
522   "breakpad",
523   "chrome_frame",
524   "delegate_execute",
525   "googleurl",
526   "metro_driver",
527   "native_client_sdk",
528   "o3d",
529   "pdf",
530   "sdch",
531   "skia",
532   "testing",
533   "third_party",
534   "v8",
535   "win8",
539 hooks = [
540   {
541     # This downloads binaries for Native Client's newlib toolchain.
542     # Done in lieu of building the toolchain from scratch as it can take
543     # anywhere from 30 minutes to 4 hours depending on platform to build.
544     "pattern": ".",
545     "action": [
546         "python", "src/build/download_nacl_toolchains.py",
547          "--no-arm-trusted",
548          "--keep",
549     ],
550   },
551   {
552     # Downloads an ARM sysroot image to src/arm-sysroot. This image updates
553     # at about the same rate that the chrome build deps change.
554     # This script is a no-op except for linux users who have
555     # target_arch=arm in their GYP_DEFINES.
556     "pattern": ".",
557     "action": ["python", "src/build/linux/install-arm-sysroot.py",
558                "--linux-only"],
559   },
560   {
561     # Downloads the Debian Wheezy sysroot to chrome/installer/linux if needed.
562     # This sysroot updates at about the same rate that the chrome build deps
563     # change. This script is a no-op except for linux users who are doing
564     # official chrome builds.
565     "pattern": ".",
566     "action": [
567         "python",
568         "src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py",
569         "--linux-only",
570         "--arch=amd64"],
571   },
572   {
573     # Same as above, but for 32-bit Linux.
574     "pattern": ".",
575     "action": [
576         "python",
577         "src/chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py",
578         "--linux-only",
579         "--arch=i386"],
580   },
581   {
582     # Pull clang on mac. If nothing changed, or on non-mac platforms, this takes
583     # zero seconds to run. If something changed, it downloads a prebuilt clang,
584     # which takes ~20s, but clang speeds up builds by more than 20s.
585     "pattern": ".",
586     "action": ["python", "src/tools/clang/scripts/update.py", "--mac-only"],
587   },
588   {
589     # Update the cygwin mount on Windows.
590     "pattern": ".",
591     "action": ["python", "src/build/win/setup_cygwin_mount.py", "--win-only"],
592   },
593   {
594     # Update LASTCHANGE. This is also run by export_tarball.py in
595     # src/tools/export_tarball - please keep them in sync.
596     "pattern": ".",
597     "action": ["python", "src/build/util/lastchange.py",
598                "-o", "src/build/util/LASTCHANGE"],
599   },
600   {
601     # Update LASTCHANGE.blink. This is also run by export_tarball.py in
602     # src/tools/export_tarball - please keep them in sync.
603     "pattern": ".",
604     "action": ["python", "src/build/util/lastchange.py",
605                "-s", "src/third_party/WebKit",
606                "-o", "src/build/util/LASTCHANGE.blink"],
607   },
608   {
609     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
610     "pattern": ".",
611     "action": ["python", "src/build/gyp_chromium"],
612   },
613   {
614     # Check for landmines (reasons to clobber the build).
615     "pattern": ".",
616     "action": ["python", "src/build/landmines.py"],
617   },