88
99permissions : {}
1010jobs :
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@HEAD
27- with :
28- github_token : " ${{ secrets.GITHUB_TOKEN }}"
29- - uses : actions/checkout@v4
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@HEAD
50- with :
51- github_token : " ${{ secrets.GITHUB_TOKEN }}"
52- - uses : actions/checkout@v4
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@HEAD
85- with :
86- github_token : " ${{ secrets.GITHUB_TOKEN }}"
87- - uses : actions/checkout@v4
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@HEAD
107- with :
108- github_token : " ${{ secrets.GITHUB_TOKEN }}"
109- - uses : actions/checkout@v4
110- - name : Setup Rust toolchain
111- run : sh ./ci/install-rust.sh
112- - name : Check style
113- run : sh ci/style.sh
114-
11511 docker_linux_tier2 :
11612 permissions :
11713 actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
11814 contents : read # to fetch code (actions/checkout)
11915
12016 name : Docker Linux Tier2
121- needs : [docker_linux_tier1, style_check]
12217 runs-on : ubuntu-22.04
12318 strategy :
12419 fail-fast : true
12520 max-parallel : 12
12621 matrix :
12722 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,
13323 arm-linux-androideabi,
134- arm-unknown-linux-gnueabihf,
135- arm-unknown-linux-musleabihf,
136- asmjs-unknown-emscripten,
13724 i686-linux-android,
138- i686-unknown-linux-musl,
139- powerpc-unknown-linux-gnu,
140- powerpc64-unknown-linux-gnu,
141- powerpc64le-unknown-linux-gnu,
142- s390x-unknown-linux-gnu,
143- riscv64gc-unknown-linux-gnu,
144- # FIXME: A recent nightly causes a linker failure:
145- # https://github.com/rust-lang/rust/issues/76679
146- # See this comment for more details:
147- # https://github.com/rust-lang/libc/pull/2225#issuecomment-880696737
148- # wasm32-wasi,
149- sparc64-unknown-linux-gnu,
150- wasm32-unknown-emscripten,
15125 x86_64-linux-android,
152- # FIXME: Exec format error (os error 8)
153- # x86_64-unknown-linux-gnux32,
154- x86_64-unknown-linux-musl,
155- # FIXME: It seems some items in `src/unix/mod.rs`
156- # aren't defined on redox actually.
157- # x86_64-unknown-redox,
15826 ]
15927 steps :
16028 - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@HEAD
@@ -166,168 +34,6 @@ jobs:
16634 - name : Execute run-docker.sh
16735 run : LIBC_CI=1 sh ./ci/run-docker.sh ${{ matrix.target }}
16836
169- # These targets are tier 3 or otherwise need to have CI build std via -Zbuild-std.
170- # Because of this, only the nightly compiler can be used on these targets.
171- docker_linux_build_std :
172- permissions :
173- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
174- contents : read # to fetch code (actions/checkout)
175-
176- if : ${{ false }} # This is currently broken
177- name : Docker Linux Build-Std Targets
178- needs : [docker_linux_tier1, style_check]
179- runs-on : ubuntu-22.04
180- strategy :
181- fail-fast : true
182- max-parallel : 12
183- matrix :
184- target : [
185- armv7-unknown-linux-uclibceabihf
186- ]
187- steps :
188- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@HEAD
189- with :
190- github_token : " ${{ secrets.GITHUB_TOKEN }}"
191- - uses : actions/checkout@v4
192- - name : Setup Rust toolchain
193- run : TOOLCHAIN=nightly INSTALL_RUST_SRC=1 sh ./ci/install-rust.sh
194- - name : Execute run-docker.sh
195- run : LIBC_CI=1 TOOLCHAIN=nightly LIBC_CI_ZBUILD_STD=1 sh ./ci/run-docker.sh ${{ matrix.target }}
196-
197- # devkitpro's pacman needs to be connected from Docker.
198- docker_switch :
199- permissions :
200- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
201- contents : read # to fetch code (actions/checkout)
202-
203- name : Docker Switch
204- needs : [docker_linux_tier1, style_check]
205- runs-on : ubuntu-22.04
206- steps :
207- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@HEAD
208- with :
209- github_token : " ${{ secrets.GITHUB_TOKEN }}"
210- - uses : actions/checkout@v4
211- - name : Setup Rust toolchain
212- run : sh ./ci/install-rust.sh
213- - name : Execute run-docker.sh
214- run : LIBC_CI=1 sh ./ci/run-docker.sh switch
215-
216- build_channels_linux :
217- permissions :
218- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
219- contents : read # to fetch code (actions/checkout)
220-
221- name : Build Channels Linux
222- needs : docker_linux_tier2
223- runs-on : ubuntu-22.04
224- env :
225- OS : linux
226- strategy :
227- fail-fast : true
228- max-parallel : 5
229- matrix :
230- toolchain : [
231- stable,
232- beta,
233- nightly,
234- # FIXME: Disabled due to:
235- # error: failed to parse registry's information for: serde
236- # 1.13.0,
237- 1.19.0,
238- 1.24.0,
239- 1.25.0,
240- 1.30.0,
241- ]
242- steps :
243- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@HEAD
244- with :
245- github_token : " ${{ secrets.GITHUB_TOKEN }}"
246- - uses : actions/checkout@v4
247- - name : Setup Rust toolchain
248- run : TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/install-rust.sh
249- - name : Execute build.sh
250- run : LIBC_CI=1 TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/build.sh
251-
252- build_channels_macos :
253- permissions :
254- contents : read # to fetch code (actions/checkout)
255-
256- name : Build Channels macOS
257- needs : macos
258- env :
259- OS : macos
260- strategy :
261- fail-fast : true
262- max-parallel : 4
263- matrix :
264- target :
265- - { toolchain: stable, os: macos-12 }
266- - { toolchain: beta, os: macos-12 }
267- - { toolchain: nightly, os: macos-12 }
268- # Use macOS 11 for older toolchains as newer Xcode donesn't work well.
269- # FIXME: Disabled due to:
270- # error: failed to parse registry's information for: serde
271- # - { toolchain: 1.13.0, os: macos-11 }
272- - { toolchain: 1.19.0, os: macos-11 }
273- - { toolchain: 1.24.0, os: macos-11 }
274- - { toolchain: 1.25.0, os: macos-11 }
275- - { toolchain: 1.30.0, os: macos-11 }
276- runs-on : ${{ matrix.target.os }}
277- steps :
278- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@HEAD
279- with :
280- github_token : " ${{ secrets.GITHUB_TOKEN }}"
281- - uses : actions/checkout@v4
282- - name : Setup Rust toolchain
283- run : TOOLCHAIN=${{ matrix.target.toolchain }} sh ./ci/install-rust.sh
284- - name : Execute build.sh
285- run : LIBC_CI=1 TOOLCHAIN=${{ matrix.target.toolchain }} sh ./ci/build.sh
286-
287- build_channels_windows :
288- permissions :
289- contents : read # to fetch code (actions/checkout)
290-
291- name : Build Channels Windows
292- runs-on : windows-2022
293- env :
294- OS : windows
295- strategy :
296- fail-fast : true
297- matrix :
298- toolchain : [
299- 1.19.0,
300- 1.24.0,
301- 1.25.0,
302- 1.30.0,
303- stable,
304- ]
305- steps :
306- - uses : actions/checkout@v4
307- - name : Self-update rustup
308- run : rustup self update
309- shell : bash
310- - name : Execute build.sh
311- run : LIBC_CI=1 TOOLCHAIN=${{ matrix.toolchain }} sh ./ci/build.sh
312- shell : bash
313-
314- check_cfg :
315- permissions :
316- actions : write # to cancel workflows (rust-lang/simpleinfra/github-actions/cancel-outdated-builds)
317- contents : read # to fetch code (actions/checkout)
318-
319- name : " Check #[cfg]s"
320- runs-on : ubuntu-22.04
321- steps :
322- - uses : rust-lang/simpleinfra/github-actions/cancel-outdated-builds@HEAD
323- with :
324- github_token : " ${{ secrets.GITHUB_TOKEN }}"
325- - uses : actions/checkout@v4
326- - name : Setup Rust toolchain
327- run : TOOLCHAIN=nightly sh ./ci/install-rust.sh
328- - name : Build with check-cfg
329- run : LIBC_CI=1 LIBC_CHECK_CFG=1 cargo build -Z unstable-options -Z check-cfg
330-
33137 # These jobs doesn't actually test anything, but they're only used to tell
33238 # bors the build completed, as there is no practical way to detect when a
33339 # workflow is successful listening to webhooks only.
@@ -339,16 +45,7 @@ jobs:
33945 if : github.event.pusher.name == 'bors' && success()
34046 runs-on : ubuntu-22.04
34147 needs : [
342- docker_linux_tier1,
34348 docker_linux_tier2,
344- # docker_linux_build_std,
345- macos,
346- windows,
347- style_check,
348- docker_switch,
349- build_channels_linux,
350- build_channels_macos,
351- build_channels_windows,
35249 ]
35350
35451 steps :
@@ -360,16 +57,7 @@ jobs:
36057 if : github.event.pusher.name == 'bors' && (failure() || cancelled())
36158 runs-on : ubuntu-22.04
36259 needs : [
363- docker_linux_tier1,
36460 docker_linux_tier2,
365- # docker_linux_build_std,
366- macos,
367- windows,
368- style_check,
369- docker_switch,
370- build_channels_linux,
371- build_channels_macos,
372- build_channels_windows,
37361 ]
37462
37563 steps :
0 commit comments