Skip to content

Commit fdce709

Browse files
committed
update toolchain to nightly-2026-06-01 and fix build
The newer nightly changed how custom target specs are handled: - .cargo/config.toml: enable the `json-target-spec` unstable flag, now required to use `.json` target files - aarch64-eduos.json: add `rustc-abi: "softfloat"`, now needed alongside `abi` for bare-metal aarch64 softfloat targets - src/lib.rs: drop the stabilized `allocator_api` feature gate Both targets build and boot in QEMU again: cargo run cargo run --target aarch64-eduos.json
1 parent be2432a commit fdce709

3 files changed

Lines changed: 19 additions & 1 deletion

File tree

.cargo/config.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
[unstable]
22
build-std = ["core", "alloc"]
33
build-std-features = ["compiler-builtins-mem"]
4+
json-target-spec = true
45

56
[build]
67
target = "x86_64-eduos.json"

aarch64-eduos.json

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"llvm-target": "aarch64-unknown-none",
3+
"target-endian": "little",
4+
"target-pointer-width": 64,
5+
"target-c-int-width": 32,
6+
"os": "none",
7+
"arch": "aarch64",
8+
"abi": "softfloat",
9+
"rustc-abi": "softfloat",
10+
"features": "+v8a,+strict-align,-neon,-fp-armv8",
11+
"data-layout": "e-m:e-p270:32:32-p271:32:32-p272:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32",
12+
"disable-redzone": true,
13+
"executables": true,
14+
"linker-flavor": "ld.lld",
15+
"linker": "rust-lld",
16+
"panic-strategy": "abort"
17+
}

rust-toolchain.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[toolchain]
2-
channel = "nightly-2025-10-01"
2+
channel = "nightly-2026-06-01"
33
components = [
44
"clippy",
55
"rustfmt",

0 commit comments

Comments
 (0)