]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commit
devtool: process local files only for the main branch
authorAlexander Kanavin <alex.kanavin@gmail.com>
Fri, 30 Dec 2022 18:38:50 +0000 (19:38 +0100)
committerSteve Sakoman <steve@sakoman.com>
Wed, 11 Jan 2023 16:07:36 +0000 (06:07 -1000)
commitb2dfb2fe86de887d0239078ded0a4f9e8c677d83
tree1e744904d387df57cd77bf67ed80c27d551060c6
parentdab90e4b278f6b12a21348aecf3ad70a8b6b76f7
devtool: process local files only for the main branch

devtool modify/upgrade are not currently equipped to handle conditional local files
in SRC_URI, and provide only the main no-override set in a workspace under
source/component/oe-local-files/ (this is done via meta/classes/devtool-source.bbclass).

On the other hand, updating the changes from workspace into a recipe
is run iteratively against all overrides; this works for patches (as they
all are directed into their own override branches in the workspace
git source tree), but breaks down when trying to match local files
in a workspace against local files in overridden SRC_URI lists, resulting in
bad recipe breakage.

(there's an additional twist here: existing code has a guard against this
but the guard relies on metadata in workspace .bbappend that is only there
in modify operations, but not upgrades. This commit replaces the guard
with a general check that will work everywhere).

Implementing multiple sets of local files is significant work; let's for now
simply not touch local files in recipes except when on the no-override variant.

Also, adjust the selftest cases to include conditional local files in sample
recipes, so the situation is covered by the tests.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3a8654b860fa98f94e80c3c3fff359ffed14bbe7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
meta-selftest/recipes-test/devtool/devtool-test-local/file3 [new file with mode: 0644]
meta-selftest/recipes-test/devtool/devtool-test-local_6.03.bb
meta-selftest/recipes-test/devtool/devtool-test-localonly.bb
meta-selftest/recipes-test/devtool/devtool-test-localonly/file3 [new file with mode: 0644]
scripts/lib/devtool/standard.py