summaryrefslogtreecommitdiff
path: root/media-sound/mumble/mumble-9999.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-11-25 22:39:15 +0000
committerV3n3RiX <venerix@redcorelinux.org>2020-11-25 22:39:15 +0000
commitd934827bf44b7cfcf6711964418148fa60877668 (patch)
tree0625f358789b5e015e49db139cc1dbc9be00428f /media-sound/mumble/mumble-9999.ebuild
parent2e34d110f164bf74d55fced27fe0000201b3eec5 (diff)
gentoo resync : 25.11.2020
Diffstat (limited to 'media-sound/mumble/mumble-9999.ebuild')
-rw-r--r--media-sound/mumble/mumble-9999.ebuild122
1 files changed, 40 insertions, 82 deletions
diff --git a/media-sound/mumble/mumble-9999.ebuild b/media-sound/mumble/mumble-9999.ebuild
index d821055f5f3c..1109a96055d6 100644
--- a/media-sound/mumble/mumble-9999.ebuild
+++ b/media-sound/mumble/mumble-9999.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-inherit desktop multilib-build qmake-utils xdg
+inherit cmake xdg
DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software"
HOMEPAGE="https://wiki.mumble.info"
@@ -26,7 +26,8 @@ fi
LICENSE="BSD MIT"
SLOT="0"
-IUSE="+alsa +dbus debug g15 jack libressl +opus oss pch portaudio pulseaudio +rnnoise speech zeroconf"
+IUSE="+alsa +dbus debug g15 jack libressl portaudio pulseaudio nls +rnnoise speech test zeroconf"
+RESTRICT="!test? ( test )"
RDEPEND="
dev-qt/qtcore:5
@@ -38,6 +39,7 @@ RDEPEND="
dev-qt/qtxml:5
>=dev-libs/protobuf-2.2.0:=
>=media-libs/libsndfile-1.0.20[-minimal]
+ >=media-libs/opus-1.3.1
>=media-libs/speex-1.2.0
media-libs/speexdsp
sys-apps/lsb-release
@@ -49,7 +51,6 @@ RDEPEND="
jack? ( virtual/jack )
!libressl? ( >=dev-libs/openssl-1.0.0b:0= )
libressl? ( dev-libs/libressl )
- opus? ( >=media-libs/opus-1.0.1 )
portaudio? ( media-libs/portaudio )
pulseaudio? ( media-sound/pulseaudio )
speech? ( >=app-accessibility/speech-dispatcher-0.8.0 )
@@ -64,97 +65,54 @@ BDEPEND="
virtual/pkgconfig
"
-# NB: qmake does not support multilib but it's fine to configure
-# for the native ABI here
-src_configure() {
- myuse() {
- [[ -n "${1}" ]] || die "myuse: No use option given"
- use ${1} || echo no-${1}
- }
-
- local conf_add=(
- bundled-celt
- no-bundled-opus
- no-bundled-speex
- no-embed-qt-translations
- no-server
- no-update
- $(myuse alsa)
- $(myuse dbus)
- $(usex debug 'symbols debug' release)
- $(myuse g15)
- $(usex jack '' no-jackaudio)
- $(myuse opus)
- $(myuse oss)
- $(myuse portaudio)
- $(myuse pulseaudio)
- $(myuse rnnoise)
- $(usex speech '' no-speechd)
- $(usex zeroconf '' no-bonjour)
- )
-
- use pch || conf_add+=( no-pch )
-
- eqmake5 "${S}/main.pro" -recursive \
- CONFIG+="${conf_add[*]}" \
- DEFINES+="PLUGIN_PATH=/usr/$(get_libdir)/mumble"
+src_prepare() {
+ # required because of xdg.eclass also providing src_prepare
+ cmake_src_prepare
}
-multilib_src_compile() {
- local emake_args=(
- # place libmumble* in a subdirectory
- DESTDIR_ADD="/${MULTILIB_ABI_FLAG}"
- {C,L}FLAGS_ADD="$(get_abi_CFLAGS)"
- )
- # build only overlay library for other ABIs
- multilib_is_native_abi || emake_args+=( -C overlay_gl )
- emake "${emake_args[@]}"
- emake clean
-}
+src_configure() {
-src_compile() {
- multilib_foreach_abi multilib_src_compile
-}
+ local mycmakeargs=(
+ -Dalsa="$(usex alsa)"
+ -DBUILD_TESTING="$(usex test)"
+ -Dbundled-celt="ON"
+ -Dbundled-opus="OFF"
+ -Dbundled-speex="OFF"
+ -Ddbus="$(usex dbus)"
+ -Dg15="$(usex g15)"
+ -Djackaudio="$(usex jack)"
+ -Doverlay="ON"
+ -Dportaudio="$(usex portaudio)"
+ -Dpulseaudio="$(usex pulseaudio)"
+ -Drnnoise="$(usex rnnoise)"
+ -Dserver="OFF"
+ -Dspeechd="$(usex speech)"
+ -Dtranslations="$(usex nls)"
+ -Dupdate="OFF"
+ -Dzeroconf="$(usex zeroconf)"
+ )
-multilib_src_install() {
- local dir=$(usex debug debug release)
- insinto /usr/$(get_libdir)/${PN}
- doins "${dir}/${MULTILIB_ABI_FLAG}"/libmumble.so*
- if multilib_is_native_abi; then
- dobin "${dir}"/mumble
- doins "${dir}"/libcelt0.so* "${dir}"/plugins/lib*.so*
- fi
+ cmake_src_configure
}
src_install() {
- multilib_foreach_abi multilib_src_install
-
- dodoc CHANGES README.md
- dobin scripts/mumble-overlay
-
- insinto /usr/share/services
- doins scripts/mumble.protocol
-
- domenu scripts/mumble.desktop
-
- doicon -s scalable icons/mumble.svg
-
- doman man/mumble-overlay.1
- doman man/mumble.1
-}
-
-pkg_preinst() {
- xdg_pkg_preinst
+ cmake_src_install
+
+ if use amd64 ; then
+ # The 32bit overlay library gets automatically built and installed on x86_64 platforms.
+ # Install it into the correct 32bit lib dir.
+ local libdir_64="/usr/$(get_libdir)/mumble"
+ local libdir_32="/usr/$(get_abi_var LIBDIR x86)/mumble"
+ dodir ${libdir_32}
+ mv "${ED}"/${libdir_64}/libmumbleoverlay.x86.so* \
+ "${ED}"/${libdir_32}/ || die
+ fi
}
pkg_postinst() {
xdg_pkg_postinst
echo
elog "Visit https://wiki.mumble.info/ for futher configuration instructions."
- elog "Run mumble-overlay to start the OpenGL overlay (after starting mumble)."
+ elog "Run 'mumble-overlay <program>' to start the OpenGL overlay (after starting mumble)."
echo
}
-
-pkg_postrm() {
- xdg_pkg_postrm
-}