xref: /aosp_15_r20/external/angle/build/toolchain/linux/BUILD.gn (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1*8975f5c5SAndroid Build Coastguard Worker# Copyright 2013 The Chromium Authors
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 Workerimport("//build/config/dcheck_always_on.gni")
6*8975f5c5SAndroid Build Coastguard Workerimport("//build/config/ozone.gni")
7*8975f5c5SAndroid Build Coastguard Workerimport("//build/config/sysroot.gni")
8*8975f5c5SAndroid Build Coastguard Workerimport("//build/config/ui.gni")
9*8975f5c5SAndroid Build Coastguard Workerimport("//build/toolchain/gcc_toolchain.gni")
10*8975f5c5SAndroid Build Coastguard Worker
11*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_ppc64") {
12*8975f5c5SAndroid Build Coastguard Worker  enable_linker_map = true
13*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
14*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "ppc64"
15*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
16*8975f5c5SAndroid Build Coastguard Worker  }
17*8975f5c5SAndroid Build Coastguard Worker}
18*8975f5c5SAndroid Build Coastguard Worker
19*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_arm") {
20*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
21*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "arm"
22*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
23*8975f5c5SAndroid Build Coastguard Worker  }
24*8975f5c5SAndroid Build Coastguard Worker}
25*8975f5c5SAndroid Build Coastguard Worker
26*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_arm64") {
27*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
28*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "arm64"
29*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
30*8975f5c5SAndroid Build Coastguard Worker  }
31*8975f5c5SAndroid Build Coastguard Worker}
32*8975f5c5SAndroid Build Coastguard Worker
33*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("arm64") {
34*8975f5c5SAndroid Build Coastguard Worker  toolprefix = "aarch64-linux-gnu-"
35*8975f5c5SAndroid Build Coastguard Worker
36*8975f5c5SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
37*8975f5c5SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
38*8975f5c5SAndroid Build Coastguard Worker
39*8975f5c5SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
40*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
41*8975f5c5SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
42*8975f5c5SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
43*8975f5c5SAndroid Build Coastguard Worker
44*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
45*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "arm64"
46*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
47*8975f5c5SAndroid Build Coastguard Worker
48*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
49*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
50*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
51*8975f5c5SAndroid Build Coastguard Worker  }
52*8975f5c5SAndroid Build Coastguard Worker}
53*8975f5c5SAndroid Build Coastguard Worker
54*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("arm") {
55*8975f5c5SAndroid Build Coastguard Worker  toolprefix = "arm-linux-gnueabihf-"
56*8975f5c5SAndroid Build Coastguard Worker
57*8975f5c5SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
58*8975f5c5SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
59*8975f5c5SAndroid Build Coastguard Worker
60*8975f5c5SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
61*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
62*8975f5c5SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
63*8975f5c5SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
64*8975f5c5SAndroid Build Coastguard Worker
65*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
66*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "arm"
67*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
68*8975f5c5SAndroid Build Coastguard Worker
69*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
70*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
71*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
72*8975f5c5SAndroid Build Coastguard Worker  }
73*8975f5c5SAndroid Build Coastguard Worker}
74*8975f5c5SAndroid Build Coastguard Worker
75*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_x86") {
76*8975f5c5SAndroid Build Coastguard Worker  # Output linker map files for binary size analysis.
77*8975f5c5SAndroid Build Coastguard Worker  enable_linker_map = true
78*8975f5c5SAndroid Build Coastguard Worker
79*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
80*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x86"
81*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
82*8975f5c5SAndroid Build Coastguard Worker  }
83*8975f5c5SAndroid Build Coastguard Worker}
84*8975f5c5SAndroid Build Coastguard Worker
85*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("x86") {
86*8975f5c5SAndroid Build Coastguard Worker  cc = "gcc"
87*8975f5c5SAndroid Build Coastguard Worker  cxx = "g++"
88*8975f5c5SAndroid Build Coastguard Worker
89*8975f5c5SAndroid Build Coastguard Worker  readelf = "readelf"
90*8975f5c5SAndroid Build Coastguard Worker  nm = "nm"
91*8975f5c5SAndroid Build Coastguard Worker  ar = "ar"
92*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
93*8975f5c5SAndroid Build Coastguard Worker
94*8975f5c5SAndroid Build Coastguard Worker  # Output linker map files for binary size analysis.
95*8975f5c5SAndroid Build Coastguard Worker  enable_linker_map = true
96*8975f5c5SAndroid Build Coastguard Worker
97*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
98*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x86"
99*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
100*8975f5c5SAndroid Build Coastguard Worker
101*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
102*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
103*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
104*8975f5c5SAndroid Build Coastguard Worker  }
105*8975f5c5SAndroid Build Coastguard Worker}
106*8975f5c5SAndroid Build Coastguard Worker
107*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_x64") {
108*8975f5c5SAndroid Build Coastguard Worker  # Output linker map files for binary size analysis.
109*8975f5c5SAndroid Build Coastguard Worker  enable_linker_map = true
110*8975f5c5SAndroid Build Coastguard Worker
111*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
112*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x64"
113*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
114*8975f5c5SAndroid Build Coastguard Worker  }
115*8975f5c5SAndroid Build Coastguard Worker}
116*8975f5c5SAndroid Build Coastguard Worker
117*8975f5c5SAndroid Build Coastguard Workertemplate("clang_v8_toolchain") {
118*8975f5c5SAndroid Build Coastguard Worker  clang_toolchain(target_name) {
119*8975f5c5SAndroid Build Coastguard Worker    toolchain_args = {
120*8975f5c5SAndroid Build Coastguard Worker      current_os = "linux"
121*8975f5c5SAndroid Build Coastguard Worker      forward_variables_from(invoker.toolchain_args, "*")
122*8975f5c5SAndroid Build Coastguard Worker    }
123*8975f5c5SAndroid Build Coastguard Worker  }
124*8975f5c5SAndroid Build Coastguard Worker}
125*8975f5c5SAndroid Build Coastguard Worker
126*8975f5c5SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x86_v8_arm") {
127*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
128*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x86"
129*8975f5c5SAndroid Build Coastguard Worker    v8_current_cpu = "arm"
130*8975f5c5SAndroid Build Coastguard Worker  }
131*8975f5c5SAndroid Build Coastguard Worker}
132*8975f5c5SAndroid Build Coastguard Worker
133*8975f5c5SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x86_v8_mipsel") {
134*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
135*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x86"
136*8975f5c5SAndroid Build Coastguard Worker    v8_current_cpu = "mipsel"
137*8975f5c5SAndroid Build Coastguard Worker  }
138*8975f5c5SAndroid Build Coastguard Worker}
139*8975f5c5SAndroid Build Coastguard Worker
140*8975f5c5SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x86_v8_mips") {
141*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
142*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x86"
143*8975f5c5SAndroid Build Coastguard Worker    v8_current_cpu = "mips"
144*8975f5c5SAndroid Build Coastguard Worker  }
145*8975f5c5SAndroid Build Coastguard Worker}
146*8975f5c5SAndroid Build Coastguard Worker
147*8975f5c5SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_arm64") {
148*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
149*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x64"
150*8975f5c5SAndroid Build Coastguard Worker    v8_current_cpu = "arm64"
151*8975f5c5SAndroid Build Coastguard Worker  }
152*8975f5c5SAndroid Build Coastguard Worker}
153*8975f5c5SAndroid Build Coastguard Worker
154*8975f5c5SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_mips64el") {
155*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
156*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x64"
157*8975f5c5SAndroid Build Coastguard Worker    v8_current_cpu = "mips64el"
158*8975f5c5SAndroid Build Coastguard Worker  }
159*8975f5c5SAndroid Build Coastguard Worker}
160*8975f5c5SAndroid Build Coastguard Worker
161*8975f5c5SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_mips64") {
162*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
163*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x64"
164*8975f5c5SAndroid Build Coastguard Worker    v8_current_cpu = "mips64"
165*8975f5c5SAndroid Build Coastguard Worker  }
166*8975f5c5SAndroid Build Coastguard Worker}
167*8975f5c5SAndroid Build Coastguard Worker
168*8975f5c5SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_riscv64") {
169*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
170*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x64"
171*8975f5c5SAndroid Build Coastguard Worker    v8_current_cpu = "riscv64"
172*8975f5c5SAndroid Build Coastguard Worker  }
173*8975f5c5SAndroid Build Coastguard Worker}
174*8975f5c5SAndroid Build Coastguard Worker
175*8975f5c5SAndroid Build Coastguard Workerclang_v8_toolchain("clang_x64_v8_loong64") {
176*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
177*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x64"
178*8975f5c5SAndroid Build Coastguard Worker    v8_current_cpu = "loong64"
179*8975f5c5SAndroid Build Coastguard Worker  }
180*8975f5c5SAndroid Build Coastguard Worker}
181*8975f5c5SAndroid Build Coastguard Worker
182*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("x64") {
183*8975f5c5SAndroid Build Coastguard Worker  cc = "gcc"
184*8975f5c5SAndroid Build Coastguard Worker  cxx = "g++"
185*8975f5c5SAndroid Build Coastguard Worker
186*8975f5c5SAndroid Build Coastguard Worker  readelf = "readelf"
187*8975f5c5SAndroid Build Coastguard Worker  nm = "nm"
188*8975f5c5SAndroid Build Coastguard Worker  ar = "ar"
189*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
190*8975f5c5SAndroid Build Coastguard Worker
191*8975f5c5SAndroid Build Coastguard Worker  # Output linker map files for binary size analysis.
192*8975f5c5SAndroid Build Coastguard Worker  enable_linker_map = true
193*8975f5c5SAndroid Build Coastguard Worker
194*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
195*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "x64"
196*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
197*8975f5c5SAndroid Build Coastguard Worker
198*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
199*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
200*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
201*8975f5c5SAndroid Build Coastguard Worker  }
202*8975f5c5SAndroid Build Coastguard Worker}
203*8975f5c5SAndroid Build Coastguard Worker
204*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_mipsel") {
205*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
206*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "mipsel"
207*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
208*8975f5c5SAndroid Build Coastguard Worker  }
209*8975f5c5SAndroid Build Coastguard Worker}
210*8975f5c5SAndroid Build Coastguard Worker
211*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_mips64el") {
212*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
213*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "mips64el"
214*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
215*8975f5c5SAndroid Build Coastguard Worker  }
216*8975f5c5SAndroid Build Coastguard Worker}
217*8975f5c5SAndroid Build Coastguard Worker
218*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("mipsel") {
219*8975f5c5SAndroid Build Coastguard Worker  toolprefix = "mipsel-linux-gnu-"
220*8975f5c5SAndroid Build Coastguard Worker
221*8975f5c5SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
222*8975f5c5SAndroid Build Coastguard Worker  cxx = " ${toolprefix}g++"
223*8975f5c5SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
224*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
225*8975f5c5SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
226*8975f5c5SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
227*8975f5c5SAndroid Build Coastguard Worker
228*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
229*8975f5c5SAndroid Build Coastguard Worker    cc_wrapper = ""
230*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "mipsel"
231*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
232*8975f5c5SAndroid Build Coastguard Worker
233*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
234*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
235*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
236*8975f5c5SAndroid Build Coastguard Worker  }
237*8975f5c5SAndroid Build Coastguard Worker}
238*8975f5c5SAndroid Build Coastguard Worker
239*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("mips64el") {
240*8975f5c5SAndroid Build Coastguard Worker  toolprefix = "mips64el-linux-gnuabi64-"
241*8975f5c5SAndroid Build Coastguard Worker
242*8975f5c5SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
243*8975f5c5SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
244*8975f5c5SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
245*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
246*8975f5c5SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
247*8975f5c5SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
248*8975f5c5SAndroid Build Coastguard Worker
249*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
250*8975f5c5SAndroid Build Coastguard Worker    cc_wrapper = ""
251*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "mips64el"
252*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
253*8975f5c5SAndroid Build Coastguard Worker
254*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
255*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
256*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
257*8975f5c5SAndroid Build Coastguard Worker  }
258*8975f5c5SAndroid Build Coastguard Worker}
259*8975f5c5SAndroid Build Coastguard Worker
260*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_riscv64") {
261*8975f5c5SAndroid Build Coastguard Worker  enable_linker_map = true
262*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
263*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "riscv64"
264*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
265*8975f5c5SAndroid Build Coastguard Worker    is_clang = true
266*8975f5c5SAndroid Build Coastguard Worker  }
267*8975f5c5SAndroid Build Coastguard Worker}
268*8975f5c5SAndroid Build Coastguard Worker
269*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("riscv64") {
270*8975f5c5SAndroid Build Coastguard Worker  toolprefix = "riscv64-linux-gnu"
271*8975f5c5SAndroid Build Coastguard Worker
272*8975f5c5SAndroid Build Coastguard Worker  cc = "${toolprefix}-gcc"
273*8975f5c5SAndroid Build Coastguard Worker  cxx = "${toolprefix}-g++"
274*8975f5c5SAndroid Build Coastguard Worker
275*8975f5c5SAndroid Build Coastguard Worker  readelf = "${toolprefix}-readelf"
276*8975f5c5SAndroid Build Coastguard Worker  nm = "${toolprefix}-nm"
277*8975f5c5SAndroid Build Coastguard Worker  ar = "${toolprefix}-ar"
278*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
279*8975f5c5SAndroid Build Coastguard Worker
280*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
281*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "riscv64"
282*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
283*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
284*8975f5c5SAndroid Build Coastguard Worker  }
285*8975f5c5SAndroid Build Coastguard Worker}
286*8975f5c5SAndroid Build Coastguard Worker
287*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_s390x") {
288*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
289*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "s390x"
290*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
291*8975f5c5SAndroid Build Coastguard Worker    is_clang = true
292*8975f5c5SAndroid Build Coastguard Worker  }
293*8975f5c5SAndroid Build Coastguard Worker}
294*8975f5c5SAndroid Build Coastguard Worker
295*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("s390x") {
296*8975f5c5SAndroid Build Coastguard Worker  cc = "gcc"
297*8975f5c5SAndroid Build Coastguard Worker  cxx = "g++"
298*8975f5c5SAndroid Build Coastguard Worker
299*8975f5c5SAndroid Build Coastguard Worker  readelf = "readelf"
300*8975f5c5SAndroid Build Coastguard Worker  nm = "nm"
301*8975f5c5SAndroid Build Coastguard Worker  ar = "ar"
302*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
303*8975f5c5SAndroid Build Coastguard Worker
304*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
305*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "s390x"
306*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
307*8975f5c5SAndroid Build Coastguard Worker
308*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
309*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
310*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
311*8975f5c5SAndroid Build Coastguard Worker  }
312*8975f5c5SAndroid Build Coastguard Worker}
313*8975f5c5SAndroid Build Coastguard Worker
314*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("ppc64") {
315*8975f5c5SAndroid Build Coastguard Worker  cc = "gcc"
316*8975f5c5SAndroid Build Coastguard Worker  cxx = "g++"
317*8975f5c5SAndroid Build Coastguard Worker
318*8975f5c5SAndroid Build Coastguard Worker  readelf = "readelf"
319*8975f5c5SAndroid Build Coastguard Worker  nm = "nm"
320*8975f5c5SAndroid Build Coastguard Worker  ar = "ar"
321*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
322*8975f5c5SAndroid Build Coastguard Worker
323*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
324*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "ppc64"
325*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
326*8975f5c5SAndroid Build Coastguard Worker
327*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
328*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
329*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
330*8975f5c5SAndroid Build Coastguard Worker  }
331*8975f5c5SAndroid Build Coastguard Worker}
332*8975f5c5SAndroid Build Coastguard Worker
333*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("mips") {
334*8975f5c5SAndroid Build Coastguard Worker  toolprefix = "mips-linux-gnu-"
335*8975f5c5SAndroid Build Coastguard Worker
336*8975f5c5SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
337*8975f5c5SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
338*8975f5c5SAndroid Build Coastguard Worker
339*8975f5c5SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
340*8975f5c5SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
341*8975f5c5SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
342*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
343*8975f5c5SAndroid Build Coastguard Worker
344*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
345*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "mips"
346*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
347*8975f5c5SAndroid Build Coastguard Worker
348*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
349*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
350*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
351*8975f5c5SAndroid Build Coastguard Worker  }
352*8975f5c5SAndroid Build Coastguard Worker}
353*8975f5c5SAndroid Build Coastguard Worker
354*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("mips64") {
355*8975f5c5SAndroid Build Coastguard Worker  toolprefix = "mips64-linux-gnuabi64-"
356*8975f5c5SAndroid Build Coastguard Worker
357*8975f5c5SAndroid Build Coastguard Worker  cc = "${toolprefix}gcc"
358*8975f5c5SAndroid Build Coastguard Worker  cxx = "${toolprefix}g++"
359*8975f5c5SAndroid Build Coastguard Worker
360*8975f5c5SAndroid Build Coastguard Worker  readelf = "${toolprefix}readelf"
361*8975f5c5SAndroid Build Coastguard Worker  nm = "${toolprefix}nm"
362*8975f5c5SAndroid Build Coastguard Worker  ar = "${toolprefix}ar"
363*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
364*8975f5c5SAndroid Build Coastguard Worker
365*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
366*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "mips64"
367*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
368*8975f5c5SAndroid Build Coastguard Worker
369*8975f5c5SAndroid Build Coastguard Worker    # remote execution does not support gcc.
370*8975f5c5SAndroid Build Coastguard Worker    use_remoteexec = false
371*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
372*8975f5c5SAndroid Build Coastguard Worker  }
373*8975f5c5SAndroid Build Coastguard Worker}
374*8975f5c5SAndroid Build Coastguard Worker
375*8975f5c5SAndroid Build Coastguard Workerclang_toolchain("clang_loong64") {
376*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
377*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "loong64"
378*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
379*8975f5c5SAndroid Build Coastguard Worker  }
380*8975f5c5SAndroid Build Coastguard Worker}
381*8975f5c5SAndroid Build Coastguard Worker
382*8975f5c5SAndroid Build Coastguard Workergcc_toolchain("loong64") {
383*8975f5c5SAndroid Build Coastguard Worker  toolprefix = "loongarch64-unknown-linux-gnu"
384*8975f5c5SAndroid Build Coastguard Worker
385*8975f5c5SAndroid Build Coastguard Worker  cc = "${toolprefix}-gcc"
386*8975f5c5SAndroid Build Coastguard Worker  cxx = "${toolprefix}-g++"
387*8975f5c5SAndroid Build Coastguard Worker
388*8975f5c5SAndroid Build Coastguard Worker  readelf = "${toolprefix}-readelf"
389*8975f5c5SAndroid Build Coastguard Worker  nm = "${toolprefix}-nm"
390*8975f5c5SAndroid Build Coastguard Worker  ar = "${toolprefix}-ar"
391*8975f5c5SAndroid Build Coastguard Worker  ld = cxx
392*8975f5c5SAndroid Build Coastguard Worker
393*8975f5c5SAndroid Build Coastguard Worker  toolchain_args = {
394*8975f5c5SAndroid Build Coastguard Worker    current_cpu = "loong64"
395*8975f5c5SAndroid Build Coastguard Worker    current_os = "linux"
396*8975f5c5SAndroid Build Coastguard Worker    is_clang = false
397*8975f5c5SAndroid Build Coastguard Worker  }
398*8975f5c5SAndroid Build Coastguard Worker}
399