xref: /aosp_15_r20/external/angle/infra/specs/angle_mb_config.pyl (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
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