[oe-commits] Laurentiu Palcu : lib/oe/package_manager.py: RpmPM: fix issue with multilib builds

git at git.openembedded.org git at git.openembedded.org
Tue Feb 11 11:57:05 UTC 2014


Module: openembedded-core.git
Branch: master-next
Commit: 730d675090eec5c03e444f0448d96a52035d0bef
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=730d675090eec5c03e444f0448d96a52035d0bef

Author: Laurentiu Palcu <laurentiu.palcu at intel.com>
Date:   Mon Feb 10 09:32:04 2014 +0200

lib/oe/package_manager.py: RpmPM: fix issue with multilib builds

Use python sets instead of lists, to avoid duplicates. When doing a
multilib build, "smart channel --add" fails because it tries to add
'all' channel twice.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu at intel.com>

---

 meta/lib/oe/package_manager.py | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index dfcb0ef..49b5ac8 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -187,19 +187,18 @@ class RpmPM(PackageManager):
                                 self.ml_os_list['default'])
 
         # List must be prefered to least preferred order
-        default_platform_extra = list()
-        platform_extra = list()
+        default_platform_extra = set()
+        platform_extra = set()
         bbextendvariant = self.d.getVar('BBEXTENDVARIANT', True) or ""
         for mlib in self.ml_os_list:
             for arch in self.ml_prefix_list[mlib]:
                 plt = arch.replace('-', '_') + '-.*-' + self.ml_os_list[mlib]
                 if mlib == bbextendvariant:
-                    if plt not in default_platform_extra:
-                        default_platform_extra.append(plt)
+                        default_platform_extra.add(plt)
                 else:
-                    if plt not in platform_extra:
-                        platform_extra.append(plt)
-        platform_extra = default_platform_extra + platform_extra
+                        platform_extra.add(plt)
+
+        platform_extra = platform_extra.union(default_platform_extra)
 
         self._create_configs(platform, platform_extra)
 



More information about the Openembedded-commits mailing list