opkg: some fixes/changes for handling packet recommends
[vuplus_openvuplus_3.0] / meta-openvuplus / recipes-devtools / opkg / opkg / 0009-don-t-add-recommends-pkgs-to-depended-upon-by.patch
diff --git a/meta-openvuplus/recipes-devtools/opkg/opkg/0009-don-t-add-recommends-pkgs-to-depended-upon-by.patch b/meta-openvuplus/recipes-devtools/opkg/opkg/0009-don-t-add-recommends-pkgs-to-depended-upon-by.patch
new file mode 100644 (file)
index 0000000..e581dc0
--- /dev/null
@@ -0,0 +1,26 @@
+While removing a package with opkg, the process shouldn't be blocked if
+another package RECOMMENDS the package wanted to be removed. This is
+because, while generating the dependencies, opkg adds dependencies to
+depended_upon_by even if dependency's type is RECOMMEND. The fix is to
+skip dependencies of type RECOMMEND while constructing depended_upon_by.
+
+Bug info:
+https://bugzilla.yoctoproject.org/show_bug.cgi?id=2431
+
+Upstream-Status: Pending
+Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
+
+Index: trunk/libopkg/pkg_depends.c
+===================================================================
+--- trunk.orig/libopkg/pkg_depends.c   2011-09-03 05:54:56.000000000 +0300
++++ trunk/libopkg/pkg_depends.c        2012-10-20 22:23:03.783573202 +0300
+@@ -785,8 +785,7 @@
+       for (i = 0; i < count; i++) {
+               depends = &pkg->depends[i];
+               if (depends->type != PREDEPEND
+-                  && depends->type != DEPEND
+-                  && depends->type != RECOMMEND)
++                  && depends->type != DEPEND)
+                       continue;
+               for (j = 0; j < depends->possibility_count; j++) {
+                       ab_depend = depends->possibilities[j]->pkg;