]> code.ossystems Code Review - openembedded-core.git/commitdiff
rpm: Raise the number of potential rescans before aborting with a dep loop
authorMark Hatle <mark.hatle@windriver.com>
Thu, 2 Sep 2010 18:40:45 +0000 (13:40 -0500)
committerRichard Purdie <rpurdie@linux.intel.com>
Fri, 3 Sep 2010 12:59:01 +0000 (13:59 +0100)
Within Poky we have a large number of self-referencing packages.  So we
need to raise the number of rescans before triggering a dependency loop
error.  100 seems like a reasonable number.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
meta/recipes-devtools/rpm/rpm/rpm-nrescan.patch [new file with mode: 0644]
meta/recipes-devtools/rpm/rpm_5.1.10.bb

diff --git a/meta/recipes-devtools/rpm/rpm/rpm-nrescan.patch b/meta/recipes-devtools/rpm/rpm/rpm-nrescan.patch
new file mode 100644 (file)
index 0000000..db4f8b3
--- /dev/null
@@ -0,0 +1,17 @@
+We need to increase the number of dependency rescans as we have a large
+number of self-referencing dependencies within Poky.  100 seem reasonable.
+
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+
+diff -ur rpm-5.1.10.orig/lib/depends.c rpm-5.1.10/lib/depends.c
+--- rpm-5.1.10.orig/lib/depends.c      2010-08-20 17:12:43.000000000 -0500
++++ rpm-5.1.10/lib/depends.c   2010-09-02 13:37:21.966116309 -0500
+@@ -2310,7 +2310,7 @@
+     int numOrderList;
+     int npeer = 128;  /* XXX more than deep enough for now. */
+     int * peer = memset(alloca(npeer*sizeof(*peer)), 0, (npeer*sizeof(*peer)));
+-    int nrescans = 10;
++    int nrescans = 100;
+     int _printed = 0;
+     char deptypechar;
+     size_t tsbytes;
index d4b5a91668bf6a2c39f74d1b78a429229ace9ba4..fc2e837b9ab9c961c56a8ef7385b61fbece31116 100644 (file)
@@ -3,11 +3,12 @@ DESCRIPTION_rpm-build = "The RPM Package Manager rpmbuild and related commands."
 HOMEPAGE = "http://rpm5.org/"
 LICENSE = "LGPL 2.1"
 DEPENDS = "zlib perl popt beecrypt python libpcre elfutils"
-PR = "r3"
+PR = "r4"
 
 SRC_URI = "http://www.rpm5.org/files/rpm/rpm-5.1/SNAPSHOT/${BPN}-${PV}.tar.gz \
            file://hdraddorappend.patch \
            file://export-rpmbag-h.patch \
+          file://rpm-nrescan.patch \
           file://remove-compiled-tests.patch;apply=no \
           file://perfile_rpmdeps.sh \
          "