Spec-Zone.ru › CMake

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API