[oe-commits] Richard Purdie : opkg: Fix package dependency issue for preinsts

git at git.openembedded.org git at git.openembedded.org
Fri Sep 14 08:57:09 UTC 2012


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

Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date:   Thu Sep 13 23:40:29 2012 +0100

opkg: Fix package dependency issue for preinsts

When processing dependencies, we need to look for both the SW_INSTALL and
SW_UNKNOWN states. If we don't do this, dependencies can be missed
and preinst scripts can run before dependencies are all installed.

This leads to package installation errors for packages like dbus-1
and associated user permission errors.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
Signed-off-by: Saul Wold <sgw at linux.intel.com>

---

 .../opkg/opkg/fix_installorder.patch               |    2 +-
 meta/recipes-devtools/opkg/opkg_svn.bb             |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-devtools/opkg/opkg/fix_installorder.patch b/meta/recipes-devtools/opkg/opkg/fix_installorder.patch
index 9dd10b2..6a7e6db 100644
--- a/meta/recipes-devtools/opkg/opkg/fix_installorder.patch
+++ b/meta/recipes-devtools/opkg/opkg/fix_installorder.patch
@@ -147,7 +147,7 @@ Index: trunk/libopkg/pkg_depends.c
 +							       dependence_to_satisfy, 0);
 +               /* Being that I can't test constraing in pkg_hash, I will test it here */
 +	       if (satisfying_pkg != NULL && satisfying_pkg != pkg) {
-+                  if (pkg_constraint_satisfied(satisfying_pkg, dependence_to_satisfy) && satisfying_pkg->state_want == SW_INSTALL)
++                  if (pkg_constraint_satisfied(satisfying_pkg, dependence_to_satisfy) && (satisfying_pkg->state_want == SW_INSTALL || satisfying_pkg->state_want == SW_UNKNOWN))
 +	              pkg_vec_insert(satisfiers, satisfying_pkg);
 +               }
 +
diff --git a/meta/recipes-devtools/opkg/opkg_svn.bb b/meta/recipes-devtools/opkg/opkg_svn.bb
index a0667ac..4146b7e 100644
--- a/meta/recipes-devtools/opkg/opkg_svn.bb
+++ b/meta/recipes-devtools/opkg/opkg_svn.bb
@@ -14,4 +14,4 @@ S = "${WORKDIR}/trunk"
 SRCREV = "633"
 PV = "0.1.8+svnr${SRCPV}"
 
-PR = "${INC_PR}.1"
+PR = "${INC_PR}.2"





More information about the Openembedded-commits mailing list