From c758fd73ff0b95ca27f833f8aefd0345edd71fcc Mon Sep 17 00:00:00 2001 From: kwolekr Date: Wed, 8 Apr 2015 12:55:06 -0400 Subject: [PATCH] Link against shlwapi.lib and unify linker input sources for Windows --- src/CMakeLists.txt | 4 +++- src/socket.cpp | 13 +++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 88ab995ba..13e900647 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -195,8 +195,10 @@ if(WIN32) # Surpress some useless warnings add_definitions ( /D "_CRT_SECURE_NO_DEPRECATE" /W1 ) else() # Probably MinGW = GCC - set(PLATFORM_LIBS ws2_32.lib) + set(PLATFORM_LIBS "") endif() + set(PLATFORM_LIBS ws2_32.lib shlwapi.lib ${PLATFORM_LIBS}) + # Zlib stuff set(ZLIB_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/../../zlib/zlib-1.2.5" CACHE PATH "Zlib include directory") diff --git a/src/socket.cpp b/src/socket.cpp index c3b5fc564..e82052f77 100644 --- a/src/socket.cpp +++ b/src/socket.cpp @@ -44,9 +44,6 @@ with this program; if not, write to the Free Software Foundation, Inc., #include #include #include - #ifdef _MSC_VER - #pragma comment(lib, "ws2_32.lib") - #endif typedef SOCKET socket_t; typedef int socklen_t; #else @@ -154,7 +151,7 @@ void Address::Resolve(const char *name) struct addrinfo *resolved, hints; memset(&hints, 0, sizeof(hints)); - + // Setup hints hints.ai_socktype = 0; hints.ai_protocol = 0; @@ -168,7 +165,7 @@ void Address::Resolve(const char *name) { hints.ai_family = AF_INET; } - + // Do getaddrinfo() int e = getaddrinfo(name, NULL, &hints, &resolved); if(e != 0) @@ -514,7 +511,7 @@ int UDPSocket::Receive(Address & sender, void *data, int size) dstream << (int) m_handle << " <- "; sender.print(&dstream); dstream << ", size=" << received; - + // Print packet contents dstream << ", data="; for(int i = 0; i < received && i < 20; i++) { @@ -525,7 +522,7 @@ int UDPSocket::Receive(Address & sender, void *data, int size) } if(received > 20) dstream << "..."; - + dstream << std::endl; } @@ -586,7 +583,7 @@ bool UDPSocket::WaitData(int timeout_ms) // No data return false; } - + // There is data return true; }