Fixed bug 3092 - Statically link sdl2 with /MT for msvc

Martin Gerhardy

According to https://msdn.microsoft.com/de-de/library/2kzt1wy3%28v=vs.120%29.aspx when one is using /MT for msvc compilations the libcmt.lib is already linked to the binary. This lib includes the symbol that is now guarded (see attached patch) by the #ifndef _MT.
This commit is contained in:
Sam Lantinga 2016-01-02 10:25:53 -08:00
parent 42065e785d
commit ac444cd313
1 changed files with 3 additions and 0 deletions

View File

@ -275,8 +275,11 @@ int SDL_tolower(int x) { return ((x) >= 'A') && ((x) <= 'Z') ? ('a'+((x)-'A')) :
#ifndef __FLTUSED__ #ifndef __FLTUSED__
#define __FLTUSED__ #define __FLTUSED__
/* the multithreaded runtime already includes libcmt.lib - and this symbol is in there. */
#ifndef _MT
__declspec(selectany) int _fltused = 1; __declspec(selectany) int _fltused = 1;
#endif #endif
#endif
/* The optimizer on Visual Studio 2005 and later generates memcpy() calls */ /* The optimizer on Visual Studio 2005 and later generates memcpy() calls */
#if (_MSC_VER >= 1400) && defined(_WIN64) && !defined(_DEBUG) #if (_MSC_VER >= 1400) && defined(_WIN64) && !defined(_DEBUG)