VS_USE_DEBUG_LIBRARIES

在版本 3.30 中新增。

指示 Visual Studio 生成器 将哪些配置视为调试配置。此设置在 .vcxproj 文件的每个配置中控制 UseDebugLibraries

尽管 Visual Studio 项目中的“使用调试库”设置名称具体,但它是一个通用指示,用于指示哪些配置视为调试配置。在独立项目中,这可能会影响 MSBuild 默认选择的 MSVC 运行时库、优化标志、运行时检查以及类似设置。而在 CMake 项目中,这些设置通常会根据项目的规范显式生成,例如,MSVC 运行时库由 MSVC_RUNTIME_LIBRARY 控制。但是,UseDebugLibraries 指示器对于人和工具的参考非常有用,并且还可能影响特定平台 SDK 的行为。

VS_USE_DEBUG_LIBRARIES 设置为 true 或 false 值,以指示是否将每个配置视为调试配置。此值也可以为空字符串 (""),在这种情况下,CMake 不会显式添加 UseDebugLibraries,而 MSBuild 将使用其默认值 false

针对每个配置规范,使用 generator expressions。例如,以下代码

add_executable(foo foo.c)
set_property(TARGET foo PROPERTY
  VS_USE_DEBUG_LIBRARIES "$<CONFIG:Debug,Custom>")

指示目标 foo 将其“调试”和“自定义”配置视为调试配置,而将其他配置视为非调试配置。

CMAKE_VS_USE_DEBUG_LIBRARIES 变量的值(如果已设置)初始化此属性。如果未设置属性,则 CMake 使用启发式方法生成 UseDebugLibraries,以确定哪些配置是调试配置。请参见策略 CMP0162