diff options
| author | Rémi Verschelde | 2017-01-09 12:10:25 +0100 |
|---|---|---|
| committer | Rémi Verschelde | 2017-01-12 19:15:30 +0100 |
| commit | 93a83c81f04cffc149e5048bd43f0a627e1cf700 (patch) | |
| tree | d5baaf6d4b84b1988704a7f6a151caf43b561fe3 /drivers/unix/ip_unix.cpp | |
| parent | af7fd899f42ef8010e29c2c42b4826b87272ac5d (diff) | |
| download | godot-93a83c81f04cffc149e5048bd43f0a627e1cf700.tar.gz godot-93a83c81f04cffc149e5048bd43f0a627e1cf700.tar.zst godot-93a83c81f04cffc149e5048bd43f0a627e1cf700.zip | |
Windows: Workaround missing includes in MinGW-w64 < 4
The MinGW-w64 version we have on our Travis build environment (Ubuntu 12.04,
mingw-w64 2.0.1, gcc 4.6) is old and has some missing includes in the
dependencies of the `tcpmib.h` header [0] [1] [2].
Those were not triggered before 6323779596dea0db7f58afef7d3d3d5588ef20cb
probably due to conflicting WINVER definitions which prevented triggering the code
specific to >= 0x0600 (Vista). We ensure it won't be triggered by defining the
_WIN32_WINNT macro to Windows XP compatibility.
(cherry picked from commit b24fe6879a2d26b530c1198ba7abb8cf2719f06c)
Diffstat (limited to 'drivers/unix/ip_unix.cpp')
| -rw-r--r-- | drivers/unix/ip_unix.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/unix/ip_unix.cpp b/drivers/unix/ip_unix.cpp index ed11c0686..0e8e5f009 100644 --- a/drivers/unix/ip_unix.cpp +++ b/drivers/unix/ip_unix.cpp @@ -42,7 +42,19 @@ #include <windows.h> #include <stdio.h> #ifndef WINRT_ENABLED - #include <iphlpapi.h> + #if defined(__MINGW32__ ) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 4) + // MinGW-w64 on Ubuntu 12.04 (our Travis build env) has bugs in this code where + // some includes are missing in dependencies of iphlpapi.h for WINVER >= 0x0600 (Vista). + // We don't use this Vista code for now, so working it around by disabling it. + // MinGW-w64 >= 4.0 seems to be better judging by its headers. + #undef _WIN32_WINNT + #define _WIN32_WINNT 0x0501 // Windows XP, disable Vista API + #include <iphlpapi.h> + #undef _WIN32_WINNT + #define _WIN32_WINNT 0x0600 // Reenable Vista API + #else + #include <iphlpapi.h> + #endif // MINGW hack #endif #else #include <netdb.h> |
