Michał Górny <[email protected]> writes:

> A new virtual to cover sys-libs/zlib and sys-libs/zlib-ng[compat]
> (+ sys-libs/minizip-ng[compat]).  The latter package is now used
> by an increasing number of distributions, including Arch Linux [1]
> and Fedora [2], and upstream seems to have started taking ABI
> compatibility seriously.  While we aren't planning on switching
> the default anytime soon, it makes sense to provide the option to switch
> one's system.  There is also zlib-rs around the corner [3].
>
> Given how widespread the dependency on sys-libs/zlib is, I think we're
> only going to substitute it in place, without revbumping -- and whoever
> decides to try out zlib-ng will be out for rebuilding everything.
>
> [1] 
> https://lists.archlinux.org/archives/list/[email protected]/thread/UPJYWKUJRQDHNU4IXGFDU6GVEHPSTKDZ/#UPJYWKUJRQDHNU4IXGFDU6GVEHPSTKDZ
> [2] https://fedoraproject.org/wiki/Changes/ZlibNGTransition
> [3] https://github.com/trifectatechfoundation/zlib-rs/issues/419

LGTM. I was unsure about it before but the situation has fortunately
improved wrt zlib-ng compatibility.

For completeness, this is https://bugs.gentoo.org/905376.

>
> Signed-off-by: Michał Górny <[email protected]>
> ---
>  virtual/zlib/metadata.xml  | 11 +++++++++++
>  virtual/zlib/zlib-1.ebuild | 23 +++++++++++++++++++++++
>  2 files changed, 34 insertions(+)
>  create mode 100644 virtual/zlib/metadata.xml
>  create mode 100644 virtual/zlib/zlib-1.ebuild
>
> diff --git a/virtual/zlib/metadata.xml b/virtual/zlib/metadata.xml
> new file mode 100644
> index 0000000000000..e2171ff983981
> --- /dev/null
> +++ b/virtual/zlib/metadata.xml
> @@ -0,0 +1,11 @@
> +<?xml version="1.0" encoding="UTF-8"?>
> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
> +<pkgmetadata>
> +     <maintainer type="project">
> +             <email>[email protected]</email>
> +             <name>Gentoo Base System</name>
> +     </maintainer>
> +     <use>
> +             <flag name="minizip">include the minizip library for quick and 
> dirty zip extraction</flag>
> +     </use>
> +</pkgmetadata>
> diff --git a/virtual/zlib/zlib-1.ebuild b/virtual/zlib/zlib-1.ebuild
> new file mode 100644
> index 0000000000000..2095b6ce181d8
> --- /dev/null
> +++ b/virtual/zlib/zlib-1.ebuild
> @@ -0,0 +1,23 @@
> +# Copyright 2025 Gentoo Authors
> +# Distributed under the terms of the GNU General Public License v2
> +
> +EAPI=8
> +
> +inherit multilib-build
> +
> +DESCRIPTION="Virtual for libz.so providers"
> +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="minizip static-libs"
> +
> +RDEPEND="
> +     || (
> +             sys-libs/zlib[${MULTILIB_USEDEP},minizip?,static-libs?]
> +             (
> +                     
> sys-libs/zlib-ng[${MULTILIB_USEDEP},compat,static-libs(-)?]
> +                     minizip? (
> +                             
> sys-libs/minizip-ng[${MULTILIB_USEDEP},compat,static-libs(-)?]
> +                     )
> +             )
> +     )
> +"

Reply via email to