CheckCCompilerFlag
Проверка, поддерживает ли компилятор C заданный флаг.
-
check_c_compiler_flag -
check_c_compiler_flag(<flag> <resultVar>)
Проверка, что
<flag>принимается компилятором без диагностики. Результат сохраняется во внутренней записи кэша с именем<resultVar>.
Положительный результат этой проверки означает только то, что компилятор не выдал сообщение об ошибке при задании флага. Влияние флага или его конкретное воздействие выходит за рамки задач данного модуля.
Проверка выполняется только один раз и результат кэшируется в переменной с именем <resultVar>. При каждом последующем запуске CMake используется значение из кэша, а проверка не выполняется повторно, даже если <code> изменяется. Чтобы принудительно пересчитать проверку, переменную с именем <resultVar> необходимо удалить из кэша.
Команды компиляции и компоновки могут быть изменены, если перед вызовом check_c_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/CheckCCompilerFlag.html