commit:     66e6d2375da4e9c55a8745ca4afc174dcadbf135
Author:     Ryan Li <ryanli <AT> ryanli <DOT> org>
AuthorDate: Thu Jan  2 04:21:38 2025 +0000
Commit:     David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Thu Jan  2 04:21:38 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=66e6d237

media-sound/deep-filter: add ladspa use flag and ignore Tinderbox QA0017.

Ignoring QA0017 as this is a Rust project.

Closes: https://bugs.gentoo.org/947322
Signed-off-by: Ryan Li <ryanli <AT> ryanli.org>

 ...er-0.5.6.ebuild => deep-filter-0.5.6-r1.ebuild} | 35 +++++++++++++++++-----
 .../files/deep-filter-library-path.patch           | 26 ++++++++++++++++
 2 files changed, 54 insertions(+), 7 deletions(-)

diff --git a/media-sound/deep-filter/deep-filter-0.5.6.ebuild 
b/media-sound/deep-filter/deep-filter-0.5.6-r1.ebuild
similarity index 93%
rename from media-sound/deep-filter/deep-filter-0.5.6.ebuild
rename to media-sound/deep-filter/deep-filter-0.5.6-r1.ebuild
index e99ec17a4..c0269b505 100644
--- a/media-sound/deep-filter/deep-filter-0.5.6.ebuild
+++ b/media-sound/deep-filter/deep-filter-0.5.6-r1.ebuild
@@ -546,7 +546,8 @@ SRC_URI+=" ${CARGO_CRATE_URIS}"
 S=${WORKDIR}/DeepFilterNet-${PV}
 
 PATCHES=(
-       "${FILESDIR}/${PN}-${PV}-use-updated-time.patch"
+       "${FILESDIR}/${PN}-library-path.patch"
+       "${FILESDIR}/${PN}-0.5.6-use-updated-time.patch"
 )
 
 LICENSE="|| ( Apache-2.0 MIT )"
@@ -559,24 +560,44 @@ LICENSE+="
 SLOT="0"
 KEYWORDS="~amd64"
 
+IUSE="ladspa"
 DEPEND="
        sci-libs/hdf5
 "
 
+BDEPEND="
+       ladspa? ( dev-util/patchelf )
+"
+
+QA_FLAGS_IGNORED="usr/bin/deep-filter"
+
 src_configure() {
-       pushd libDF >/dev/null || die
        local myfeatures=(
                bin
                tract
                transforms
                wav-utils
        )
-       cargo_src_configure --offline --no-default-features --bin deep-filter
-       popd >/dev/null || die
+       local projects=(-p deep_filter)
+       if use ladspa; then
+               projects+=(-p deep-filter-ladspa)
+       fi
+       cargo_src_configure "${projects[@]}" --offline --no-default-features 
--bin deep-filter --lib
+}
+
+src_compile() {
+       cargo_src_compile
+       if use ladspa; then
+               patchelf --set-soname libdeep_filter_ladspa.so 
"$(cargo_target_dir)"/libdeep_filter_ladspa.so
+       fi
 }
 
 src_install() {
-       pushd libDF >/dev/null || die
-       cargo_src_install
-       popd >/dev/null || die
+       dobin "$(cargo_target_dir)"/deep-filter
+       if use ladspa; then
+               dolib.so "$(cargo_target_dir)"/libdeep_filter_ladspa.so
+
+               insinto "/usr/share/${PN}"
+               doins -r ladspa/filter-chain-configs
+       fi
 }

diff --git a/media-sound/deep-filter/files/deep-filter-library-path.patch 
b/media-sound/deep-filter/files/deep-filter-library-path.patch
new file mode 100644
index 000000000..0f308700a
--- /dev/null
+++ b/media-sound/deep-filter/files/deep-filter-library-path.patch
@@ -0,0 +1,26 @@
+diff --git a/ladspa/filter-chain-configs/deepfilter-mono-source.conf 
b/ladspa/filter-chain-configs/deepfilter-mono-source.conf
+index e0879b1..9725998 100644
+--- a/ladspa/filter-chain-configs/deepfilter-mono-source.conf
++++ b/ladspa/filter-chain-configs/deepfilter-mono-source.conf
+@@ -32,7 +32,7 @@ context.modules = [
+                     {
+                         type   = ladspa
+                         name   = "DeepFilter Mono"
+-                        plugin = /usr/lib/ladspa/libdeep_filter_ladspa.so
++                        plugin = /usr/lib64/libdeep_filter_ladspa.so
+                         label  = deep_filter_mono
+                         control = {
+                             "Attenuation Limit (dB)" 100
+diff --git a/ladspa/filter-chain-configs/deepfilter-stereo-sink.conf 
b/ladspa/filter-chain-configs/deepfilter-stereo-sink.conf
+index 5576561..3d170ca 100644
+--- a/ladspa/filter-chain-configs/deepfilter-stereo-sink.conf
++++ b/ladspa/filter-chain-configs/deepfilter-stereo-sink.conf
+@@ -35,7 +35,7 @@ context.modules = [
+                     {
+                         type   = ladspa
+                         name   = "DeepFilter Stereo"
+-                        plugin = /usr/lib/ladspa/libdeep_filter_ladspa.so
++                        plugin = /usr/lib64/libdeep_filter_ladspa.so
+                         label  = deep_filter_stereo
+                         control = {
+                             "Attenuation Limit (dB)" 100

Reply via email to