From: Martin Jansa Date: Wed, 19 Jun 2024 13:59:45 +0000 (+0200) Subject: insane.bbclass: use contains in do_package_qa X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fheads%2Fjansa%2Fmaster-qa;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git insane.bbclass: use contains in do_package_qa I was wondering why WARN_QA isn't causing this issue only ERROR_QA is. It's easy to see with ALL_QA which is defined by both WARN_QA and ERROR_QA: Variable ALL_QA value is ${WARN_QA} ${ERROR_QA} but the variable depends only on ERROR_QA: List of dependencies for variable ALL_QA is ['ERROR_QA'] that's because bitbake.conf adds WARN_QA in BB_HASHEXCLUDE_COMMON but not ERROR_QA. And then ALL_QA pulls dependency on whole ERROR_QA because of this: if 'libdir' in d.getVar("ALL_QA").split(): Unfortunately this still isn't enough, with this applied I still see in bitbake-diffsigs output: List of dependencies for variable ERROR_QA is [] List of dependencies for variable oe.qa.handle_error is ['ERROR_QA', 'oe.qa.write_error'] Variable ERROR_QA value is dev-so debug-deps Variable oe.qa.handle_error value is Need to debug the parser a bit to find why it still tracks whole ERROR_QA. [YOCTO #15515] Signed-off-by: Martin Jansa --- diff --git a/meta/classes-global/insane.bbclass b/meta/classes-global/insane.bbclass index 6888fa06f00..88974673eff 100644 --- a/meta/classes-global/insane.bbclass +++ b/meta/classes-global/insane.bbclass @@ -1245,7 +1245,7 @@ python do_package_qa () { warn_checks, error_checks = parse_test_matrix("QARECIPETEST") package_qa_recipe(warn_checks, error_checks, pn, d) - if 'libdir' in d.getVar("ALL_QA").split(): + if bb.utils.contains('ALL_QA', 'libdir', True, False, d): package_qa_check_libdir(d) oe.qa.exit_if_errors(d)