diff options
author | Nicolas Dechesne <nicolas.dechesne@linaro.org> | 2021-07-22 14:46:41 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-08-06 09:59:14 +0100 |
commit | e0af8f836ca370c96b96c3f982a23e10682b6e11 (patch) | |
tree | 04967b11ea5fb7c7a4ea0ec1d0009789acf6ecb6 /scripts | |
parent | 8f3fafc0d8676f86e0b826c868c465f9955bc683 (diff) | |
download | poky-e0af8f836ca370c96b96c3f982a23e10682b6e11.tar.gz |
yocto-check-layer: improve missed dependencies
The first 2 calls to add_layer_dependencies() are here to add all
dependencies for the 'layer under test' and the additional layers
provided by the users.
In both cases, we use misssing_dependencies boolean to indicate if any
dependency is missing. But we then never really use
missing_dependencies. Instead the script is calling
add_layer_dependencies() again (for both the layer under test, and the
additional layers) to detect if there are any missing dependency. As a
result, we are trying to add again all dependencies, and we can see
that from the traces:
INFO: Detected layers:
INFO: meta-aws: LayerType.SOFTWARE, /work/oe/sources/meta-aws
INFO: checklayer: Doesn't have conf/layer.conf file, so ignoring
INFO:
INFO: Setting up for meta-aws(LayerType.SOFTWARE), /work/oe/sources/meta-aws
INFO: Adding layer meta-python
INFO: Adding layer meta-oe
INFO: Adding layer meta-networking
-->
INFO: Adding layer meta-python
INFO: meta-python is already in /work/oe/poky/master/build-checklayer/conf/bblayers.conf
INFO: Adding layer meta-oe
INFO: meta-oe is already in /work/oe/poky/master/build-checklayer/conf/bblayers.conf
INFO: Adding layer meta-networking
INFO: meta-networking is already in /work/oe/poky/master/build-checklayer/conf/bblayers.conf
<--
INFO: Getting initial bitbake variables ...
The code appears more complex than it should, and we can simply
replace the complex if statement by using missing_dependencies, and
avoid duplicating the call to add_layer_dependencies().
(From OE-Core rev: 073637cbc99c0e6c05138f248856181154f33b70)
Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fceb84f7bc472731b8f96ee1ebf0f4485943226c)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/yocto-check-layer | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/scripts/yocto-check-layer b/scripts/yocto-check-layer index deba3cb4f8..8e94a03b11 100755 --- a/scripts/yocto-check-layer +++ b/scripts/yocto-check-layer | |||
@@ -160,9 +160,7 @@ def main(): | |||
160 | if not add_layer_dependencies(bblayersconf, additional_layer, dep_layers, logger): | 160 | if not add_layer_dependencies(bblayersconf, additional_layer, dep_layers, logger): |
161 | missing_dependencies = True | 161 | missing_dependencies = True |
162 | break | 162 | break |
163 | if not add_layer_dependencies(bblayersconf, layer, dep_layers, logger) or \ | 163 | if missing_dependencies: |
164 | any(map(lambda additional_layer: not add_layer_dependencies(bblayersconf, additional_layer, dep_layers, logger), | ||
165 | additional_layers)): | ||
166 | logger.info('Skipping %s due to missing dependencies.' % layer['name']) | 164 | logger.info('Skipping %s due to missing dependencies.' % layer['name']) |
167 | results[layer['name']] = None | 165 | results[layer['name']] = None |
168 | results_status[layer['name']] = 'SKIPPED (Missing dependencies)' | 166 | results_status[layer['name']] = 'SKIPPED (Missing dependencies)' |