Date: Sunday, December 15, 2019 @ 18:23:23 Author: lfleischer Revision: 537786
db-move: moved mumble from [community-testing] to [community] (x86_64) Added: mumble/repos/community-x86_64/PKGBUILD (from rev 537785, mumble/repos/community-testing-x86_64/PKGBUILD) mumble/repos/community-x86_64/mumble-protobuf-3.7.patch (from rev 537785, mumble/repos/community-testing-x86_64/mumble-protobuf-3.7.patch) Deleted: mumble/repos/community-testing-x86_64/ mumble/repos/community-x86_64/PKGBUILD mumble/repos/community-x86_64/mumble-protobuf-3.7.patch --------------------------------------------+ /PKGBUILD | 63 ++ /mumble-protobuf-3.7.patch | 800 +++++++++++++++++++++++++++ community-x86_64/PKGBUILD | 57 - community-x86_64/mumble-protobuf-3.7.patch | 800 --------------------------- 4 files changed, 863 insertions(+), 857 deletions(-) Deleted: community-x86_64/PKGBUILD =================================================================== --- community-x86_64/PKGBUILD 2019-12-15 18:23:05 UTC (rev 537785) +++ community-x86_64/PKGBUILD 2019-12-15 18:23:23 UTC (rev 537786) @@ -1,57 +0,0 @@ -# Maintainer: Sven-Hendrik Haase <svenst...@gmail.com> -# Contributor: Lauri Niskanen <a...@ape3000.com> -# Contributor: sebastian.sal...@gmx.de -# Contributor: Doc Angelo - -pkgname=mumble -pkgver=1.3.0 -pkgrel=4 -arch=('x86_64') -pkgdesc="A voice chat application similar to TeamSpeak" -license=('BSD') -depends=(qt5-base qt5-svg speex lsb-release libxi avahi libsndfile protobuf libpulse opus - xdg-utils libspeechd libpng freetype2 fontconfig libxrender) -makedepends=(boost mesa python qt5-tools) -optdepends=('speech-dispatcher: Text-to-speech support' - 'espeak-ng: Text-to-speech support') -url="https://www.mumble.info/" -source=(https://github.com/mumble-voip/mumble/releases/download/${pkgver}/mumble-${pkgver}.tar.gz{,.sig}) -sha512sums=('2a629fc97f3c7c587c9a3b40fc96cf15d668acada37282ec1c4a5b169ad37717d60af94d12c7bce45f2816c265f76a99ebad40a006adcf8ca38a117e7c0a4122' - 'SKIP') -validpgpkeys=('56D0B23AE00B1EE9A8BAAC0F5B8CF87BB893449B') # Mumble Automatic Build Infrastructure 2019 <mumble-auto-build-2...@mumble.info> - -build() { - cd "$srcdir"/$pkgname-$pkgver - - qmake-qt5 main.pro \ - CONFIG+="bundled-celt no-bundled-opus no-bundled-speex no-g15 no-xevie no-server \ - no-embed-qt-translations no-update packaged" \ - DEFINES+="PLUGIN_PATH=/usr/lib/mumble" \ - INCLUDEPATH+="/usr/include/speech-dispatcher" \ - LIBS+="-lpng16 -lfreetype -lXrender -lfontconfig" - make release -} - -package() { - cd "$srcdir"/$pkgname-$pkgver - - # bin stuff - install -m755 -D ./release/mumble "$pkgdir"/usr/bin/mumble - install -m755 -D ./scripts/mumble-overlay "$pkgdir"/usr/bin/mumble-overlay - - # lib stuff - install -m755 -D ./release/libmumble.so.$pkgver "$pkgdir"/usr/lib/mumble/libmumble.so.$pkgver - ln -s libmumble.so.$pkgver "$pkgdir"/usr/lib/mumble/libmumble.so - ln -s libmumble.so.$pkgver "$pkgdir"/usr/lib/mumble/libmumble.so.1 - ln -s libmumble.so.$pkgver "$pkgdir"/usr/lib/mumble/libmumble.so.1.3 - install -m755 -D ./release/plugins/liblink.so "$pkgdir"/usr/lib/mumble/liblink.so - install -m755 -D ./release/libcelt* "$pkgdir"/usr/lib/mumble/ - - # other stuff - install -m644 -D ./scripts/mumble.desktop "$pkgdir"/usr/share/applications/mumble.desktop - install -m755 -d "$pkgdir"/usr/share/man/man1 - install -m644 -D ./man/mum* "$pkgdir"/usr/share/man/man1/ - install -m644 -D ./icons/mumble.svg "$pkgdir"/usr/share/icons/hicolor/scalable/apps/mumble.svg - install -m644 -D ./LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE -} -# vim: sw=2:ts=2 et: Copied: mumble/repos/community-x86_64/PKGBUILD (from rev 537785, mumble/repos/community-testing-x86_64/PKGBUILD) =================================================================== --- community-x86_64/PKGBUILD (rev 0) +++ community-x86_64/PKGBUILD 2019-12-15 18:23:23 UTC (rev 537786) @@ -0,0 +1,63 @@ +# Maintainer: Sven-Hendrik Haase <svenst...@gmail.com> +# Contributor: David Runge <dv...@archlinux.org> +# Contributor: Lauri Niskanen <a...@ape3000.com> +# Contributor: sebastian.sal...@gmx.de +# Contributor: Doc Angelo + +pkgname=mumble +pkgver=1.3.0 +pkgrel=5 +arch=('x86_64') +pkgdesc="A voice chat application similar to TeamSpeak" +license=('BSD') +depends=('alsa-lib' 'avahi' 'desktop-file-utils' 'gcc-libs' 'glibc' +'hicolor-icon-theme' 'libprotobuf.so' 'libpulse' 'libsndfile' 'libspeechd' +'libx11' 'libxi' 'lsb-release' 'openssl' 'opus' 'qt5-base' 'qt5-svg' 'speex' +'xdg-utils') +makedepends=(boost mesa python qt5-tools) +optdepends=('speech-dispatcher: Text-to-speech support' + 'espeak-ng: Text-to-speech support') +url="https://www.mumble.info/" +source=(https://github.com/mumble-voip/mumble/releases/download/${pkgver}/mumble-${pkgver}.tar.gz{,.sig}) +sha512sums=('2a629fc97f3c7c587c9a3b40fc96cf15d668acada37282ec1c4a5b169ad37717d60af94d12c7bce45f2816c265f76a99ebad40a006adcf8ca38a117e7c0a4122' + 'SKIP') +validpgpkeys=('56D0B23AE00B1EE9A8BAAC0F5B8CF87BB893449B') # Mumble Automatic Build Infrastructure 2019 <mumble-auto-build-2...@mumble.info> + +build() { + cd "$pkgname-$pkgver" + + qmake-qt5 main.pro \ + CONFIG+="no-bundled-opus no-bundled-speex no-g15 no-xevie no-server \ + no-embed-qt-translations no-update packaged" \ + DEFINES+="PLUGIN_PATH=/usr/lib/mumble" \ + INCLUDEPATH+="/usr/include/speech-dispatcher" + make release +} + +package() { + cd "$pkgname-$pkgver" + + # mumble has no install target: https://github.com/mumble-voip/mumble/issues/1029 + # bin stuff + install -vDm 755 release/mumble -t "$pkgdir/usr/bin" + install -vDm 755 scripts/mumble-overlay -t "$pkgdir/usr/bin/" + + # lib stuff + install -vdm 755 "$pkgdir/usr/lib/mumble/" + local _lib + for _lib in release/*.so*; do + if [ -L "$_lib" ]; then + cp -vP "$_lib" "$pkgdir/usr/lib/mumble/" + else + install -vDm 755 "$_lib" -t "$pkgdir/usr/lib/mumble/" + fi + done + install -vDm 755 release/plugins/*.so -t "$pkgdir/usr/lib/mumble/" + + # other stuff + install -vDm 644 scripts/mumble.desktop -t "$pkgdir/usr/share/applications" + install -vDm 644 "man/${pkgname}"*.1 -t "$pkgdir/usr/share/man/man1/" + install -vDm 644 icons/mumble.svg -t "$pkgdir/usr/share/icons/hicolor/scalable/apps/" + install -vDm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname" +} +# vim: sw=2:ts=2 et: Deleted: community-x86_64/mumble-protobuf-3.7.patch =================================================================== --- community-x86_64/mumble-protobuf-3.7.patch 2019-12-15 18:23:05 UTC (rev 537785) +++ community-x86_64/mumble-protobuf-3.7.patch 2019-12-15 18:23:23 UTC (rev 537786) @@ -1,800 +0,0 @@ -diff --git a/src/mumble/ACLEditor.cpp b/src/mumble/ACLEditor.cpp -index c938ffc1..e414d606 100644 ---- a/src/mumble/ACLEditor.cpp -+++ b/src/mumble/ACLEditor.cpp -@@ -37,11 +37,13 @@ - #include "Channel.h" - #include "ClientUser.h" - #include "Database.h" --#include "Global.h" - #include "Log.h" - #include "ServerHandler.h" - #include "User.h" - -+ // We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - ACLGroup::ACLGroup(const QString &name) : Group(NULL, name) { - bInherited = false; - } -diff --git a/src/mumble/About.cpp b/src/mumble/About.cpp -index 4d2cf158..dc214f17 100644 ---- a/src/mumble/About.cpp -+++ b/src/mumble/About.cpp -@@ -32,10 +32,12 @@ - - #include "About.h" - --#include "Global.h" - #include "MainWindow.h" - #include "licenses.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - AboutDialog::AboutDialog(QWidget *p) : QDialog(p) { - setWindowTitle(tr("About Mumble")); - -diff --git a/src/mumble/AudioOutput.cpp b/src/mumble/AudioOutput.cpp -index 06954884..2c7c4bf0 100644 ---- a/src/mumble/AudioOutput.cpp -+++ b/src/mumble/AudioOutput.cpp -@@ -37,13 +37,15 @@ - #include "AudioOutputSample.h" - #include "AudioOutputSpeech.h" - #include "User.h" --#include "Global.h" - #include "Message.h" - #include "Plugins.h" - #include "PacketDataStream.h" - #include "ServerHandler.h" - #include "VoiceRecorder.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - // Remember that we cannot use static member classes that are not pointers, as the constructor - // for AudioOutputRegistrar() might be called before they are initialized, as the constructor - // is called from global initialization. -diff --git a/src/mumble/AudioWizard.cpp b/src/mumble/AudioWizard.cpp -index 511fd9bc..4f0609cf 100644 ---- a/src/mumble/AudioWizard.cpp -+++ b/src/mumble/AudioWizard.cpp -@@ -34,10 +34,12 @@ - - #include "AudioInput.h" - #include "AudioOutputSample.h" --#include "Global.h" - #include "Log.h" - #include "MainWindow.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - CompletablePage::CompletablePage(QWizard *p) : QWizardPage(p) { - bComplete = true; - } -diff --git a/src/mumble/BanEditor.cpp b/src/mumble/BanEditor.cpp -index 36dad74a..f5f1106c 100644 ---- a/src/mumble/BanEditor.cpp -+++ b/src/mumble/BanEditor.cpp -@@ -33,10 +33,12 @@ - #include "BanEditor.h" - - #include "Channel.h" --#include "Global.h" - #include "Net.h" - #include "ServerHandler.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - BanEditor::BanEditor(const MumbleProto::BanList &msg, QWidget *p) : QDialog(p) { - setupUi(this); - -diff --git a/src/mumble/ConnectDialog.cpp b/src/mumble/ConnectDialog.cpp -index 17d57e85..7f54abf3 100644 ---- a/src/mumble/ConnectDialog.cpp -+++ b/src/mumble/ConnectDialog.cpp -@@ -40,10 +40,12 @@ - - #include "Channel.h" - #include "Database.h" --#include "Global.h" - #include "ServerHandler.h" - #include "WebFetch.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - QMap<QString, QIcon> ServerItem::qmIcons; - QList<PublicInfo> ConnectDialog::qlPublicServers; - QString ConnectDialog::qsUserCountry, ConnectDialog::qsUserCountryCode, ConnectDialog::qsUserContinentCode; -diff --git a/src/mumble/CustomElements.cpp b/src/mumble/CustomElements.cpp -index b43f2159..d905daf6 100644 ---- a/src/mumble/CustomElements.cpp -+++ b/src/mumble/CustomElements.cpp -@@ -34,10 +34,11 @@ - #include "CustomElements.h" - - #include "ClientUser.h" --#include "Global.h" - #include "MainWindow.h" - #include "Log.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" - - LogTextBrowser::LogTextBrowser(QWidget *p) - : m_pos(0) -diff --git a/src/mumble/DBus.cpp b/src/mumble/DBus.cpp -index 1704395c..cafa6539 100644 ---- a/src/mumble/DBus.cpp -+++ b/src/mumble/DBus.cpp -@@ -34,10 +34,11 @@ - - #include "Channel.h" - #include "ClientUser.h" --#include "Global.h" - #include "MainWindow.h" - #include "ServerHandler.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" - - MumbleDBus::MumbleDBus(QObject *mw) : QDBusAbstractAdaptor(mw) { - } -diff --git a/src/mumble/GlobalShortcut.cpp b/src/mumble/GlobalShortcut.cpp -index d35cf91d..981411e2 100644 ---- a/src/mumble/GlobalShortcut.cpp -+++ b/src/mumble/GlobalShortcut.cpp -@@ -36,9 +36,11 @@ - #include "ClientUser.h" - #include "Channel.h" - #include "Database.h" --#include "Global.h" - #include "MainWindow.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - /*! - \class ShortcutKeyWidget - Widget used to define and key combination for a shortcut. Once it gains -diff --git a/src/mumble/LCD.cpp b/src/mumble/LCD.cpp -index e83f6922..c0f6a6e1 100644 ---- a/src/mumble/LCD.cpp -+++ b/src/mumble/LCD.cpp -@@ -35,10 +35,12 @@ - - #include "ClientUser.h" - #include "Channel.h" --#include "Global.h" - #include "Message.h" - #include "ServerHandler.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - QList<LCDEngineNew> *LCDEngineRegistrar::qlInitializers; - - LCDEngineRegistrar::LCDEngineRegistrar(LCDEngineNew cons) { -diff --git a/src/mumble/Log.cpp b/src/mumble/Log.cpp -index 093f0b3a..c297f990 100644 ---- a/src/mumble/Log.cpp -+++ b/src/mumble/Log.cpp -@@ -36,13 +36,15 @@ - #include "AudioOutput.h" - #include "AudioOutputSample.h" - #include "Channel.h" --#include "Global.h" - #include "MainWindow.h" - #include "NetworkConfig.h" - #include "RichTextEditor.h" - #include "ServerHandler.h" - #include "TextToSpeech.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - static ConfigWidget *LogConfigDialogNew(Settings &st) { - return new LogConfig(st); - } -diff --git a/src/mumble/Log_unix.cpp b/src/mumble/Log_unix.cpp -index 0a189280..f0d9b9d4 100644 ---- a/src/mumble/Log_unix.cpp -+++ b/src/mumble/Log_unix.cpp -@@ -32,10 +32,12 @@ - #include "mumble_pch.hpp" - - #include "Log.h" --#include "Global.h" - #include "MainWindow.h" - #include "Settings.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - void Log::postNotification(MsgType mt, const QString &console, const QString &plain) { - // Message notification with balloon tooltips - QString qsIcon; -diff --git a/src/mumble/LookConfig.cpp b/src/mumble/LookConfig.cpp -index 5d30a2d4..21634932 100644 ---- a/src/mumble/LookConfig.cpp -+++ b/src/mumble/LookConfig.cpp -@@ -35,9 +35,11 @@ - - #include "AudioInput.h" - #include "AudioOutput.h" --#include "Global.h" - #include "MainWindow.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - static ConfigWidget *LookConfigNew(Settings &st) { - return new LookConfig(st); - } -diff --git a/src/mumble/MainWindow.cpp b/src/mumble/MainWindow.cpp -index eaa45736..805092f8 100644 ---- a/src/mumble/MainWindow.cpp -+++ b/src/mumble/MainWindow.cpp -@@ -46,7 +46,6 @@ - #include "Connection.h" - #include "ConnectDialog.h" - #include "Database.h" --#include "Global.h" - #include "GlobalShortcut.h" - #include "Log.h" - #include "Net.h" -@@ -75,6 +74,9 @@ - #include "ConfigDialog_macx.h" - #endif - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - /*! - \fn void MainWindow::findDesiredChannel() - This function tries to join a desired channel on connect. It gets called -diff --git a/src/mumble/Messages.cpp b/src/mumble/Messages.cpp -index a9109bdf..cef9522d 100644 ---- a/src/mumble/Messages.cpp -+++ b/src/mumble/Messages.cpp -@@ -41,7 +41,6 @@ - #include "Connection.h" - #include "ConnectDialog.h" - #include "Database.h" --#include "Global.h" - #include "GlobalShortcut.h" - #include "Log.h" - #include "MainWindow.h" -@@ -55,6 +54,9 @@ - #include "VersionCheck.h" - #include "ViewCert.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - #define ACTOR_INIT \ - ClientUser *pSrc=NULL; \ - if (msg.has_actor()) \ -diff --git a/src/mumble/NetworkConfig.cpp b/src/mumble/NetworkConfig.cpp -index 5556e667..00ad65ed 100644 ---- a/src/mumble/NetworkConfig.cpp -+++ b/src/mumble/NetworkConfig.cpp -@@ -34,10 +34,12 @@ - - #include "NetworkConfig.h" - --#include "Global.h" - #include "MainWindow.h" - #include "OSInfo.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - static ConfigWidget *NetworkConfigNew(Settings &st) { - return new NetworkConfig(st); - } -diff --git a/src/mumble/OSS.cpp b/src/mumble/OSS.cpp -index 4af1326e..2611d8c0 100644 ---- a/src/mumble/OSS.cpp -+++ b/src/mumble/OSS.cpp -@@ -38,9 +38,10 @@ - #include <sys/ioctl.h> - - #include "User.h" --#include "Global.h" - #include "MainWindow.h" - -+#include "Global.h" -+ - #define NBLOCKS 8 - - class OSSEnumerator { -diff --git a/src/mumble/Overlay.cpp b/src/mumble/Overlay.cpp -index 619dd2f7..2ffc1e66 100644 ---- a/src/mumble/Overlay.cpp -+++ b/src/mumble/Overlay.cpp -@@ -35,7 +35,6 @@ - #include "Channel.h" - #include "ClientUser.h" - #include "Database.h" --#include "Global.h" - #include "GlobalShortcut.h" - #include "MainWindow.h" - #include "Message.h" -@@ -45,6 +44,9 @@ - #include "User.h" - #include "WebFetch.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - OverlayAppInfo::OverlayAppInfo(QString name, QIcon icon) { - qsDisplayName = name; - qiIcon = icon; -diff --git a/src/mumble/OverlayClient.cpp b/src/mumble/OverlayClient.cpp -index c3c408df..539c092e 100644 ---- a/src/mumble/OverlayClient.cpp -+++ b/src/mumble/OverlayClient.cpp -@@ -34,7 +34,6 @@ - #include "OverlayText.h" - #include "User.h" - #include "Channel.h" --#include "Global.h" - #include "Message.h" - #include "Database.h" - #include "NetworkConfig.h" -@@ -42,6 +41,9 @@ - #include "MainWindow.h" - #include "GlobalShortcut.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - OverlayClient::OverlayClient(QLocalSocket *socket, QObject *p) : - QObject(p), - ougUsers(&g.s.os) { -diff --git a/src/mumble/OverlayConfig.cpp b/src/mumble/OverlayConfig.cpp -index 9a45da3f..22383989 100644 ---- a/src/mumble/OverlayConfig.cpp -+++ b/src/mumble/OverlayConfig.cpp -@@ -34,7 +34,6 @@ - #include "OverlayText.h" - #include "User.h" - #include "Channel.h" --#include "Global.h" - #include "Message.h" - #include "Database.h" - #include "NetworkConfig.h" -@@ -42,6 +41,9 @@ - #include "MainWindow.h" - #include "GlobalShortcut.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - static ConfigWidget *OverlayConfigDialogNew(Settings &st) { - return new OverlayConfig(st); - } -@@ -481,6 +483,8 @@ void OverlayConfig::on_qpbLoadPreset_clicked() { - load_preset.load(&qs); - qs.endGroup(); - -+#include "Global.h" -+ - #ifdef Q_OS_WIN - load_preset.qslBlacklist = s.os.qslBlacklist; - load_preset.qslWhitelist = s.os.qslWhitelist; -diff --git a/src/mumble/OverlayEditor.cpp b/src/mumble/OverlayEditor.cpp -index 0263c1fc..16847b4d 100644 ---- a/src/mumble/OverlayEditor.cpp -+++ b/src/mumble/OverlayEditor.cpp -@@ -34,7 +34,6 @@ - #include "OverlayText.h" - #include "User.h" - #include "Channel.h" --#include "Global.h" - #include "Message.h" - #include "Database.h" - #include "NetworkConfig.h" -@@ -42,6 +41,9 @@ - #include "MainWindow.h" - #include "GlobalShortcut.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - OverlayEditor::OverlayEditor(QWidget *p, QGraphicsItem *qgi, OverlaySettings *osptr) : - QDialog(p), - qgiPromote(qgi), -diff --git a/src/mumble/OverlayEditorScene.cpp b/src/mumble/OverlayEditorScene.cpp -index 95fe347c..9462f5fa 100644 ---- a/src/mumble/OverlayEditorScene.cpp -+++ b/src/mumble/OverlayEditorScene.cpp -@@ -34,7 +34,6 @@ - #include "OverlayText.h" - #include "User.h" - #include "Channel.h" --#include "Global.h" - #include "Message.h" - #include "Database.h" - #include "NetworkConfig.h" -@@ -42,6 +41,9 @@ - #include "MainWindow.h" - #include "GlobalShortcut.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - OverlayEditorScene::OverlayEditorScene(const OverlaySettings &srcos, QObject *p) : QGraphicsScene(p), os(srcos) { - tsColor = Settings::Talking; - uiZoom = 2; -diff --git a/src/mumble/OverlayUser.cpp b/src/mumble/OverlayUser.cpp -index 979af17f..da0a401f 100644 ---- a/src/mumble/OverlayUser.cpp -+++ b/src/mumble/OverlayUser.cpp -@@ -35,7 +35,6 @@ - #include "User.h" - #include "Channel.h" - #include "ClientUser.h" --#include "Global.h" - #include "Message.h" - #include "Database.h" - #include "NetworkConfig.h" -@@ -43,6 +42,9 @@ - #include "MainWindow.h" - #include "GlobalShortcut.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - OverlayUser::OverlayUser(ClientUser *cu, unsigned int height, OverlaySettings *osptr) : OverlayGroup(), os(osptr), uiSize(height), cuUser(cu), tsColor(Settings::Passive) { - setup(); - updateLayout(); -diff --git a/src/mumble/OverlayUserGroup.cpp b/src/mumble/OverlayUserGroup.cpp -index f8831d52..75770f76 100644 ---- a/src/mumble/OverlayUserGroup.cpp -+++ b/src/mumble/OverlayUserGroup.cpp -@@ -35,7 +35,6 @@ - #include "User.h" - #include "Channel.h" - #include "ClientUser.h" --#include "Global.h" - #include "Message.h" - #include "Database.h" - #include "NetworkConfig.h" -@@ -43,6 +42,9 @@ - #include "MainWindow.h" - #include "GlobalShortcut.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - template <typename T> - QRectF OverlayGroup::boundingRect() const { - QRectF qr; -diff --git a/src/mumble/Overlay_macx.mm b/src/mumble/Overlay_macx.mm -index dd2a82f8..69ca2206 100644 ---- a/src/mumble/Overlay_macx.mm -+++ b/src/mumble/Overlay_macx.mm -@@ -33,9 +33,11 @@ - #import <ScriptingBridge/ScriptingBridge.h> - #include <Carbon/Carbon.h> - #include "Overlay.h" --#include "Global.h" - #include "MainWindow.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - extern "C" { - #include <xar/xar.h> - } -diff --git a/src/mumble/Plugins.cpp b/src/mumble/Plugins.cpp -index 82b3ec62..90bd9d02 100644 ---- a/src/mumble/Plugins.cpp -+++ b/src/mumble/Plugins.cpp -@@ -32,7 +32,6 @@ - - #include "Plugins.h" - --#include "Global.h" - #include "Log.h" - #include "MainWindow.h" - #include "Message.h" -@@ -40,6 +39,9 @@ - #include "../../plugins/mumble_plugin.h" - #include "WebFetch.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - static ConfigWidget *PluginConfigDialogNew(Settings &st) { - return new PluginConfig(st); - } -diff --git a/src/mumble/PulseAudio.cpp b/src/mumble/PulseAudio.cpp -index b1ea1c1a..3c6a5b3d 100644 ---- a/src/mumble/PulseAudio.cpp -+++ b/src/mumble/PulseAudio.cpp -@@ -37,11 +37,12 @@ - #include <errno.h> - #include <sys/ioctl.h> - --#include "Global.h" - #include "MainWindow.h" - #include "Timer.h" - #include "User.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" - - static const char *mumble_sink_input = "Mumble Speakers"; - static const char *mumble_echo = "Mumble Speakers (Echo)"; -diff --git a/src/mumble/RichTextEditor.cpp b/src/mumble/RichTextEditor.cpp -index ca4baa64..90c9a910 100644 ---- a/src/mumble/RichTextEditor.cpp -+++ b/src/mumble/RichTextEditor.cpp -@@ -32,10 +32,12 @@ - - #include "RichTextEditor.h" - --#include "Global.h" - #include "Log.h" - #include "MainWindow.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - RichTextHtmlEdit::RichTextHtmlEdit(QWidget *p) : QTextEdit(p) { - m_document = new LogDocument(this); - setDocument(m_document); -diff --git a/src/mumble/ServerHandler.cpp b/src/mumble/ServerHandler.cpp -index 60125c95..0349d091 100644 ---- a/src/mumble/ServerHandler.cpp -+++ b/src/mumble/ServerHandler.cpp -@@ -37,7 +37,6 @@ - #include "Cert.h" - #include "Connection.h" - #include "Database.h" --#include "Global.h" - #include "MainWindow.h" - #include "Message.h" - #include "NetworkConfig.h" -@@ -47,6 +46,9 @@ - #include "SSL.h" - #include "User.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - ServerHandlerMessageEvent::ServerHandlerMessageEvent(const QByteArray &msg, unsigned int mtype, bool flush) : QEvent(static_cast<QEvent::Type>(SERVERSEND_EVENT)) { - qbaMsg = msg; - uiType = mtype; -diff --git a/src/mumble/SocketRPC.cpp b/src/mumble/SocketRPC.cpp -index 928299a1..ba79a15d 100644 ---- a/src/mumble/SocketRPC.cpp -+++ b/src/mumble/SocketRPC.cpp -@@ -34,10 +34,12 @@ - - #include "Channel.h" - #include "ClientUser.h" --#include "Global.h" - #include "MainWindow.h" - #include "ServerHandler.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - SocketRPCClient::SocketRPCClient(QLocalSocket *s, QObject *p) : QObject(p), qlsSocket(s), qbBuffer(NULL) { - qlsSocket->setParent(this); - -diff --git a/src/mumble/Tokens.cpp b/src/mumble/Tokens.cpp -index 777ffc3e..8f585a27 100644 ---- a/src/mumble/Tokens.cpp -+++ b/src/mumble/Tokens.cpp -@@ -33,9 +33,11 @@ - #include "Tokens.h" - - #include "Database.h" --#include "Global.h" - #include "ServerHandler.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - Tokens::Tokens(QWidget *p) : QDialog(p) { - setupUi(this); - -diff --git a/src/mumble/UserEdit.cpp b/src/mumble/UserEdit.cpp -index 9d7f456e..0056a3af 100644 ---- a/src/mumble/UserEdit.cpp -+++ b/src/mumble/UserEdit.cpp -@@ -32,10 +32,12 @@ - - #include "UserEdit.h" - --#include "Global.h" - #include "ServerHandler.h" - #include "User.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - UserEdit::UserEdit(const MumbleProto::UserList &msg, QWidget *p) : QDialog(p) { - setupUi(this); - -diff --git a/src/mumble/UserInformation.cpp b/src/mumble/UserInformation.cpp -index 6da8b80e..60990b22 100644 ---- a/src/mumble/UserInformation.cpp -+++ b/src/mumble/UserInformation.cpp -@@ -34,11 +34,13 @@ - - #include "Audio.h" - #include "CELTCodec.h" --#include "Global.h" - #include "Net.h" - #include "ServerHandler.h" - #include "ViewCert.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - static QString decode_utf8_qssl_string(const QString &input) { - QString i = input; - return QUrl::fromPercentEncoding(i.replace(QLatin1String("\\x"), QLatin1String("%")).toLatin1()); -diff --git a/src/mumble/UserModel.cpp b/src/mumble/UserModel.cpp -index a702e9d8..0657133a 100644 ---- a/src/mumble/UserModel.cpp -+++ b/src/mumble/UserModel.cpp -@@ -36,7 +36,6 @@ - #include "ClientUser.h" - #include "Channel.h" - #include "Database.h" --#include "Global.h" - #include "LCD.h" - #include "Log.h" - #include "MainWindow.h" -@@ -46,6 +45,9 @@ - #include "Usage.h" - #include "User.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - QHash <Channel *, ModelItem *> ModelItem::c_qhChannels; - QHash <ClientUser *, ModelItem *> ModelItem::c_qhUsers; - bool ModelItem::bUsersTop = false; -diff --git a/src/mumble/UserView.cpp b/src/mumble/UserView.cpp -index c462bf69..0103189d 100644 ---- a/src/mumble/UserView.cpp -+++ b/src/mumble/UserView.cpp -@@ -35,11 +35,13 @@ - #include "Channel.h" - #include "ClientUser.h" - #include "Log.h" --#include "Global.h" - #include "MainWindow.h" - #include "ServerHandler.h" - #include "UserModel.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - /*! - \fn bool UserView::event(QEvent *evt) - This implementation contains a special handler to display -diff --git a/src/mumble/VersionCheck.cpp b/src/mumble/VersionCheck.cpp -index e60a17af..0e16f1d2 100644 ---- a/src/mumble/VersionCheck.cpp -+++ b/src/mumble/VersionCheck.cpp -@@ -32,10 +32,12 @@ - - #include "VersionCheck.h" - --#include "Global.h" - #include "MainWindow.h" - #include "WebFetch.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - VersionCheck::VersionCheck(bool autocheck, QObject *p, bool focus) : QObject(p) { - bSilent = autocheck; - -diff --git a/src/mumble/VoiceRecorder.cpp b/src/mumble/VoiceRecorder.cpp -index 996b32c4..38e1fb3d 100644 ---- a/src/mumble/VoiceRecorder.cpp -+++ b/src/mumble/VoiceRecorder.cpp -@@ -36,11 +36,13 @@ - - #include "AudioOutput.h" - #include "ClientUser.h" --#include "Global.h" - #include "ServerHandler.h" - - #include "../Timer.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - VoiceRecorder::RecordBuffer::RecordBuffer(const ClientUser *cu, - boost::shared_array<float> buffer, int samples, quint64 timestamp) : - cuUser(cu), fBuffer(buffer), iSamples(samples), uiTimestamp(timestamp) { -diff --git a/src/mumble/VoiceRecorderDialog.cpp b/src/mumble/VoiceRecorderDialog.cpp -index ecede42f..7f377548 100644 ---- a/src/mumble/VoiceRecorderDialog.cpp -+++ b/src/mumble/VoiceRecorderDialog.cpp -@@ -34,10 +34,12 @@ - #include "VoiceRecorderDialog.h" - - #include "AudioOutput.h" --#include "Global.h" - #include "ServerHandler.h" - #include "VoiceRecorder.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - VoiceRecorderDialog::VoiceRecorderDialog(QWidget *p) : QDialog(p), qtTimer(new QTimer(this)) { - qtTimer->setObjectName(QLatin1String("qtTimer")); - qtTimer->setInterval(200); -diff --git a/src/mumble/WASAPI.cpp b/src/mumble/WASAPI.cpp -index 0e468719..6e3f814c 100644 ---- a/src/mumble/WASAPI.cpp -+++ b/src/mumble/WASAPI.cpp -@@ -32,10 +32,11 @@ - - #include "WASAPI.h" - #include "WASAPINotificationClient.h" --#include "Global.h" - #include "Timer.h" - #include "User.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" - - // Now that Win7 is published, which includes public versions of these - // interfaces, we simply inherit from those but use the "old" IIDs. -diff --git a/src/mumble/WASAPINotificationClient.cpp b/src/mumble/WASAPINotificationClient.cpp -index 45887781..3e3de14a 100644 ---- a/src/mumble/WASAPINotificationClient.cpp -+++ b/src/mumble/WASAPINotificationClient.cpp -@@ -29,13 +29,15 @@ - */ - - #include <initguid.h> --#include <Global.h> - #include <QMutexLocker> - #include "MainWindow.h" - #include <boost/thread/once.hpp> - - #include "WASAPINotificationClient.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - HRESULT STDMETHODCALLTYPE WASAPINotificationClient::OnDefaultDeviceChanged(EDataFlow flow, ERole role, LPCWSTR pwstrDefaultDevice) { - const QString device = QString::fromWCharArray(pwstrDefaultDevice); - -diff --git a/src/mumble/os_macx.mm b/src/mumble/os_macx.mm -index aa3c2f44..bfc0d0a2 100644 ---- a/src/mumble/os_macx.mm -+++ b/src/mumble/os_macx.mm -@@ -30,10 +30,12 @@ - */ - - #include "mumble_pch.hpp" --#include "Global.h" - #include "Overlay.h" - #include "MainWindow.h" - -+// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. -+#include "Global.h" -+ - char *os_lang = NULL; - static FILE *fConsole = NULL; - - Copied: mumble/repos/community-x86_64/mumble-protobuf-3.7.patch (from rev 537785, mumble/repos/community-testing-x86_64/mumble-protobuf-3.7.patch) =================================================================== --- community-x86_64/mumble-protobuf-3.7.patch (rev 0) +++ community-x86_64/mumble-protobuf-3.7.patch 2019-12-15 18:23:23 UTC (rev 537786) @@ -0,0 +1,800 @@ +diff --git a/src/mumble/ACLEditor.cpp b/src/mumble/ACLEditor.cpp +index c938ffc1..e414d606 100644 +--- a/src/mumble/ACLEditor.cpp ++++ b/src/mumble/ACLEditor.cpp +@@ -37,11 +37,13 @@ + #include "Channel.h" + #include "ClientUser.h" + #include "Database.h" +-#include "Global.h" + #include "Log.h" + #include "ServerHandler.h" + #include "User.h" + ++ // We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + ACLGroup::ACLGroup(const QString &name) : Group(NULL, name) { + bInherited = false; + } +diff --git a/src/mumble/About.cpp b/src/mumble/About.cpp +index 4d2cf158..dc214f17 100644 +--- a/src/mumble/About.cpp ++++ b/src/mumble/About.cpp +@@ -32,10 +32,12 @@ + + #include "About.h" + +-#include "Global.h" + #include "MainWindow.h" + #include "licenses.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + AboutDialog::AboutDialog(QWidget *p) : QDialog(p) { + setWindowTitle(tr("About Mumble")); + +diff --git a/src/mumble/AudioOutput.cpp b/src/mumble/AudioOutput.cpp +index 06954884..2c7c4bf0 100644 +--- a/src/mumble/AudioOutput.cpp ++++ b/src/mumble/AudioOutput.cpp +@@ -37,13 +37,15 @@ + #include "AudioOutputSample.h" + #include "AudioOutputSpeech.h" + #include "User.h" +-#include "Global.h" + #include "Message.h" + #include "Plugins.h" + #include "PacketDataStream.h" + #include "ServerHandler.h" + #include "VoiceRecorder.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + // Remember that we cannot use static member classes that are not pointers, as the constructor + // for AudioOutputRegistrar() might be called before they are initialized, as the constructor + // is called from global initialization. +diff --git a/src/mumble/AudioWizard.cpp b/src/mumble/AudioWizard.cpp +index 511fd9bc..4f0609cf 100644 +--- a/src/mumble/AudioWizard.cpp ++++ b/src/mumble/AudioWizard.cpp +@@ -34,10 +34,12 @@ + + #include "AudioInput.h" + #include "AudioOutputSample.h" +-#include "Global.h" + #include "Log.h" + #include "MainWindow.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + CompletablePage::CompletablePage(QWizard *p) : QWizardPage(p) { + bComplete = true; + } +diff --git a/src/mumble/BanEditor.cpp b/src/mumble/BanEditor.cpp +index 36dad74a..f5f1106c 100644 +--- a/src/mumble/BanEditor.cpp ++++ b/src/mumble/BanEditor.cpp +@@ -33,10 +33,12 @@ + #include "BanEditor.h" + + #include "Channel.h" +-#include "Global.h" + #include "Net.h" + #include "ServerHandler.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + BanEditor::BanEditor(const MumbleProto::BanList &msg, QWidget *p) : QDialog(p) { + setupUi(this); + +diff --git a/src/mumble/ConnectDialog.cpp b/src/mumble/ConnectDialog.cpp +index 17d57e85..7f54abf3 100644 +--- a/src/mumble/ConnectDialog.cpp ++++ b/src/mumble/ConnectDialog.cpp +@@ -40,10 +40,12 @@ + + #include "Channel.h" + #include "Database.h" +-#include "Global.h" + #include "ServerHandler.h" + #include "WebFetch.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + QMap<QString, QIcon> ServerItem::qmIcons; + QList<PublicInfo> ConnectDialog::qlPublicServers; + QString ConnectDialog::qsUserCountry, ConnectDialog::qsUserCountryCode, ConnectDialog::qsUserContinentCode; +diff --git a/src/mumble/CustomElements.cpp b/src/mumble/CustomElements.cpp +index b43f2159..d905daf6 100644 +--- a/src/mumble/CustomElements.cpp ++++ b/src/mumble/CustomElements.cpp +@@ -34,10 +34,11 @@ + #include "CustomElements.h" + + #include "ClientUser.h" +-#include "Global.h" + #include "MainWindow.h" + #include "Log.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" + + LogTextBrowser::LogTextBrowser(QWidget *p) + : m_pos(0) +diff --git a/src/mumble/DBus.cpp b/src/mumble/DBus.cpp +index 1704395c..cafa6539 100644 +--- a/src/mumble/DBus.cpp ++++ b/src/mumble/DBus.cpp +@@ -34,10 +34,11 @@ + + #include "Channel.h" + #include "ClientUser.h" +-#include "Global.h" + #include "MainWindow.h" + #include "ServerHandler.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" + + MumbleDBus::MumbleDBus(QObject *mw) : QDBusAbstractAdaptor(mw) { + } +diff --git a/src/mumble/GlobalShortcut.cpp b/src/mumble/GlobalShortcut.cpp +index d35cf91d..981411e2 100644 +--- a/src/mumble/GlobalShortcut.cpp ++++ b/src/mumble/GlobalShortcut.cpp +@@ -36,9 +36,11 @@ + #include "ClientUser.h" + #include "Channel.h" + #include "Database.h" +-#include "Global.h" + #include "MainWindow.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + /*! + \class ShortcutKeyWidget + Widget used to define and key combination for a shortcut. Once it gains +diff --git a/src/mumble/LCD.cpp b/src/mumble/LCD.cpp +index e83f6922..c0f6a6e1 100644 +--- a/src/mumble/LCD.cpp ++++ b/src/mumble/LCD.cpp +@@ -35,10 +35,12 @@ + + #include "ClientUser.h" + #include "Channel.h" +-#include "Global.h" + #include "Message.h" + #include "ServerHandler.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + QList<LCDEngineNew> *LCDEngineRegistrar::qlInitializers; + + LCDEngineRegistrar::LCDEngineRegistrar(LCDEngineNew cons) { +diff --git a/src/mumble/Log.cpp b/src/mumble/Log.cpp +index 093f0b3a..c297f990 100644 +--- a/src/mumble/Log.cpp ++++ b/src/mumble/Log.cpp +@@ -36,13 +36,15 @@ + #include "AudioOutput.h" + #include "AudioOutputSample.h" + #include "Channel.h" +-#include "Global.h" + #include "MainWindow.h" + #include "NetworkConfig.h" + #include "RichTextEditor.h" + #include "ServerHandler.h" + #include "TextToSpeech.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + static ConfigWidget *LogConfigDialogNew(Settings &st) { + return new LogConfig(st); + } +diff --git a/src/mumble/Log_unix.cpp b/src/mumble/Log_unix.cpp +index 0a189280..f0d9b9d4 100644 +--- a/src/mumble/Log_unix.cpp ++++ b/src/mumble/Log_unix.cpp +@@ -32,10 +32,12 @@ + #include "mumble_pch.hpp" + + #include "Log.h" +-#include "Global.h" + #include "MainWindow.h" + #include "Settings.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + void Log::postNotification(MsgType mt, const QString &console, const QString &plain) { + // Message notification with balloon tooltips + QString qsIcon; +diff --git a/src/mumble/LookConfig.cpp b/src/mumble/LookConfig.cpp +index 5d30a2d4..21634932 100644 +--- a/src/mumble/LookConfig.cpp ++++ b/src/mumble/LookConfig.cpp +@@ -35,9 +35,11 @@ + + #include "AudioInput.h" + #include "AudioOutput.h" +-#include "Global.h" + #include "MainWindow.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + static ConfigWidget *LookConfigNew(Settings &st) { + return new LookConfig(st); + } +diff --git a/src/mumble/MainWindow.cpp b/src/mumble/MainWindow.cpp +index eaa45736..805092f8 100644 +--- a/src/mumble/MainWindow.cpp ++++ b/src/mumble/MainWindow.cpp +@@ -46,7 +46,6 @@ + #include "Connection.h" + #include "ConnectDialog.h" + #include "Database.h" +-#include "Global.h" + #include "GlobalShortcut.h" + #include "Log.h" + #include "Net.h" +@@ -75,6 +74,9 @@ + #include "ConfigDialog_macx.h" + #endif + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + /*! + \fn void MainWindow::findDesiredChannel() + This function tries to join a desired channel on connect. It gets called +diff --git a/src/mumble/Messages.cpp b/src/mumble/Messages.cpp +index a9109bdf..cef9522d 100644 +--- a/src/mumble/Messages.cpp ++++ b/src/mumble/Messages.cpp +@@ -41,7 +41,6 @@ + #include "Connection.h" + #include "ConnectDialog.h" + #include "Database.h" +-#include "Global.h" + #include "GlobalShortcut.h" + #include "Log.h" + #include "MainWindow.h" +@@ -55,6 +54,9 @@ + #include "VersionCheck.h" + #include "ViewCert.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + #define ACTOR_INIT \ + ClientUser *pSrc=NULL; \ + if (msg.has_actor()) \ +diff --git a/src/mumble/NetworkConfig.cpp b/src/mumble/NetworkConfig.cpp +index 5556e667..00ad65ed 100644 +--- a/src/mumble/NetworkConfig.cpp ++++ b/src/mumble/NetworkConfig.cpp +@@ -34,10 +34,12 @@ + + #include "NetworkConfig.h" + +-#include "Global.h" + #include "MainWindow.h" + #include "OSInfo.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + static ConfigWidget *NetworkConfigNew(Settings &st) { + return new NetworkConfig(st); + } +diff --git a/src/mumble/OSS.cpp b/src/mumble/OSS.cpp +index 4af1326e..2611d8c0 100644 +--- a/src/mumble/OSS.cpp ++++ b/src/mumble/OSS.cpp +@@ -38,9 +38,10 @@ + #include <sys/ioctl.h> + + #include "User.h" +-#include "Global.h" + #include "MainWindow.h" + ++#include "Global.h" ++ + #define NBLOCKS 8 + + class OSSEnumerator { +diff --git a/src/mumble/Overlay.cpp b/src/mumble/Overlay.cpp +index 619dd2f7..2ffc1e66 100644 +--- a/src/mumble/Overlay.cpp ++++ b/src/mumble/Overlay.cpp +@@ -35,7 +35,6 @@ + #include "Channel.h" + #include "ClientUser.h" + #include "Database.h" +-#include "Global.h" + #include "GlobalShortcut.h" + #include "MainWindow.h" + #include "Message.h" +@@ -45,6 +44,9 @@ + #include "User.h" + #include "WebFetch.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + OverlayAppInfo::OverlayAppInfo(QString name, QIcon icon) { + qsDisplayName = name; + qiIcon = icon; +diff --git a/src/mumble/OverlayClient.cpp b/src/mumble/OverlayClient.cpp +index c3c408df..539c092e 100644 +--- a/src/mumble/OverlayClient.cpp ++++ b/src/mumble/OverlayClient.cpp +@@ -34,7 +34,6 @@ + #include "OverlayText.h" + #include "User.h" + #include "Channel.h" +-#include "Global.h" + #include "Message.h" + #include "Database.h" + #include "NetworkConfig.h" +@@ -42,6 +41,9 @@ + #include "MainWindow.h" + #include "GlobalShortcut.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + OverlayClient::OverlayClient(QLocalSocket *socket, QObject *p) : + QObject(p), + ougUsers(&g.s.os) { +diff --git a/src/mumble/OverlayConfig.cpp b/src/mumble/OverlayConfig.cpp +index 9a45da3f..22383989 100644 +--- a/src/mumble/OverlayConfig.cpp ++++ b/src/mumble/OverlayConfig.cpp +@@ -34,7 +34,6 @@ + #include "OverlayText.h" + #include "User.h" + #include "Channel.h" +-#include "Global.h" + #include "Message.h" + #include "Database.h" + #include "NetworkConfig.h" +@@ -42,6 +41,9 @@ + #include "MainWindow.h" + #include "GlobalShortcut.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + static ConfigWidget *OverlayConfigDialogNew(Settings &st) { + return new OverlayConfig(st); + } +@@ -481,6 +483,8 @@ void OverlayConfig::on_qpbLoadPreset_clicked() { + load_preset.load(&qs); + qs.endGroup(); + ++#include "Global.h" ++ + #ifdef Q_OS_WIN + load_preset.qslBlacklist = s.os.qslBlacklist; + load_preset.qslWhitelist = s.os.qslWhitelist; +diff --git a/src/mumble/OverlayEditor.cpp b/src/mumble/OverlayEditor.cpp +index 0263c1fc..16847b4d 100644 +--- a/src/mumble/OverlayEditor.cpp ++++ b/src/mumble/OverlayEditor.cpp +@@ -34,7 +34,6 @@ + #include "OverlayText.h" + #include "User.h" + #include "Channel.h" +-#include "Global.h" + #include "Message.h" + #include "Database.h" + #include "NetworkConfig.h" +@@ -42,6 +41,9 @@ + #include "MainWindow.h" + #include "GlobalShortcut.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + OverlayEditor::OverlayEditor(QWidget *p, QGraphicsItem *qgi, OverlaySettings *osptr) : + QDialog(p), + qgiPromote(qgi), +diff --git a/src/mumble/OverlayEditorScene.cpp b/src/mumble/OverlayEditorScene.cpp +index 95fe347c..9462f5fa 100644 +--- a/src/mumble/OverlayEditorScene.cpp ++++ b/src/mumble/OverlayEditorScene.cpp +@@ -34,7 +34,6 @@ + #include "OverlayText.h" + #include "User.h" + #include "Channel.h" +-#include "Global.h" + #include "Message.h" + #include "Database.h" + #include "NetworkConfig.h" +@@ -42,6 +41,9 @@ + #include "MainWindow.h" + #include "GlobalShortcut.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + OverlayEditorScene::OverlayEditorScene(const OverlaySettings &srcos, QObject *p) : QGraphicsScene(p), os(srcos) { + tsColor = Settings::Talking; + uiZoom = 2; +diff --git a/src/mumble/OverlayUser.cpp b/src/mumble/OverlayUser.cpp +index 979af17f..da0a401f 100644 +--- a/src/mumble/OverlayUser.cpp ++++ b/src/mumble/OverlayUser.cpp +@@ -35,7 +35,6 @@ + #include "User.h" + #include "Channel.h" + #include "ClientUser.h" +-#include "Global.h" + #include "Message.h" + #include "Database.h" + #include "NetworkConfig.h" +@@ -43,6 +42,9 @@ + #include "MainWindow.h" + #include "GlobalShortcut.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + OverlayUser::OverlayUser(ClientUser *cu, unsigned int height, OverlaySettings *osptr) : OverlayGroup(), os(osptr), uiSize(height), cuUser(cu), tsColor(Settings::Passive) { + setup(); + updateLayout(); +diff --git a/src/mumble/OverlayUserGroup.cpp b/src/mumble/OverlayUserGroup.cpp +index f8831d52..75770f76 100644 +--- a/src/mumble/OverlayUserGroup.cpp ++++ b/src/mumble/OverlayUserGroup.cpp +@@ -35,7 +35,6 @@ + #include "User.h" + #include "Channel.h" + #include "ClientUser.h" +-#include "Global.h" + #include "Message.h" + #include "Database.h" + #include "NetworkConfig.h" +@@ -43,6 +42,9 @@ + #include "MainWindow.h" + #include "GlobalShortcut.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + template <typename T> + QRectF OverlayGroup::boundingRect() const { + QRectF qr; +diff --git a/src/mumble/Overlay_macx.mm b/src/mumble/Overlay_macx.mm +index dd2a82f8..69ca2206 100644 +--- a/src/mumble/Overlay_macx.mm ++++ b/src/mumble/Overlay_macx.mm +@@ -33,9 +33,11 @@ + #import <ScriptingBridge/ScriptingBridge.h> + #include <Carbon/Carbon.h> + #include "Overlay.h" +-#include "Global.h" + #include "MainWindow.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + extern "C" { + #include <xar/xar.h> + } +diff --git a/src/mumble/Plugins.cpp b/src/mumble/Plugins.cpp +index 82b3ec62..90bd9d02 100644 +--- a/src/mumble/Plugins.cpp ++++ b/src/mumble/Plugins.cpp +@@ -32,7 +32,6 @@ + + #include "Plugins.h" + +-#include "Global.h" + #include "Log.h" + #include "MainWindow.h" + #include "Message.h" +@@ -40,6 +39,9 @@ + #include "../../plugins/mumble_plugin.h" + #include "WebFetch.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + static ConfigWidget *PluginConfigDialogNew(Settings &st) { + return new PluginConfig(st); + } +diff --git a/src/mumble/PulseAudio.cpp b/src/mumble/PulseAudio.cpp +index b1ea1c1a..3c6a5b3d 100644 +--- a/src/mumble/PulseAudio.cpp ++++ b/src/mumble/PulseAudio.cpp +@@ -37,11 +37,12 @@ + #include <errno.h> + #include <sys/ioctl.h> + +-#include "Global.h" + #include "MainWindow.h" + #include "Timer.h" + #include "User.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" + + static const char *mumble_sink_input = "Mumble Speakers"; + static const char *mumble_echo = "Mumble Speakers (Echo)"; +diff --git a/src/mumble/RichTextEditor.cpp b/src/mumble/RichTextEditor.cpp +index ca4baa64..90c9a910 100644 +--- a/src/mumble/RichTextEditor.cpp ++++ b/src/mumble/RichTextEditor.cpp +@@ -32,10 +32,12 @@ + + #include "RichTextEditor.h" + +-#include "Global.h" + #include "Log.h" + #include "MainWindow.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + RichTextHtmlEdit::RichTextHtmlEdit(QWidget *p) : QTextEdit(p) { + m_document = new LogDocument(this); + setDocument(m_document); +diff --git a/src/mumble/ServerHandler.cpp b/src/mumble/ServerHandler.cpp +index 60125c95..0349d091 100644 +--- a/src/mumble/ServerHandler.cpp ++++ b/src/mumble/ServerHandler.cpp +@@ -37,7 +37,6 @@ + #include "Cert.h" + #include "Connection.h" + #include "Database.h" +-#include "Global.h" + #include "MainWindow.h" + #include "Message.h" + #include "NetworkConfig.h" +@@ -47,6 +46,9 @@ + #include "SSL.h" + #include "User.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + ServerHandlerMessageEvent::ServerHandlerMessageEvent(const QByteArray &msg, unsigned int mtype, bool flush) : QEvent(static_cast<QEvent::Type>(SERVERSEND_EVENT)) { + qbaMsg = msg; + uiType = mtype; +diff --git a/src/mumble/SocketRPC.cpp b/src/mumble/SocketRPC.cpp +index 928299a1..ba79a15d 100644 +--- a/src/mumble/SocketRPC.cpp ++++ b/src/mumble/SocketRPC.cpp +@@ -34,10 +34,12 @@ + + #include "Channel.h" + #include "ClientUser.h" +-#include "Global.h" + #include "MainWindow.h" + #include "ServerHandler.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + SocketRPCClient::SocketRPCClient(QLocalSocket *s, QObject *p) : QObject(p), qlsSocket(s), qbBuffer(NULL) { + qlsSocket->setParent(this); + +diff --git a/src/mumble/Tokens.cpp b/src/mumble/Tokens.cpp +index 777ffc3e..8f585a27 100644 +--- a/src/mumble/Tokens.cpp ++++ b/src/mumble/Tokens.cpp +@@ -33,9 +33,11 @@ + #include "Tokens.h" + + #include "Database.h" +-#include "Global.h" + #include "ServerHandler.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + Tokens::Tokens(QWidget *p) : QDialog(p) { + setupUi(this); + +diff --git a/src/mumble/UserEdit.cpp b/src/mumble/UserEdit.cpp +index 9d7f456e..0056a3af 100644 +--- a/src/mumble/UserEdit.cpp ++++ b/src/mumble/UserEdit.cpp +@@ -32,10 +32,12 @@ + + #include "UserEdit.h" + +-#include "Global.h" + #include "ServerHandler.h" + #include "User.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + UserEdit::UserEdit(const MumbleProto::UserList &msg, QWidget *p) : QDialog(p) { + setupUi(this); + +diff --git a/src/mumble/UserInformation.cpp b/src/mumble/UserInformation.cpp +index 6da8b80e..60990b22 100644 +--- a/src/mumble/UserInformation.cpp ++++ b/src/mumble/UserInformation.cpp +@@ -34,11 +34,13 @@ + + #include "Audio.h" + #include "CELTCodec.h" +-#include "Global.h" + #include "Net.h" + #include "ServerHandler.h" + #include "ViewCert.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + static QString decode_utf8_qssl_string(const QString &input) { + QString i = input; + return QUrl::fromPercentEncoding(i.replace(QLatin1String("\\x"), QLatin1String("%")).toLatin1()); +diff --git a/src/mumble/UserModel.cpp b/src/mumble/UserModel.cpp +index a702e9d8..0657133a 100644 +--- a/src/mumble/UserModel.cpp ++++ b/src/mumble/UserModel.cpp +@@ -36,7 +36,6 @@ + #include "ClientUser.h" + #include "Channel.h" + #include "Database.h" +-#include "Global.h" + #include "LCD.h" + #include "Log.h" + #include "MainWindow.h" +@@ -46,6 +45,9 @@ + #include "Usage.h" + #include "User.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + QHash <Channel *, ModelItem *> ModelItem::c_qhChannels; + QHash <ClientUser *, ModelItem *> ModelItem::c_qhUsers; + bool ModelItem::bUsersTop = false; +diff --git a/src/mumble/UserView.cpp b/src/mumble/UserView.cpp +index c462bf69..0103189d 100644 +--- a/src/mumble/UserView.cpp ++++ b/src/mumble/UserView.cpp +@@ -35,11 +35,13 @@ + #include "Channel.h" + #include "ClientUser.h" + #include "Log.h" +-#include "Global.h" + #include "MainWindow.h" + #include "ServerHandler.h" + #include "UserModel.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + /*! + \fn bool UserView::event(QEvent *evt) + This implementation contains a special handler to display +diff --git a/src/mumble/VersionCheck.cpp b/src/mumble/VersionCheck.cpp +index e60a17af..0e16f1d2 100644 +--- a/src/mumble/VersionCheck.cpp ++++ b/src/mumble/VersionCheck.cpp +@@ -32,10 +32,12 @@ + + #include "VersionCheck.h" + +-#include "Global.h" + #include "MainWindow.h" + #include "WebFetch.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + VersionCheck::VersionCheck(bool autocheck, QObject *p, bool focus) : QObject(p) { + bSilent = autocheck; + +diff --git a/src/mumble/VoiceRecorder.cpp b/src/mumble/VoiceRecorder.cpp +index 996b32c4..38e1fb3d 100644 +--- a/src/mumble/VoiceRecorder.cpp ++++ b/src/mumble/VoiceRecorder.cpp +@@ -36,11 +36,13 @@ + + #include "AudioOutput.h" + #include "ClientUser.h" +-#include "Global.h" + #include "ServerHandler.h" + + #include "../Timer.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + VoiceRecorder::RecordBuffer::RecordBuffer(const ClientUser *cu, + boost::shared_array<float> buffer, int samples, quint64 timestamp) : + cuUser(cu), fBuffer(buffer), iSamples(samples), uiTimestamp(timestamp) { +diff --git a/src/mumble/VoiceRecorderDialog.cpp b/src/mumble/VoiceRecorderDialog.cpp +index ecede42f..7f377548 100644 +--- a/src/mumble/VoiceRecorderDialog.cpp ++++ b/src/mumble/VoiceRecorderDialog.cpp +@@ -34,10 +34,12 @@ + #include "VoiceRecorderDialog.h" + + #include "AudioOutput.h" +-#include "Global.h" + #include "ServerHandler.h" + #include "VoiceRecorder.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + VoiceRecorderDialog::VoiceRecorderDialog(QWidget *p) : QDialog(p), qtTimer(new QTimer(this)) { + qtTimer->setObjectName(QLatin1String("qtTimer")); + qtTimer->setInterval(200); +diff --git a/src/mumble/WASAPI.cpp b/src/mumble/WASAPI.cpp +index 0e468719..6e3f814c 100644 +--- a/src/mumble/WASAPI.cpp ++++ b/src/mumble/WASAPI.cpp +@@ -32,10 +32,11 @@ + + #include "WASAPI.h" + #include "WASAPINotificationClient.h" +-#include "Global.h" + #include "Timer.h" + #include "User.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" + + // Now that Win7 is published, which includes public versions of these + // interfaces, we simply inherit from those but use the "old" IIDs. +diff --git a/src/mumble/WASAPINotificationClient.cpp b/src/mumble/WASAPINotificationClient.cpp +index 45887781..3e3de14a 100644 +--- a/src/mumble/WASAPINotificationClient.cpp ++++ b/src/mumble/WASAPINotificationClient.cpp +@@ -29,13 +29,15 @@ + */ + + #include <initguid.h> +-#include <Global.h> + #include <QMutexLocker> + #include "MainWindow.h" + #include <boost/thread/once.hpp> + + #include "WASAPINotificationClient.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + HRESULT STDMETHODCALLTYPE WASAPINotificationClient::OnDefaultDeviceChanged(EDataFlow flow, ERole role, LPCWSTR pwstrDefaultDevice) { + const QString device = QString::fromWCharArray(pwstrDefaultDevice); + +diff --git a/src/mumble/os_macx.mm b/src/mumble/os_macx.mm +index aa3c2f44..bfc0d0a2 100644 +--- a/src/mumble/os_macx.mm ++++ b/src/mumble/os_macx.mm +@@ -30,10 +30,12 @@ + */ + + #include "mumble_pch.hpp" +-#include "Global.h" + #include "Overlay.h" + #include "MainWindow.h" + ++// We define a global macro called 'g'. This can lead to issues when included code uses 'g' as a type or parameter name (like protobuf 3.7 does). As such, for now, we have to make this our last include. ++#include "Global.h" ++ + char *os_lang = NULL; + static FILE *fConsole = NULL; + +