Add /SAFESEH:NO /NODEFAULTLIB:LIBCMT to viewer linker switches.

zlib cannot be linked with SAFESEH, which is the VS 2013 default, so every
consumer must set /SAFESEH:NO.
/NODEFAULTLIB:LIBCMT seems to eliminate many duplicate-symbol link errors.
meow-7.2.2
Nat Goodspeed 2014-12-11 12:13:07 -05:00
parent 34009fc88f
commit c56036a8cb
1 changed files with 2 additions and 1 deletions

View File

@ -54,7 +54,8 @@ if (WINDOWS)
set(CMAKE_CXX_FLAGS_RELEASE
"${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /MD /MP /Ob2 -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0"
CACHE STRING "C++ compiler release options" FORCE)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /LARGEADDRESSAWARE")
# zlib has assembly-language object files incompatible with SAFESEH
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /LARGEADDRESSAWARE /SAFESEH:NO /NODEFAULTLIB:LIBCMT")
set(CMAKE_CXX_STANDARD_LIBRARIES "")
set(CMAKE_C_STANDARD_LIBRARIES "")