diff --git a/.gitlab/ci/pipelines/before_merging.yml b/.gitlab/ci/pipelines/before_merging.yml index a3a9f2b26ac0196468b25766f1ce5ddee9c6b46f..6cd25714de66c36e515e4bd5b17d28f0fad26bbe 100644 --- a/.gitlab/ci/pipelines/before_merging.yml +++ b/.gitlab/ci/pipelines/before_merging.yml @@ -2632,6 +2632,7 @@ test_kernels: - kernels.mk - sdk/rust/**/* - src/kernel_*/**/* + - src/riscv/**/* when: on_success needs: - oc.docker:rust-toolchain:amd64 diff --git a/.gitlab/ci/pipelines/merge_train.yml b/.gitlab/ci/pipelines/merge_train.yml index 9a7bc63514721238c07846e87a2c3463b418dc3c..6dceeaa3b0c2dd12c6951bf5242bcbf64887a271 100644 --- a/.gitlab/ci/pipelines/merge_train.yml +++ b/.gitlab/ci/pipelines/merge_train.yml @@ -2631,6 +2631,7 @@ test_kernels: - kernels.mk - sdk/rust/**/* - src/kernel_*/**/* + - src/riscv/**/* when: on_success needs: - oc.docker:rust-toolchain:amd64 diff --git a/ci/bin/common.ml b/ci/bin/common.ml index fd0d783612915523ae33c33ae97ac70e7f2149fc..95d13c4ff8ed03d6afa5004fb0f069fbd0499604 100644 --- a/ci/bin/common.ml +++ b/ci/bin/common.ml @@ -520,7 +520,8 @@ let changeset_test_kernels = Changeset.( changeset_base @ changeset_images (* Run if the [rust-toolchain] image is updated *) - @ make ["kernels.mk"; "src/kernel_*/**/*"; "sdk/rust/**/*"]) + @ make + ["kernels.mk"; "src/kernel_*/**/*"; "src/riscv/**/*"; "sdk/rust/**/*"]) let changeset_test_etherlink_kernel = Changeset.( diff --git a/src/riscv/scripts/install-rust-std-hermit.sh b/src/riscv/scripts/install-rust-std-hermit.sh new file mode 100755 index 0000000000000000000000000000000000000000..4d85ceb6c423ebe6ad554b8b39abd87bb8669e9c --- /dev/null +++ b/src/riscv/scripts/install-rust-std-hermit.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash + +# TODO RV-622: Remove Hermit from the code base +# Remove this script once the use of Hermit has been removed from the SDK + +# Ensure the toolchain is installed. +# The second command triggers installation for Rustup 1.28+. +rustup show active-toolchain || rustup toolchain install + +version="$(rustc --version | awk '{print $2}')" +url="https://github.com/hermit-os/rust-std-hermit/releases/download/${version}/rust-std-${version}-riscv64gc-unknown-hermit.tar.gz" + +td="$(mktemp -d)" +mkdir -p "$td" + +curl -L "$url" | tar xz -C "$td" --strip-components=1 +"$td/install.sh" + +rm -rf "$td"