blob: f0ed01a4a64e980f9835ac59bba5faf78bf24a1d [file] [log] [blame]
kjellander@webrtc.org89256622014-08-20 12:10:11 +00001# This file contains dependencies for WebRTC that are not shared with Chromium.
2# If you wish to add a dependency that is present in Chromium's src/DEPS or a
3# directory from the Chromium checkout, you should add it to setup_links.py
4# instead.
5
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +00006vars = {
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +00007 'extra_gyp_flag': '-Dextra_gyp_flag=0',
8 'chromium_git': 'https://chromium.googlesource.com',
tnakamuraaa97df42015-07-08 10:34:40 -07009 'chromium_revision': 'f8d6ba9efdddfb3aa0dfc01cd579f500a2de0b8d',
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000010}
11
12# NOTE: Prefer revision numbers to tags for svn deps. Use http rather than
13# https; the latter can cause problems for users behind proxies.
14deps = {
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +000015 # When rolling gflags, also update
16 # https://chromium.googlesource.com/chromium/deps/webrtc/webrtc.DEPS
17 'src/third_party/gflags/src':
18 Var('chromium_git') + '/external/gflags/src@e7390f9185c75f8d902c05ed7d20bb94eb914d0c', # from svn revision 82
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000019
Henrik Kjellander10ba3ee2015-04-29 14:47:53 +020020 'src/third_party/junit-jar':
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +000021 Var('chromium_git') + '/external/webrtc/deps/third_party/junit@f35596b476aa6e62fd3b3857b9942ddcd13ce35e', # from svn revision 3367
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000022}
23
24deps_os = {
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +000025 'win': {
26 'src/third_party/winsdk_samples/src':
kjellander@webrtc.org8649fed2015-01-08 21:22:01 +000027 Var('chromium_git') + '/external/webrtc/deps/third_party/winsdk_samples_v71@c0cbedd854cb610a53226d9817416c4ab9a7d1e9', # from svn revision 7951
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000028 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000029}
30
kjellander@webrtc.orgafefed52014-10-01 06:03:47 +000031# Define rules for which include paths are allowed in our source.
kjellander@webrtc.org3bd41562014-09-01 11:06:37 +000032include_rules = [
33 # Base is only used to build Android APK tests and may not be referenced by
34 # WebRTC production code.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +000035 '-base',
36 '-chromium',
Ivo Creusen747d5f62015-06-23 10:08:11 +020037 '+external/webrtc/webrtc', # Android platform build.
kjellander@webrtc.orgafefed52014-10-01 06:03:47 +000038 '+gflags',
kjellander@webrtc.orgd7e34e12015-01-26 19:17:26 +000039 '+libyuv',
kjellander@webrtc.org561a9ec2014-09-02 09:39:35 +000040 '+net',
41 '+talk',
42 '+testing',
kjellander@webrtc.orgafefed52014-10-01 06:03:47 +000043 '+third_party',
Henrik Kjellander35259542015-04-23 08:58:21 +020044 '+unicode',
kjellander@webrtc.org561a9ec2014-09-02 09:39:35 +000045 '+webrtc',
Henrik Boström9695d852015-05-06 10:42:15 +020046 '+vpx',
kjellander@webrtc.org561a9ec2014-09-02 09:39:35 +000047]
48
49# checkdeps.py shouldn't check include paths for files in these dirs:
50skip_child_includes = [
pbos@webrtc.orgdc8dcb42014-09-17 07:44:33 +000051 'webrtc/overrides',
kjellander@webrtc.org3bd41562014-09-01 11:06:37 +000052]
53
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000054hooks = [
55 {
kjellander@webrtc.org0b0ac822014-10-09 09:11:27 +000056 # Check for legacy named top-level dir (named 'trunk').
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +000057 'name': 'check_root_dir_name',
58 'pattern': '.',
59 'action': ['python','-c',
60 ('import os,sys;'
61 'script = os.path.join("trunk","check_root_dir.py");'
62 '_ = os.system("%s %s" % (sys.executable,script)) '
63 'if os.path.exists(script) else 0')],
kjellander@webrtc.org0b0ac822014-10-09 09:11:27 +000064 },
65 {
kjellander@webrtc.org89256622014-08-20 12:10:11 +000066 # Clone chromium and its deps.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +000067 'name': 'sync chromium',
68 'pattern': '.',
69 'action': ['python', '-u', 'src/sync_chromium.py',
70 '--target-revision', Var('chromium_revision')],
wjia@webrtc.org03cfde22014-01-14 17:48:34 +000071 },
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000072 {
kjellander@webrtc.org89256622014-08-20 12:10:11 +000073 # Create links to shared dependencies in Chromium.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +000074 'name': 'setup_links',
75 'pattern': '.',
76 'action': ['python', 'src/setup_links.py'],
kjellander@webrtc.org27ab19d2014-06-21 19:30:29 +000077 },
78 {
Henrik Kjellandera49f5152015-03-25 13:48:55 +010079 # Pull sanitizer-instrumented third-party libraries if requested via
80 # GYP_DEFINES. This could be done as part of sync_chromium.py above
81 # but then we would need to run all the Chromium hooks each time,
82 # which will slow things down a lot.
83 'name': 'instrumented_libraries',
84 'pattern': '\\.sha1',
85 'action': ['python', 'src/third_party/instrumented_libraries/scripts/download_binaries.py'],
86 },
87 {
kjellander@webrtc.org80174582013-11-04 12:07:57 +000088 # Download test resources, i.e. video and audio files from Google Storage.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +000089 'pattern': '.',
90 'action': ['download_from_google_storage',
91 '--directory',
92 '--recursive',
93 '--num_threads=10',
94 '--no_auth',
95 '--bucket', 'chromium-webrtc-resources',
96 'src/resources'],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000097 },
98 {
99 # A change to a .gyp, .gypi, or to GYP itself should run the generator.
kjellander@webrtc.org8e5c8142014-12-03 07:11:44 +0000100 'name': 'gyp',
101 'pattern': '.',
102 'action': ['python', 'src/webrtc/build/gyp_webrtc',
103 Var('extra_gyp_flag')],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000104 },
105]
106