commit:     0ee55dd2ded04b272e4203ad7d17351bfa3e3955
Author:     Alfred Wingate <parona <AT> protonmail <DOT> com>
AuthorDate: Tue May 20 13:47:39 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jun 12 10:56:11 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ee55dd2

media-libs/svt-av1: add 3.0.2

* Drop decoder from description as it was removed in 2.1.1
  https://gitlab.com/AOMediaCodec/SVT-AV1/-/releases#211---2024-06-25
* System cpuinfo required on amd64.
  https://gitlab.com/AOMediaCodec/SVT-AV1/-/releases#300---2025-2-20
* Hook up tests and drop arm64 keyword due to that.

Thanks-To: David Weber <weber.aulendorf <AT> gmail.com>
Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/42170
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/svt-av1/Manifest             |  1 +
 media-libs/svt-av1/svt-av1-3.0.2.ebuild | 71 +++++++++++++++++++++++++++++++++
 profiles/arch/amd64/package.use.mask    |  4 ++
 profiles/arch/arm64/package.use.mask    |  4 ++
 profiles/base/package.use.mask          |  5 +++
 5 files changed, 85 insertions(+)

diff --git a/media-libs/svt-av1/Manifest b/media-libs/svt-av1/Manifest
index 4c5ffbd3eae6..c36de69c7b5b 100644
--- a/media-libs/svt-av1/Manifest
+++ b/media-libs/svt-av1/Manifest
@@ -1,4 +1,5 @@
 DIST SVT-AV1-v1.4.1.tar.bz2 9440077 BLAKE2B 
ed79d566afaa22fdfb1925bf6a75e8e55abdec1f76333a0cfedc92f9ca524b36b622b5c40af5d4846a51a3cd9aa951eb617bf6007513d83b7f172c4f9bb0de27
 SHA512 
8297ef131ff8e7e6cbb0d19d2ba98904455d2953cde3fb0cbae714d050980a558e4cbed911968b5075d7aca758ca939a5091b68df557903387e3f22ac4bda1a1
 DIST SVT-AV1-v1.5.0.tar.bz2 9490521 BLAKE2B 
6f54c1706ed65b8248bc434411cfdea5869765c42682100f5aa6b72d08626bd896f6a9a8067ac8af3c89c72bd324e74942b0f424ff33cc2f6ff54d9204ef7581
 SHA512 
d5aa7679aeaa1e19f21906a36a7214c72cdaee77e1b5c1946ded43f8381ec2d705e671130589207b65b920a4fcaa9ca1d0037f88ef8d2303125d7f7aa54e3a2e
 DIST SVT-AV1-v2.1.2.tar.bz2 11764554 BLAKE2B 
ad9b7a732ce3991ddbe796e52db1559928c10c94fb40e584c5e4ad0af8ac49b056c4b5219d62a3dfc0dc5122b82980fdab1675a80b8a20366da42f0dcebee9d4
 SHA512 
5858ac456971dd2d41ab6bf0e181cc9dfd9d408fb7ec0ee20d51a62cb2b92ea60fc389aea6478b8cce679f731fbac21e2ae0343a33e8e5b35efffc84d51d41d6
+DIST SVT-AV1-v3.0.2.tar.bz2 10202794 BLAKE2B 
29ccaa27e1c8e94e1cbe32922a5b17984d0979acf4be39556c0846e4493f00232db269d64315b0cedb94ef04f6928bb4ec295b0c977b70e47af55e6f5a998062
 SHA512 
dfe110011d0c249d3541c3950e96b8e1c6c3b5041cb7eee0f64a3414b8c7439bddac15e3de36305da89f05b418f2a54025fe2513c5377d2eefa4bd778ebbafb9
 DIST svt-av1-1.1.0.tar.gz 9882945 BLAKE2B 
2673fdbe17b36607e581cc540ca181672d16b3fbc0dd9c1a8b100ebea6b7a6872d6fa55976cb19c1c8afd50c5c09b67fbec1bcc892007ccd41e7f7ad68027d83
 SHA512 
87d661183de33554d228c2fa72deb9a945f2550083eb25688b4dc0676be384373a6a52af235066d85ce963ffbc7751c8afb46a2bc1c09e00f81ea0db5a232522

