package.py: OEHasPackage: Add MLPREFIX to packagename

FIXES [YOCTO #12342]

When testing a Multilib image, the package manifest list contains
the fully qualified package name which includes the Multilib Prefix.
This patch adds the MLPREFIX to the package names that are passed
into the @OEHasPackage() decorator to ensure the set isdisjoint()
matches correctly.

(From OE-Core rev: a27983e0b6bde730fe501c9931119bf18b2c376b)

Signed-off-by: Saul Wold <sgw@bigsur.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit ab87e4f92305b2a664cc473869e1615cf56e0936)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
This commit is contained in:
Saul Wold authored and Steve Sakoman committed 2024-01-31 04:10:24 -10:00
1 parent 11fbbbf59a
commit 17b8581413
1 file changed
+3 -2
+3 -2
View File
@@ -38,11 +38,12 @@ class OEHasPackage(OETestDecorator):
if isinstance(self.need_pkgs, str):
self.need_pkgs = [self.need_pkgs,]
mlprefix = self.case.td.get("MLPREFIX")
for pkg in self.need_pkgs:
if pkg.startswith('!'):
unneed_pkgs.add(pkg[1:])
unneed_pkgs.add(mlprefix + pkg[1:])
else:
need_pkgs.add(pkg)
need_pkgs.add(mlprefix + pkg)
if unneed_pkgs:
msg = 'Checking if %s is not installed' % ', '.join(unneed_pkgs)