From ec15882fbf396de8d3a5921a3028850ba3fccc48 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 5 Aug 2022 14:05:18 +0100 Subject: rust-target-config: Make target workaround generic Ensure the 'target' data is set for both HOST and TARGET queries as appropriate to work correctly in cross configurations. Signed-off-by: Richard Purdie --- meta/classes/rust-target-config.bbclass | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'meta/classes') diff --git a/meta/classes/rust-target-config.bbclass b/meta/classes/rust-target-config.bbclass index bc6bd77abb..0f0797603e 100644 --- a/meta/classes/rust-target-config.bbclass +++ b/meta/classes/rust-target-config.bbclass @@ -290,6 +290,10 @@ llvm_cpu[vardepvalue] = "${@llvm_cpu(d)}" def rust_gen_target(d, thing, wd, arch): import json + + build_sys = d.getVar('BUILD_SYS') + target_sys = d.getVar('TARGET_SYS') + sys = d.getVar('{}_SYS'.format(thing)) prefix = d.getVar('{}_PREFIX'.format(thing)) rustsys = d.getVar('RUST_{}_SYS'.format(thing)) @@ -298,7 +302,9 @@ def rust_gen_target(d, thing, wd, arch): cpu = "generic" features = "" - if thing == "TARGET": + # Need to apply the target tuning consitently, only if the triplet applies to the target + # and not in the native case + if sys == target_sys and sys != build_sys: abi = d.getVar('ABIEXTENSION') cpu = llvm_cpu(d) if bb.data.inherits_class('native', d): -- cgit 1.2.3-korg