summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--classes/srctree.bbclass31
1 files changed, 18 insertions, 13 deletions
diff --git a/classes/srctree.bbclass b/classes/srctree.bbclass
index 7232c26b12..1a88613a0b 100644
--- a/classes/srctree.bbclass
+++ b/classes/srctree.bbclass
@@ -50,7 +50,7 @@ def merge_tasks(d):
__gather_taskdeps(task, items)
return items
- newtask = "do_populate_sysroot"
+ newtask = "do_populate_sysroot_post"
mergedtasks = gather_taskdeps(newtask)
mergedtasks.pop()
deltasks = gather_taskdeps("do_patch")
@@ -83,17 +83,22 @@ def merge_tasks(d):
d.setVarFlag(task, "deps", deps)
# Pull cross recipe task deps over
- depends = (d.getVarFlag(task, "depends") or ""
- for task in mergedtasks[:-1]
- if not task in deltasks)
- d.setVarFlag("do_populate_sysroot", "depends", " ".join(depends))
+ depends = []
+ deptask = []
+ for task in mergedtasks[:-1]:
+ if not task in deltasks:
+ depends.append(d.getVarFlag(task, "depends") or "")
+ deptask.append(d.getVarFlag(task, "deptask") or "")
+
+ d.setVarFlag("do_populate_sysroot_post", "depends", " ".join(depends))
+ d.setVarFlag("do_populate_sysroot_post", "deptask", " ".join(deptask))
python () {
merge_tasks(d)
}
-# Manually run do_install & all of its deps, then do_stage
-python do_populate_sysroot () {
+# Manually run do_install & all of its deps
+python do_populate_sysroot_post () {
from os.path import exists
from bb.build import exec_task, exec_func
from bb import note
@@ -105,11 +110,11 @@ python do_populate_sysroot () {
if not dep in seen:
rec_exec_task(dep, seen)
seen.add(task)
- #if not exists("%s.%s" % (stamp, task)):
- note("%s: executing task %s" % (d.getVar("PF", True), task))
- exec_task(task, d)
+ if not exists("%s.%s" % (stamp, task)):
+ note("%s: executing task %s" % (d.getVar("PF", True), task))
+ exec_func(task, d)
- rec_exec_task("do_install", set())
- exec_func("do_stage", d)
+ rec_exec_task("do_populate_sysroot", set())
}
-do_populate_sysroot[lockfiles] += "${S}/.lock"
+addtask populate_sysroot_post after do_populate_sysroot
+do_populate_sysroot_post[lockfiles] += "${S}/.lock"