blob: 01e0ab47bb27dabc80699b9953172c0787ec4fc1 [file] [log] [blame]
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +01001# Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9# FOR DETAILS ON THIS FILE SEE THE MAIN COPY IN //tools/mb/mb_config.pyl.
10# This is configuration for standalone WebRTC bots. It is used to keep the bot
11# configurations source-side instead of in the buildbot scripts. That makes it
12# easy to try different configurations of GYP and GN in tryjob patches.
13
14{
ehmaldonadod046d982016-08-08 06:59:14 -070015 # This is a map of buildbot master names -> buildbot builder names ->
16 # config names (where each config name is a key in the 'configs' dict,
17 # above). mb uses this dict to look up which config to use for a given bot.
18 # The builders should be sorted by the order they appear in the /builders
19 # page on the buildbots, *not* alphabetically.
20 'masters': {
21 'client.webrtc': {
ehmaldonado09abaa02016-08-09 02:26:16 -070022 # iOS
kjellander6e5b0d72016-08-30 14:05:44 -070023 'iOS32 Debug': 'ios_gn_debug_static_bot_arm_device',
24 'iOS32 Release': 'ios_gn_release_bot_arm_device',
25 'iOS64 Debug': 'ios_gn_debug_static_bot_arm64_device',
26 'iOS64 Release': 'ios_gn_release_bot_arm64_device',
27 'iOS32 Simulator Debug': 'ios_gn_debug_static_bot_x86',
28 'iOS64 Simulator Debug': 'ios_gn_debug_static_bot_x64',
29 # TODO(kjellander): Remove the two GN configs below as soon we've renamed
30 # the bots to the GYP versions (duplicated now).
31 'iOS64 Debug (GN)': 'ios_gyp_debug_static_bot_arm64_device',
32 'iOS64 Release (GN)': 'ios_gyp_release_bot_arm64_device',
33 'iOS64 Debug (GYP)': 'ios_gyp_debug_static_bot_arm64_device',
34 'iOS64 Release (GYP)': 'ios_gyp_release_bot_arm64_device',
ehmaldonado09abaa02016-08-09 02:26:16 -070035
ehmaldonadoa3a1fde2016-08-11 01:04:35 -070036 # Mac
kjellanderf02207d2016-08-24 09:40:00 -070037 'Mac64 Debug': 'gn_debug_bot_x64',
38 'Mac64 Release': 'gn_release_bot_x64',
39 'Mac Asan': 'mac_gn_asan_clang_release_bot_x64',
40 'Mac64 Release [large tests]': 'gn_release_bot_x64',
41 # TODO(kjellander): Remove the two GN configs below as soon we've renamed
42 # the bots to the GYP versions (duplicated now).
43 'Mac64 Debug (GN)': 'gyp_debug_bot_x64_exclude_tests',
44 'Mac64 Release (GN)': 'gyp_release_bot_x64_exclude_tests',
45 'Mac64 Debug (GYP)': 'gyp_debug_bot_x64_exclude_tests',
46 'Mac64 Release (GYP)': 'gyp_release_bot_x64_exclude_tests',
ehmaldonadoa3a1fde2016-08-11 01:04:35 -070047
ehmaldonado09abaa02016-08-09 02:26:16 -070048 # Linux
kjellanderfe1d1912016-08-26 06:10:30 -070049 'Linux32 ARM': 'gn_crosscompile_release_bot_arm',
50 'Linux64 Debug': 'gn_debug_bot_x64',
51 'Linux64 Release': 'gn_release_bot_x64',
52 'Linux Asan': 'gn_asan_lsan_clang_release_bot_x64',
53 'Linux Memcheck': 'gn_memcheck_release_bot_x64',
54 'Linux MSan': 'gn_msan_clang_release_bot_x64',
55 'Linux Tsan v2': 'gn_tsan_clang_release_bot_x64',
56 'Linux UBSan': 'gn_ubsan_clang_release_bot_x64',
57 'Linux UBSan vptr': 'gn_ubsan_vptr_clang_release_bot_x64',
58 'Linux64 Release [large tests]': 'gn_release_bot_x64',
59 # TODO(kjellander): Remove the two GN configs below as soon we've renamed
60 # the bots to the GYP versions (duplicated now).
61 'Linux64 Debug (GN)': 'gyp_debug_bot_x64_exclude_tests',
62 'Linux64 Release (GN)': 'gyp_release_bot_x64_exclude_tests',
63 'Linux64 Debug (GYP)': 'gyp_debug_bot_x64_exclude_tests',
64 'Linux64 Release (GYP)': 'gyp_release_bot_x64_exclude_tests',
ehmaldonado89b0ca82016-08-09 08:15:03 -070065
66 # Android
kjellander4c8adb12016-08-24 00:34:40 -070067 'Android32 Builder': 'android_gn_release_bot_arm',
68 'Android32 Builder (dbg)': 'android_gn_debug_static_bot_arm',
69 'Android32 Builder x86': 'android_gn_release_bot_x86',
70 'Android32 Builder x86 (dbg)': 'android_gn_debug_static_bot_x86',
71 'Android32 Builder MIPS (dbg)': 'android_gn_clang_debug_static_bot_mipsel',
72 'Android32 Clang (dbg)': 'android_gn_clang_debug_static_bot_arm',
73 'Android64 Builder': 'android_gn_release_bot_arm64',
74 'Android64 Builder (dbg)': 'android_gn_debug_static_bot_arm64',
75 'Android64 Builder x64 (dbg)': 'android_gn_debug_static_bot_x64',
76 # TODO(kjellander): Remove the 'Android32 GN' configs as soon we've
77 # renamed these bots to Android32 GYP in the main waterfall.
78 'Android32 GN': 'android_gyp_release_bot_arm',
79 'Android32 GN (dbg)': 'android_gyp_debug_static_bot_arm',
80 'Android32 GYP': 'android_gyp_release_bot_arm',
81 'Android32 GYP (dbg)': 'android_gyp_debug_static_bot_arm',
ehmaldonado89b0ca82016-08-09 08:15:03 -070082 'Android32 Tests (L Nexus5)(dbg)': 'none',
83 'Android32 Tests (L Nexus5)': 'none',
84 'Android32 Tests (L Nexus7.2)(dbg)': 'none',
85 'Android32 Tests (L Nexus7.2)': 'none',
86 'Android64 Tests (L Nexus9)': 'none',
kjellander0ae78782016-08-11 00:49:47 -070087
88 # Windows
kjellander133edb22016-08-28 20:35:55 -070089 'Win32 Debug': 'gn_debug_bot_x86',
90 'Win32 Release': 'gn_release_bot_x86',
91 'Win64 Debug': 'gn_debug_bot_x64',
92 'Win64 Release': 'gn_release_bot_x64',
93 'Win32 Debug (Clang)': 'win_gn_clang_debug_bot_x86',
94 'Win32 Release (Clang)': 'win_gn_clang_release_bot_x86',
95 'Win64 Debug (Clang)': 'win_gn_clang_debug_bot_x64',
96 'Win64 Release (Clang)': 'win_gn_clang_release_bot_x64',
97 'Win SyzyASan': 'win_gn_syzyasan_release_bot_x86',
98 'Win DrMemory Full': 'win_gn_drmemory_debug_bot_x86',
99 'Win DrMemory Light': 'win_gn_drmemory_debug_bot_x86',
100 'Win32 Release [large tests]': 'gn_release_bot_x86',
101 # TODO(kjellander): Remove the two GN configs below as soon we've renamed
102 # the bots to the GYP versions (duplicated now).
103 'Win64 Debug (GN)': 'gyp_debug_bot_x64_exclude_tests',
104 'Win64 Release (GN)': 'gyp_release_bot_x64_exclude_tests',
105 'Win64 Debug (GYP)': 'gyp_debug_bot_x64_exclude_tests',
106 'Win64 Release (GYP)': 'gyp_release_bot_x64_exclude_tests',
ehmaldonadod046d982016-08-08 06:59:14 -0700107 },
108 'tryserver.webrtc': {
ehmaldonado09abaa02016-08-09 02:26:16 -0700109 # iOS
kjellander6e5b0d72016-08-30 14:05:44 -0700110 'ios_dbg': 'ios_gn_debug_static_bot_arm_device',
111 'ios_rel': 'ios_gn_release_bot_arm_device',
112 'ios_arm64_dbg': 'ios_gn_debug_static_bot_arm64_device',
113 'ios_arm64_rel': 'ios_gn_release_bot_arm64_device',
114 'ios32_sim_dbg': 'ios_gn_debug_static_bot_x86',
115 'ios64_sim_dbg': 'ios_gn_debug_static_bot_x64',
116 # TODO(kjellander): Remove the two GN configs below as soon we've renamed
117 # the bots to the GYP versions (duplicated now).
118 'ios64_gn_dbg': 'ios_gyp_debug_static_bot_arm64_device',
119 'ios64_gn_rel': 'ios_gyp_release_bot_arm64_device',
120 'ios64_gyp_dbg': 'ios_gyp_debug_static_bot_arm64_device',
121 'ios64_gyp_rel': 'ios_gyp_release_bot_arm64_device',
ehmaldonado09abaa02016-08-09 02:26:16 -0700122
ehmaldonadoa3a1fde2016-08-11 01:04:35 -0700123 # Mac
kjellanderf02207d2016-08-24 09:40:00 -0700124 'mac_compile_dbg': 'gn_debug_bot_x64',
125 'mac_compile_rel': 'gn_release_bot_x64',
126 'mac_dbg': 'gn_debug_bot_x64',
127 'mac_rel': 'gn_release_bot_x64',
128 'mac_asan': 'mac_gn_asan_clang_release_bot_x64',
129 'mac_baremetal': 'gn_release_bot_x64',
130 'mac_swarming': 'swarming_gn_debug_bot_x64',
131 # TODO(kjellander): Remove the two GN configs below as soon we've renamed
132 # the bots to the GYP versions (duplicated now).
133 'mac_gn_dbg': 'gyp_debug_bot_x64_exclude_tests',
134 'mac_gn_rel': 'gyp_release_bot_x64_exclude_tests',
135 'mac_gyp_dbg': 'gyp_debug_bot_x64_exclude_tests',
136 'mac_gyp_rel': 'gyp_release_bot_x64_exclude_tests',
ehmaldonadoa3a1fde2016-08-11 01:04:35 -0700137
ehmaldonado09abaa02016-08-09 02:26:16 -0700138 # Linux
kjellanderfe1d1912016-08-26 06:10:30 -0700139 'linux_compile_dbg': 'gn_debug_bot_x64',
140 'linux_compile_rel': 'gn_release_bot_x64',
141 'linux_dbg': 'gn_debug_bot_x64',
142 'linux_rel': 'gn_release_bot_x64',
143 'linux_arm': 'gn_crosscompile_release_bot_arm',
144 'linux_asan': 'gn_asan_lsan_clang_release_bot_x64',
145 'linux_memcheck': 'gn_memcheck_release_bot_x64',
146 'linux_msan': 'gn_msan_clang_release_bot_x64',
147 'linux_tsan2': 'gn_tsan_clang_release_bot_x64',
148 'linux_ubsan': 'gn_ubsan_clang_release_bot_x64',
149 'linux_ubsan_vptr': 'gn_ubsan_vptr_clang_release_bot_x64',
150 'linux_baremetal': 'gn_release_bot_x64',
151 'linux_swarming': 'swarming_gn_debug_bot_x64',
152 # TODO(kjellander): Remove the two GN configs below as soon we've renamed
153 # the bots to the GYP versions (duplicated now).
154 'linux_gn_dbg': 'gyp_debug_bot_x64_exclude_tests',
155 'linux_gn_rel': 'gyp_release_bot_x64_exclude_tests',
156 'linux_gyp_dbg': 'gyp_debug_bot_x64_exclude_tests',
157 'linux_gyp_rel': 'gyp_release_bot_x64_exclude_tests',
ehmaldonado89b0ca82016-08-09 08:15:03 -0700158
159 # Android
kjellander4c8adb12016-08-24 00:34:40 -0700160 'android_compile_dbg': 'android_gn_debug_static_bot_arm',
161 'android_compile_rel': 'android_gn_release_bot_arm',
162 'android_compile_arm64_dbg': 'android_gn_debug_static_bot_arm64',
163 'android_compile_arm64_rel': 'android_gn_release_bot_arm64',
164 'android_compile_x86_dbg': 'android_gn_debug_static_bot_x86',
165 'android_compile_x86_rel': 'android_gn_release_bot_x86',
166 'android_compile_x64_dbg': 'android_gn_debug_static_bot_x64',
167 'android_compile_mips_dbg': 'android_gn_clang_debug_static_bot_mipsel',
168 'android_dbg': 'android_gn_debug_static_bot_arm',
169 'android_rel': 'android_gn_release_bot_arm',
170 'android_clang_dbg': 'android_gn_clang_debug_static_bot_arm',
171 'android_arm64_rel': 'android_gn_release_bot_arm64',
172 'android_n6': 'android_gn_debug_static_bot_arm',
173 # TODO(kjellander): Remove the android_gn_* configs as soon we've renamed
174 # the bots to the GYP versions at the tryserver.
175 'android_gn_dbg': 'android_gyp_debug_static_bot_arm',
176 'android_gn_rel': 'android_gyp_release_bot_arm',
177 'android_gyp_dbg': 'android_gyp_debug_static_bot_arm',
178 'android_gyp_rel': 'android_gyp_release_bot_arm',
kjellander0ae78782016-08-11 00:49:47 -0700179
180 # Windows
kjellander133edb22016-08-28 20:35:55 -0700181 'win_compile_dbg': 'gn_debug_bot_x86',
182 'win_compile_rel': 'gn_release_bot_x86',
183 'win_compile_x64_dbg': 'gn_debug_bot_x64',
184 'win_compile_x64_rel': 'gn_release_bot_x64',
185 'win_dbg': 'gn_debug_bot_x86',
186 'win_rel': 'gn_release_bot_x86',
187 'win_x64_dbg': 'gn_debug_bot_x64',
188 'win_x64_rel': 'gn_release_bot_x64',
189 'win_clang_dbg': 'win_gn_clang_debug_bot_x86',
190 'win_clang_rel': 'win_gn_clang_release_bot_x86',
191 'win_x64_clang_dbg': 'win_gn_clang_debug_bot_x64',
192 'win_x64_clang_rel': 'win_gn_clang_release_bot_x64',
193 'win_asan': 'win_gn_syzyasan_release_bot_x86',
194 'win_drmemory_light': 'win_gn_drmemory_debug_bot_x86',
195 'win_drmemory_full': 'win_gn_drmemory_debug_bot_x86',
196 'win_baremetal': 'gn_release_bot_x86',
197 'win_swarming': 'swarming_gn_debug_bot_x64',
198 # TODO(kjellander): Remove the two GN configs below as soon we've renamed
199 # the bots to the GYP versions (duplicated now).
200 'win_x64_gn_dbg': 'gyp_debug_bot_x64_exclude_tests',
201 'win_x64_gn_rel': 'gyp_release_bot_x64_exclude_tests',
202 'win_x64_gyp_dbg': 'gyp_debug_bot_x64_exclude_tests',
203 'win_x64_gyp_rel': 'gyp_release_bot_x64_exclude_tests',
ehmaldonadod046d982016-08-08 06:59:14 -0700204 },
ehmaldonadod6e65b32016-09-05 06:43:56 -0700205 'client.webrtc.fyi': {
206 # Mac
207 'Mac64 Release (swarming)': 'swarming_gn_release_bot_x64',
208
209 # Linux
210 'Linux32 Debug': 'gn_debug_bot_x86',
211 'Linux32 Release': 'gn_release_bot_x86',
212 'Linux64 GCC': 'gn_gcc_release_bot_x64',
213 'Linux64 Release (swarming)': 'swarming_gn_release_bot_x64',
214
215 # Android
216 'Android32 ASan (L Nexus6)': 'android_gn_asan_shared_release_bot_arm',
217 'Android32 Builder': 'android_gn_release_bot_arm',
218 'Android32 Tests (J Nexus4)': 'none',
219 'Android32 Tests (K Nexus5)': 'none',
220 'Android32 Tests (L Nexus6)': 'none',
221
222 # Windows
223 'Win32 Release (swarming)': 'swarming_gn_release_bot_x86',
224 }
ehmaldonadod046d982016-08-08 06:59:14 -0700225 },
226
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100227 # This is the list of configs that you can pass to mb; each config
228 # represents a particular combination of GYP_DEFINES/gn args that
229 # we must support. A given config *may* be platform-specific but
230 # is not necessarily so (i.e., we might have mac, win, and linux
231 # bots all using the 'gn_release_bot' config).
232 'configs': {
ehmaldonado09abaa02016-08-09 02:26:16 -0700233 # iOS
kjellander1c814e72016-08-16 02:42:02 -0700234 'ios_gn_debug_static_bot_arm64_device': [
235 'ios', 'gn', 'debug_static_bot', 'arm64', 'device'
ehmaldonadod046d982016-08-08 06:59:14 -0700236 ],
237 'ios_gn_release_bot_arm64_device': [
kjellander1c814e72016-08-16 02:42:02 -0700238 'ios', 'gn', 'release_bot', 'arm64', 'device'
ehmaldonadod046d982016-08-08 06:59:14 -0700239 ],
kjellander6e5b0d72016-08-30 14:05:44 -0700240 'ios_gn_debug_static_bot_arm_device': [
241 'ios', 'gn', 'debug_static_bot', 'arm', 'device'
ehmaldonadod046d982016-08-08 06:59:14 -0700242 ],
kjellander6e5b0d72016-08-30 14:05:44 -0700243 'ios_gn_release_bot_arm_device': [
244 'ios', 'gn', 'release_bot', 'arm', 'device'
245 ],
246 'ios_gn_debug_static_bot_x86': [
247 'ios', 'gn', 'debug_static_bot', 'x86'
248 ],
249 'ios_gn_debug_static_bot_x64': [
250 'ios', 'gn', 'debug_static_bot', 'x64'
ehmaldonadod046d982016-08-08 06:59:14 -0700251 ],
kjellander1c814e72016-08-16 02:42:02 -0700252 'ios_gyp_debug_static_bot_arm64_device': [
253 'ios', 'gyp', 'debug_static_bot', 'arm64', 'device'
ehmaldonadod046d982016-08-08 06:59:14 -0700254 ],
255 'ios_gyp_release_bot_arm64_device': [
kjellander1c814e72016-08-16 02:42:02 -0700256 'ios', 'gyp', 'release_bot', 'arm64', 'device'
ehmaldonadod046d982016-08-08 06:59:14 -0700257 ],
ehmaldonado09abaa02016-08-09 02:26:16 -0700258
kjellander0ae78782016-08-11 00:49:47 -0700259 # Linux, Mac and Windows
ehmaldonadod6e65b32016-09-05 06:43:56 -0700260 'gn_gcc_release_bot_x64': [
261 'gn', 'gcc', 'release_bot', 'x64'
262 ],
kjellanderfe1d1912016-08-26 06:10:30 -0700263 'gn_crosscompile_release_bot_arm': [
264 'gn', 'crosscompile', 'openh264_release_bot', 'arm'
ehmaldonado09abaa02016-08-09 02:26:16 -0700265 ],
kjellanderf02207d2016-08-24 09:40:00 -0700266 'gyp_debug_bot_x64_exclude_tests': [
ehmaldonado6b748652016-08-31 01:53:42 -0700267 'gyp', 'gyp_limited_support_build', 'debug_bot', 'x64'
kjellanderf02207d2016-08-24 09:40:00 -0700268 ],
kjellanderf02207d2016-08-24 09:40:00 -0700269 'gyp_release_bot_x64_exclude_tests': [
ehmaldonado6b748652016-08-31 01:53:42 -0700270 'gyp', 'gyp_limited_support_build', 'release_bot', 'x64'
kjellanderf02207d2016-08-24 09:40:00 -0700271 ],
kjellanderfe1d1912016-08-26 06:10:30 -0700272 'gn_asan_lsan_clang_release_bot_x64': [
273 'gn', 'asan', 'lsan', 'clang', 'openh264_release_bot', 'x64'
ehmaldonado09abaa02016-08-09 02:26:16 -0700274 ],
kjellanderfe1d1912016-08-26 06:10:30 -0700275 'gn_memcheck_release_bot_x64': [
276 'gn', 'memcheck', 'openh264_release_bot', 'x64'
ehmaldonado09abaa02016-08-09 02:26:16 -0700277 ],
kjellanderfe1d1912016-08-26 06:10:30 -0700278 'gn_msan_clang_release_bot_x64': [
279 'gn', 'msan', 'clang', 'openh264_release_bot', 'x64'
ehmaldonado09abaa02016-08-09 02:26:16 -0700280 ],
kjellanderfe1d1912016-08-26 06:10:30 -0700281 'gn_tsan_clang_release_bot_x64': [
282 'gn', 'tsan', 'clang', 'openh264_release_bot', 'x64'
ehmaldonado09abaa02016-08-09 02:26:16 -0700283 ],
kjellanderfe1d1912016-08-26 06:10:30 -0700284 'gn_ubsan_clang_release_bot_x64': [
285 'gn', 'ubsan', 'clang', 'openh264_release_bot', 'x64'
ehmaldonado09abaa02016-08-09 02:26:16 -0700286 ],
kjellanderfe1d1912016-08-26 06:10:30 -0700287 'gn_ubsan_vptr_clang_release_bot_x64': [
288 'gn', 'ubsan_vptr', 'clang', 'openh264_release_bot', 'x64'
ehmaldonado09abaa02016-08-09 02:26:16 -0700289 ],
kjellander133edb22016-08-28 20:35:55 -0700290 'gn_debug_bot_x86': [
291 'gn', 'openh264_debug_bot', 'x86'
292 ],
293 'gn_release_bot_x86': [
294 'gn', 'openh264_release_bot', 'x86'
295 ],
kjellander3cb0c572016-08-09 13:00:57 -0700296 'gn_debug_bot_x64': [
297 'gn', 'openh264_debug_bot', 'x64'
ehmaldonado09abaa02016-08-09 02:26:16 -0700298 ],
kjellander3cb0c572016-08-09 13:00:57 -0700299 'gn_release_bot_x64': [
300 'gn', 'openh264_release_bot', 'x64'
ehmaldonado09abaa02016-08-09 02:26:16 -0700301 ],
ehmaldonadod6e65b32016-09-05 06:43:56 -0700302 'swarming_gn_release_bot_x86': [
303 'swarming', 'gn', 'openh264_release_bot', 'x86'
304 ],
kjellanderf02207d2016-08-24 09:40:00 -0700305 'swarming_gn_debug_bot_x64': [
306 'swarming', 'gn', 'openh264_debug_bot', 'x64'
307 ],
ehmaldonadod6e65b32016-09-05 06:43:56 -0700308 'swarming_gn_release_bot_x64': [
309 'swarming', 'gn', 'openh264_release_bot', 'x64'
310 ],
ehmaldonado89b0ca82016-08-09 08:15:03 -0700311
kjellander0ae78782016-08-11 00:49:47 -0700312 # Windows
kjellander133edb22016-08-28 20:35:55 -0700313 'win_gn_clang_debug_bot_x86': [
314 'gn', 'clang', 'openh264_debug_bot', 'x86',
kjellander0ae78782016-08-11 00:49:47 -0700315 ],
kjellander133edb22016-08-28 20:35:55 -0700316 'win_gn_clang_release_bot_x86': [
317 'gn', 'clang', 'openh264_release_bot', 'x86',
kjellander0ae78782016-08-11 00:49:47 -0700318 ],
kjellander133edb22016-08-28 20:35:55 -0700319 'win_gn_clang_debug_bot_x64': [
320 'gn', 'clang', 'openh264_debug_bot', 'x64',
kjellander0ae78782016-08-11 00:49:47 -0700321 ],
kjellander133edb22016-08-28 20:35:55 -0700322 'win_gn_clang_release_bot_x64': [
323 'gn', 'clang', 'openh264_release_bot', 'x64',
kjellander0ae78782016-08-11 00:49:47 -0700324 ],
kjellander133edb22016-08-28 20:35:55 -0700325 'win_gn_syzyasan_release_bot_x86': [
326 'gn', 'syzyasan', 'minimal_symbols', 'openh264_release_bot', 'x86',
kjellander0ae78782016-08-11 00:49:47 -0700327 ],
328 # TODO(kjellander): Flip DrMemory bots over to Release after GN migration
329 # (http://crbug.com/636414).
kjellander133edb22016-08-28 20:35:55 -0700330 'win_gn_drmemory_debug_bot_x86': [
331 'gn', 'drmemory', 'minimal_symbols', 'openh264_debug_bot', 'x86',
kjellander0ae78782016-08-11 00:49:47 -0700332 ],
333
ehmaldonadoa3a1fde2016-08-11 01:04:35 -0700334 # Mac
kjellanderf02207d2016-08-24 09:40:00 -0700335 'mac_gn_asan_clang_release_bot_x64': [
336 'gn', 'asan', 'clang', 'openh264_release_bot', 'x64',
ehmaldonadoa3a1fde2016-08-11 01:04:35 -0700337 ],
338
ehmaldonado89b0ca82016-08-09 08:15:03 -0700339 # Android
kjellander68815bf2016-08-10 09:49:37 -0700340 'android_gyp_debug_static_bot_arm': [
ehmaldonado6b748652016-08-31 01:53:42 -0700341 'android', 'gyp', 'gyp_limited_support_build', 'debug_static_bot', 'arm'
ehmaldonado89b0ca82016-08-09 08:15:03 -0700342 ],
kjellander3cb0c572016-08-09 13:00:57 -0700343 'android_gyp_release_bot_arm': [
ehmaldonado6b748652016-08-31 01:53:42 -0700344 'android', 'gyp', 'gyp_limited_support_build', 'release_bot', 'arm'
ehmaldonado89b0ca82016-08-09 08:15:03 -0700345 ],
kjellander68815bf2016-08-10 09:49:37 -0700346 'android_gn_debug_static_bot_arm': [
347 'android', 'gn', 'debug_static_bot', 'arm'
ehmaldonado89b0ca82016-08-09 08:15:03 -0700348 ],
kjellander3cb0c572016-08-09 13:00:57 -0700349 'android_gn_release_bot_arm': [
350 'android', 'gn', 'release_bot', 'arm'
ehmaldonado89b0ca82016-08-09 08:15:03 -0700351 ],
kjellander4c8adb12016-08-24 00:34:40 -0700352 'android_gn_debug_static_bot_x86': [
353 'android', 'gn', 'debug_static_bot', 'x86'
354 ],
355 'android_gn_release_bot_x86': [
356 'android', 'gn', 'release_bot', 'x86'
357 ],
358 'android_gn_clang_debug_static_bot_arm': [
359 'android', 'gn', 'clang', 'debug_static_bot', 'arm'
360 ],
361 'android_gn_clang_debug_static_bot_mipsel': [
362 'android', 'gn', 'clang', 'debug_static_bot', 'mipsel'
363 ],
364 'android_gn_debug_static_bot_arm64': [
365 'android', 'gn', 'debug_static_bot', 'arm64'
366 ],
367 'android_gn_release_bot_arm64': [
368 'android', 'gn', 'release_bot', 'arm64'
369 ],
370 'android_gn_debug_static_bot_x64': [
371 'android', 'gn', 'debug_static_bot', 'x64'
372 ],
ehmaldonadod6e65b32016-09-05 06:43:56 -0700373 'android_gn_asan_shared_release_bot_arm': [
374 'android', 'gn', 'asan', 'clang', 'shared', 'release_bot', 'arm'
375 ],
ehmaldonado89b0ca82016-08-09 08:15:03 -0700376
377 # This is used for tracking purposes; any bot that uses this config
378 # should never actually run MB.
379 'none': [
380 'error',
381 ],
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100382 },
383
384 # This is a dict mapping a given 'mixin' name to a dict of settings that
385 # mb should use. See //tools/mb/docs/user_guide.md for more information.
386 'mixins': {
ehmaldonado89b0ca82016-08-09 08:15:03 -0700387 'android': {
388 'gn_args': 'target_os="android"',
389 'gyp_defines': 'OS=android',
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100390 },
391
392 'arm': {
393 'gn_args': 'target_cpu="arm"',
394 'gyp_defines': 'target_arch=arm',
395 },
396
397 'arm64': {
398 'gn_args': 'target_cpu="arm64"',
399 'gyp_defines': 'target_arch=arm64',
400 },
401
ehmaldonado09abaa02016-08-09 02:26:16 -0700402 'asan': {
403 'gn_args': 'is_asan=true',
404 'gyp_defines': 'asan=1',
405 },
406
407 'clang': {
408 'gn_args': 'is_clang=true',
409 'gyp_defines': 'clang=1',
410 },
411
kjellander5d6b84c2016-08-09 13:17:40 -0700412 'crosscompile': {
413 # This mixin is only needed on GYP bots that are doing cross-compiles
414 # but are *not* targetting Android or iOS (where
415 # webrtc/build/gyp_webrtc.py will set the crosscompile variable
416 # automatically). It is not need in GN at all.
417 'gyp_crosscompile': True,
418 },
419
ehmaldonado09abaa02016-08-09 02:26:16 -0700420 'dcheck_always_on': {
421 'gn_args': 'dcheck_always_on=true',
422 'gyp_defines': 'dcheck_always_on=1',
423 },
424
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100425 'debug': {
426 'gn_args': 'is_debug=true',
427 },
428
429 'debug_bot': {
ehmaldonado09abaa02016-08-09 02:26:16 -0700430 'mixins': ['debug', 'shared', 'goma'],
431 },
432
kjellander68815bf2016-08-10 09:49:37 -0700433 'debug_static_bot': {
434 'mixins': ['debug', 'static', 'minimal_symbols', 'goma'],
435 },
436
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100437 'device': {
kjellander@webrtc.org0c74ae12016-02-25 08:41:10 +0100438 'gn_args': 'ios_enable_code_signing=false',
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100439 'gyp_defines': 'chromium_ios_signing=0',
440 },
441
kjellander0ae78782016-08-11 00:49:47 -0700442 'drmemory': {
443 'gn_args': 'is_component_build=true enable_iterator_debugging=false',
444 'gyp_defines': 'component=shared_library build_for_tool=drmemory',
445 },
446
ehmaldonado89b0ca82016-08-09 08:15:03 -0700447 # This mixin is used to force configs that use it to fail. It
448 # is used in two cases: when we have bots that we haven't looked
449 # at yet and don't know whether they need MB or not, and for bots
450 # that are test-only and should never run MB.
451 'error': {
452 'gn_args': 'error',
453 'gyp_defines': 'target_arch=unknown',
454 },
455
ehmaldonadod6e65b32016-09-05 06:43:56 -0700456 'gcc': {
457 'gn_args': 'is_clang=false use_sysroot=false',
458 'gyp_defines': 'clang=0',
459 },
460
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100461 'gn': {'type': 'gn'},
462
ehmaldonado09abaa02016-08-09 02:26:16 -0700463 'goma': {
464 # The MB code will properly escape goma_dir if necessary in the GYP
465 # code path; the GN code path needs no escaping.
466 'gn_args': 'use_goma=true',
467 'gyp_defines': 'use_goma=1',
468 },
469
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100470 'gyp': {'type': 'gyp'},
471
ehmaldonado6b748652016-08-31 01:53:42 -0700472 'gyp_limited_support_build': {
kjellander84fcbd42016-09-02 11:55:39 -0700473 'gyp_defines': 'include_examples=0 include_tests=0'
ehmaldonado6b748652016-08-31 01:53:42 -0700474 },
475
ehmaldonado89b0ca82016-08-09 08:15:03 -0700476 'ios': {
477 'gn_args': 'target_os="ios"',
478 'gyp_defines': 'OS=ios',
479 },
480
ehmaldonado09abaa02016-08-09 02:26:16 -0700481 'lsan': {
482 'gn_args': 'is_lsan=true',
483 'gyp_defines': 'lsan=1',
484 },
485
486 'memcheck': {
487 'gyp_defines': 'build_for_tool=memcheck',
488 },
489
kjellander68815bf2016-08-10 09:49:37 -0700490 'minimal_symbols': {
491 'gn_args': 'symbol_level=1',
492 'gyp_defines': 'fastbuild=1',
493 },
494
ehmaldonado89b0ca82016-08-09 08:15:03 -0700495 'mipsel': {
496 'gn_args': 'target_cpu="mipsel"',
497 'gyp_defines': 'target_arch=mipsel',
498 },
499
kjellander0ae78782016-08-11 00:49:47 -0700500 'minimal_symbols': {
501 'gn_args': 'symbol_level=1',
502 'gyp_defines': 'fastbuild=1',
503 },
504
ehmaldonado09abaa02016-08-09 02:26:16 -0700505 'msan': {
506 'gn_args': ('is_msan=true msan_track_origins=2 '
507 'use_prebuilt_instrumented_libraries=true'),
508 'gyp_defines': ('msan=1 msan_track_origins=2 '
509 'use_prebuilt_instrumented_libraries=1'),
510 },
511
ehmaldonado09abaa02016-08-09 02:26:16 -0700512 'openh264': {
513 'gn_args': 'ffmpeg_branding="Chrome" rtc_use_h264=true',
514 'gyp_defines': 'ffmpeg_branding=Chrome rtc_use_h264=1',
515 },
516
kjellander3cb0c572016-08-09 13:00:57 -0700517 'openh264_debug_bot': {
518 'mixins': ['openh264', 'debug_bot'],
519 },
520
521 'openh264_release_bot': {
522 'mixins': ['openh264', 'release_bot'],
523 },
524
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100525 'release': {
526 'gn_args': 'is_debug=false',
527 },
528
529 'release_bot': {
kjellander3cb0c572016-08-09 13:00:57 -0700530 'mixins': ['release', 'static', 'dcheck_always_on', 'goma'],
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100531 },
532
533 'shared': {
534 'gn_args': 'is_component_build=true',
535 'gyp_defines': 'component=shared_library',
536 },
537
538 'static': {
539 'gn_args': 'is_component_build=false',
540 'gyp_defines': 'component=static_library',
541 },
542
ehmaldonado09abaa02016-08-09 02:26:16 -0700543 'swarming': {
544 'gn_args': '',
545 'gyp_defines': 'test_isolation_mode=prepare',
546 },
547
kjellander0ae78782016-08-11 00:49:47 -0700548 'syzyasan': {
549 'gn_args': 'is_syzyasan=true',
550 'gyp_defines': 'syzyasan=1'
551 },
552
kjellander3cb0c572016-08-09 13:00:57 -0700553 'tsan': {
554 'gn_args': 'is_tsan=true',
555 'gyp_defines': 'tsan=1',
556 },
557
ehmaldonado09abaa02016-08-09 02:26:16 -0700558 'ubsan': {
559 'gn_args': 'is_ubsan=true',
560 'gyp_defines': 'ubsan=1',
561 },
562
563 'ubsan_vptr': {
564 'gn_args': 'is_ubsan_vptr=true',
565 'gyp_defines': 'ubsan_vptr=1',
566 },
567
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100568 'x64': {
569 'gn_args': 'target_cpu="x64"',
570 'gyp_defines': 'target_arch=x64',
571 },
572
573 'x86': {
574 'gn_args': 'target_cpu="x86"',
575 'gyp_defines': 'target_arch=ia32',
576 },
577 },
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100578}