summaryrefslogtreecommitdiff
path: root/app-arch
diff options
context:
space:
mode:
Diffstat (limited to 'app-arch')
-rw-r--r--app-arch/Manifest.gzbin18264 -> 18273 bytes
-rw-r--r--app-arch/libarchive/Manifest3
-rw-r--r--app-arch/libarchive/libarchive-3.7.8.ebuild173
-rw-r--r--app-arch/patool/Manifest2
-rw-r--r--app-arch/patool/patool-3.1.3.ebuild2
-rw-r--r--app-arch/zstd/Manifest2
-rw-r--r--app-arch/zstd/files/zstd-1.5.7-move-pragma-before-static.patch45
-rw-r--r--app-arch/zstd/zstd-1.5.7-r1.ebuild72
8 files changed, 297 insertions, 2 deletions
diff --git a/app-arch/Manifest.gz b/app-arch/Manifest.gz
index 2b2f0a131390..1bf754cc0943 100644
--- a/app-arch/Manifest.gz
+++ b/app-arch/Manifest.gz
Binary files differ
diff --git a/app-arch/libarchive/Manifest b/app-arch/libarchive/Manifest
index 1a64a8d453b7..c5e81368458f 100644
--- a/app-arch/libarchive/Manifest
+++ b/app-arch/libarchive/Manifest
@@ -1,5 +1,8 @@
AUX libarchive-3.7.2-lrzip.patch 1095 BLAKE2B 011c61282f5ad91436e8155458695c5f0b9144e21ae856ba319927e6431d9730257d6e7f7ebcc916ad784e24b2f4ff2af75955aa0493ea3705fa8826f632f163 SHA512 71e3aefe7d3e5faa6cd47e350e52135d594184d957cf3e2d592e3770971ff3fed8886b7fe6c897c94efa15b3b9e9d15be05686178d201b422d4503e3878b704d
DIST libarchive-3.7.7.tar.xz 5480580 BLAKE2B e118c693f7a78e86ab868fc6c2c77beba539cf5c7d5999e270cdceb225e9f85c68c938ec6ce3a33f75b2a44a6f7debe2c280d2573c1bcf05806300e8dce1a4f0 SHA512 2524f71f4c2ebc254a1927279be3394e820d0a0c6dec7ef835a862aa08c35756edaa4208bcdc710dd092872b59c200b555b78670372e2830822e278ff1ec4e4a
DIST libarchive-3.7.7.tar.xz.asc 659 BLAKE2B 066d97312ded566e2c96ffc4603477fc829bcf17dcc057249dad51a0abea7aa5559691c0c25b581212168f8442db028a2dcc34148c648e973450fcb9dd5e35af SHA512 9f532df76bc381b40d7454a7bbbab85e34a646167ee7ca197fae45c713002e32f40e2b2871bc4a0d7149df19e69e2079efd9ab2f22eccf959b203604293d6094
+DIST libarchive-3.7.8.tar.xz 5493312 BLAKE2B ba058b2fa2afbfe53127d6ffd0a7ab00d9e8faf62340ae2eb8871a0ca232c2de482dbff2c4eedf2c45d944eb555123d765c462818158046bb72951f6421d9ea0 SHA512 a2b6c8c337e75bcce73126c30a3b564dc586df973780d9c7d5a9eed693dbe3779bf762b64c49c47203c2768c92a4a7d2dc8c0445b1dc398eafd2d58b0ba5aae6
+DIST libarchive-3.7.8.tar.xz.asc 659 BLAKE2B 2050214592b0add7cbd758b815c4289a8760bfb2e5b5db581afdbe741d348252b73f99919641cacd908b586cf4f8fc30a591d88b869bd607adc837251d8fbd4e SHA512 3f1d70318f5e2369fa59e94f91bf8473630a448ded11e2ff3502657380221b9e11e849dc98ba0806c3110c7267cee251f7d681db27751e2a45a948f6ad558404
EBUILD libarchive-3.7.7.ebuild 4617 BLAKE2B b50a720bd43687ccc3a4d78284ffc7848c149e20fdc65ca3102e26e7234ae3c3739c5f3d36f8027fc4ff6bd0e7c0bbdd0d0e41848a229f9d5814cf73c7ead846 SHA512 bc274e264d64f612ab46187aa236ef9a876f4c9a4b897a64667fc378c17e5445827136ef8a17aee47e08a8ede2736617fa1ec33adc2b9e6e812bf95a6be5e090
+EBUILD libarchive-3.7.8.ebuild 4619 BLAKE2B d17b705a9790d11fb02dbad88d3c57f4ef8f7a1f3360eea507f8d62cd3e3d8b02835f046adcaf2bc9a51ad0819fbe7755b0832eae958963a4f923ea2fdd1e31e SHA512 02b93a60c8ca9f97062d229cecea47a0bda136bcfcfb04063d49208647d585eb0996cd2835c17f9834458d9112293b8f1ee501db0ad6f88d663cc11f12f823d5
MISC metadata.xml 1224 BLAKE2B 538433528de5543ad8e912ce0d072340be3f6eeefe16320ef48b3c30a35ebdff4a32055edf89f36e4479ab1468c620871fcb5ba91bd66e81798093b4d0345949 SHA512 9f53d623a02334f675c06edea2829ce52e78d85e3894e684ae920a678eb47046393b7a93808c7e1761d30a69faa5986cd4922ae7ef8f1e2ef221de39869bd12b
diff --git a/app-arch/libarchive/libarchive-3.7.8.ebuild b/app-arch/libarchive/libarchive-3.7.8.ebuild
new file mode 100644
index 000000000000..c393e6cf1f67
--- /dev/null
+++ b/app-arch/libarchive/libarchive-3.7.8.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit libtool multilib-minimal toolchain-funcs verify-sig
+
+DESCRIPTION="Multi-format archive and compression library"
+HOMEPAGE="
+ https://www.libarchive.org/
+ https://github.com/libarchive/libarchive/
+"
+SRC_URI="
+ https://www.libarchive.de/downloads/${P}.tar.xz
+ verify-sig? ( https://www.libarchive.de/downloads/${P}.tar.xz.asc )
+"
+
+LICENSE="BSD BSD-2 BSD-4 public-domain"
+SLOT="0/13"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="
+ acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle
+ static-libs test xattr +zstd
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ sys-libs/zlib:=[${MULTILIB_USEDEP}]
+ acl? ( virtual/acl:=[${MULTILIB_USEDEP}] )
+ blake2? ( app-crypt/libb2:=[${MULTILIB_USEDEP}] )
+ bzip2? ( app-arch/bzip2:=[${MULTILIB_USEDEP}] )
+ expat? ( dev-libs/expat:=[${MULTILIB_USEDEP}] )
+ !expat? ( dev-libs/libxml2:=[${MULTILIB_USEDEP}] )
+ iconv? ( virtual/libiconv:=[${MULTILIB_USEDEP}] )
+ dev-libs/openssl:=[${MULTILIB_USEDEP}]
+ lz4? ( >=app-arch/lz4-0_p131:=[${MULTILIB_USEDEP}] )
+ lzma? ( >=app-arch/xz-utils-5.2.5-r1:=[${MULTILIB_USEDEP}] )
+ lzo? ( >=dev-libs/lzo-2:=[${MULTILIB_USEDEP}] )
+ nettle? ( dev-libs/nettle:=[${MULTILIB_USEDEP}] )
+ zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ kernel_linux? (
+ virtual/os-headers
+ e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] )
+ )
+ test? (
+ app-arch/lrzip
+ app-arch/lz4
+ app-arch/lzip
+ app-arch/lzop
+ app-arch/xz-utils
+ app-arch/zstd
+ lzma? ( app-arch/xz-utils[extra-filters(+)] )
+ )
+"
+BDEPEND="
+ verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20221209 )
+ elibc_musl? ( sys-libs/queue-standalone )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc
+
+# false positives (checks for libc-defined hash functions)
+QA_CONFIG_IMPL_DECL_SKIP=(
+ SHA256_Init SHA256_Update SHA256_Final
+ SHA384_Init SHA384_Update SHA384_Final
+ SHA512_Init SHA512_Update SHA512_Final
+)
+
+PATCHES=(
+ # https://github.com/libarchive/libarchive/issues/2069
+ # (we can simply update the command since we don't support old lrzip)
+ "${FILESDIR}/${PN}-3.7.2-lrzip.patch"
+)
+
+src_prepare() {
+ default
+
+ # Needed for flags to be respected w/ LTO
+ elibtoolize
+}
+
+multilib_src_configure() {
+ export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
+
+ local myconf=(
+ $(use_enable acl)
+ $(use_enable static-libs static)
+ $(use_enable xattr)
+ $(use_with blake2 libb2)
+ $(use_with bzip2 bz2lib)
+ $(use_with expat)
+ $(use_with !expat xml2)
+ $(use_with iconv)
+ $(use_with lz4)
+ $(use_with lzma)
+ $(use_with lzo lzo2)
+ $(use_with nettle)
+ --with-zlib
+ $(use_with zstd)
+
+ # Windows-specific
+ --without-cng
+ )
+ if multilib_is_native_abi ; then
+ myconf+=(
+ --enable-bsdcat="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdcpio="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdtar="$(tc-is-static-only && echo static || echo shared)"
+ --enable-bsdunzip="$(tc-is-static-only && echo static || echo shared)"
+ )
+ else
+ myconf+=(
+ --disable-bsdcat
+ --disable-bsdcpio
+ --disable-bsdtar
+ --disable-bsdunzip
+ )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi ; then
+ emake
+ else
+ emake libarchive.la
+ fi
+}
+
+src_test() {
+ mkdir -p "${T}"/bin || die
+ # tests fail when lbzip2[symlink] is used in place of ref bunzip2
+ ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die
+ # workaround lrzip broken on 32-bit arches with >= 10 threads
+ # https://bugs.gentoo.org/927766
+ cat > "${T}"/bin/lrzip <<-EOF || die
+ #!/bin/sh
+ exec "$(type -P lrzip)" -p1 "\${@}"
+ EOF
+ chmod +x "${T}/bin/lrzip" || die
+ local -x PATH=${T}/bin:${PATH}
+ multilib-minimal_src_test
+}
+
+multilib_src_test() {
+ # sandbox is breaking long symlink behavior
+ local -x SANDBOX_ON=0
+ local -x LD_PRELOAD=
+ # some locales trigger different output that breaks tests
+ local -x LC_ALL=C.UTF-8
+ emake check
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi ; then
+ emake DESTDIR="${D}" install
+ else
+ local install_targets=(
+ install-includeHEADERS
+ install-libLTLIBRARIES
+ install-pkgconfigDATA
+ )
+ emake DESTDIR="${D}" "${install_targets[@]}"
+ fi
+
+ # Libs.private: should be used from libarchive.pc instead
+ find "${ED}" -type f -name "*.la" -delete || die
+ # https://github.com/libarchive/libarchive/issues/1766
+ sed -e '/Requires\.private/s:iconv::' \
+ -i "${ED}/usr/$(get_libdir)/pkgconfig/libarchive.pc" || die
+}
diff --git a/app-arch/patool/Manifest b/app-arch/patool/Manifest
index 8408cc2e052e..6f6442a51291 100644
--- a/app-arch/patool/Manifest
+++ b/app-arch/patool/Manifest
@@ -2,6 +2,6 @@ DIST patool-3.0.3.tar.gz 2003565 BLAKE2B 988b918f52c5f050c78fdd16351d95c2c23351e
DIST patool-3.1.3.tar.gz 2007436 BLAKE2B cd90ec04671181f192a416577c30c88ea68293e5c5f86b0d5b82953a4870dff5d0b4b05b1ea8fcd4ffcf13ecb7718d4ee062ca3e57822258a4a0f0505bc92509 SHA512 59565a806c683a9cd0d134f491d92b7a76adee4bf3bfeaf13cc82d3b99daa8aaef8c8699e0dfc491a4e2a9cd87569d0f69408335ae3adaf37d947a8a80d84f50
DIST patool-4.0.0.tar.gz 2007828 BLAKE2B 230a6b7876db3d995f1b76bb9b3e28d3dc6b50eb933d8290226971800e101ceb462a5dc0f2e5b2782a0c450df09abbfaffad667b94fcb88303845e72cec5ef05 SHA512 4f2dbfe4bdedea18eb6959c19c2e08109380b43f604684a866ebad888c9ced23495f19a97964f18ea4ae011dcdfd0ec7e1a652dd6fd4e8e21c7e482a00fafd20
EBUILD patool-3.0.3.ebuild 3031 BLAKE2B e6b50e8c0b06619226f7ffbf63379dac39d80426d53bd9572351c52de73963794f742a94b01d712c619c4f6c482da5f03e438df6c2fb3ab243a222d77cd91e2c SHA512 c8fe25ecdcafd831058084e0c9017345f4587293647d51ee98073420cf58ed6cec252a8cd42b803fd56c890a8e28fb0e8b5aef382a4b953308e5fe69d577df0e
-EBUILD patool-3.1.3.ebuild 2657 BLAKE2B 05767c093fcee9e0ae2dab301abc08a4637535741c8caa0a9f3ef6afd611fe36acc70d47dd402cf1e865ca420693eae845aaf7ad57db003445c7d8d54bc4f1fe SHA512 2f884eef708d1c33af6c0bd701ba4a3c66ad00af5364efdac56d2d35e181dac0de18dcc08737544f39bad0ba9521b54249aae3296dde453c3d9a7f96e924cde7
+EBUILD patool-3.1.3.ebuild 2656 BLAKE2B 61f2dab2807cfa9fc5d7f33852c4e120afa5b46ffa47deddd4ac04580f7cbaac35e108864037ba97b7dfa15e15713493764d01becebae4c605c88cda1ff4b187 SHA512 c82fe2a2d7a15362cc9754d27499a9ed13768681bcb7579b4155aca09f10366673d8427d3e1e6be87a197cb7759bd7ae2232cb5cda3349fb28bc183296b4e6d0
EBUILD patool-4.0.0.ebuild 2657 BLAKE2B dca80b493beed23d2c353116a0df4ca27ec84300ffd3a8e468bd1eec4e312af69f47f87e2d45f8a3d24295d31cf73e8724bf6ec76d10707ff73a5f1259b44bd5 SHA512 94d72113cbb51ea6c3bef9e823925daebcf1569a804bcfd169804c54c420933fab3af095d8cb9d1db0cf29fde527a9559c32c83a8bb62320a8f1e184c3492fcf
MISC metadata.xml 539 BLAKE2B b19f1ad36967b42e152a23108851ad6eabcd7f44fd1faeeb4c345ff812b97d4b4079afc83653c1fd0dd005943a152cba44210132389e1ec956a434d24e97486d SHA512 b557ec32ca1211faa72e108a7f769f4ffb3a08075a4010aee2f9ced79a9f7f8c26f60bf26e2587d4a0cbb3cf6d52ea52d9102407ed548cdd41f53c67dd10d7bb
diff --git a/app-arch/patool/patool-3.1.3.ebuild b/app-arch/patool/patool-3.1.3.ebuild
index 339f8d9c0ad1..330f0402e287 100644
--- a/app-arch/patool/patool-3.1.3.ebuild
+++ b/app-arch/patool/patool-3.1.3.ebuild
@@ -14,7 +14,7 @@ HOMEPAGE="https://wummel.github.io/patool/"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
BDEPEND="
test? (
diff --git a/app-arch/zstd/Manifest b/app-arch/zstd/Manifest
index 75e6a3663349..7f38e37f85ee 100644
--- a/app-arch/zstd/Manifest
+++ b/app-arch/zstd/Manifest
@@ -1,6 +1,8 @@
AUX zstd-1.5.4-no-find-valgrind.patch 596 BLAKE2B 28c5bcc005511703833fc73b2f11ee7a42a69c5e762e71c269265c42585fe4cf167a4bdba4f0e36e8e0e7a61e01e0f992c9417690bc879978d575823aa5e1884 SHA512 ad6cd84fde1a4f29710ecffe40854a8bbad0b1428000a57d706b221411675e2d79958c940dc955ec27020cfb7c9a14b7ac84cfe15759a5d07552d46f94b7df88
+AUX zstd-1.5.7-move-pragma-before-static.patch 1495 BLAKE2B f388b79231bcd5ecb1ae8737c9de577729acd542ceaa81f19c24bdc4ad3cf720aa68c220186c2c4a44476aee8e59c281b58f27b3ef6c1680d0a31ca34dcf922d SHA512 427a885b2156ce0b7d2712ebf62cc6c601b5d5d548b8ce9bde13a320f114ffc343c8c96195cf01428165d625bb4869460c6905cc267c9b8ad34cabecd05ecbc3
DIST zstd-1.5.6.tar.gz 2406875 BLAKE2B fe17cf0950f8ee2cc07bfa2b41e97f36a1832e396386cb94a55bede975dc974920578cf147b39eecbc5b53ff06fe0dc1fe781a4cab9bc9f767ea28c0e786422e SHA512 54a578f2484da0520a6e9a24f501b9540a3fe3806785d6bc9db79fc095b7c142a7c121387c7eecd460ca71446603584ef1ba4d29a33ca90873338c9ffbd04f14
DIST zstd-1.5.7.tar.gz 2434947 BLAKE2B ef6bcf13bbb79edce2de21ef4860b01dcb4d2dd47ebd03657d5331c3bb1a207ef128e99ed907a32e787dca7bb51df225ebd8abb2097d03d02c003ca713e1e271 SHA512 b4de208f179b68d4c6454139ca60d66ed3ef3893a560d6159a056640f83d3ee67cdf6ffb88971cdba35449dba4b597eaa8b4ae908127ef7fd58c89f40bf9a705
EBUILD zstd-1.5.6.ebuild 2205 BLAKE2B 33feb555f8b95ad7244e6b51c4418108f28bc596ba655fbbf1c66c9e7e19f4e4fb43719308f25fd107dc336160b245f75b57f91e10d4ea0f01cfda544c9d27ab SHA512 6e8b6905e5e9e7dc1f15a0d25d1cdb1f429f1bc0f440f10db7f0a4b234baf675a521dbcb1332ae359c76c7b7595c5339037b86d2717188b7f2c4ef79d07fa800
+EBUILD zstd-1.5.7-r1.ebuild 1764 BLAKE2B f360c90c6b6dc1a5928df6e60411fc47ab2bba7612bd5d450a3d9721e6cc806a9bb16e3a7dbb1c93c210f245876f7f3b601af307908a998f61d225b388f4cd1f SHA512 57e5e2aa3ac92c7bbf07e294d4f1cce5612e816662418be0c5ce35bfd6c632b7a50ebdce97525a2329cc02e22031e1907fa5137f318103c76a25b03c5cdc11aa
EBUILD zstd-1.5.7.ebuild 1698 BLAKE2B 32512524b7be7e7775009898a20638d4157edef09b86701abe828c57fd2b1038f2894a456597ae2019ff9d602ac885960ee299b9e0ee6f88e6a911eb560b4d18 SHA512 a37500e03e6cd076bf38624db1297f667841b28eabbc5a03397989e03ecd9a1eae2550d8ee40eec214958dd6a22fb20d0d9873959ad18b4f218afce0d7db20f9
MISC metadata.xml 302 BLAKE2B 66692581b8918a23bab99bb3b0909702327c1acf2b7f8ec2fbfdf74ff75a8f178ce1140e0a9d46b64983dfe9529134db842a5a60a86b7fcbbd5db88e844d136d SHA512 097c09d06824c85919b21bc841c791851b1a7d1a6c6d16a26bbe9bed9dfb1522cacdd2b430b8ff51762fb73b388d88ec679d46570b2e56b36352ea2cf20e46f6
diff --git a/app-arch/zstd/files/zstd-1.5.7-move-pragma-before-static.patch b/app-arch/zstd/files/zstd-1.5.7-move-pragma-before-static.patch
new file mode 100644
index 000000000000..42b7266a2ccc
--- /dev/null
+++ b/app-arch/zstd/files/zstd-1.5.7-move-pragma-before-static.patch
@@ -0,0 +1,45 @@
+https://github.com/facebook/zstd/pull/4341
+
+From cd8ca9d92e6fb3a4c962f8f6f50c3ee467177e06 Mon Sep 17 00:00:00 2001
+From: "Z. Liu" <zhixu.liu@gmail.com>
+Date: Thu, 20 Mar 2025 03:28:37 +0000
+Subject: [PATCH] lib/zstd.h: move pragma before static
+
+otherwise will cause dev-python/zstandard build failed when compiling with
+clang as reported at https://bugs.gentoo.org/950259
+
+the root cause is pycparser, which is unfixed since reported 2.5 years
+ago, :(
+
+Signed-off-by: Z. Liu <zhixu.liu@gmail.com>
+---
+ lib/zstd.h | 9 ++++-----
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/lib/zstd.h b/lib/zstd.h
+index 9fe542ed..85046949 100644
+--- a/lib/zstd.h
++++ b/lib/zstd.h
+@@ -1868,15 +1868,14 @@ ZSTDLIB_STATIC_API const ZSTD_DDict* ZSTD_initStaticDDict(
+ typedef void* (*ZSTD_allocFunction) (void* opaque, size_t size);
+ typedef void (*ZSTD_freeFunction) (void* opaque, void* address);
+ typedef struct { ZSTD_allocFunction customAlloc; ZSTD_freeFunction customFree; void* opaque; } ZSTD_customMem;
+-static
+-#ifdef __GNUC__
+-__attribute__((__unused__))
+-#endif
+-
+ #if defined(__clang__) && __clang_major__ >= 5
+ #pragma clang diagnostic push
+ #pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant"
+ #endif
++static
++#ifdef __GNUC__
++__attribute__((__unused__))
++#endif
+ ZSTD_customMem const ZSTD_defaultCMem = { NULL, NULL, NULL }; /**< this constant defers to stdlib's functions */
+ #if defined(__clang__) && __clang_major__ >= 5
+ #pragma clang diagnostic pop
+--
+2.45.2
+
diff --git a/app-arch/zstd/zstd-1.5.7-r1.ebuild b/app-arch/zstd/zstd-1.5.7-r1.ebuild
new file mode 100644
index 000000000000..a42999c07ecc
--- /dev/null
+++ b/app-arch/zstd/zstd-1.5.7-r1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib
+
+DESCRIPTION="zstd fast compression library"
+HOMEPAGE="https://facebook.github.io/zstd/"
+SRC_URI="https://github.com/facebook/zstd/releases/download/v${PV}/${P}.tar.gz"
+S="${WORKDIR}"/${P}/build/meson
+
+LICENSE="|| ( BSD GPL-2 )"
+SLOT="0/1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="+lzma lz4 static-libs test zlib"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ lzma? ( app-arch/xz-utils )
+ lz4? ( app-arch/lz4:= )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+MESON_PATCHES=(
+ # Workaround until Valgrind bugfix lands
+ "${FILESDIR}"/${PN}-1.5.4-no-find-valgrind.patch
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.5.7-move-pragma-before-static.patch
+)
+
+src_prepare() {
+ cd "${WORKDIR}"/${P} || die
+ default
+
+ cd "${S}" || die
+ eapply "${MESON_PATCHES[@]}"
+}
+
+multilib_src_configure() {
+ local native_file="${T}"/meson.${CHOST}.${ABI}.ini.local
+
+ # This replaces the no-find-valgrind patch once bugfix lands in a meson
+ # release + we can BDEPEND on it (https://github.com/mesonbuild/meson/pull/11372)
+ cat >> ${native_file} <<-EOF || die
+ [binaries]
+ valgrind='valgrind-falseified'
+ EOF
+
+ local emesonargs=(
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
+
+ $(meson_native_true bin_programs)
+ $(meson_native_true bin_contrib)
+ $(meson_use test bin_tests)
+
+ $(meson_native_use_feature zlib)
+ $(meson_native_use_feature lzma)
+ $(meson_native_use_feature lz4)
+
+ --native-file "${native_file}"
+ )
+
+ meson_src_configure
+}
+
+multilib_src_test() {
+ meson_src_test --timeout-multiplier=2
+}