CheckOBJCXXCompilerFlag
Новый в версии 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.27/module/CheckOBJCXXCompilerFlag.html