aboutsummaryrefslogtreecommitdiffstats
path: root/bin/oe/parse
diff options
context:
space:
mode:
authorChris Larson <clarson@kergoth.com>2004-01-23 07:47:10 +0000
committerChris Larson <clarson@kergoth.com>2004-01-23 07:47:10 +0000
commitb2dc3e7502e41562a4429b1b9e55fa3d9320c6c0 (patch)
tree0733f72ad60ec2467306c2ccc4c8ffeaecf71071 /bin/oe/parse
parent91bc0c88db09cc0aab4765a8121cbf4d2fc4fd92 (diff)
downloadbitbake-b2dc3e7502e41562a4429b1b9e55fa3d9320c6c0.tar.gz
Move task setup from oebuild into the .oe parser.
Diffstat (limited to 'bin/oe/parse')
-rw-r--r--bin/oe/parse/OEHandler.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/bin/oe/parse/OEHandler.py b/bin/oe/parse/OEHandler.py
index 64e6f09c4..aef71a212 100644
--- a/bin/oe/parse/OEHandler.py
+++ b/bin/oe/parse/OEHandler.py
@@ -110,6 +110,24 @@ def handle(fn, d = {}, include = 0):
data.expandKeys(d)
data.update_data(d)
set_additional_vars(fn, d, include)
+ for var in d.keys():
+ if data.getVarFlag(var, 'handler', d):
+ oe.event.register(data.getVar(var, d))
+ continue
+
+ if not data.getVarFlag(var, 'task', d):
+ continue
+
+ deps = data.getVarFlag(var, 'deps', d) or []
+ postdeps = data.getVarFlag(var, 'postdeps', d) or []
+ oe.build.add_task(var, var, deps)
+ for p in postdeps:
+ td = oe.build.get_task_data()
+ pcontent = data.getVar(p, td) or p
+ pdeps = data.getVarFlag(pcontent, 'deps', d) or []
+ pdeps.append(var)
+ data.setVarFlag(pcontent, 'deps', pdeps, d)
+ oe.build.add_task(p, pcontent, pdeps)
if oldfile:
data.setVar('FILE', oldfile, d)
return d