summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorHongxu Jia <hongxu.jia@windriver.com>2020-04-16 15:44:27 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-04-26 13:41:29 +0100
commit14c7608311ffeda5c652694a4d5b4086b4c2e059 (patch)
tree4e1213bab9359164c94fd42385f6360851cddf75 /bitbake
parent289a63b5dc4eb53dcb6b64f59896b0d126b424a1 (diff)
downloadpoky-14c7608311ffeda5c652694a4d5b4086b4c2e059.tar.gz
bitbake: tinfoil: fix config_data mess up insane check while parsing multiple recipes
Since commit [tinfoil: Simplify remote datastore connections][1] and [tinfoil: Add back ability to parse on top of a datastore][2] applied, bitbake run command parseRecipeFile with param config_data.dsindex rather than config_data. While calling tinfoil.parse_recipe_file() with one config_data (with the same config_data.dsindex) to parse multiple recipes, it will mess up insane check. It broke update_layer.py on layerindex, here are the simplified steps: [snip] t= bb.tinfoil.Tinfoil() t.prepare() data = bb.data.createCopy(t.config_data) fn = "path_to/oe-core/meta/recipes-graphics/images/core-image-clutter.bb" t.parse_recipe_file(fn, appends=False, config_data=data) fn = "path_to/oe-core/meta/recipes-graphics/packagegroups/packagegroup-core-x11-base.bb" t.parse_recipe_file(fn, appends=False, config_data=data) | File "path_to/oe-core/meta/classes/insane.bbclass", line 1303, in __anon_1304__path_to_oe_core_meta_classes_insane_bbclass | bb.fatal("Fatal QA errors found, failing task.") [snip] In above failure, RDEPENDS is assigned `${PACKAGE_INSTALL} ${LINGUAS_INSTALL} ${IMAGE_INSTALL_DEBUGFS}' in core-image-clutter.bb, but it broke insane check on packagegroup-core-x11-base.bb >From commit [remotedata: enable transporting datastore from the client to the server][3], it create a new DataSmart to save receive_datastore's remote_data Similarly, make a copy of config_data(with different config_data.dsindex) could fix the issue. [1] http://git.openembedded.org/bitbake/commit/?id=85e03a64dd0a4ebe71009ec4bdf4192c04a9786e [2] http://git.openembedded.org/bitbake/commit/?id=4618da2094189e4d814b7d65672cb65c86c0626a [3] http://git.openembedded.org/bitbake/commit/?id=784d2f1a024efe632fc9049ce5b78692d419d938 (Bitbake rev: a3074807974536e370289c25fddcb9ad93cbc137) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/tinfoil.py1
1 files changed, 1 insertions, 0 deletions
diff --git a/bitbake/lib/bb/tinfoil.py b/bitbake/lib/bb/tinfoil.py
index 7d53608b21..8c9b6b8ca5 100644
--- a/bitbake/lib/bb/tinfoil.py
+++ b/bitbake/lib/bb/tinfoil.py
@@ -636,6 +636,7 @@ class Tinfoil:
636 if appends and appendlist == []: 636 if appends and appendlist == []:
637 appends = False 637 appends = False
638 if config_data: 638 if config_data:
639 config_data = bb.data.createCopy(config_data)
639 dscon = self.run_command('parseRecipeFile', fn, appends, appendlist, config_data.dsindex) 640 dscon = self.run_command('parseRecipeFile', fn, appends, appendlist, config_data.dsindex)
640 else: 641 else:
641 dscon = self.run_command('parseRecipeFile', fn, appends, appendlist) 642 dscon = self.run_command('parseRecipeFile', fn, appends, appendlist)