From: Harish Sadineni <[email protected]>

Kernel Rust support on riscv64 requires building the kernel with Clang.
Since Wrynose does not provide Clang toolchian support for kernel
builds, skip the recipe when TARGET_ARCH is riscv64.

This avoids attempting an unsupported kernel Rust build and provides a
clear parse-time error explaining the limitation.

Signed-off-by: Harish Sadineni <[email protected]>
---
 meta/classes-recipe/kernel-yocto-rust.bbclass | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/meta/classes-recipe/kernel-yocto-rust.bbclass 
b/meta/classes-recipe/kernel-yocto-rust.bbclass
index 49f2bfc1ae..6be97c2db8 100644
--- a/meta/classes-recipe/kernel-yocto-rust.bbclass
+++ b/meta/classes-recipe/kernel-yocto-rust.bbclass
@@ -25,3 +25,12 @@ do_kernel_configme:append () {
 # More details in: 
https://lists.openembedded.org/g/openembedded-core/message/229336
 # Disable ccache for kernel build if kernel rust support is enabled to 
workaround this.
 CCACHE_DISABLE ?= "1"
+
+python () {
+    if d.getVar('TARGET_ARCH') == 'riscv64' :
+        raise bb.parse.SkipRecipe(
+            "Rust support in the kernel on riscv64 requires kernel to build 
with clang, "
+            "Wrynose doesn't have clang toolchain support for kernel. See "
+            "https://docs.kernel.org/rust/arch-support.html for details."
+        )
+}
-- 
2.53.0

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#243194): 
https://lists.openembedded.org/g/openembedded-core/message/243194
Mute This Topic: https://lists.openembedded.org/mt/120700049/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to