]> git.ipfire.org Git - ipfire-3.x.git/commitdiff
pakfire: Add two patches from upstream.
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 17 Apr 2012 15:43:09 +0000 (17:43 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 17 Apr 2012 15:43:09 +0000 (17:43 +0200)
Look inside the files to learn what they are about.

pakfire/pakfire.nm
pakfire/patches/pakfire-internalize-index.patch [new file with mode: 0644]
pakfire/patches/pakfire-provides-soname.patch [new file with mode: 0644]

index 26c7bc5b54641652a8b5d66e6c9859c86f79b509..a1913b023f29c3a382230d8001130e4ea67919b1 100644 (file)
@@ -5,7 +5,7 @@
 
 name       = pakfire
 version    = 0.9.22
-release    = 1
+release    = 2
 
 maintainer = Michael Tremer <michael.tremer@ipfire.org>
 groups     = System/Packaging
diff --git a/pakfire/patches/pakfire-internalize-index.patch b/pakfire/patches/pakfire-internalize-index.patch
new file mode 100644 (file)
index 0000000..3e3e8b6
--- /dev/null
@@ -0,0 +1,32 @@
+commit b856696a0a8173eaacdd03833971272de06118ce
+Author: Michael Tremer <michael.tremer@ipfire.org>
+Date:   Sat Apr 14 21:16:30 2012 +0200
+
+    Fix accessing index data after the transaction is done.
+
+diff --git a/python/pakfire/client/builder.py b/python/pakfire/client/builder.py
+index a039e65..2ade5dc 100644
+--- a/python/pakfire/client/builder.py
++++ b/python/pakfire/client/builder.py
+@@ -334,6 +334,7 @@ class ClientBuilder(object):
+               pkgs = []
+               for pkg in installed_packages:
++                      assert pkg.uuid, "%s has got no UUID"
+                       pkgs.append((pkg.friendly_name, pkg.uuid))
+               return self.conn.build_upload_buildroot(self.build_id, pkgs)
+diff --git a/python/pakfire/repository/system.py b/python/pakfire/repository/system.py
+index 642c4bd..5dcdd04 100644
+--- a/python/pakfire/repository/system.py
++++ b/python/pakfire/repository/system.py
+@@ -52,6 +52,9 @@ class RepositorySystem(base.RepositoryFactory):
+               # Commit the database to disk.
+               self.db.commit()
++              # Make sure that all data in the index is accessable.
++              self.index.optimize()
++
+       def add_package(self, pkg):
+               # Add package to the database.
+               self.db.add_package(pkg)
diff --git a/pakfire/patches/pakfire-provides-soname.patch b/pakfire/patches/pakfire-provides-soname.patch
new file mode 100644 (file)
index 0000000..8cc8b61
--- /dev/null
@@ -0,0 +1,23 @@
+commit cf4f218f42c2a43a520eac4f3a6251d557dcbe80
+Author: Michael Tremer <michael.tremer@ipfire.org>
+Date:   Tue Apr 17 17:36:52 2012 +0200
+
+    find-provides: Accept bogous soname.
+    
+    This is a kind of weird bug. Some libs are "versioned" by
+    using their SONAME for symbol maps. This caused trouble
+    because the SONAME was not added to the list of provides
+    which is now changed by this commit.
+
+diff --git a/tools/find-provides b/tools/find-provides
+index 2e138ba..06b3c47 100755
+--- a/tools/find-provides
++++ b/tools/find-provides
+@@ -69,7 +69,6 @@ for file in ${binary_files}; do
+               /Version definitions:/ { START=1; }
+               /^[0-9]/ && (START==1) { print $4; }
+               /^$/ { START=0; }' | \
+-                grep -v ${soname} | \
+                 while read symbol ; do
+                     echo "${soname}(${symbol})$(${is_64} && echo ${mark64} | sed 's/()//')"
+                 done