Accepting request 130425 from GNOME:Next
Update to 3.0.4... dependency for upcoming file-roller in Factory OBS-URL: https://build.opensuse.org/request/show/130425 OBS-URL: https://build.opensuse.org/package/show/Archiving/libarchive?expand=0&rev=13
This commit is contained in:
parent
320637aa1f
commit
526e41912d
@ -1 +1 @@
|
||||
libarchive2
|
||||
libarchive12
|
||||
|
@ -1,59 +0,0 @@
|
||||
---
|
||||
cpio/cpio.c | 10 +++++++---
|
||||
libarchive/archive_write_disk.c | 8 +++++---
|
||||
2 files changed, 12 insertions(+), 6 deletions(-)
|
||||
|
||||
Index: cpio/cpio.c
|
||||
===================================================================
|
||||
--- cpio/cpio.c.orig
|
||||
+++ cpio/cpio.c
|
||||
@@ -38,8 +38,11 @@ __FBSDID("$FreeBSD: src/usr.bin/cpio/cpi
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
#include <sys/stat.h>
|
||||
#endif
|
||||
-#ifdef HAVE_SYS_TIME_H
|
||||
-#include <sys/time.h>
|
||||
+#ifdef HAVE_SYS_UTIME_H
|
||||
+#include <sys/utime.h>
|
||||
+#endif
|
||||
+#ifdef HAVE_UTIME_H
|
||||
+#include <utime.h>
|
||||
#endif
|
||||
#ifdef HAVE_ERRNO_H
|
||||
#include <errno.h>
|
||||
@@ -786,7 +789,8 @@ restore_time(struct cpio *cpio, struct a
|
||||
}
|
||||
|
||||
#ifdef HAVE_LUTIMES
|
||||
- if (lutimes(name, times) != 0)
|
||||
+ if ((lutimes(name, times) != 0) && (errno==ENOSYS) &&
|
||||
+ (!S_ISLNK(archive_entry_mode(entry)) && utimes(name, times) != 0))
|
||||
#else
|
||||
if ((AE_IFLNK != archive_entry_filetype(entry))
|
||||
&& utimes(name, times) != 0)
|
||||
Index: libarchive/archive_write_disk.c
|
||||
===================================================================
|
||||
--- libarchive/archive_write_disk.c.orig
|
||||
+++ libarchive/archive_write_disk.c
|
||||
@@ -1265,7 +1265,9 @@ _archive_write_close(struct archive *_a)
|
||||
times[1].tv_sec = p->mtime;
|
||||
times[1].tv_usec = p->mtime_nanos / 1000;
|
||||
#ifdef HAVE_LUTIMES
|
||||
- lutimes(p->name, times);
|
||||
+ if ((lutimes(p->name, times) != 0) && (errno==ENOSYS) && (!S_ISLNK(p->mode))) {
|
||||
+ utimes(p->name, times);
|
||||
+ }
|
||||
#else
|
||||
utimes(p->name, times);
|
||||
#endif
|
||||
@@ -1886,8 +1888,8 @@ set_time(int fd, int mode, const char *n
|
||||
(void)fd; /* UNUSED */
|
||||
#endif
|
||||
#ifdef HAVE_LUTIMES
|
||||
- (void)mode; /* UNUSED */
|
||||
- return (lutimes(name, times));
|
||||
+ return ((lutimes(name, times) != 0) && (errno==ENOSYS) &&
|
||||
+ (!S_ISLNK(mode)) && (utimes(name,mode) != 0));
|
||||
#else
|
||||
if (S_ISLNK(mode))
|
||||
return (0);
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:13993e0ffbd121ccda46ea226b1f8eac218de0fa8da7d8b1f998093d5c32a72d
|
||||
size 1410485
|
3
libarchive-3.0.4.tar.gz
Normal file
3
libarchive-3.0.4.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:76e8d7c7b100ec4071e48c1b7d3f3ea1d22b39db3e45b7189f75b5ff4df90fac
|
||||
size 3632806
|
58
libarchive-fix-checks.patch
Normal file
58
libarchive-fix-checks.patch
Normal file
@ -0,0 +1,58 @@
|
||||
From da8ac32da9e5ee4a27674de4442e24c26cb2aa6a Mon Sep 17 00:00:00 2001
|
||||
From: Dan McGee <dan@archlinux.org>
|
||||
Date: Tue, 27 Mar 2012 17:22:40 -0500
|
||||
Subject: [PATCH] Fixes for GCC 4.7.0
|
||||
|
||||
Fixes the following compile error exposed with GCC 4.7.0:
|
||||
|
||||
libarchive/archive_string.c: In function 'cesu8_to_unicode':
|
||||
libarchive/archive_string.c:2450:11: error: 'wc' may be used uninitialized in this function [-Werror=uninitialized]
|
||||
cc1: all warnings being treated as errors
|
||||
|
||||
As well as a test failure that depends on signed integer wraparound,
|
||||
which is a very bad thing to do in C [1]. Mark the intermediate result
|
||||
as volatile to prevent the compiler optimizing away the arithmetic and
|
||||
the logical test.
|
||||
|
||||
[1] http://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/Signed-Overflow-Examples.html
|
||||
---
|
||||
libarchive/archive_string.c | 3 ++-
|
||||
libarchive/test/test_read_format_mtree.c | 3 ++-
|
||||
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/libarchive/archive_string.c b/libarchive/archive_string.c
|
||||
index 2728a37..2b56a48 100644
|
||||
--- a/libarchive/archive_string.c
|
||||
+++ b/libarchive/archive_string.c
|
||||
@@ -2447,11 +2447,12 @@ struct archive_string_conv *
|
||||
static int
|
||||
cesu8_to_unicode(uint32_t *pwc, const char *s, size_t n)
|
||||
{
|
||||
- uint32_t wc, wc2;
|
||||
+ uint32_t wc = 0;
|
||||
int cnt;
|
||||
|
||||
cnt = _utf8_to_unicode(&wc, s, n);
|
||||
if (cnt == 3 && IS_HIGH_SURROGATE_LA(wc)) {
|
||||
+ uint32_t wc2 = 0;
|
||||
if (n - 3 < 3) {
|
||||
/* Invalid byte sequence. */
|
||||
goto invalid_sequence;
|
||||
diff --git a/libarchive/test/test_read_format_mtree.c b/libarchive/test/test_read_format_mtree.c
|
||||
index 0d86bd4..a5d7feb 100644
|
||||
--- a/libarchive/test/test_read_format_mtree.c
|
||||
+++ b/libarchive/test/test_read_format_mtree.c
|
||||
@@ -37,7 +37,8 @@
|
||||
* 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);
|
||||
|
||||
--
|
||||
1.7.10
|
||||
|
||||
|
@ -1,34 +0,0 @@
|
||||
diff -ur libarchive-2.8.5-orig/libarchive/test/main.c libarchive-2.8.5/libarchive/test/main.c
|
||||
--- libarchive-2.8.5-orig/libarchive/test/main.c 2010-06-29 12:06:59.000000000 +1200
|
||||
+++ libarchive-2.8.5/libarchive/test/main.c 2011-11-04 20:36:13.000000000 +1300
|
||||
@@ -28,6 +28,7 @@
|
||||
#include <locale.h>
|
||||
#include <stdarg.h>
|
||||
#include <time.h>
|
||||
+#include <signal.h>
|
||||
|
||||
/*
|
||||
* This same file is used pretty much verbatim for all test harnesses.
|
||||
@@ -1873,6 +1874,7 @@
|
||||
const char *tmp, *option_arg, *p;
|
||||
char tmpdir[256];
|
||||
char tmpdir_timestamp[256];
|
||||
+ struct sigaction sa;
|
||||
|
||||
(void)argc; /* UNUSED */
|
||||
|
||||
@@ -2002,6 +2004,14 @@
|
||||
#endif
|
||||
|
||||
/*
|
||||
+ * Ignore SIGPIPE signals
|
||||
+ */
|
||||
+ sa.sa_handler = SIG_IGN;
|
||||
+ sigemptyset(&sa.sa_mask);
|
||||
+ sa.sa_flags = 0;
|
||||
+ sigaction(SIGPIPE, &sa, NULL);
|
||||
+
|
||||
+ /*
|
||||
* Create a temp directory for the following tests.
|
||||
* Include the time the tests started as part of the name,
|
||||
* to make it easier to track the results of multiple tests.
|
@ -1,17 +0,0 @@
|
||||
Index: libarchive-2.8.5/libarchive/archive_read_support_format_iso9660.c
|
||||
===================================================================
|
||||
--- libarchive-2.8.5.orig/libarchive/archive_read_support_format_iso9660.c
|
||||
+++ libarchive-2.8.5/libarchive/archive_read_support_format_iso9660.c
|
||||
@@ -2161,6 +2161,12 @@ read_CE(struct archive_read *a, struct i
|
||||
}
|
||||
do {
|
||||
file = heap->reqs[0].file;
|
||||
+ if (file->ce_offset + file->ce_size > step) {
|
||||
+ archive_set_error(&a->archive,
|
||||
+ ARCHIVE_ERRNO_FILE_FORMAT,
|
||||
+ "Malformed CE information");
|
||||
+ return (ARCHIVE_FATAL);
|
||||
+ }
|
||||
p = b + file->ce_offset;
|
||||
end = p + file->ce_size;
|
||||
next_CE(heap);
|
@ -1,3 +1,30 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 7 18:47:14 UTC 2012 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 3.0.4:
|
||||
+ libarchive development moved to http://libarchive.github.com/
|
||||
- Changes from version 3.0.2:
|
||||
+ Various fixes merged from FreeBSD
|
||||
+ Symlink support in Zip reader and writer
|
||||
+ Robustness fixes to 7Zip reader
|
||||
- Changes from version 3.0.1b:
|
||||
+ 7Zip reader
|
||||
+ Small fixes to ISO and Zip to improve robustness with corrupted
|
||||
input
|
||||
+ Improve streaming Zip reader's support for uncompressed entries
|
||||
+ New seeking Zip reader supports SFX Zip archives
|
||||
+ Build fixes on Windows
|
||||
- For more changes since 2.8.5, please see NEWS file
|
||||
- Update URL Tag to represent new home of the project.
|
||||
- Rename libarchive2 to libarchive12, following upstreams soname
|
||||
bumps.
|
||||
- Add libarchive-fix-checks.patch: Fix gcc 4.7 side effects.
|
||||
- Drop libarchive-test-fuzz.patch: fixed upstream.
|
||||
- Drop libarchive-ignore-sigpipe-in-test-suite.patch: fixed
|
||||
upstream.
|
||||
- Drop libarchive-2.5.5_handle_ENOSYS_from_lutimes.patch: upstream
|
||||
rejected the patch. Seems to be too theoretical problem.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 7 08:35:39 UTC 2012 - werner@suse.de
|
||||
|
||||
|
@ -17,30 +17,25 @@
|
||||
|
||||
|
||||
Name: libarchive
|
||||
Version: 2.8.5
|
||||
Version: 3.0.4
|
||||
Release: 0
|
||||
#
|
||||
BuildRequires: libacl-devel
|
||||
BuildRequires: pkg-config
|
||||
BuildRequires: zlib-devel
|
||||
#
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildRequires: libbz2-devel
|
||||
BuildRequires: libext2fs-devel
|
||||
BuildRequires: libopenssl-devel
|
||||
BuildRequires: libxml2-devel
|
||||
BuildRequires: xz-devel
|
||||
#
|
||||
Summary: Creates and reads several different streaming archive formats
|
||||
License: BSD-3-Clause
|
||||
Group: Productivity/Archiving/Compression
|
||||
#
|
||||
Url: http://code.google.com/p/libarchive/
|
||||
Url: http://libarchive.github.com/
|
||||
Source0: http://libarchive.googlecode.com/files/libarchive-%{version}.tar.gz
|
||||
Source1: baselibs.conf
|
||||
Patch1: libarchive-2.5.5_handle_ENOSYS_from_lutimes.patch
|
||||
Patch2: libarchive-test-fuzz.patch
|
||||
Patch3: libarchive-ignore-sigpipe-in-test-suite.patch
|
||||
# PATCH-FIX-UPSTREAM libarchive-fix-checks.patch dimstar@opensuse.org -- Fix GCC 4.7 side effects. Taken from upstream.
|
||||
Patch0: libarchive-fix-checks.patch
|
||||
|
||||
%description
|
||||
Libarchive is a programming library that can create and read several
|
||||
@ -54,20 +49,17 @@ and 6.
|
||||
This package contains the bsdtar cmdline utility.
|
||||
|
||||
%package -n bsdtar
|
||||
|
||||
Summary: Creates and reads several different streaming archive formats
|
||||
Group: Productivity/Archiving/Compression
|
||||
|
||||
%description -n bsdtar
|
||||
This package contains the bsdtar cmdline utility.
|
||||
|
||||
%package -n libarchive2
|
||||
|
||||
#
|
||||
%package -n libarchive12
|
||||
Summary: Library to work with several different streaming archive formats
|
||||
Group: Development/Libraries/C and C++
|
||||
|
||||
%description -n libarchive2
|
||||
%description -n libarchive12
|
||||
Libarchive is a programming library that can create and read several
|
||||
different streaming archive formats, including most popular tar
|
||||
variants and several cpio formats. It can also write shar archives and
|
||||
@ -121,9 +113,8 @@ I/O. It should be very easy to add new formats, new compression
|
||||
methods, or new ways of reading/writing archives.
|
||||
|
||||
%package -n libarchive-devel
|
||||
|
||||
Requires: libacl-devel
|
||||
Requires: libarchive2 = %{version}
|
||||
Requires: libarchive12 = %{version}
|
||||
Requires: libbz2-devel
|
||||
Requires: zlib-devel
|
||||
Summary: Development files for libarchive
|
||||
@ -141,13 +132,10 @@ and 6.
|
||||
This package contains the development files.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{version}
|
||||
%patch1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
|
||||
%build
|
||||
#autoreconf -fi
|
||||
%global optflags %{optflags} -D_REENTRANT -pipe
|
||||
%configure --disable-static --enable-bsdcpio
|
||||
make %{?_smp_mflags}
|
||||
@ -157,14 +145,12 @@ make check
|
||||
|
||||
%install
|
||||
%makeinstall
|
||||
|
||||
rm -fv minitar/*.o
|
||||
rm -fv %{buildroot}%{_libdir}/*.la
|
||||
find %{buildroot} -name '*.la' -type f -delete -print
|
||||
rm "%{buildroot}%{_mandir}/man5/"{tar,cpio,mtree}.5*
|
||||
|
||||
%post -n libarchive2 -p /sbin/ldconfig
|
||||
%post -n libarchive12 -p /sbin/ldconfig
|
||||
|
||||
%postun -n libarchive2 -p /sbin/ldconfig
|
||||
%postun -n libarchive12 -p /sbin/ldconfig
|
||||
|
||||
%files -n bsdtar
|
||||
%defattr(-,root,root)
|
||||
@ -173,13 +159,14 @@ rm "%{buildroot}%{_mandir}/man5/"{tar,cpio,mtree}.5*
|
||||
%{_mandir}/man1/*
|
||||
%{_mandir}/man5/*
|
||||
|
||||
%files -n libarchive2
|
||||
%files -n libarchive12
|
||||
%defattr(-,root,root)
|
||||
%doc COPYING NEWS README
|
||||
%{_libdir}/libarchive.so.*
|
||||
%doc COPYING INSTALL NEWS README examples/
|
||||
|
||||
%files -n libarchive-devel
|
||||
%defattr(-,root,root)
|
||||
%doc examples/
|
||||
%{_mandir}/man3/*
|
||||
%{_libdir}/libarchive.so
|
||||
%{_includedir}/archive*
|
||||
|
Loading…
Reference in New Issue
Block a user