1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
| # This file contains dependencies for WebRTC that are not shared with Chromium.
| # If you wish to add a dependency that is present in Chromium's src/DEPS or a
| # directory from the Chromium checkout, you should add it to setup_links.py
| # instead.
|
| vars = {
| 'extra_gyp_flag': '-Dextra_gyp_flag=0',
| 'chromium_git': 'https://chromium.googlesource.com',
| 'chromium_revision': '099be58b08dadb64b1dc9f359ae097e978df5416',
| }
|
| # NOTE: Prefer revision numbers to tags for svn deps. Use http rather than
| # https; the latter can cause problems for users behind proxies.
| deps = {
| # When rolling gflags, also update
| # https://chromium.googlesource.com/chromium/deps/webrtc/webrtc.DEPS
| 'src/third_party/gflags/src':
| Var('chromium_git') + '/external/gflags/src@e7390f9185c75f8d902c05ed7d20bb94eb914d0c', # from svn revision 82
|
| 'src/third_party/junit-jar':
| Var('chromium_git') + '/external/webrtc/deps/third_party/junit@f35596b476aa6e62fd3b3857b9942ddcd13ce35e', # from svn revision 3367
| }
|
| deps_os = {
| 'win': {
| 'src/third_party/winsdk_samples/src':
| Var('chromium_git') + '/external/webrtc/deps/third_party/winsdk_samples_v71@e71b549167a665d7424d6f1dadfbff4b4aad1589',
| },
| }
|
| # Define rules for which include paths are allowed in our source.
| include_rules = [
| # Base is only used to build Android APK tests and may not be referenced by
| # WebRTC production code.
| '-base',
| '-chromium',
| '+external/webrtc/webrtc', # Android platform build.
| '+gflags',
| '+libyuv',
| '+net',
| '+talk',
| '+testing',
| '+third_party',
| '+unicode',
| '+webrtc',
| '+vpx',
| ]
|
| hooks = [
| {
| # Check for legacy named top-level dir (named 'trunk').
| 'name': 'check_root_dir_name',
| 'pattern': '.',
| 'action': ['python','-c',
| ('import os,sys;'
| 'script = os.path.join("trunk","check_root_dir.py");'
| '_ = os.system("%s %s" % (sys.executable,script)) '
| 'if os.path.exists(script) else 0')],
| },
| {
| # Clone chromium and its deps.
| 'name': 'sync chromium',
| 'pattern': '.',
| 'action': ['python', '-u', 'src/sync_chromium.py',
| '--target-revision', Var('chromium_revision')],
| },
| {
| # Create links to shared dependencies in Chromium.
| 'name': 'setup_links',
| 'pattern': '.',
| 'action': ['python', 'src/setup_links.py'],
| },
| {
| # This clobbers when necessary (based on get_landmines.py). It should be
| # an early hook but it will need to be run after syncing Chromium and
| # setting up the links, so the script actually exists.
| 'name': 'landmines',
| 'pattern': '.',
| 'action': [
| 'python',
| 'src/build/landmines.py',
| '--landmine-scripts',
| 'src/webrtc/build/get_landmines.py',
| '--src-dir',
| 'src',
| ],
| },
| {
| # Pull sanitizer-instrumented third-party libraries if requested via
| # GYP_DEFINES. This could be done as part of sync_chromium.py above
| # but then we would need to run all the Chromium hooks each time,
| # which will slow things down a lot.
| 'name': 'instrumented_libraries',
| 'pattern': '\\.sha1',
| 'action': ['python', 'src/third_party/instrumented_libraries/scripts/download_binaries.py'],
| },
| {
| # Download test resources, i.e. video and audio files from Google Storage.
| 'pattern': '.',
| 'action': ['download_from_google_storage',
| '--directory',
| '--recursive',
| '--num_threads=10',
| '--no_auth',
| '--quiet',
| '--bucket', 'chromium-webrtc-resources',
| 'src/resources'],
| },
| {
| # A change to a .gyp, .gypi, or to GYP itself should run the generator.
| 'name': 'gyp',
| 'pattern': '.',
| 'action': ['python', 'src/webrtc/build/gyp_webrtc',
| Var('extra_gyp_flag')],
| },
| ]
|
|