Contribs: update libarchive to 3.5.1
authorJean-Baptiste Kempf <jb@videolan.org>
Wed, 21 Apr 2021 15:22:47 +0000 (17:22 +0200)
committerJean-Baptiste Kempf <jb@videolan.org>
Wed, 21 Apr 2021 17:47:55 +0000 (19:47 +0200)
contrib/src/libarchive/0001-Fix-retrieving-incorrect-member-from-struct-statfs.patch [deleted file]
contrib/src/libarchive/0005-don-t-force-windows-versions-if-they-are-set-in-the-.patch [deleted file]
contrib/src/libarchive/SHA512SUMS
contrib/src/libarchive/fix-types.patch [deleted file]
contrib/src/libarchive/rules.mak
contrib/src/libarchive/winrt.patch

diff --git a/contrib/src/libarchive/0001-Fix-retrieving-incorrect-member-from-struct-statfs.patch b/contrib/src/libarchive/0001-Fix-retrieving-incorrect-member-from-struct-statfs.patch
deleted file mode 100644 (file)
index 6561422..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From 9b9e4ff23fa528d831f22d62d072db990b862a62 Mon Sep 17 00:00:00 2001
-From: Martin Matuska <martin@matuska.org>
-Date: Thu, 30 Apr 2020 03:46:05 +0200
-Subject: [PATCH] Fix retrieving incorrect member from struct statfs
-
-Fixes #1355
----
- libarchive/archive_read_disk_posix.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libarchive/archive_read_disk_posix.c b/libarchive/archive_read_disk_posix.c
-index 52fec7bb..95a8087a 100644
---- a/libarchive/archive_read_disk_posix.c
-+++ b/libarchive/archive_read_disk_posix.c
-@@ -1840,7 +1840,7 @@ setup_current_filesystem(struct archive_read_disk *a)
- #if defined(HAVE_STATVFS)
-       if (svfs.f_flag & ST_NOATIME)
- #else
--      if (sfs.f_flag & ST_NOATIME)
-+      if (sfs.f_flags & ST_NOATIME)
- #endif
-               t->current_filesystem->noatime = 1;
-       else
--- 
-2.26.0.windows.1
-
diff --git a/contrib/src/libarchive/0005-don-t-force-windows-versions-if-they-are-set-in-the-.patch b/contrib/src/libarchive/0005-don-t-force-windows-versions-if-they-are-set-in-the-.patch
deleted file mode 100644 (file)
index 37af69a..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-From a4fa6bef8bdb141d629d79d8d1f3e67448bd67e1 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4@ycbcr.xyz>
-Date: Thu, 2 Apr 2020 15:33:40 +0200
-Subject: [PATCH 5/5] don't force windows versions if they are set in the
- environment
-
----
- configure.ac | 20 +++++++++++++++++---
- 1 file changed, 17 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 7312c4d5..05ca4955 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -244,9 +244,23 @@ AM_CONDITIONAL([STATIC_BSDCPIO], [ test "$static_bsdcpio" = yes ])
- # Set up defines needed before including any headers
- case $host in
-   *mingw* | *cygwin* | *msys*  )
--  AC_DEFINE([_WIN32_WINNT], 0x0502, [Define to '0x0502' for Windows Server 2003 APIs.])
--  AC_DEFINE([WINVER], 0x0502, [Define to '0x0502' for Windows Server 2003 APIs.])
--  AC_DEFINE([NTDDI_VERSION], 0x05020000, [Define to '0x05020000' for Windows Server 2003 APIs.])
-+  AC_PREPROC_IFELSE([AC_LANG_PROGRAM(
-+    [[#ifdef _WIN32_WINNT
-+     # error _WIN32_WINNT already defined
-+     #endif
-+    ]],[[;]])
-+  ],[
-+    AC_DEFINE([_WIN32_WINNT], 0x0502, [Define to '0x0502' for Windows Server 2003 APIs.])
-+    AC_DEFINE([NTDDI_VERSION], 0x05020000, [Define to '0x05020000' for Windows Server 2003 APIs.])
-+  ])
-+  AC_PREPROC_IFELSE([AC_LANG_PROGRAM(
-+    [[#ifdef WINVER
-+     # error WINVER already defined
-+     #endif
-+    ]],[[;]])
-+  ],[
-+    AC_DEFINE([WINVER], 0x0502, [Define to '0x0502' for Windows Server 2003 APIs.])
-+  ])
-   ;;
- esac
--- 
-2.26.0.windows.1
-
index 8330921..3d22dce 100644 (file)
@@ -1 +1 @@
-a8922e54f2e985889d205ee8a0594c1d30dad950438b602a5be6bb1b274a735ad20a48ed484efd458013a0810d26ee4ae76e3a6c820823243d24ea0593ed7021  libarchive-3.4.2.tar.gz
+08ddd74bef4cef0981739da202879f36cf7ca33a8f6d438724588efe3ab8477f2f1d0cccf7b8ed0bedfc0c8d0cab16ee3ae5c0c6e83b6811bc650d7d7471a996  libarchive-3.5.1.tar.gz
diff --git a/contrib/src/libarchive/fix-types.patch b/contrib/src/libarchive/fix-types.patch
deleted file mode 100644 (file)
index 14c3216..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From 93a8b303904e40261ac58fbd95eb338d6b9cb1df Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4@ycbcr.xyz>
-Date: Fri, 27 Mar 2020 16:26:07 +0100
-Subject: [PATCH 2/4] archive_entry: use the proper define for mode_t
-
----
- libarchive/archive_entry.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/libarchive/archive_entry.c b/libarchive/archive_entry.c
-index 72c644e6..7afec1b1 100644
---- a/libarchive/archive_entry.c
-+++ b/libarchive/archive_entry.c
-@@ -353,7 +353,7 @@ archive_entry_devminor(struct archive_entry *entry)
-               return minor(entry->ae_stat.aest_dev);
- }
--mode_t
-+__LA_MODE_T
- archive_entry_filetype(struct archive_entry *entry)
- {
-       return (AE_IFMT & entry->acl.mode);
-@@ -525,7 +525,7 @@ archive_entry_ino64(struct archive_entry *entry)
-       return (entry->ae_stat.aest_ino);
- }
--mode_t
-+__LA_MODE_T
- archive_entry_mode(struct archive_entry *entry)
- {
-       return (entry->acl.mode);
-@@ -598,7 +598,7 @@ _archive_entry_pathname_l(struct archive_entry *entry,
-       return (archive_mstring_get_mbs_l(&entry->ae_pathname, p, len, sc));
- }
--mode_t
-+__LA_MODE_T
- archive_entry_perm(struct archive_entry *entry)
- {
-       return (~AE_IFMT & entry->acl.mode);
--- 
-2.26.0.windows.1
-
index c88ab66..859b1b2 100644 (file)
@@ -1,5 +1,5 @@
 # LIBARCHIVE
-LIBARCHIVE_VERSION := 3.4.2
+LIBARCHIVE_VERSION := 3.5.1
 LIBARCHIVE_URL := http://www.libarchive.org/downloads/libarchive-$(LIBARCHIVE_VERSION).tar.gz
 
 PKGS += libarchive
@@ -25,9 +25,6 @@ $(TARBALLS)/libarchive-$(LIBARCHIVE_VERSION).tar.gz:
 
 libarchive: libarchive-$(LIBARCHIVE_VERSION).tar.gz .sum-libarchive
        $(UNPACK)
-       $(APPLY) $(SRC)/libarchive/0001-Fix-retrieving-incorrect-member-from-struct-statfs.patch
-       $(APPLY) $(SRC)/libarchive/fix-types.patch
-       $(APPLY) $(SRC)/libarchive/0005-don-t-force-windows-versions-if-they-are-set-in-the-.patch
 ifdef HAVE_ANDROID
        $(APPLY) $(SRC)/libarchive/android.patch
 endif
index d31695e..30bbbf5 100644 (file)
@@ -255,15 +255,6 @@ index b8bf1288..2197ed41 100644
                        /* Avoid infinity wait.
                         * Note: If there is no data in the pipe, ReadFile()
                         * called in read() never returns and so we won't
-@@ -437,7 +439,7 @@ __archive_read_program(struct archive_read_filter *self, const char *cmd)
-                   cmd);
-               return (ARCHIVE_FATAL);
-       }
--#if defined(_WIN32) && !defined(__CYGWIN__)
-+#if defined(_WIN32) && !defined(__CYGWIN__) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
-       state->child = OpenProcess(PROCESS_QUERY_INFORMATION, FALSE, child);
-       if (state->child == NULL) {
-               child_stop(self, state);
 @@ -516,3 +518,5 @@ program_filter_close(struct archive_read_filter *self)
  
        return (e);
@@ -514,30 +505,27 @@ index 47b7cb8e..9743f310 100644
  #define WEXITSTATUS(sts)      (sts & 0x0FF)
 diff --git a/libarchive/filter_fork_windows.c b/libarchive/filter_fork_windows.c
 index ad271fe6..0414d6f4 100644
---- a/libarchive/filter_fork_windows.c
-+++ b/libarchive/filter_fork_windows.c
+--- a/libarchive/filter_fork_windows.c.orig    2020-12-26 02:29:38.000000000 +0100
++++ b/libarchive/filter_fork_windows.c 2021-04-21 17:17:42.651099766 +0200
 @@ -31,6 +31,13 @@
  
  #include "filter_fork.h"
  
 +#if !WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-+pid_t
-+__archive_create_child(const char *cmd, int *child_stdin, int *child_stdout)
++int
++__archive_create_child(const char *cmd, int *child_stdin, int *child_stdout, HANDLE *out_child)
 +{
-+      return (-1);
++      return ARCHIVE_FAILED;
 +}
 +#else /* WINAPI_PARTITION_DESKTOP */
pid_t
- __archive_create_child(const char *cmd, int *child_stdin, int *child_stdout)
- {
-@@ -178,6 +185,7 @@ fail:
int
+ __archive_create_child(const char *cmd, int *child_stdin, int *child_stdout,
+               HANDLE *out_child)
+@@ -187,6 +194,7 @@
        __archive_cmdline_free(acmd);
-       return (-1);
+       return ARCHIVE_FAILED;
  }
 +#endif /* WINAPI_PARTITION_DESKTOP */
  
  void
  __archive_check_child(int in, int out)
--- 
-2.26.0.windows.1
-