xref: /aosp_15_r20/external/cronet/build/toolchain/linux/BUILD.gn (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# Copyright 2013 The Chromium Authors
2*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
3*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file.
4*6777b538SAndroid Build Coastguard Worker
5*6777b538SAndroid Build Coastguard Workerimport("//build/config/dcheck_always_on.gni")
6*6777b538SAndroid Build Coastguard Workerimport("//build/config/ozone.gni")
7*6777b538SAndroid Build Coastguard Workerimport("//build/config/sysroot.gni")
8*6777b538SAndroid Build Coastguard Workerimport("//build/config/ui.gni")
9*6777b538SAndroid Build Coastguard Workerimport("//build/toolchain/gcc_toolchain.gni")
10*6777b538SAndroid Build Coastguard Worker
11*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_ppc64") {
12*6777b538SAndroid Build Coastguard Worker  enable_linker_map = true
13*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
14*6777b538SAndroid Build Coastguard Worker    current_cpu = "ppc64"
15*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
16*6777b538SAndroid Build Coastguard Worker  }
17*6777b538SAndroid Build Coastguard Worker}
18*6777b538SAndroid Build Coastguard Worker
19*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_arm") {
20*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
21*6777b538SAndroid Build Coastguard Worker    current_cpu = "arm"
22*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
23*6777b538SAndroid Build Coastguard Worker  }
24*6777b538SAndroid Build Coastguard Worker}
25*6777b538SAndroid Build Coastguard Worker
26*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_arm64") {
27*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
28*6777b538SAndroid Build Coastguard Worker    current_cpu = "arm64"
29*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
30*6777b538SAndroid Build Coastguard Worker  }
31*6777b538SAndroid Build Coastguard Worker}
32*6777b538SAndroid Build Coastguard Worker
33*6777b538SAndroid Build Coastguard Workergcc_toolchain("arm64") {
34*6777b538SAndroid Build Coastguard Worker  toolprefix = "aarch64-linux-gnu-"
35*6777b538SAndroid Build Coastguard Worker
36*6777b538SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
37*6777b538SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
38*6777b538SAndroid Build Coastguard Worker
39*6777b538SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
40*6777b538SAndroid Build Coastguard Worker  ld = cxx
41*6777b538SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
42*6777b538SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
43*6777b538SAndroid Build Coastguard Worker
44*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
45*6777b538SAndroid Build Coastguard Worker    current_cpu = "arm64"
46*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
47*6777b538SAndroid Build Coastguard Worker
48*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
49*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
50*6777b538SAndroid Build Coastguard Worker    is_clang = false
51*6777b538SAndroid Build Coastguard Worker  }
52*6777b538SAndroid Build Coastguard Worker}
53*6777b538SAndroid Build Coastguard Worker
54*6777b538SAndroid Build Coastguard Workergcc_toolchain("arm") {
55*6777b538SAndroid Build Coastguard Worker  toolprefix = "arm-linux-gnueabihf-"
56*6777b538SAndroid Build Coastguard Worker
57*6777b538SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
58*6777b538SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
59*6777b538SAndroid Build Coastguard Worker
60*6777b538SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
61*6777b538SAndroid Build Coastguard Worker  ld = cxx
62*6777b538SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
63*6777b538SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
64*6777b538SAndroid Build Coastguard Worker
65*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
66*6777b538SAndroid Build Coastguard Worker    current_cpu = "arm"
67*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
68*6777b538SAndroid Build Coastguard Worker
69*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
70*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
71*6777b538SAndroid Build Coastguard Worker    is_clang = false
72*6777b538SAndroid Build Coastguard Worker  }
73*6777b538SAndroid Build Coastguard Worker}
74*6777b538SAndroid Build Coastguard Worker
75*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_x86") {
76*6777b538SAndroid Build Coastguard Worker  # Output linker map files for binary size analysis.
77*6777b538SAndroid Build Coastguard Worker  enable_linker_map = true
78*6777b538SAndroid Build Coastguard Worker
79*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
80*6777b538SAndroid Build Coastguard Worker    current_cpu = "x86"
81*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
82*6777b538SAndroid Build Coastguard Worker  }
83*6777b538SAndroid Build Coastguard Worker}
84*6777b538SAndroid Build Coastguard Worker
85*6777b538SAndroid Build Coastguard Workergcc_toolchain("x86") {
86*6777b538SAndroid Build Coastguard Worker  cc = "gcc"
87*6777b538SAndroid Build Coastguard Worker  cxx = "g++"
88*6777b538SAndroid Build Coastguard Worker
89*6777b538SAndroid Build Coastguard Worker  readelf = "readelf"
90*6777b538SAndroid Build Coastguard Worker  nm = "nm"
91*6777b538SAndroid Build Coastguard Worker  ar = "ar"
92*6777b538SAndroid Build Coastguard Worker  ld = cxx
93*6777b538SAndroid Build Coastguard Worker
94*6777b538SAndroid Build Coastguard Worker  # Output linker map files for binary size analysis.
95*6777b538SAndroid Build Coastguard Worker  enable_linker_map = true
96*6777b538SAndroid Build Coastguard Worker
97*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
98*6777b538SAndroid Build Coastguard Worker    current_cpu = "x86"
99*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
100*6777b538SAndroid Build Coastguard Worker
101*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
102*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
103*6777b538SAndroid Build Coastguard Worker    is_clang = false
104*6777b538SAndroid Build Coastguard Worker  }
105*6777b538SAndroid Build Coastguard Worker}
106*6777b538SAndroid Build Coastguard Worker
107*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_x64") {
108*6777b538SAndroid Build Coastguard Worker  # Output linker map files for binary size analysis.
109*6777b538SAndroid Build Coastguard Worker  enable_linker_map = true
110*6777b538SAndroid Build Coastguard Worker
111*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
112*6777b538SAndroid Build Coastguard Worker    current_cpu = "x64"
113*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
114*6777b538SAndroid Build Coastguard Worker  }
115*6777b538SAndroid Build Coastguard Worker}
116*6777b538SAndroid Build Coastguard Worker
117*6777b538SAndroid Build Coastguard Workertemplate("clang_v8_toolchain") {
118*6777b538SAndroid Build Coastguard Worker  clang_toolchain(target_name) {
119*6777b538SAndroid Build Coastguard Worker    toolchain_args = {
120*6777b538SAndroid Build Coastguard Worker      current_os = "linux"
121*6777b538SAndroid Build Coastguard Worker      forward_variables_from(invoker.toolchain_args, "*")
122*6777b538SAndroid Build Coastguard Worker    }
123*6777b538SAndroid Build Coastguard Worker  }
124*6777b538SAndroid Build Coastguard Worker}
125*6777b538SAndroid Build Coastguard Worker
126*6777b538SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x86_v8_arm") {
127*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
128*6777b538SAndroid Build Coastguard Worker    current_cpu = "x86"
129*6777b538SAndroid Build Coastguard Worker    v8_current_cpu = "arm"
130*6777b538SAndroid Build Coastguard Worker  }
131*6777b538SAndroid Build Coastguard Worker}
132*6777b538SAndroid Build Coastguard Worker
133*6777b538SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x86_v8_mipsel") {
134*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
135*6777b538SAndroid Build Coastguard Worker    current_cpu = "x86"
136*6777b538SAndroid Build Coastguard Worker    v8_current_cpu = "mipsel"
137*6777b538SAndroid Build Coastguard Worker  }
138*6777b538SAndroid Build Coastguard Worker}
139*6777b538SAndroid Build Coastguard Worker
140*6777b538SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x86_v8_mips") {
141*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
142*6777b538SAndroid Build Coastguard Worker    current_cpu = "x86"
143*6777b538SAndroid Build Coastguard Worker    v8_current_cpu = "mips"
144*6777b538SAndroid Build Coastguard Worker  }
145*6777b538SAndroid Build Coastguard Worker}
146*6777b538SAndroid Build Coastguard Worker
147*6777b538SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_arm64") {
148*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
149*6777b538SAndroid Build Coastguard Worker    current_cpu = "x64"
150*6777b538SAndroid Build Coastguard Worker    v8_current_cpu = "arm64"
151*6777b538SAndroid Build Coastguard Worker  }
152*6777b538SAndroid Build Coastguard Worker}
153*6777b538SAndroid Build Coastguard Worker
154*6777b538SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_mips64el") {
155*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
156*6777b538SAndroid Build Coastguard Worker    current_cpu = "x64"
157*6777b538SAndroid Build Coastguard Worker    v8_current_cpu = "mips64el"
158*6777b538SAndroid Build Coastguard Worker  }
159*6777b538SAndroid Build Coastguard Worker}
160*6777b538SAndroid Build Coastguard Worker
161*6777b538SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_mips64") {
162*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
163*6777b538SAndroid Build Coastguard Worker    current_cpu = "x64"
164*6777b538SAndroid Build Coastguard Worker    v8_current_cpu = "mips64"
165*6777b538SAndroid Build Coastguard Worker  }
166*6777b538SAndroid Build Coastguard Worker}
167*6777b538SAndroid Build Coastguard Worker
168*6777b538SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_riscv64") {
169*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
170*6777b538SAndroid Build Coastguard Worker    current_cpu = "x64"
171*6777b538SAndroid Build Coastguard Worker    v8_current_cpu = "riscv64"
172*6777b538SAndroid Build Coastguard Worker  }
173*6777b538SAndroid Build Coastguard Worker}
174*6777b538SAndroid Build Coastguard Worker
175*6777b538SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_loong64") {
176*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
177*6777b538SAndroid Build Coastguard Worker    current_cpu = "x64"
178*6777b538SAndroid Build Coastguard Worker    v8_current_cpu = "loong64"
179*6777b538SAndroid Build Coastguard Worker  }
180*6777b538SAndroid Build Coastguard Worker}
181*6777b538SAndroid Build Coastguard Worker
182*6777b538SAndroid Build Coastguard Worker# In a LaCrOS build, this toolchain is intended to be used as an alternate
183*6777b538SAndroid Build Coastguard Worker# toolchain to build Ash-Chrome in a subdirectory.
184*6777b538SAndroid Build Coastguard Worker# This is a test-only toolchain.
185*6777b538SAndroid Build Coastguard Workerclang_toolchain("ash_clang_x64") {
186*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
187*6777b538SAndroid Build Coastguard Worker    # This turns the toolchain into the "Linux ChromeOS" build
188*6777b538SAndroid Build Coastguard Worker    current_os = "chromeos"
189*6777b538SAndroid Build Coastguard Worker    target_os = "chromeos"
190*6777b538SAndroid Build Coastguard Worker    current_cpu = current_cpu
191*6777b538SAndroid Build Coastguard Worker
192*6777b538SAndroid Build Coastguard Worker    # This turns off all of the LaCrOS-specific flags.
193*6777b538SAndroid Build Coastguard Worker    also_build_ash_chrome = false
194*6777b538SAndroid Build Coastguard Worker    chromeos_is_browser_only = false
195*6777b538SAndroid Build Coastguard Worker    use_clang_coverage = false
196*6777b538SAndroid Build Coastguard Worker
197*6777b538SAndroid Build Coastguard Worker    # Never build ash with asan. It is too slow for builders and cause
198*6777b538SAndroid Build Coastguard Worker    # tests being flaky.
199*6777b538SAndroid Build Coastguard Worker    is_asan = false
200*6777b538SAndroid Build Coastguard Worker    is_lsan = false
201*6777b538SAndroid Build Coastguard Worker  }
202*6777b538SAndroid Build Coastguard Worker}
203*6777b538SAndroid Build Coastguard Worker
204*6777b538SAndroid Build Coastguard Worker# In an ash build, this toolchain is intended to be used as an alternate
205*6777b538SAndroid Build Coastguard Worker# toolchain to build lacros-Chrome in a subdirectory.
206*6777b538SAndroid Build Coastguard Worker# This is a test-only toolchain.
207*6777b538SAndroid Build Coastguard Workerclang_toolchain("lacros_clang_x64") {
208*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
209*6777b538SAndroid Build Coastguard Worker    # This turns the toolchain into the "Lacros" build
210*6777b538SAndroid Build Coastguard Worker    current_os = "chromeos"
211*6777b538SAndroid Build Coastguard Worker    target_os = "chromeos"
212*6777b538SAndroid Build Coastguard Worker    current_cpu = current_cpu
213*6777b538SAndroid Build Coastguard Worker
214*6777b538SAndroid Build Coastguard Worker    # This turns on the LaCrOS-specific flag.
215*6777b538SAndroid Build Coastguard Worker    also_build_lacros_chrome = false
216*6777b538SAndroid Build Coastguard Worker    chromeos_is_browser_only = true
217*6777b538SAndroid Build Coastguard Worker    use_clang_coverage = false
218*6777b538SAndroid Build Coastguard Worker  }
219*6777b538SAndroid Build Coastguard Worker}
220*6777b538SAndroid Build Coastguard Worker
221*6777b538SAndroid Build Coastguard Workergcc_toolchain("x64") {
222*6777b538SAndroid Build Coastguard Worker  cc = "gcc"
223*6777b538SAndroid Build Coastguard Worker  cxx = "g++"
224*6777b538SAndroid Build Coastguard Worker
225*6777b538SAndroid Build Coastguard Worker  readelf = "readelf"
226*6777b538SAndroid Build Coastguard Worker  nm = "nm"
227*6777b538SAndroid Build Coastguard Worker  ar = "ar"
228*6777b538SAndroid Build Coastguard Worker  ld = cxx
229*6777b538SAndroid Build Coastguard Worker
230*6777b538SAndroid Build Coastguard Worker  # Output linker map files for binary size analysis.
231*6777b538SAndroid Build Coastguard Worker  enable_linker_map = true
232*6777b538SAndroid Build Coastguard Worker
233*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
234*6777b538SAndroid Build Coastguard Worker    current_cpu = "x64"
235*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
236*6777b538SAndroid Build Coastguard Worker
237*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
238*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
239*6777b538SAndroid Build Coastguard Worker    is_clang = false
240*6777b538SAndroid Build Coastguard Worker  }
241*6777b538SAndroid Build Coastguard Worker}
242*6777b538SAndroid Build Coastguard Worker
243*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_mipsel") {
244*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
245*6777b538SAndroid Build Coastguard Worker    current_cpu = "mipsel"
246*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
247*6777b538SAndroid Build Coastguard Worker  }
248*6777b538SAndroid Build Coastguard Worker}
249*6777b538SAndroid Build Coastguard Worker
250*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_mips64el") {
251*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
252*6777b538SAndroid Build Coastguard Worker    current_cpu = "mips64el"
253*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
254*6777b538SAndroid Build Coastguard Worker  }
255*6777b538SAndroid Build Coastguard Worker}
256*6777b538SAndroid Build Coastguard Worker
257*6777b538SAndroid Build Coastguard Workergcc_toolchain("mipsel") {
258*6777b538SAndroid Build Coastguard Worker  toolprefix = "mipsel-linux-gnu-"
259*6777b538SAndroid Build Coastguard Worker
260*6777b538SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
261*6777b538SAndroid Build Coastguard Worker  cxx = " ${toolprefix}g++"
262*6777b538SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
263*6777b538SAndroid Build Coastguard Worker  ld = cxx
264*6777b538SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
265*6777b538SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
266*6777b538SAndroid Build Coastguard Worker
267*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
268*6777b538SAndroid Build Coastguard Worker    cc_wrapper = ""
269*6777b538SAndroid Build Coastguard Worker    current_cpu = "mipsel"
270*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
271*6777b538SAndroid Build Coastguard Worker
272*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
273*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
274*6777b538SAndroid Build Coastguard Worker    is_clang = false
275*6777b538SAndroid Build Coastguard Worker    use_goma = false
276*6777b538SAndroid Build Coastguard Worker  }
277*6777b538SAndroid Build Coastguard Worker}
278*6777b538SAndroid Build Coastguard Worker
279*6777b538SAndroid Build Coastguard Workergcc_toolchain("mips64el") {
280*6777b538SAndroid Build Coastguard Worker  toolprefix = "mips64el-linux-gnuabi64-"
281*6777b538SAndroid Build Coastguard Worker
282*6777b538SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
283*6777b538SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
284*6777b538SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
285*6777b538SAndroid Build Coastguard Worker  ld = cxx
286*6777b538SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
287*6777b538SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
288*6777b538SAndroid Build Coastguard Worker
289*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
290*6777b538SAndroid Build Coastguard Worker    cc_wrapper = ""
291*6777b538SAndroid Build Coastguard Worker    current_cpu = "mips64el"
292*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
293*6777b538SAndroid Build Coastguard Worker
294*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
295*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
296*6777b538SAndroid Build Coastguard Worker    is_clang = false
297*6777b538SAndroid Build Coastguard Worker    use_goma = false
298*6777b538SAndroid Build Coastguard Worker  }
299*6777b538SAndroid Build Coastguard Worker}
300*6777b538SAndroid Build Coastguard Worker
301*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_riscv64") {
302*6777b538SAndroid Build Coastguard Worker  enable_linker_map = true
303*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
304*6777b538SAndroid Build Coastguard Worker    current_cpu = "riscv64"
305*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
306*6777b538SAndroid Build Coastguard Worker    is_clang = true
307*6777b538SAndroid Build Coastguard Worker  }
308*6777b538SAndroid Build Coastguard Worker}
309*6777b538SAndroid Build Coastguard Worker
310*6777b538SAndroid Build Coastguard Workergcc_toolchain("riscv64") {
311*6777b538SAndroid Build Coastguard Worker  toolprefix = "riscv64-linux-gnu"
312*6777b538SAndroid Build Coastguard Worker
313*6777b538SAndroid Build Coastguard Worker  cc = "${toolprefix}-gcc"
314*6777b538SAndroid Build Coastguard Worker  cxx = "${toolprefix}-g++"
315*6777b538SAndroid Build Coastguard Worker
316*6777b538SAndroid Build Coastguard Worker  readelf = "${toolprefix}-readelf"
317*6777b538SAndroid Build Coastguard Worker  nm = "${toolprefix}-nm"
318*6777b538SAndroid Build Coastguard Worker  ar = "${toolprefix}-ar"
319*6777b538SAndroid Build Coastguard Worker  ld = cxx
320*6777b538SAndroid Build Coastguard Worker
321*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
322*6777b538SAndroid Build Coastguard Worker    current_cpu = "riscv64"
323*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
324*6777b538SAndroid Build Coastguard Worker    is_clang = false
325*6777b538SAndroid Build Coastguard Worker  }
326*6777b538SAndroid Build Coastguard Worker}
327*6777b538SAndroid Build Coastguard Worker
328*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_s390x") {
329*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
330*6777b538SAndroid Build Coastguard Worker    current_cpu = "s390x"
331*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
332*6777b538SAndroid Build Coastguard Worker    is_clang = true
333*6777b538SAndroid Build Coastguard Worker  }
334*6777b538SAndroid Build Coastguard Worker}
335*6777b538SAndroid Build Coastguard Worker
336*6777b538SAndroid Build Coastguard Workergcc_toolchain("s390x") {
337*6777b538SAndroid Build Coastguard Worker  cc = "gcc"
338*6777b538SAndroid Build Coastguard Worker  cxx = "g++"
339*6777b538SAndroid Build Coastguard Worker
340*6777b538SAndroid Build Coastguard Worker  readelf = "readelf"
341*6777b538SAndroid Build Coastguard Worker  nm = "nm"
342*6777b538SAndroid Build Coastguard Worker  ar = "ar"
343*6777b538SAndroid Build Coastguard Worker  ld = cxx
344*6777b538SAndroid Build Coastguard Worker
345*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
346*6777b538SAndroid Build Coastguard Worker    current_cpu = "s390x"
347*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
348*6777b538SAndroid Build Coastguard Worker
349*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
350*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
351*6777b538SAndroid Build Coastguard Worker    is_clang = false
352*6777b538SAndroid Build Coastguard Worker  }
353*6777b538SAndroid Build Coastguard Worker}
354*6777b538SAndroid Build Coastguard Worker
355*6777b538SAndroid Build Coastguard Workergcc_toolchain("ppc64") {
356*6777b538SAndroid Build Coastguard Worker  cc = "gcc"
357*6777b538SAndroid Build Coastguard Worker  cxx = "g++"
358*6777b538SAndroid Build Coastguard Worker
359*6777b538SAndroid Build Coastguard Worker  readelf = "readelf"
360*6777b538SAndroid Build Coastguard Worker  nm = "nm"
361*6777b538SAndroid Build Coastguard Worker  ar = "ar"
362*6777b538SAndroid Build Coastguard Worker  ld = cxx
363*6777b538SAndroid Build Coastguard Worker
364*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
365*6777b538SAndroid Build Coastguard Worker    current_cpu = "ppc64"
366*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
367*6777b538SAndroid Build Coastguard Worker
368*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
369*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
370*6777b538SAndroid Build Coastguard Worker    is_clang = false
371*6777b538SAndroid Build Coastguard Worker  }
372*6777b538SAndroid Build Coastguard Worker}
373*6777b538SAndroid Build Coastguard Worker
374*6777b538SAndroid Build Coastguard Workergcc_toolchain("mips") {
375*6777b538SAndroid Build Coastguard Worker  toolprefix = "mips-linux-gnu-"
376*6777b538SAndroid Build Coastguard Worker
377*6777b538SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
378*6777b538SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
379*6777b538SAndroid Build Coastguard Worker
380*6777b538SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
381*6777b538SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
382*6777b538SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
383*6777b538SAndroid Build Coastguard Worker  ld = cxx
384*6777b538SAndroid Build Coastguard Worker
385*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
386*6777b538SAndroid Build Coastguard Worker    current_cpu = "mips"
387*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
388*6777b538SAndroid Build Coastguard Worker
389*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
390*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
391*6777b538SAndroid Build Coastguard Worker    is_clang = false
392*6777b538SAndroid Build Coastguard Worker  }
393*6777b538SAndroid Build Coastguard Worker}
394*6777b538SAndroid Build Coastguard Worker
395*6777b538SAndroid Build Coastguard Workergcc_toolchain("mips64") {
396*6777b538SAndroid Build Coastguard Worker  toolprefix = "mips64-linux-gnuabi64-"
397*6777b538SAndroid Build Coastguard Worker
398*6777b538SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
399*6777b538SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
400*6777b538SAndroid Build Coastguard Worker
401*6777b538SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
402*6777b538SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
403*6777b538SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
404*6777b538SAndroid Build Coastguard Worker  ld = cxx
405*6777b538SAndroid Build Coastguard Worker
406*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
407*6777b538SAndroid Build Coastguard Worker    current_cpu = "mips64"
408*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
409*6777b538SAndroid Build Coastguard Worker
410*6777b538SAndroid Build Coastguard Worker    # reclient does not support gcc.
411*6777b538SAndroid Build Coastguard Worker    use_remoteexec = false
412*6777b538SAndroid Build Coastguard Worker    is_clang = false
413*6777b538SAndroid Build Coastguard Worker  }
414*6777b538SAndroid Build Coastguard Worker}
415*6777b538SAndroid Build Coastguard Worker
416*6777b538SAndroid Build Coastguard Workerclang_toolchain("clang_loong64") {
417*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
418*6777b538SAndroid Build Coastguard Worker    current_cpu = "loong64"
419*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
420*6777b538SAndroid Build Coastguard Worker  }
421*6777b538SAndroid Build Coastguard Worker}
422*6777b538SAndroid Build Coastguard Worker
423*6777b538SAndroid Build Coastguard Workergcc_toolchain("loong64") {
424*6777b538SAndroid Build Coastguard Worker  toolprefix = "loongarch64-unknown-linux-gnu"
425*6777b538SAndroid Build Coastguard Worker
426*6777b538SAndroid Build Coastguard Worker  cc = "${toolprefix}-gcc"
427*6777b538SAndroid Build Coastguard Worker  cxx = "${toolprefix}-g++"
428*6777b538SAndroid Build Coastguard Worker
429*6777b538SAndroid Build Coastguard Worker  readelf = "${toolprefix}-readelf"
430*6777b538SAndroid Build Coastguard Worker  nm = "${toolprefix}-nm"
431*6777b538SAndroid Build Coastguard Worker  ar = "${toolprefix}-ar"
432*6777b538SAndroid Build Coastguard Worker  ld = cxx
433*6777b538SAndroid Build Coastguard Worker
434*6777b538SAndroid Build Coastguard Worker  toolchain_args = {
435*6777b538SAndroid Build Coastguard Worker    current_cpu = "loong64"
436*6777b538SAndroid Build Coastguard Worker    current_os = "linux"
437*6777b538SAndroid Build Coastguard Worker    is_clang = false
438*6777b538SAndroid Build Coastguard Worker  }
439*6777b538SAndroid Build Coastguard Worker}
440