8
8
9
9
permissions : {}
10
10
jobs :
11
- docker_linux_tier1 :
12
- permissions :
13
- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
14
- contents : read # to fetch code (actions/checkout)
15
-
16
- name : Docker Linux Tier1
17
- runs-on : ubuntu-22.04
18
- strategy :
19
- fail-fast : true
20
- matrix :
21
- target : [
22
- i686-unknown-linux-gnu,
23
- x86_64-unknown-linux-gnu,
24
- ]
25
- steps :
26
- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
27
- with :
28
- github_token : " ${{ secrets.GITHUB_TOKEN }}"
29
- - uses : actions/checkout@v3
30
- - name : Setup Rust toolchain
31
- run : TARGET=${{ matrix.target }} sh ./ci/install-rust.sh
32
- - name : Execute run-docker.sh
33
- run : LIBC_CI=1 sh ./ci/run-docker.sh ${{ matrix.target }}
34
-
35
- macos :
36
- permissions :
37
- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
38
- contents : read # to fetch code (actions/checkout)
39
-
40
- name : macOS
41
- runs-on : macos-12
42
- strategy :
43
- fail-fast : true
44
- matrix :
45
- target : [
46
- x86_64-apple-darwin,
47
- ]
48
- steps :
49
- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
50
- with :
51
- github_token : " ${{ secrets.GITHUB_TOKEN }}"
52
- - uses : actions/checkout@v3
53
- - name : Setup Rust toolchain
54
- run : TARGET=${{ matrix.target }} sh ./ci/install-rust.sh
55
- - name : Execute run.sh
56
- run : LIBC_CI=1 sh ./ci/run.sh ${{ matrix.target }}
57
-
58
- windows :
59
- permissions :
60
- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
61
- contents : read # to fetch code (actions/checkout)
62
-
63
- name : Windows
64
- runs-on : windows-2022
65
- env :
66
- OS : windows
67
- strategy :
68
- fail-fast : true
69
- matrix :
70
- include :
71
- - target : x86_64-pc-windows-gnu
72
- env :
73
- ARCH_BITS : 64
74
- ARCH : x86_64
75
- - target : x86_64-pc-windows-msvc
76
- # Disabled because broken:
77
- # https://github.com/rust-lang/libc/issues/1592
78
- # - target: i686-pc-windows-gnu
79
- # env:
80
- # ARCH_BITS: 32
81
- # ARCH: i686
82
- - target : i686-pc-windows-msvc
83
- steps :
84
- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
85
- with :
86
- github_token : " ${{ secrets.GITHUB_TOKEN }}"
87
- - uses : actions/checkout@v3
88
- - name : Self-update rustup
89
- run : rustup self update
90
- shell : bash
91
- - name : Setup Rust toolchain
92
- run : TARGET=${{ matrix.target }} sh ./ci/install-rust.sh
93
- shell : bash
94
- - name : Execute run.sh
95
- run : LIBC_CI=1 sh ./ci/run.sh ${{ matrix.target }}
96
- shell : bash
97
-
98
- style_check :
99
- permissions :
100
- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
101
- contents : read # to fetch code (actions/checkout)
102
-
103
- name : Style check
104
- runs-on : ubuntu-22.04
105
- steps :
106
- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
107
- with :
108
- github_token : " ${{ secrets.GITHUB_TOKEN }}"
109
- - uses : actions/checkout@v3
110
- - name : Setup Rust toolchain
111
- run : sh ./ci/install-rust.sh
112
- - name : Check style
113
- run : sh ci/style.sh
114
-
115
11
docker_linux_tier2 :
116
12
permissions :
117
13
actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
118
14
contents : read # to fetch code (actions/checkout)
119
15
120
16
name : Docker Linux Tier2
121
- needs : [docker_linux_tier1, style_check]
122
17
runs-on : ubuntu-22.04
123
18
strategy :
124
19
fail-fast : true
125
20
max-parallel : 12
126
21
matrix :
127
22
target : [
128
- # FIXME: Mysterious failures in CI, see
129
- # https://github.com/rust-lang/libc/issues/2081
130
- # aarch64-linux-android,
131
- aarch64-unknown-linux-gnu,
132
- aarch64-unknown-linux-musl,
133
- arm-linux-androideabi,
134
- arm-unknown-linux-gnueabihf,
135
- arm-unknown-linux-musleabihf,
136
- asmjs-unknown-emscripten,
137
23
i686-linux-android,
138
- i686-unknown-linux-musl,
139
- mips-unknown-linux-gnu,
140
- mips-unknown-linux-musl,
141
- # FIXME: Somehow failed on CI
142
- # https://github.com/rust-lang/libc/runs/1659882216
143
- # mips64-unknown-linux-gnuabi64,
144
- # mips64el-unknown-linux-gnuabi64,
145
- mipsel-unknown-linux-musl,
146
- powerpc-unknown-linux-gnu,
147
- powerpc64-unknown-linux-gnu,
148
- powerpc64le-unknown-linux-gnu,
149
- s390x-unknown-linux-gnu,
150
- riscv64gc-unknown-linux-gnu,
151
- # FIXME: A recent nightly causes a linker failure:
152
- # https://github.com/rust-lang/rust/issues/76679
153
- # See this comment for more details:
154
- # https://github.com/rust-lang/libc/pull/2225#issuecomment-880696737
155
- # wasm32-wasi,
156
- sparc64-unknown-linux-gnu,
157
- wasm32-unknown-emscripten,
158
- x86_64-linux-android,
159
- x86_64-unknown-linux-gnux32,
160
- x86_64-unknown-linux-musl,
161
- # FIXME: It seems some items in `src/unix/mod.rs`
162
- # aren't defined on redox actually.
163
- # x86_64-unknown-redox,
164
24
]
165
25
steps :
166
26
- uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
@@ -172,195 +32,6 @@ jobs:
172
32
- name : Execute run-docker.sh
173
33
run : LIBC_CI=1 sh ./ci/run-docker.sh ${{ matrix.target }}
174
34
175
- # These targets are tier 3 or otherwise need to have CI build std via -Zbuild-std.
176
- # Because of this, only the nightly compiler can be used on these targets.
177
- docker_linux_build_std :
178
- permissions :
179
- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
180
- contents : read # to fetch code (actions/checkout)
181
-
182
- if : ${{ false }} # This is currently broken
183
- name : Docker Linux Build-Std Targets
184
- needs : [docker_linux_tier1, style_check]
185
- runs-on : ubuntu-22.04
186
- strategy :
187
- fail-fast : true
188
- max-parallel : 12
189
- matrix :
190
- target : [
191
- armv7-unknown-linux-uclibceabihf
192
- ]
193
- steps :
194
- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
195
- with :
196
- github_token : " ${{ secrets.GITHUB_TOKEN }}"
197
- - uses : actions/checkout@v3
198
- - name : Setup Rust toolchain
199
- run : TOOLCHAIN=nightly INSTALL_RUST_SRC=1 sh ./ci/install-rust.sh
200
- - name : Execute run-docker.sh
201
- run : LIBC_CI=1 TOOLCHAIN=nightly LIBC_CI_ZBUILD_STD=1 sh ./ci/run-docker.sh ${{ matrix.target }}
202
-
203
- # devkitpro's pacman needs to be connected from Docker.
204
- docker_switch :
205
- permissions :
206
- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
207
- contents : read # to fetch code (actions/checkout)
208
-
209
- name : Docker Switch
210
- needs : [docker_linux_tier1, style_check]
211
- runs-on : ubuntu-22.04
212
- steps :
213
- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
214
- with :
215
- github_token : " ${{ secrets.GITHUB_TOKEN }}"
216
- - uses : actions/checkout@v3
217
- - name : Setup Rust toolchain
218
- run : sh ./ci/install-rust.sh
219
- - name : Execute run-docker.sh
220
- run : LIBC_CI=1 sh ./ci/run-docker.sh switch
221
-
222
- build_channels_linux :
223
- permissions :
224
- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
225
- contents : read # to fetch code (actions/checkout)
226
-
227
- name : Build Channels Linux
228
- needs : docker_linux_tier2
229
- runs-on : ubuntu-22.04
230
- env :
231
- OS : linux
232
- strategy :
233
- fail-fast : true
234
- max-parallel : 5
235
- matrix :
236
- toolchain : [
237
- stable,
238
- beta,
239
- nightly,
240
- 1.13.0,
241
- 1.19.0,
242
- 1.24.0,
243
- 1.25.0,
244
- 1.30.0,
245
- ]
246
- steps :
247
- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
248
- with :
249
- github_token : " ${{ secrets.GITHUB_TOKEN }}"
250
- - uses : actions/checkout@v3
251
- - name : Setup Rust toolchain
252
- run : TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/install-rust.sh
253
- - name : Execute build.sh
254
- run : LIBC_CI=1 TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/build.sh
255
-
256
- build_channels_macos :
257
- permissions :
258
- contents : read # to fetch code (actions/checkout)
259
-
260
- name : Build Channels macOS
261
- needs : macos
262
- # FIXME: Use macOS 11 for now as CI failed with a linker error on macOS 12 image:
263
- # ld: in /.../x86_64-apple-darwin/lib/libstd-a4729905.rlib(rust.metadata.bin),
264
- # archive member 'rust.metadata.bin' with length 2958149 is not mach-o or llvm bitcode file '/.../x86_64-apple-darwin/lib/libstd-a4729905.rlib'
265
- # Possibly related: https://github.com/actions/runner-images/issues/6350
266
- runs-on : macos-11
267
- env :
268
- OS : macos
269
- strategy :
270
- fail-fast : true
271
- max-parallel : 4
272
- matrix :
273
- toolchain : [
274
- stable,
275
- beta,
276
- nightly,
277
- 1.13.0,
278
- 1.19.0,
279
- 1.24.0,
280
- 1.25.0,
281
- 1.30.0,
282
- ]
283
- steps :
284
- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
285
- with :
286
- github_token : " ${{ secrets.GITHUB_TOKEN }}"
287
- - uses : actions/checkout@v3
288
- - name : Setup Rust toolchain
289
- run : TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/install-rust.sh
290
- - name : Execute build.sh
291
- run : LIBC_CI=1 TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/build.sh
292
-
293
- build_channels_windows :
294
- permissions :
295
- contents : read # to fetch code (actions/checkout)
296
-
297
- name : Build Channels Windows
298
- runs-on : windows-2022
299
- env :
300
- OS : windows
301
- strategy :
302
- fail-fast : true
303
- matrix :
304
- toolchain : [
305
- 1.19.0,
306
- 1.24.0,
307
- 1.25.0,
308
- 1.30.0,
309
- stable,
310
- ]
311
- steps :
312
- - uses : actions/checkout@v3
313
- - name : Self-update rustup
314
- run : rustup self update
315
- shell : bash
316
- - name : Execute build.sh
317
- run : LIBC_CI=1 TOOLCHAIN=${{ matrix.toolchain }} WIN_TARGET=${{ matrix.target }} sh ./ci/build.sh
318
- shell : bash
319
-
320
- semver_linux :
321
- if : ${{ false }} # This is currently broken
322
- name : Semver Linux
323
- runs-on : ubuntu-22.04
324
- continue-on-error : true
325
- steps :
326
- - uses : actions/checkout@v3
327
- - name : Setup Rust toolchain
328
- # Should update the semverver revision in semver.sh if we touch nightly ver.
329
- run : TOOLCHAIN=nightly-2022-05-23 sh ./ci/install-rust.sh
330
- - name : Check breaking changes
331
- run : sh ci/semver.sh linux
332
-
333
- semver_macos :
334
- if : ${{ false }} # This is currently broken
335
- name : Semver macOS
336
- runs-on : macos-12
337
- continue-on-error : true
338
- steps :
339
- - uses : actions/checkout@v3
340
- - name : Setup Rust toolchain
341
- # Pin nightly version to make semverver compilable.
342
- run : TOOLCHAIN=nightly-2022-05-23 sh ./ci/install-rust.sh
343
- - name : Check breaking changes
344
- run : sh ci/semver.sh macos
345
-
346
- docs :
347
- permissions :
348
- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
349
- contents : read # to fetch code (actions/checkout)
350
-
351
- name : Generate documentation
352
- runs-on : ubuntu-22.04
353
- needs : docker_linux_tier2
354
- steps :
355
- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
356
- with :
357
- github_token : " ${{ secrets.GITHUB_TOKEN }}"
358
- - uses : actions/checkout@v3
359
- - name : Setup Rust toolchain
360
- run : sh ./ci/install-rust.sh
361
- - name : Generate documentation
362
- run : LIBC_CI=1 sh ci/dox.sh
363
-
364
35
# These jobs doesn't actually test anything, but they're only used to tell
365
36
# bors the build completed, as there is no practical way to detect when a
366
37
# workflow is successful listening to webhooks only.
@@ -372,17 +43,7 @@ jobs:
372
43
if : github.event.pusher.name == 'bors' && success()
373
44
runs-on : ubuntu-22.04
374
45
needs : [
375
- docker_linux_tier1,
376
46
docker_linux_tier2,
377
- # docker_linux_build_std,
378
- macos,
379
- windows,
380
- style_check,
381
- docker_switch,
382
- build_channels_linux,
383
- build_channels_macos,
384
- build_channels_windows,
385
- docs,
386
47
]
387
48
388
49
steps :
@@ -394,17 +55,7 @@ jobs:
394
55
if : github.event.pusher.name == 'bors' && (failure() || cancelled())
395
56
runs-on : ubuntu-22.04
396
57
needs : [
397
- docker_linux_tier1,
398
58
docker_linux_tier2,
399
- # docker_linux_build_std,
400
- macos,
401
- windows,
402
- style_check,
403
- docker_switch,
404
- build_channels_linux,
405
- build_channels_macos,
406
- build_channels_windows,
407
- docs,
408
59
]
409
60
410
61
steps :
0 commit comments