summaryrefslogtreecommitdiffstats
path: root/bitbake-dev/lib/bb/parse/parse_py/BBHandler.py
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2009-01-03 16:33:11 +0000
committerRichard Purdie <rpurdie@linux.intel.com>2009-01-03 16:33:11 +0000
commit772ec7db089f5fefd85e1e37695a22009e76d3bc (patch)
tree4f3f9066803f61b1f1898c1d39dff4f800239b40 /bitbake-dev/lib/bb/parse/parse_py/BBHandler.py
parentee0faf1346cabb0c90f43891ede3f88878f87b8b (diff)
downloadpoky-772ec7db089f5fefd85e1e37695a22009e76d3bc.tar.gz
bitbake-dev: Add BBCLASSEXTEND support
Diffstat (limited to 'bitbake-dev/lib/bb/parse/parse_py/BBHandler.py')
-rw-r--r--bitbake-dev/lib/bb/parse/parse_py/BBHandler.py17
1 files changed, 15 insertions, 2 deletions
diff --git a/bitbake-dev/lib/bb/parse/parse_py/BBHandler.py b/bitbake-dev/lib/bb/parse/parse_py/BBHandler.py
index 00ad6ef4fe..5a128e8673 100644
--- a/bitbake-dev/lib/bb/parse/parse_py/BBHandler.py
+++ b/bitbake-dev/lib/bb/parse/parse_py/BBHandler.py
@@ -181,8 +181,21 @@ def handle(fn, d, include = 0):
181 classes.remove(__classname__) 181 classes.remove(__classname__)
182 else: 182 else:
183 if include == 0: 183 if include == 0:
184 finalise(fn, d) 184 multi = data.getVar('BBCLASSEXTEND', d, 1)
185 185 if multi:
186 based = bb.data.createCopy(d)
187 finalise(fn, based)
188 darray = {"": based}
189 for cls in multi.split():
190 pn = data.getVar('PN', d, True)
191 based = bb.data.createCopy(d)
192 data.setVar('PN', pn + '-' + cls, based)
193 inherit([cls], based)
194 finalise(fn, based)
195 darray[cls] = based
196 return darray
197 else:
198 finalise(fn, d)
186 bbpath.pop(0) 199 bbpath.pop(0)
187 if oldfile: 200 if oldfile:
188 bb.data.setVar("FILE", oldfile, d) 201 bb.data.setVar("FILE", oldfile, d)