]> code.ossystems Code Review - openembedded-core.git/commit
base: Add MultiConfigParsed handler to deal with unstable build signatures
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 6 Jul 2017 11:54:15 +0000 (12:54 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 6 Jul 2017 15:47:10 +0000 (16:47 +0100)
commit7267e7c000c76c44d09835d4cd2bc485b6a39a2a
treeddf038e100afbff7ea7b0bc11de6de7bf1bef20b
parent2d7a58ef7a9597fde868a0582153d1f9a3007f1e
base: Add MultiConfigParsed handler to deal with unstable build signatures

This uses the newly added MultiConfigParsed event to handle problems where
checksums in multiconfig build were not fuctioning as expected.

The issue arises around SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS which contains
entries like:

* gcc-cross-${TARGET_ARCH}->virtual/${TARGET_PREFIX}libc-for-gcc
* gcc-cross-${TARGET_ARCH}->linux-libc-headers

These need to be expanded in the multiconfig data store but then placed
into the shared main datastore used by the siggen code. The only other
alternative would be a siggen instance for each multiconfig however that
seemed even more complex and invasive.

In real world usage, this issue would mean a qemux86 base config with
other armv5 and armv7 configs (e.g. beaglebone and qemuarm) would
try and build gcc-cross twice since dependencies normaly excluded
(e.g. linux-libc-headers) would now be included. This breaks sstate reuse
as well as breaking builds unless separate tmpdirs are used.

This patch adds all the entries for each multiconfig. Whilst there may
be duplicates, this shouldn't be an issue.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/base.bbclass