mb_config.pyl 29.2 KB
Newer Older
machenbach's avatar
machenbach committed
1 2 3 4 5 6 7 8
# Copyright 2016 The V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

{
  # This is a map of buildbot master names -> buildbot builder names ->
  # config names (where each config name is a key in the 'configs' dict,
  # below). MB uses this dict to look up which config to use for a given bot.
machenbach's avatar
machenbach committed
9
  # Bots are ordered by appearance on waterfall.
machenbach's avatar
machenbach committed
10
  'masters': {
11
    'developer_default': {
12 13 14 15 16 17
      'arm.debug': 'default_debug_arm',
      'arm.optdebug': 'default_optdebug_arm',
      'arm.release': 'default_release_arm',
      'arm64.debug': 'default_debug_arm64',
      'arm64.optdebug': 'default_optdebug_arm64',
      'arm64.release': 'default_release_arm64',
18 19 20
      'ia32.debug': 'default_debug_x86',
      'ia32.optdebug': 'default_optdebug_x86',
      'ia32.release': 'default_release_x86',
21 22 23 24 25 26
      'mipsel.debug': 'default_debug_mipsel',
      'mipsel.optdebug': 'default_optdebug_mipsel',
      'mipsel.release': 'default_release_mipsel',
      'mips64el.debug': 'default_debug_mips64el',
      'mips64el.optdebug': 'default_optdebug_mips64el',
      'mips64el.release': 'default_release_mips64el',
27 28 29 30 31 32 33 34 35 36 37 38
      'ppc.debug': 'default_debug_ppc',
      'ppc.optdebug': 'default_optdebug_ppc',
      'ppc.release': 'default_release_ppc',
      'ppc64.debug': 'default_debug_ppc64',
      'ppc64.optdebug': 'default_optdebug_ppc64',
      'ppc64.release': 'default_release_ppc64',
      's390.debug': 'default_debug_s390',
      's390.optdebug': 'default_optdebug_s390',
      's390.release': 'default_release_s390',
      's390x.debug': 'default_debug_s390x',
      's390x.optdebug': 'default_optdebug_s390x',
      's390x.release': 'default_release_s390x',
39 40 41 42 43
      'x64.debug': 'default_debug_x64',
      'x64.optdebug': 'default_optdebug_x64',
      'x64.release': 'default_release_x64',
    },

44 45 46 47 48 49 50 51
    'client.dart.fyi': {
      'v8-linux-release': 'gyp_release_x86_disassembler',
      'v8-win-release': 'gyp_release_x86_disassembler',
      'v8-mac-release': 'gyp_release_x86_disassembler',
    },
    'client.dynamorio': {
      'linux-v8-dr': 'gyp_release_x64',
    },
machenbach's avatar
machenbach committed
52
    'client.v8': {
53
      # Linux.
54 55
      'V8 Linux - builder': 'gn_release_x86_gcmole',
      'V8 Linux - debug builder': 'gn_debug_x86',
56 57 58
      'V8 Linux - nosnap builder': 'gn_release_x86_no_snap',
      'V8 Linux - nosnap debug builder': 'gn_debug_x86_no_snap',
      'V8 Linux - shared': 'gn_release_x86_shared_verify_heap',
59
      'V8 Linux - noi18n - debug': 'gn_debug_x86_no_i18n',
60
      'V8 Linux - verify csa': 'gn_release_x86_verify_csa',
machenbach's avatar
machenbach committed
61
      # Linux64.
62
      'V8 Linux64 - builder': 'gn_release_x64_valgrind',
63
      'V8 Linux64 - debug builder': 'gn_debug_x64_valgrind',
64
      'V8 Linux64 - custom snapshot - debug builder': 'gn_debug_x64_custom',
65
      'V8 Linux64 - internal snapshot': 'gn_release_x64_internal',
66
      'V8 Linux64 - gyp': 'gyp_release_x64',
67
      'V8 Linux64 - verify csa': 'gn_release_x64_verify_csa',
68
      # Windows.
machenbach's avatar
machenbach committed
69 70
      'V8 Win32 - builder': 'gn_release_x86_minimal_symbols',
      'V8 Win32 - debug builder': 'gn_debug_x86_minimal_symbols',
71
      'V8 Win32 - nosnap - shared':
machenbach's avatar
machenbach committed
72 73 74
        'gn_release_x86_no_snap_shared_minimal_symbols',
      'V8 Win64': 'gn_release_x64_minimal_symbols',
      'V8 Win64 - debug': 'gn_debug_x64_minimal_symbols',
75
      # TODO(machenbach): Switch plugins on when errors are fixed.
76
      'V8 Win64 - clang': 'gn_release_x64_clang',
77
      # Mac.
machenbach's avatar
machenbach committed
78 79 80 81 82
      'V8 Mac': 'gn_release_x86',
      'V8 Mac - debug': 'gn_debug_x86',
      'V8 Mac64': 'gn_release_x64',
      'V8 Mac64 - debug': 'gn_debug_x64',
      'V8 Mac GC Stress': 'gn_debug_x86',
83
      'V8 Mac64 ASAN': 'gn_release_x64_asan_no_lsan',
84
      # Sanitizers.
85
      'V8 Linux64 ASAN': 'gn_release_x64_asan',
machenbach's avatar
machenbach committed
86
      'V8 Linux64 TSAN': 'gn_release_x64_tsan',
87 88
      'V8 Linux64 TSAN - concurrent marking':
          'gn_release_x64_tsan_concurrent_marking',
89
      'V8 Linux - arm64 - sim - MSAN': 'gn_release_simulate_arm64_msan',
90
      # Clusterfuzz.
91
      'V8 Linux64 - release builder': 'gn_release_x64_correctness_fuzzer',
92
      'V8 Linux64 ASAN no inline - release builder':
93 94
          'gn_release_x64_asan_symbolized_edge_verify_heap',
      'V8 Linux64 ASAN - debug builder': 'gn_debug_x64_asan_edge',
95
      'V8 Linux64 ASAN arm64 - debug builder':
96
          'gn_debug_simulate_arm64_asan_edge',
97
      'V8 Linux ASAN arm - debug builder':
98
          'gn_debug_simulate_arm_asan_edge',
99
      'V8 Linux ASAN mipsel - debug builder':
100
          'gn_debug_simulate_mipsel_asan_edge',
101
      # Misc.
102
      'V8 Linux gcc 4.8': 'gn_release_x86_gcc',
103
      'V8 Linux64 gcc 4.8 - debug': 'gn_debug_x64_gcc',
machenbach's avatar
machenbach committed
104 105
      # FYI.
      'V8 Linux - swarming staging': 'gn_release_x64',
106 107 108 109
      # TODO(machenbach): Figure out if symbolized is still needed. The
      # original config also specified -O1, which we dropped because chromium
      # doesn't have it (anymore).
      'V8 Linux64 - cfi': 'gyp_release_x64_cfi_symbolized',
110
      'V8 Linux - vtunejit': 'gn_debug_x86_vtunejit',
111
      'V8 Linux64 - gcov coverage': 'gyp_release_x64_gcc_coverage',
112
      'V8 Linux - predictable': 'gn_release_x86_predictable',
113
      'V8 Linux - full debug': 'gyp_full_debug_x86',
114
      'V8 Linux - interpreted regexp': 'gn_release_x86_interpreted_regexp',
115
      'V8 Random Deopt Fuzzer - debug': 'gyp_debug_x86',
machenbach's avatar
machenbach committed
116
    },
117 118 119

    'client.v8.ports': {
      # Arm.
120 121
      'V8 Arm - builder': 'gn_release_arm',
      'V8 Arm - debug builder': 'gn_debug_arm',
122
      'V8 Android Arm - builder': 'gn_release_android_arm',
123 124
      'V8 Linux - arm - sim': 'gn_release_simulate_arm',
      'V8 Linux - arm - sim - debug': 'gn_debug_simulate_arm',
125
      # Arm64.
126
      'V8 Android Arm64 - builder': 'gn_release_android_arm64',
127 128
      'V8 Linux - arm64 - sim': 'gn_release_simulate_arm64',
      'V8 Linux - arm64 - sim - debug': 'gn_debug_simulate_arm64',
129
      'V8 Linux - arm64 - sim - nosnap - debug':
130 131
          'gn_debug_simulate_arm64_no_snap',
      'V8 Linux - arm64 - sim - gc stress': 'gn_debug_simulate_arm64',
132 133
      # Mips.
      'V8 Mips - builder': 'gyp_release_mips_no_snap_no_i18n',
134 135
      'V8 Linux - mipsel - sim - builder': 'gn_release_simulate_mipsel',
      'V8 Linux - mips64el - sim - builder': 'gn_release_simulate_mips64el',
136 137 138 139 140 141 142
      # PPC.
      'V8 Linux - ppc - sim': 'gyp_release_simulate_ppc',
      'V8 Linux - ppc64 - sim': 'gyp_release_simulate_ppc64',
      # S390.
      'V8 Linux - s390 - sim': 'gyp_release_simulate_s390',
      'V8 Linux - s390x - sim': 'gyp_release_simulate_s390x',
      # X87.
143
      'V8 Linux - x87 - nosnap - debug builder': 'gyp_debug_simulate_x87',
144
    },
145
    'client.v8.branches': {
146 147 148 149
      'V8 Linux - beta branch': 'gn_release_x86',
      'V8 Linux - beta branch - debug': 'gn_debug_x86',
      'V8 Linux - stable branch': 'gn_release_x86',
      'V8 Linux - stable branch - debug': 'gn_debug_x86',
150
      'V8 Linux64 - beta branch': 'gn_release_x64',
151 152 153
      'V8 Linux64 - beta branch - debug': 'gn_debug_x64',
      'V8 Linux64 - stable branch': 'gn_release_x64',
      'V8 Linux64 - stable branch - debug': 'gn_debug_x64',
154 155 156 157
      'V8 arm - sim - beta branch': 'gn_release_simulate_arm',
      'V8 arm - sim - beta branch - debug': 'gn_debug_simulate_arm',
      'V8 arm - sim - stable branch': 'gn_release_simulate_arm',
      'V8 arm - sim - stable branch - debug': 'gn_debug_simulate_arm',
158 159 160 161
      'V8 mips64el - sim - beta branch': 'gn_release_simulate_mips64el',
      'V8 mips64el - sim - stable branch': 'gn_release_simulate_mips64el',
      'V8 mipsel - sim - beta branch': 'gn_release_simulate_mipsel',
      'V8 mipsel - sim - stable branch': 'gn_release_simulate_mipsel',
162 163 164 165 166 167 168 169 170
      'V8 ppc - sim - beta branch': 'gyp_release_simulate_ppc',
      'V8 ppc - sim - stable branch': 'gyp_release_simulate_ppc',
      'V8 ppc64 - sim - beta branch': 'gyp_release_simulate_ppc64',
      'V8 ppc64 - sim - stable branch': 'gyp_release_simulate_ppc64',
      'V8 s390 - sim - beta branch': 'gyp_release_simulate_s390',
      'V8 s390 - sim - stable branch': 'gyp_release_simulate_s390',
      'V8 s390x - sim - beta branch': 'gyp_release_simulate_s390x',
      'V8 s390x - sim - stable branch': 'gyp_release_simulate_s390x',
    },
machenbach's avatar
machenbach committed
171
    'tryserver.v8': {
172
      'v8_linux_rel_ng': 'gn_release_x86_gcmole_trybot',
173
      'v8_linux_verify_csa_rel_ng': 'gn_release_x86_verify_csa',
174 175 176
      'v8_linux_avx2_dbg': 'gn_debug_x86_trybot',
      'v8_linux_nodcheck_rel_ng': 'gn_release_x86_minimal_symbols',
      'v8_linux_dbg_ng': 'gn_debug_x86_trybot',
177
      'v8_linux_noi18n_rel_ng': 'gn_release_x86_no_i18n_trybot',
178
      'v8_linux_gc_stress_dbg': 'gn_debug_x86_trybot',
179 180
      'v8_linux_nosnap_rel': 'gn_release_x86_no_snap_trybot',
      'v8_linux_nosnap_dbg': 'gn_debug_x86_no_snap_trybot',
181 182
      'v8_linux_gcc_compile_rel': 'gn_release_x86_gcc_minimal_symbols',
      'v8_linux_gcc_rel': 'gn_release_x86_gcc_minimal_symbols',
183
      'v8_linux64_gcc_compile_dbg': 'gn_debug_x64_gcc',
184
      'v8_linux64_rel_ng': 'gn_release_x64_valgrind_trybot',
185
      'v8_linux64_verify_csa_rel_ng': 'gn_release_x64_verify_csa',
186
      'v8_linux64_gyp_rel_ng': 'gyp_release_x64',
187
      'v8_linux64_avx2_rel_ng': 'gn_release_x64_trybot',
188
      'v8_linux64_avx2_dbg': 'gn_debug_x64_trybot',
189
      'v8_linux64_asan_rel_ng': 'gn_release_x64_asan_minimal_symbols',
190
      'v8_linux64_msan_rel': 'gn_release_simulate_arm64_msan_minimal_symbols',
191 192
      'v8_linux64_sanitizer_coverage_rel':
          'gyp_release_x64_asan_minimal_symbols_coverage',
machenbach's avatar
machenbach committed
193
      'v8_linux64_tsan_rel': 'gn_release_x64_tsan_minimal_symbols',
194 195
      'v8_linux64_tsan_concurrent_marking_rel_ng':
          'gn_release_x64_tsan_concurrent_marking_minimal_symbols',
machenbach's avatar
machenbach committed
196 197 198
      'v8_win_dbg': 'gn_debug_x86_trybot',
      'v8_win_compile_dbg': 'gn_debug_x86_trybot',
      'v8_win_rel_ng': 'gn_release_x86_trybot',
199
      'v8_win_nosnap_shared_rel_ng':
machenbach's avatar
machenbach committed
200 201 202
        'gn_release_x86_no_snap_shared_minimal_symbols',
      'v8_win64_dbg': 'gn_debug_x64_minimal_symbols',
      'v8_win64_rel_ng': 'gn_release_x64_trybot',
machenbach's avatar
machenbach committed
203 204 205 206 207
      'v8_mac_rel_ng': 'gn_release_x86_trybot',
      'v8_mac_dbg': 'gn_debug_x86_trybot',
      'v8_mac_gc_stress_dbg': 'gn_debug_x86_trybot',
      'v8_mac64_rel': 'gn_release_x64_trybot',
      'v8_mac64_dbg': 'gn_debug_x64_minimal_symbols',
208
      'v8_mac64_asan_rel': 'gn_release_x64_asan_no_lsan',
209 210 211 212
      'v8_linux_arm_rel_ng': 'gn_release_simulate_arm_trybot',
      'v8_linux_arm_dbg': 'gn_debug_simulate_arm',
      'v8_linux_arm_armv8a_rel': 'gn_release_simulate_arm_trybot',
      'v8_linux_arm_armv8a_dbg': 'gn_debug_simulate_arm',
213 214 215
      'v8_linux_arm64_rel_ng': 'gn_release_simulate_arm64_trybot',
      'v8_linux_arm64_dbg': 'gn_debug_simulate_arm64',
      'v8_linux_arm64_gc_stress_dbg': 'gn_debug_simulate_arm64',
216 217
      'v8_linux_mipsel_compile_rel': 'gn_release_simulate_mipsel',
      'v8_linux_mips64el_compile_rel': 'gn_release_simulate_mips64el',
218
      'v8_android_arm_compile_rel': 'gn_release_android_arm',
machenbach's avatar
machenbach committed
219 220 221
    },
  },

222 223 224

  # To ease readability, config values are ordered by:
  # gyp/gn, release/debug, arch type, other values alphabetically.
machenbach's avatar
machenbach committed
225
  'configs': {
226
    # Developer default configs.
227 228 229 230 231 232 233 234 235 236 237 238 239 240
    'default_debug_arm': [
      'gn', 'debug', 'simulate_arm', 'v8_enable_slow_dchecks',
      'v8_full_debug'],
    'default_optdebug_arm': [
      'gn', 'debug', 'simulate_arm', 'v8_enable_slow_dchecks'],
    'default_release_arm': [
      'gn', 'release', 'simulate_arm'],
    'default_debug_arm64': [
      'gn', 'debug', 'simulate_arm64', 'v8_enable_slow_dchecks',
      'v8_full_debug'],
    'default_optdebug_arm64': [
      'gn', 'debug', 'simulate_arm64', 'v8_enable_slow_dchecks'],
    'default_release_arm64': [
      'gn', 'release', 'simulate_arm64'],
241 242 243 244 245 246 247 248 249 250 251 252 253 254
    'default_debug_mipsel': [
      'gn', 'debug', 'simulate_mipsel', 'v8_enable_slow_dchecks',
      'v8_full_debug'],
    'default_optdebug_mipsel': [
      'gn', 'debug', 'simulate_mipsel', 'v8_enable_slow_dchecks'],
    'default_release_mipsel': [
      'gn', 'release', 'simulate_mipsel'],
    'default_debug_mips64el': [
      'gn', 'debug', 'simulate_mips64el', 'v8_enable_slow_dchecks',
      'v8_full_debug'],
    'default_optdebug_mips64el': [
      'gn', 'debug', 'simulate_mips64el', 'v8_enable_slow_dchecks'],
    'default_release_mips64el': [
      'gn', 'release', 'simulate_mips64el'],
255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282
    'default_debug_ppc': [
      'gn', 'debug', 'simulate_ppc', 'v8_enable_slow_dchecks',
      'v8_full_debug'],
    'default_optdebug_ppc': [
      'gn', 'debug', 'simulate_ppc', 'v8_enable_slow_dchecks'],
    'default_release_ppc': [
      'gn', 'release', 'simulate_ppc'],
    'default_debug_ppc64': [
      'gn', 'debug', 'simulate_ppc64', 'v8_enable_slow_dchecks',
      'v8_full_debug'],
    'default_optdebug_ppc64': [
      'gn', 'debug', 'simulate_ppc64', 'v8_enable_slow_dchecks'],
    'default_release_ppc64': [
      'gn', 'release', 'simulate_ppc64'],
    'default_debug_s390': [
      'gn', 'debug', 'simulate_s390', 'v8_enable_slow_dchecks',
      'v8_full_debug'],
    'default_optdebug_s390': [
      'gn', 'debug', 'simulate_s390', 'v8_enable_slow_dchecks'],
    'default_release_s390': [
      'gn', 'release', 'simulate_s390'],
    'default_debug_s390x': [
      'gn', 'debug', 'simulate_s390x', 'v8_enable_slow_dchecks',
      'v8_full_debug'],
    'default_optdebug_s390x': [
      'gn', 'debug', 'simulate_s390x', 'v8_enable_slow_dchecks'],
    'default_release_s390x': [
      'gn', 'release', 'simulate_s390x'],
283 284 285 286 287 288 289 290 291 292 293 294 295 296
    'default_debug_x64': [
      'gn', 'debug', 'x64', 'v8_enable_slow_dchecks', 'v8_full_debug'],
    'default_optdebug_x64': [
      'gn', 'debug', 'x64', 'v8_enable_slow_dchecks'],
    'default_release_x64': [
      'gn', 'release', 'x64'],
    'default_debug_x86': [
      'gn', 'debug', 'x86', 'v8_enable_slow_dchecks', 'v8_full_debug'],
    'default_optdebug_x86': [
      'gn', 'debug', 'x86', 'v8_enable_slow_dchecks'],
    'default_release_x86': [
      'gn', 'release', 'x86'],


297
    # GN debug configs for simulators.
298 299
    'gn_debug_simulate_arm': [
      'gn', 'debug_bot', 'simulate_arm', 'swarming'],
300 301
    'gn_debug_simulate_arm_asan_edge': [
      'gn', 'debug_bot', 'simulate_arm', 'asan', 'edge'],
302 303
    'gn_debug_simulate_arm64': [
      'gn', 'debug_bot', 'simulate_arm64', 'swarming'],
304 305
    'gn_debug_simulate_arm64_asan_edge': [
      'gn', 'debug_bot', 'simulate_arm64', 'asan', 'lsan', 'edge'],
306
    'gn_debug_simulate_arm64_no_snap': [
307 308
      'gn', 'debug', 'simulate_arm64', 'shared', 'goma',
      'v8_optimized_debug', 'swarming', 'v8_snapshot_none'],
309 310
    'gn_debug_simulate_mipsel_asan_edge': [
      'gn', 'debug_bot', 'simulate_mipsel', 'asan', 'edge'],
311 312

    # GN release configs for simulators.
313 314 315 316
    'gn_release_simulate_arm': [
      'gn', 'release_bot', 'simulate_arm', 'swarming'],
    'gn_release_simulate_arm_trybot': [
      'gn', 'release_trybot', 'simulate_arm', 'swarming'],
317 318
    'gn_release_simulate_arm64': [
      'gn', 'release_bot', 'simulate_arm64', 'swarming'],
319 320 321 322 323
    'gn_release_simulate_arm64_msan': [
      'gn', 'release_bot', 'simulate_arm64', 'msan', 'swarming'],
    'gn_release_simulate_arm64_msan_minimal_symbols': [
      'gn', 'release_bot', 'simulate_arm64', 'msan', 'minimal_symbols',
      'swarming'],
324 325
    'gn_release_simulate_arm64_trybot': [
      'gn', 'release_trybot', 'simulate_arm64', 'swarming'],
326 327 328 329
    'gn_release_simulate_mipsel': [
      'gn', 'release_bot', 'simulate_mipsel', 'swarming'],
    'gn_release_simulate_mips64el': [
      'gn', 'release_bot', 'simulate_mips64el', 'swarming'],
330

331 332
    # GN debug configs for arm.
    'gn_debug_arm': [
333
      'gn', 'debug_bot', 'arm', 'crosscompile', 'hard_float', 'swarming'],
334

335
    # GN release configs for arm.
336 337
    'gn_release_arm': [
      'gn', 'release_bot', 'arm', 'crosscompile', 'hard_float', 'swarming'],
338
    'gn_release_android_arm': [
339 340
      'gn', 'release_bot', 'arm', 'android', 'crosscompile',
      'minimal_symbols', 'swarming'],
341
    'gn_release_android_arm64': [
342 343
      'gn', 'release_bot', 'arm64', 'android', 'crosscompile',
      'minimal_symbols', 'swarming'],
344

345
    # GN release configs for x64.
346 347
    'gn_release_x64': [
      'gn', 'release_bot', 'x64', 'swarming'],
348 349 350 351 352
    'gn_release_x64_asan': [
      'gn', 'release_bot', 'x64', 'asan', 'lsan', 'swarming'],
    'gn_release_x64_asan_minimal_symbols': [
      'gn', 'release_bot', 'x64', 'asan', 'lsan', 'minimal_symbols',
      'swarming'],
353 354
    'gn_release_x64_asan_no_lsan': [
      'gn', 'release_bot', 'x64', 'asan', 'swarming'],
355 356 357
    'gn_release_x64_asan_symbolized_edge_verify_heap': [
      'gn', 'release_bot', 'x64', 'asan', 'edge', 'lsan', 'symbolized',
      'v8_verify_heap'],
358 359
    'gn_release_x64_clang': [
      'gn', 'release_bot', 'x64', 'clang', 'swarming'],
360 361
    'gn_release_x64_correctness_fuzzer' : [
      'gn', 'release_bot', 'x64', 'v8_correctness_fuzzer'],
362 363
    'gn_release_x64_internal': [
      'gn', 'release_bot', 'x64', 'swarming', 'v8_snapshot_internal'],
machenbach's avatar
machenbach committed
364 365
    'gn_release_x64_minimal_symbols': [
      'gn', 'release_bot', 'x64', 'minimal_symbols', 'swarming'],
366 367
    'gn_release_x64_trybot': [
      'gn', 'release_trybot', 'x64', 'swarming'],
machenbach's avatar
machenbach committed
368 369
    'gn_release_x64_tsan': [
      'gn', 'release_bot', 'x64', 'tsan', 'swarming'],
370 371 372 373 374 375
    'gn_release_x64_tsan_concurrent_marking': [
      'gn', 'release_bot', 'x64', 'v8_enable_concurrent_marking', 'tsan',
      'swarming'],
    'gn_release_x64_tsan_concurrent_marking_minimal_symbols': [
      'gn', 'release_bot', 'x64', 'v8_enable_concurrent_marking', 'tsan',
      'minimal_symbols', 'swarming'],
machenbach's avatar
machenbach committed
376 377
    'gn_release_x64_tsan_minimal_symbols': [
      'gn', 'release_bot', 'x64', 'tsan', 'minimal_symbols', 'swarming'],
378 379 380 381
    'gn_release_x64_valgrind': [
      'gn', 'release_bot', 'x64', 'swarming', 'valgrind'],
    'gn_release_x64_valgrind_trybot': [
      'gn', 'release_trybot', 'x64', 'swarming', 'valgrind'],
382 383 384
    'gn_release_x64_verify_csa': [
      'gn', 'release_bot', 'x64', 'swarming', 'dcheck_always_on',
      'v8_enable_slow_dchecks', 'v8_verify_csa'],
385

386
    # GN debug configs for x64.
387 388
    'gn_debug_x64': [
      'gn', 'debug_bot', 'x64', 'swarming'],
389 390
    'gn_debug_x64_asan_edge': [
      'gn', 'debug_bot', 'x64', 'asan', 'lsan', 'edge'],
391 392
    'gn_debug_x64_custom': [
      'gn', 'debug_bot', 'x64', 'swarming', 'v8_snapshot_custom'],
393 394
    'gn_debug_x64_gcc': [
      'gn', 'debug_bot', 'x64', 'gcc'],
machenbach's avatar
machenbach committed
395 396
    'gn_debug_x64_minimal_symbols': [
      'gn', 'debug_bot', 'x64', 'minimal_symbols', 'swarming'],
397 398 399 400 401
    'gn_debug_x64_trybot': [
      'gn', 'debug_trybot', 'x64', 'swarming'],
    'gn_debug_x64_valgrind': [
      'gn', 'debug_bot', 'x64', 'swarming', 'valgrind'],

402 403 404
    # GN debug configs for x86.
    'gn_debug_x86': [
      'gn', 'debug_bot', 'x86', 'swarming'],
machenbach's avatar
machenbach committed
405 406
    'gn_debug_x86_minimal_symbols': [
      'gn', 'debug_bot', 'x86', 'minimal_symbols', 'swarming'],
407
    'gn_debug_x86_no_i18n': [
408
      'gn', 'debug_bot', 'x86', 'swarming', 'v8_no_i18n'],
409 410 411 412
    'gn_debug_x86_no_snap': [
      'gn', 'debug_bot', 'x86', 'swarming', 'v8_snapshot_none'],
    'gn_debug_x86_no_snap_trybot': [
      'gn', 'debug_trybot', 'x86', 'swarming', 'v8_snapshot_none'],
413 414
    'gn_debug_x86_trybot': [
      'gn', 'debug_trybot', 'x86', 'swarming'],
415 416
    'gn_debug_x86_vtunejit': [
      'gn', 'debug_bot', 'x86', 'v8_enable_vtunejit'],
417 418

    # GN release configs for x86.
419 420
    'gn_release_x86': [
      'gn', 'release_bot', 'x86', 'swarming'],
421 422 423 424
    'gn_release_x86_gcc': [
      'gn', 'release_bot', 'x86', 'gcc'],
    'gn_release_x86_gcc_minimal_symbols': [
      'gn', 'release_bot', 'x86', 'gcc', 'minimal_symbols'],
425 426 427 428
    'gn_release_x86_gcmole': [
      'gn', 'release_bot', 'x86', 'gcmole', 'swarming'],
    'gn_release_x86_gcmole_trybot': [
      'gn', 'release_trybot', 'x86', 'gcmole', 'swarming'],
429 430
    'gn_release_x86_interpreted_regexp': [
      'gn', 'release_bot', 'x86', 'v8_interpreted_regexp'],
431 432
    'gn_release_x86_minimal_symbols': [
      'gn', 'release_bot', 'x86', 'minimal_symbols', 'swarming'],
433
    'gn_release_x86_no_i18n_trybot': [
434
      'gn', 'release_trybot', 'x86', 'swarming', 'v8_no_i18n'],
435 436
    'gn_release_x86_no_snap': [
      'gn', 'release_bot', 'x86', 'swarming', 'v8_snapshot_none'],
machenbach's avatar
machenbach committed
437 438 439
    'gn_release_x86_no_snap_shared_minimal_symbols': [
      'gn', 'release', 'x86', 'goma', 'minimal_symbols', 'shared', 'swarming',
      'v8_snapshot_none'],
440 441
    'gn_release_x86_no_snap_trybot': [
      'gn', 'release_trybot', 'x86', 'swarming', 'v8_snapshot_none'],
442 443
    'gn_release_x86_predictable': [
      'gn', 'release_bot', 'x86', 'v8_enable_verify_predictable'],
444 445
    'gn_release_x86_shared_verify_heap': [
      'gn', 'release', 'x86', 'goma', 'shared', 'swarming', 'v8_verify_heap'],
machenbach's avatar
machenbach committed
446 447
    'gn_release_x86_trybot': [
      'gn', 'release_trybot', 'x86', 'swarming'],
448 449 450
    'gn_release_x86_verify_csa': [
      'gn', 'release_bot', 'x86', 'swarming', 'dcheck_always_on',
      'v8_enable_slow_dchecks', 'v8_verify_csa'],
451

452
    # Gyp debug configs for simulators.
453 454
    'gyp_debug_simulate_x87': [
      'gyp', 'debug_bot_static', 'simulate_x87', 'swarming'],
455 456

    # Gyp debug configs for x86.
457 458 459 460 461 462
    'gyp_debug_x86': [
      'gyp', 'debug_bot', 'x86', 'swarming'],
    'gyp_full_debug_x86': [
      'gyp', 'debug', 'x86', 'goma', 'static', 'v8_enable_slow_dchecks',
      'v8_full_debug'],

463 464 465 466 467
    # Gyp release configs for mips.
    'gyp_release_mips_no_snap_no_i18n': [
      'gyp', 'release', 'mips', 'crosscompile', 'static', 'v8_no_i18n',
      'v8_snapshot_none'],

468 469 470 471 472 473 474 475 476 477 478
    # Gyp release configs for simulators.
    'gyp_release_simulate_ppc': [
      'gyp', 'release_bot', 'simulate_ppc', 'swarming'],
    'gyp_release_simulate_ppc64': [
      'gyp', 'release_bot', 'simulate_ppc64', 'swarming'],
    'gyp_release_simulate_s390': [
      'gyp', 'release_bot', 'simulate_s390', 'swarming'],
    'gyp_release_simulate_s390x': [
      'gyp', 'release_bot', 'simulate_s390x', 'swarming'],

    # Gyp release configs for x64.
machenbach's avatar
machenbach committed
479
    'gyp_release_x64': [
480
      'gyp', 'release_bot', 'x64', 'swarming'],
481 482 483
    'gyp_release_x64_asan_minimal_symbols_coverage': [
      'gyp', 'release_bot', 'x64', 'asan', 'bb', 'coverage', 'lsan',
      'minimal_symbols', 'swarming'],
484
    'gyp_release_x64_cfi_symbolized': [
485
      'gyp', 'release_bot', 'x64', 'cfi', 'swarming', 'symbolized'],
486 487
    'gyp_release_x64_gcc_coverage': [
      'gyp', 'release_bot', 'x64', 'coverage', 'gcc'],
488

489
    # Gyp release configs for x86.
490 491
    'gyp_release_x86_disassembler': [
      'gyp', 'release_bot', 'x86', 'v8_enable_disassembler'],
machenbach's avatar
machenbach committed
492 493 494
  },

  'mixins': {
495
    'android': {
496 497
      'gn_args': 'target_os="android" v8_android_log_stdout=true',
      'gyp_defines': 'OS=android v8_android_log_stdout=1',
498 499 500 501 502 503 504 505 506 507 508 509
    },

    'arm': {
      'gn_args': 'target_cpu="arm"',
      'gyp_defines': 'target_arch=arm',
    },

    'arm64': {
      'gn_args': 'target_cpu="arm64"',
      'gyp_defines': 'target_arch=arm64',
    },

510
    'asan': {
511
      'gn_args': 'is_asan=true',
512
      'gyp_defines': 'clang=1 asan=1',
513 514 515
    },

    'bb': {
516 517
      'gn_args': 'sanitizer_coverage_flags="bb,trace-pc-guard"',
      'gyp_defines': 'sanitizer_coverage=bb,trace-pc-guard',
518 519 520 521 522 523 524
    },

    'cfi': {
      'gn_args': 'is_cfi=true use_cfi_diag=true',
      'gyp_defines': 'cfi_vptr=1 cfi_diag=1',
    },

525
    'clang': {
526
      'gn_args': 'is_clang=true',
527 528 529
      'gyp_defines': 'clang=1',
    },

530 531 532 533 534
    'coverage': {
      # TODO(machenbach): Add this to gn.
      'gyp_defines': 'coverage=1',
    },

535 536 537 538
    'crosscompile': {
      'gyp_crosscompile': True,
    },

machenbach's avatar
machenbach committed
539 540 541 542 543
    'dcheck_always_on': {
      'gn_args': 'dcheck_always_on=true',
      'gyp_defines': 'dcheck_always_on=1',
    },

machenbach's avatar
machenbach committed
544
    'debug': {
545 546
      'gn_args': 'is_debug=true v8_enable_backtrace=true',
      'gyp_defines': 'v8_enable_backtrace=1',
machenbach's avatar
machenbach committed
547 548 549
    },

    'debug_bot': {
machenbach's avatar
machenbach committed
550
      'mixins': [
551
        'debug', 'shared', 'goma', 'v8_enable_slow_dchecks',
machenbach's avatar
machenbach committed
552 553 554
        'v8_optimized_debug'],
    },

555 556 557 558 559 560
    'debug_bot_static': {
      'mixins': [
        'debug', 'static', 'goma', 'v8_enable_slow_dchecks',
        'v8_optimized_debug'],
    },

machenbach's avatar
machenbach committed
561 562
    'debug_trybot': {
      'mixins': ['debug_bot', 'minimal_symbols'],
machenbach's avatar
machenbach committed
563 564
    },

565
    'edge': {
566 567
      'gn_args': 'sanitizer_coverage_flags="trace-pc-guard"',
      'gyp_defines': 'sanitizer_coverage=trace-pc-guard',
568 569
    },

570
    'gcc': {
571
      'gn_args': 'is_clang=false use_sysroot=false',
572 573 574 575
      'gyp_defines': 'clang=0',
    },

    'gcmole': {
576
      'gn_args': 'v8_gcmole=true',
577 578 579
      'gyp_defines': 'gcmole=1',
    },

machenbach's avatar
machenbach committed
580 581 582 583 584 585 586 587 588 589 590
    'gn': {'type': 'gn'},

    'goma': {
      # The MB code will properly escape goma_dir if necessary in the GYP
      # code path; the GN code path needs no escaping.
      'gn_args': 'use_goma=true',
      'gyp_defines': 'use_goma=1',
    },

    'gyp': {'type': 'gyp'},

591 592 593 594 595
    'hard_float': {
      'gn_args': 'arm_float_abi="hard"',
      'gyp_defines': 'arm_float_abi=hard',
    },

596
    'lsan': {
597
      'gn_args': 'is_lsan=true',
598 599 600
      'gyp_defines': 'lsan=1',
    },

machenbach's avatar
machenbach committed
601 602 603 604 605
    'minimal_symbols': {
      'gn_args': 'symbol_level=1',
      'gyp_defines': 'fastbuild=1',
    },

606 607 608 609 610
    'mips': {
      'gn_args': 'target_cpu="mips"',
      'gyp_defines': 'target_arch=mips',
    },

611
    'msan': {
612 613 614 615
      'gn_args': ('is_msan=true msan_track_origins=2 '
                  'use_prebuilt_instrumented_libraries=true'),
      'gyp_defines': ('clang=1 msan=1 msan_track_origins=2 '
                      'use_prebuilt_instrumented_libraries=1'),
616 617
    },

machenbach's avatar
machenbach committed
618 619 620 621 622 623 624 625
    'release': {
      'gn_args': 'is_debug=false',
    },

    'release_bot': {
      'mixins': ['release', 'static', 'goma'],
    },

machenbach's avatar
machenbach committed
626 627 628 629
    'release_trybot': {
      'mixins': ['release_bot', 'minimal_symbols', 'dcheck_always_on'],
    },

630 631 632 633
    'shared': {
      'gn_args': 'is_component_build=true',
      'gyp_defines': 'component=shared_library',
    },
machenbach's avatar
machenbach committed
634

635
    'simulate_arm': {
636
      'gn_args': 'target_cpu="x86" v8_target_cpu="arm"',
637 638 639
      'gyp_defines': 'target_arch=ia32 v8_target_arch=arm',
    },

640 641 642 643
    'simulate_arm64': {
      'gn_args': 'target_cpu="x64" v8_target_cpu="arm64"',
      'gyp_defines': 'target_arch=x64 v8_target_arch=arm64',
    },
644 645

    'simulate_mipsel': {
646 647
      'gn_args':
          'target_cpu="x86" v8_target_cpu="mipsel" mips_arch_variant="r2"',
648 649 650 651 652 653 654 655 656
      'gyp_defines': 'target_arch=ia32 v8_target_arch=mipsel',
    },

    'simulate_mips64el': {
      'gn_args': 'target_cpu="x64" v8_target_cpu="mips64el"',
      'gyp_defines': 'target_arch=x64 v8_target_arch=mips64el',
    },

    'simulate_ppc': {
657
      'gn_args': 'target_cpu="x86" v8_target_cpu="ppc"',
658 659 660 661 662 663 664 665 666
      'gyp_defines': 'target_arch=ia32 v8_target_arch=ppc',
    },

    'simulate_ppc64': {
      'gn_args': 'target_cpu="x64" v8_target_cpu="ppc64"',
      'gyp_defines': 'target_arch=x64 v8_target_arch=ppc64',
    },

    'simulate_s390': {
667
      'gn_args': 'target_cpu="x86" v8_target_cpu="s390"',
668 669 670 671 672 673 674 675
      'gyp_defines': 'target_arch=ia32 v8_target_arch=s390',
    },

    'simulate_s390x': {
      'gn_args': 'target_cpu="x64" v8_target_cpu="s390x"',
      'gyp_defines': 'target_arch=x64 v8_target_arch=s390x',
    },

676
    'simulate_x87': {
677
      'gn_args': 'target_cpu="x86" v8_target_cpu="x87"',
678 679 680
      'gyp_defines': 'target_arch=ia32 v8_target_arch=x87',
    },

machenbach's avatar
machenbach committed
681 682 683 684 685 686 687 688 689
    'static': {
      'gn_args': 'is_component_build=false',
      'gyp_defines': 'component=static_library',
    },

    'swarming': {
      'gn_args': 'v8_test_isolation_mode="prepare"',
      'gyp_defines': 'test_isolation_mode=prepare',
    },
machenbach's avatar
machenbach committed
690

691
    # TODO(machenbach): Remove the symbolized config after the bots are gone.
692
    'symbolized': {
693
      'gn_args': 'v8_no_inline=true',
694 695 696 697 698
      'gyp_defines':
        'release_extra_cflags="-fno-inline-functions -fno-inline"',
    },

    'tsan': {
699
      'gn_args': 'is_tsan=true',
700 701 702
      'gyp_defines': 'clang=1 tsan=1',
    },

machenbach's avatar
machenbach committed
703
    'valgrind': {
704
      'gn_args': 'v8_has_valgrind=true',
machenbach's avatar
machenbach committed
705 706 707
      'gyp_defines': 'has_valgrind=1',
    },

708
    'v8_no_i18n': {
709
      'gn_args': 'v8_enable_i18n_support=false icu_use_data_file=false',
710
      'gyp_defines': 'v8_enable_i18n_support=0 icu_use_data_file_flag=0',
711 712
    },

713 714 715 716
    'v8_enable_concurrent_marking': {
      'gn_args': 'v8_enable_concurrent_marking=true',
    },

717
    'v8_correctness_fuzzer': {
718
      'gn_args': 'v8_correctness_fuzzer=true v8_multi_arch_build=true',
719 720
    },

721 722 723 724 725
    'v8_enable_disassembler': {
      'gn_args': 'v8_enable_disassembler=true',
      'gyp_defines': 'v8_enable_disassembler=1',
    },

machenbach's avatar
machenbach committed
726
    'v8_enable_slow_dchecks': {
727
      'gn_args': 'v8_enable_slow_dchecks=true',
machenbach's avatar
machenbach committed
728 729 730
      'gyp_defines': 'v8_enable_slow_dchecks=1',
    },

731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750
    'v8_enable_verify_predictable': {
      'gn_args': 'v8_enable_verify_predictable=true',
      'gyp_defines': 'v8_enable_verify_predictable=1',
    },

    'v8_enable_vtunejit': {
      'gn_args': 'v8_enable_vtunejit=true',
      'gyp_defines': 'v8_enable_vtunejit=1',
    },

    'v8_full_debug': {
      'gn_args': 'v8_optimized_debug=false',
      'gyp_defines': 'v8_optimized_debug=0',
    },

    'v8_interpreted_regexp': {
      'gn_args': 'v8_interpreted_regexp=true',
      'gyp_defines': 'v8_interpreted_regexp=1',
    },

machenbach's avatar
machenbach committed
751 752 753 754 755 756
    'v8_optimized_debug': {
      # This is the default in gn for debug.
      'gyp_defines': 'v8_optimized_debug=1',
    },

    'v8_snapshot_custom': {
757 758 759 760
      # GN path is relative to project root.
      'gn_args': 'v8_embed_script="test/mjsunit/mjsunit.js"',

      # Gyp path is relative to src/v8.gyp.
machenbach's avatar
machenbach committed
761 762 763 764 765 766 767 768
      'gyp_defines': 'embed_script=../test/mjsunit/mjsunit.js',
    },

    'v8_snapshot_internal': {
      'gn_args': 'v8_use_external_startup_data=false',
      'gyp_defines': 'v8_use_external_startup_data=0',
    },

769 770 771 772 773 774 775 776 777 778
    'v8_snapshot_none': {
      'gn_args': 'v8_use_snapshot=false',
      'gyp_defines': 'v8_use_snapshot=false',
    },

    'v8_verify_heap': {
      'gn_args': 'v8_enable_verify_heap=true',
      'gyp_defines': 'v8_enable_verify_heap=1',
    },

779 780 781 782
    'v8_verify_csa': {
      'gn_args': 'v8_enable_verify_csa=true',
    },

machenbach's avatar
machenbach committed
783 784 785 786 787
    'x64': {
      'gn_args': 'target_cpu="x64"',
      'gyp_defines': 'target_arch=x64',
    },

788 789 790 791
    'x86': {
      'gn_args': 'target_cpu="x86"',
      'gyp_defines': 'target_arch=ia32',
    },
machenbach's avatar
machenbach committed
792 793
  },
}