@@ -152,7 +152,9 @@ python () {
else:
d.setVar('SSTATE_MANMACH', d.expand("${PACKAGE_ARCH}"))
- if bb.data.inherits_class('native', d) or bb.data.inherits_class('crosssdk', d) or bb.data.inherits_class('cross', d):
+ is_native = bb.data.inherits_class('native', d) or bb.data.inherits_class('crosssdk', d) or bb.data.inherits_class('cross', d)
+
+ if is_native:
d.setVar('SSTATE_EXTRAPATH', "${NATIVELSBSTRING}/")
d.setVar('BB_HASHFILENAME', "True ${SSTATE_PKGSPEC} ${SSTATE_SWSPEC}")
d.setVar('SSTATE_EXTRAPATHWILDCARD', "${NATIVELSBSTRING}/")
@@ -164,6 +166,8 @@ python () {
d.appendVarFlag(task, 'postfuncs', " sstate_task_postfunc")
d.setVarFlag(task, 'network', '1')
d.setVarFlag(task + "_setscene", 'network', '1')
+ if not is_native:
+ d.appendVarFlag(task, 'deptask', ' tar-replacement-native:do_populate_sysroot')
}
def sstate_init(task, d):
Due to the bugs https://savannah.gnu.org/bugs/?61934 and https://savannah.gnu.org/bugs/?59184, which are fixed in tar version 1.35, we need to force yocto to use it instead of the one provided by the host machine. sstate_create_package and sstate_unpack_package functions, will use the tar provided by tar recipe, which is already in proper version. Signed-off-by: Piotr Łobacz <p.lobacz@welotec.com> --- meta/classes-global/sstate.bbclass | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)