media-libs/libavif: add v1.2.0 and libyuv useflag

Closes: https://bugs.gentoo.org/916948
Signed-off-by: NRK <nrk@disroot.org>
Signed-off-by: Yixun Lan <dlan@gentoo.org>
This commit is contained in:
NRK
2025-03-07 15:26:50 +00:00
committed by Yixun Lan
parent d04db36e81
commit c464dd0cff
14 changed files with 159 additions and 5 deletions

View File

@@ -1 +1,2 @@
DIST libavif-1.1.1.tar.gz 13644189 BLAKE2B c0a473b172206ea32358c28e7b94d8038b24030e4845611341076518cd82fd2bea78eb8e22e5481062b893ffb70789619ce4f85129a94a0db70a667c000f4fd0 SHA512 ba72b8d02b098f361643a073361fccafd22eaac14e46dd06378d5e7acd9853538c5d166473e1de0b020de62dac25be83e42bd57ba51f675d11e2ddf155fbfa21
DIST libavif-1.2.0.tar.gz 13939380 BLAKE2B 272d855bec6568dc15f2a953fdf79ec1df190e151c2f265ea00f680f2c828780e0875580d72000fb56a0252c7ae06ef115f2b609db23ec3afc9e8a1c4bac4197 SHA512 f88eda1c699910a20e63a0aa0bcf782fb67b477c4d99aa88723628a53b0d849f35f73ff6a2e8bb53e170dc77662bde4a5c5c38b655f5adcfb73ddcf7ec264805

View File

@@ -0,0 +1,113 @@
# Copyright 2020-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake-multilib gnome2-utils
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
"
LICENSE="BSD-2"
# See bug #822336 re subslot
SLOT="0/16.1.1"
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
"
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_LIBYUV=$(usex libyuv SYSTEM OFF)
-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_BUILD_EXAMPLES=$(usex examples ON OFF)
-DAVIF_BUILD_APPS=$(usex extras ON OFF)
-DAVIF_BUILD_TESTS=$(usex test ON OFF)
-DAVIF_ENABLE_GTEST=$(usex extras $(usex test ON OFF) OFF)
-DAVIF_GTEST=$(usex extras $(usex test SYSTEM OFF) OFF)
)
else
mycmakeargs+=(
-DAVIF_CODEC_RAV1E=OFF
-DAVIF_CODEC_SVT=OFF
-DAVIF_BUILD_EXAMPLES=OFF
-DAVIF_BUILD_APPS=OFF
-DAVIF_BUILD_TESTS=OFF
-DAVIF_ENABLE_GTEST=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
}

View File

@@ -1,4 +1,4 @@
# Copyright 2020-2024 Gentoo Authors
# Copyright 2020-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -12,7 +12,7 @@ EGIT_REPO_URI="https://github.com/AOMediaCodec/libavif.git"
LICENSE="BSD-2"
# See bug #822336 re subslot
SLOT="0/${PV}"
IUSE="+aom dav1d examples extras gdk-pixbuf rav1e svt-av1 test"
IUSE="+aom dav1d examples extras gdk-pixbuf rav1e svt-av1 libyuv test"
RESTRICT="!test? ( test )"
REQUIRED_USE="|| ( aom dav1d )"
@@ -33,6 +33,7 @@ DEPEND="
)
rav1e? ( >=media-video/rav1e-0.5.1:=[capi] )
svt-av1? ( >=media-libs/svt-av1-0.9.1:= )
libyuv? ( media-libs/libyuv:= )
"
RDEPEND="
${DEPEND}
@@ -46,14 +47,12 @@ multilib_src_configure() {
-DBUILD_SHARED_LIBS=ON
-DAVIF_CODEC_LIBGAV1=OFF
# bug 916948
-DAVIF_LIBYUV=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_LIBYUV=$(usex libyuv SYSTEM OFF)
-DAVIF_BUILD_GDK_PIXBUF=$(usex gdk-pixbuf ON OFF)

View File

@@ -16,6 +16,7 @@
<flag name="gdk-pixbuf">Build a gdk-pixbuf loader</flag>
<flag name="rav1e">Enable support for the rav1e codec encoding</flag>
<flag name="svt-av1">Enable support for the SVT-AV1 encoder</flag>
<flag name="libyuv">Enable fast YUV conversion via libyuv</flag>
</use>
<upstream>
<bugs-to>https://github.com/AOMediaCodec/libavif/issues</bugs-to>

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Ionen Wolkens <ionen@gentoo.org> (2025-03-10)
# media-libs/libopenmpt is not keyworded here
media-video/ffmpeg openmpt

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Andreas Sturmlechner <asturm@gentoo.org> (2025-03-08)
# Needs kde-frameworks/{kwallet,ki18n,kconfig} stable
dev-vcs/subversion kwallet

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Sam James <sam@gentoo.org> (2025-03-11)
# The COBOL frontend only allows building on a small number of platforms
# for now until more testing and integration is done.

View File

@@ -4,6 +4,10 @@
# NOTE: When masking a USE flag due to missing keywords, please file a keyword
# request bug for the hppa arch.
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Sam James <sam@gentoo.org> (2025-03-17)
# dev-util/babeltrace is not keyworded here
dev-debug/gdb babeltrace

View File

@@ -5,6 +5,10 @@
# media-libs/libebur128 not keyworded here
media-video/pipewire loudness
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Ionen Wolkens <ionen@gentoo.org> (2025-03-10)
# media-libs/libopenmpt is not keyworded here
media-video/ffmpeg openmpt

View File

@@ -10,6 +10,10 @@ media-video/pipewire loudness
# Spidermonkey still declares llvm-17 compat on other arches.
dev-lang/spidermonkey llvm_slot_17
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Sam James <sam@gentoo.org> (2025-03-17)
# dev-util/babeltrace is not keyworded here
dev-debug/gdb babeltrace

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Alfred Wingate <parona@protonmail.com> (2025-02-22)
# media-libs/zint is not keyworded here
media-libs/zxing-cpp experimental

View File

@@ -1,6 +1,10 @@
# Copyright 2019-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Alexey Shvetsov <alexxy@gentoo.org> (2024-11-21)
# sci-ml/caffe2 is not keyworded on riscv
sci-chemistry/gromacs nnpot

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Sam James <sam@gentoo.org> (2025-03-17)
# dev-util/babeltrace is not keyworded here
dev-debug/gdb babeltrace

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libyuv is not keyworded
media-libs/libavif libyuv
# Thibaud CANALE <thican@thican.net> (2025-03-09)
# Google DNS dependencies available (bug 949851)
app-crypt/certbot -certbot-dns-google