From c75992a4af4cd16c8298a3060a8c97d5f42f4ce1 Mon Sep 17 00:00:00 2001 From: Vinnie Falco Date: Fri, 28 Oct 2016 17:37:45 -0400 Subject: [PATCH] Higher optimization settings for MSVC builds --- CHANGELOG.md | 3 +++ CMakeLists.txt | 7 +++++++ Jamroot | 3 ++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8152ecaa..20b726d1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ 1.0.0-b18 +* Increase optimization settings for MSVC builds + HTTP * Check invariants in parse_op: @@ -11,6 +13,7 @@ Extras - New overload of fail() specifies file and line - BEAST_EXPECTS only evaluates the reason string on a failure + -------------------------------------------------------------------------------- 1.0.0-b17 diff --git a/CMakeLists.txt b/CMakeLists.txt index 27ed6c1e..cc9abdc8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,14 @@ set_property (GLOBAL PROPERTY USE_FOLDERS ON) if (MSVC) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /W4 /wd4100 /bigobj /D _WIN32_WINNT=0x0601 /D_SCL_SECURE_NO_WARNINGS=1 /D_CRT_SECURE_NO_WARNINGS=1") + set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd") + set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Ob2 /Oi /Ot /GL /MT") + set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /Ob2 /Oi /Ot /GL /MT") + set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SAFESEH:NO") + set (CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG") + set (CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} /LTCG") + else() set(Boost_USE_STATIC_LIBS ON) set(Boost_USE_MULTITHREADED ON) diff --git a/Jamroot b/Jamroot index fca729e8..7bff11f9 100644 --- a/Jamroot +++ b/Jamroot @@ -97,7 +97,8 @@ project beast clang:-std=c++11 msvc:_SCL_SECURE_NO_WARNINGS=1 msvc:_CRT_SECURE_NO_WARNINGS=1 - msvc:-bigobj + msvc:"/wd4100 /bigobj" + msvc,release:"/Ob2 /Oi /Ot" LINUX:_XOPEN_SOURCE=600 LINUX:_GNU_SOURCE=1 SOLARIS:_XOPEN_SOURCE=500