blob: d49edea51ffe9e95d56a4ddf84da9305fdd5e1d0 [file] [log] [blame]
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +01001# 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 GYP and GN in tryjob patches.
13
14{
ehmaldonadod046d982016-08-08 06:59:14 -070015 # 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 'iOS32 Debug': 'ios_gyp_debug_bot_arm_device',
23 'iOS32 Release': 'ios_gyp_release_bot_arm_device',
24 'iOS64 Debug': 'ios_gyp_debug_bot_arm64_device',
25 'iOS64 Release': 'ios_gyp_release_bot_arm64_device',
26 'iOS32 Debug Simulator': 'ios_gyp_debug_bot_x86',
27 'iOS64 Debug Simulator': 'ios_gyp_debug_bot_x64',
28 'iOS64 Debug (GN)': 'ios_gn_debug_bot_arm64_device',
29 'iOS64 Release (GN)': 'ios_gn_release_bot_arm64_device',
30 },
31 'tryserver.webrtc': {
32 'ios_dbg': 'ios_gyp_debug_bot_arm_device',
33 'ios_rel': 'ios_gyp_release_bot_arm_device',
34 'ios_arm64_dbg': 'ios_gyp_debug_bot_arm64_device',
35 'ios_arm64_rel': 'ios_gyp_release_bot_arm64_device',
36 'ios32_sim_dbg': 'ios_gyp_debug_bot_x86',
37 'ios64_sim_dbg': 'ios_gyp_debug_bot_x64',
38 'ios64_gn_dbg': 'ios_gn_debug_bot_arm64_device',
39 'ios64_gn_rel': 'ios_gn_release_bot_arm64_device',
40 },
41 },
42
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +010043 # This is the list of configs that you can pass to mb; each config
44 # represents a particular combination of GYP_DEFINES/gn args that
45 # we must support. A given config *may* be platform-specific but
46 # is not necessarily so (i.e., we might have mac, win, and linux
47 # bots all using the 'gn_release_bot' config).
48 'configs': {
ehmaldonadod046d982016-08-08 06:59:14 -070049 'ios_gn_debug_bot_arm64_device': [
50 'ios', 'gn', 'debug_bot', 'arm64', 'device'
51 ],
52 'ios_gn_release_bot_arm64_device': [
53 'ios', 'gn', 'release_bot', 'arm64', 'device'
54 ],
55 'ios_gyp_debug_bot_arm_device': [
56 'ios', 'gyp', 'debug_bot', 'arm', 'device'
57 ],
58 'ios_gyp_release_bot_arm_device': [
59 'ios', 'gyp', 'release_bot', 'arm', 'device'
60 ],
61 'ios_gyp_debug_bot_arm64_device': [
62 'ios', 'gyp', 'debug_bot', 'arm64', 'device'
63 ],
64 'ios_gyp_release_bot_arm64_device': [
65 'ios', 'gyp', 'release_bot', 'arm64', 'device'
66 ],
67 'ios_gyp_debug_bot_x86': [
68 'ios', 'gyp', 'debug_bot', 'x86'
69 ],
70 'ios_gyp_debug_bot_x64': [
71 'ios', 'gyp', 'release_bot', 'x64'
72 ],
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +010073 },
74
75 # This is a dict mapping a given 'mixin' name to a dict of settings that
76 # mb should use. See //tools/mb/docs/user_guide.md for more information.
77 'mixins': {
78 'ios': {
79 'gn_args': 'target_os="ios"',
80 'gyp_defines': 'OS=ios',
81 },
82
83 'arm': {
84 'gn_args': 'target_cpu="arm"',
85 'gyp_defines': 'target_arch=arm',
86 },
87
88 'arm64': {
89 'gn_args': 'target_cpu="arm64"',
90 'gyp_defines': 'target_arch=arm64',
91 },
92
93 'debug': {
94 'gn_args': 'is_debug=true',
95 },
96
97 'debug_bot': {
kjellander@webrtc.org68718e32016-06-06 18:10:10 +020098 'mixins': ['debug', 'shared'],
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +010099 },
100
101 'device': {
kjellander@webrtc.org0c74ae12016-02-25 08:41:10 +0100102 'gn_args': 'ios_enable_code_signing=false',
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100103 'gyp_defines': 'chromium_ios_signing=0',
104 },
105
106 'gn': {'type': 'gn'},
107
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100108 'gyp': {'type': 'gyp'},
109
110 'release': {
111 'gn_args': 'is_debug=false',
112 },
113
114 'release_bot': {
kjellander@webrtc.org68718e32016-06-06 18:10:10 +0200115 'mixins': ['release', 'static'],
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100116 },
117
118 'shared': {
119 'gn_args': 'is_component_build=true',
120 'gyp_defines': 'component=shared_library',
121 },
122
123 'static': {
124 'gn_args': 'is_component_build=false',
125 'gyp_defines': 'component=static_library',
126 },
127
128 'x64': {
129 'gn_args': 'target_cpu="x64"',
130 'gyp_defines': 'target_arch=x64',
131 },
132
133 'x86': {
134 'gn_args': 'target_cpu="x86"',
135 'gyp_defines': 'target_arch=ia32',
136 },
137 },
kjellander@webrtc.org861dcb72016-02-24 21:36:40 +0100138}