diff --git a/include/SDL_platform.h b/include/SDL_platform.h index ace93a427..37647c438 100644 --- a/include/SDL_platform.h +++ b/include/SDL_platform.h @@ -116,22 +116,20 @@ #if defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) /* Try to find out if we're compiling for WinRT or non-WinRT */ -#if defined(_MSC_VER) && (_MSC_VER >= 1700) /* _MSC_VER==1700 for MSVC 2012 */ +#if defined(__MINGW32__) || (defined(_MSC_VER) && (_MSC_VER >= 1700)) /* _MSC_VER==1700 for MSVC 2012 */ #include <winapifamily.h> -#endif /* _MSC_VER >= 1700 */ -/* Default to classic, Win32/Win64/Desktop compilation either if: - 1. the version of Windows is explicity set to a 'Desktop' (non-Metro) app - 2. the version of Windows cannot be determined via winapifamily.h - If neither is true, then see if we're compiling for WinRT. - */ -#if ! defined(WINAPI_FAMILY_PARTITION) || WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) +#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) #undef __WINDOWS__ #define __WINDOWS__ 1 /* See if we're compiling for WinRT: */ #elif WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) #undef __WINRT__ #define __WINRT__ 1 -#endif /* ! defined(WINAPI_FAMILY_PARTITION) */ +#endif +#else +#undef __WINDOWS__ +#define __WINDOWS__ 1 +#endif /* _MSC_VER < 1700 */ #endif /* defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) */ #if defined(__WINDOWS__)