diff options
| author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-05-21 10:00:50 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-05-21 22:20:54 +0100 |
| commit | 21fefaf2b723397802c4a1fa200fab33aa3911ab (patch) | |
| tree | 9392358b29a67bfe3ffa851dae828ae8ba16f256 | |
| parent | 39ec265ecbf6f0cb64a352ce6af9bff94368df10 (diff) | |
| download | poky-21fefaf2b723397802c4a1fa200fab33aa3911ab.tar.gz | |
rust-common: Fix sstate signatures between arm hf and non-hf
Building with MACHINE=qemuarm and MACHINE=qemux86-64 causes rust-native
to rebuild. The reason is all the ingredients into the RUST_*_SYS
variables are being tracked but that doesn't really make sense in this
case:
$ bitbake-diffsigs tmp/stamps/x86_64-linux/rust-native/1.60.0-r0.do_rust_gen_targets.sigdata.63* tmp/stamps/x86_64-linux/rust-native/1.60.0-r0.do_rust_gen_targets.sigdata.34*
NOTE: Starting bitbake server...
basehash changed from 860b8f11b10182dc5b2737f62cdb697477f714adb63eeb4d4b932d67cac8eec2 to 9379e8b9df9696e8056fec7d1534661f34dda073f6d816e241b09a2dff76ae2d
Variable rust_base_triple value changed:
@@ -36,4 +36,4 @@
# In some cases uname and the toolchain differ on their idea of the arch name
-TUNE_FEATURES{callconvention-hard} = Set
+TUNE_FEATURES{callconvention-hard} = Unset
Switch to using the final variable value for sstate signature purposes
which avoids this issue.
(From OE-Core rev: 38b61aeaf877f6a34c3c0060c175119975ebd782)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/classes/rust-common.bbclass | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/meta/classes/rust-common.bbclass b/meta/classes/rust-common.bbclass index 02a538258a..cb811ac5da 100644 --- a/meta/classes/rust-common.bbclass +++ b/meta/classes/rust-common.bbclass | |||
| @@ -117,8 +117,11 @@ RUST_BUILD_ARCH = "${@oe.rust.arch_to_rust_arch(d.getVar('BUILD_ARCH'))}" | |||
| 117 | # its likely best to not use the triple suffix due to potential confusion. | 117 | # its likely best to not use the triple suffix due to potential confusion. |
| 118 | 118 | ||
| 119 | RUST_BUILD_SYS = "${@rust_base_triple(d, 'BUILD')}" | 119 | RUST_BUILD_SYS = "${@rust_base_triple(d, 'BUILD')}" |
| 120 | RUST_BUILD_SYS[vardepvalue] = "${RUST_BUILD_SYS}" | ||
| 120 | RUST_HOST_SYS = "${@rust_base_triple(d, 'HOST')}" | 121 | RUST_HOST_SYS = "${@rust_base_triple(d, 'HOST')}" |
| 122 | RUST_HOST_SYS[vardepvalue] = "${RUST_HOST_SYS}" | ||
| 121 | RUST_TARGET_SYS = "${@rust_base_triple(d, 'TARGET')}" | 123 | RUST_TARGET_SYS = "${@rust_base_triple(d, 'TARGET')}" |
| 124 | RUST_TARGET_SYS[vardepvalue] = "${RUST_TARGET_SYS}" | ||
| 122 | 125 | ||
| 123 | # wrappers to get around the fact that Rust needs a single | 126 | # wrappers to get around the fact that Rust needs a single |
| 124 | # binary but Yocto's compiler and linker commands have | 127 | # binary but Yocto's compiler and linker commands have |
