From 1a38dd4cfcfd784f7b64684111eb47dcd5ddc55f Mon Sep 17 00:00:00 2001 From: Thorvald Natvig Date: Wed, 15 Jul 2009 21:18:37 +0200 Subject: [PATCH] Build bonjour on nix --- src/mumble/BonjourClient.cpp | 8 ++++++-- src/mumble/BonjourClient.h | 8 +++----- src/mumble/WASAPI.h | 1 - src/mumble/mumble.pro | 1 + src/mumble/mumble_pch.hpp | 5 +++++ src/murmur/BonjourServer.cpp | 8 +++++--- src/murmur/BonjourServer.h | 6 +----- src/murmur/murmur.pro | 2 +- src/murmur/murmur_pch.h | 5 +++++ 9 files changed, 27 insertions(+), 17 deletions(-) diff --git a/src/mumble/BonjourClient.cpp b/src/mumble/BonjourClient.cpp index 164db1c97..76cf0f424 100644 --- a/src/mumble/BonjourClient.cpp +++ b/src/mumble/BonjourClient.cpp @@ -27,16 +27,20 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ + #include "BonjourClient.h" -BonjourClient::BonjourClient() : bsrResolver(NULL), bsbBrowser(NULL) { +BonjourClient::BonjourClient() { + bsrResolver = NULL; + bsbBrowser = NULL; +#ifdef Q_OS_WIN HMODULE hLib = LoadLibrary(L"DNSSD.DLL"); if (hLib == NULL) { qWarning("Bonjour: Failed to load dnssd.dll"); return; } FreeLibrary(hLib); - +#endif bsbBrowser = new BonjourServiceBrowser(this); bsbBrowser->browseForServiceType(QLatin1String("_murmur._tcp")); bsrResolver = new BonjourServiceResolver(this); diff --git a/src/mumble/BonjourClient.h b/src/mumble/BonjourClient.h index 6788cbdff..9a021d44a 100644 --- a/src/mumble/BonjourClient.h +++ b/src/mumble/BonjourClient.h @@ -30,9 +30,8 @@ #ifndef _BONJOURCLIENT_H #define _BONJOURCLIENT_H -#include -#include "../Bonjour/bonjourservicebrowser.h" -#include "../Bonjour/bonjourserviceresolver.h" +#include "bonjourservicebrowser.h" +#include "bonjourserviceresolver.h" class BonjourClient : public QObject { private: @@ -47,6 +46,5 @@ class BonjourClient : public QObject { }; #else -class Bonjour; -class BonjourServer; +class BonjourClient; #endif diff --git a/src/mumble/WASAPI.h b/src/mumble/WASAPI.h index 8f6172856..73b5e9904 100644 --- a/src/mumble/WASAPI.h +++ b/src/mumble/WASAPI.h @@ -43,7 +43,6 @@ #include #include #include -#include #include class WASAPISystem : public QObject { diff --git a/src/mumble/mumble.pro b/src/mumble/mumble.pro index fffd764ba..fe53dbf00 100644 --- a/src/mumble/mumble.pro +++ b/src/mumble/mumble.pro @@ -187,6 +187,7 @@ bonjour { HEADERS *= ../bonjour/bonjourrecord.h ../bonjour/bonjourserviceresolver.h ../bonjour/bonjourservicebrowser.h BonjourClient.h SOURCES *= ../bonjour/bonjourserviceresolver.cpp ../bonjour/bonjourservicebrowser.cpp BonjourClient.cpp + INCLUDEPATH *= ../bonjour win32 { INCLUDEPATH *= /dev/Bonjour/include LIBPATH *= /dev/Bonjour/lib/win32 diff --git a/src/mumble/mumble_pch.hpp b/src/mumble/mumble_pch.hpp index 1f48c77e9..debf42063 100644 --- a/src/mumble/mumble_pch.hpp +++ b/src/mumble/mumble_pch.hpp @@ -77,6 +77,7 @@ #include #include #include +#include #ifndef Q_CC_INTEL #include #define lroundf(x) ( static_cast( (x) + ((x) >= 0.0f ? 0.5f : -0.5f) ) ) @@ -100,4 +101,8 @@ typedef WId HWND; #define iroundf(x) ( static_cast(x) ) +#ifdef USE_BONJOUR +#include +#endif + #endif diff --git a/src/murmur/BonjourServer.cpp b/src/murmur/BonjourServer.cpp index 47665a0d0..dbe0e86ed 100644 --- a/src/murmur/BonjourServer.cpp +++ b/src/murmur/BonjourServer.cpp @@ -29,9 +29,10 @@ */ #include "BonjourServer.h" -bool BonjourServer::bDelayLoadFailed = false; - -BonjourServer::BonjourServer() : bsrRegister(NULL) { +BonjourServer::BonjourServer() { + bsrRegister = NULL; +#ifdef Q_OS_WIN + static bool bDelayLoadFailed = false; if (bDelayLoadFailed) return; HMODULE hLib = LoadLibrary(L"DNSSD.DLL"); @@ -41,6 +42,7 @@ BonjourServer::BonjourServer() : bsrRegister(NULL) { return; } FreeLibrary(hLib); +#endif bsrRegister = new BonjourServiceRegister(this); } diff --git a/src/murmur/BonjourServer.h b/src/murmur/BonjourServer.h index 797f1b6e1..5fbbb1360 100644 --- a/src/murmur/BonjourServer.h +++ b/src/murmur/BonjourServer.h @@ -30,15 +30,12 @@ #ifndef _BONJOURSERVER_H #define _BONJOURSERVER_H -#include -#include "../Bonjour/bonjourserviceregister.h" +#include "bonjourserviceregister.h" class BonjourServer : public QObject { private: Q_OBJECT Q_DISABLE_COPY(BonjourServer) - protected: - static bool bDelayLoadFailed; public: BonjourServer(); ~BonjourServer(); @@ -47,6 +44,5 @@ class BonjourServer : public QObject { }; #else -class Bonjour; class BonjourServer; #endif diff --git a/src/murmur/murmur.pro b/src/murmur/murmur.pro index f6ea50a59..9a8364af9 100644 --- a/src/murmur/murmur.pro +++ b/src/murmur/murmur.pro @@ -115,6 +115,7 @@ bonjour { HEADERS *= ../bonjour/bonjourrecord.h ../bonjour/bonjourserviceregister.h BonjourServer.h SOURCES *= ../bonjour/bonjourserviceregister.cpp BonjourServer.cpp + INCLUDEPATH *= ../bonjour win32 { INCLUDEPATH *= /dev/Bonjour/include LIBPATH *= /dev/Bonjour/lib/win32 @@ -124,4 +125,3 @@ bonjour { PKGCONFIG *= avahi-compat-libdns_sd } } - diff --git a/src/murmur/murmur_pch.h b/src/murmur/murmur_pch.h index a420001e1..1a9a352c4 100644 --- a/src/murmur/murmur_pch.h +++ b/src/murmur/murmur_pch.h @@ -29,6 +29,7 @@ #include #include #include +#include #endif #include @@ -94,4 +95,8 @@ #include #endif +#ifdef USE_BONJOUR +#include +#endif + #endif