mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-15 22:41:38 +00:00
rust: support Rust >= 1.91.0 target spec
commit 8851e27d2c upstream.
Starting with Rust 1.91.0 (expected 2025-10-30), the target spec format
has changed the type of the `target-pointer-width` key from string
to integer [1].
Thus conditionally use one or the other depending on the version.
Cc: Waffle Maybe <waffle.lapkin@gmail.com>
Link: https://github.com/rust-lang/rust/pull/144443 [1]
Link: https://lore.kernel.org/r/20250829195525.721664-1-ojeda@kernel.org
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
585a593ad5
commit
17cab7b45f
@@ -223,7 +223,11 @@ fn main() {
|
|||||||
ts.push("features", features);
|
ts.push("features", features);
|
||||||
ts.push("llvm-target", "x86_64-linux-gnu");
|
ts.push("llvm-target", "x86_64-linux-gnu");
|
||||||
ts.push("supported-sanitizers", ["kcfi", "kernel-address"]);
|
ts.push("supported-sanitizers", ["kcfi", "kernel-address"]);
|
||||||
ts.push("target-pointer-width", "64");
|
if cfg.rustc_version_atleast(1, 91, 0) {
|
||||||
|
ts.push("target-pointer-width", 64);
|
||||||
|
} else {
|
||||||
|
ts.push("target-pointer-width", "64");
|
||||||
|
}
|
||||||
} else if cfg.has("X86_32") {
|
} else if cfg.has("X86_32") {
|
||||||
// This only works on UML, as i386 otherwise needs regparm support in rustc
|
// This only works on UML, as i386 otherwise needs regparm support in rustc
|
||||||
if !cfg.has("UML") {
|
if !cfg.has("UML") {
|
||||||
@@ -243,7 +247,11 @@ fn main() {
|
|||||||
}
|
}
|
||||||
ts.push("features", features);
|
ts.push("features", features);
|
||||||
ts.push("llvm-target", "i386-unknown-linux-gnu");
|
ts.push("llvm-target", "i386-unknown-linux-gnu");
|
||||||
ts.push("target-pointer-width", "32");
|
if cfg.rustc_version_atleast(1, 91, 0) {
|
||||||
|
ts.push("target-pointer-width", 32);
|
||||||
|
} else {
|
||||||
|
ts.push("target-pointer-width", "32");
|
||||||
|
}
|
||||||
} else if cfg.has("LOONGARCH") {
|
} else if cfg.has("LOONGARCH") {
|
||||||
panic!("loongarch uses the builtin rustc loongarch64-unknown-none-softfloat target");
|
panic!("loongarch uses the builtin rustc loongarch64-unknown-none-softfloat target");
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user