commit:     db4df52fd665f770c97478f5d5b88935a125602e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 24 09:17:49 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 24 11:56:48 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=db4df52f

dev-libs/libzip: add 1.11.3

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/libzip/Manifest                         |   1 +
 dev-libs/libzip/files/libzip-1.11.3-uninit.patch |  25 +++++
 dev-libs/libzip/libzip-1.11.3.ebuild             | 123 +++++++++++++++++++++++
 3 files changed, 149 insertions(+)

diff --git a/dev-libs/libzip/Manifest b/dev-libs/libzip/Manifest
index 0ce5516d5423..9af8f43bef92 100644
--- a/dev-libs/libzip/Manifest
+++ b/dev-libs/libzip/Manifest
@@ -1,2 +1,3 @@
 DIST libzip-1.11.2.tar.xz 787300 BLAKE2B 
84b41a4dfb5f61404972314021ee5de153199747d8724bbc86adb982fdcea74ede67fac03523081a12e463c33e25441037beb1f6312f93f0c011471c3b150c72
 SHA512 
e80afcff8a65d614c4e7087223e8afafe0b1c6799d6f1d04d1a3735d37a63d134ec2335fe87923a27f0845ee71062da444fe7a6c8a4458827333a52d9dee8166
+DIST libzip-1.11.3.tar.xz 788520 BLAKE2B 
3296ff48ce853687ea4fbe310130c2468c87990da9a6c285acb09406afb23fe2240fb27a94c23db8b2ad58bd7b80f5b6e84d0702957792d0baddd13487c483dd
 SHA512 
7ad7e5f04f28e777604833e702aaa68d603b9895e70d6ee9e587549eb628a89e5569aca0ea255f82de1adb8f4599b828c63dd282eb15a5ea55a147aa7df7b2a4
 DIST libzip-1.9.2.tar.xz 763980 BLAKE2B 
ceeca4dccbe7552f7f545b00ea44b342398d18eb996e39045b9d6efafe50f8890333ddf220c86b59f5ab2849420eb76761c42b16de8b174629f53e327f9e83e7
 SHA512 
82cb2533c25b5b540aa73856c958750d32eeceb192cce257eded15b396a24652041c8531f20366ac4c2dc6b7c0310c558d19c12b611576eccb07cfbaf98120b5

