1*8975f5c5SAndroid Build Coastguard Worker# Copyright 2021 The ANGLE Project Authors. All rights reserved. 2*8975f5c5SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*8975f5c5SAndroid Build Coastguard Worker# found in the LICENSE file. 4*8975f5c5SAndroid Build Coastguard Worker 5*8975f5c5SAndroid Build Coastguard Worker# This is a .pyl, or "Python Literal", file. You can treat it just like a 6*8975f5c5SAndroid Build Coastguard Worker# .json file, with the following exceptions: 7*8975f5c5SAndroid Build Coastguard Worker# * all keys must be quoted (use single quotes, please); 8*8975f5c5SAndroid Build Coastguard Worker# * comments are allowed, using '#' syntax; and 9*8975f5c5SAndroid Build Coastguard Worker# * trailing commas are allowed. 10*8975f5c5SAndroid Build Coastguard Worker 11*8975f5c5SAndroid Build Coastguard Worker{ 12*8975f5c5SAndroid Build Coastguard Worker # This is a map of builder group names -> builder names -> config names 13*8975f5c5SAndroid Build Coastguard Worker # (where each config name is a key in the 'configs' dict, below). MB uses 14*8975f5c5SAndroid Build Coastguard Worker # this dict to look up which config to use for a given bot. 15*8975f5c5SAndroid Build Coastguard Worker 'builder_groups': { 16*8975f5c5SAndroid Build Coastguard Worker 'angle': { 17*8975f5c5SAndroid Build Coastguard Worker 'android-arm-compile': 'angle_reclient_android_arm_release_bot', 18*8975f5c5SAndroid Build Coastguard Worker 'android-arm-dbg-compile': 'angle_reclient_android_arm_debug_bot', 19*8975f5c5SAndroid Build Coastguard Worker 'android-arm64-dbg-compile': 'angle_reclient_android_arm64_debug_bot', 20*8975f5c5SAndroid Build Coastguard Worker 'android-arm64-exp-s22-test': 'angle_reclient_android_arm64_release_bot', 21*8975f5c5SAndroid Build Coastguard Worker 'android-arm64-exp-test': 'angle_reclient_android_arm64_release_bot', 22*8975f5c5SAndroid Build Coastguard Worker 'android-arm64-test': 'angle_reclient_android_arm64_release_bot', 23*8975f5c5SAndroid Build Coastguard Worker 'android-pixel4-perf': 'angle_reclient_android_perf_bot', 24*8975f5c5SAndroid Build Coastguard Worker 'android-pixel6-perf': 'angle_reclient_android_perf_bot', 25*8975f5c5SAndroid Build Coastguard Worker 'linux-asan-test': 'angle_asan_lsan_ubsan_bot', 26*8975f5c5SAndroid Build Coastguard Worker 'linux-dbg-compile': 'angle_reclient_debug_openclcts_bot', 27*8975f5c5SAndroid Build Coastguard Worker 'linux-exp-asan-test': 'angle_asan_lsan_ubsan_bot', 28*8975f5c5SAndroid Build Coastguard Worker 'linux-exp-test': 'angle_reclient_release_openclcts_bot', 29*8975f5c5SAndroid Build Coastguard Worker 'linux-exp-tsan-test': 'angle_tsan_bot', 30*8975f5c5SAndroid Build Coastguard Worker 'linux-intel-uhd630-perf': 'angle_reclient_perf_bot', 31*8975f5c5SAndroid Build Coastguard Worker 'linux-nvidia-gtx1660-perf': 'angle_reclient_perf_bot', 32*8975f5c5SAndroid Build Coastguard Worker 'linux-test': 'angle_reclient_release_openclcts_bot', 33*8975f5c5SAndroid Build Coastguard Worker 'linux-tsan-test': 'angle_tsan_bot', 34*8975f5c5SAndroid Build Coastguard Worker 'linux-ubsan-test': 'angle_ubsan_bot', 35*8975f5c5SAndroid Build Coastguard Worker 'mac-dbg-compile': 'angle_reclient_debug_bot', 36*8975f5c5SAndroid Build Coastguard Worker 'mac-exp-test': 'angle_reclient_release_bot', 37*8975f5c5SAndroid Build Coastguard Worker 'mac-test': 'angle_reclient_release_bot', 38*8975f5c5SAndroid Build Coastguard Worker 'win-asan-test': 'angle_asan_bot', 39*8975f5c5SAndroid Build Coastguard Worker 'win-dbg-compile': 'angle_reclient_debug_bot', 40*8975f5c5SAndroid Build Coastguard Worker 'win-exp-test': 'angle_reclient_release_bot', 41*8975f5c5SAndroid Build Coastguard Worker 'win-msvc-compile': 'angle_non_clang_release_bot', 42*8975f5c5SAndroid Build Coastguard Worker 'win-msvc-dbg-compile': 'angle_non_clang_debug_bot', 43*8975f5c5SAndroid Build Coastguard Worker 'win-msvc-x86-compile': 'angle_non_clang_x86_release_bot', 44*8975f5c5SAndroid Build Coastguard Worker 'win-msvc-x86-dbg-compile': 'angle_non_clang_x86_debug_bot', 45*8975f5c5SAndroid Build Coastguard Worker 'win-test': 'angle_reclient_release_bot', 46*8975f5c5SAndroid Build Coastguard Worker 'win-x86-dbg-compile': 'angle_reclient_x86_debug_bot', 47*8975f5c5SAndroid Build Coastguard Worker 'win-x86-test': 'angle_reclient_x86_release_bot', 48*8975f5c5SAndroid Build Coastguard Worker 'win10-intel-uhd630-perf': 'angle_reclient_perf_bot', 49*8975f5c5SAndroid Build Coastguard Worker 'win10-nvidia-gtx1660-perf': 'angle_reclient_perf_bot', 50*8975f5c5SAndroid Build Coastguard Worker 'winuwp-compile': 'angle_winuwp_non_clang_release_bot', 51*8975f5c5SAndroid Build Coastguard Worker 'winuwp-dbg-compile': 'angle_winuwp_non_clang_debug_bot', 52*8975f5c5SAndroid Build Coastguard Worker }, 53*8975f5c5SAndroid Build Coastguard Worker }, 54*8975f5c5SAndroid Build Coastguard Worker 55*8975f5c5SAndroid Build Coastguard Worker # This is the list of configs that you can pass to mb; each config 56*8975f5c5SAndroid Build Coastguard Worker # represents a particular combination of gn args that 57*8975f5c5SAndroid Build Coastguard Worker # we must support. A given config *may* be platform-specific but 58*8975f5c5SAndroid Build Coastguard Worker # is not necessarily so (i.e., we might have mac, win, and linux 59*8975f5c5SAndroid Build Coastguard Worker # bots all using the 'release_bot' config). 60*8975f5c5SAndroid Build Coastguard Worker 'configs': { 61*8975f5c5SAndroid Build Coastguard Worker 'angle_asan_bot': ['angle', 'opencl', 'reclient', 'asan', 'release'], 62*8975f5c5SAndroid Build Coastguard Worker 'angle_asan_lsan_ubsan_bot': ['angle', 'opencl', 'openclcts', 'reclient', 'asan', 'lsan', 'ubsan', 'release'], 63*8975f5c5SAndroid Build Coastguard Worker 'angle_non_clang_debug_bot': ['angle', 'non_clang', 'debug'], 64*8975f5c5SAndroid Build Coastguard Worker 'angle_non_clang_release_bot': ['angle', 'non_clang', 'release'], 65*8975f5c5SAndroid Build Coastguard Worker 'angle_non_clang_x86_debug_bot': ['angle', 'non_clang', 'x86', 'debug', 'cxx17'], 66*8975f5c5SAndroid Build Coastguard Worker 'angle_non_clang_x86_release_bot': ['angle', 'non_clang', 'x86', 'release'], 67*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_android_arm64_debug_bot': ['angle', 'opencl', 'openclcts', 'reclient', 'android', 'arm64', 'debug'], 68*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_android_arm64_release_bot': ['angle', 'capture', 'opencl', 'openclcts', 'reclient', 'android', 'arm64', 'release'], 69*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_android_arm_debug_bot': ['angle', 'opencl', 'openclcts', 'reclient', 'android', 'arm', 'debug', 'cxx17'], 70*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_android_arm_release_bot': ['angle', 'opencl', 'openclcts', 'reclient', 'android', 'arm', 'release'], 71*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_android_perf_bot': ['angle', 'reclient', 'android', 'arm64', 'perf'], 72*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_debug_bot': ['angle', 'opencl', 'reclient', 'debug'], 73*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_debug_openclcts_bot': ['angle', 'opencl', 'openclcts', 'reclient', 'debug'], 74*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_perf_bot': ['angle', 'reclient', 'perf'], 75*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_release_bot': ['angle', 'capture', 'opencl', 'reclient', 'release'], 76*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_release_openclcts_bot': ['angle', 'capture', 'opencl', 'openclcts', 'reclient', 'release'], 77*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_x86_debug_bot': ['angle', 'opencl', 'reclient', 'x86', 'debug'], 78*8975f5c5SAndroid Build Coastguard Worker 'angle_reclient_x86_release_bot': ['angle', 'opencl', 'reclient', 'x86', 'release'], 79*8975f5c5SAndroid Build Coastguard Worker 'angle_tsan_bot': ['angle', 'opencl', 'openclcts', 'reclient', 'tsan', 'release'], 80*8975f5c5SAndroid Build Coastguard Worker 'angle_ubsan_bot': ['angle', 'opencl', 'openclcts', 'reclient', 'ubsan', 'release'], 81*8975f5c5SAndroid Build Coastguard Worker 'angle_winuwp_non_clang_debug_bot': ['angle', 'winuwp', 'non_clang', 'debug'], 82*8975f5c5SAndroid Build Coastguard Worker 'angle_winuwp_non_clang_release_bot': ['angle', 'winuwp', 'non_clang', 'release'], 83*8975f5c5SAndroid Build Coastguard Worker }, 84*8975f5c5SAndroid Build Coastguard Worker 85*8975f5c5SAndroid Build Coastguard Worker # This is a dict mapping a given 'mixin' name to a dict of settings that 86*8975f5c5SAndroid Build Coastguard Worker # mb should use. See //tools/mb/docs/user_guide.md for more information. 87*8975f5c5SAndroid Build Coastguard Worker 'mixins': { 88*8975f5c5SAndroid Build Coastguard Worker 'android': { 89*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'target_os="android"', 90*8975f5c5SAndroid Build Coastguard Worker }, 91*8975f5c5SAndroid Build Coastguard Worker 'angle': { 92*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'is_component_build=true', 93*8975f5c5SAndroid Build Coastguard Worker }, 94*8975f5c5SAndroid Build Coastguard Worker 'arm': { 95*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'target_cpu="arm"', 96*8975f5c5SAndroid Build Coastguard Worker }, 97*8975f5c5SAndroid Build Coastguard Worker 'arm64': { 98*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'target_cpu="arm64"', 99*8975f5c5SAndroid Build Coastguard Worker }, 100*8975f5c5SAndroid Build Coastguard Worker 'asan': { 101*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'is_asan=true', 102*8975f5c5SAndroid Build Coastguard Worker }, 103*8975f5c5SAndroid Build Coastguard Worker 'capture': { 104*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'angle_with_capture_by_default=true', 105*8975f5c5SAndroid Build Coastguard Worker }, 106*8975f5c5SAndroid Build Coastguard Worker 'cxx17': { 107*8975f5c5SAndroid Build Coastguard Worker # Android does not fully support C++20 yet: b/330910097 108*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'use_cxx17=true', 109*8975f5c5SAndroid Build Coastguard Worker }, 110*8975f5c5SAndroid Build Coastguard Worker 'debug': { 111*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'is_debug=true', 112*8975f5c5SAndroid Build Coastguard Worker }, 113*8975f5c5SAndroid Build Coastguard Worker 'lsan': { 114*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'is_lsan=true', 115*8975f5c5SAndroid Build Coastguard Worker }, 116*8975f5c5SAndroid Build Coastguard Worker 'non_clang': { 117*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'is_clang=false treat_warnings_as_errors=false use_custom_libcxx=false', 118*8975f5c5SAndroid Build Coastguard Worker }, 119*8975f5c5SAndroid Build Coastguard Worker 'opencl': { 120*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'angle_enable_cl=true', 121*8975f5c5SAndroid Build Coastguard Worker }, 122*8975f5c5SAndroid Build Coastguard Worker 'openclcts': { 123*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'angle_enable_cl_testing=true', 124*8975f5c5SAndroid Build Coastguard Worker }, 125*8975f5c5SAndroid Build Coastguard Worker 'perf': { 126*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'is_debug=false dcheck_always_on=false symbol_level=1', 127*8975f5c5SAndroid Build Coastguard Worker }, 128*8975f5c5SAndroid Build Coastguard Worker 'reclient': { 129*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'use_remoteexec=true', 130*8975f5c5SAndroid Build Coastguard Worker }, 131*8975f5c5SAndroid Build Coastguard Worker 'release': { 132*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'is_debug=false dcheck_always_on=true symbol_level=1', 133*8975f5c5SAndroid Build Coastguard Worker }, 134*8975f5c5SAndroid Build Coastguard Worker 'tsan': { 135*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'is_tsan=true', 136*8975f5c5SAndroid Build Coastguard Worker }, 137*8975f5c5SAndroid Build Coastguard Worker 'ubsan': { 138*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'is_ubsan=true', 139*8975f5c5SAndroid Build Coastguard Worker }, 140*8975f5c5SAndroid Build Coastguard Worker 'winuwp': { 141*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'target_os="winuwp"', 142*8975f5c5SAndroid Build Coastguard Worker }, 143*8975f5c5SAndroid Build Coastguard Worker 'x86': { 144*8975f5c5SAndroid Build Coastguard Worker 'gn_args': 'target_cpu="x86"', 145*8975f5c5SAndroid Build Coastguard Worker }, 146*8975f5c5SAndroid Build Coastguard Worker }, 147*8975f5c5SAndroid Build Coastguard Worker} 148