Fix building on MinGW
This commit is contained in:
parent
eacc2a501b
commit
67c644e317
|
@ -117,6 +117,12 @@ IF (APPLE)
|
||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++")
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++")
|
||||||
|
ELSEIF(MINGW)
|
||||||
|
# GCC does not support codecvt, so use iconv instead
|
||||||
|
set(PLATFORM_LIBRARIES winmm ws2_32 iconv)
|
||||||
|
|
||||||
|
# WSAPoll functionality doesn't exist before WinNT 6.x (Vista and up)
|
||||||
|
add_definitions(-D_WIN32_WINNT=0x0600)
|
||||||
ELSEIF(WIN32)
|
ELSEIF(WIN32)
|
||||||
set(PLATFORM_LIBRARIES winmm ws2_32)
|
set(PLATFORM_LIBRARIES winmm ws2_32)
|
||||||
ELSE()
|
ELSE()
|
||||||
|
|
Binary file not shown.
|
@ -7,6 +7,19 @@
|
||||||
#if EMU_PLATFORM == PLATFORM_WINDOWS
|
#if EMU_PLATFORM == PLATFORM_WINDOWS
|
||||||
#include <winsock2.h>
|
#include <winsock2.h>
|
||||||
#include <ws2tcpip.h>
|
#include <ws2tcpip.h>
|
||||||
|
|
||||||
|
// MinGW does not define several errno constants
|
||||||
|
#ifndef _MSC_VER
|
||||||
|
#define EBADMSG 104
|
||||||
|
#define ENODATA 120
|
||||||
|
#define ENOMSG 122
|
||||||
|
#define ENOSR 124
|
||||||
|
#define ENOSTR 125
|
||||||
|
#define ETIME 137
|
||||||
|
#define EIDRM 2001
|
||||||
|
#define ENOLINK 2002
|
||||||
|
#endif // _MSC_VER
|
||||||
|
|
||||||
#else
|
#else
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#include <netinet/in.h>
|
#include <netinet/in.h>
|
||||||
|
|
Reference in New Issue