Browse Source
As of this commit, L98 of winconf.cmake already checks for MSVC before winconf-msvc calls this macro, so we are guaranteed to be satisfy the check.adaptive-webui-19844
NotTsunami
5 years ago
1 changed files with 32 additions and 34 deletions
@ -1,38 +1,36 @@
@@ -1,38 +1,36 @@
|
||||
macro(configure_msvc_runtime) |
||||
if(MSVC) |
||||
# Default to statically-linked runtime. |
||||
if("${MSVC_RUNTIME}" STREQUAL "") |
||||
set(MSVC_RUNTIME "static") |
||||
endif() |
||||
# Set compiler options. |
||||
set(variables |
||||
CMAKE_C_FLAGS_DEBUG |
||||
CMAKE_C_FLAGS_MINSIZEREL |
||||
CMAKE_C_FLAGS_RELEASE |
||||
CMAKE_C_FLAGS_RELWITHDEBINFO |
||||
CMAKE_CXX_FLAGS_DEBUG |
||||
CMAKE_CXX_FLAGS_MINSIZEREL |
||||
CMAKE_CXX_FLAGS_RELEASE |
||||
CMAKE_CXX_FLAGS_RELWITHDEBINFO |
||||
# Default to statically-linked runtime. |
||||
if("${MSVC_RUNTIME}" STREQUAL "") |
||||
set(MSVC_RUNTIME "static") |
||||
endif() |
||||
# Set compiler options. |
||||
set(variables |
||||
CMAKE_C_FLAGS_DEBUG |
||||
CMAKE_C_FLAGS_MINSIZEREL |
||||
CMAKE_C_FLAGS_RELEASE |
||||
CMAKE_C_FLAGS_RELWITHDEBINFO |
||||
CMAKE_CXX_FLAGS_DEBUG |
||||
CMAKE_CXX_FLAGS_MINSIZEREL |
||||
CMAKE_CXX_FLAGS_RELEASE |
||||
CMAKE_CXX_FLAGS_RELWITHDEBINFO |
||||
) |
||||
if(${MSVC_RUNTIME} STREQUAL "static") |
||||
message(STATUS |
||||
"MSVC -> forcing use of statically-linked runtime." |
||||
) |
||||
foreach(variable ${variables}) |
||||
if(${variable} MATCHES "/MD") |
||||
string(REGEX REPLACE "/MD" "/MT" ${variable} "${${variable}}") |
||||
endif() |
||||
endforeach() |
||||
else() |
||||
message(STATUS |
||||
"MSVC -> forcing use of dynamically-linked runtime." |
||||
) |
||||
if(${MSVC_RUNTIME} STREQUAL "static") |
||||
message(STATUS |
||||
"MSVC -> forcing use of statically-linked runtime." |
||||
) |
||||
foreach(variable ${variables}) |
||||
if(${variable} MATCHES "/MD") |
||||
string(REGEX REPLACE "/MD" "/MT" ${variable} "${${variable}}") |
||||
endif() |
||||
endforeach() |
||||
else() |
||||
message(STATUS |
||||
"MSVC -> forcing use of dynamically-linked runtime." |
||||
) |
||||
foreach(variable ${variables}) |
||||
if(${variable} MATCHES "/MT") |
||||
string(REGEX REPLACE "/MT" "/MD" ${variable} "${${variable}}") |
||||
endif() |
||||
endforeach() |
||||
endif() |
||||
foreach(variable ${variables}) |
||||
if(${variable} MATCHES "/MT") |
||||
string(REGEX REPLACE "/MT" "/MD" ${variable} "${${variable}}") |
||||
endif() |
||||
endforeach() |
||||
endif() |
||||
endmacro() |
||||
|
Loading…
Reference in new issue