From: Alexander Kanavin Date: Wed, 14 Jan 2026 13:40:59 +0000 (+0100) Subject: rust-target-config.bbclass: apply signature exclusions only to native/nativesdk X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=483005f752d89dacb869236a4941981f2698c29e;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git rust-target-config.bbclass: apply signature exclusions only to native/nativesdk Applying these exclusions to target builds and expecting that rebuilds happen when they should relies on incidental mechanisms like paths or other variables using the excluded ones. Rather than think of possible scenarions where it works, and where it doesn't, let's not exclude the variables from target builds, so task signature calculation can be relied on. [YOCTO #16132] Signed-off-by: Alexander Kanavin Signed-off-by: Richard Purdie --- diff --git a/meta/classes-recipe/rust-target-config.bbclass b/meta/classes-recipe/rust-target-config.bbclass index 8e737c1451..a0a590bf62 100644 --- a/meta/classes-recipe/rust-target-config.bbclass +++ b/meta/classes-recipe/rust-target-config.bbclass @@ -432,8 +432,10 @@ def rust_gen_target(d, thing, wd, arch): with open(wd + rustsys + '.json', 'w') as f: json.dump(tspec, f, indent=4) -# These are accounted for in tmpdir path names so don't need to be in the task sig -rust_gen_target[vardepsexclude] += "ABIEXTENSION llvm_cpu TUNE_RISCV_ABI" +RUSTCONFIG_EXCLUDEVARS = "" +RUSTCONFIG_EXCLUDEVARS:class-native = "ABIEXTENSION llvm_cpu TUNE_RISCV_ABI" +RUSTCONFIG_EXCLUDEVARS:class-nativesdk = "ABIEXTENSION llvm_cpu TUNE_RISCV_ABI" +rust_gen_target[vardepsexclude] += "${RUSTCONFIG_EXCLUDEVARS}" do_rust_gen_targets[vardeps] += "DATA_LAYOUT TARGET_ENDIAN TARGET_POINTER_WIDTH TARGET_C_INT_WIDTH MAX_ATOMIC_WIDTH FEATURES"