]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commit
lib/recipeutils: add a function to determine recipes with shared include files
authorAlexander Kanavin <alex@linutronix.de>
Wed, 17 Jul 2024 18:22:14 +0000 (20:22 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 22 Jul 2024 15:52:58 +0000 (16:52 +0100)
commit2400920f8b84cca9d6c1f6a2e850630554fe00fa
treeae23dec663e30b7a90ccd1baf8ce2e3d56a996f2
parente86aa26d209eb9809198f6dd40cd058366318e3d
lib/recipeutils: add a function to determine recipes with shared include files

This functionality is needed for 'lockstep version upgrades' where several
recipes need to be upgraded at the same time to produce a buildable
outcome.

The function itself obtains BBINCLUDED for each recipe and then massages
the data until it takes the form of a list of sets:

[{'cmake','cmake-native'},
 {'qemu','qemu-native','qemu-system-native'},
... ]

There's also a selftest that checks for the above.

Unfortunately this won't detect mutually exclusive recipes like mesa and mesa-gl
as they're chosen with PREFERRED_PROVIDER and can't be enabled in the same build
at the same time. ('devtool upgrade' will also accept just one of them but not the other)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/lib/oe/recipeutils.py
meta/lib/oeqa/selftest/cases/distrodata.py