summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Larson <chris_larson@mentor.com>2011-02-09 14:09:43 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-05-20 16:34:22 (GMT)
commit6bdfae902ea61d5794dc65c3b0db744f5b2661b4 (patch)
treee2b6af2b2cdf63dc295f806b7f82279cca6c193d
parent4da8c86ca2b376149d425480e11ea1704dbc3ede (diff)
downloadpoky-6bdfae902ea61d5794dc65c3b0db744f5b2661b4.tar.gz
base.bbclass: switch to current OE's imports handling
The current mechanism makes it easier for classes to add new oe modules to be automatically imported, and thereby made available to python snippets (${@}). (From OE-Core rev: 0c560a2a7954412f714db86b1aaadb7acbe72d1b) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/base.bbclass22
1 files changed, 9 insertions, 13 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 5ccc553..d40d586 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -10,32 +10,28 @@ inherit metadata_scm
10inherit buildstats 10inherit buildstats
11inherit logging 11inherit logging
12 12
13python sys_path_eh () { 13OE_IMPORTS += "os sys time oe.path oe.utils oe.data"
14
15python oe_import () {
14 if isinstance(e, bb.event.ConfigParsed): 16 if isinstance(e, bb.event.ConfigParsed):
15 import sys 17 import os, sys
16 import os
17 import time
18 18
19 bbpath = e.data.getVar("BBPATH", True).split(":") 19 bbpath = e.data.getVar("BBPATH", True).split(":")
20 sys.path[0:0] = [os.path.join(dir, "lib") for dir in bbpath] 20 sys.path[0:0] = [os.path.join(dir, "lib") for dir in bbpath]
21 21
22 def inject(name, value): 22 def inject(name, value):
23 """Make a python object accessible from everywhere for the metadata""" 23 """Make a python object accessible from the metadata"""
24 if hasattr(bb.utils, "_context"): 24 if hasattr(bb.utils, "_context"):
25 bb.utils._context[name] = value 25 bb.utils._context[name] = value
26 else: 26 else:
27 __builtins__[name] = value 27 __builtins__[name] = value
28 28
29 import oe.path 29 for toimport in e.data.getVar("OE_IMPORTS", True).split():
30 import oe.utils 30 imported = __import__(toimport)
31 import oe.data 31 inject(toimport.split(".", 1)[0], imported)
32 inject("bb", bb)
33 inject("sys", sys)
34 inject("time", time)
35 inject("oe", oe)
36} 32}
37 33
38addhandler sys_path_eh 34addhandler oe_import
39 35
40die() { 36die() {
41 bbfatal "$*" 37 bbfatal "$*"