commit:     06c73580d2856c64b8ea015a518d8f49e1f1aa11
Author:     Daniel Novomeský <dnovomesky <AT> gmail <DOT> com>
AuthorDate: Mon Jun 23 18:28:27 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jun 24 12:28:32 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06c73580

media-libs/libavif: add 1.3.0

Bug: https://bugs.gentoo.org/958975
Signed-off-by: Daniel Novomeský <dnovomesky <AT> gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/42713
Closes: https://github.com/gentoo/gentoo/pull/42713
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/libavif/Manifest             |   1 +
 media-libs/libavif/libavif-1.3.0.ebuild | 130 ++++++++++++++++++++++++++++++++
 2 files changed, 131 insertions(+)

diff --git a/media-libs/libavif/Manifest b/media-libs/libavif/Manifest
index 2fc863bee70a..365daaeb2693 100644
--- a/media-libs/libavif/Manifest
+++ b/media-libs/libavif/Manifest
@@ -1,3 +1,4 @@
 DIST libargparse-ee74d1b53bd680748af14e737378de57e2a0a954.tar.gz 22394 BLAKE2B 
18b08d8d8723e0b9c4b018ff318c1f45c3903996621be123508cfab7c193d7311fd0349bd0855202498f26c40287b9af3eb582fb53ca8efd0107ee1bc154385b
 SHA512 
6d6e47f4c1a63f085a90bc4d9f6dca7462f5e72d2a4a3b7a6d6df54632edbd4a9deb8f9b8c08517031b0c9ca89e0a1b48bb35261b3e660e4601e28a39f8e7ef1
 DIST libavif-1.1.1.tar.gz 13644189 BLAKE2B 
c0a473b172206ea32358c28e7b94d8038b24030e4845611341076518cd82fd2bea78eb8e22e5481062b893ffb70789619ce4f85129a94a0db70a667c000f4fd0
 SHA512 
ba72b8d02b098f361643a073361fccafd22eaac14e46dd06378d5e7acd9853538c5d166473e1de0b020de62dac25be83e42bd57ba51f675d11e2ddf155fbfa21
 DIST libavif-1.2.0.tar.gz 13939380 BLAKE2B 
272d855bec6568dc15f2a953fdf79ec1df190e151c2f265ea00f680f2c828780e0875580d72000fb56a0252c7ae06ef115f2b609db23ec3afc9e8a1c4bac4197
 SHA512 
f88eda1c699910a20e63a0aa0bcf782fb67b477c4d99aa88723628a53b0d849f35f73ff6a2e8bb53e170dc77662bde4a5c5c38b655f5adcfb73ddcf7ec264805
+DIST libavif-1.3.0.tar.gz 14062497 BLAKE2B 
15d5006769e03dfb88f71c77629720406cb7d140538d8f4bbfb846b9beb0676891d0829a78debb79c74b876bc1863d99d5ac17f993854ee360db984a7797bdc1
 SHA512 
a411579c851b7c46ddbd93c3549295e0901d822c817f5378b2c75b6a4f16eba1dffdf611bd1789dedeba776e701690a7437f9caeb9eb6dc382fc64935949dbf4

