python-smartpm: multilib fixes

To fix some multilib issues, change the way the RPM backend decides
if two packages can coexist: if they have a different architecture,
automatically assume that they can coexist (which is fundamental for
multilib).

[YOCTO #3681]

(From OE-Core rev: 05fd850f09c58dba8f64f3fe1de28ed9f21890a2)

(From OE-Core rev: 03c892a02568fa8a5765d9fb569a55f17ea05f96)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Bogdan Marinescu
2013-01-29 11:05:02 +02:00
committed by Richard Purdie
parent bbc374a69b
commit 9a9848d215
2 changed files with 24 additions and 1 deletions

View File

@@ -0,0 +1,22 @@
To fix some multilib issues, change the way the RPM backend decides
if two packages can coexist: if they have a different architecture,
automatically assume that they can coexist (which is fundamental for
multilib).
Upstream-Status: Pending
Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
diff --git a/smart/backends/rpm/base.py b/smart/backends/rpm/base.py
index 6e83d40..7140c1b 100644
--- a/smart/backends/rpm/base.py
+++ b/smart/backends/rpm/base.py
@@ -228,6 +228,8 @@ class RPMPackage(Package):
return False
selfver, selfarch = splitarch(self.version)
otherver, otherarch = splitarch(other.version)
+ if selfarch != otherarch:
+ return True
selfcolor = getArchColor(selfarch)
othercolor = getArchColor(otherarch)
if (selfcolor and othercolor and selfcolor != othercolor and