1# 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 GN args in tryjob patches. 13 14{ 15 # 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': { 22 # iOS 23 'iOS32 Debug': 'ios_debug_bot_arm', 24 'iOS32 Release': 'ios_release_bot_arm', 25 'iOS64 Debug': 'ios_debug_bot_arm64', 26 'iOS64 Release': 'ios_release_bot_arm64', 27 'iOS64 Sim Debug (iOS 10.0)': 'ios_debug_bot_x64', 28 'iOS64 Sim Debug (iOS 11)': 'ios_debug_bot_x64', 29 'iOS64 Sim Debug (iOS 12)': 'ios_debug_bot_x64', 30 31 # Mac 32 'Mac64 Debug': 'debug_bot_x64', 33 'Mac64 Release': 'release_bot_x64', 34 'Mac64 Builder': 'pure_release_bot_x64', 35 'Mac Asan': 'mac_asan_clang_release_bot_x64', 36 37 # Linux 38 'Linux32 Debug': 'no_h264_debug_bot_x86', 39 'Linux32 Release': 'release_bot_x86', 40 'Linux32 Debug (ARM)': 'debug_bot_arm', 41 'Linux32 Release (ARM)': 'release_bot_arm', 42 'Linux64 Debug': 'debug_bot_x64', 43 'Linux64 Release': 'release_bot_x64', 44 'Linux64 Builder': 'pure_release_bot_x64', 45 'Linux64 Debug (ARM)': 'debug_bot_arm64', 46 'Linux64 Release (ARM)': 'release_bot_arm64', 47 'Linux64 Release (GCC)': 'gcc_release_bot_x64', 48 'Linux Asan': 'asan_lsan_clang_release_bot_x64', 49 'Linux MSan': 'msan_clang_release_bot_x64', 50 'Linux Tsan v2': 'tsan_clang_release_bot_x64', 51 'Linux UBSan': 'ubsan_clang_release_bot_x64', 52 'Linux UBSan vptr': 'ubsan_vptr_clang_release_bot_x64', 53 'Linux64 Release (Libfuzzer)': 'libfuzzer_asan_release_bot_x64', 54 # "More configs" bots will build all the following configs in sequence. 55 # This is using MB's "phases" feature. 56 'Linux (more configs)': { 57 'bwe_test_logging': 58 'bwe_test_logging_x64', 59 'dummy_audio_file_devices_no_protobuf': 60 'dummy_audio_file_devices_no_protobuf_x64', 61 'rtti_no_sctp': 62 'rtti_no_sctp_x64', 63 }, 64 65 # Android 66 'Android32 (M Nexus5X)': 'android_release_bot_arm', 67 'Android32 (M Nexus5X)(dbg)': 'android_debug_static_bot_arm', 68 'Android32 Builder arm': 'android_pure_release_bot_arm', 69 'Android64 (M Nexus5X)': 'android_release_bot_arm64', 70 'Android64 (M Nexus5X)(dbg)': 'android_debug_static_bot_arm64', 71 'Android64 Builder arm64': 'android_pure_release_bot_arm64', 72 'Android32 Builder x86': 'android_release_bot_x86', 73 'Android32 Builder x86 (dbg)': 'android_debug_static_bot_x86', 74 'Android64 Builder x64 (dbg)': 'android_debug_static_bot_x64', 75 'Android32 (more configs)': { 76 'bwe_test_logging': 77 'bwe_test_logging_android_arm', 78 'dummy_audio_file_devices_no_protobuf': 79 'dummy_audio_file_devices_no_protobuf_android_arm', 80 'rtti_no_sctp': 81 'rtti_no_sctp_android_arm', 82 }, 83 84 # Windows 85 'Win32 Debug': 'win_msvc_debug_bot_x86', 86 'Win32 Release': 'win_msvc_release_bot_x86', 87 'Win64 Debug': 'win_msvc_debug_bot_x64', 88 'Win64 Release': 'win_msvc_release_bot_x64', 89 'Win32 Debug (Clang)': 'win_clang_debug_bot_x86', 90 'Win32 Release (Clang)': 'win_clang_release_bot_x86', 91 'Win32 Builder (Clang)': 'win_clang_pure_release_bot_x86', 92 'Win64 Debug (Clang)': 'win_clang_debug_bot_x64', 93 'Win64 Release (Clang)': 'win_clang_release_bot_x64', 94 'Win64 ASan': 'win_asan_clang_release_bot_x64', 95 'Win64 UWP': 'win_uwp_release_bot_x64', 96 'Win (more configs)': { 97 'bwe_test_logging': 98 'bwe_test_logging_x86', 99 'dummy_audio_file_devices_no_protobuf': 100 'dummy_audio_file_devices_no_protobuf_x86', 101 'rtti_no_sctp': 102 'rtti_no_sctp_no_unicode_win_x86', 103 }, 104 }, 105 'client.webrtc.perf': { 106 # These are here because testers need to gn gen + ninja for the 107 # webrtc_dashboard_upload target (otherwise a tester would not need to 108 # build anything). 109 # TODO(http://crbug.com/1029452): Nuke these and isolate on builder 110 # instead? 111 'Perf Android32 (M Nexus5)': 'release_bot_x64', 112 'Perf Android32 (M AOSP Nexus6)': 'release_bot_x64', 113 'Perf Android64 (M Nexus5X)': 'release_bot_x64', 114 'Perf Android64 (O Pixel2)': 'release_bot_x64', 115 'Perf Linux Trusty': 'release_bot_x64', 116 'Perf Mac 10.11': 'release_bot_x64', 117 'Perf Win7': 'release_bot_x64', 118 }, 119 120 'client.webrtc.fyi': { 121 # Mac 122 'Mac (swarming)': 'release_bot_x64', 123 124 # Android 125 'Android Perf (swarming)': 'android_pure_release_bot_arm', 126 'Android ASan (swarming)': 'android_asan_shared_release_bot_arm', 127 # Windows 128 'Win (swarming)': 'release_bot_x86', 129 'Win64 Debug (Win8)': 'debug_bot_x64', 130 'Win64 Debug (Win10)': 'debug_bot_x64', 131 }, 132 'chromium.infra.codesearch': { 133 'codesearch-gen-webrtc-android': { 134 'android': 'android_debug_static_bot_arm', 135 }, 136 'codesearch-gen-webrtc-linux': { 137 'linux': 'codesearch_gen_linux_bot', 138 } 139 }, 140 'internal.client.webrtc': { 141 'iOS64 Debug': 'ios_internal_debug_bot_arm64', 142 'iOS64 Release': 'ios_internal_release_bot_arm64', 143 'iOS64 Perf': 'ios_internal_pure_release_bot_arm64', 144 }, 145 'internal.tryserver.webrtc': { 146 'ios_arm64_dbg': 'ios_internal_debug_bot_arm64', 147 'ios_arm64_rel': 'ios_internal_release_bot_arm64', 148 'ios_arm64_perf': 'ios_internal_pure_release_bot_arm64', 149 }, 150 'tryserver.webrtc': { 151 # iOS 152 'ios_compile_arm_dbg': 'ios_debug_bot_arm', 153 'ios_compile_arm_rel': 'ios_release_bot_arm', 154 'ios_compile_arm64_dbg': 'ios_debug_bot_arm64', 155 'ios_compile_arm64_rel': 'ios_release_bot_arm64', 156 'ios_sim_x64_dbg_ios10': 'ios_debug_bot_x64', 157 'ios_sim_x64_dbg_ios11': 'ios_debug_bot_x64', 158 'ios_sim_x64_dbg_ios12': 'ios_debug_bot_x64', 159 160 # Mac 161 'mac_compile_dbg': 'debug_bot_x64', 162 'mac_compile_rel': 'pure_release_bot_x64', 163 'mac_dbg': 'debug_bot_x64', 164 'mac_rel': 'release_bot_x64', 165 'mac_asan': 'mac_asan_clang_release_bot_x64', 166 167 # Linux 168 'linux_compile_dbg': 'debug_bot_x64', 169 'linux_compile_rel': 'pure_release_bot_x64', 170 'linux_compile_x86_dbg': 'debug_bot_x86', 171 'linux_compile_x86_rel': 'pure_release_bot_x86', 172 'linux_compile_arm_dbg': 'debug_bot_arm', 173 'linux_compile_arm_rel': 'release_bot_arm', 174 'linux_compile_arm64_dbg': 'debug_bot_arm64', 175 'linux_compile_arm64_rel': 'release_bot_arm64', 176 'linux_compile_gcc_rel': 'gcc_release_bot_x64', 177 'linux_dbg': 'debug_bot_x64', 178 'linux_rel': 'release_bot_x64', 179 'linux_x86_rel': 'release_bot_x86', 180 'linux_x86_dbg': 'no_h264_debug_bot_x86', 181 'linux_asan': 'asan_lsan_clang_release_bot_x64', 182 'linux_msan': 'msan_clang_release_bot_x64', 183 'linux_tsan2': 'tsan_clang_release_bot_x64', 184 'linux_ubsan': 'ubsan_clang_release_bot_x64', 185 'linux_ubsan_vptr': 'ubsan_vptr_clang_release_bot_x64', 186 'linux_libfuzzer_rel': 'libfuzzer_asan_release_bot_x64', 187 'linux_more_configs': { 188 'bwe_test_logging': 189 'bwe_test_logging_x64', 190 'dummy_audio_file_devices_no_protobuf': 191 'dummy_audio_file_devices_no_protobuf_x64', 192 'rtti_no_sctp': 193 'rtti_no_sctp_x64', 194 }, 195 196 # Android 197 'android_compile_arm_dbg': 'android_debug_static_bot_arm', 198 'android_compile_arm_rel': 'android_pure_release_bot_arm', 199 'android_compile_arm64_dbg': 'android_debug_static_bot_arm64', 200 'android_compile_arm64_rel': 'android_pure_release_bot_arm64', 201 'android_compile_x86_dbg': 'android_debug_static_bot_x86', 202 'android_compile_x86_rel': 'android_release_bot_x86', 203 'android_compile_x64_dbg': 'android_debug_static_bot_x64', 204 'android_compile_x64_rel': 'android_release_bot_x64', 205 'android_arm_dbg': 'android_debug_static_bot_arm', 206 'android_arm_rel': 'android_release_bot_arm', 207 'android_arm64_dbg': 'android_release_bot_arm64', 208 'android_arm64_rel': 'android_release_bot_arm64', 209 'android_arm_more_configs': { 210 'bwe_test_logging': 211 'bwe_test_logging_android_arm', 212 'dummy_audio_file_devices_no_protobuf': 213 'dummy_audio_file_devices_no_protobuf_android_arm', 214 'rtti_no_sctp': 215 'rtti_no_sctp_android_arm', 216 }, 217 218 # Windows 219 'win_compile_x86_msvc_dbg': 'win_msvc_debug_bot_x86', 220 'win_compile_x86_msvc_rel': 'win_msvc_release_bot_x86', 221 'win_compile_x64_msvc_dbg': 'win_msvc_debug_bot_x64', 222 'win_compile_x64_msvc_rel': 'win_msvc_release_bot_x64', 223 'win_compile_x86_clang_dbg': 'win_clang_debug_bot_x86', 224 'win_compile_x86_clang_rel': 'win_clang_release_bot_x86', 225 'win_compile_x64_clang_dbg': 'win_clang_debug_bot_x64', 226 'win_compile_x64_clang_rel': 'win_clang_release_bot_x64', 227 'win_x86_msvc_dbg': 'win_msvc_debug_bot_x86', 228 'win_x86_msvc_rel': 'win_msvc_release_bot_x86', 229 'win_x64_msvc_dbg': 'win_msvc_debug_bot_x64', 230 'win_x64_msvc_rel': 'win_msvc_release_bot_x64', 231 'win_x86_clang_dbg': 'win_clang_debug_bot_x86', 232 'win_x86_clang_rel': 'win_clang_release_bot_x86', 233 'win_x64_clang_dbg': 'win_clang_debug_bot_x64', 234 'win_x64_clang_rel': 'win_clang_release_bot_x64', 235 'win_asan': 'win_asan_clang_release_bot_x64', 236 'win_x64_clang_dbg_win8': 'win_clang_debug_bot_x64', 237 'win_x64_clang_dbg_win10': 'win_clang_debug_bot_x64', 238 'win_x64_uwp': 'win_uwp_release_bot_x64', 239 'win_x86_more_configs': { 240 'bwe_test_logging': 241 'bwe_test_logging_x86', 242 'dummy_audio_file_devices_no_protobuf': 243 'dummy_audio_file_devices_no_protobuf_x86', 244 'rtti_no_sctp': 245 'rtti_no_sctp_no_unicode_win_x86', 246 }, 247 } 248 }, 249 250 # This is the list of configs that you can pass to mb; each config 251 # represents a particular combination of gn args that we must support. 252 # A given config *may* be platform-specific but is not necessarily so (i.e., 253 # we might have mac, win, and linux bots all using the 'release_bot' config). 254 'configs': { 255 # Linux, Mac and Windows 256 'gcc_release_bot_x64': [ 257 'gcc', 'release_bot_no_goma', 'x64', 'no_rtc_tests' 258 ], 259 # TODO(kjellander): Restore Goma for this when crbug.com/726706 is fixed. 260 'debug_bot_arm': [ 261 'openh264', 'debug', 'arm' 262 ], 263 'release_bot_arm': [ 264 'openh264', 'release_bot', 'arm' 265 ], 266 'debug_bot_arm64': [ 267 'openh264', 'debug_bot', 'arm64' 268 ], 269 'release_bot_arm64': [ 270 'openh264', 'release_bot', 'arm64' 271 ], 272 'asan_lsan_clang_release_bot_x64': [ 273 'asan', 'lsan', 'clang', 'openh264', 'release_bot', 'x64' 274 ], 275 'msan_clang_release_bot_x64': [ 276 'msan', 'clang', 'openh264', 'release_bot', 'x64' 277 ], 278 'tsan_clang_release_bot_x64': [ 279 'tsan', 'clang', 'openh264', 'release_bot', 'x64' 280 ], 281 'ubsan_clang_release_bot_x64': [ 282 'ubsan', 'clang', 'openh264', 'release_bot', 'x64' 283 ], 284 'ubsan_vptr_clang_release_bot_x64': [ 285 'ubsan_vptr', 'clang', 'openh264', 'release_bot', 'x64' 286 ], 287 'debug_bot_x86': [ 288 'openh264', 'debug_bot', 'x86' 289 ], 290 'no_h264_debug_bot_x86': [ 291 'debug_bot', 'x86' 292 ], 293 'release_bot_x86': [ 294 'openh264', 'release_bot', 'x86' 295 ], 296 'debug_bot_x64': [ 297 'openh264', 'debug_bot', 'x64' 298 ], 299 'codesearch_gen_linux_bot': [ 300 'openh264', 'debug_bot', 'minimal_symbols' 301 ], 302 'release_bot_x64': [ 303 'openh264', 'release_bot', 'x64' 304 ], 305 'pure_release_bot_x86': [ 306 'openh264', 'pure_release_bot', 'x86' 307 ], 308 'pure_release_bot_x64': [ 309 'openh264', 'pure_release_bot', 'x64' 310 ], 311 'libfuzzer_asan_release_bot_x64': [ 312 'libfuzzer', 'asan', 'optimize_for_fuzzing', 'openh264', 'release_bot', 313 'x64', 'no_rtc_tests' 314 ], 315 316 # Windows 317 'win_clang_debug_bot_x86': [ 318 'clang', 'openh264', 'debug_bot', 'x86', 319 ], 320 'win_clang_release_bot_x86': [ 321 'clang', 'openh264', 'release_bot', 'x86', 322 ], 323 'win_clang_pure_release_bot_x86': [ 324 'clang', 'openh264', 'pure_release_bot', 'x86', 325 ], 326 'win_clang_debug_bot_x64': [ 327 'clang', 'openh264', 'debug_bot', 'x64', 328 ], 329 'win_clang_release_bot_x64': [ 330 'clang', 'openh264', 'release_bot', 'x64', 331 ], 332 'win_msvc_debug_bot_x86': [ 333 'no_clang', 'debug_bot_no_goma', 'x86', 'no_lld', 'minimal_symbols', 334 ], 335 'win_msvc_release_bot_x86': [ 336 'no_clang', 'release_bot_no_goma', 'x86', 'no_lld', 'minimal_symbols', 337 ], 338 'win_msvc_debug_bot_x64': [ 339 'no_clang', 'debug_bot_no_goma', 'x64', 'no_lld', 'minimal_symbols', 340 ], 341 'win_msvc_release_bot_x64': [ 342 'no_clang', 'release_bot_no_goma', 'x64', 'no_lld', 'minimal_symbols', 343 ], 344 'win_asan_clang_release_bot_x64': [ 345 'asan', 'clang', 'full_symbols', 'openh264', 'release_bot', 'x64', 346 'win_fastlink', 347 ], 348 'win_uwp_release_bot_x64': [ 349 # UWP passes compiler flags that are not supported by goma. 350 'no_clang', 'openh264', 'x64', 'winuwp', 'release_bot_no_goma' 351 ], 352 353 # Mac 354 'mac_asan_clang_release_bot_x64': [ 355 'asan', 'clang', 'openh264', 'release_bot', 'x64', 356 ], 357 358 # Android 359 'android_debug_static_bot_arm': [ 360 'android', 'debug_static_bot', 'arm' 361 ], 362 'android_release_bot_arm': [ 363 'android', 'release_bot', 'arm' 364 ], 365 'android_pure_release_bot_arm': [ 366 'android', 'pure_release_bot', 'arm' 367 ], 368 'android_debug_static_bot_x86': [ 369 'android', 'debug_static_bot', 'x86' 370 ], 371 'android_release_bot_x86': [ 372 'android', 'release_bot', 'x86' 373 ], 374 'android_debug_static_bot_arm64': [ 375 'android', 'debug_static_bot', 'arm64' 376 ], 377 'android_release_bot_arm64': [ 378 'android', 'release_bot', 'arm64' 379 ], 380 'android_pure_release_bot_arm64': [ 381 'android', 'pure_release_bot', 'arm64' 382 ], 383 'android_debug_static_bot_x64': [ 384 'android', 'debug_static_bot', 'x64' 385 ], 386 'android_release_bot_x64': [ 387 'android', 'release_bot', 'x64' 388 ], 389 'android_asan_shared_release_bot_arm': [ 390 'android', 'asan', 'clang', 'release_bot', 'arm' 391 ], 392 393 # iOS 394 'ios_debug_bot_arm': [ 395 'ios', 'debug_bot', 'arm', 'no_ios_code_signing', 'ios_use_goma_rbe' 396 ], 397 'ios_release_bot_arm': [ 398 'ios', 'release_bot', 'arm', 'no_ios_code_signing', 'ios_use_goma_rbe' 399 ], 400 'ios_debug_bot_arm64': [ 401 'ios', 'debug_bot', 'arm64', 'no_ios_code_signing', 'ios_use_goma_rbe' 402 ], 403 'ios_release_bot_arm64': [ 404 'ios', 'release_bot', 'arm64', 'no_ios_code_signing', 'ios_use_goma_rbe' 405 ], 406 'ios_internal_debug_bot_arm64': [ 407 'ios', 'debug_bot', 'arm64', 'ios_use_goma_rbe', 408 'ios_code_signing_identity_description', 409 ], 410 'ios_internal_release_bot_arm64': [ 411 'ios', 'release_bot', 'arm64', 'ios_use_goma_rbe', 412 'ios_code_signing_identity_description', 413 ], 414 'ios_internal_pure_release_bot_arm64': [ 415 'ios', 'pure_release_bot', 'arm64', 'ios_use_goma_rbe', 416 'ios_code_signing_identity_description', 417 ], 418 'ios_debug_bot_x64': [ 419 'ios', 'debug_bot', 'x64', 'ios_use_goma_rbe' 420 ], 421 422 # More configs 423 'bwe_test_logging_x64': [ 424 'debug_bot', 'x64', 'bwe_test_logging' 425 ], 426 'dummy_audio_file_devices_no_protobuf_x64': [ 427 'debug_bot', 'x64', 'dummy_audio_file_devices', 'no_protobuf' 428 ], 429 'rtti_no_sctp_x64': [ 430 'debug_bot', 'x64', 'rtti', 'no_sctp' 431 ], 432 433 'bwe_test_logging_x86': [ 434 'debug_bot', 'x86', 'bwe_test_logging' 435 ], 436 'dummy_audio_file_devices_no_protobuf_x86': [ 437 'debug_bot', 'x86', 'dummy_audio_file_devices', 'no_protobuf' 438 ], 439 'rtti_no_sctp_no_unicode_win_x86': [ 440 'debug_bot', 'x86', 'rtti', 'no_sctp', 'win_undef_unicode' 441 ], 442 443 'bwe_test_logging_android_arm': [ 444 'android', 'debug_static_bot', 'arm', 'bwe_test_logging' 445 ], 446 'dummy_audio_file_devices_no_protobuf_android_arm': [ 447 'android', 'debug_static_bot', 'arm', 448 'dummy_audio_file_devices', 'no_protobuf' 449 ], 450 'rtti_no_sctp_android_arm': [ 451 'android', 'debug_static_bot', 'arm', 'rtti', 'no_sctp' 452 ], 453 }, 454 455 # This is a dict mapping a given 'mixin' name to a dict of settings that 456 # mb should use. See //tools/mb/docs/user_guide.md for more information. 457 'mixins': { 458 'android': { 459 'gn_args': 'target_os="android"', 460 }, 461 462 'arm': { 463 'gn_args': 'target_cpu="arm"', 464 }, 465 466 'arm64': { 467 'gn_args': 'target_cpu="arm64"', 468 }, 469 470 'asan': { 471 'gn_args': 'is_asan=true', 472 }, 473 474 # is_clang=true by default, this is only to guard from upstream changes. 475 'clang': { 476 'gn_args': 'is_clang=true', 477 }, 478 479 'dcheck_always_on': { 480 'gn_args': 'dcheck_always_on=true', 481 }, 482 483 'debug': { 484 'gn_args': 'is_debug=true', 485 }, 486 487 'debug_bot': { 488 'mixins': ['debug', 'goma'], 489 }, 490 491 'debug_bot_no_goma': { 492 'mixins': ['debug', 'no_goma'], 493 }, 494 495 'debug_static_bot': { 496 'mixins': ['debug', 'minimal_symbols', 'goma'], 497 }, 498 499 'full_symbols': { 500 'gn_args': 'symbol_level=2', 501 }, 502 503 'gcc': { 504 'gn_args': ('is_clang=false use_sysroot=false ' 505 'treat_warnings_as_errors=false'), 506 }, 507 508 'goma': { 509 'gn_args': 'use_goma=true', 510 }, 511 512 'ios_code_signing_identity_description': { 513 'gn_args': 'ios_code_signing_identity_description="Apple Development"', 514 }, 515 516 'ios_use_goma_rbe': { 517 'gn_args': 'ios_use_goma_rbe=true', 518 }, 519 520 'ios': { 521 'gn_args': 'target_os="ios"', 522 }, 523 524 'no_goma': { 525 'gn_args': 'use_goma=false', 526 }, 527 528 'libfuzzer': { 529 'gn_args': 'use_libfuzzer=true', 530 }, 531 532 'lsan': { 533 'gn_args': 'is_lsan=true', 534 }, 535 536 'minimal_symbols': { 537 'gn_args': 'symbol_level=1', 538 }, 539 540 'msan': { 541 'gn_args': 'is_msan=true msan_track_origins=2', 542 }, 543 544 'no_clang': { 545 'gn_args': 'is_clang=false', 546 }, 547 548 'no_ios_code_signing': { 549 'gn_args': 'ios_enable_code_signing=false', 550 }, 551 552 'no_lld': { 553 'gn_args': 'use_lld=false', 554 }, 555 556 'no_rtc_tests': { 557 'gn_args': 'rtc_include_tests=false', 558 }, 559 560 'openh264': { 561 'gn_args': 'ffmpeg_branding="Chrome" rtc_use_h264=true', 562 }, 563 564 'optimize_for_fuzzing': { 565 'gn_args': 'optimize_for_fuzzing=true', 566 }, 567 568 'pure_release_bot': { 569 'mixins': ['release', 'goma'], 570 }, 571 572 'release': { 573 'gn_args': 'is_debug=false', 574 }, 575 576 'release_bot': { 577 'mixins': ['pure_release_bot', 'dcheck_always_on'], 578 }, 579 580 'release_bot_no_goma': { 581 'mixins': ['release', 'no_goma', 'dcheck_always_on'], 582 }, 583 584 'tsan': { 585 'gn_args': 'is_tsan=true', 586 }, 587 588 'ubsan': { 589 'gn_args': 'is_ubsan=true is_ubsan_no_recover=true', 590 }, 591 592 'ubsan_vptr': { 593 'gn_args': 'is_ubsan_vptr=true is_ubsan_no_recover=true', 594 }, 595 596 'win_fastlink': { 597 'gn_args': 'is_win_fastlink=true', 598 }, 599 600 'x64': { 601 'gn_args': 'target_cpu="x64"', 602 }, 603 604 'x86': { 605 'gn_args': 'target_cpu="x86"', 606 }, 607 608 'bwe_test_logging': { 609 'gn_args': 'rtc_enable_bwe_test_logging=true', 610 }, 611 612 'dummy_audio_file_devices': { 613 'gn_args': 'rtc_use_dummy_audio_file_devices=true', 614 }, 615 616 'no_protobuf': { 617 'gn_args': 'rtc_enable_protobuf=false', 618 }, 619 620 'rtti': { 621 'gn_args': 'use_rtti=true', 622 }, 623 624 'no_sctp': { 625 'gn_args': 'rtc_enable_sctp=false', 626 }, 627 628 'winuwp': { 629 'gn_args': 'target_os="winuwp"', 630 }, 631 632 'win_undef_unicode': { 633 'gn_args': 'rtc_win_undef_unicode=true', 634 }, 635 }, 636} 637