From d934827bf44b7cfcf6711964418148fa60877668 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 25 Nov 2020 22:39:15 +0000 Subject: gentoo resync : 25.11.2020 --- media-sound/mumble/mumble-9999.ebuild | 122 +++++++++++----------------------- 1 file changed, 40 insertions(+), 82 deletions(-) (limited to 'media-sound/mumble/mumble-9999.ebuild') 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 ' to start the OpenGL overlay (after starting mumble)." echo } - -pkg_postrm() { - xdg_pkg_postrm -} -- cgit v1.2.3