diff mbox series

[meta-lts-mixins,kirkstone/rust,4/9] rust: handle softfp fpu

Message ID 4771827347dd5a68f523b4fec1b3155bcf344e62.1757441699.git.scott.murray@konsulko.com
State New
Headers show
Series Update to Rust 1.89.0 | expand

Commit Message

Scott Murray Sept. 9, 2025, 6:43 p.m. UTC
From: Peter Marko <peter.marko@siemens.com>

With TARGET_FPU set to "softfp" stdlib-rs fails with:
error: Error loading target specification: ARM targets must specify their float ABI. Run `rustc --print target-list` for a list of built-in targets

This fpu type is set for example for arm in file
meta/conf/machine/include/arm/feature-arm-vfp.inc
when TUNE_FEATURES do not contain "callconvention-hard",
e.g. when using tune
DEFAULTTUNE = "cortexa8"

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(adapted from oe-core commit 4d50135cb902037380915966ecc97399d32e9f74)
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
---
 classes/rust-target-config.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/classes/rust-target-config.bbclass b/classes/rust-target-config.bbclass
index 1efeabf..feaec6a 100644
--- a/classes/rust-target-config.bbclass
+++ b/classes/rust-target-config.bbclass
@@ -392,7 +392,7 @@  def rust_gen_target(d, thing, wd, arch):
     if features != "":
         tspec['features'] = features
     fpu = d.getVar('TARGET_FPU')
-    if fpu == "soft":
+    if fpu in ["soft", "softfp"]:
         tspec['llvm-floatabi'] = "soft"
     elif fpu == "hard":
         tspec['llvm-floatabi'] = "hard"