summaryrefslogtreecommitdiff
path: root/rust
diff options
context:
space:
mode:
authorThomas Weißschuh <linux@weissschuh.net>2025-02-08 14:31:14 +0100
committerMiguel Ojeda <ojeda@kernel.org>2025-03-19 23:18:34 +0100
commit6b2dab17d6fad9d94faae45b46bef307d8560cdf (patch)
treef79d675afb1fba131432eff23f43f016af4facb9 /rust
parentcf25bc61f8aecad9b0c45fe32697e35ea4b13378 (diff)
rust: pass correct target to bindgen on Usermode Linux
Usermode Linux uses "um" as primary architecture name and the underlying physical architecture is provided in "SUBARCH". Resolve the target architecture flags through that underlying architecture. This is the same pattern as used by scripts/Makefile.clang from which the bindgen flags are derived. [ David says: (...) this is enough to get Rust-for-Linux working with gcc under 64-bit UML on my system. - Miguel ] Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Reviewed-by: David Gow <davidgow@googl.ecom> Acked-by: Johannes Berg <johannes@sipsolutions.net> Link: https://lore.kernel.org/r/20250208-rust-kunit-v1-1-94a026be6d72@weissschuh.net Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Diffstat (limited to 'rust')
-rw-r--r--rust/Makefile1
1 files changed, 1 insertions, 0 deletions
diff --git a/rust/Makefile b/rust/Makefile
index e761a8cc3bd5..b9cc810764e9 100644
--- a/rust/Makefile
+++ b/rust/Makefile
@@ -274,6 +274,7 @@ bindgen_skip_c_flags := -mno-fp-ret-in-387 -mpreferred-stack-boundary=% \
# Derived from `scripts/Makefile.clang`.
BINDGEN_TARGET_x86 := x86_64-linux-gnu
BINDGEN_TARGET_arm64 := aarch64-linux-gnu
+BINDGEN_TARGET_um := $(BINDGEN_TARGET_$(SUBARCH))
BINDGEN_TARGET := $(BINDGEN_TARGET_$(SRCARCH))
# All warnings are inhibited since GCC builds are very experimental,