diff options
author | Chris Larson <chris_larson@mentor.com> | 2010-04-14 17:57:00 -0700 |
---|---|---|
committer | Chris Larson <chris_larson@mentor.com> | 2010-04-23 14:20:41 -0700 |
commit | 5816ec4860aba7289483b87b4aa4909eee50fae9 (patch) | |
tree | d9b0cbde34688feacaec41a20c1df000a92d84c2 /classes | |
parent | 5c8bfd6873939024d57278343035cfab0257bdb3 (diff) |
base.bbclass: add <dir>/lib for each dir in BBPATH to the python search path
Also makes the os, time, and bb package availability explicit.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Diffstat (limited to 'classes')
-rw-r--r-- | classes/base.bbclass | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/classes/base.bbclass b/classes/base.bbclass index c43f2b2b35..3e94f3aa86 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -9,6 +9,29 @@ inherit utils inherit utility-tasks inherit metadata_scm +python sys_path_eh () { + if isinstance(e, bb.event.ConfigParsed): + import sys + import os + import time + + bbpath = e.data.getVar("BBPATH", True).split(":") + sys.path[0:0] = [os.path.join(dir, "lib") for dir in bbpath] + + def inject(name, value): + """Make a python object accessible from everywhere for the metadata""" + if hasattr(bb.utils, "_context"): + bb.utils._context[name] = value + else: + __builtins__[name] = value + + inject("bb", bb) + inject("sys", sys) + inject("time", time) +} + +addhandler sys_path_eh + die() { oefatal "$*" } |