CheckCXXCompilerFlag
Проверка поддержки заданного флага CXX-компилятором.
-
check_cxx_compiler_flag -
check_cxx_compiler_flag(<flag> <var>)
Проверка, что <flag> принимается компилятором без диагностических сообщений. Результат сохраняется во внутренней переменной кэша, указанной в <resultVar>, с логическим значением true для успеха и логическим значением false для неудачи.
true указывает только на то, что компилятор не выдал сообщение об ошибке при указании флага. Воздействие флага на компиляцию выходит за рамки данного модуля.
Внутренне используется try_compile() для выполнения проверки. Если CMAKE_TRY_COMPILE_TARGET_TYPE установлено в EXECUTABLE (по умолчанию), проверка компилирует и линксирует исполняемый файл. Если установлено в STATIC_LIBRARY, проверка компилируется, но не линксируется.
См. также check_compiler_flag() для более общего синтаксиса команды.
Команды компиляции и линковки могут быть изменены путём установки следующих переменных до вызова check_cxx_compiler_flag(). Неизвестные флаги в этих переменных могут привести к ложному отрицательному результату.
-
CMAKE_REQUIRED_FLAGS -
Строка дополнительных флагов для компилятора. Строка должна быть разделена пробелами - ;-список не сработает. Содержимое
CMAKE_<LANG>_FLAGSи его соответствующая переменная конфигурации автоматически добавляются к команде компилятора перед содержимымCMAKE_REQUIRED_FLAGS.
-
CMAKE_REQUIRED_DEFINITIONS -
;-список определений компилятора вида
-DFOOили-DFOO=bar. Также автоматически добавится определение для имени, указанного в<resultVar>.
-
CMAKE_REQUIRED_INCLUDES -
;-список путей поиска заголовков для компилятора. Эти пути будут единственными используемыми путями поиска - содержимое свойства каталога
INCLUDE_DIRECTORIESбудет проигнорировано.
-
CMAKE_REQUIRED_LINK_OPTIONS -
Добавлена в версии 3.14.
;-список опций для добавления к команде линковки (см.
try_compile()для более подробной информации).
-
CMAKE_REQUIRED_LIBRARIES -
;-список библиотек для добавления к команде линковки. Это могут быть имена системных библиотек или Импортированные целевые объекты (см.
try_compile()для более подробной информации).
-
CMAKE_REQUIRED_LINK_DIRECTORIES -
Добавлена в версии 3.31.
;-список путей поиска библиотек для линковщика (см.
try_compile()для более подробной информации).
-
CMAKE_REQUIRED_QUIET -
Добавлена в версии 3.1.
Если эта переменная имеет логическое значение true, все сообщения о состоянии, связанные с проверкой, будут подавлены.
© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/module/CheckCXXCompilerFlag.html