MSVC_DEBUG_INFORMATION_FORMAT
Добавлено в версии 3.25.
Выберите формат отладочной информации при использовании ABI MSVC.
Допустимые значения:
-
Embedded -
Компиляция с флагом
-Z7или эквивалентными флагами для создания объектных файлов с полной символьной отладочной информацией. -
ProgramDatabase -
Компиляция с флагом
-Ziили эквивалентными флагами для создания базы данных программы, содержащей всю символьную отладочную информацию. -
EditAndContinue -
Компиляция с флагом
-ZIили эквивалентными флагами для создания базы данных программы, поддерживающей функцию «Изменение и продолжение».
Это значение игнорируется компиляторами, не использующими ABI MSVC, однако неподдерживаемое значение будет отклонено с ошибкой при использовании компилятора, работающего с ABI MSVC.
Значением также может быть пустая строка (""); в этом случае CMake не будет явно добавлять флаг формата отладочной информации.
Используйте generator expressions для поддержки указания значений для отдельных конфигураций. Например, следующий код:
add_executable(foo foo.c) set_property(TARGET foo PROPERTY MSVC_DEBUG_INFORMATION_FORMAT "$<$<CONFIG:Debug,RelWithDebInfo>:ProgramDatabase>")
выбирает для цели foo формат отладочной информации с базой данных программы для конфигураций Debug и RelWithDebInfo.
Это свойство инициализируется значением переменной CMAKE_MSVC_DEBUG_INFORMATION_FORMAT, если она задана. Если это свойство не задано, CMake выбирает формат отладочной информации, используя значение по умолчанию $<$<CONFIG:Debug,RelWithDebInfo>:ProgramDatabase>, если оно поддерживается компилятором, и в противном случае — $<$<CONFIG:Debug,RelWithDebInfo>:Embedded>.
Примечание
Это свойство действует только в том случае, если политика CMP0141 установлена в значение NEW до первого вызова команды project() или enable_language(), включающей язык с помощью компилятора, работающего с ABI MSVC.
© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/prop_tgt/MSVC_DEBUG_INFORMATION_FORMAT.html