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 +}
