@@ -4,10 +4,11 @@ on: [push, pull_request]
4
4
5
5
jobs :
6
6
clippy :
7
- runs-on : ubuntu-latest
7
+ runs-on : ${{ matrix.os }}
8
8
strategy :
9
9
fail-fast : false
10
10
matrix :
11
+ os : [ubuntu-latest, macos-latest]
11
12
arch : [x86_64, riscv64, aarch64, loongarch64]
12
13
rust-toolchain : [nightly, nightly-2025-05-20]
13
14
env :
@@ -37,12 +38,12 @@ jobs:
37
38
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
38
39
run : make clippy ARCH=${{ matrix.arch }}
39
40
40
- build :
41
+ build-rust-apps :
41
42
runs-on : ${{ matrix.os }}
42
43
strategy :
43
44
fail-fast : false
44
45
matrix :
45
- os : [ubuntu-latest]
46
+ os : [ubuntu-latest, macos-latest ]
46
47
arch : [x86_64, riscv64, aarch64, loongarch64]
47
48
rust-toolchain : [nightly, nightly-2025-05-20]
48
49
env :
72
73
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
73
74
run : make ARCH=${{ matrix.arch }} A=examples/shell
74
75
76
+ build-c-apps :
77
+ runs-on : ubuntu-latest
78
+ strategy :
79
+ fail-fast : false
80
+ matrix :
81
+ arch : [x86_64, riscv64, aarch64, loongarch64]
82
+ rust-toolchain : [nightly, nightly-2025-05-20]
83
+ env :
84
+ RUSTUP_TOOLCHAIN : ${{ matrix.rust-toolchain }}
85
+ steps :
86
+ - uses : actions/checkout@v4
87
+ - uses : dtolnay/rust-toolchain@stable
88
+ with :
89
+ toolchain : ${{ matrix.rust-toolchain }}
90
+ components : rust-src, llvm-tools
91
+ targets : x86_64-unknown-none, riscv64gc-unknown-none-elf, aarch64-unknown-none-softfloat, loongarch64-unknown-none-softfloat
92
+ - uses : Swatinem/rust-cache@v2
93
+ with :
94
+ shared-key : cargo-bin-cache
95
+ cache-targets : false
96
+ - run : cargo install cargo-binutils
75
97
- uses : arceos-org/setup-musl@v1
76
98
with :
77
99
arch : ${{ matrix.arch }}
@@ -85,12 +107,12 @@ jobs:
85
107
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
86
108
run : make ARCH=${{ matrix.arch }} A=examples/httpserver-c
87
109
88
- build-for-other-platforms :
110
+ build-rust-apps- for-other-platforms :
89
111
runs-on : ${{ matrix.os }}
90
112
strategy :
91
113
fail-fast : false
92
114
matrix :
93
- os : [ubuntu-latest]
115
+ os : [ubuntu-latest, macos-latest ]
94
116
rust-toolchain : [nightly, nightly-2025-05-20]
95
117
env :
96
118
RUSTUP_TOOLCHAIN : ${{ matrix.rust-toolchain }}
@@ -137,6 +159,26 @@ jobs:
137
159
continue-on-error : ${{ matrix.rust-toolchain == 'nightly' }}
138
160
run : make PLATFORM=aarch64-phytium-pi A=examples/helloworld SMP=4
139
161
162
+ build-c-apps-for-other-platforms :
163
+ runs-on : ubuntu-latest
164
+ strategy :
165
+ fail-fast : false
166
+ matrix :
167
+ rust-toolchain : [nightly, nightly-2025-05-20]
168
+ env :
169
+ RUSTUP_TOOLCHAIN : ${{ matrix.rust-toolchain }}
170
+ steps :
171
+ - uses : actions/checkout@v4
172
+ - uses : dtolnay/rust-toolchain@stable
173
+ with :
174
+ toolchain : ${{ matrix.rust-toolchain }}
175
+ components : rust-src, llvm-tools
176
+ targets : x86_64-unknown-none
177
+ - uses : Swatinem/rust-cache@v2
178
+ with :
179
+ shared-key : cargo-bin-cache
180
+ cache-targets : false
181
+ - run : cargo install cargo-binutils
140
182
- uses : arceos-org/setup-musl@v1
141
183
with :
142
184
arch : x86_64
0 commit comments