@@ -18,14 +18,17 @@ ALLOW_EMPTY:${PN} = "1"
PR[vardeps] += "DUMMYPROVIDES"
PR[vardeps] += "DUMMYPROVIDES_PACKAGES"
+DUMMYMAXVER ??= "999.9-r9"
DUMMYPROVIDES_PACKAGES ??= ""
DUMMYPROVIDES_PACKAGES_FILTERED = "${@' '.join([pkg for pkg in d.getVar('DUMMYPROVIDES_PACKAGES').split() if d.getVar('IMAGE_INSTALL') is None or 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_MAXVER = "${@' '.join(['{} (= {})'.format(pkg, d.getVar('DUMMYMAXVER')) for pkg in d.getVar('DUMMYPROVIDES_PACKAGES_MULTILIB').split()]) + d.getVar('DUMMYPROVIDES')}"
+
DUMMYPROVIDES += "${DUMMYPROVIDES_PACKAGES_MULTILIB}"
python populate_packages:prepend() {
p = d.getVar("PN")
- d.appendVar("RPROVIDES:%s" % p, "${DUMMYPROVIDES}")
+ d.appendVar("RPROVIDES:%s" % p, "${DUMMYPROVIDES_MAXVER}")
d.appendVar("RCONFLICTS:%s" % p, "${DUMMYPROVIDES_PACKAGES_MULTILIB}")
d.appendVar("RREPLACES:%s" % p, "${DUMMYPROVIDES_PACKAGES_MULTILIB}")
}
Some of the packages require versioned providers (DEPENDS: perl (>= 5.38) is an example and for such packages do_populate_sdk fails because dummy packages provided unversioned packages (PROVIDES: perl) which doesn't meet the version requirement. Specify 999.9-r9 version for such provides to work this around Fixes [Yocto #14995] Signed-off-by: Pavel Zhukov <pavel@zhukoff.net> --- meta/recipes-core/meta/dummy-sdk-package.inc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)