summaryrefslogtreecommitdiff
path: root/bitbake-dev/lib/bb/parse
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-01-20 18:39:00 +0000
committerRichard Purdie <rpurdie@linux.intel.com>2010-01-20 18:39:00 +0000
commit1bfd6edef9db9c9175058ae801d1b601e4f15263 (patch)
tree899bc6771c9def07be628ba735c6bad158f7363e /bitbake-dev/lib/bb/parse
parentd6c7a44b94aa0f871d3ad1a2097a4a8d773eabf5 (diff)
downloadopenembedded-core-1bfd6edef9db9c9175058ae801d1b601e4f15263.tar.gz
openembedded-core-1bfd6edef9db9c9175058ae801d1b601e4f15263.tar.bz2
openembedded-core-1bfd6edef9db9c9175058ae801d1b601e4f15263.tar.xz
openembedded-core-1bfd6edef9db9c9175058ae801d1b601e4f15263.zip
bitbake-dev: Sync with bitbake upstream
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'bitbake-dev/lib/bb/parse')
-rw-r--r--bitbake-dev/lib/bb/parse/parse_py/BBHandler.py28
1 files changed, 18 insertions, 10 deletions
diff --git a/bitbake-dev/lib/bb/parse/parse_py/BBHandler.py b/bitbake-dev/lib/bb/parse/parse_py/BBHandler.py
index 9b353634e..86fa18ebd 100644
--- a/bitbake-dev/lib/bb/parse/parse_py/BBHandler.py
+++ b/bitbake-dev/lib/bb/parse/parse_py/BBHandler.py
@@ -185,18 +185,26 @@ def handle(fn, d, include = 0):
multi = data.getVar('BBCLASSEXTEND', d, 1)
if multi:
based = bb.data.createCopy(d)
+ else:
+ based = d
+ try:
finalise(fn, based)
- darray = {"": based}
- for cls in multi.split():
- pn = data.getVar('PN', d, True)
- based = bb.data.createCopy(d)
- data.setVar('PN', pn + '-' + cls, based)
- inherit([cls], based)
+ except bb.parse.SkipPackage:
+ bb.data.setVar("__SKIPPED", True, based)
+ darray = {"": based}
+
+ for cls in (multi or "").split():
+ pn = data.getVar('PN', d, True)
+ based = bb.data.createCopy(d)
+ data.setVar('PN', pn + '-' + cls, based)
+ inherit([cls], based)
+ try:
finalise(fn, based)
- darray[cls] = based
- return darray
- else:
- finalise(fn, d)
+ except bb.parse.SkipPackage:
+ bb.data.setVar("__SKIPPED", True, based)
+ darray[cls] = based
+ return darray
+
bbpath.pop(0)
if oldfile:
bb.data.setVar("FILE", oldfile, d)