diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-04-10 10:50:16 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-05-06 15:28:46 +0100 |
commit | ddf498b487fae35a36c3cd095f110fa6da5ded40 (patch) | |
tree | b6554f07a156be8879704512f15c32caf37a8efe /lib/bb/parse/ast.py | |
parent | c3dd4fd5c9fe106f7fae8c088e75cfb70f20e107 (diff) | |
download | bitbake-ddf498b487fae35a36c3cd095f110fa6da5ded40.tar.gz |
bitbake/ast.py: Only run finalise() for the specified variant
Allows the heavy finalise function to only be run for the case we're
interested in when running tasks, saving some processing time.
(From Poky rev: 9211fd9c375489c73924fd43f1f8a0da2c4290bb)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/parse/ast.py')
-rw-r--r-- | lib/bb/parse/ast.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/bb/parse/ast.py b/lib/bb/parse/ast.py index b968db40b..375dc6163 100644 --- a/lib/bb/parse/ast.py +++ b/lib/bb/parse/ast.py @@ -369,10 +369,13 @@ def multi_finalize(fn, d): logger.debug(2, "Appending .bbappend file %s to %s", append, fn) bb.parse.BBHandler.handle(append, d, True) + onlyfinalise = d.getVar("__ONLYFINALISE", False) + safe_d = d d = bb.data.createCopy(safe_d) try: - finalize(fn, d) + if not onlyfinalise or "default" in onlyfinalise: + finalize(fn, d) except bb.parse.SkipPackage: bb.data.setVar("__SKIPPED", True, d) datastores = {"": safe_d} @@ -434,7 +437,8 @@ def multi_finalize(fn, d): for variant, variant_d in datastores.iteritems(): if variant: try: - finalize(fn, variant_d, variant) + if not onlyfinalise or variant in onlyfinalise: + finalize(fn, variant_d, variant) except bb.parse.SkipPackage: bb.data.setVar("__SKIPPED", True, variant_d) |