if packages is provided by dummysdk and in the same time marked for installation with IMAGE_INSTALL it causes conflict in apt because virtual providers are not taken into account if package is asked to be installed explicitly. Filter such packages from provides/conflicts to workaround this problem. This workaround brakes RPM usecase because of file conlicts with DUMMYPROVIDES, use DUMMYPROVIDES_PACKAGES_MULTILIB instead (which doesn't include file based conflicts). While this is needed for the case of package_deb only adding it for all package managers to not complicate the code.
Fixes: [Yocto #13338] [Yocto #14066] Fixes: The following information may help to resolve the situation: The following packages have unmet dependencies: target-sdk-provides-dummy : Conflicts: bash E: Unable to correct problems, you have held broken packages. Signed-off-by: Pavel Zhukov <pa...@zhukoff.net> --- meta/recipes-core/meta/dummy-sdk-package.inc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/meta/recipes-core/meta/dummy-sdk-package.inc b/meta/recipes-core/meta/dummy-sdk-package.inc index bd26e39ad3..6ccafbf8bc 100644 --- a/meta/recipes-core/meta/dummy-sdk-package.inc +++ b/meta/recipes-core/meta/dummy-sdk-package.inc @@ -19,13 +19,14 @@ PR[vardeps] += "DUMMYPROVIDES" PR[vardeps] += "DUMMYPROVIDES_PACKAGES" DUMMYPROVIDES_PACKAGES ??= "" -DUMMYPROVIDES_PACKAGES_MULTILIB = "${@' '.join([multilib_pkg_extend(d, pkg) for pkg in d.getVar('DUMMYPROVIDES_PACKAGES').split()])}" +DUMMYPROVIDES_PACKAGES_FILTERED = "${@' '.join([pkg for pkg in d.getVar('DUMMYPROVIDES_PACKAGES').split() if d.getVar('IMAGE_INSTALL') is not None and pkg not in d.getVar('IMAGE_INSTALL').split()])}" +DUMMYPROVIDES_PACKAGES_MULTILIB = "${@' '.join([multilib_pkg_extend(d, pkg) for pkg in d.getVar('DUMMYPROVIDES_PACKAGES_FILTERED').split()])}" DUMMYPROVIDES += "${DUMMYPROVIDES_PACKAGES_MULTILIB}" python populate_packages:prepend() { p = d.getVar("PN") d.appendVar("RPROVIDES:%s" % p, "${DUMMYPROVIDES}") - d.appendVar("RCONFLICTS:%s" % p, "${DUMMYPROVIDES}") + d.appendVar("RCONFLICTS:%s" % p, "${DUMMYPROVIDES_PACKAGES_MULTILIB}") d.appendVar("RREPLACES:%s" % p, "${DUMMYPROVIDES_PACKAGES_MULTILIB}") } -- 2.41.0
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#188690): https://lists.openembedded.org/g/openembedded-core/message/188690 Mute This Topic: https://lists.openembedded.org/mt/101758725/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-