[gnome-continuous-yocto/gnomeostree-3.28-rocko: 6287/8267] bitbake.conf: Don't exclude MACHINE/MACHINEOVERRIDES from hashes
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 6287/8267] bitbake.conf: Don't exclude MACHINE/MACHINEOVERRIDES from hashes
- Date: Sun, 17 Dec 2017 04:37:59 +0000 (UTC)
commit 2d224392dab399c40f170efdfe07db3a5d081c53
Author: Richard Purdie <richard purdie linuxfoundation org>
Date: Tue Jun 13 10:22:28 2017 +0100
bitbake.conf: Don't exclude MACHINE/MACHINEOVERRIDES from hashes
A long time ago (6 years), this seemed like a good idea. The reality is
that OVERRIDES should not be being added to hashes and if it is, it likely
needs excluding in its own right. This was a nice workaround but we need
to fix the real underlying issues now. In some cases this means excluding
OVERRIDES from the variables dependency using the vardepsexclude flag however
caution is needed to ensure this is safe.
Variable values used to construct hashes are unexpanded but the values used
are computed after the application of OVERRIDES. The important detail is if
the end resulting unexpanded value changes, not the value of the OVERRIDES
used in the construction of that unexpanded value. This is why dependencies
on OVERRIDES itself shouldn't be in the hashes in general.
The recent DISTRO_FEATURES changes adding in override mappings for them
highlighted this issue. We have some good sstate tests which are effective
at highlighting where potential issues arrive with OVERRIDES contamination
(oe-selftest -r sstatetests.SStateTests).
(From OE-Core rev: b227781f9c59a7dfe30f3f1c0dcff87e29a1689b)
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
meta/conf/bitbake.conf | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
---
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index bc438cc..5d5ddec 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -714,11 +714,9 @@ DISTRO_NAME ??= "OpenEmbedded"
# This works for functions as well, they are really just environment variables.
# Default OVERRIDES to make compilation fail fast in case of build system misconfiguration.
OVERRIDES =
"${TARGET_OS}:${TRANSLATED_TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}${DISTROFEATURESOVERRIDES}:${CLASSOVERRIDE}:forcevariable"
-OVERRIDES[vardepsexclude] = "MACHINEOVERRIDES"
CLASSOVERRIDE ?= "class-target"
DISTROOVERRIDES ?= "${@d.getVar('DISTRO') or ''}"
MACHINEOVERRIDES ?= "${MACHINE}"
-MACHINEOVERRIDES[vardepsexclude] = "MACHINE"
FILESOVERRIDES = "${TRANSLATED_TARGET_ARCH}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]