]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
rust: enable default uwtable and ignore arm no_std test
authorHemanth Kumar M D <hemanth.250302@gmail.com>
Mon, 22 Dec 2025 09:38:30 +0000 (01:38 -0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 31 Dec 2025 12:21:52 +0000 (12:21 +0000)
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 <hemanth.250302@gmail.com>
Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes-recipe/rust-target-config.bbclass
meta/recipes-devtools/rust/files/rust-oe-selftest.patch

index 33a290412e80dcc087dde66dc4c18ba6bda8a2d7..2a06c4ae8b121c8f0c7c7cddb4bd51d779921724 100644 (file)
@@ -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
index b39b326455dafd072ab29419a263d9401a68c454..d1fba81612f00b0b9ebbe789dc75ad4d505209aa 100644 (file)
@@ -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)]