optimisation: don't enable stack-protector under win32

This apparently triggers segfaults when using the standard library so
it's unusable.
This commit is contained in:
Danny Robson 2018-08-13 14:56:32 +10:00
parent 7694a39501
commit 305bd4a46e

View File

@ -141,8 +141,15 @@ if (CMAKE_BUILD_TYPE MATCHES Debug)
#append_compile_flag(-O0) #append_compile_flag(-O0)
append_compile_flag(-Werror) append_compile_flag(-Werror)
# this was protected for xmingw32, find out why
# stack protection tends to cause segfaults in the generated binary
# occuring in the standard library under msys2 and related compilers.
#
# it's easily shown by simply creating a local std::string. rather than
# get to the root cause we just disable the protection under windows.
if (NOT WIN32)
append_compile_flag(-fstack-protector) append_compile_flag(-fstack-protector)
endif()
else () else ()
append_compile_flag(-O2) append_compile_flag(-O2)
append_compile_flag(-fno-rtti) append_compile_flag(-fno-rtti)