`CMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded` gives an incorrect compiler option
Trying to build a trivial project with CMake 3.15 RC1 passing CMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded
I still see /MD
for Release and /MDd
for Debug configurations instead of expected /MT
and /MTd
:
ci.builder@CI-BOX c:\work\tmp\rttest\build\vs16>cmake -G "Visual Studio 16 2019" -A x64 -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded ..\..
-- The CXX compiler identification is MSVC 19.21.27702.2
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.21.27702/bin/Hostx64/x64/cl.exe
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.21.27702/bin/Hostx64/x64/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: C:/work/tmp/rttest/build/vs16
ci.builder@CI-BOX c:\work\tmp\rttest\build\vs16>cmake --build . --config Debug --target ALL_BUILD -- -v:normal
Microsoft (R) Build Engine version 16.1.76+g14b0a930a7 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.
...
ClCompile:
C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.21.27702\bin\HostX64\x64\CL.exe /c /IC:\work\tmp\rttest /Zi /nologo /W3 /WX- /diagnostics:column /Od /Ob0 /D
WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D foo_EXPORTS /D _WINDLL /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"foo.dir\Debug\\" /Fd"foo
.dir\Debug\vc142.pdb" /Gd /TP /errorReport:queue C:\work\tmp\rttest\foocxx\foo.cc
foo.cc
...
The full build log is here: sample.log
Edited by Alex Turbov