[OE-core] [PATCH] python-smartpm: multilib fixes
Bogdan Marinescu
bogdan.a.marinescu at intel.com
Mon Jan 28 15:33:29 UTC 2013
To fix some multilib issues, change the way smart's RPM backend decides
if two packages can coexist:
- don't test the "multi-version" flag on the packet. In Yocto,
almost every package can be "multi-version" in a multilib configuration.
- let two packages coexist if they have different versions OR different
architectures (which is fundamental for multilib).
[YOCTO #3681]
Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu at intel.com>
---
.../python-smartpm/smart-multilib-fixes.patch | 31 ++++++++++++++++++++
.../python/python-smartpm_1.4.1.bb | 3 +-
2 files changed, 33 insertions(+), 1 deletion(-)
create mode 100644 meta/recipes-devtools/python/python-smartpm/smart-multilib-fixes.patch
diff --git a/meta/recipes-devtools/python/python-smartpm/smart-multilib-fixes.patch b/meta/recipes-devtools/python/python-smartpm/smart-multilib-fixes.patch
new file mode 100644
index 0000000..6051ef3
--- /dev/null
+++ b/meta/recipes-devtools/python/python-smartpm/smart-multilib-fixes.patch
@@ -0,0 +1,31 @@
+smart multilib fixes
+
+To fix some multilib issues, change the way the RPM backend decides
+if two packages can coexist:
+
+ - don't test the "multi-version" flag on the packet. In Yocto,
+almost every package can be "multi-version" in a multilib configuration.
+ - let two packages coexist if they have different versions OR different
+architectures (which is fundamental for multilib).
+
+Upstream-Status: Pending
+
+Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu at intel.com>
+
+diff --git a/smart/backends/rpm/base.py b/smart/backends/rpm/base.py
+index 6e83d40..72eb8a9 100644
+--- a/smart/backends/rpm/base.py
++++ b/smart/backends/rpm/base.py
+@@ -233,9 +233,9 @@ class RPMPackage(Package):
+ if (selfcolor and othercolor and selfcolor != othercolor and
+ not sysconf.get("rpm-strict-multilib")):
+ return True
+- if not pkgconf.testFlag("multi-version", self):
+- return False
+- return selfver != otherver
++ #if not pkgconf.testFlag("multi-version", self):
++ # return False
++ return selfver != otherver or selfarch != otherarch
+
+ def matches(self, relation, version):
+ if not relation:
diff --git a/meta/recipes-devtools/python/python-smartpm_1.4.1.bb b/meta/recipes-devtools/python/python-smartpm_1.4.1.bb
index 4d0f96b..06641ad 100644
--- a/meta/recipes-devtools/python/python-smartpm_1.4.1.bb
+++ b/meta/recipes-devtools/python/python-smartpm_1.4.1.bb
@@ -11,7 +11,7 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://LICENSE;md5=393a5ca445f6965873eca0259a17f833"
DEPENDS = "python rpm"
-PR = "r7"
+PR = "r8"
SRCNAME = "smart"
SRC_URI = "\
@@ -25,6 +25,7 @@ SRC_URI = "\
file://smart-tmpdir.patch \
file://smart-metadata-match.patch \
file://smart-improve-error-reporting.patch \
+ file://smart-multilib-fixes.patch \
"
SRC_URI[md5sum] = "573ef32ba177a6b3c4bf7ef04873fcb6"
--
1.7.10.4
More information about the Openembedded-core
mailing list