From: Hemanth Kumar M D Date: Mon, 22 Dec 2025 09:38:30 +0000 (-0800) Subject: rust: enable default uwtable and ignore arm no_std test X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f38b4e8b35d6ce2dba9c1f933e3b22b22c065574;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git rust: enable default uwtable and ignore arm no_std test 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 Signed-off-by: Hemanth Kumar M D Signed-off-by: Yash Shinde Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- 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)]