1# This Source Code Form is subject to the terms of the Mozilla Public
2# License, v. 2.0. If a copy of the MPL was not distributed with this
3# file, You can obtain one at http://mozilla.org/MPL/2.0/.
4---
5job-defaults:
6    worker-type: b-linux-xlarge
7    worker:
8        max-run-time: 7200
9    run:
10        resources:
11            - 'build/build-clang/build-clang.py'
12
13linux64-clang-5.0:
14    description: "Clang 5.0 toolchain build"
15    treeherder:
16        symbol: TL(clang5.0)
17    worker-type: b-linux-large
18    run:
19        script: build-clang.sh
20        arguments:
21            - 'build/build-clang/linux64.json'
22            - 'build/build-clang/clang-5.0.json'
23            - 'build/build-clang/2stages.json'
24        resources:
25            - 'build/build-clang/linux64.json'
26            - 'build/build-clang/clang-5.0.json'
27            - 'build/build-clang/2stages.json'
28        toolchain-artifact: public/build/clang.tar.zst
29    fetches:
30        fetch:
31            - clang-5.0
32        toolchain:
33            - linux64-toolchain-sysroot
34
35linux64-clang-13-mingw-x86:
36    description: "MinGW-Clang 13 x86 toolchain build"
37    treeherder:
38        symbol: TMW(clang-x86)
39    worker-type: b-linux
40    run:
41        script: build-clang-mingw.sh
42        arguments:
43            - 'x86'
44        toolchain-alias: linux64-clang-mingw-x86
45        toolchain-artifact: public/build/clangmingw.tar.zst
46    fetches:
47        fetch:
48            - clang-13
49            - mingw-w64
50            - libunwind
51            - llvm-mingw
52            - gcc-9.3.0
53        toolchain:
54            - linux64-clang-13
55
56linux64-clang-13-mingw-x64:
57    description: "MinGW-Clang 13 x64 toolchain build"
58    treeherder:
59        symbol: TMW(clang-x64)
60        tier: 1
61    worker-type: b-linux
62    run:
63        script: build-clang-mingw.sh
64        arguments:
65            - 'x64'
66        toolchain-alias: linux64-clang-mingw-x64
67        toolchain-artifact: public/build/clangmingw.tar.zst
68    fetches:
69        fetch:
70            - clang-13
71            - mingw-w64
72            - libunwind
73            - llvm-mingw
74            - gcc-9.3.0
75        toolchain:
76            - linux64-clang-13
77
78linux64-clang-13-stage1:
79    description: "Clang 13 toolchain build"
80    treeherder:
81        symbol: TL(clang13-stage1)
82    run-on-projects: [trunk]
83    run:
84        using: toolchain-script
85        script: build-clang.sh
86        arguments:
87            - 'build/build-clang/linux64.json'
88            - 'build/build-clang/clang-13.json'
89            - 'build/build-clang/1stage.json'
90        resources:
91            - 'build/build-clang/linux64.json'
92            - 'build/build-clang/clang-13.json'
93            - 'build/build-clang/1stage.json'
94        toolchain-alias:
95            - linux64-clang-toolchain
96        toolchain-artifact: public/build/clang.tar.zst
97    fetches:
98        fetch:
99            - clang-13
100        toolchain:
101            - linux64-toolchain-sysroot
102
103linux64-clang-13-profile:
104    description: "Clang 13 toolchain build"
105    treeherder:
106        symbol: TL(clang13-profile)
107    run:
108        using: toolchain-script
109        script: build-clang.sh
110        arguments:
111            - 'build/build-clang/linux64.json'
112            - 'build/build-clang/clang-13.json'
113            - 'build/build-clang/skip-stage-1.json'
114            - 'build/build-clang/profile.json'
115        resources:
116            - 'build/build-clang/linux64.json'
117            - 'build/build-clang/clang-13.json'
118            - 'build/build-clang/skip-stage-1.json'
119            - 'build/build-clang/profile.json'
120        toolchain-artifact: public/build/merged.profdata
121    fetches:
122        fetch:
123            - clang-13
124        toolchain:
125            - linux64-clang-13-stage1
126            - linux64-x64-compiler-rt-13
127            - linux64-toolchain-sysroot
128
129linux64-clang-13-raw:
130    description: "Clang 13 toolchain build"
131    treeherder:
132        symbol: TL(clang13-raw)
133    run:
134        script: build-clang.sh
135        arguments:
136            - 'build/build-clang/linux64.json'
137            - 'build/build-clang/clang-13.json'
138            - 'build/build-clang/skip-3-stages.json'
139            - 'build/build-clang/4stages-pgo.json'
140        resources:
141            - 'build/build-clang/linux64.json'
142            - 'build/build-clang/clang-13.json'
143            - 'build/build-clang/skip-3-stages.json'
144            - 'build/build-clang/4stages-pgo.json'
145        toolchain-artifact: public/build/clang.tar.zst
146    fetches:
147        fetch:
148            - clang-13
149        toolchain:
150            - linux64-clang-13-stage1
151            - linux64-clang-13-profile
152            - linux64-toolchain-sysroot
153
154linux64-clang-13:
155    description: "Clang 13 toolchain build"
156    attributes:
157        local-toolchain: true
158    treeherder:
159        symbol: TL(clang13)
160    worker-type: b-linux
161    worker:
162        max-run-time: 600
163    run-on-projects: [trunk]
164    run:
165        script: repack-clang.sh
166        toolchain-alias:
167            - linux64-clang
168        toolchain-artifact: public/build/clang.tar.zst
169    fetches:
170        toolchain:
171            - linux64-cctools-port
172            - linux64-clang-13-raw
173            - android-aarch64-compiler-rt-13
174            - android-arm-compiler-rt-13
175            - android-x64-compiler-rt-13
176            - android-x86-compiler-rt-13
177            - linux64-aarch64-compiler-rt-13
178            - linux64-x64-compiler-rt-13
179            - linux64-x86-compiler-rt-13
180            - macosx64-aarch64-compiler-rt-13
181            - macosx64-x64-compiler-rt-13
182            - wasm32-wasi-compiler-rt-13
183            - win32-compiler-rt-13
184            - win64-compiler-rt-13
185
186macosx64-clang-13-raw:
187    description: "Clang 13 toolchain build"
188    treeherder:
189        symbol: TM(clang-13-raw)
190    worker-type: b-linux-large
191    worker:
192        max-run-time: 3600
193    run:
194        script: build-clang.sh
195        arguments:
196            - 'build/build-clang/macosx64.json'
197            - 'build/build-clang/clang-13.json'
198            - 'build/build-clang/skip-3-stages.json'
199            - 'build/build-clang/4stages-pgo.json'
200        resources:
201            - 'build/build-clang/macosx64.json'
202            - 'build/build-clang/clang-13.json'
203            - 'build/build-clang/skip-3-stages.json'
204            - 'build/build-clang/4stages-pgo.json'
205        toolchain-artifact: public/build/clang.tar.zst
206    fetches:
207        fetch:
208            - clang-13
209        toolchain:
210            - linux64-cctools-port
211            - linux64-clang-13-stage1
212            - linux64-clang-13-profile
213            - macosx64-sdk-11.0
214            - macosx64-x64-compiler-rt-13
215
216macosx64-clang-13:
217    description: "Clang 13 toolchain repack with MacOS Compiler RT libs"
218    attributes:
219        local-toolchain: true
220    treeherder:
221        symbol: TM(clang-13)
222    worker-type: b-linux
223    worker:
224        max-run-time: 600
225    run-on-projects:
226        - trunk
227    run:
228        script: repack-clang.sh
229        toolchain-alias:
230            - macosx64-clang
231            - macosx64-clang-toolchain
232        toolchain-artifact: public/build/clang.tar.zst
233    fetches:
234        toolchain:
235            - linux64-cctools-port
236            - macosx64-clang-13-raw
237            - android-aarch64-compiler-rt-13
238            - android-arm-compiler-rt-13
239            - android-x64-compiler-rt-13
240            - android-x86-compiler-rt-13
241            - linux64-aarch64-compiler-rt-13
242            - linux64-x64-compiler-rt-13
243            - linux64-x86-compiler-rt-13
244            - macosx64-aarch64-compiler-rt-13
245            - macosx64-x64-compiler-rt-13
246            - wasm32-wasi-compiler-rt-13
247            - win32-compiler-rt-13
248            - win64-compiler-rt-13
249
250macosx64-aarch64-clang-13-raw:
251    description: "Clang 13 toolchain build"
252    treeherder:
253        symbol: TM(clang-13-aarch64-raw)
254    worker-type: b-linux-large
255    worker:
256        env:
257            OSX_ARCH: arm64
258        max-run-time: 3600
259    run:
260        script: build-clang.sh
261        arguments:
262            - 'build/build-clang/macosx64.json'
263            - 'build/build-clang/clang-13.json'
264            - 'build/build-clang/skip-3-stages.json'
265            - 'build/build-clang/4stages-pgo.json'
266        resources:
267            - 'build/build-clang/macosx64.json'
268            - 'build/build-clang/clang-13.json'
269            - 'build/build-clang/skip-3-stages.json'
270            - 'build/build-clang/4stages-pgo.json'
271        toolchain-artifact: public/build/clang.tar.zst
272    fetches:
273        fetch:
274            - clang-13
275        toolchain:
276            - linux64-cctools-port
277            - linux64-clang-13-stage1
278            - linux64-clang-13-profile
279            - macosx64-sdk-11.0
280            - macosx64-aarch64-compiler-rt-13
281
282macosx64-aarch64-clang-13:
283    description: "Clang 13 toolchain repack with MacOS Compiler RT libs"
284    attributes:
285        local-toolchain: true
286    treeherder:
287        symbol: TM(clang-13-aarch64)
288    worker-type: b-linux
289    worker:
290        max-run-time: 600
291    run-on-projects:
292        - trunk
293    run:
294        script: repack-clang.sh
295        toolchain-alias: macosx64-aarch64-clang
296        toolchain-artifact: public/build/clang.tar.zst
297    fetches:
298        toolchain:
299            - linux64-cctools-port
300            - macosx64-aarch64-clang-13-raw
301            - macosx64-aarch64-compiler-rt-13
302            - macosx64-x64-compiler-rt-13
303            - wasm32-wasi-compiler-rt-13
304
305win64-clang-13-raw:
306    description: "Clang-cl 13 toolchain build"
307    treeherder:
308        symbol: TW64(clang-13-raw)
309    worker-type: b-win2012
310    worker:
311        env:
312            TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/vs2017-15.9.manifest"
313        max-run-time: 9000
314    run:
315        script: build-clang.sh
316        arguments:
317            - 'build/build-clang/win64.json'
318            - 'build/build-clang/clang-13.json'
319            - 'build/build-clang/skip-stage-1-win64.json'
320            - 'build/build-clang/4stages-pgo.json'
321        resources:
322            - 'build/build-clang/win64.json'
323            - 'build/build-clang/clang-13.json'
324            - 'build/build-clang/skip-stage-1-win64.json'
325            - 'build/build-clang/4stages-pgo.json'
326            - 'taskcluster/scripts/misc/tooltool-download.sh'
327        toolchain-artifact: public/build/clang.tar.zst
328        tooltool-downloads: internal
329    fetches:
330        fetch:
331            - clang-13
332            - cmake
333            - ninja
334        toolchain:
335            - win64-clang-13-stage1
336            - win64-compiler-rt-13
337
338win64-clang-13:
339    description: "Clang-cl 13 toolchain build"
340    attributes:
341        local-toolchain: true
342    treeherder:
343        symbol: TW64(clang-13)
344    worker-type: b-linux
345    worker:
346        max-run-time: 600
347    run-on-projects:
348        - trunk
349    run:
350        script: repack-clang.sh
351        toolchain-alias: win64-clang
352        toolchain-artifact: public/build/clang.tar.zst
353    fetches:
354        toolchain:
355            - linux64-cctools-port
356            - win64-clang-13-raw
357            - android-aarch64-compiler-rt-13
358            - android-arm-compiler-rt-13
359            - android-x64-compiler-rt-13
360            - android-x86-compiler-rt-13
361            - linux64-aarch64-compiler-rt-13
362            - linux64-x64-compiler-rt-13
363            - linux64-x86-compiler-rt-13
364            - macosx64-aarch64-compiler-rt-13
365            - macosx64-x64-compiler-rt-13
366            - wasm32-wasi-compiler-rt-13
367            - win32-compiler-rt-13
368            - win64-compiler-rt-13
369
370win64-clang-13-stage1:
371    description: "Clang-cl 13 toolchain build stage 1"
372    treeherder:
373        symbol: TW64(clang-13-stage1)
374    worker-type: b-win2012
375    worker:
376        env:
377            TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/vs2017-15.9.manifest"
378    run:
379        script: build-clang.sh
380        arguments:
381            - 'build/build-clang/win64.json'
382            - 'build/build-clang/clang-13.json'
383            - 'build/build-clang/1stage.json'
384        resources:
385            - 'build/build-clang/win64.json'
386            - 'build/build-clang/clang-13.json'
387            - 'build/build-clang/1stage.json'
388            - 'taskcluster/scripts/misc/tooltool-download.sh'
389        toolchain-alias: win64-clang-toolchain
390        toolchain-artifact: public/build/clang.tar.zst
391        tooltool-downloads: internal
392    fetches:
393        fetch:
394            - clang-13
395            - cmake
396            - ninja
397
398linux64-clang-trunk-raw:
399    description: "Clang trunk toolchain build"
400    attributes:
401        cached_task: false
402    treeherder:
403        symbol: TL(clang-trunk-raw)
404    run:
405        using: toolchain-script
406        script: build-clang.sh
407        arguments:
408            - 'build/build-clang/linux64.json'
409            - 'build/build-clang/clang-trunk.json'
410            - 'build/build-clang/2stages.json'
411        resources:
412            - 'build/build-clang/linux64.json'
413            - 'build/build-clang/clang-trunk.json'
414            - 'build/build-clang/2stages.json'
415        toolchain-artifact: public/build/clang.tar.zst
416    run-on-projects: []
417    fetches:
418        fetch:
419            - clang-trunk
420        toolchain:
421            - linux64-toolchain-sysroot
422
423linux64-clang-trunk:
424    description: "Clang trunk toolchain build"
425    attributes:
426        cached_task: false
427    treeherder:
428        symbol: TL(clang-trunk)
429    worker-type: b-linux
430    worker:
431        max-run-time: 600
432    run:
433        script: repack-clang.sh
434        toolchain-artifact: public/build/clang.tar.zst
435    run-on-projects: []
436    fetches:
437        toolchain:
438            - linux64-clang-trunk-raw
439            - wasm32-wasi-compiler-rt
440