[arch-commits] Commit in libarchive/trunk (3 files)

Dave Reisner dreisner at nymeria.archlinux.org
Wed Feb 27 21:51:19 UTC 2013


    Date: Wednesday, February 27, 2013 @ 22:51:19
  Author: dreisner
Revision: 178866

upgpkg: libarchive 3.1.2-1

soname bump: https://www.archlinux.org/todo/libarchive-31x-rebuild/

Added:
  libarchive/trunk/0001-mtree-fix-line-filename-length-calculation.patch
Modified:
  libarchive/trunk/PKGBUILD
Deleted:
  libarchive/trunk/libarchive-3.0.x-fix-mtree-writer.patch

-------------------------------------------------------+
 0001-mtree-fix-line-filename-length-calculation.patch |   29 +++++++++++++
 PKGBUILD                                              |   31 +++++++-------
 libarchive-3.0.x-fix-mtree-writer.patch               |   34 ----------------
 3 files changed, 45 insertions(+), 49 deletions(-)

Added: 0001-mtree-fix-line-filename-length-calculation.patch
===================================================================
--- 0001-mtree-fix-line-filename-length-calculation.patch	                        (rev 0)
+++ 0001-mtree-fix-line-filename-length-calculation.patch	2013-02-27 21:51:19 UTC (rev 178866)
@@ -0,0 +1,29 @@
+From e65bf287f0133426b26611fe3e80b51267987106 Mon Sep 17 00:00:00 2001
+From: Dave Reisner <dreisner at archlinux.org>
+Date: Thu, 21 Feb 2013 19:01:06 -0500
+Subject: [PATCH] mtree: fix line filename length calculation. Fixes #301.
+ Signed-off-by: Andres Mejia <amejia004 at gmail.com>
+
+---
+ libarchive/archive_write_set_format_mtree.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libarchive/archive_write_set_format_mtree.c b/libarchive/archive_write_set_format_mtree.c
+index 9c0613c..f37f723 100644
+--- a/libarchive/archive_write_set_format_mtree.c
++++ b/libarchive/archive_write_set_format_mtree.c
+@@ -1855,9 +1855,9 @@ mtree_entry_setup_filenames(struct archive_write *a, struct mtree_entry *file,
+ 		return (ret);
+ 	}
+ 
+-	/* Make a basename from dirname and slash */
++	/* Make a basename from file->parentdir.s and slash */
+ 	*slash  = '\0';
+-	file->parentdir.length = slash - dirname;
++	file->parentdir.length = slash - file->parentdir.s;
+ 	archive_strcpy(&(file->basename),  slash + 1);
+ 	return (ret);
+ }
+-- 
+1.8.1.4
+

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2013-02-27 20:55:22 UTC (rev 178865)
+++ PKGBUILD	2013-02-27 21:51:19 UTC (rev 178866)
@@ -2,36 +2,37 @@
 # Maintainer: Dan McGee <dan at archlinux.org>
 
 pkgname=libarchive
-pkgver=3.0.4
-pkgrel=2
+pkgver=3.1.2
+pkgrel=1
 pkgdesc="library that can create and read several streaming archive formats"
 arch=('i686' 'x86_64')
-url="http://libarchive.googlecode.com/"
+url="http://libarchive.org/"
 license=('BSD')
-depends=('zlib' 'bzip2' 'xz>=5.0.0' 'acl' 'openssl>=1.0.0' 'expat')
-source=("https://github.com/downloads/libarchive/libarchive/libarchive-${pkgver}.tar.gz"
-        libarchive-3.0.x-fix-mtree-writer.patch)
-md5sums=('af443ca9a10ddbcbf00f7ae34ca7fc16'
-         '6d36a50a7282db6576bd1fbc23f08055')
-sha256sums=('76e8d7c7b100ec4071e48c1b7d3f3ea1d22b39db3e45b7189f75b5ff4df90fac'
-            'f0081c0d7d7875fc91c683b14fe4876d56b6585f45be9181c755eba4b522f5b9')
+depends=('acl' 'attr' 'bzip2' 'expat' 'lzo2' 'openssl' 'xz' 'zlib')
+source=("http://libarchive.org/downloads/$pkgname-$pkgver.tar.gz"
+        '0001-mtree-fix-line-filename-length-calculation.patch')
+md5sums=('efad5a503f66329bb9d2f4308b5de98a'
+         'fda89c145bbcd793a96b06b463ef6a72')
 
+build() {
+  cd "$pkgname-$pkgver"
 
-build() {
-  cd "$srcdir/$pkgname-$pkgver"
-  patch -Np1 -i $srcdir/libarchive-3.0.x-fix-mtree-writer.patch
+  # https://code.google.com/p/libarchive/issues/detail?id=301
+  # upstream commit e65bf287f0133426b26611fe3e80b51267987106
+  patch -Np1 -i "$srcdir/0001-mtree-fix-line-filename-length-calculation.patch"
+
   ./configure --prefix=/usr --without-xml2
   make
 }
 
 check() {
-  cd "$srcdir/$pkgname-$pkgver"
+  cd "$pkgname-$pkgver"
 
   make check
 }
 
 package() {
-  cd "$srcdir/$pkgname-$pkgver"
+  cd "$pkgname-$pkgver"
   make DESTDIR="$pkgdir" install
 
   install -D -m644 COPYING "$pkgdir"/usr/share/licenses/libarchive/COPYING

Deleted: libarchive-3.0.x-fix-mtree-writer.patch
===================================================================
--- libarchive-3.0.x-fix-mtree-writer.patch	2013-02-27 20:55:22 UTC (rev 178865)
+++ libarchive-3.0.x-fix-mtree-writer.patch	2013-02-27 21:51:19 UTC (rev 178866)
@@ -1,34 +0,0 @@
---- a/libarchive/archive_write_set_format_mtree.c
-+++ b/libarchive/archive_write_set_format_mtree.c
-@@ -887,6 +887,19 @@ write_entry(struct archive_write *a, struct mtree_entry *me)
- 
- 	archive_string_empty(&mtree->ebuf);
- 	str = (mtree->indent)? &mtree->ebuf : &mtree->buf;
-+
-+	/* If the pathname does not have a path separator, we have to
-+	 * add "./" to the head of the pathename because mtree reader
-+	 * will suppose that it is v1(a.k.a classic) mtree format and
-+	 * change the directory unexpectedly and so it will make a wrong
-+	 * path. */
-+	if (strchr(me->pathname, '/') == NULL &&
-+	    strcmp(me->pathname, ".") != 0) {
-+		archive_strcat(str, "./");
-+	}
-+	/* mtree reader does not accept an absolute path. */
-+	else if (me->pathname[0] == '/')
-+		archive_strappend_char(str, '.');
- 	mtree_quote(str, me->pathname);
- 	keys = get_keys(mtree, me);
- 	if ((keys & F_NLINK) != 0 &&
---- a/libarchive/test/test_read_format_mtree.c
-+++ b/libarchive/test/test_read_format_mtree.c
-@@ -37,7 +37,8 @@ test_read_format_mtree1(void)
- 	 * without relying on overflow.  This assumes that long long
- 	 * is at least 64 bits. */
- 	static const long long max_int64 = ((((long long)1) << 62) - 1) + (((long long)1) << 62);
--	time_t min_time, t;
-+	time_t min_time;
-+	volatile time_t t;
- 
- 	extract_reference_file(reffile);
- 
\ No newline at end of file




More information about the arch-commits mailing list