ccache: do not use ccache if it is explicitly forbidden

Some recipes explicitly disable ccache via CCACHE_DISABLE variable since
they are known issues with ccache in those recipes.
This setting should not be ignored also when ccache in in HOSTOOLS.

Rework a hard to read if clause so that it is in format
if (not CCACHE_DISABLE and (cond1 or cond2 or cond2)):

(From OE-Core rev: 2ea0f82e5f9bb21d21503ed06cf74153ae8cbcc7)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Peter Marko
2025-08-07 19:50:45 +02:00
committed by Richard Purdie
parent caf58debdd
commit 530ceee676

View File

@@ -51,10 +51,10 @@ python() {
Enable ccache for the recipe
"""
pn = d.getVar('PN')
if ("ccache" in d.getVar("HOSTTOOLS").split() or
if (not bb.utils.to_boolean(d.getVar('CCACHE_DISABLE')) and
("ccache" in d.getVar("HOSTTOOLS").split() or
pn in d.getVar('CCACHE_NATIVE_RECIPES_ALLOWED') or
not (bb.data.inherits_class("native", d) or
bb.utils.to_boolean(d.getVar('CCACHE_DISABLE')))):
not bb.data.inherits_class("native", d))):
d.appendVar('DEPENDS', ' ccache-native')
d.setVar('CCACHE', 'ccache ')
}