diff --git a/media-libs/svt-av1/svt-av1-3.0.2.ebuild 
b/media-libs/svt-av1/svt-av1-3.0.2.ebuild
new file mode 100644
index 000000000000..f8d73c3c1b62
--- /dev/null
+++ b/media-libs/svt-av1/svt-av1-3.0.2.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib edo multiprocessing
+
+DESCRIPTION="Scalable Video Technology for AV1 (SVT-AV1 Encoder)"
+HOMEPAGE="https://gitlab.com/AOMediaCodec/SVT-AV1";
+
+if [[ ${PV} = 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://gitlab.com/AOMediaCodec/SVT-AV1.git";
+else
+       
SRC_URI="https://gitlab.com/AOMediaCodec/SVT-AV1/-/archive/v${PV}/SVT-AV1-v${PV}.tar.bz2";
+       KEYWORDS="~alpha ~amd64 ~arm ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv 
~sparc ~x86"
+       S="${WORKDIR}/SVT-AV1-v${PV}"
+fi
+
+# Also see "Alliance for Open Media Patent License 1.0"
+LICENSE="BSD-2 Apache-2.0 BSD ISC LGPL-2.1+ MIT"
+SLOT="0/$(ver_cut 1)"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="amd64? ( dev-libs/cpuinfo )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       amd64? ( dev-lang/yasm )
+       test? ( dev-util/gtest-parallel )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-1.5.0-fortify-no-override.patch
+)
+
+src_prepare() {
+       cmake_src_prepare
+
+       # Lets not install tests
+       sed -e '/install(/d' -i test/CMakeLists.txt || die
+
+       # Needs more setup to run in the ebuild
+       cmake_run_in test cmake_comment_add_subdirectory api_test
+       # Tries to download stuff for this test
+       cmake_run_in test cmake_comment_add_subdirectory e2e_test
+}
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               # Upstream only supports 64-bit and specially amd64 and arm64.
+               # Other enviroments will fail to build due to missing symbols.
+               -DBUILD_TESTING=$(multilib_native_usex test)
+               -DCMAKE_OUTPUT_DIRECTORY="${BUILD_DIR}"
+               -DUSE_CPUINFO=SYSTEM # will only be used on amd64
+       )
+
+       [[ ${ABI} != amd64 ]] && mycmakeargs+=( -DCOMPILE_C_ONLY=ON )
+
+       cmake_src_configure
+}
+
+multilib_src_test() {
+       if multilib_is_native_abi; then
+               # Upstream uses this, and this gives a significant time save in 
running these tests.
+               # 2025-05-19T19:39:25 >>> media-libs/svt-av1-3.0.2: 1:46:14
+               # 2025-05-20T16:10:34 >>> media-libs/svt-av1-3.0.2: 20′35″
+               edo gtest-parallel --workers "$(makeopts_jobs)" 
"${BUILD_DIR}"/SvtAv1UnitTests
+       fi
+}

diff --git a/profiles/arch/amd64/package.use.mask 
b/profiles/arch/amd64/package.use.mask
index f19e8b522e8e..7d3c37ca3b50 100644
--- a/profiles/arch/amd64/package.use.mask
+++ b/profiles/arch/amd64/package.use.mask
@@ -17,6 +17,10 @@
 
 #--- END OF EXAMPLES ---
 
+# Alfred Wingate <par...@protonmail.com> (2025-05-22)
+# Upstream supports amd64
+media-libs/svt-av1 -test
+
 # Mike Gilbert <flop...@gentoo.org> (2025-05-13)
 # media-libs/libsdl3 is keyworded here.
 net-misc/freerdp -sdl3

diff --git a/profiles/arch/arm64/package.use.mask 
b/profiles/arch/arm64/package.use.mask
index 3bb2d86e1d0b..d06de452a000 100644
--- a/profiles/arch/arm64/package.use.mask
+++ b/profiles/arch/arm64/package.use.mask
@@ -1,6 +1,10 @@
 # Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# Alfred Wingate <par...@protonmail.com> (2025-06-10)
+# Upstream supports arm64
+media-libs/svt-av1 -test
+
 # Andreas Sturmlechner <ast...@gentoo.org> (2025-05-31)
 # Pulls in sci-libs/linux-gpib which is not yet keyworded here
 sci-libs/libsigrok gpib

diff --git a/profiles/base/package.use.mask b/profiles/base/package.use.mask
index df1f6debf013..55ef7e5e676f 100644
--- a/profiles/base/package.use.mask
+++ b/profiles/base/package.use.mask
@@ -6,6 +6,11 @@
 
 # New entries go on top.
 
+# Alfred Wingate <par...@protonmail.com> (2025-06-10)
+# Upstream only supports amd64 and arm64. Other targets will fail to build
+# tests due to missing target specific functions.
+media-libs/svt-av1 test
+
 # Alfred Wingate <par...@protonmail.com> <2025-05-24)
 # Doesn't work well at runtime.
 dev-games/ogre wayland

Reply via email to