From 6c5b9a1ab4f86c5bf125b24daea820dc199d4db0 Mon Sep 17 00:00:00 2001 From: Ivan Velickovic Date: Wed, 5 Nov 2025 11:52:44 +1100 Subject: [PATCH 1/2] tool: deal with breaking Rust change Unfortunately the capDL initialiser has to make use of unstable Rust features which are able to have breaking changes at any time. The custom Rust target JSON files had a breaking change in commit 0e28b4201ac8f12cfafe5383f442c7b00f8bdcc6 of the Rust compiler. Instead of doing: "target-pointer-width": "64" we now have to do: "target-pointer-width": 64 This breaking change means that people using 1.90.0 or earlier of the Rust compiler cannot compile the Microkit SDK from source and so we have to pin the minimum Rust version of the to 1.91.0 which is not particularly ideal. Signed-off-by: Ivan Velickovic --- flake.lock | 6 +++--- initialiser/support/targets/aarch64-sel4-minimal.json | 2 +- initialiser/support/targets/riscv64imac-sel4-minimal.json | 2 +- initialiser/support/targets/x86_64-sel4-minimal.json | 2 +- tool/microkit/Cargo.toml | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/flake.lock b/flake.lock index bc19ab9f2..997a03c7d 100644 --- a/flake.lock +++ b/flake.lock @@ -45,11 +45,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1753671061, - "narHash": "sha256-IU4eBWfe9h2QejJYST+EAlhg8a1H6mh9gbcmWgZ2/mQ=", + "lastModified": 1762223900, + "narHash": "sha256-caxpESVH71mdrdihYvQZ9rTZPZqW0GyEG9un7MgpyRM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "40065d17ee4dbec3ded8ca61236132aede843fab", + "rev": "cfe1598d69a42a5edb204770e71b8df77efef2c3", "type": "github" }, "original": { diff --git a/initialiser/support/targets/aarch64-sel4-minimal.json b/initialiser/support/targets/aarch64-sel4-minimal.json index 46fc21aa8..96c14fa07 100644 --- a/initialiser/support/targets/aarch64-sel4-minimal.json +++ b/initialiser/support/targets/aarch64-sel4-minimal.json @@ -30,5 +30,5 @@ "kcfi", "kernel-address" ], - "target-pointer-width": "64" + "target-pointer-width": 64 } diff --git a/initialiser/support/targets/riscv64imac-sel4-minimal.json b/initialiser/support/targets/riscv64imac-sel4-minimal.json index 8697c8c59..6e6803eda 100644 --- a/initialiser/support/targets/riscv64imac-sel4-minimal.json +++ b/initialiser/support/targets/riscv64imac-sel4-minimal.json @@ -24,5 +24,5 @@ "shadow-call-stack", "kernel-address" ], - "target-pointer-width": "64" + "target-pointer-width": 64 } diff --git a/initialiser/support/targets/x86_64-sel4-minimal.json b/initialiser/support/targets/x86_64-sel4-minimal.json index c09af2c79..6266d15e8 100644 --- a/initialiser/support/targets/x86_64-sel4-minimal.json +++ b/initialiser/support/targets/x86_64-sel4-minimal.json @@ -28,5 +28,5 @@ "kcfi", "kernel-address" ], - "target-pointer-width": "64" + "target-pointer-width": 64 } diff --git a/tool/microkit/Cargo.toml b/tool/microkit/Cargo.toml index ea6b0ee34..78715461f 100644 --- a/tool/microkit/Cargo.toml +++ b/tool/microkit/Cargo.toml @@ -8,7 +8,7 @@ name = "microkit-tool" version = "2.0.1-dev" edition = "2021" -rust-version = "1.88.0" +rust-version = "1.91.0" [[bin]] name = "microkit" From 930a6aea0e6bc11d110c907445dfc6d79c2b779c Mon Sep 17 00:00:00 2001 From: Ivan Velickovic Date: Wed, 5 Nov 2025 12:14:04 +1100 Subject: [PATCH 2/2] ci: fixes for 1.91.0 minimum Rust version fix Signed-off-by: Ivan Velickovic --- .github/workflows/sdk.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/sdk.yaml b/.github/workflows/sdk.yaml index 53613534e..93027a77c 100644 --- a/.github/workflows/sdk.yaml +++ b/.github/workflows/sdk.yaml @@ -33,6 +33,7 @@ jobs: path: seL4 - name: Install SDK dependencies run: | + rustup install 1.91.0 rustup target add x86_64-unknown-linux-musl rustup component add rust-src --toolchain stable-x86_64-unknown-linux-gnu rustup target add aarch64-unknown-linux-musl