1010
1111 strategy :
1212 matrix :
13- arch : [arm, arm64, ppc64le, x86_64]
13+ arch : [arm, arm64, ppc64le, riscv64, x86_64]
1414 toolchain : [gcc, clang, llvm]
1515 config : [debug, release]
1616 rustc : [2021-02-20]
@@ -119,6 +119,11 @@ jobs:
119119 echo 'RUSTC_SYSROOT=--sysroot=$HOME/sysroot' >> $GITHUB_ENV
120120 echo "MAKE_SYSROOT=KRUSTCFLAGS=--sysroot=$HOME/sysroot" >> $GITHUB_ENV
121121
122+ # Setup: custom pre-built binaries folder
123+ - run : |
124+ mkdir bin
125+ echo $(pwd)/bin >> $GITHUB_PATH
126+
122127 # Setup: LLVM
123128 - run : curl https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
124129 - run : sudo add-apt-repository 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main'
@@ -151,7 +156,9 @@ jobs:
151156 - if : matrix.arch == 'ppc64le'
152157 run : sudo apt-get install -y qemu-system-ppc
153158 - if : matrix.arch == 'riscv64'
154- run : sudo apt-get install -y qemu-system-misc
159+ run : |
160+ curl -o bin/qemu-system-riscv64 https://raw.githubusercontent.com/Rust-for-Linux/ci-bin/master/qemu-6.0.0/bin/qemu-system-riscv64
161+ chmod u+x bin/qemu-system-riscv64
155162
156163 # Setup: rustc
157164 - if : matrix.install == 'rustup'
@@ -184,7 +191,9 @@ jobs:
184191 - run : rustup component add clippy
185192
186193 # Setup: bindgen
187- - run : cargo install --version 0.56.0 bindgen
194+ - run : |
195+ curl -o bin/bindgen https://raw.githubusercontent.com/Rust-for-Linux/ci-bin/master/bindgen-0.56.0/bin/bindgen
196+ chmod u+x bin/bindgen
188197
189198 # Setup: busybox
190199 - run : git clone --depth 1 -b 1_30_1 https://github.com/mirror/busybox
@@ -246,6 +255,8 @@ jobs:
246255 # Check
247256 - run : |
248257 grep '] rust_minimal: Rust minimal sample (init)$' qemu-stdout.log
258+ grep '] rust_minimal: Am I built-in? false$' qemu-stdout.log
259+ grep '] rust_minimal: My message is on the heap!$' qemu-stdout.log
249260 grep '] rust_minimal: Rust minimal sample (exit)$' qemu-stdout.log
250261
251262 - run : |
@@ -272,36 +283,47 @@ jobs:
272283 grep '] rust_print: Rust printing macros sample (exit)$' qemu-stdout.log
273284
274285 - run : |
275- grep '] rust_module_parameters: Rust module parameters sample (init)$' qemu-stdout.log
276-
277- grep '] rust_module_parameters_builtin_default: my_bool: true$' qemu-stdout.log
278- grep '] rust_module_parameters_builtin_default: my_i32: 42$' qemu-stdout.log
279- grep '] rust_module_parameters_builtin_default: my_str: default str val$' qemu-stdout.log
280- grep '] rust_module_parameters_builtin_default: my_usize: 42$' qemu-stdout.log
281- grep '] rust_module_parameters_builtin_default: my_array: \[0, 1]$' qemu-stdout.log
282-
283- grep '] rust_module_parameters_builtin_custom: my_bool: false$' qemu-stdout.log
284- grep '] rust_module_parameters_builtin_custom: my_i32: 345543$' qemu-stdout.log
285- grep '] rust_module_parameters_builtin_custom: my_str: 🦀mod$' qemu-stdout.log
286- grep '] rust_module_parameters_builtin_custom: my_usize: 84$' qemu-stdout.log
287- grep '] rust_module_parameters_builtin_custom: my_array: \[1, 2, 3]$' qemu-stdout.log
288-
289- grep '] rust_module_parameters_loadable_default: my_bool: true$' qemu-stdout.log
290- grep '] rust_module_parameters_loadable_default: my_i32: 42$' qemu-stdout.log
291- grep '] rust_module_parameters_loadable_default: my_str: default str val$' qemu-stdout.log
292- grep '] rust_module_parameters_loadable_default: my_usize: 42$' qemu-stdout.log
293- grep '] rust_module_parameters_loadable_default: my_array: \[0, 1]$' qemu-stdout.log
294-
295- grep '] rust_module_parameters_loadable_custom: my_bool: false$' qemu-stdout.log
296- grep '] rust_module_parameters_loadable_custom: my_i32: 345543$' qemu-stdout.log
297- grep '] rust_module_parameters_loadable_custom: my_str: 🦀mod$' qemu-stdout.log
298- grep '] rust_module_parameters_loadable_custom: my_usize: 84$' qemu-stdout.log
299- grep '] rust_module_parameters_loadable_custom: my_array: \[1, 2, 3]$' qemu-stdout.log
300-
301- grep '] rust_module_parameters: Rust module parameters sample (exit)$' qemu-stdout.log
286+ grep '] rust_module_parameters_builtin_default: Rust module parameters sample (init)' qemu-stdout.log
287+ grep '] rust_module_parameters_builtin_default: my_bool: true$' qemu-stdout.log
288+ grep '] rust_module_parameters_builtin_default: my_i32: 42$' qemu-stdout.log
289+ grep '] rust_module_parameters_builtin_default: my_str: default str val$' qemu-stdout.log
290+ grep '] rust_module_parameters_builtin_default: my_usize: 42$' qemu-stdout.log
291+ grep '] rust_module_parameters_builtin_default: my_array: \[0, 1]$' qemu-stdout.log
292+
293+ grep '] rust_module_parameters_builtin_custom: Rust module parameters sample (init)$' qemu-stdout.log
294+ grep '] rust_module_parameters_builtin_custom: my_bool: false$' qemu-stdout.log
295+ grep '] rust_module_parameters_builtin_custom: my_i32: 345543$' qemu-stdout.log
296+ grep '] rust_module_parameters_builtin_custom: my_str: 🦀mod$' qemu-stdout.log
297+ grep '] rust_module_parameters_builtin_custom: my_usize: 84$' qemu-stdout.log
298+ grep '] rust_module_parameters_builtin_custom: my_array: \[1, 2, 3]$' qemu-stdout.log
299+
300+ grep '] rust_module_parameters_loadable_default: Rust module parameters sample (init)$' qemu-stdout.log
301+ grep '] rust_module_parameters_loadable_default: my_bool: true$' qemu-stdout.log
302+ grep '] rust_module_parameters_loadable_default: my_i32: 42$' qemu-stdout.log
303+ grep '] rust_module_parameters_loadable_default: my_str: default str val$' qemu-stdout.log
304+ grep '] rust_module_parameters_loadable_default: my_usize: 42$' qemu-stdout.log
305+ grep '] rust_module_parameters_loadable_default: my_array: \[0, 1]$' qemu-stdout.log
306+ grep '] rust_module_parameters_loadable_default: Rust module parameters sample (exit)$' qemu-stdout.log
307+
308+ grep '] rust_module_parameters_loadable_custom: Rust module parameters sample (init)$' qemu-stdout.log
309+ grep '] rust_module_parameters_loadable_custom: my_bool: false$' qemu-stdout.log
310+ grep '] rust_module_parameters_loadable_custom: my_i32: 345543$' qemu-stdout.log
311+ grep '] rust_module_parameters_loadable_custom: my_str: 🦀mod$' qemu-stdout.log
312+ grep '] rust_module_parameters_loadable_custom: my_usize: 84$' qemu-stdout.log
313+ grep '] rust_module_parameters_loadable_custom: my_array: \[1, 2, 3]$' qemu-stdout.log
314+ grep '] rust_module_parameters_loadable_custom: Rust module parameters sample (exit)$' qemu-stdout.log
315+
316+ grep '] rust_module_parameters: Rust module parameters sample (init)$' qemu-stdout.log
317+ grep '] rust_module_parameters: my_bool: true$' qemu-stdout.log
318+ grep '] rust_module_parameters: my_i32: 42$' qemu-stdout.log
319+ grep '] rust_module_parameters: my_str: default str val$' qemu-stdout.log
320+ grep '] rust_module_parameters: my_usize: 42$' qemu-stdout.log
321+ grep '] rust_module_parameters: my_array: \[0, 1]$' qemu-stdout.log
322+ grep '] rust_module_parameters: Rust module parameters sample (exit)$' qemu-stdout.log
302323
303324 - run : |
304325 grep '] rust_sync: Rust synchronisation primitives sample (init)$' qemu-stdout.log
326+ grep '] rust_sync: Value: 10$' qemu-stdout.log
305327 grep '] rust_sync: Rust synchronisation primitives sample (exit)$' qemu-stdout.log
306328
307329 - run : |
@@ -314,6 +336,7 @@ jobs:
314336
315337 - run : |
316338 grep '] rust_stack_probing: Rust stack probing sample (init)$' qemu-stdout.log
339+ grep '] rust_stack_probing: Large array has length: 514$' qemu-stdout.log
317340 grep '] rust_stack_probing: Rust stack probing sample (exit)$' qemu-stdout.log
318341
319342 - run : |
0 commit comments