blob: 5d598440513ed7ec3dd0d5b505e029f5517e6eec [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",
fischman@webrtc.orgdde7d4c2013-08-15 23:31:30 +000014 "chromium_revision": "217707",
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",
mikhal@webrtc.org0b960cf2013-08-30 16:30:53 +000061
62 "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.orge691b4f2013-07-25 21:22:41 +000072 Var("chromium_trunk") + "/deps/third_party/libvpx@212975",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +000073
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +000074 "third_party/libyuv":
fbarchard@google.com2ef95132013-06-11 22:03:29 +000075 (Var("googlecode_url") % "libyuv") + "/trunk@723",
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.org33654222013-08-22 07:57:00 +0000107 "tools/swarm_client":
108 Var("chromium_trunk") + "/tools/swarm_client@" + Var("chromium_revision"),
109
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000110 "tools/valgrind":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000111 Var("chromium_trunk") + "/src/tools/valgrind@" + Var("chromium_revision"),
112
113 # Needed by build/common.gypi.
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000114 "tools/win/supalink":
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000115 Var("chromium_trunk") + "/src/tools/win/supalink@" + Var("chromium_revision"),
116}
117
118deps_os = {
119 "win": {
120 # Use our own, stripped down, version of Cygwin (required by GYP).
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000121 "third_party/cygwin":
andrew@webrtc.org7b2e9192012-08-28 15:56:40 +0000122 (Var("googlecode_url") % "webrtc") + "/deps/third_party/cygwin@2672",
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000123
andrew@webrtc.org8cd18c52012-11-21 18:46:45 +0000124 "third_party/winsdk_samples/src":
125 (Var("googlecode_url") % "webrtc") + "/deps/third_party/winsdk_samples_v71@3145",
126
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000127 # Used by libjpeg-turbo.
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000128 "third_party/yasm/binaries":
129 From("chromium_deps", "src/third_party/yasm/binaries"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000130
131 # NSS, for SSLClientSocketNSS.
132 "third_party/nss":
133 From("chromium_deps", "src/third_party/nss"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000134 },
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000135
136 "mac": {
137 # NSS, for SSLClientSocketNSS.
138 "third_party/nss":
139 From("chromium_deps", "src/third_party/nss"),
fischman@webrtc.org1bc19542013-08-01 18:29:45 +0000140
141 # TODO(fischman): delete this in favor of the copy in "ios" below, once the
142 # webrtc iOS bots are fixed to target_os=['ios'] in their .gclient
143 # https://code.google.com/p/webrtc/issues/detail?id=2152
144 "net/third_party/nss":
145 Var("chromium_trunk") + "/src/net/third_party/nss@" + Var("chromium_revision"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000146 },
147
148 "ios": {
149 # NSS, for SSLClientSocketNSS.
150 "third_party/nss":
151 From("chromium_deps", "src/third_party/nss"),
fischman@webrtc.org1bc19542013-08-01 18:29:45 +0000152
153 "net/third_party/nss":
154 Var("chromium_trunk") + "/src/net/third_party/nss@" + Var("chromium_revision"),
155
156 # class-dump utility to generate header files for undocumented SDKs.
157 "testing/iossim/third_party/class-dump":
158 From("chromium_deps", "src/testing/iossim/third_party/class-dump"),
159
160 # Helper for running under the simulator.
161 "testing/iossim":
162 Var("chromium_trunk") + "/src/testing/iossim@" + Var("chromium_revision"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000163 },
164
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000165 "unix": {
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000166 "third_party/gold":
167 From("chromium_deps", "src/third_party/gold"),
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000168
169 "third_party/openssl":
170 From("chromium_deps", "src/third_party/openssl"),
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000171 },
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000172 "android": {
kjellander@webrtc.org6cfe1782013-06-18 07:14:33 +0000173 # Precompiled tools needed for Android test execution. Needed since we can't
174 # compile them from source in WebRTC since they depend on Chromium's base.
175 "tools/android":
yujie.mao@webrtc.org9f07ea42013-07-18 01:57:04 +0000176 (Var("googlecode_url") % "webrtc") + "/deps/tools/android@4258",
kjellander@webrtc.org6cfe1782013-06-18 07:14:33 +0000177
kjellander@webrtc.org2d7617a2013-06-19 09:10:49 +0000178 "tools/android-dummy-test":
179 (Var("googlecode_url") % "webrtc") + "/deps/tools/android-dummy-test@4244",
180
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000181 "third_party/android_tools":
182 From("chromium_deps", "src/third_party/android_tools"),
183
184 "third_party/android_testrunner":
185 Var("chromium_trunk") + "/src/third_party/android_testrunner@" + Var("chromium_revision"),
kjellander@webrtc.org430464c2013-06-04 16:29:45 +0000186
187 "third_party/WebKit/Tools/Scripts":
188 Var("webkit_trunk") + "/Tools/Scripts@151677",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000189
190 "third_party/openssl":
191 From("chromium_deps", "src/third_party/openssl"),
kjellander@webrtc.org18a21a02013-02-11 17:43:19 +0000192 },
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000193}
194
195hooks = [
196 {
andrew@webrtc.org14b43be2012-10-22 18:19:23 +0000197 # Create a supplement.gypi file under trunk/webrtc. This file will be picked
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000198 # up by gyp and used to enable the standalone build.
199 "pattern": ".",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000200 "action": ["python", Var("root_dir") + "/tools/create_supplement_gypi.py",
andrew@webrtc.org14b43be2012-10-22 18:19:23 +0000201 Var("root_dir") + "/webrtc/supplement.gypi"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000202 },
203 {
204 # Pull clang on mac. If nothing changed, or on non-mac platforms, this takes
205 # zero seconds to run. If something changed, it downloads a prebuilt clang.
206 "pattern": ".",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000207 "action": ["python", Var("root_dir") + "/tools/clang/scripts/update.py",
208 "--mac-only"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000209 },
210 {
stefan@webrtc.orgc3115832012-08-17 06:57:58 +0000211 # Update the cygwin mount on Windows.
212 # This is necessary to get the correct mapping between e.g. /bin and the
213 # cygwin path on Windows. Without it we can't run bash scripts in actions.
214 # Ideally this should be solved in "pylib/gyp/msvs_emulation.py".
215 "pattern": ".",
216 "action": ["python", Var("root_dir") + "/build/win/setup_cygwin_mount.py",
217 "--win-only"],
218 },
219 {
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000220 # Download test resources, i.e. video and audio files. If the latest
221 # version is already downloaded, this takes zero seconds to run.
222 # If a newer version or no current download exists, it will download
223 # the resources and extract them.
224 "pattern": ".",
henrike@webrtc.org34773d92013-07-08 14:55:23 +0000225 "action": ["python", Var("root_dir") + "/webrtc/tools/update_resources.py"],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000226 },
227 {
228 # A change to a .gyp, .gypi, or to GYP itself should run the generator.
229 "pattern": ".",
andrew@webrtc.org9a3f83f2012-08-07 06:03:22 +0000230 "action": ["python", Var("root_dir") + "/build/gyp_chromium",
henrike@webrtc.org8d27a1c2013-07-23 18:15:11 +0000231 "--depth=" + Var("root_dir"), Var("root_dir") + "/all.gyp",
andrew@webrtc.orgea5d0e52012-08-09 17:37:03 +0000232 Var("extra_gyp_flag")],
andrew@webrtc.org4ce52bb2012-07-31 21:54:13 +0000233 },
234]
235