summaryrefslogtreecommitdiff
path: root/dev-libs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-03-08 19:07:58 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-03-08 19:07:58 +0000
commit8edd4a48a39640822abe6ddb7b2a1d5b2da4ea70 (patch)
treedd40a3ea9cdcc06c8c63bd2ee71c2c2c0ea11549 /dev-libs
parent7825305c5ddf11fffe24fa30453c4e8468f64305 (diff)
gentoo auto-resync : 08:03:2024 - 19:07:58
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/Manifest.gzbin98186 -> 98184 bytes
-rw-r--r--dev-libs/apache-arrow/Manifest3
-rw-r--r--dev-libs/apache-arrow/apache-arrow-15.0.1.ebuild131
-rw-r--r--dev-libs/apache-arrow/files/apache-arrow-15.0.1-32bit.patch57
-rw-r--r--dev-libs/libdnet/Manifest2
-rw-r--r--dev-libs/libdnet/libdnet-1.18.0.ebuild88
-rw-r--r--dev-libs/xapian-bindings/Manifest2
-rw-r--r--dev-libs/xapian-bindings/xapian-bindings-1.4.25.ebuild346
-rw-r--r--dev-libs/xapian/Manifest2
-rw-r--r--dev-libs/xapian/xapian-1.4.25.ebuild63
-rw-r--r--dev-libs/zziplib/Manifest4
-rw-r--r--dev-libs/zziplib/zziplib-0.13.72-r3.ebuild52
-rw-r--r--dev-libs/zziplib/zziplib-0.13.74.ebuild70
13 files changed, 767 insertions, 53 deletions
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz
index 1a89c947e3ce..ed8cdcb6b5d3 100644
--- a/dev-libs/Manifest.gz
+++ b/dev-libs/Manifest.gz
Binary files differ
diff --git a/dev-libs/apache-arrow/Manifest b/dev-libs/apache-arrow/Manifest
index af523a1f5251..2051db9bcb13 100644
--- a/dev-libs/apache-arrow/Manifest
+++ b/dev-libs/apache-arrow/Manifest
@@ -1,11 +1,14 @@
AUX apache-arrow-11.0.0-shared-lz4.patch 456 BLAKE2B b6c8263ac0cf52e49004836ebd10095aa35e5261265f273d7c22dfc6b7a90ceae5882b9c4de51674f11e8b96e84f881141212e197a80dea9db567da7c033a3ea SHA512 11fab04e1c1da46b6407c52a3bfed12e7bffc36046dd8dc379d1a368010f01eaf7b5f791ecb9fb4d15dd778106b401663ea8c1aceb80e799201b71837c18203f
AUX apache-arrow-14.0.1-gcc14.patch 336 BLAKE2B 22517d03395a26f2a5089693e575cee794005d752b5531b436780c46d2fd7753cca7e7c129ee0a6699990afac2411892d64bb313bd1a370a7e9d496dcfd2f07c SHA512 8d22b1cafdb83933921e161cb12d2cc14c0244cfa570e52ec3c4061ab447c89469c1812ef94e0aba3a3fa862db6068d1c7ab098704ff03b06ef30873d5618e4d
+AUX apache-arrow-15.0.1-32bit.patch 2331 BLAKE2B f27674662175d9b571a6151be7b735ab44022972dfece85f9b5bbda918ceb1b700c81436d6376752f90f28e5499220f35b8ea1d9599335cfa63552aaeea50b9e SHA512 b7fbcbc4bb18040e121a40ee2866272069c7733b216a0fb63b8c2248986a388ea92c8b6bc3c021ed16fdc577c1a42842cb34ef71e19f2c56b5ec765a9ffe9c4f
DIST apache-arrow-14.0.2.tar.gz 20969982 BLAKE2B 9df119fca564a4140d1143a1ac0614831e4f80846d43439d011b8ca7f5e77461005c96b9430b6dd7ce0ba7496b879a8abc9ffa372e6b455c317abeebb16ae8e4 SHA512 dd6cf6cbb817a48ef5275bb409367e5904526a3c16a17a37ea75101085ea19a71ba6bf936a6f099012e7c528811db1728ef2f14dcb16a1056a22088839280ce0
DIST apache-arrow-15.0.0.tar.gz 21491996 BLAKE2B 55709d1d181ed5c1482e1eadc9031c692bbd39434ccad17be8c0f3f5af47e3b3d5f262903d1ce09c39442497e14c22c80d7b30215e4de830a4ac82a1b3db34fb SHA512 d5dccaa0907b0e6f2a460e32ae75091942dcb70b51db4aefe2767ee8d99882694607b723a9c06898dda3938d8eb498258d7f9aad11054665b6ea9c2fbaeafa74
+DIST apache-arrow-15.0.1.tar.gz 21499849 BLAKE2B 5f8f91932941105e753b7b7812bf132bd99501ccfac0574b8072e638764cb46694062bcdb8568a474f50de008ede9259b70f16ba7f33ada0f6ec763c21b1c25a SHA512 b426421336c6bc3757626b2743a039d3c7030ad257c3bcf3247a236462dbc140b7eff4476cb727f4d048144a90c1368740c139318f8237d6cc20e87d3efdaf74
DIST apache-arrow-arrow-data-ad82a736c170e97b7c8c035ebd8a801c17eec170.tar.gz 3571641 BLAKE2B e3daae62938b54dbeb8ca9227eddfd2d59864cfafb54a7a7fd7aaa2b2cabd0f2dde58b77b2def086a1759b43c3b5834cb55462cc0b2886b2892329a957afdacb SHA512 ad6fd3343d8a3a6beb5b6269815bc207171905c102698fdb8ed7091e6d829dc51f354293c7686f845e3d49c4a828d9c77958447d965c9da4272260984fea4262
DIST apache-arrow-arrow-data-d2c73bf78246331d8e58b6f11aa8aa199cbb5929.tar.gz 3570422 BLAKE2B df1f8d1c4e321ca0abdce598b09945aa9e63114199e7f2eb0fc549323dadf703b917efd90c04a2d540d763a44128d76c6ee12788a983d4b9536d04297316b656 SHA512 0be19960b0d22fc2e07bf84f11148e69d6fa82f10627eb2a5e4b762b1d4cf4e151a57c5a1dc761d6d8ed29881ea589e4cfe0cd47d5c7cbf7b6107143b4a45e82
DIST apache-arrow-parquet-data-b2e7cc755159196e3a068c8594f7acbaecfdaaac.tar.gz 1013835 BLAKE2B cb4e544b6588ddad503f9692ee2eee5d4f1e931f10654b7253e11ffd2feb4c957dec047a1b1644c1f1538a3bf7ea726e5a9ae9b7d0c3bb0d55d27f088b5c5be3 SHA512 d4c2af20d6a88c1beb44770982f4aa324ea4ee375e8f556339074875af15c48f4398d972c1eec35eba5d209e9e62df4bdbf73ebc8148a7bb05ffa2d69c97df61
DIST apache-arrow-parquet-data-d69d979223e883faef9dc6fe3cf573087243c28a.tar.gz 1022547 BLAKE2B a36f950160a6e033c0ab4fb9ac391be6e71cdadf2bbb7d0210640cc41782921b0e0777425b811a1d688e03842684eb1bfe008ffe359b182bea0f80d3adf658fe SHA512 dfebeca5b99a72a4c069c1030102a6fdd35d4c58cb12fb640bcd0a623cc54e49363f1112fa45da14b16867630dc30bc94bdb2e4cc95f9379dcaa5d7f8f38a3ea
EBUILD apache-arrow-14.0.2-r1.ebuild 2931 BLAKE2B 57e37ef168b171c0b97d191805c6895904b233f694811c43942fcc2cb2e933bfc1e93d5463ab6c1cda1711f1a50a70c28f8c294a506a615d5f5237d6df3b335d SHA512 8b3c8a0834ecf8f92575b5ebfdedf1c7186793dc229951224fae6fbb128f860f581866dfd0367d12a5176aa9d0939bf218230c130fdbb40133064c2b10614f26
EBUILD apache-arrow-15.0.0.ebuild 3053 BLAKE2B b91c1d30d7ed6a3e21dbfd8c31b0b033366ff5e78b78bde181c51ab53be6d6c56d476e8c23b35c8fff2344af0ca75b28a590cfaeeb4d3a9b6087758716da6c82 SHA512 a0d32042887375ea5f045908cf48fcc8546af26c98cd112c82e5757c11208c94518d9ed1547e9aace3b6db7db906a872fd205d3a3307d8b3880ccdf4f1fb0b93
+EBUILD apache-arrow-15.0.1.ebuild 3115 BLAKE2B 806c3edc0a4656d6b44f45f5fd6afdd0302a89df4e823214ea4ac83cd082e947add12eba7dab8615e9f2b4b3558d3d072866b033deb24d8efdbae9daedcf448a SHA512 8ce5571b03d92425d317f2355e45d0dfefc41d518aca40b6213ff019e0184083ef3975030cb636749cdbd275083907c05086d3d22fa39dc7d2924fd66d848de9
MISC metadata.xml 912 BLAKE2B bffeb1e6d52455313e89396d9b1821fd7d5064e887213d13ae933ef8185318a40095c1623f3793f62d296ecb1afed591614fadc2ca3f75332df1e5a2f5a28d84 SHA512 11fb4dfe0e8c938e6bf3e7e53d1dccee08d80ba32396ac454226827e7c4ed2db70c53812060a9478e359fb2c48c221a05b3632409d73f2659b2117b7c56e8e51
diff --git a/dev-libs/apache-arrow/apache-arrow-15.0.1.ebuild b/dev-libs/apache-arrow/apache-arrow-15.0.1.ebuild
new file mode 100644
index 000000000000..22b647070026
--- /dev/null
+++ b/dev-libs/apache-arrow/apache-arrow-15.0.1.ebuild
@@ -0,0 +1,131 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+# arrow.git: testing
+ARROW_DATA_GIT_HASH=ad82a736c170e97b7c8c035ebd8a801c17eec170
+# arrow.git: cpp/submodules/parquet-testing
+PARQUET_DATA_GIT_HASH=d69d979223e883faef9dc6fe3cf573087243c28a
+
+DESCRIPTION="A cross-language development platform for in-memory data."
+HOMEPAGE="
+ https://arrow.apache.org/
+ https://github.com/apache/arrow/
+"
+SRC_URI="
+ mirror://apache/arrow/arrow-${PV}/${P}.tar.gz
+ test? (
+ https://github.com/apache/parquet-testing/archive/${PARQUET_DATA_GIT_HASH}.tar.gz
+ -> ${PN}-parquet-data-${PARQUET_DATA_GIT_HASH}.tar.gz
+ https://github.com/apache/arrow-testing/archive/${ARROW_DATA_GIT_HASH}.tar.gz
+ -> ${PN}-arrow-data-${ARROW_DATA_GIT_HASH}.tar.gz
+ )
+"
+S="${WORKDIR}/${P}/cpp"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1)"
+KEYWORDS="~amd64 ~hppa ~riscv"
+IUSE="brotli bzip2 compute dataset +json lz4 parquet re2 snappy ssl test zlib zstd"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ brotli? ( app-arch/brotli:= )
+ bzip2? ( app-arch/bzip2:= )
+ compute? ( dev-libs/libutf8proc:= )
+ dataset? (
+ dev-libs/libutf8proc:=
+ )
+ lz4? ( app-arch/lz4:= )
+ parquet? (
+ dev-libs/libutf8proc:=
+ dev-libs/thrift:=
+ ssl? ( dev-libs/openssl:= )
+ )
+ re2? ( dev-libs/re2:= )
+ snappy? ( app-arch/snappy:= )
+ zlib? ( sys-libs/zlib:= )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}
+ dev-cpp/xsimd
+ >=dev-libs/boost-1.81.0
+ json? ( dev-libs/rapidjson )
+ test? (
+ dev-cpp/gflags
+ dev-cpp/gtest
+ )
+"
+
+REQUIRED_USE="
+ test? (
+ json
+ parquet? ( zstd )
+ )
+ ssl? ( json )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-11.0.0-shared-lz4.patch"
+ "${FILESDIR}/${PN}-14.0.1-gcc14.patch"
+ # upstream backports
+ "${FILESDIR}/${PN}-15.0.1-32bit.patch"
+)
+
+src_prepare() {
+ # use Gentoo CXXFLAGS, specify docdir at src_configure.
+ sed -i \
+ -e '/SetupCxxFlags/d' \
+ -e '/set(ARROW_DOC_DIR.*)/d' \
+ CMakeLists.txt \
+ || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DARROW_BUILD_STATIC=OFF
+ -DARROW_BUILD_TESTS=$(usex test)
+ -DARROW_COMPUTE=$(usex compute)
+ -DARROW_CSV=ON
+ -DARROW_DATASET=$(usex dataset)
+ -DARROW_DEPENDENCY_SOURCE=SYSTEM
+ -DARROW_DOC_DIR=share/doc/${PF}
+ -DARROW_FILESYSTEM=ON
+ -DARROW_HDFS=ON
+ -DARROW_JEMALLOC=OFF
+ -DARROW_JSON=$(usex json)
+ -DARROW_PARQUET=$(usex parquet)
+ -DPARQUET_REQUIRE_ENCRYPTION=$(usex ssl)
+ -DARROW_USE_CCACHE=OFF
+ -DARROW_USE_SCCACHE=OFF
+ -DARROW_WITH_BROTLI=$(usex brotli)
+ -DARROW_WITH_BZ2=$(usex bzip2)
+ -DARROW_WITH_LZ4=$(usex lz4)
+ -DARROW_WITH_RE2=$(usex re2)
+ -DARROW_WITH_SNAPPY=$(usex snappy)
+ -DARROW_WITH_ZLIB=$(usex zlib)
+ -DARROW_WITH_ZSTD=$(usex zstd)
+ -DCMAKE_CXX_STANDARD=17
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ export PARQUET_TEST_DATA="${WORKDIR}/parquet-testing-${PARQUET_DATA_GIT_HASH}/data"
+ export ARROW_TEST_DATA="${WORKDIR}/arrow-testing-${ARROW_DATA_GIT_HASH}/data"
+ cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+ if use test; then
+ cd "${D}"/usr/$(get_libdir) || die
+ rm -r cmake/ArrowTesting || die
+ rm libarrow_testing* || die
+ rm pkgconfig/arrow-testing.pc || die
+ fi
+}
diff --git a/dev-libs/apache-arrow/files/apache-arrow-15.0.1-32bit.patch b/dev-libs/apache-arrow/files/apache-arrow-15.0.1-32bit.patch
new file mode 100644
index 000000000000..d268e565ab76
--- /dev/null
+++ b/dev-libs/apache-arrow/files/apache-arrow-15.0.1-32bit.patch
@@ -0,0 +1,57 @@
+diff --git a/gdb_arrow.py b/gdb_arrow.py
+index 6c3af1680..ad40ec499 100644
+--- a/gdb_arrow.py
++++ b/gdb_arrow.py
+@@ -304,7 +304,8 @@ def format_timestamp(val, unit):
+ seconds, subseconds = divmod(val, traits.multiplier)
+ try:
+ dt = datetime.datetime.utcfromtimestamp(seconds)
+- except (ValueError, OSError): # value out of range for datetime.datetime
++ except (ValueError, OSError, OverflowError):
++ # value out of range for datetime.datetime
+ pretty = "too large to represent"
+ else:
+ pretty = dt.isoformat().replace('T', ' ')
+diff --git a/src/arrow/io/file.cc b/src/arrow/io/file.cc
+index 543fa90a8..3b18bb7b0 100644
+--- a/src/arrow/io/file.cc
++++ b/src/arrow/io/file.cc
+@@ -36,6 +36,7 @@
+ #include <cerrno>
+ #include <cstdint>
+ #include <cstring>
++#include <limits>
+ #include <memory>
+ #include <mutex>
+ #include <sstream>
+@@ -560,17 +561,22 @@ class MemoryMappedFile::MemoryMap
+ RETURN_NOT_OK(::arrow::internal::FileTruncate(file_->fd(), initial_size));
+ }
+
+- size_t mmap_length = static_cast<size_t>(initial_size);
+- if (length > initial_size) {
+- return Status::Invalid("mapping length is beyond file size");
+- }
+- if (length >= 0 && length < initial_size) {
++ int64_t mmap_length = initial_size;
++ if (length >= 0) {
+ // memory mapping a file region
+- mmap_length = static_cast<size_t>(length);
++ if (length > initial_size) {
++ return Status::Invalid("mapping length is beyond file size");
++ }
++ mmap_length = length;
++ }
++ if (static_cast<int64_t>(static_cast<size_t>(mmap_length)) != mmap_length) {
++ return Status::CapacityError("Requested memory map length ", mmap_length,
++ " does not fit in a C size_t "
++ "(are you using a 32-bit build of Arrow?");
+ }
+
+- void* result = mmap(nullptr, mmap_length, prot_flags_, map_mode_, file_->fd(),
+- static_cast<off_t>(offset));
++ void* result = mmap(nullptr, static_cast<size_t>(mmap_length), prot_flags_, map_mode_,
++ file_->fd(), static_cast<off_t>(offset));
+ if (result == MAP_FAILED) {
+ return Status::IOError("Memory mapping file failed: ",
+ ::arrow::internal::ErrnoMessage(errno));
diff --git a/dev-libs/libdnet/Manifest b/dev-libs/libdnet/Manifest
index d3c27a67fdbe..a83d54a84a60 100644
--- a/dev-libs/libdnet/Manifest
+++ b/dev-libs/libdnet/Manifest
@@ -1,7 +1,9 @@
DIST libdnet-1.16.2.tar.gz 675191 BLAKE2B 04e4533dbe45700decec4755c7db608d0ca68be05431bf44e6984b2c6a4aec55888fc0f0159916c8ac4a60ec5f743047d2a0a541786cd13fda61739bd7eef0fb SHA512 4b1902553a57eeb56952968e15be032de92d8106dc6e0ebf8e10470605c9c2ed69cb015f4057a5c119d01509c6795fc0dcda85a311d14124dddefdeb6223f848
DIST libdnet-1.16.4.tar.gz 684358 BLAKE2B 40be891c9004288329aaee0c79a29ebf0f095dfaaca4da98fd5ecfd759e22b8d10dc6b906200db1ac5b0a8cfbbea8fbe509da393e60cddeb5f875ad179cdc67a SHA512 6c5556e365047afcc5da3f76b1c99aa70723c076a7cf75c03d96a661a583dfa6d0ab605076e68efffe5ddca2d69875e4bc4938e0874b8aa24915fcfbfe3f3ff9
DIST libdnet-1.17.0.tar.gz 684645 BLAKE2B b208cb41201145411b1949531cb1ab27b4edc6026b8ca703c24231fdb021f46bfe922eb1da11090c271f439339f5384c93168fad3130ed2f89b3d2eca5c7f89f SHA512 b207b2f61e3759a2b17827eabf37b0eb68cb9fa27418f99ee4efd754b01dfe8504dff465664b14054d54df334195d43963d142c7104dc603b2b8b1491590d2a7
+DIST libdnet-1.18.0.tar.gz 740145 BLAKE2B 67f9257e0a05c6c768609c288de9a8704a7ba9d66142bcf849929fa3dbc7b59e379cef2a917d01d4ccfa63b5dfffaf7225f9c67f94e6e91c528a3066fae8c933 SHA512 c074828a1ecd21c292f9120c7afb6b3c11e967d1e0aaca78e75a5558e96f5e65e0d24b68b8386c33c1c28734a3d30f5857d394796e049d521c8b4a9a2c8dcea9
EBUILD libdnet-1.16.2.ebuild 1487 BLAKE2B 4d64d85c38a042642cfa408c8efde1959a291c6e11cd87c8030e258f4196c52d5bdc21017b6b554609c52e977e3f619e55fe1e32505374b64e5634e0f7c43b02 SHA512 a0fa5cd49edb6cecc2ae4f8ca5fd3018cde8d926bedfc8dac40b8598d9b1ca269d9ed28ae0d9c69ad411aa3a0d9f2e20954acfe04a872f7bacd3b4b6209b1d01
EBUILD libdnet-1.16.4.ebuild 1656 BLAKE2B ae80580d5bc7356f15656301952d32ab8cb378c6c04f34bfa48322140dfa815c6f5f2f9de9148b8c1576c00e041807b322b4e20155f6c8d9fa0771de80da2c13 SHA512 d1c6d190c359f12bdeb25440f89c32d29145da43d3de90900db79670420067fce15eccfaaef9d7dd5a17d24f3dedcbb8b8ab5ff0d5c89a1d46af48eef03657ee
EBUILD libdnet-1.17.0.ebuild 1694 BLAKE2B 28220e61da04de8acdb0b9ccf8b9639877e46ba9cdb2b931dbedc83f78dae485fd9c7df60556922df06de37c83bdefeea614ceb8314906ebe2f4796a2229c2c3 SHA512 0c5f36eb0445327af59cf4296c06f37ab3f49702458a3d0e4706c898f67e3cde690309cf113f2c1a87e101c6d21792d8459e21ce616b282011ccc4a137df81ba
+EBUILD libdnet-1.18.0.ebuild 1694 BLAKE2B 202ab60d2715a7dbb86937cf60661107a3dae2502f99e3fa54259fc6a4353b60b0955461c0762bf6e0b3a33bef3e070f590e4ba651a48168c871055222b5a28e SHA512 91ab8c8276ad6f9ae4c86d0b423e24cf4df5951037852d0df3c11fe40c8f8ece4cf621258fad1524a211c8f90b4c8749c4baf5d365087b2f8f2b59dbb6441821
MISC metadata.xml 413 BLAKE2B 91e8ea8dfe7585b6bcce394bc63e466cd7094b8b12ecb4f6b03303b37575387250f81c85a3be03cf8b36cbe10ef724794c86afec5decb5f042d0cde5db2bfdc6 SHA512 af7f752fa0811cb6e57b2398a86f5c57bbc0af1e3392ff3c26af27568ae3ed5232f765558f5e3b01cb6a6e3debfe2b0b893fc2c3598776d94eb6318744ca6fce
diff --git a/dev-libs/libdnet/libdnet-1.18.0.ebuild b/dev-libs/libdnet/libdnet-1.18.0.ebuild
new file mode 100644
index 000000000000..acb3b2536aa4
--- /dev/null
+++ b/dev-libs/libdnet/libdnet-1.18.0.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_EXT=1
+DISTUTILS_OPTIONAL=1
+inherit autotools distutils-r1
+
+DESCRIPTION="Simplified, portable interface to several low-level networking routines"
+HOMEPAGE="https://github.com/ofalk/libdnet"
+SRC_URI="https://github.com/ofalk/${PN}/archive/${P}.tar.gz"
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="python test"
+# Tests fail in sandbox
+RESTRICT="!test? ( test ) test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="
+ dev-libs/libbsd
+ python? ( ${PYTHON_DEPS} )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ python? ( dev-python/cython[${PYTHON_USEDEP}] )
+ test? ( dev-libs/check )
+"
+
+DOCS=( README.md THANKS )
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e 's/libcheck.a/libcheck.so/g' \
+ configure.ac || die
+ sed -i \
+ -e "s/lib\/libcheck/$(get_libdir)\/libcheck/g" \
+ configure.ac || die
+ sed -i \
+ -e 's|-L$libdir ||g' \
+ dnet-config.in || die
+ sed -i \
+ -e '/^SUBDIRS/s|python||g' \
+ Makefile.am || die
+
+ # Stale e.g. pkg-config macros w/ bashisms
+ rm aclocal.m4 {config,m4}/libtool.m4 || die
+
+ AT_M4DIR="config" eautoreconf
+
+ if use python; then
+ cd python || die
+ distutils-r1_src_prepare
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_with python) \
+ $(use_enable test check)
+}
+
+src_compile() {
+ default
+
+ if use python; then
+ cd python || die
+ distutils-r1_src_compile
+ fi
+}
+
+src_install() {
+ default
+
+ if use python; then
+ cd python || die
+ unset DOCS
+ distutils-r1_src_install
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-libs/xapian-bindings/Manifest b/dev-libs/xapian-bindings/Manifest
index bca5c3ca5bcb..aba434b2f4c7 100644
--- a/dev-libs/xapian-bindings/Manifest
+++ b/dev-libs/xapian-bindings/Manifest
@@ -3,7 +3,9 @@ AUX xapian-bindings-1.4.22-remove-precompiled-python.patch 774 BLAKE2B c6c75b017
DIST xapian-bindings-1.4.22.tar.xz 1074840 BLAKE2B 49c71ece1a159a21b95ff8b6d30c5786e6fd2d1744f0a2e27427b83a85ebced6106ab57655715f6e2089bc3e56da32d6f2ad3d71303a1b75316c7d1a61f84cd0 SHA512 0d1b615646d1bdf383e4e32ae152c1493a23ad173232929c8153bb311b3f5b6c6728f29f46f703854c9249ffb35cb620eda1d68cf742c2150f628c19ed55c10f
DIST xapian-bindings-1.4.23.tar.xz 1076480 BLAKE2B 521563f86d3be88458cee220065cbdbf27633f87535b1702c8c3484860533dc9395060c72582420e32b854601c1ee1eb424e03a9251965215de834f2b130b154 SHA512 25ac17baf1f288dedce70b983cba294d4ce100f6f5b607c76f5b697c04f6b08c276a55ccd5b9cc9c429664e1bb86f0fc31d88c72481a9cc951942efdfa9726a2
DIST xapian-bindings-1.4.24.tar.xz 1112744 BLAKE2B 1910ad8b78c9ae011b51001e90d74eaa2ecc9ff0c44dae34e1a63a3de79e041dd25e6c0aff06e1cf954aecd0a2ab899f7474c25fddc55676dcad6bf8d12eae14 SHA512 e3d178679aaaf99efa1a19f764014f835783e72b057cb8c8a83eb4cb610e93bd4e6756410321770f6d7fa14986c71be19aaa140fb8267a848d4c8c96cc26d540
+DIST xapian-bindings-1.4.25.tar.xz 1076644 BLAKE2B 190c560d341039c68b35421c1a75e791537f9c2c353a5f0871d45055909e2863cd4ede3062a6b641e1572b74db8c049a0266a6c305e7d41bfb5d5c63057ef3e3 SHA512 119f62b53d487319e33aaf0c473e479a52b3831a46b23724188dada13f341e08facc7b79641c00ba7b0507c22b55c7b700182e65b5a195cd322be2098bcca183
EBUILD xapian-bindings-1.4.22.ebuild 6976 BLAKE2B ea23791aa486a3b066a8da0b3695c0bdd0b66de3272ab3c25205f9fe2ccd8d73c4ecf15b525acf62495c319f1098da6f0744f1be6710c51e649b12984bdeef92 SHA512 1d4ca57739273a4e2e1ae3a3c511c35cd1132d3d44419388213dc1285fd00af822fc52a17901cf792043ec90999d904c5b862d56710c8c127932ecee093b9671
EBUILD xapian-bindings-1.4.23.ebuild 6998 BLAKE2B f61ba4fc7c25795b6462d0ffcc3295bb8614a078cae3e3d6924055f0552cdaf5c6c9a4f2c7decbbd2ca62c2168bfb1c6fd4a6b4be3ac8371b7452c398597892b SHA512 36950daac189c644d5ec77c6c653b96125c42720744fa692a1e793c15f298db97141aabc1d7eff8a0a6e52fdd00f1e524bb39a12371b29b74959ce1a259ffb74
EBUILD xapian-bindings-1.4.24.ebuild 6993 BLAKE2B 59cfb88061fe1b91ed3b611d43ffa5c61f1c529f4f9aa63f0218e8f5fdc3146a9d455eb41c2e54f18a8f9c6b8be5a38423bde575543fdfb290c827fdf8fa672e SHA512 6637e2f96890c161f54c0871ac0fd9dcce19f855421b03205967a132954061f15aefba896a1e93ddab7cb246e8a5436a63415b6581c0eb8b31416a17ede529b4
+EBUILD xapian-bindings-1.4.25.ebuild 6993 BLAKE2B e56dd8e71ce3277a59b3b4f6bc68368fc7d02f8b09c846173dda15533fe6ee5882a22eab9fe454bbbba2124b742073f42c660b8a42eb78c03a96dff499a456cc SHA512 6682570fcb8b382d9fab3eb1884a2a3b53048d4082f45e2af099c769378f0135c47c0c94ed5ee52a210700f744257d3aa947559e4ac6381304f6fe34472a839b
MISC metadata.xml 168 BLAKE2B 2e0e000b4c3b6ca04c12903fdbe278415c05a822623c52e9aa95cbbf3d50bcb1246b7edbda7d2f6b559af8950c6374e6e0a69b76319964cfe686bf50b0604a57 SHA512 4dcf45d1809e8390a2d8155c8ebfe0dd610203e392aeab0ccd8a10f42cc8532a4925eff32b35e7a6c35598a4efd288229034ec0732299dbd8cfa0acff705fed3
diff --git a/dev-libs/xapian-bindings/xapian-bindings-1.4.25.ebuild b/dev-libs/xapian-bindings/xapian-bindings-1.4.25.ebuild
new file mode 100644
index 000000000000..a929cc8d30bd
--- /dev/null
+++ b/dev-libs/xapian-bindings/xapian-bindings-1.4.25.ebuild
@@ -0,0 +1,346 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-{1,3,4} luajit )
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="threads(+)"
+
+USE_PHP="php8-1 php8-2"
+
+PHP_EXT_NAME="xapian"
+PHP_EXT_INI="yes"
+PHP_EXT_OPTIONAL_USE="php"
+
+USE_RUBY="ruby31 ruby32"
+RUBY_OPTIONAL="yes"
+
+# mono-env does not support EAPI 8
+inherit autotools java-pkg-opt-2 lua mono-env multibuild php-ext-source-r3 python-r1 ruby-ng
+
+DESCRIPTION="SWIG and JNI bindings for Xapian"
+HOMEPAGE="https://xapian.org/"
+SRC_URI="https://oligarchy.co.uk/xapian/${PV}/${P}.tar.xz"
+S="${WORKDIR}/${P}" # need this here, some inherited eclasses change it
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="java lua mono perl php python ruby tcl"
+REQUIRED_USE="
+ || ( java lua mono perl php python ruby tcl )
+ lua? ( ${LUA_REQUIRED_USE} )
+ python? ( ${PYTHON_REQUIRED_USE} )
+ ruby? ( || ( $(ruby_get_use_targets) ) )
+"
+
+COMMON_DEPEND="
+ ~dev-libs/xapian-${PV}
+ lua? ( ${LUA_DEPS} )
+ mono? ( dev-lang/mono )
+ perl? ( dev-lang/perl:= )
+ php? ( dev-lang/php:=[-threads] )
+ python? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ ${PYTHON_DEPS}
+ )
+ ruby? ( $(ruby_implementations_depend) )
+ tcl? ( dev-lang/tcl:= )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ virtual/pkgconfig
+ java? ( >=virtual/jdk-1.8:* )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ java? ( >=virtual/jre-1.8:* )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.4.22-remove-precompiled-python.patch
+ "${FILESDIR}"/${PN}-1.4.22-fix-java-installation.patch
+)
+
+has_basic_bindings() {
+ # Update this list if new bindings are added that are not built
+ # multiple times for multiple versions like lua, php, python and ruby are
+ return $(use mono || use java || use perl || use tcl)
+}
+
+php_copy_sources() {
+ local MULTIBUILD_VARIANTS=($(php_get_slots))
+ multibuild_copy_sources
+}
+
+php_foreach_impl() {
+ local MULTIBUILD_VARIANTS=($(php_get_slots))
+ multibuild_foreach_variant "$@"
+}
+
+ruby_copy_sources() {
+ local MULTIBUILD_VARIANTS=($(ruby_get_use_implementations))
+ multibuild_copy_sources
+}
+
+ruby_foreach_impl() {
+ local MULTIBUILD_VARIANTS=($(ruby_get_use_implementations))
+ multibuild_foreach_variant "$@"
+}
+
+pkg_setup() {
+ use mono && mono-env_pkg_setup
+ use java && java-pkg-opt-2_pkg_setup
+}
+
+src_unpack() {
+ default
+
+ if use php; then
+ local php_slot
+ for php_slot in $(php_get_slots); do
+ # Unfortunately required for php-ext-source-r3_createinifiles().
+ mkdir "${WORKDIR}/${php_slot}"
+ done
+ fi
+}
+
+src_prepare() {
+ eapply "${PATCHES[@]}"
+ eautoreconf
+
+ use java && java-pkg-opt-2_src_prepare
+
+ # https://trac.xapian.org/ticket/702
+ export XAPIAN_CONFIG="/usr/bin/xapian-config"
+
+ if use lua; then
+ lua_copy_sources
+ fi
+
+ if use php; then
+ php_copy_sources
+ fi
+
+ if use python; then
+ python_copy_sources
+ fi
+
+ if use ruby; then
+ ruby_copy_sources
+ fi
+
+ eapply_user
+}
+
+src_configure() {
+ # Needed to get e.g. test failure details
+ MAKEOPTS+=" VERBOSE=1"
+
+ if has_basic_bindings ; then
+ local conf=(
+ --disable-documentation
+ $(use_with mono csharp)
+ $(use_with java)
+ $(use_with perl)
+ $(use_with tcl)
+ --without-lua
+ --without-php
+ --without-python
+ --without-python3
+ --without-ruby
+ )
+
+ if use java; then
+ local -x CXXFLAGS="${CXXFLAGS} $(java-pkg_get-jni-cflags)"
+ fi
+
+ if use perl; then
+ local -x PERL_ARCH="$(perl -MConfig -e 'print $Config{installvendorarch}')"
+ local -x PERL_LIB="$(perl -MConfig -e 'print $Config{installvendorlib}')"
+ fi
+
+ econf "${conf[@]}"
+ fi
+
+ lua_configure() {
+ local myconf=(
+ --disable-documentation
+ --without-csharp
+ --without-java
+ --without-perl
+ --without-tcl
+ --without-php
+ --without-python
+ --without-python3
+ --without-ruby
+ --with-lua
+ )
+
+ local -x LUA_INC="$(lua_get_include_dir)"
+ local -x LUA_LIB="$(lua_get_cmod_dir)"
+
+ econf "${myconf[@]}"
+
+ }
+
+ if use lua; then
+ lua_foreach_impl run_in_build_dir lua_configure
+ fi
+
+ php_configure() {
+ local myconf=(
+ --disable-documentation
+ --without-java
+ --without-lua
+ --without-csharp
+ --without-perl
+ --without-python
+ --without-python3
+ --without-ruby
+ --without-tcl
+ --with-php
+ )
+ local -x PHP_CONFIG="${EPREFIX}/usr/$(get_libdir)/${MULTIBUILD_VARIANT/-/.}/bin/php-config"
+
+ econf "${myconf[@]}"
+ }
+
+ if use php; then
+ addpredict /usr/share/snmp/mibs/.index
+ addpredict /var/lib/net-snmp/mib_indexes
+
+ php_foreach_impl run_in_build_dir php_configure
+ fi
+
+ python_configure() {
+ local myconf=(
+ --disable-documentation
+ --without-java
+ --without-lua
+ --without-csharp
+ --without-perl
+ --without-php
+ --without-ruby
+ --without-tcl
+ --with-python3
+ )
+
+ # Avoid sandbox failures when compiling modules
+ addpredict "$(python_get_sitedir)"
+
+ econf "${myconf[@]}"
+ }
+
+ if use python; then
+ python_foreach_impl run_in_build_dir python_configure
+ fi
+
+ ruby_configure() {
+ local myconf=(
+ --disable-documentation
+ --without-java
+ --without-lua
+ --without-csharp
+ --without-perl
+ --without-php
+ --without-python
+ --without-python3
+ --with-ruby
+ --without-tcl
+ )
+ local -x RUBY="${EPREFIX}/usr/bin/${MULTIBUILD_VARIANT}"
+
+ econf "${myconf[@]}"
+ }
+
+ if use ruby; then
+ ruby_foreach_impl run_in_build_dir ruby_configure
+ fi
+}
+
+src_compile() {
+ if has_basic_bindings ; then
+ default
+ fi
+
+ if use lua; then
+ lua_foreach_impl run_in_build_dir emake
+ fi
+
+ if use php; then
+ php_foreach_impl run_in_build_dir emake
+ fi
+
+ if use python; then
+ unset PYTHONDONTWRITEBYTECODE
+ python_foreach_impl run_in_build_dir emake
+ fi
+
+ if use ruby; then
+ ruby_foreach_impl run_in_build_dir emake
+ fi
+}
+
+src_test() {
+ if has_basic_bindings ; then
+ default
+ fi
+
+ if use lua; then
+ lua_foreach_impl run_in_build_dir emake check
+ fi
+
+ if use php; then
+ php_foreach_impl run_in_build_dir emake check
+ fi
+
+ if use python; then
+ python_foreach_impl run_in_build_dir emake check
+ fi
+
+ if use ruby; then
+ ruby_foreach_impl run_in_build_dir emake check
+ fi
+}
+
+src_install() {
+ if has_basic_bindings ; then
+ emake DESTDIR="${D}" install
+ fi
+
+ if use java; then
+ java-pkg_dojar java/built/xapian.jar
+ java-pkg_doso java/.libs/libxapian_jni.so
+ fi
+
+ if use lua; then
+ lua_foreach_impl run_in_build_dir emake DESTDIR="${D}" install
+ fi
+
+ if use php; then
+ php_foreach_impl run_in_build_dir emake DESTDIR="${D}" install
+ php-ext-source-r3_createinifiles
+ # php-ext-source-r3_createinifiles() changes current directory.
+ cd "${S}"
+ fi
+
+ if use python; then
+ python_foreach_impl run_in_build_dir emake DESTDIR="${D}" install
+ python_foreach_impl python_optimize
+ fi
+
+ if use ruby; then
+ ruby_foreach_impl run_in_build_dir emake DESTDIR="${D}" install
+ find "${ED}"/usr/share/doc/${PF}/ruby/rdocs/js -name \*.gz -delete || die
+ fi
+
+ # For some USE combinations this directory is not created
+ if [[ -d "${ED}/usr/share/doc/xapian-bindings" ]]; then
+ mv "${ED}/usr/share/doc/xapian-bindings" "${ED}/usr/share/doc/${PF}" || die
+ fi
+
+ dodoc AUTHORS HACKING NEWS TODO README
+}
diff --git a/dev-libs/xapian/Manifest b/dev-libs/xapian/Manifest
index 3c5f928ad6bd..5c968550bd19 100644
--- a/dev-libs/xapian/Manifest
+++ b/dev-libs/xapian/Manifest
@@ -1,7 +1,9 @@
DIST xapian-core-1.4.22.tar.xz 3019608 BLAKE2B f4aec86cd5f63f6f1825a4f8f427ea23be2092ffb4ca11a2fdf20bdf652e7b9f768b1155bcf7ee5e5c5313206c92e1725d1b4d562e3074539a2e8f9901c44f8e SHA512 60d66adbacbd59622d25e392060984bd1dc6c870f9031765f54cb335fb29f72f6d006d27af82a50c8da2cfbebd08dac4503a8afa8ad51bc4e6fa9cb367a59d29
DIST xapian-core-1.4.23.tar.xz 3024644 BLAKE2B e26a9fd5e79daf553b474e3c794178df2cdcd83ce7d7a45ae112dde624d6e7add157c76fda3a333afce6103b2edaf7e3c928e78c47aa1fd19821c3c73926442f SHA512 52dffc93301f99aa150dda8ecd5fb7cc7d0f2ce30e60f393b1058055ade24281af16cf5b5c0e6b08e4754e3d18c39bb5bc068b19330a294ad460ef8a6bc56380
DIST xapian-core-1.4.24.tar.xz 3194164 BLAKE2B fc3484df448d2102d47005b2819eea8eee3fdb4337a42967e2b535187e4b7be9841a8e12b19291f29bdef52b3270529f94376fe91d5e4c70afebaf690a23b18f SHA512 2b156dd90784264d6bf64e66aca559578f946c013bb52e14e56fcd96e9c2fece71c236735b13d2baad0d7f2d410dea3ae54c94cd80f735baf1071bafe2e5c01c
+DIST xapian-core-1.4.25.tar.xz 3205904 BLAKE2B 7b03a8fabc3c688f58b3451541dedb664de0a02d7c46a4e8eac080c004232575c00428110eaab0ea463df5c3f43f2b4cebfbe6754f897e55f113683c1db43b2b SHA512 e8069f2cb75554978716a99580fb57fc73bbdd607c82394f53d07205d8c78fb59265004be0c676a6806bb2840a3933499dfc867e36a28855278569a0676d469d
EBUILD xapian-1.4.22.ebuild 1398 BLAKE2B 6e07efec41d17aed2bad9aeb396297a541143eed799dec4fddb0b07f98a2dab9a910ee94f02a3ada2fba4d4d21795477d22132738f6a232333a7dcc9d8c20e6c SHA512 13dca9f8cc0c0e91612540d39042b7928026c4fdeb5bedf624c83dec045d82fcdedeaac18dbc3235f9d2702777cb68923ed86e560f79984cad503620c78a2785
EBUILD xapian-1.4.23.ebuild 1405 BLAKE2B 09494d14f4d2655ac5c159ec16c5e5bd3b4bb1e044037f434c1205e511108b4159eb22a77b0624a7145dceceab89225f70a73577089f98609c426c252db0e25c SHA512 d39ede4bc59862166324c994c01af32a17731619b85ca4da832c40b1262fb1c971c321702015e9b4b08f16dc4446856bd3e20b1392a3814a2883a1ba0f6c0904
EBUILD xapian-1.4.24.ebuild 1524 BLAKE2B d76e93f55f218b1ec6328c996d8dd56b2a49a396a18b9fc5fb341836a4bb357bcf696e9df9280d1ff4d8518209a6c4cd22d9390f50b0434c0962b9e1e13218b8 SHA512 ecdc47a3a92d964ab9a17a15d4bc9da46caa0fe61c3d3bef297dfeec2c7c0d244865b228e0c5cdfb4414b23494c675bc02e881873f1a2fb2a802d675e6ff2a64
+EBUILD xapian-1.4.25.ebuild 1524 BLAKE2B d76e93f55f218b1ec6328c996d8dd56b2a49a396a18b9fc5fb341836a4bb357bcf696e9df9280d1ff4d8518209a6c4cd22d9390f50b0434c0962b9e1e13218b8 SHA512 ecdc47a3a92d964ab9a17a15d4bc9da46caa0fe61c3d3bef297dfeec2c7c0d244865b228e0c5cdfb4414b23494c675bc02e881873f1a2fb2a802d675e6ff2a64
MISC metadata.xml 728 BLAKE2B 7873e39dfb724c6f3268a7de74226d86dea77e6dd53b21aa0df104db1d30efa5c24c18b8e6597acc45b4b6bb39f1f069b7944ef0ebc2906e75a2b5efeed02ebc SHA512 5f582793cee9b74f5b36f57d6997120cf61c4f4204c49694d07b9ace813a9821710a812df2db315e9effa4913fa3b62ab069be96399369f46cc7c811b6d728ba
diff --git a/dev-libs/xapian/xapian-1.4.25.ebuild b/dev-libs/xapian/xapian-1.4.25.ebuild
new file mode 100644
index 000000000000..dc4d3f009870
--- /dev/null
+++ b/dev-libs/xapian/xapian-1.4.25.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_P="${PN}-core-${PV}"
+DESCRIPTION="Xapian Probabilistic Information Retrieval library"
+HOMEPAGE="https://xapian.org/"
+SRC_URI="https://oligarchy.co.uk/xapian/${PV}/${MY_P}.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0/30" # ABI version of libxapian.so
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+IUSE="cpu_flags_x86_sse cpu_flags_x86_sse2 debug static-libs"
+
+DEPEND="
+ sys-libs/zlib:=
+ !elibc_Darwin? ( !elibc_SunOS? ( sys-apps/util-linux ) )
+ elibc_SunOS? ( sys-libs/libuuid )
+"
+RDEPEND="${DEPEND}"
+
+DOCS=( AUTHORS HACKING PLATFORMS README NEWS )
+
+src_configure() {
+ tc-export_build_env BUILD_CC
+ local -x CC_FOR_BUILD="${BUILD_CC}"
+
+ # skip certain autoconf checks
+ local -x VALGRIND=
+ local -x EATMYDATA=
+
+ local -a myconf=(
+ --docdir="${EPREFIX}"/usr/share/doc/${PF}/html
+ --disable-werror
+ --enable-backend-chert
+ --enable-backend-glass
+ --enable-backend-inmemory
+ --enable-backend-remote
+ --program-suffix=
+ $(use_enable debug assertions)
+ $(use_enable debug log)
+ $(use_enable static-libs static)
+ )
+
+ if use cpu_flags_x86_sse2; then
+ myconf+=( --enable-sse=sse2 )
+ elif use cpu_flags_x86_sse; then
+ myconf+=( --enable-sse=sse )
+ else
+ myconf+=( --disable-sse )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ default
+ find "${ED}" -name "*.la" -type f -delete || die
+}
diff --git a/dev-libs/zziplib/Manifest b/dev-libs/zziplib/Manifest
index e90aec22251e..ceeb6f00cc23 100644
--- a/dev-libs/zziplib/Manifest
+++ b/dev-libs/zziplib/Manifest
@@ -1,6 +1,8 @@
AUX zziplib-0.13.72-Wint-conversion.patch 1043 BLAKE2B 6ff6a4079cd6fba6f67649eb41e175caae47455bcd31d4deebaa2e4e66995c8d9c0aa6ef3f9d2edbb18570f47a5e6350eb7ba2a644e7115954876357b3fe64e9 SHA512 45af2a1268ded5a2e88ce6956e3ad775e7c51ac4aebea753d630d53e465d3444bcdcbbc5d8e47b6843cd50d5cd3d1467648eba9059dad2fbb52704bf4525ce29
AUX zziplib-0.13.72-incompatible-pointer-types.patch 1838 BLAKE2B 4211b5cb8f6ae4531ffb8463714f96ed9850a2a61e41449923519c99ac218fe54872363ade9238f52071b05b92e0f7660800300bbb4047865004e694cfb20429 SHA512 09a4af9a2880fe410fcbbbf3f6ba0af329f781e8a5078a634851298f27bb13eba83f010c0e3ff7c6e9d4a699b60935737d23383efc577401e3436cba502f0cf2
DIST zziplib-0.13.72.tar.gz 1162175 BLAKE2B ff5617645e25040e4666e5440651fbb2b04c0505c7bda08b158f44c63c5dd53ec97a9942908314c3b103a4685be49368e964d249fcf9b9d685e328f0ebabdedd SHA512 4bb089e74813c6fac9657cd96e44e4a6469bf86aba3980d885c4573e8db45e74fd07bbdfcec9f36297c72227c8c0b2c37dab1bc4326cef8529960e482fe501c8
-EBUILD zziplib-0.13.72-r3.ebuild 1515 BLAKE2B 11c9a3507e5bd65c4d94b2e293e705abdda30377daf6dc9c0ced41194463fd77b46ee95e11c6493f14968da8206a5727322569460c615ebd806e2e03fa5c6890 SHA512 7dccdcdfed66231264e38ab697db070f133d6e70ca6fd4ca4b0358f4bf19927b367d7196957ca951a039a028de1ace0035e96c48e6bac0c0cedeb804b5d0c4d6
+DIST zziplib-0.13.74-testdata.tar.xz 166188 BLAKE2B f3cc98495542fb95e8bd9cfb98ecd22c9e6206fd13c1d0607ee8b7640ddb3d3c4b9cb7bc7ca7a95a787ffef4e5a8c2b4ab1bc0c5890811ab21c681239840dcdb SHA512 d4545f770c4f00658ec69a7f393f38d0c649704adb30b6a25f2c0b48711829416985258d34911d48b9bd394d9334ab89c8deda719f2aae509a75441f8a8d8902
+DIST zziplib-0.13.74.tar.gz 1177162 BLAKE2B fc093b731406101086e59ff54b4378190c88821c4349d75e35c9595b45695b5f91a20e99a9689f7ebbc8d8951f2c4e1132d670e3827f5329977de1f85c9ce5d2 SHA512 7dd27247cbc475e2c6beb3a96c620f9938ade0dff6f4e088f9c28432fc4cc01df9d6771ec3d5e07baabe27033f4764d60e31c4c54588559de64e894d0557c94f
EBUILD zziplib-0.13.72-r4.ebuild 1577 BLAKE2B d52d3777e8be065ee571c6bbda759aa993d5a84f5d4122016f541a85fb72932e045d5d63c4a25fb86a7885125fb3e7ec7f61843e3ec529516f2da4131fe806f2 SHA512 bdaad58efe6ed6ef6b82605e40a41b7cb67dc2a59cbff76d6e8b2b0e41835c05e95b99e134c8893de24795d0099d03b7981fb271602d76fb34f9de206ff1b9fe
+EBUILD zziplib-0.13.74.ebuild 1963 BLAKE2B ba2799b6028a222854945a06c52e661e0762b252ee1962d2a885c19a5cc36fdfb483e9d8e41de5711c6c50743dec87df2bf6c792602d43e8776fe55267d54f4e SHA512 49359e857a318714f0c18334b7b4f3622f24ddc01920fc7e0c6cf68a1d8e98b9a56775cc284104b707af41ab6004bb5b74b30b74d3899e02da999ee5a391a022
MISC metadata.xml 300 BLAKE2B 5bd0efee346b2d954d36b1dd83e1d8ef54944ec7f7fb3a88bdcba73b2f85d0236cd638f763388ed43a30c44f9db5b83223310d66232731e6d37ef57315c04129 SHA512 0a233cbfe081cd55c76d8229261f1d8d8a8bf1435886c36e938a3a059a2db9b44bed165b7aeddbe568756a3e19e3cbd12dbee659a5a8eb2feea21c5f2ab35d22
diff --git a/dev-libs/zziplib/zziplib-0.13.72-r3.ebuild b/dev-libs/zziplib/zziplib-0.13.72-r3.ebuild
deleted file mode 100644
index f220fc191712..000000000000
--- a/dev-libs/zziplib/zziplib-0.13.72-r3.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-# Needed for docs, bug #835755
-PYTHON_REQ_USE="xml(+)"
-inherit cmake flag-o-matic python-any-r1
-
-DESCRIPTION="Lightweight library for extracting data from files archived in a single zip file"
-HOMEPAGE="https://github.com/gdraheim/zziplib https://zziplib.sourceforge.net"
-SRC_URI="https://github.com/gdraheim/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( LGPL-2.1 MPL-1.1 )"
-SLOT="0/13"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="sdl static-libs"
-
-# Tests require internet access
-# https://github.com/gdraheim/zziplib/issues/24
-
-BDEPEND="
- ${PYTHON_DEPS}
-"
-DEPEND="
- sys-libs/zlib
- sdl? ( >=media-libs/libsdl-1.2.6 )
-"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.13.72-Wint-conversion.patch
-)
-
-src_configure() {
- # https://github.com/gdraheim/zziplib/commit/f3bfc0dd6663b7df272cc0cf17f48838ad724a2f#diff-b7b1e314614cf326c6e2b6eba1540682R100
- append-flags -fno-strict-aliasing
- # https://github.com/gdraheim/zziplib/issues/140 (bug #869980)
- append-flags $(test-flags-CC -Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion)
-
- local mycmakeargs=(
- -DZZIPSDL="$(usex sdl)"
- -DBUILD_STATIC_LIBS="$(usex static-libs)"
- -DBUILD_TESTS=OFF
- -DZZIPTEST=OFF
- -DZZIPDOCS=ON
- -DZZIPWRAP=OFF
- )
-
- cmake_src_configure
-}
diff --git a/dev-libs/zziplib/zziplib-0.13.74.ebuild b/dev-libs/zziplib/zziplib-0.13.74.ebuild
new file mode 100644
index 000000000000..cef1f31dd237
--- /dev/null
+++ b/dev-libs/zziplib/zziplib-0.13.74.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+# Needed for docs, bug #835755
+PYTHON_REQ_USE="xml(+)"
+inherit cmake flag-o-matic python-any-r1
+
+TEST_PV="0.13.74"
+DESCRIPTION="Lightweight library for extracting data from files archived in a single zip file"
+HOMEPAGE="https://github.com/gdraheim/zziplib https://zziplib.sourceforge.net"
+# Test data tarball generated with python ./zziptests.py -D -d /tmp/zziplib -v
+SRC_URI="
+ https://github.com/gdraheim/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ test? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-${TEST_PV}-testdata.tar.xz )
+"
+
+LICENSE="|| ( LGPL-2.1 MPL-1.1 )"
+SLOT="0/13"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="sdl test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ test? (
+ app-arch/unzip
+ app-arch/zip
+ )
+"
+DEPEND="
+ sys-libs/zlib
+ sdl? ( >=media-libs/libsdl-1.2.6 )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # This test assumes being built with automake (checks for .libs/x).
+ sed -i -e 's/test_91000_zzshowme_check_sfx/skip_&/' test/zziptests.py || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ # https://github.com/gdraheim/zziplib/commit/f3bfc0dd6663b7df272cc0cf17f48838ad724a2f#diff-b7b1e314614cf326c6e2b6eba1540682R100
+ append-flags -fno-strict-aliasing
+
+ local mycmakeargs=(
+ -DZZIPSDL=$(usex sdl)
+ -DBUILD_TESTS=$(usex test)
+ -DZZIPTEST=$(usex test)
+ -DZZIPDOCS=ON
+ -DZZIPWRAP=OFF
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ cd "${S}" || die
+ "${EPYTHON}" "${S}"/test/zziptests.py \
+ --downloads=no \
+ --verbose \
+ --topsrcdir "${S}" \
+ --bindir "$(realpath --relative-to="${S}" "${BUILD_DIR}"/bins)" \
+ --downloaddir "${WORKDIR}"/${PN}-${TEST_PV}-testdata \
+ --testdatadir "${T}"/testdata.d \
+ || die "Tests failed with ${EPYTHON}"
+}