[OE-core] [PATCH] lib/oe/sdk: Partially revert "sdk.py: fix conflicts of packages"

Richard Purdie richard.purdie at linuxfoundation.org
Fri Jan 22 13:06:09 UTC 2016


OE-Core rev: f2b64f725803ad8be7c2876c531e057a4fe5ca7c (poky
1362986886cc96c8cc11fb60795f729b41770414) unintentionally broke opkg/dpkg
multilib support within the SDK by making things not honour
self.install_order. This reinstates that code for opkg/dpkg but
not rpm where the original problem was.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

diff --git a/meta/lib/oe/sdk.py b/meta/lib/oe/sdk.py
index 6affa40..c4825c5 100644
--- a/meta/lib/oe/sdk.py
+++ b/meta/lib/oe/sdk.py
@@ -219,17 +219,10 @@ class OpkgSdk(Sdk):
 
         pm.update()
 
-        pkgs = []
-        pkgs_attempt = []
-        for pkg_type in pkgs_to_install:
-            if pkg_type == Manifest.PKG_TYPE_ATTEMPT_ONLY:
-                pkgs_attempt += pkgs_to_install[pkg_type]
-            else:
-                pkgs += pkgs_to_install[pkg_type]
-
-        pm.install(pkgs)
-
-        pm.install(pkgs_attempt, True)
+        for pkg_type in self.install_order:
+            if pkg_type in pkgs_to_install:
+                pm.install(pkgs_to_install[pkg_type],
+                           [False, True][pkg_type == Manifest.PKG_TYPE_ATTEMPT_ONLY])
 
     def _populate(self):
         bb.note("Installing TARGET packages")
@@ -306,17 +299,10 @@ class DpkgSdk(Sdk):
         pm.write_index()
         pm.update()
 
-        pkgs = []
-        pkgs_attempt = []
-        for pkg_type in pkgs_to_install:
-            if pkg_type == Manifest.PKG_TYPE_ATTEMPT_ONLY:
-                pkgs_attempt += pkgs_to_install[pkg_type]
-            else:
-                pkgs += pkgs_to_install[pkg_type]
-
-        pm.install(pkgs)
-
-        pm.install(pkgs_attempt, True)
+        for pkg_type in self.install_order:
+            if pkg_type in pkgs_to_install:
+                pm.install(pkgs_to_install[pkg_type],
+                           [False, True][pkg_type == Manifest.PKG_TYPE_ATTEMPT_ONLY])
 
     def _populate(self):
         bb.note("Installing TARGET packages")





More information about the Openembedded-core mailing list