Spec-Zone.ru › CMake 3.28

Проверка флага компилятора Objective-C++

Новая в версии 3.16.

Проверка, поддерживает ли компилятор Objective-C++ заданный флаг.

check_objcxx_compiler_flag
check_objcxx_compiler_flag(<flag> <resultVar>)

Проверка, что <flag> принимается компилятором без диагностики. Результат сохраняется во внутреннем кэше под именем <resultVar>.

Положительный результат этой проверки означает только то, что компилятор не выдал сообщение об ошибке при использовании данного флага. Воздействие флага или его конкретный эффект выходят за рамки задач этого модуля.

Проверка выполняется только один раз и результат кэшируется в переменной, указанной в <resultVar>. Каждый последующий запуск CMake будет использовать кэшированное значение, а не выполнять проверку снова, даже если <code> изменится. Чтобы заставить перепроверить результат, необходимо вручную удалить переменную, указанную в <resultVar>, из кэша.

Команды компиляции и компоновки могут быть изменены путем настройки следующих переменных перед вызовом check_objcxx_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_QUIET

Новая в версии 3.1.

Если эта переменная принимает логическое значение "истина", все сообщения статуса, связанные с проверкой, будут подавлены.

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.28/module/CheckOBJCXXCompilerFlag.html

Spec-Zone.ru

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