# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit autotools DESCRIPTION="Recurrent neural network for audio noise reduction" HOMEPAGE="https://jmvalin.ca/demo/rnnoise/ https://gitlab.xiph.org/xiph/rnnoise" MY_PV="70f1d256acd4b34a572f999a05c87bf00b67730d" MODEL_PV="0a8755f8e2d834eff6a54714ecc7d75f9932e845df35f8b59bc52a7cfe6e8b37" SRC_URI="https://gitlab.xiph.org/xiph/rnnoise/-/archive/${MY_PV}/rnnoise-${MY_PV}.tar.bz2 -> ${P}.tar.bz2 https://media.xiph.org/rnnoise/models/rnnoise_data-${MODEL_PV}.tar.gz" S="${WORKDIR}/${PN}-${MY_PV}" LICENSE="BSD" SLOT="0/0.4.1" # TODO: this is the .so version, PV should match tag version instead. KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" IUSE="doc examples cpu_flags_x86_avx2 cpu_flags_x86_sse4_1" BDEPEND=" doc? ( app-text/doxygen media-gfx/graphviz ) " src_unpack() { unpack "${P}.tar.bz2" cd "${S}" || die [[ "$(cat model_version)" = "${MODEL_PV}" ]] || \ die "Model version mismatch, new version: $(cat model_version)" unpack "rnnoise_data-${MODEL_PV}.tar.gz" } src_prepare() { default eautoreconf } src_configure() { x86_rtcd=enable for x in cpu_flags_x86_{avx2,sse4_1}; do use ${x} || x86_rtcd=disable done local myeconfargs=( $(use_enable doc) $(use_enable examples) --${x86_rtcd}-x86-rtcd ) econf "${myeconfargs[@]}" } src_install() { default use examples && dobin examples/.libs/rnnoise_demo rm "${ED}/usr/share/doc/${PF}/COPYING" || die find "${ED}" -name '*.la' -delete || die }