blob: c623be6d8ac6273e4ac1ca667b5810768140e8a3 [file] [log] [blame]
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +00001use_relative_paths = True
2
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +00003vars = {
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +00004 # Override root_dir in your .gclient's custom_vars to specify a custom root
5 # folder name.
6 "root_dir": "trunk",
andrew@webrtc.orgea5d0e52012-08-09 17:37:03 +00007 "extra_gyp_flag": "-Dextra_gyp_flag=0",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +00008
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +00009 # Use this googlecode_url variable only if there is an internal mirror for it.
10 # If you do not know, use the full path while defining your new deps entry.
11 "googlecode_url": "http://%s.googlecode.com/svn",
pbos@webrtc.org62e5af42013-08-20 09:19:16 +000012 "sourceforge_url": "http://svn.code.sf.net/p/%(repo)s/code",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000013 "chromium_trunk" : "http://src.chromium.org/svn/trunk",
kjellander@webrtc.org58bcdee2013-11-04 09:40:03 +000014 "chromium_revision": "231713",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000015
kjellander@webrtc.org430464c2013-06-04 16:29:45 +000016 # A small subset of WebKit is needed for the Android Python test framework.
17 "webkit_trunk": "http://src.chromium.org/blink/trunk",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000018}
19
20# NOTE: Prefer revision numbers to tags for svn deps. Use http rather than
21# https; the latter can cause problems for users behind proxies.
22deps = {
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000023 "../chromium_deps":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000024 File(Var("chromium_trunk") + "/src/DEPS@" + Var("chromium_revision")),
25
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000026 "build":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000027 Var("chromium_trunk") + "/src/build@" + Var("chromium_revision"),
28
andrew@webrtc.orgb9d20642012-09-19 23:08:50 +000029 # Needed by common.gypi.
30 "google_apis/build":
31 Var("chromium_trunk") + "/src/google_apis/build@" + Var("chromium_revision"),
32
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000033 "testing":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000034 Var("chromium_trunk") + "/src/testing@" + Var("chromium_revision"),
35
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000036 "testing/gmock":
37 From("chromium_deps", "src/testing/gmock"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000038
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000039 "testing/gtest":
40 From("chromium_deps", "src/testing/gtest"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000041
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000042 "third_party/expat":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000043 Var("chromium_trunk") + "/src/third_party/expat@" + Var("chromium_revision"),
44
kjellander@webrtc.orgcbdb9d12013-08-20 16:18:35 +000045 # When rolling gflags, also update deps/third_party/webrtc/webrtc.DEPS/DEPS
46 # in Chromium's repo.
fischman@webrtc.orgdde7d4c2013-08-15 23:31:30 +000047 "third_party/gflags/src":
48 (Var("googlecode_url") % "gflags") + "/trunk/src@84",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000049
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000050 "third_party/icu/":
51 From("chromium_deps", "src/third_party/icu"),
52
53 "third_party/jsoncpp/":
54 Var("chromium_trunk") + "/src/third_party/jsoncpp@" + Var("chromium_revision"),
55
56 "third_party/jsoncpp/source":
pbos@webrtc.org62e5af42013-08-20 09:19:16 +000057 (Var("sourceforge_url") % {"repo": "jsoncpp"}) + "/trunk/jsoncpp@248",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000058
59 "third_party/junit/":
60 (Var("googlecode_url") % "webrtc") + "/deps/third_party/junit@3367",
kjellander@webrtc.org287f07b2013-09-27 16:57:10 +000061
mikhal@webrtc.org0b960cf2013-08-30 16:30:53 +000062 "third_party/libjpeg":
63 Var("chromium_trunk") + "/src/third_party/libjpeg@" + Var("chromium_revision"),
64
65 "third_party/libjpeg_turbo":
66 From("chromium_deps", "src/third_party/libjpeg_turbo"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000067
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000068 "third_party/libsrtp/":
69 From("chromium_deps", "src/third_party/libsrtp"),
70
andrew@webrtc.orge6e344a2013-02-12 19:35:18 +000071 "third_party/libvpx":
fischman@webrtc.org3223a3d2013-09-26 15:59:48 +000072 Var("chromium_trunk") + "/deps/third_party/libvpx@225010",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000073
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000074 "third_party/libyuv":
wu@webrtc.orgec4cccc2013-10-29 21:02:20 +000075 (Var("googlecode_url") % "libyuv") + "/trunk@832",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000076
tina.legrand@webrtc.org1f8c02a2012-10-25 12:37:08 +000077 "third_party/opus":
tina.legrand@webrtc.orge86f43b2013-03-22 12:39:54 +000078 Var("chromium_trunk") + "/src/third_party/opus@185405",
tina.legrand@webrtc.org1f8c02a2012-10-25 12:37:08 +000079
80 "third_party/opus/src":
tina.legrand@webrtc.orge86f43b2013-03-22 12:39:54 +000081 Var("chromium_trunk") + "/deps/third_party/opus@185324",
tina.legrand@webrtc.org1f8c02a2012-10-25 12:37:08 +000082
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000083 "third_party/protobuf":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000084 Var("chromium_trunk") + "/src/third_party/protobuf@" + Var("chromium_revision"),
85
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +000086 "third_party/sqlite/":
87 Var("chromium_trunk") + "/src/third_party/sqlite@" + Var("chromium_revision"),
88
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000089 "third_party/yasm":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000090 Var("chromium_trunk") + "/src/third_party/yasm@" + Var("chromium_revision"),
91
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000092 "third_party/yasm/source/patched-yasm":
93 From("chromium_deps", "src/third_party/yasm/source/patched-yasm"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000094
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000095 "tools/clang":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000096 Var("chromium_trunk") + "/src/tools/clang@" + Var("chromium_revision"),
97
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000098 "tools/gyp":
99 From("chromium_deps", "src/tools/gyp"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000100
andrew@webrtc.org225f2b82013-05-20 21:12:58 +0000101 "tools/protoc_wrapper":
102 Var("chromium_trunk") + "/src/tools/protoc_wrapper@" + Var("chromium_revision"),
103
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000104 "tools/python":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000105 Var("chromium_trunk") + "/src/tools/python@" + Var("chromium_revision"),
106
kjellander@webrtc.org287f07b2013-09-27 16:57:10 +0000107 "tools/sharding_supervisor":
108 Var("chromium_trunk") + "/src/tools/sharding_supervisor@" + Var("chromium_revision"),
109
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000110 "tools/swarm_client":
111 Var("chromium_trunk") + "/tools/swarm_client@" + Var("chromium_revision"),
112
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000113 "tools/valgrind":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000114 Var("chromium_trunk") + "/src/tools/valgrind@" + Var("chromium_revision"),
115
116 # Needed by build/common.gypi.
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000117 "tools/win/supalink":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000118 Var("chromium_trunk") + "/src/tools/win/supalink@" + Var("chromium_revision"),
119}
120
121deps_os = {
122 "win": {
123 # Use our own, stripped down, version of Cygwin (required by GYP).
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000124 "third_party/cygwin":
andrew@webrtc.org7b2e9192012-08-28 15:56:40 +0000125 (Var("googlecode_url") % "webrtc") + "/deps/third_party/cygwin@2672",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000126
andrew@webrtc.org8cd18c52012-11-21 18:46:45 +0000127 "third_party/winsdk_samples/src":
128 (Var("googlecode_url") % "webrtc") + "/deps/third_party/winsdk_samples_v71@3145",
129
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000130 # Used by libjpeg-turbo.
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000131 "third_party/yasm/binaries":
132 From("chromium_deps", "src/third_party/yasm/binaries"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000133
134 # NSS, for SSLClientSocketNSS.
135 "third_party/nss":
136 From("chromium_deps", "src/third_party/nss"),
kjellander@webrtc.org4c617922013-10-10 11:56:09 +0000137
138 # SyzyASan to make it possible to run tests under ASan on Windows.
139 "third_party/syzygy/binaries":
140 From("chromium_deps", "src/third_party/syzygy/binaries"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000141 },
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000142
143 "mac": {
144 # NSS, for SSLClientSocketNSS.
145 "third_party/nss":
146 From("chromium_deps", "src/third_party/nss"),
fischman@webrtc.org1bc19542013-08-01 18:29:45 +0000147
148 # TODO(fischman): delete this in favor of the copy in "ios" below, once the
149 # webrtc iOS bots are fixed to target_os=['ios'] in their .gclient
150 # https://code.google.com/p/webrtc/issues/detail?id=2152
151 "net/third_party/nss":
152 Var("chromium_trunk") + "/src/net/third_party/nss@" + Var("chromium_revision"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000153 },
154
155 "ios": {
156 # NSS, for SSLClientSocketNSS.
157 "third_party/nss":
158 From("chromium_deps", "src/third_party/nss"),
fischman@webrtc.org1bc19542013-08-01 18:29:45 +0000159
160 "net/third_party/nss":
161 Var("chromium_trunk") + "/src/net/third_party/nss@" + Var("chromium_revision"),
162
163 # class-dump utility to generate header files for undocumented SDKs.
164 "testing/iossim/third_party/class-dump":
165 From("chromium_deps", "src/testing/iossim/third_party/class-dump"),
166
167 # Helper for running under the simulator.
168 "testing/iossim":
169 Var("chromium_trunk") + "/src/testing/iossim@" + Var("chromium_revision"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000170 },
171
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000172 "unix": {
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000173 "third_party/gold":
174 From("chromium_deps", "src/third_party/gold"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000175
176 "third_party/openssl":
177 From("chromium_deps", "src/third_party/openssl"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000178 },
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000179 "android": {
kjellander@webrtc.org6cfe1782013-06-18 07:14:33 +0000180 # Precompiled tools needed for Android test execution. Needed since we can't
181 # compile them from source in WebRTC since they depend on Chromium's base.
182 "tools/android":
yujie.mao@webrtc.org9f07ea42013-07-18 01:57:04 +0000183 (Var("googlecode_url") % "webrtc") + "/deps/tools/android@4258",
kjellander@webrtc.org6cfe1782013-06-18 07:14:33 +0000184
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000185 "third_party/android_tools":
186 From("chromium_deps", "src/third_party/android_tools"),
187
188 "third_party/android_testrunner":
189 Var("chromium_trunk") + "/src/third_party/android_testrunner@" + Var("chromium_revision"),
kjellander@webrtc.org430464c2013-06-04 16:29:45 +0000190
191 "third_party/WebKit/Tools/Scripts":
192 Var("webkit_trunk") + "/Tools/Scripts@151677",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000193
194 "third_party/openssl":
195 From("chromium_deps", "src/third_party/openssl"),
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000196 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000197}
198
199hooks = [
200 {
andrew@webrtc.org14b43be2012-10-22 18:19:23 +0000201 # Create a supplement.gypi file under trunk/webrtc. This file will be picked
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000202 # up by gyp and used to enable the standalone build.
203 "pattern": ".",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000204 "action": ["python", Var("root_dir") + "/tools/create_supplement_gypi.py",
andrew@webrtc.org14b43be2012-10-22 18:19:23 +0000205 Var("root_dir") + "/webrtc/supplement.gypi"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000206 },
207 {
208 # Pull clang on mac. If nothing changed, or on non-mac platforms, this takes
209 # zero seconds to run. If something changed, it downloads a prebuilt clang.
210 "pattern": ".",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000211 "action": ["python", Var("root_dir") + "/tools/clang/scripts/update.py",
212 "--mac-only"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000213 },
214 {
stefan@webrtc.orgc3115832012-08-17 06:57:58 +0000215 # Update the cygwin mount on Windows.
216 # This is necessary to get the correct mapping between e.g. /bin and the
217 # cygwin path on Windows. Without it we can't run bash scripts in actions.
218 # Ideally this should be solved in "pylib/gyp/msvs_emulation.py".
219 "pattern": ".",
220 "action": ["python", Var("root_dir") + "/build/win/setup_cygwin_mount.py",
221 "--win-only"],
222 },
223 {
kjellander@webrtc.org80174582013-11-04 12:07:57 +0000224 # Download test resources, i.e. video and audio files from Google Storage.
225 "pattern": "\\.sha1",
226 "action": ["download_from_google_storage",
227 "--directory",
228 "--recursive",
229 "--num_threads=10",
230 "--bucket", "chromium-webrtc-resources",
231 Var("root_dir") + "/resources"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000232 },
233 {
234 # A change to a .gyp, .gypi, or to GYP itself should run the generator.
235 "pattern": ".",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000236 "action": ["python", Var("root_dir") + "/build/gyp_chromium",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000237 "--depth=" + Var("root_dir"), Var("root_dir") + "/all.gyp",
andrew@webrtc.orgea5d0e52012-08-09 17:37:03 +0000238 Var("extra_gyp_flag")],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000239 },
240]
241