[OE-core] [PATCH 17/28] lib/oe/package_manager.py: put the sdk_provides_dummy_target upfront

Alexander Kanavin alex.kanavin at gmail.com
Wed Jan 8 13:27:48 UTC 2020

Otherwise, the package utilizing this architecure does not get
properly prioritized by rpm/dnf. This isn't seen single-lib builds
(as the architecture ends up upfront anyway), but is triggered in
multulib where the architecture may end up in the middle of the list
due to multilib expansion/trimming duplicates.

Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
 meta/lib/oe/package_manager.py | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index 4ff19cf09c4..e15e3c4a315 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -768,6 +768,8 @@ class RpmPM(PackageManager):
         # This prevents accidental matching against libsolv's built-in policies
         if len(archs) <= 1:
             archs = archs + ["bogusarch"]
+        # This architecture needs to be upfront so that packages using it are properly prioritized
+        archs = ["sdk_provides_dummy_target"] + archs
         confdir = "%s/%s" %(self.target_rootfs, "etc/dnf/vars/")
         open(confdir + "arch", 'w').write(":".join(archs))

More information about the Openembedded-core mailing list