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