diff --git a/dev-libs/libzip/files/libzip-1.11.3-uninit.patch 
b/dev-libs/libzip/files/libzip-1.11.3-uninit.patch
new file mode 100644
index 000000000000..97722e9f9d94
--- /dev/null
+++ b/dev-libs/libzip/files/libzip-1.11.3-uninit.patch
@@ -0,0 +1,25 @@
+https://github.com/nih-at/libzip/commit/aa3a6b4da7577de63581f8db2f9d2757481b4cc8
+
+From aa3a6b4da7577de63581f8db2f9d2757481b4cc8 Mon Sep 17 00:00:00 2001
+From: Dieter Baron <[email protected]>
+Date: Thu, 23 Jan 2025 11:01:57 +0100
+Subject: [PATCH] Initialize have_dos_time.
+
+Fixes issue #480
+---
+ lib/zip_close.c | 3 ++-
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+--- a/lib/zip_close.c
++++ b/lib/zip_close.c
+@@ -304,7 +304,8 @@ static int add_data(zip_t *za, zip_source_t *src, 
zip_dirent_t *de, zip_uint32_t
+     int is_zip64;
+     zip_flags_t flags;
+     bool needs_recompress, needs_decompress, needs_crc, needs_compress, 
needs_reencrypt, needs_decrypt, needs_encrypt;
+-    bool have_dos_time, dirent_changed;
++    bool dirent_changed;
++    bool have_dos_time = false;
+     time_t mtime_before_copy;
+ 
+     if (zip_source_stat(src, &st) < 0) {
+

diff --git a/dev-libs/libzip/libzip-1.11.3.ebuild 
b/dev-libs/libzip/libzip-1.11.3.ebuild
new file mode 100644
index 000000000000..a6858a285a39
--- /dev/null
+++ b/dev-libs/libzip/libzip-1.11.3.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake multibuild flag-o-matic
+
+DESCRIPTION="Library for manipulating zip archives"
+HOMEPAGE="https://nih.at/libzip/";
+SRC_URI="https://www.nih.at/libzip/${P}.tar.xz";
+
+LICENSE="BSD"
+SLOT="0/5"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="bzip2 gnutls lzma mbedtls ssl static-libs test tools zstd"
+REQUIRED_USE="test? ( tools )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       sys-libs/zlib
+       bzip2? ( app-arch/bzip2:= )
+       lzma? ( app-arch/xz-utils )
+       ssl? (
+               gnutls? (
+                       dev-libs/nettle:=
+                       >=net-libs/gnutls-3.6.5:=
+               )
+               !gnutls? (
+                       mbedtls? ( net-libs/mbedtls:0= )
+                       !mbedtls? ( dev-libs/openssl:= )
+               )
+       )
+       zstd? ( >=app-arch/zstd-1.4.0:= )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+       test? ( dev-util/nihtest )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-uninit.patch
+)
+
+pkg_setup() {
+       # Upstream doesn't support building dynamic & static
+       # simultaneously: https://github.com/nih-at/libzip/issues/76
+       MULTIBUILD_VARIANTS=( shared $(usev static-libs) )
+}
+
+src_configure() {
+       append-lfs-flags
+       myconfigure() {
+               local mycmakeargs=(
+                       -DBUILD_OSSFUZZ=OFF
+                       -DBUILD_EXAMPLES=OFF # nothing is installed
+                       -DENABLE_COMMONCRYPTO=OFF # not in tree
+                       -DENABLE_BZIP2=$(usex bzip2)
+                       -DENABLE_LZMA=$(usex lzma)
+                       -DENABLE_ZSTD=$(usex zstd)
+               )
+               if [[ ${MULTIBUILD_VARIANT} = static-libs ]]; then
+                       mycmakeargs+=(
+                               -DBUILD_DOC=OFF
+                               -DBUILD_EXAMPLES=OFF
+                               -DBUILD_SHARED_LIBS=OFF
+                               -DBUILD_TOOLS=OFF
+                       )
+               else
+                       mycmakeargs+=(
+                               -DBUILD_DOC=ON
+                               -DBUILD_REGRESS=$(usex test)
+                               -DBUILD_TOOLS=$(usex tools)
+                       )
+               fi
+
+               if use ssl; then
+                       if use gnutls; then
+                               mycmakeargs+=(
+                                       -DENABLE_GNUTLS=$(usex gnutls)
+                                       -DENABLE_MBEDTLS=OFF
+                                       -DENABLE_OPENSSL=OFF
+                               )
+                       elif use mbedtls; then
+                               mycmakeargs+=(
+                                       -DENABLE_GNUTLS=OFF
+                                       -DENABLE_MBEDTLS=$(usex mbedtls)
+                                       -DENABLE_OPENSSL=OFF
+                               )
+                       else
+                               mycmakeargs+=(
+                                       -DENABLE_GNUTLS=OFF
+                                       -DENABLE_MBEDTLS=OFF
+                                       -DENABLE_OPENSSL=ON
+                               )
+                       fi
+               else
+                       mycmakeargs+=(
+                               -DENABLE_GNUTLS=OFF
+                               -DENABLE_MBEDTLS=OFF
+                               -DENABLE_OPENSSL=OFF
+                       )
+               fi
+               cmake_src_configure
+       }
+
+       multibuild_foreach_variant myconfigure
+}
+
+src_compile() {
+       multibuild_foreach_variant cmake_src_compile
+}
+
+src_test() {
+       run_tests() {
+               [[ ${MULTIBUILD_VARIANT} = shared ]] && cmake_src_test
+       }
+
+       multibuild_foreach_variant run_tests
+}
+
+src_install() {
+       multibuild_foreach_variant cmake_src_install
+}

Reply via email to