summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meta/classes/staging.bbclass15
1 files changed, 10 insertions, 5 deletions
diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index e66dc044a..e82db8389 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -100,13 +100,18 @@ python do_populate_sysroot () {
bb.build.exec_func("sysroot_stage_all", d)
for f in (bb.data.getVar('SYSROOT_PREPROCESS_FUNCS', d, True) or '').split():
bb.build.exec_func(f, d)
- bb.build.exec_func("packagedstaging_fastpath", d)
+}
+
+SSTATETASKS += "do_populate_sysroot"
+do_populate_sysroot[sstate-name] = "populate-sysroot"
+do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR}"
+do_populate_sysroot[sstate-outputdirs] = "${TMPDIR}/sysroots"
- lockfile = bb.data.getVar("SYSROOT_LOCK", d, True)
- lock = bb.utils.lockfile(lockfile)
- os.system(bb.data.expand('cp -pPR ${SYSROOT_DESTDIR}${TMPDIR}/* ${TMPDIR}/', d))
- bb.utils.unlockfile(lock)
+python do_populate_sysroot_setscene () {
+ sstate_setscene(d)
}
+addtask do_populate_sysroot_setscene
+
python () {
if bb.data.getVar('do_stage', d, True) is not None: