diff options
author | Richard Purdie <richard@openedhand.com> | 2007-08-20 07:48:43 +0000 |
---|---|---|
committer | Richard Purdie <richard@openedhand.com> | 2007-08-20 07:48:43 +0000 |
commit | d8bfa5c6eff1cff34895304a33be671fb141084e (patch) | |
tree | 8f63f2cad401f42f5dd30930b0f042aa9c5bdaf8 /bitbake/lib/bb/build.py | |
parent | e68823a20c6e3b629c947bc7e329e5ea71a9860c (diff) | |
download | openembedded-core-d8bfa5c6eff1cff34895304a33be671fb141084e.tar.gz openembedded-core-d8bfa5c6eff1cff34895304a33be671fb141084e.tar.bz2 openembedded-core-d8bfa5c6eff1cff34895304a33be671fb141084e.zip |
bitbake: Sync with 1.8.8 release
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2513 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'bitbake/lib/bb/build.py')
-rw-r--r-- | bitbake/lib/bb/build.py | 52 |
1 files changed, 29 insertions, 23 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index bcbc55eea5..e9a6fc8c61 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py @@ -397,35 +397,41 @@ def del_stamp(task, d, file_name = None): """ stamp_internal(task, d, file_name) -def add_task(task, deps, d): +def add_tasks(tasklist, d): task_graph = data.getVar('_task_graph', d) + task_deps = data.getVar('_task_deps', d) if not task_graph: task_graph = bb.digraph() - data.setVarFlag(task, 'task', 1, d) - task_graph.addnode(task, None) - for dep in deps: - if not task_graph.hasnode(dep): - task_graph.addnode(dep, None) - task_graph.addnode(task, dep) - # don't assume holding a reference - data.setVar('_task_graph', task_graph, d) - - task_deps = data.getVar('_task_deps', d) if not task_deps: task_deps = {} - def getTask(name): - deptask = data.getVarFlag(task, name, d) - if deptask: - deptask = data.expand(deptask, d) - if not name in task_deps: - task_deps[name] = {} - task_deps[name][task] = deptask - getTask('depends') - getTask('deptask') - getTask('rdeptask') - getTask('recrdeptask') - getTask('nostamp') + for task in tasklist: + deps = tasklist[task] + task = data.expand(task, d) + + data.setVarFlag(task, 'task', 1, d) + task_graph.addnode(task, None) + for dep in deps: + dep = data.expand(dep, d) + if not task_graph.hasnode(dep): + task_graph.addnode(dep, None) + task_graph.addnode(task, dep) + + flags = data.getVarFlags(task, d) + def getTask(name): + if name in flags: + deptask = data.expand(flags[name], d) + if not name in task_deps: + task_deps[name] = {} + task_deps[name][task] = deptask + getTask('depends') + getTask('deptask') + getTask('rdeptask') + getTask('recrdeptask') + getTask('nostamp') + + # don't assume holding a reference + data.setVar('_task_graph', task_graph, d) data.setVar('_task_deps', task_deps, d) def remove_task(task, kill, d): |