Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F133305912
D41604.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
11 KB
Referenced Files
None
Subscribers
None
D41604.diff
View Options
diff --git a/audio/mumble/Makefile b/audio/mumble/Makefile
--- a/audio/mumble/Makefile
+++ b/audio/mumble/Makefile
@@ -1,7 +1,12 @@
PORTNAME= mumble
DISTVERSION= 1.5.517
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= audio
+MASTER_SITES= https://github.com/${PORTNAME}-voip/${PORTNAME}/releases/download/v${DISTVERSION}/
+
+PATCH_SITES= https://github.com/${PORTNAME}-voip/${PORTNAME}/commit/
+PATCHFILES= 952dfaf4983097d7b9c9b5d9f5b01ffeb6d3463d.patch:-p1 # Fix detection of unbundled GSL
+#PATCHFILES+= 589bfbfd634925b47b3a812745bc5a423b7f4285.patch:-p1 # Install 32-bit lib on FreeBSD
MAINTAINER= vvd@FreeBSD.org
COMMENT= Voice chat software primarily intended for use while gaming
@@ -11,6 +16,7 @@
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= boost-libs>0:devel/boost-libs \
+ microsoft-gsl>=3.0.0:devel/microsoft-gsl \
${LOCALBASE}/include/nlohmann/json.hpp:devel/nlohmann-json
LIB_DEPENDS= libsndfile.so:audio/libsndfile \
libopus.so:audio/opus \
@@ -22,119 +28,85 @@
libexpat.so:textproc/expat2
USES= cmake compiler:c++14-lang cpe desktop-file-utils gl \
- pkgconfig python:build qmake qt:5 ssl xorg
-
-PATCHVERSION= ${DISTVERSION}
-MINORVERSION= ${DISTVERSION:R}
-MAJORVERSION= ${DISTVERSION:R:R}
-
-PLIST_SUB+= PATCHVERSION="${PATCHVERSION}"
-PLIST_SUB+= MINORVERSION="${MINORVERSION}"
-PLIST_SUB+= MAJORVERSION="${MAJORVERSION}"
-
+ pkgconfig python:build qt:5 ssl xorg
USE_CXXSTD= c++14
-USE_GITHUB= yes
-GH_TUPLE= mumble-voip:mumble:v${DISTVERSION} \
- Krzmbrzl:FindPythonInterpreter:bb4d3ea:mumble_FindPythonInterpreter/3rdparty/FindPythonInterpreter \
- microsoft:GSL:0f6dbc9:mumble_gsl/3rdparty/gsl \
- mumble-voip:mach_override:919148f:mumble_mach_override/3rdparty/mach-override-src \
- mumble-voip:minhook:5e338f8:mumble_minhook/3rdparty/minhook \
- mumble-voip:speexdsp:6e4634f:mumble_speexdsp/3rdparty/speexdsp \
- wolfpld:tracy:1a4f369:mumble_tracy/3rdparty/tracy
-
-USE_QT= buildtools:build concurrent core gui l10n linguist:build network \
- sql sql-sqlite3:run svg widgets xml
+USE_GL= gl
USE_LDCONFIG= yes
-
+USE_QT= buildtools:build concurrent core gui l10n linguist:build network \
+ qmake:build sql sql-sqlite3:run svg widgets xml
USE_XORG= x11 xext xi
-USE_GL= gl
-CMAKE_ON= bundled-gsl client oss overlay overlay-xcompile plugins \
- translations xinput2
-CMAKE_OFF= bundled-json bundle-qt-translations bundled-speex crash-report \
- g15 server tracy update
+CMAKE_ON= client oss overlay plugins translations xinput2
+CMAKE_OFF= bundled-gsl bundled-json bundle-qt-translations bundled-speex \
+ crash-report g15 server tracy update
+
+CONFIGURE_ENV= MUMBLE_PYTHON=${PYTHON_CMD}
+
+PLIST_SUB= MUMBLE_VERSION="${DISTVERSION:R}"
OPTIONS_DEFINE= ALSA AVAHI DBUS JACK LTO PIPEWIRE PORTAUDIO PULSEAUDIO RNNOISE
+OPTIONS_DEFINE_amd64= OVERLAY_32BIT
OPTIONS_DEFAULT= DBUS
+OPTIONS_DEFAULT_amd64= OVERLAY_32BIT
OPTIONS_RADIO= SPEECH
OPTIONS_RADIO_SPEECH= QTSPEECH SPEECHD
+OVERLAY_32BIT_DESC= Build and install 32bit overlay module
QTSPEECH_DESC= Use Qt's text-to-speech system
RNNOISE_DESC= Use RNNoise for machine learning noise reduction
SPEECH_DESC= Support text-to-speech
SPEECHD_DESC= Support for Speech Dispatcher
-ALSA_CMAKE_BOOL= alsa
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib
+ALSA_CMAKE_BOOL= alsa
-AVAHI_CMAKE_BOOL= zeroconf
AVAHI_LIB_DEPENDS= libdns_sd.so:net/avahi-libdns
+AVAHI_CMAKE_BOOL= zeroconf
-DBUS_USES= qt:5
DBUS_USE= QT=dbus
DBUS_CMAKE_BOOL= dbus
-JACK_CMAKE_BOOL= jackaudio
JACK_LIB_DEPENDS= libjack.so:audio/jack
+JACK_CMAKE_BOOL= jackaudio
LTO_BROKEN= "QWidget: Cannot create a QWidget without QApplication": \
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=273078
LTO_CMAKE_BOOL= lto
-PIPEWIRE_CMAKE_BOOL= pipewire
+OVERLAY_32BIT_CMAKE_BOOL= overlay-xcompile
+
PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire
+PIPEWIRE_CMAKE_BOOL= pipewire
-PORTAUDIO_CMAKE_BOOL= portaudio
PORTAUDIO_LIB_DEPENDS= libportaudio.so:audio/portaudio
+PORTAUDIO_CMAKE_BOOL= portaudio
-PULSEAUDIO_CMAKE_BOOL= pulseaudio
PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
+PULSEAUDIO_CMAKE_BOOL= pulseaudio
-QTSPEECH_USES= qt:5
QTSPEECH_USE= QT=speech
QTSPEECH_CMAKE_BOOL= qtspeech
+RNNOISE_LIB_DEPENDS= librnnoise.so:audio/rnnoise
RNNOISE_CMAKE_BOOL= rnnoise
RNNOISE_CMAKE_ON= -Dbundled-rnnoise:BOOL=off
-RNNOISE_LIB_DEPENDS= librnnoise.so:audio/rnnoise
+SPEECHD_LIB_DEPENDS= libspeechd.so:accessibility/speech-dispatcher
SPEECHD_USES= gettext-runtime gnome
SPEECHD_USE= GNOME=glib20
SPEECHD_CMAKE_BOOL= speechd
-SPEECHD_LIB_DEPENDS= libspeechd.so:accessibility/speech-dispatcher
-CONFIGURE_ENV+= MUMBLE_PYTHON=${PYTHON_CMD}
-
-.include <bsd.port.pre.mk>
-
-do-install:
- ${INSTALL_PROGRAM} ${WRKDIR}/.build/mumble ${STAGEDIR}${PREFIX}/bin
- ${INSTALL_LIB} ${WRKDIR}/.build/libmumbleoverlay.x86_64.so.${MINORVERSION}.0 \
- ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86_64.so.${PATCHVERSION}
- ${RLN} ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86_64.so.${PATCHVERSION} \
- ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86_64.so
- ${RLN} ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86_64.so.${PATCHVERSION} \
- ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86_64.so.${MAJORVERSION}
- ${RLN} ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86_64.so.${PATCHVERSION} \
- ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86_64.so.${MINORVERSION}
- ${INSTALL_LIB} ${WRKDIR}/.build/libmumbleoverlay.x86.so.${MINORVERSION}.0 \
- ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86.so.${PATCHVERSION}
- ${RLN} ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86.so.${PATCHVERSION} \
- ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86.so
- ${RLN} ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86.so.${PATCHVERSION} \
- ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86.so.${MAJORVERSION}
- ${RLN} ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86.so.${PATCHVERSION} \
- ${STAGEDIR}${PREFIX}/lib/libmumbleoverlay.x86.so.${MINORVERSION}
- ${INSTALL_DATA} ${WRKDIR}/.build/auxiliary_files/info.mumble.Mumble.desktop \
- ${STAGEDIR}${PREFIX}/share/applications/mumble.desktop
- ${INSTALL_DATA} ${WRKSRC}/icons/mumble.xpm ${STAGEDIR}${PREFIX}/share/pixmaps
- ${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps \
- ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps
- ${INSTALL_DATA} ${WRKSRC}/icons/mumble.svg \
- ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps
- ${INSTALL_DATA} ${WRKSRC}/icons/mumble_256x256.png \
- ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps/mumble.png
- ${INSTALL_MAN} ${WRKSRC}/auxiliary_files/man_files/mumble.1 \
- ${STAGEDIR}${MANPREFIX}/share/man/man1/mumble.1
-
-.include <bsd.port.post.mk>
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MOVERLAY_32BIT}
+. if ${ARCH} == amd64
+PLIST_SUB+= OVERLAY_32BIT=""
+PLIST_SUB+= OVERLAY_32BIT_SUFFIX=.x86
+PLIST_SUB+= OVERLAY_NATIVE_SUFFIX=.x86_64
+. endif
+.else
+PLIST_SUB+= OVERLAY_32BIT="@comment "
+PLIST_SUB+= OVERLAY_NATIVE_SUFFIX=""
+.endif
+
+.include <bsd.port.mk>
diff --git a/audio/mumble/distinfo b/audio/mumble/distinfo
--- a/audio/mumble/distinfo
+++ b/audio/mumble/distinfo
@@ -1,15 +1,5 @@
-TIMESTAMP = 1690555998
-SHA256 (mumble-voip-mumble-1.5.517-v1.5.517_GH0.tar.gz) = f7ea7c8f5267fa8f744a7622bb96ad373ee40c6458b9ce01d81d071898f6a6da
-SIZE (mumble-voip-mumble-1.5.517-v1.5.517_GH0.tar.gz) = 6120684
-SHA256 (Krzmbrzl-FindPythonInterpreter-bb4d3ea_GH0.tar.gz) = 8439bfe7daeb478d8e8aa09b3c111c3dc360064144d181fc5dcfef950e8eaa05
-SIZE (Krzmbrzl-FindPythonInterpreter-bb4d3ea_GH0.tar.gz) = 4817
-SHA256 (microsoft-GSL-0f6dbc9_GH0.tar.gz) = 63d53ed611862f90517048db57617d8264200810a1e9fbb7ff9a524747f8dab3
-SIZE (microsoft-GSL-0f6dbc9_GH0.tar.gz) = 78207
-SHA256 (mumble-voip-mach_override-919148f_GH0.tar.gz) = 81b2e705a7cce1e3a9eb440cb2bca2f14fd83db162123f44faf17f0bf45da1bd
-SIZE (mumble-voip-mach_override-919148f_GH0.tar.gz) = 66278
-SHA256 (mumble-voip-minhook-5e338f8_GH0.tar.gz) = bc675c5b9def1fcef4b58c62e6d69eaa6e76d2fed89ace681059a7648e808033
-SIZE (mumble-voip-minhook-5e338f8_GH0.tar.gz) = 27651
-SHA256 (mumble-voip-speexdsp-6e4634f_GH0.tar.gz) = f596d946feeffc66ad2f8a5886945019d79a1a45f3e9c1a1191b4faabb0e84ea
-SIZE (mumble-voip-speexdsp-6e4634f_GH0.tar.gz) = 895204
-SHA256 (wolfpld-tracy-1a4f369_GH0.tar.gz) = b1fbb7b8ec38c58addd97f9cd6d17e879ecab9bfc184751297ce2162a6b8d008
-SIZE (wolfpld-tracy-1a4f369_GH0.tar.gz) = 4633541
+TIMESTAMP = 1692992913
+SHA256 (mumble-1.5.517.tar.gz) = 8efd06a0f47ebfe27735f7575ba0becfb21d0f400a5082202dbbd998ab8351de
+SIZE (mumble-1.5.517.tar.gz) = 12091432
+SHA256 (952dfaf4983097d7b9c9b5d9f5b01ffeb6d3463d.patch) = 3316fd3cab0d797d78fa34df358892699db0bde6c45c61a87f095e514c2e5575
+SIZE (952dfaf4983097d7b9c9b5d9f5b01ffeb6d3463d.patch) = 1138
diff --git a/audio/mumble/files/patch-auxiliary__files_run__scripts_mumble-overlay.in b/audio/mumble/files/patch-auxiliary__files_run__scripts_mumble-overlay.in
new file mode 100644
--- /dev/null
+++ b/audio/mumble/files/patch-auxiliary__files_run__scripts_mumble-overlay.in
@@ -0,0 +1,32 @@
+Remove bashism that doesn't seem to serve a purpose.
+${var/old_str/new_str} in bash replaces the first match of "old_str"
+with "new_str" within ${var} [1]. There doesn't seem to be a point in
+removing the first match of the escape character within ${var} only to
+compare it with itself, unless it was a workaround for some ancient
+bash bug, as this test was committed 15 years ago [2]. According to [3],
+the escaping backslash is discarded in pattern matching. Works in bash
+with and without this test, but sh(1) has no concept of this syntax.
+
+[1] https://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html
+[2] https://github.com/mumble-voip/mumble/commit/048343f81e4f6b8e0514380e88fef55a3781563f
+[3] https://www.gnu.org/software/bash/manual/html_node/Pattern-Matching.html
+
+--- auxiliary_files/run_scripts/mumble-overlay.in.orig 2023-08-15 16:48:56 UTC
++++ auxiliary_files/run_scripts/mumble-overlay.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # Copyright 2005-@MUMBLE_BUILD_YEAR@ The Mumble Developers. All rights reserved.
+ # Use of this source code is governed by a BSD-style license
+@@ -27,9 +27,7 @@
+ fi
+
+ binary="$1"
+-if [ "${binary/\/}" = "$binary" ]; then
+- binary=$(which "$binary")
+-fi
++binary=$(which "$binary")
+ if [ ! -x "$binary" ]; then
+ echo "$1 not found" >&2
+ exit 1
diff --git a/audio/mumble/files/patch-overlay__gl_CMakeLists.txt b/audio/mumble/files/patch-overlay__gl_CMakeLists.txt
new file mode 100644
--- /dev/null
+++ b/audio/mumble/files/patch-overlay__gl_CMakeLists.txt
@@ -0,0 +1,16 @@
+Install the 32-bit overlay library on FreeBSD-amd64
+
+--- overlay_gl/CMakeLists.txt.orig
++++ overlay_gl/CMakeLists.txt
+@@ -96,6 +96,11 @@ if(NOT APPLE)
+ "-ldl"
+ "-lrt"
+ )
++ endif()
++ endif()
++
++ if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux" OR ${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
++ if(TARGET overlay_gl_x86)
+ # install 32bit overlay library
+ install(TARGETS overlay_gl_x86 LIBRARY DESTINATION "${MUMBLE_INSTALL_LIBDIR}")
+ endif()
diff --git a/audio/mumble/pkg-plist b/audio/mumble/pkg-plist
--- a/audio/mumble/pkg-plist
+++ b/audio/mumble/pkg-plist
@@ -1,14 +1,13 @@
bin/mumble
-lib/libmumbleoverlay.x86_64.so
-lib/libmumbleoverlay.x86_64.so.%%MAJORVERSION%%
-lib/libmumbleoverlay.x86_64.so.%%MINORVERSION%%
-lib/libmumbleoverlay.x86_64.so.%%PATCHVERSION%%
-lib/libmumbleoverlay.x86.so
-lib/libmumbleoverlay.x86.so.%%MAJORVERSION%%
-lib/libmumbleoverlay.x86.so.%%MINORVERSION%%
-lib/libmumbleoverlay.x86.so.%%PATCHVERSION%%
-share/applications/mumble.desktop
+bin/mumble-overlay
+%%OVERLAY_32BIT%%lib/mumble/libmumbleoverlay%%OVERLAY_32BIT_SUFFIX%%.so
+%%OVERLAY_32BIT%%lib/mumble/libmumbleoverlay%%OVERLAY_32BIT_SUFFIX%%.so.%%MUMBLE_VERSION%%.0
+lib/mumble/libmumbleoverlay%%OVERLAY_NATIVE_SUFFIX%%.so
+lib/mumble/libmumbleoverlay%%OVERLAY_NATIVE_SUFFIX%%.so.%%MUMBLE_VERSION%%.0
+lib/mumble/plugins/liblink.so
+share/applications/info.mumble.Mumble.desktop
share/icons/hicolor/256x256/apps/mumble.png
share/icons/hicolor/scalable/apps/mumble.svg
share/man/man1/mumble.1.gz
-share/pixmaps/mumble.xpm
+share/man/man1/mumble-overlay.1.gz
+share/metainfo/info.mumble.Mumble.appdata.xml
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Oct 25, 7:42 PM (12 h, 10 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
24186704
Default Alt Text
D41604.diff (11 KB)
Attached To
Mode
D41604: audio/mumble: switch from USE_GITHUB to pre-rolled release and fix build on ARCHes other than x86
Attached
Detach File
Event Timeline
Log In to Comment