audio/mumble: Revive and update to 1.3.0-rc1

- Now supports Qt5

PR:		235177
This commit is contained in:
Mark Felder 2019-03-21 13:53:03 +00:00
parent ed57878d10
commit 2d6b67c22f
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=496458
9 changed files with 239 additions and 0 deletions

View File

@ -550,6 +550,7 @@
SUBDIR += mpg321
SUBDIR += mpiosh
SUBDIR += mps
SUBDIR += mumble
SUBDIR += murmur
SUBDIR += musepack
SUBDIR += musescore

91
audio/mumble/Makefile Normal file
View File

@ -0,0 +1,91 @@
# Created by: marius nuennerich
# $FreeBSD$
PORTNAME= mumble
DISTVERSION= 1.3.0-rc1
PORTREVISION= 0
CATEGORIES= audio
MAINTAINER= feld@FreeBSD.org
COMMENT= Voice chat software primarily intended for use while gaming
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS+= libspeex.so:audio/speex \
libspeexdsp.so:audio/speexdsp \
libsndfile.so:audio/libsndfile \
libboost_iostreams.so:devel/boost-libs \
libprotoc.so:devel/protobuf \
libopus.so:audio/opus
PLIST_SUB+= PORTVERSION="${PORTVERSION:R}"
USES= compiler:c++11-lang cpe desktop-file-utils gmake pkgconfig qmake qt:5 ssl
USE_CXXSTD= c++11
USE_GITHUB= yes
GH_TUPLE= mumble-voip:mumble:${DISTVERSION} \
mumble-voip:celt-0.7.0:5a16cda:mumble_celt_0_7/3rdparty/celt-0.7.0-src \
mumble-voip:celt-0.11.0:e3d39fe:mumble_celt_0_11/3rdparty/celt-0.11.0-src \
mumble-voip:mach_override:919148f:mumble_mach_override/3rdparty/mach-override-src \
mumble-voip:minhook:9fbd087:mumble_minhook/3rdparty/minhook-src \
mumble-voip:rnnoise:b30f2bb:mumble_rnnoise/3rdparty/rnnoise-src \
mumble-voip:sbcelt:045493d:mumble_sbcelt/3rdparty/sbcelt-src \
mumble-voip:mumble-theme:1d48b12:mumble_theme/themes/Mumble
USE_QT= buildtools_build core gui l10n linguist_build network opengl sql sql-sqlite3_run svg xml
USE_LDCONFIG= yes
USE_XORG= ice xi x11
INSTALLS_ICONS= yes
MAKE_JOBS_UNSAFE=yes
CONFIG= bundled-celt bundled-rnnoise no-alsa no-bundled-opus no-speechd no-bundled-speex \
no-bundled-speexdsp no-embed-qt-translations no-g15 no-jackaudio no-pulseaudio \
no-pulseaudio no-server no-update no-xevie
QMAKE_ARGS= "CONFIG+=${CONFIG}"
OPTIONS_DEFINE= DBUS BONJOUR PORTAUDIO
OPTIONS_DEFAULT= DBUS
DBUS_VARS_OFF= CONFIG+=no-dbus
DBUS_USES= qt:5
DBUS_USE= QT=dbus
BONJOUR_DESC= Bonjour support
BONJOUR_VARS_OFF= CONFIG+=no-bonjour
BONJOUR_LIB_DEPENDS= libdns_sd.so:net/mDNSResponder
PORTAUDIO_VARS_OFF= CONFIG+=no-portaudio
PORTAUDIO_LIB_DEPENDS= libportaudio.so:audio/portaudio
.include <bsd.port.pre.mk>
# PCH is broken on GCC
.if ${CHOSEN_COMPILER_TYPE} == gcc
CONFIG+= no-pch
.endif
post-patch:
@${REINPLACE_CMD} -e 's|-ldl||' ${WRKSRC}/overlay_gl/overlay_gl.pro
@${RM} ${WRKSRC}/plugins/manual/.qmake.cache
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/release/mumble ${STAGEDIR}${PREFIX}/bin
${INSTALL_LIB} ${WRKSRC}/release/libcelt0.so.0.11.0 ${STAGEDIR}${PREFIX}/lib/libcelt-mumble.so.0.11.0
${INSTALL_LIB} ${WRKSRC}/release/libcelt0.so.0.7.0 ${STAGEDIR}${PREFIX}/lib/libcelt-mumble.so.0.7.0
${INSTALL_LIB} ${WRKSRC}/release/libmumble.so.${PORTVERSION:R} ${STAGEDIR}${PREFIX}/lib/libmumble.so.${PORTVERSION:R}
${RLN} ${STAGEDIR}${PREFIX}/lib/libmumble.so.${PORTVERSION:R} ${STAGEDIR}${PREFIX}/lib/libmumble.so
${RLN} ${STAGEDIR}${PREFIX}/lib/libmumble.so.${PORTVERSION:R} ${STAGEDIR}${PREFIX}/lib/libmumble.so.1
${RLN} ${STAGEDIR}${PREFIX}/lib/libmumble.so.${PORTVERSION:R} ${STAGEDIR}${PREFIX}/lib/libmumble.so.1.3
${MKDIR} ${STAGEDIR}${PREFIX}/share/services
${INSTALL_DATA} ${WRKSRC}/scripts/mumble.protocol ${STAGEDIR}${PREFIX}/share/services
${INSTALL_DATA} ${WRKSRC}/scripts/mumble.desktop ${STAGEDIR}${PREFIX}/share/applications
${INSTALL_DATA} ${WRKSRC}/icons/mumble.xpm ${STAGEDIR}${PREFIX}/share/pixmaps
${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/128x128/apps ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps
${INSTALL_DATA} ${WRKSRC}/icons/mumble.osx.installer.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/128x128/apps/mumble.png
${INSTALL_DATA} ${WRKSRC}/icons/mumble.svg ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps
${INSTALL_MAN} ${WRKSRC}/man/mumble.1 ${STAGEDIR}${MANPREFIX}/man/man1/mumble.1
.include <bsd.port.post.mk>

17
audio/mumble/distinfo Normal file
View File

@ -0,0 +1,17 @@
TIMESTAMP = 1553173953
SHA256 (mumble-voip-mumble-1.3.0-rc1_GH0.tar.gz) = acf475910923326ef3293192b2cfe2bc3cb0abeea444ac76b4c191b918a4cfeb
SIZE (mumble-voip-mumble-1.3.0-rc1_GH0.tar.gz) = 4741717
SHA256 (mumble-voip-celt-0.7.0-5a16cda_GH0.tar.gz) = fbfdbb0767d9d67ea29270eb3e5e999eec6f7f3720a870e74776be426b10b53a
SIZE (mumble-voip-celt-0.7.0-5a16cda_GH0.tar.gz) = 182631
SHA256 (mumble-voip-celt-0.11.0-e3d39fe_GH0.tar.gz) = 4194754baf79c23967ec1f56f1d9d480152ecbea488cb40977d6a043aeccbba1
SIZE (mumble-voip-celt-0.11.0-e3d39fe_GH0.tar.gz) = 210870
SHA256 (mumble-voip-mach_override-919148f_GH0.tar.gz) = 81b2e705a7cce1e3a9eb440cb2bca2f14fd83db162123f44faf17f0bf45da1bd
SIZE (mumble-voip-mach_override-919148f_GH0.tar.gz) = 66278
SHA256 (mumble-voip-minhook-9fbd087_GH0.tar.gz) = 80a266b39a64106562400d328829f01787f60f91fca18c2255e20f2db0883d29
SIZE (mumble-voip-minhook-9fbd087_GH0.tar.gz) = 26391
SHA256 (mumble-voip-rnnoise-b30f2bb_GH0.tar.gz) = 68ce21e49a0af3d06d87d27665d9a2102c249e4e5e91f777e47139d8707aeb6d
SIZE (mumble-voip-rnnoise-b30f2bb_GH0.tar.gz) = 171240
SHA256 (mumble-voip-sbcelt-045493d_GH0.tar.gz) = dc9bdcc26a3642cb7ead98cb487c9a52225228fbbfa6f75906d9e479e11b862a
SIZE (mumble-voip-sbcelt-045493d_GH0.tar.gz) = 20128
SHA256 (mumble-voip-mumble-theme-1d48b12_GH0.tar.gz) = 9f95d471555de8dc644edd184d24fff415b7b74c743b2aca50aa89b268a851f0
SIZE (mumble-voip-mumble-theme-1d48b12_GH0.tar.gz) = 138425

View File

@ -0,0 +1,10 @@
--- overlay_gl/overlay.c.orig 2019-03-13 18:38:10 UTC
+++ overlay_gl/overlay.c
@@ -16,6 +16,7 @@
#include <sys/ipc.h>
#include <sys/time.h>
#include <sys/socket.h>
+#include <sys/stat.h>
#include <sys/un.h>
#include <sys/stat.h>
#include <time.h>

View File

@ -0,0 +1,28 @@
--- overlay/overlay.h.orig 2019-03-13 18:38:10 UTC
+++ overlay/overlay.h
@@ -18,6 +18,25 @@ struct OverlayMsgHeader {
#define OVERLAY_MSGTYPE_INIT 0
struct OverlayMsgInit {
unsigned int uiWidth;
+/* BSD support */
+#ifndef ElfW
+# ifdef __FreeBSD__
+# if __ELF_WORD_SIZE == 32
+# define ElfW(type) Elf32_##type
+# else
+# define ElfW(type) Elf64_##type
+# endif
+# else
+# ifdef __NetBSD__
+# if ELFSIZE == 32
+# define ElfW(type) Elf32_##type
+# else
+# define ElfW(type) Elf64_##type
+# endif
+# endif
+# endif
+#endif
+
unsigned int uiHeight;
};

View File

@ -0,0 +1,10 @@
--- src/mumble/CELTCodec.cpp.orig 2019-03-20 19:21:57 UTC
+++ src/mumble/CELTCodec.cpp
@@ -40,6 +40,7 @@ CELTCodec::CELTCodec(const QString &celt_version) {
alternatives << QString::fromLatin1("libcelt0.so.%1").arg(celt_version);
alternatives << QString::fromLatin1("libcelt.so.%1").arg(celt_version);
alternatives << QString::fromLatin1("celt.so.%1").arg(celt_version);
+ alternatives << QString::fromLatin1("libcelt-mumble.so.%1").arg(celt_version);
#else
int cpuinfo[4];
__cpuid(cpuinfo, 1);

View File

@ -0,0 +1,65 @@
--- src/mumble/OSS.cpp.orig 2014-08-08 15:51:59 UTC
+++ src/mumble/OSS.cpp
@@ -153,7 +153,6 @@ OSSEnumerator::OSSEnumerator() {
qhOutput.insert(QString(), QLatin1String("Default OSS Device"));
qhDevices.insert(QString(), QLatin1String("/dev/dsp"));
-#if (SOUND_VERSION >= 0x040002)
int mixerfd = open("/dev/mixer", O_RDWR, 0);
if (mixerfd == -1) {
qWarning("OSSEnumerator: Failed to open /dev/mixer");
@@ -182,15 +181,14 @@ OSSEnumerator::OSSEnumerator() {
if (ainfo.caps & PCM_CAP_HIDDEN)
continue;
- qhDevices.insert(handle, device);
+ qhDevices.insert(name, device);
if (ainfo.caps & PCM_CAP_INPUT)
- qhInput.insert(handle, name);
+ qhInput.insert(name, name);
if (ainfo.caps & PCM_CAP_OUTPUT)
- qhOutput.insert(handle, name);
+ qhOutput.insert(name, name);
}
close(mixerfd);
-#endif
}
OSSInput::OSSInput() {
@@ -221,20 +219,23 @@ void OSSInput::run() {
ival = AFMT_S16_NE;
if ((ioctl(fd, SNDCTL_DSP_SETFMT, &ival) == -1) || (ival != AFMT_S16_NE)) {
qWarning("OSSInput: Failed to set sound format");
- goto out;
+ close(fd);
+ return;
}
ival = 1;
if ((ioctl(fd, SNDCTL_DSP_CHANNELS, &ival) == -1)) {
qWarning("OSSInput: Failed to set mono mode");
- goto out;
+ close(fd);
+ return;
}
iMicChannels = ival;
ival = SAMPLE_RATE;
if (ioctl(fd, SNDCTL_DSP_SPEED, &ival) == -1) {
qWarning("OSSInput: Failed to set speed");
- goto out;
+ close(fd);
+ return;
}
iMicFreq = ival;
@@ -258,8 +259,6 @@ void OSSInput::run() {
qWarning("OSSInput: Releasing.");
ioctl(fd, SNDCTL_DSP_RESET, NULL);
-out:
- close(fd);
}
OSSOutput::OSSOutput() {

4
audio/mumble/pkg-descr Normal file
View File

@ -0,0 +1,4 @@
Mumble is an open source, low-latency, high quality voice chat software
primarily intended for use while gaming.
WWW: http://mumble.sourceforge.net/

13
audio/mumble/pkg-plist Normal file
View File

@ -0,0 +1,13 @@
bin/mumble
lib/libcelt-mumble.so.0.11.0
lib/libcelt-mumble.so.0.7.0
lib/libmumble.so
lib/libmumble.so.1
lib/libmumble.so.1.3
lib/libmumble.so.%%PORTVERSION%%
man/man1/mumble.1.gz
share/applications/mumble.desktop
share/icons/hicolor/128x128/apps/mumble.png
share/icons/hicolor/scalable/apps/mumble.svg
share/pixmaps/mumble.xpm
share/services/mumble.protocol