summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szuba <marecki@gentoo.org>2021-07-18 01:15:37 +0100
committerMarek Szuba <marecki@gentoo.org>2021-07-18 01:31:42 +0100
commitf2a1687a2fabdb008fbb1366a9b31ed11d44637e (patch)
treea7142b1261029a741e7d44898296013f1a2cdcfc /media-sound/easyeffects
parentprofiles/arch/x86: mask USE="rnnoise webrtc" on media-sound/{easy,pulse}effects (diff)
downloadgentoo-f2a1687a2fabdb008fbb1366a9b31ed11d44637e.tar.gz
gentoo-f2a1687a2fabdb008fbb1366a9b31ed11d44637e.tar.bz2
gentoo-f2a1687a2fabdb008fbb1366a9b31ed11d44637e.zip
media-sound/easyeffects: improve dependencies and tweak metadata
Same thing as recent media-sound/pulseeffects changes. Had to drop the ppc32 keyword due to gnome-extra/yelp, will request re-keywording. Closes: https://bugs.gentoo.org/800713 Closes: https://bugs.gentoo.org/802528 Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'media-sound/easyeffects')
-rw-r--r--media-sound/easyeffects/easyeffects-5.0.4-r1.ebuild83
-rw-r--r--media-sound/easyeffects/files/easyeffects-5.0.4-meson_no_automagic.patch55
-rw-r--r--media-sound/easyeffects/metadata.xml10
3 files changed, 145 insertions, 3 deletions
diff --git a/media-sound/easyeffects/easyeffects-5.0.4-r1.ebuild b/media-sound/easyeffects/easyeffects-5.0.4-r1.ebuild
new file mode 100644
index 000000000000..2b949438898c
--- /dev/null
+++ b/media-sound/easyeffects/easyeffects-5.0.4-r1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit gnome2-utils meson
+
+DESCRIPTION="Limiter, auto volume and many other plugins for PipeWire applications"
+HOMEPAGE="https://github.com/wwmm/easyeffects/tree/pipewire-gstreamer-legacy"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/wwmm/easyeffects"
+ EGIT_BRANCH="pipewire-gstreamer-legacy"
+else
+ SRC_URI="https://github.com/wwmm/easyeffects/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="bs2b calf rnnoise rubberband webrtc"
+
+DEPEND=">=dev-libs/boost-1.72:=
+ >=dev-cpp/glibmm-2.56.0:2
+ >=dev-cpp/gtkmm-3.24:3.0
+ >=dev-libs/glib-2.56:2
+ >=dev-libs/libsigc++-2.10:2
+ >=media-libs/gstreamer-1.12.5:1.0
+ media-libs/gst-plugins-base
+ >=media-libs/gst-plugins-bad-1.12.5:1.0
+ media-libs/libebur128
+ media-libs/libsndfile
+ >=media-libs/lilv-0.24.2-r1
+ >=media-libs/zita-convolver-3.0.0
+ >=media-video/pipewire-0.3.24[gstreamer]
+ >=x11-libs/gtk+-3.20:3
+ bs2b? ( >=media-plugins/gst-plugins-bs2b-1.12.5:1.0 )
+ rnnoise? ( media-libs/rnnoise )"
+RDEPEND="!media-sound/pulseeffects
+ ${DEPEND}
+ gnome-extra/yelp
+ >=media-libs/gst-plugins-good-1.12.5:1.0
+ >=media-libs/lsp-plugins-1.1.24[lv2]
+ >=media-plugins/gst-plugins-ladspa-1.12.5:1.0
+ >=media-plugins/gst-plugins-lv2-1.12.5:1.0
+ >=media-plugins/gst-plugins-pulse-1.12.5:1.0
+ sys-apps/dbus
+ calf? ( >=media-plugins/calf-0.90.1[lv2] )
+ rubberband? ( media-libs/rubberband[ladspa] )
+ webrtc? ( media-plugins/gst-plugins-webrtc )"
+# Only header files are used from libsamplerate so put it here rather than DEPEND
+# to avoid unnecessary cross-compilation.
+BDEPEND="dev-libs/appstream-glib
+ dev-util/desktop-file-utils
+ dev-util/itstool
+ media-libs/libsamplerate
+ sys-devel/gettext
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.0.4-meson_no_automagic.patch
+)
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature bs2b)
+ $(meson_feature rnnoise)
+ )
+ meson_src_configure
+}
+
+pkg_postinst() {
+ gnome2_gconf_install
+ gnome2_schemas_update
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+ xdg_icon_cache_update
+}
diff --git a/media-sound/easyeffects/files/easyeffects-5.0.4-meson_no_automagic.patch b/media-sound/easyeffects/files/easyeffects-5.0.4-meson_no_automagic.patch
new file mode 100644
index 000000000000..4e547d404f80
--- /dev/null
+++ b/media-sound/easyeffects/files/easyeffects-5.0.4-meson_no_automagic.patch
@@ -0,0 +1,55 @@
+--- a/meson.build
++++ b/meson.build
+@@ -4,7 +4,7 @@
+ 'cpp',
+ default_options : ['cpp_std=c++17','buildtype=debugoptimized'],
+ version: '5.0.4',
+- meson_version: '>= 0.40.0'
++ meson_version: '>= 0.47.0'
+ )
+
+ add_global_arguments('-DG_LOG_DOMAIN="pulseeffects"', language : 'c')
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -0,0 +1,12 @@
++option(
++ 'bs2b',
++ type: 'feature',
++ value: 'auto',
++ description: 'Enable bs2b-based Crossfeed plug-in for improving headphone listening of stereo audio records'
++)
++option(
++ 'rnnoise',
++ type: 'feature',
++ value: 'auto',
++ description: 'Enable rnnoise-based Noise Reduction plug-in'
++)
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -108,7 +108,7 @@
+ dependency('gstreamer-plugins-bad-1.0', version: '>=1.12.5'),
+ dependency('gstreamer-fft-1.0'),
+ dependency('lilv-0', version: '>=0.22', required: false),
+- dependency('libbs2b', required: false),
++ dependency('libbs2b', required: get_option('bs2b')),
+ dependency('boost', version: '>=1.72', modules:['filesystem']),
+ dependency('sndfile'),
+ dependency('threads')
+--- a/src/rnnoise/meson.build
++++ b/src/rnnoise/meson.build
+@@ -1,4 +1,5 @@
+-dep_rnnoise = dependency('rnnoise', required: false)
++opt_rnnoise = get_option('rnnoise')
++dep_rnnoise = dependency('rnnoise', required: opt_rnnoise)
+
+ if dep_rnnoise.found()
+
+@@ -28,7 +29,7 @@
+ cpp_args: plugins_cxx_args
+ )
+
+-else
++elif opt_rnnoise.auto()
+
+ message('could not find the RNNoise library')
+
diff --git a/media-sound/easyeffects/metadata.xml b/media-sound/easyeffects/metadata.xml
index e4010fa254cf..67cca67386dc 100644
--- a/media-sound/easyeffects/metadata.xml
+++ b/media-sound/easyeffects/metadata.xml
@@ -10,9 +10,13 @@
<name>Matthew Thode</name>
</maintainer>
<use>
- <flag name="bs2b">Enable use of media-libs/libbs2b</flag>
- <flag name="calf">Enable use of media-plugins/calf for adding various FX</flag>
- <flag name="rubberband">Enable usse of media-libs/rubberband for the pitch shifting FX</flag>
+ <flag name="bs2b">Enable use of <pkg>media-libs/libbs2b</pkg> for the crossfeed FX</flag>
+ <flag name="calf">Enable use of <pkg>media-plugins/calf</pkg> for adding various FX</flag>
+ <flag name="rnnoise">Enable use of <pkg>media-libs/rnnoise</pkg> for the neural network-based
+ noise-reduction FX</flag>
+ <flag name="rubberband">Enable use of <pkg>media-libs/rubberband</pkg> for the pitch-shifting FX</flag>
+ <flag name="webrtc">Enable use of <pkg>media-plugins/gst-plugins-webrtc</pkg> for various
+ voice-enhancement FX</flag>
</use>
<upstream>
<remote-id type="github">wwmm/easyeffects</remote-id>