On 23-12-2025 04:10, Randy MacLeod wrote:
On 2025-12-22 4:38 a.m., [email protected] wrote:
From: Hemanth Kumar M D<[email protected]>
Rust 1.92.0 adds new test that require unwind table support to be
enabled by default. Set `default-uwtable = true` in the generated
target spec to match upstream behavior.
ref:https://github.com/rust-lang/rust/commit/fe66eaa67acc47525db6f13cf97d54780d87b805
Also ignore the no_std simple-runs UI test on ARM targets. The test
fails with panic=abort due to a known unwind table issue on 32-bit ARM
https://github.com/rust-lang/rust/issues/146996
Okay and I'm glad to see the upstream issues linked.
Should we make some of these tspec decisions set-able by well-informed
users?
Maybe they can already do that using this horridly named "FEATURES"
variable.
(rename to RUST_FEATURES maybe ?)
Most of the tspec features are set explicitly here.
We are analyzing on the possibility to check and set them using FEATURES
to make
user-configurable.
Regards,
Yash
For example, this bug:
Unable to produce a Rust static binary with TCLIBC=musl (oe-core/master)
https://bugzilla.yoctoproject.org/show_bug.cgi?id=16076
seems to be due to hard-coding dynamic-linking to True below just
after your:
+ tspec['default-uwtable'] = True
change.
I've CCed Nick in case you guys have a quick work-around to enable
static linking.
../Randy
Signed-off-by: Hemanth Kumar M D<[email protected]>
Signed-off-by: Yash Shinde<[email protected]>
---
meta/classes-recipe/rust-target-config.bbclass | 1 +
.../rust/files/rust-oe-selftest.patch | 12 ++++++++++++
2 files changed, 13 insertions(+)
diff --git a/meta/classes-recipe/rust-target-config.bbclass
b/meta/classes-recipe/rust-target-config.bbclass
index 33a290412e..2a06c4ae8b 100644
--- a/meta/classes-recipe/rust-target-config.bbclass
+++ b/meta/classes-recipe/rust-target-config.bbclass
@@ -418,6 +418,7 @@ def rust_gen_target(d, thing, wd, arch):
tspec['llvm-floatabi'] = "soft"
elif fpu == "hard":
tspec['llvm-floatabi'] = "hard"
+ tspec['default-uwtable'] = True
tspec['dynamic-linking'] = True
tspec['executables'] = True
tspec['linker-is-gnu'] = True
diff --git a/meta/recipes-devtools/rust/files/rust-oe-selftest.patch
b/meta/recipes-devtools/rust/files/rust-oe-selftest.patch
index b39b326455..d1fba81612 100644
--- a/meta/recipes-devtools/rust/files/rust-oe-selftest.patch
+++ b/meta/recipes-devtools/rust/files/rust-oe-selftest.patch
@@ -254,3 +254,15 @@ index a3562f2fd93..d4e52ed91be 100644
fn linux_hwcap2_aarch64() {
let file =
concat!(env!("CARGO_MANIFEST_DIR"),
"/src/detect/test_data/linux-hwcap2-aarch64.auxv");
+diff --git a/tests/ui/no_std/simple-runs.rs b/tests/ui/no_std/simple-runs.rs
+index af44dfe..e6674e5 100644
+--- a/tests/ui/no_std/simple-runs.rs
++++ b/tests/ui/no_std/simple-runs.rs
+@@ -2,6 +2,7 @@
+
+ //@ run-pass
+ //@ compile-flags: -Cpanic=abort
++//@ ignore-arm FIXME(#146996)
+ //@ ignore-wasm different `main` convention
+
+ #![feature(lang_items)]
--
# Randy MacLeod
# Wind River Linux
--
Regards,
Yash Shinde
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#228448):
https://lists.openembedded.org/g/openembedded-core/message/228448
Mute This Topic: https://lists.openembedded.org/mt/116899238/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-