diff --git a/media-libs/libavif/libavif-1.3.0.ebuild 
b/media-libs/libavif/libavif-1.3.0.ebuild
new file mode 100644
index 000000000000..9020f5b2e7a6
--- /dev/null
+++ b/media-libs/libavif/libavif-1.3.0.ebuild
@@ -0,0 +1,130 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib gnome2-utils
+
+ARGPARSE_COMMIT="ee74d1b53bd680748af14e737378de57e2a0a954"
+DESCRIPTION="Library for encoding and decoding .avif files"
+HOMEPAGE="https://github.com/AOMediaCodec/libavif";
+SRC_URI="
+       https://github.com/AOMediaCodec/libavif/archive/v${PV}.tar.gz
+               -> ${P}.tar.gz
+       extras? (
+               
https://github.com/kmurray/libargparse/archive/${ARGPARSE_COMMIT}.tar.gz
+                       -> libargparse-${ARGPARSE_COMMIT}.tar.gz
+       )
+"
+
+LICENSE="
+       BSD-2
+       extras? ( MIT )
+"
+# See bug #822336 re subslot
+SLOT="0/16.3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc64 ~riscv ~sparc 
~x86"
+IUSE="+aom dav1d examples extras gdk-pixbuf rav1e svt-av1 libyuv test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="|| ( aom dav1d )"
+
+DEPEND="
+       media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}]
+       media-libs/libpng:=[${MULTILIB_USEDEP}]
+       aom? ( >=media-libs/libaom-3.3.0:=[${MULTILIB_USEDEP}] )
+       dav1d? ( >=media-libs/dav1d-1.0.0:=[${MULTILIB_USEDEP}] )
+       extras? (
+               test? (
+                       dev-cpp/gtest
+                       media-gfx/imagemagick[lcms]
+               )
+       )
+       gdk-pixbuf? (
+               dev-libs/glib:2[${MULTILIB_USEDEP}]
+               x11-libs/gdk-pixbuf:2[${MULTILIB_USEDEP}]
+       )
+       rav1e? ( >=media-video/rav1e-0.5.1:=[capi] )
+       svt-av1? ( >=media-libs/svt-av1-0.9.1:= )
+       libyuv? ( media-libs/libyuv:= )
+"
+RDEPEND="
+       ${DEPEND}
+"
+BDEPEND="
+       virtual/pkgconfig
+"
+
+src_prepare() {
+       cmake_src_prepare
+
+       # Bug: https://bugs.gentoo.org/951614
+       if use extras; then
+               mv "${WORKDIR}/libargparse-${ARGPARSE_COMMIT}" 
"${S}/ext/libargparse" ||
+                       die "mv failed"
+       fi
+}
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               -DBUILD_SHARED_LIBS=ON
+               -DAVIF_CODEC_LIBGAV1=OFF
+
+               # Use system libraries.
+               -DAVIF_CODEC_AOM=$(usex aom SYSTEM OFF)
+               -DAVIF_CODEC_DAV1D=$(usex dav1d SYSTEM OFF)
+               -DAVIF_ZLIBPNG=SYSTEM
+               -DAVIF_JPEG=SYSTEM
+
+               -DAVIF_BUILD_GDK_PIXBUF=$(usex gdk-pixbuf ON OFF)
+
+               -DAVIF_ENABLE_WERROR=OFF
+       )
+
+       if multilib_is_native_abi; then
+               mycmakeargs+=(
+                       -DAVIF_CODEC_RAV1E=$(usex rav1e SYSTEM OFF)
+                       -DAVIF_CODEC_SVT=$(usex svt-av1 SYSTEM OFF)
+                       -DAVIF_LIBYUV=$(usex libyuv SYSTEM OFF)
+
+                       -DAVIF_BUILD_EXAMPLES=$(usex examples ON OFF)
+                       -DAVIF_BUILD_APPS=$(usex extras ON OFF)
+                       -DAVIF_BUILD_TESTS=$(usex test ON OFF)
+                       -DAVIF_GTEST=$(usex extras $(usex test SYSTEM OFF) OFF)
+               )
+       else
+               mycmakeargs+=(
+                       -DAVIF_CODEC_RAV1E=OFF
+                       -DAVIF_CODEC_SVT=OFF
+                       -DAVIF_LIBYUV=OFF
+
+                       -DAVIF_BUILD_EXAMPLES=OFF
+                       -DAVIF_BUILD_APPS=OFF
+                       -DAVIF_BUILD_TESTS=OFF
+                       -DAVIF_GTEST=OFF
+               )
+
+               if ! use aom ; then
+                       if use rav1e || use svt-av1 ; then
+                               ewarn "libavif on ${MULTILIB_ABI_FLAG} will 
work in read-only mode."
+                               ewarn "Support for rav1e and/or svt-av1 is is 
not available on ${MULTILIB_ABI_FLAG}"
+                               ewarn "Enable aom flag for full support on 
${MULTILIB_ABI_FLAG}"
+                       fi
+               fi
+       fi
+
+       cmake_src_configure
+}
+
+pkg_postinst() {
+       if ! use aom && ! use rav1e && ! use svt-av1 ; then
+               ewarn "No AV1 encoder is set,"
+               ewarn "libavif will work in read-only mode."
+               ewarn "Enable aom, rav1e or svt-av1 flag if you want to save 
.AVIF files."
+       fi
+
+       use gdk-pixbuf && multilib_foreach_abi gnome2_gdk_pixbuf_update
+}
+
+pkg_postrm() {
+       use gdk-pixbuf && multilib_foreach_abi gnome2_gdk_pixbuf_update
+}

Reply via email to