blob: e290ccc74d6412e08d6b529997d791c53186909d [file] [log] [blame]
Ben Murdoch61f157c2016-09-16 13:49:30 +01001# Copyright 2016 The V8 project authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5{
6 # This is a map of buildbot master names -> buildbot builder names ->
7 # config names (where each config name is a key in the 'configs' dict,
8 # below). MB uses this dict to look up which config to use for a given bot.
9 # Bots are ordered by appearance on waterfall.
10 'masters': {
11 'client.dart.fyi': {
12 'v8-linux-release': 'gyp_release_x86_disassembler',
13 'v8-win-release': 'gyp_release_x86_disassembler',
14 'v8-mac-release': 'gyp_release_x86_disassembler',
15 },
16 'client.dynamorio': {
17 'linux-v8-dr': 'gyp_release_x64',
18 },
19 'client.v8': {
20 # Linux.
21 'V8 Linux - builder': 'gyp_release_x86_gcmole',
22 'V8 Linux - debug builder': 'gyp_debug_x86',
23 'V8 Linux - nosnap builder': 'gyp_release_x86_no_snap',
24 'V8 Linux - nosnap debug builder': 'gyp_debug_x86_no_snap',
25 'V8 Linux - shared': 'gyp_release_x86_shared_verify_heap',
26 'V8 Linux - noi18n - debug': 'gyp_debug_x86_no_i18n',
27 # Linux64.
28 'V8 Linux64 - builder': 'gyp_release_x64',
29 'V8 Linux64 - debug builder': 'gyp_debug_x64_valgrind',
30 'V8 Linux64 - custom snapshot - debug builder': 'gyp_debug_x64_custom',
31 'V8 Linux64 - internal snapshot': 'gyp_release_x64_internal',
32 # Windows.
33 'V8 Win32 - builder': 'gyp_release_x86_minimal_symbols',
34 'V8 Win32 - debug builder': 'gyp_debug_x86_minimal_symbols',
35 'V8 Win32 - nosnap - shared':
36 'gyp_release_x86_no_snap_shared_minimal_symbols',
37 'V8 Win64': 'gyp_release_x64_minimal_symbols',
38 'V8 Win64 - debug': 'gyp_debug_x64_minimal_symbols',
39 'V8 Win64 - clang': 'gyp_release_x64_clang',
40 # Mac.
41 'V8 Mac': 'gyp_release_x86',
42 'V8 Mac - debug': 'gyp_debug_x86',
43 'V8 Mac64': 'gyp_release_x64',
44 'V8 Mac64 - debug': 'gyp_debug_x64',
45 'V8 Mac GC Stress': 'gyp_debug_x86',
46 'V8 Mac64 ASAN': 'gyp_release_x64_asan',
47 # Sanitizers.
48 'V8 Linux64 ASAN': 'gyp_release_x64_asan',
49 'V8 Linux64 TSAN': 'gyp_release_x64_tsan',
50 'V8 Linux - arm64 - sim - MSAN': 'gyp_release_simulate_arm64_msan',
51 # Clusterfuzz.
52 'V8 Linux64 ASAN no inline - release builder':
53 'gyp_release_x64_asan_symbolized_edge_verify_heap',
54 'V8 Linux64 ASAN - debug builder': 'gyp_debug_x64_asan_edge',
55 'V8 Linux64 ASAN arm64 - debug builder':
56 'gyp_debug_simulate_arm64_asan_edge',
57 'V8 Linux ASAN arm - debug builder':
58 'gyp_debug_simulate_arm_asan_edge',
59 'V8 Linux ASAN mipsel - debug builder':
60 'gyp_debug_simulate_mipsel_asan_edge',
61 # Misc.
62 'V8 Linux gcc 4.8': 'gyp_release_x86_gcc',
63 # FYI.
64 'V8 Linux - swarming staging': 'gn_release_x64',
65 # TODO(machenbach): Figure out if symbolized is still needed. The
66 # original config also specified -O1, which we dropped because chromium
67 # doesn't have it (anymore).
68 'V8 Linux64 - cfi': 'gyp_release_x64_cfi_symbolized',
69 'V8 Linux - vtunejit': 'gyp_debug_x86_vtunejit',
70 'V8 Linux64 - gcov coverage': 'gyp_release_x64_gcc_coverage',
71 'V8 Linux - predictable': 'gyp_release_x86_predictable',
72 'V8 Linux - full debug': 'gyp_full_debug_x86',
73 'V8 Linux - interpreted regexp': 'gyp_release_x86_interpreted_regexp',
74 'V8 Random Deopt Fuzzer - debug': 'gyp_debug_x86',
75 },
76
77 'client.v8.ports': {
78 # Arm.
79 'V8 Arm - builder': 'gyp_release_arm',
80 'V8 Arm - debug builder': 'gyp_debug_arm',
81 'V8 Android Arm - builder': 'gyp_release_android_arm',
82 'V8 Linux - arm - sim': 'gyp_release_simulate_arm',
83 'V8 Linux - arm - sim - debug': 'gyp_debug_simulate_arm',
84 # Arm64.
85 'V8 Android Arm64 - builder': 'gyp_release_android_arm64',
86 'V8 Linux - arm64 - sim': 'gyp_release_simulate_arm64',
87 'V8 Linux - arm64 - sim - debug': 'gyp_debug_simulate_arm64',
88 'V8 Linux - arm64 - sim - nosnap - debug':
89 'gyp_debug_simulate_arm64_no_snap',
90 'V8 Linux - arm64 - sim - gc stress': 'gyp_debug_simulate_arm64',
91 # Mips.
92 'V8 Mips - builder': 'gyp_release_mips_no_snap_no_i18n',
93 'V8 Linux - mipsel - sim - builder': 'gyp_release_simulate_mipsel',
94 'V8 Linux - mips64el - sim - builder': 'gyp_release_simulate_mips64el',
95 # PPC.
96 'V8 Linux - ppc - sim': 'gyp_release_simulate_ppc',
97 'V8 Linux - ppc64 - sim': 'gyp_release_simulate_ppc64',
98 # S390.
99 'V8 Linux - s390 - sim': 'gyp_release_simulate_s390',
100 'V8 Linux - s390x - sim': 'gyp_release_simulate_s390x',
101 # X87.
102 'V8 Linux - x87 - nosnap - debug builder':
103 'gyp_debug_simulate_x87_no_snap',
104 },
105 'client.v8.branches': {
106 'V8 Linux - beta branch': 'gyp_release_x86',
107 'V8 Linux - beta branch - debug': 'gyp_debug_x86',
108 'V8 Linux - stable branch': 'gyp_release_x86',
109 'V8 Linux - stable branch - debug': 'gyp_debug_x86',
110 'V8 Linux64 - beta branch': 'gyp_release_x64',
111 'V8 Linux64 - beta branch - debug': 'gyp_debug_x64',
112 'V8 Linux64 - stable branch': 'gyp_release_x64',
113 'V8 Linux64 - stable branch - debug': 'gyp_debug_x64',
114 'V8 arm - sim - beta branch': 'gyp_release_simulate_arm',
115 'V8 arm - sim - beta branch - debug': 'gyp_debug_simulate_arm',
116 'V8 arm - sim - stable branch': 'gyp_release_simulate_arm',
117 'V8 arm - sim - stable branch - debug': 'gyp_debug_simulate_arm',
118 'V8 mips64el - sim - beta branch': 'gyp_release_simulate_mips64el',
119 'V8 mips64el - sim - stable branch': 'gyp_release_simulate_mips64el',
120 'V8 mipsel - sim - beta branch': 'gyp_release_simulate_mipsel',
121 'V8 mipsel - sim - stable branch': 'gyp_release_simulate_mipsel',
122 'V8 ppc - sim - beta branch': 'gyp_release_simulate_ppc',
123 'V8 ppc - sim - stable branch': 'gyp_release_simulate_ppc',
124 'V8 ppc64 - sim - beta branch': 'gyp_release_simulate_ppc64',
125 'V8 ppc64 - sim - stable branch': 'gyp_release_simulate_ppc64',
126 'V8 s390 - sim - beta branch': 'gyp_release_simulate_s390',
127 'V8 s390 - sim - stable branch': 'gyp_release_simulate_s390',
128 'V8 s390x - sim - beta branch': 'gyp_release_simulate_s390x',
129 'V8 s390x - sim - stable branch': 'gyp_release_simulate_s390x',
130 },
131 'tryserver.v8': {
132 'v8_linux_rel_ng': 'gyp_release_x86_gcmole_trybot',
133 'v8_linux_avx2_dbg': 'gyp_debug_x86_trybot',
134 'v8_linux_nodcheck_rel_ng': 'gyp_release_x86_minimal_symbols',
135 'v8_linux_dbg_ng': 'gyp_debug_x86_trybot',
136 'v8_linux_noi18n_rel_ng': 'gyp_release_x86_no_i18n_trybot',
137 'v8_linux_gc_stress_dbg': 'gyp_debug_x86_trybot',
138 'v8_linux_nosnap_rel': 'gyp_release_x86_no_snap_trybot',
139 'v8_linux_nosnap_dbg': 'gyp_debug_x86_no_snap_trybot',
140 'v8_linux_gcc_compile_rel': 'gyp_release_x86_gcc_minimal_symbols',
141 'v8_linux_gcc_rel': 'gyp_release_x86_gcc_minimal_symbols',
142 'v8_linux64_rel_ng': 'gyp_release_x64_trybot',
143 'v8_linux64_avx2_rel_ng': 'gyp_release_x64_trybot',
144 'v8_linux64_avx2_dbg': 'gyp_debug_x64_trybot',
145 'v8_linux64_asan_rel_ng': 'gyp_release_x64_asan_minimal_symbols',
146 'v8_linux64_msan_rel': 'gyp_release_simulate_arm64_msan_minimal_symbols',
147 'v8_linux64_sanitizer_coverage_rel':
148 'gyp_release_x64_asan_minimal_symbols_coverage',
149 'v8_linux64_tsan_rel': 'gyp_release_x64_tsan_minimal_symbols',
150 'v8_win_dbg': 'gyp_debug_x86_trybot',
151 'v8_win_compile_dbg': 'gyp_debug_x86_trybot',
152 'v8_win_rel_ng': 'gyp_release_x86_trybot',
153 'v8_win_nosnap_shared_rel_ng':
154 'gyp_release_x86_no_snap_shared_minimal_symbols',
155 'v8_win64_dbg': 'gyp_debug_x64_minimal_symbols',
156 'v8_win64_rel_ng': 'gyp_release_x64_trybot',
157 'v8_mac_rel_ng': 'gyp_release_x86_trybot',
158 'v8_mac_dbg': 'gyp_debug_x86_trybot',
159 'v8_mac_gc_stress_dbg': 'gyp_debug_x86_trybot',
160 'v8_mac64_rel': 'gyp_release_x64_trybot',
161 'v8_mac64_dbg': 'gyp_debug_x64_minimal_symbols',
162 'v8_mac64_asan_rel': 'gyp_release_x64_asan',
163 'v8_linux_arm_rel_ng': 'gyp_release_simulate_arm_trybot',
164 'v8_linux_arm_dbg': 'gyp_debug_simulate_arm',
165 'v8_linux_arm_armv8a_rel': 'gyp_release_simulate_arm_trybot',
166 'v8_linux_arm_armv8a_dbg': 'gyp_debug_simulate_arm',
167 'v8_linux_arm64_rel_ng': 'gyp_release_simulate_arm64_trybot',
168 'v8_linux_arm64_dbg': 'gyp_debug_simulate_arm64',
169 'v8_linux_arm64_gc_stress_dbg': 'gyp_debug_simulate_arm64',
170 'v8_linux_mipsel_compile_rel': 'gyp_release_simulate_mipsel',
171 'v8_linux_mips64el_compile_rel': 'gyp_release_simulate_mips64el',
172 'v8_android_arm_compile_rel': 'gyp_release_android_arm',
173 },
174 },
175
176
177 # To ease readability, config values are ordered by:
178 # gyp/gn, release/debug, arch type, other values alphabetically.
179 'configs': {
180 # GN release configs for x64.
181 'gn_release_x64': [
182 'gn', 'release_bot', 'x64', 'swarming'],
183
184 # Gyp debug configs for arm.
185 'gyp_debug_arm': [
186 'gyp', 'debug_bot', 'arm', 'crosscompile', 'hard_float', 'swarming'],
187
188 # Gyp debug configs for simulators.
189 'gyp_debug_simulate_arm': [
190 'gyp', 'debug_bot', 'simulate_arm', 'swarming'],
191 'gyp_debug_simulate_arm_asan_edge': [
192 'gyp', 'debug_bot', 'simulate_arm', 'asan', 'edge'],
193 'gyp_debug_simulate_arm64': [
194 'gyp', 'debug_bot', 'simulate_arm64', 'swarming'],
195 'gyp_debug_simulate_arm64_asan_edge': [
196 'gyp', 'debug_bot', 'simulate_arm64', 'asan', 'lsan', 'edge'],
197 'gyp_debug_simulate_arm64_no_snap': [
198 'gyp', 'debug_bot', 'simulate_arm64', 'swarming', 'v8_snapshot_none'],
199 'gyp_debug_simulate_mipsel_asan_edge': [
200 'gyp', 'debug_bot', 'simulate_mipsel', 'asan', 'edge'],
201 'gyp_debug_simulate_x87_no_snap': [
202 'gyp', 'debug_bot', 'simulate_x87', 'v8_snapshot_none'],
203
204 # Gyp debug configs for x64.
205 'gyp_debug_x64': [
206 'gyp', 'debug_bot', 'x64', 'swarming'],
207 'gyp_debug_x64_asan_edge': [
208 'gyp', 'debug_bot', 'x64', 'asan', 'lsan', 'edge'],
209 'gyp_debug_x64_custom': [
210 'gyp', 'debug_bot', 'x64', 'swarming', 'v8_snapshot_custom'],
211 'gyp_debug_x64_minimal_symbols': [
212 'gyp', 'debug_bot', 'x64', 'minimal_symbols', 'swarming'],
213 'gyp_debug_x64_trybot': [
214 'gyp', 'debug_trybot', 'x64', 'swarming'],
215 'gyp_debug_x64_valgrind': [
216 'gyp', 'debug_bot', 'x64', 'swarming', 'valgrind'],
217
218 # Gyp debug configs for x86.
219 'gyp_debug_x86': [
220 'gyp', 'debug_bot', 'x86', 'swarming'],
221 'gyp_debug_x86_minimal_symbols': [
222 'gyp', 'debug_bot', 'x86', 'minimal_symbols', 'swarming'],
223 'gyp_debug_x86_trybot': [
224 'gyp', 'debug_trybot', 'x86', 'swarming'],
225 'gyp_debug_x86_no_i18n': [
226 'gyp', 'debug_bot', 'x86', 'v8_no_i18n'],
227 'gyp_debug_x86_no_snap': [
228 'gyp', 'debug_bot', 'x86', 'swarming', 'v8_snapshot_none'],
229 'gyp_debug_x86_no_snap_trybot': [
230 'gyp', 'debug_trybot', 'x86', 'swarming', 'v8_snapshot_none'],
231 'gyp_debug_x86_vtunejit': [
232 'gyp', 'debug_bot', 'x86', 'v8_enable_vtunejit'],
233 'gyp_full_debug_x86': [
234 'gyp', 'debug', 'x86', 'goma', 'static', 'v8_enable_slow_dchecks',
235 'v8_full_debug'],
236
237 # Gyp release configs for arm.
238 'gyp_release_arm': [
239 'gyp', 'release_bot', 'arm', 'crosscompile', 'hard_float', 'swarming'],
240 'gyp_release_android_arm': [
241 'gyp', 'release_bot', 'arm', 'android', 'crosscompile', 'swarming'],
242 'gyp_release_android_arm64': [
243 'gyp', 'release_bot', 'arm64', 'android', 'crosscompile', 'swarming'],
244
245 # Gyp release configs for mips.
246 'gyp_release_mips_no_snap_no_i18n': [
247 'gyp', 'release', 'mips', 'crosscompile', 'static', 'v8_no_i18n',
248 'v8_snapshot_none'],
249
250 # Gyp release configs for simulators.
251 'gyp_release_simulate_arm': [
252 'gyp', 'release_bot', 'simulate_arm', 'swarming'],
253 'gyp_release_simulate_arm_trybot': [
254 'gyp', 'release_trybot', 'simulate_arm', 'swarming'],
255 'gyp_release_simulate_arm64': [
256 'gyp', 'release_bot', 'simulate_arm64', 'swarming'],
257 'gyp_release_simulate_arm64_msan': [
258 'gyp', 'release_bot', 'simulate_arm64', 'msan', 'swarming'],
259 'gyp_release_simulate_arm64_msan_minimal_symbols': [
260 'gyp', 'release_bot', 'simulate_arm64', 'msan', 'minimal_symbols',
261 'swarming'],
262 'gyp_release_simulate_arm64_trybot': [
263 'gyp', 'release_trybot', 'simulate_arm64', 'swarming'],
264 'gyp_release_simulate_mipsel': [
265 'gyp', 'release_bot', 'simulate_mipsel', 'swarming'],
266 'gyp_release_simulate_mips64el': [
267 'gyp', 'release_bot', 'simulate_mips64el', 'swarming'],
268 'gyp_release_simulate_ppc': [
269 'gyp', 'release_bot', 'simulate_ppc', 'swarming'],
270 'gyp_release_simulate_ppc64': [
271 'gyp', 'release_bot', 'simulate_ppc64', 'swarming'],
272 'gyp_release_simulate_s390': [
273 'gyp', 'release_bot', 'simulate_s390', 'swarming'],
274 'gyp_release_simulate_s390x': [
275 'gyp', 'release_bot', 'simulate_s390x', 'swarming'],
276
277 # Gyp release configs for x64.
278 'gyp_release_x64': [
279 'gyp', 'release_bot', 'x64', 'swarming'],
280 'gyp_release_x64_asan': [
281 'gyp', 'release_bot', 'x64', 'asan', 'lsan', 'swarming'],
282 'gyp_release_x64_asan_minimal_symbols': [
283 'gyp', 'release_bot', 'x64', 'asan', 'lsan', 'minimal_symbols',
284 'swarming'],
285 'gyp_release_x64_asan_minimal_symbols_coverage': [
286 'gyp', 'release_bot', 'x64', 'asan', 'bb', 'coverage', 'lsan',
287 'minimal_symbols', 'swarming'],
288 'gyp_release_x64_asan_symbolized_edge_verify_heap': [
289 'gyp', 'release_bot', 'x64', 'asan', 'edge', 'lsan', 'symbolized',
290 'v8_verify_heap'],
291 'gyp_release_x64_cfi_symbolized': [
292 'gyp', 'release_bot', 'x64', 'cfi', 'swarming', 'symbolized'],
293 'gyp_release_x64_clang': [
294 'gyp', 'release_bot', 'x64', 'clang', 'swarming'],
295 'gyp_release_x64_gcc_coverage': [
296 'gyp', 'release_bot', 'x64', 'coverage', 'gcc'],
297 'gyp_release_x64_minimal_symbols': [
298 'gyp', 'release_bot', 'x64', 'minimal_symbols', 'swarming'],
299 'gyp_release_x64_tsan': [
300 'gyp', 'release_bot', 'x64', 'tsan', 'swarming'],
301 'gyp_release_x64_tsan_minimal_symbols': [
302 'gyp', 'release_bot', 'x64', 'tsan', 'minimal_symbols', 'swarming'],
303 'gyp_release_x64_internal': [
304 'gyp', 'release_bot', 'x64', 'swarming', 'v8_snapshot_internal'],
305 'gyp_release_x64_trybot': [
306 'gyp', 'release_trybot', 'x64', 'swarming'],
307
308 # Gyp release configs for x86.
309 'gyp_release_x86': [
310 'gyp', 'release_bot', 'x86', 'swarming'],
311 'gyp_release_x86_disassembler': [
312 'gyp', 'release_bot', 'x86', 'v8_enable_disassembler'],
313 'gyp_release_x86_gcc': [
314 'gyp', 'release_bot', 'x86', 'gcc'],
315 'gyp_release_x86_gcc_minimal_symbols': [
316 'gyp', 'release_bot', 'x86', 'gcc', 'minimal_symbols'],
317 'gyp_release_x86_interpreted_regexp': [
318 'gyp', 'release_bot', 'x86', 'v8_interpreted_regexp'],
319 'gyp_release_x86_gcmole': [
320 'gyp', 'release_bot', 'x86', 'gcmole', 'swarming'],
321 'gyp_release_x86_gcmole_trybot': [
322 'gyp', 'release_trybot', 'x86', 'gcmole', 'swarming'],
323 'gyp_release_x86_minimal_symbols': [
324 'gyp', 'release_bot', 'x86', 'minimal_symbols', 'swarming'],
325 'gyp_release_x86_no_i18n_trybot': [
326 'gyp', 'release_trybot', 'x86', 'swarming', 'v8_no_i18n'],
327 'gyp_release_x86_no_snap': [
328 'gyp', 'release_bot', 'x86', 'swarming', 'v8_snapshot_none'],
329 'gyp_release_x86_no_snap_shared_minimal_symbols': [
330 'gyp', 'release_bot', 'x86', 'minimal_symbols', 'shared', 'swarming',
331 'v8_snapshot_none'],
332 'gyp_release_x86_no_snap_trybot': [
333 'gyp', 'release_trybot', 'x86', 'swarming', 'v8_snapshot_none'],
334 'gyp_release_x86_predictable': [
335 'gyp', 'release_bot', 'x86', 'v8_enable_verify_predictable'],
336 'gyp_release_x86_shared_verify_heap': [
337 'gyp', 'release_bot', 'x86', 'shared', 'swarming', 'v8_verify_heap'],
338 'gyp_release_x86_trybot': [
339 'gyp', 'release_trybot', 'x86', 'swarming'],
340 },
341
342 'mixins': {
343 'android': {
344 'gn_args': 'target_os="android"',
345 'gyp_defines': 'OS=android',
346 },
347
348 'arm': {
349 'gn_args': 'target_cpu="arm"',
350 'gyp_defines': 'target_arch=arm',
351 },
352
353 'arm64': {
354 'gn_args': 'target_cpu="arm64"',
355 'gyp_defines': 'target_arch=arm64',
356 },
357
358 'asan': {
359 'gn_args': 'clang=true asan=true',
360 'gyp_defines': 'clang=1 asan=1',
361 },
362
363 'bb': {
364 'gn_args': 'sanitizer_coverage_flags="bb"',
365 'gyp_defines': 'sanitizer_coverage=bb',
366 },
367
368 'cfi': {
369 'gn_args': 'is_cfi=true use_cfi_diag=true',
370 'gyp_defines': 'cfi_vptr=1 cfi_diag=1',
371 },
372
373 'clang': {
374 'gn_args': 'clang=true',
375 'gyp_defines': 'clang=1',
376 },
377
378 'coverage': {
379 # TODO(machenbach): Add this to gn.
380 'gyp_defines': 'coverage=1',
381 },
382
383 'crosscompile': {
384 'gyp_crosscompile': True,
385 },
386
387 'dcheck_always_on': {
388 'gn_args': 'dcheck_always_on=true',
389 'gyp_defines': 'dcheck_always_on=1',
390 },
391
392 'debug': {
393 'gn_args': 'is_debug=true',
394 },
395
396 'debug_bot': {
397 'mixins': [
398 'debug', 'static', 'goma', 'v8_enable_slow_dchecks',
399 'v8_optimized_debug'],
400 },
401
402 'debug_trybot': {
403 'mixins': ['debug_bot', 'minimal_symbols'],
404 },
405
406 'edge': {
407 'gn_args': 'sanitizer_coverage_flags="edge"',
408 'gyp_defines': 'sanitizer_coverage=edge',
409 },
410
411 'gcc': {
412 'gn_args': 'clang=false',
413 'gyp_defines': 'clang=0',
414 },
415
416 'gcmole': {
417 # TODO(machenbach): Add this to gn.
418 'gn_args': 'gcmole=true',
419 'gyp_defines': 'gcmole=1',
420 },
421
422 'gn': {'type': 'gn'},
423
424 'goma': {
425 # The MB code will properly escape goma_dir if necessary in the GYP
426 # code path; the GN code path needs no escaping.
427 'gn_args': 'use_goma=true',
428 'gyp_defines': 'use_goma=1',
429 },
430
431 'gyp': {'type': 'gyp'},
432
433 'hard_float': {
434 'gn_args': 'arm_float_abi="hard"',
435 'gyp_defines': 'arm_float_abi=hard',
436 },
437
438 'lsan': {
439 'gn_args': 'lsan=true',
440 'gyp_defines': 'lsan=1',
441 },
442
443 'minimal_symbols': {
444 'gn_args': 'symbol_level=1',
445 'gyp_defines': 'fastbuild=1',
446 },
447
448 'mips': {
449 'gn_args': 'target_cpu="mips"',
450 'gyp_defines': 'target_arch=mips',
451 },
452
453 'msan': {
454 'gn_args': 'clang=true msan=true',
455 'gyp_defines': 'clang=1 msan=1',
456 },
457
458 'release': {
459 'gn_args': 'is_debug=false',
460 },
461
462 'release_bot': {
463 'mixins': ['release', 'static', 'goma'],
464 },
465
466 'release_trybot': {
467 'mixins': ['release_bot', 'minimal_symbols', 'dcheck_always_on'],
468 },
469
470 'shared': {
471 'gn_args': 'is_component_build=true',
472 'gyp_defines': 'component=shared_library',
473 },
474
475 'simulate_arm': {
476 'gn_args': 'target_cpu="ia32" v8_target_cpu="arm"',
477 'gyp_defines': 'target_arch=ia32 v8_target_arch=arm',
478 },
479
480 'simulate_arm64': {
481 'gn_args': 'target_cpu="x64" v8_target_cpu="arm64"',
482 'gyp_defines': 'target_arch=x64 v8_target_arch=arm64',
483 },
484
485 'simulate_mipsel': {
486 'gn_args': 'target_cpu="ia32" v8_target_cpu="mipsel"',
487 'gyp_defines': 'target_arch=ia32 v8_target_arch=mipsel',
488 },
489
490 'simulate_mips64el': {
491 'gn_args': 'target_cpu="x64" v8_target_cpu="mips64el"',
492 'gyp_defines': 'target_arch=x64 v8_target_arch=mips64el',
493 },
494
495 'simulate_ppc': {
496 'gn_args': 'target_cpu="ia32" v8_target_cpu="ppc"',
497 'gyp_defines': 'target_arch=ia32 v8_target_arch=ppc',
498 },
499
500 'simulate_ppc64': {
501 'gn_args': 'target_cpu="x64" v8_target_cpu="ppc64"',
502 'gyp_defines': 'target_arch=x64 v8_target_arch=ppc64',
503 },
504
505 'simulate_s390': {
506 'gn_args': 'target_cpu="ia32" v8_target_cpu="s390"',
507 'gyp_defines': 'target_arch=ia32 v8_target_arch=s390',
508 },
509
510 'simulate_s390x': {
511 'gn_args': 'target_cpu="x64" v8_target_cpu="s390x"',
512 'gyp_defines': 'target_arch=x64 v8_target_arch=s390x',
513 },
514
515 'simulate_x87': {
516 'gn_args': 'target_cpu="ia32" v8_target_cpu="x87"',
517 'gyp_defines': 'target_arch=ia32 v8_target_arch=x87',
518 },
519
520 'static': {
521 'gn_args': 'is_component_build=false',
522 'gyp_defines': 'component=static_library',
523 },
524
525 'swarming': {
526 'gn_args': 'v8_test_isolation_mode="prepare"',
527 'gyp_defines': 'test_isolation_mode=prepare',
528 },
529
530 # TODO(machenbach): Remove the symbolized config after the bots are gone.
531 'symbolized': {
532 'gn_args': 'symbolized=true',
533 'gyp_defines':
534 'release_extra_cflags="-fno-inline-functions -fno-inline"',
535 },
536
537 'tsan': {
538 'gn_args': 'clang=true tsan=true',
539 'gyp_defines': 'clang=1 tsan=1',
540 },
541
542 'valgrind': {
543 # TODO(machenbach): Add this to gn.
544 'gn_args': 'has_valgrind=true',
545 'gyp_defines': 'has_valgrind=1',
546 },
547
548 'v8_no_i18n': {
549 'gn_args': 'v8_enable_i18n_support=false',
550 'gyp_defines': 'v8_enable_i18n_support=0',
551 },
552
553 'v8_enable_disassembler': {
554 'gn_args': 'v8_enable_disassembler=true',
555 'gyp_defines': 'v8_enable_disassembler=1',
556 },
557
558 'v8_enable_slow_dchecks': {
559 'gn_args': 'v8_enable_slow_dchecks=true',
560 'gyp_defines': 'v8_enable_slow_dchecks=1',
561 },
562
563 'v8_enable_verify_predictable': {
564 'gn_args': 'v8_enable_verify_predictable=true',
565 'gyp_defines': 'v8_enable_verify_predictable=1',
566 },
567
568 'v8_enable_vtunejit': {
569 'gn_args': 'v8_enable_vtunejit=true',
570 'gyp_defines': 'v8_enable_vtunejit=1',
571 },
572
573 'v8_full_debug': {
574 'gn_args': 'v8_optimized_debug=false',
575 'gyp_defines': 'v8_optimized_debug=0',
576 },
577
578 'v8_interpreted_regexp': {
579 'gn_args': 'v8_interpreted_regexp=true',
580 'gyp_defines': 'v8_interpreted_regexp=1',
581 },
582
583 'v8_optimized_debug': {
584 # This is the default in gn for debug.
585 'gyp_defines': 'v8_optimized_debug=1',
586 },
587
588 'v8_snapshot_custom': {
589 # TODO(machenbach): Add this to gn.
590 # Path needs to be relative to src/v8.gyp.
591 'gyp_defines': 'embed_script=../test/mjsunit/mjsunit.js',
592 },
593
594 'v8_snapshot_internal': {
595 'gn_args': 'v8_use_external_startup_data=false',
596 'gyp_defines': 'v8_use_external_startup_data=0',
597 },
598
599 'v8_snapshot_none': {
600 'gn_args': 'v8_use_snapshot=false',
601 'gyp_defines': 'v8_use_snapshot=false',
602 },
603
604 'v8_verify_heap': {
605 'gn_args': 'v8_enable_verify_heap=true',
606 'gyp_defines': 'v8_enable_verify_heap=1',
607 },
608
609 'x64': {
610 'gn_args': 'target_cpu="x64"',
611 'gyp_defines': 'target_arch=x64',
612 },
613
614 'x86': {
615 'gn_args': 'target_cpu="x86"',
616 'gyp_defines': 'target_arch=ia32',
617 },
618 },
619}