19
19
toolchain : ${{ matrix.rust-toolchain }}
20
20
components : rust-src, clippy, rustfmt
21
21
targets : x86_64-unknown-none, riscv64gc-unknown-none-elf, aarch64-unknown-none-softfloat, loongarch64-unknown-none-softfloat
22
- - uses : Swatinem/rust-cache@v2
23
- with :
24
- shared-key : cargo-bin-cache
25
- cache-targets : false
26
22
- name : Check rust version
27
23
run : rustc --version --verbose
28
24
- name : Check code format
55
51
targets : x86_64-unknown-none, riscv64gc-unknown-none-elf, aarch64-unknown-none-softfloat, loongarch64-unknown-none-softfloat
56
52
- uses : Swatinem/rust-cache@v2
57
53
with :
58
- shared-key : cargo-bin-cache
54
+ shared-key : cargo-bin-cache-${{ matrix.rust-toolchain }}
59
55
cache-targets : false
60
56
- name : Build helloworld
61
57
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
@@ -100,10 +96,10 @@ jobs:
100
96
targets : x86_64-unknown-none, riscv64gc-unknown-none-elf, aarch64-unknown-none-softfloat, loongarch64-unknown-none-softfloat
101
97
- uses : Swatinem/rust-cache@v2
102
98
with :
103
- shared-key : cargo-bin-cache
99
+ shared-key : cargo-bin-cache-${{ matrix.rust-toolchain }}
104
100
cache-targets : false
105
101
106
- # Test various config files
102
+ # Test custom config file
107
103
- name : Build helloworld for x86_64-pc-oslab
108
104
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
109
105
run : make PLAT_CONFIG=$(pwd)/configs/custom/x86_64-pc-oslab.toml A=examples/helloworld
@@ -140,27 +136,23 @@ jobs:
140
136
run : |
141
137
make MYPLAT=axplat-aarch64-bsta1000b defconfig
142
138
make MYPLAT=axplat-aarch64-bsta1000b A=examples/helloworld-myplat APP_FEATURES=aarch64-bsta1000b
143
-
144
139
- name : Build helloworld-myplat for aarch64-phytium-pi
145
140
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
146
141
run : |
147
142
make MYPLAT=axplat-aarch64-phytium-pi defconfig
148
143
make MYPLAT=axplat-aarch64-phytium-pi A=examples/helloworld-myplat APP_FEATURES=aarch64-phytium-pi
149
-
150
144
- name : Build helloworld-myplat for loongarch64-qemu-virt
151
145
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
152
146
run : |
153
147
make ARCH=loongarch64 defconfig
154
148
make ARCH=loongarch64 A=examples/helloworld-myplat SMP=4 APP_FEATURES=loongarch64-qemu-virt
155
149
make MYPLAT=axplat-loongarch64-qemu-virt A=examples/helloworld-myplat SMP=4 APP_FEATURES=loongarch64-qemu-virt
156
-
157
150
- name : Build helloworld-myplat for riscv64-qemu-virt
158
151
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
159
152
run : |
160
153
make ARCH=riscv64 defconfig
161
154
make ARCH=riscv64 A=examples/helloworld-myplat SMP=4 APP_FEATURES=riscv64-qemu-virt
162
155
make MYPLAT=axplat-riscv64-qemu-virt A=examples/helloworld-myplat SMP=4 APP_FEATURES=riscv64-qemu-virt
163
-
164
156
165
157
# Test platform `aarch64-raspi4` for various apps
166
158
- name : Setup aarch64-raspi4
@@ -210,7 +202,7 @@ jobs:
210
202
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
211
203
run : make MYPLAT=axplat-aarch64-phytium-pi A=examples/shell FEATURES=page-alloc-4g,driver-ramdisk BUS=mmio
212
204
213
- # Test various config files for C apps
205
+ # Test custom config file for C apps
214
206
- uses : arceos-org/setup-musl@v1
215
207
with :
216
208
arch : x86_64
@@ -233,22 +225,23 @@ jobs:
233
225
fail-fast : false
234
226
matrix :
235
227
rust-toolchain : [nightly, nightly-2025-05-20]
228
+ env :
229
+ RUSTUP_TOOLCHAIN : ${{ matrix.rust-toolchain }}
236
230
steps :
237
231
- uses : actions/checkout@v4
238
232
- uses : dtolnay/rust-toolchain@stable
239
233
with :
240
234
toolchain : ${{ matrix.rust-toolchain }}
241
- components : rust-src, clippy
235
+ components : rust-src, clippy, llvm-tools
242
236
targets : x86_64-unknown-none
243
237
- uses : Swatinem/rust-cache@v2
244
238
with :
245
- shared-key : cargo-bin-cache
239
+ shared-key : cargo-bin-cache-${{ matrix.rust-toolchain }}
246
240
cache-targets : false
247
241
- name : Clippy for the default target
248
242
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
249
243
run : make clippy
250
244
251
- - run : cargo install cargo-binutils
252
245
- name : Build helloworld
253
246
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
254
247
run : make A=examples/helloworld
0 commit comments