summaryrefslogtreecommitdiffstats
path: root/meta-selftest/classes/base-do-configure-modified.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* oeqa/selftest/sstatetests: Fix intermitttent errors and improve performanceRichard Purdie2023-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | You could reproduce an error in this test with: bitbake core-image-minimal bitbake tzcode-native -c cleansstate oe-selftest -r sstatetests.SStatePrintdiff.test_image_minimal_vs_base_do_configure since tzcode-native isn't needed once tzdata is available and isn't rebuilt by "bitbake core-image-minimal" if it is missig. tzdata is allarch so if tzdata is built on an x86 host, a aarch64 build machine would never build tzcode-native with this set of calls. Add a --runall option to the initial bitbake invocation to force these things to be created if they're missing. This explains why some failures were occurring on the infrastructure. With that issue fixed, drop the hash mode change since I believe this fixes that issue. That restriction was hurting performance, this should allow sstate reuse for the test and improve the speed of it. (From OE-Core rev: 8f03ac39e7fe21f3d6eca35b12b203a73a15285d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* selftest/sstatetests: add tests for 'bitbake -S printdiff'Alexander Kanavin2023-10-271-0/+3
'bitbake -S printdiff' is a useful diagnostic facility for finding out why sstate is not being reused, but until now it had no tests that would ensure it works. This commit adds three basic scenarios: 1. make a change in a really basic, common recipe that is at the very root of dependency trees (quilt-native), and ensure that change is correctly discovered when building an image. 2. make a change in gcc-source recipe, which is somewhat special (operates in work-shared), and ensure that gcc-runtime builds track that down as well. 3. make a change in base_do_configure() definition from base.bbclass, which is not recipe-specific, but affects many basic recipes, and ensure that is correctly reported as well. The test itself actually runs twice: - first against a fully populated build directory, where the printdiff code is guaranteed to find the correct previous stamp that can be compared with in a predictable manner. - then in an empty build directory where the printdiff code goes to look in the sstate cache, and so the existence of the previous signature can be tested, but not the difference with it (what the exact difference would be is unpredictable as the sstate cache is indeed shared between many builds). (From OE-Core rev: 7a7d76aa8a8d590ebc99156f9f4b9535cdf868c7) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>