diff options
| author | darkf <lw9k123@gmail.com> | 2015-01-08 20:20:51 -0800 | 
|---|---|---|
| committer | darkf <lw9k123@gmail.com> | 2015-01-11 20:22:08 -0800 | 
| commit | 67c644e317b2d7057f2f403ce2d095299319a2f2 (patch) | |
| tree | 968b7da92722d34ab37153f39aedfed693fed376 | |
| parent | eacc2a501ba75a4f89e172eafddbf590f7851add (diff) | |
Fix building on MinGW
| -rw-r--r-- | CMakeLists.txt | 6 | ||||
| -rw-r--r-- | src/citra/citra.rc | bin | 566 -> 282 bytes | |||
| -rw-r--r-- | src/core/hle/service/soc_u.cpp | 13 | 
3 files changed, 19 insertions, 0 deletions
| diff --git a/CMakeLists.txt b/CMakeLists.txt index 20a5a011a..d70c872b2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -117,6 +117,12 @@ IF (APPLE)      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_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)      set(PLATFORM_LIBRARIES winmm ws2_32)  ELSE() diff --git a/src/citra/citra.rc b/src/citra/citra.rcBinary files differ index c28e7dbe5..0165e93da 100644 --- a/src/citra/citra.rc +++ b/src/citra/citra.rc diff --git a/src/core/hle/service/soc_u.cpp b/src/core/hle/service/soc_u.cpp index f502c6afe..bb8ee86be 100644 --- a/src/core/hle/service/soc_u.cpp +++ b/src/core/hle/service/soc_u.cpp @@ -7,6 +7,19 @@  #if EMU_PLATFORM == PLATFORM_WINDOWS  #include <winsock2.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  #include <sys/socket.h>  #include <netinet/in.h> | 
