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.

(From OE-Core rev: 119ef2789484222b94559675a09adc399f3b6bf0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2012-09-13 23:40:29 +01:00
parent 0d67446b35
commit 25af7f6ed1
2 changed files with 2 additions and 2 deletions

View File

@ -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);
+ }
+

View File

@ -14,4 +14,4 @@ S = "${WORKDIR}/trunk"
SRCREV = "633"
PV = "0.1.8+svnr${SRCPV}"
PR = "${INC_PR}.1"
PR = "${INC_PR}.2"