diff options
Diffstat (limited to 'bitbake/lib/bb/data.py')
-rw-r--r-- | bitbake/lib/bb/data.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/bitbake/lib/bb/data.py b/bitbake/lib/bb/data.py index 58408036dd..a56b79cdf1 100644 --- a/bitbake/lib/bb/data.py +++ b/bitbake/lib/bb/data.py | |||
@@ -275,7 +275,7 @@ def emit_func(func, o=sys.__stdout__, d = init()): | |||
275 | seen |= deps | 275 | seen |= deps |
276 | newdeps = set() | 276 | newdeps = set() |
277 | for dep in deps: | 277 | for dep in deps: |
278 | if d.getVarFlag(dep, "func"): | 278 | if d.getVarFlag(dep, "func") and not d.getVarFlag(dep, "python"): |
279 | emit_var(dep, o, d, False) and o.write('\n') | 279 | emit_var(dep, o, d, False) and o.write('\n') |
280 | newdeps |= bb.codeparser.ShellParser(dep, logger).parse_shell(d.getVar(dep, True)) | 280 | newdeps |= bb.codeparser.ShellParser(dep, logger).parse_shell(d.getVar(dep, True)) |
281 | newdeps |= set((d.getVarFlag(dep, "vardeps", True) or "").split()) | 281 | newdeps |= set((d.getVarFlag(dep, "vardeps", True) or "").split()) |
@@ -295,7 +295,7 @@ def build_dependencies(key, keys, shelldeps, varflagsexcl, d): | |||
295 | deps |= parser.references | 295 | deps |= parser.references |
296 | deps = deps | (keys & parser.execs) | 296 | deps = deps | (keys & parser.execs) |
297 | return deps, value | 297 | return deps, value |
298 | varflags = d.getVarFlags(key, ["vardeps", "vardepvalue", "vardepsexclude"]) or {} | 298 | varflags = d.getVarFlags(key, ["vardeps", "vardepvalue", "vardepsexclude", "postfuncs", "prefuncs"]) or {} |
299 | vardeps = varflags.get("vardeps") | 299 | vardeps = varflags.get("vardeps") |
300 | value = d.getVar(key, False) | 300 | value = d.getVar(key, False) |
301 | 301 | ||
@@ -332,6 +332,10 @@ def build_dependencies(key, keys, shelldeps, varflagsexcl, d): | |||
332 | deps = deps | shelldeps | 332 | deps = deps | shelldeps |
333 | if vardeps is None: | 333 | if vardeps is None: |
334 | parser.log.flush() | 334 | parser.log.flush() |
335 | if "prefuncs" in varflags: | ||
336 | deps = deps | set(varflags["prefuncs"].split()) | ||
337 | if "postfuncs" in varflags: | ||
338 | deps = deps | set(varflags["postfuncs"].split()) | ||
335 | deps = deps | parsedvar.references | 339 | deps = deps | parsedvar.references |
336 | deps = deps | (keys & parser.execs) | (keys & parsedvar.execs) | 340 | deps = deps | (keys & parser.execs) | (keys & parsedvar.execs) |
337 | value = handle_contains(value, parsedvar.contains, d) | 341 | value = handle_contains(value, parsedvar.contains, d) |