summaryrefslogtreecommitdiff
path: root/media-sound/mumble/mumble-1.3.0.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound/mumble/mumble-1.3.0.ebuild')
-rw-r--r--media-sound/mumble/mumble-1.3.0.ebuild160
1 files changed, 160 insertions, 0 deletions
diff --git a/media-sound/mumble/mumble-1.3.0.ebuild b/media-sound/mumble/mumble-1.3.0.ebuild
new file mode 100644
index 000000000000..ca1f49e6d6bd
--- /dev/null
+++ b/media-sound/mumble/mumble-1.3.0.ebuild
@@ -0,0 +1,160 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit desktop multilib-build qmake-utils xdg
+
+DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software"
+HOMEPAGE="https://wiki.mumble.info"
+if [[ "${PV}" == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/mumble-voip/mumble.git"
+ EGIT_SUBMODULES=( '-*' celt-0.7.0-src celt-0.11.0-src themes/Mumble 3rdparty/rnnoise-src )
+else
+ if [[ "${PV}" == *_pre* ]] ; then
+ SRC_URI="https://dev.gentoo.org/~polynomial-c/dist/${P}.tar.xz"
+ else
+ MY_PV="${PV/_/-}"
+ MY_P="${PN}-${MY_PV}"
+ SRC_URI="https://github.com/mumble-voip/mumble/releases/download/${MY_PV}/${MY_P}.tar.gz
+ https://dl.mumble.info/${MY_P}.tar.gz"
+ S="${WORKDIR}/${P/_*}"
+ fi
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="BSD MIT"
+SLOT="0"
+IUSE="+alsa +dbus debug g15 jack libressl +opus oss pch portaudio pulseaudio +rnnoise speech zeroconf"
+
+RDEPEND="
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ >=dev-libs/protobuf-2.2.0:=
+ >=media-libs/libsndfile-1.0.20[-minimal]
+ >=media-libs/speex-1.2.0
+ media-libs/speexdsp
+ sys-apps/lsb-release
+ x11-libs/libX11
+ x11-libs/libXi
+ alsa? ( media-libs/alsa-lib )
+ dbus? ( dev-qt/qtdbus:5 )
+ g15? ( app-misc/g15daemon )
+ 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 )
+ zeroconf? ( net-dns/avahi[mdnsresponder-compat] )
+"
+DEPEND="${RDEPEND}
+ >=dev-libs/boost-1.41.0
+ x11-base/xorg-proto
+"
+BDEPEND="
+ dev-qt/linguist-tools:5
+ 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"
+}
+
+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_compile() {
+ multilib_foreach_abi multilib_src_compile
+}
+
+multilib_src_install() {
+ local dir=$(usex debug debug release)
+ dolib.so "${dir}/${MULTILIB_ABI_FLAG}"/libmumble.so*
+ if multilib_is_native_abi; then
+ dobin "${dir}"/mumble
+ dolib.so "${dir}"/libcelt0.so* "${dir}"/plugins/lib*.so*
+ fi
+}
+
+src_install() {
+ multilib_foreach_abi multilib_src_install
+
+ newdoc README.Linux README
+ dodoc CHANGES
+ 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
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ echo
+ elog "Visit http://mumble.sourceforge.net/ for futher configuration instructions."
+ elog "Run mumble-overlay to start the OpenGL overlay (after starting mumble)."
+ echo
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+}