CheckSymbolExists
Предоставляет макрос для проверки наличия символа как функции, переменной или макроса в C.
-
check_symbol_exists -
check_symbol_exists(<symbol> <files> <variable>)
Проверяет, что
<symbol>доступен после включения заданного заголовочного файла<files>и сохраняет результат в<variable>. Укажите список файлов в одном аргументе как список, разделённый точкой с запятой.<variable>будет создан как внутренняя переменная кэша.
Если заголовочные файлы определяют символ как макрос, он считается доступным и предположительно будет работать. Если заголовочные файлы объявляют символ как функцию или переменную, символ также должен быть доступен для линковки (следовательно, встроенные функции могут не быть обнаружены). Если символ является типом, значением перечисления или встроенной функцией, он не будет распознан (рассмотрите использование CheckTypeSize или CheckCSourceCompiles). Если проверка должна выполняться в C++, используйте CheckCXXSymbolExists вместо этого.
Следующие переменные можно установить перед вызовом этого макроса, чтобы изменить способ выполнения проверки:
-
CMAKE_REQUIRED_FLAGS -
строка флагов командной строки компилятора.
-
CMAKE_REQUIRED_DEFINITIONS -
список макросов для определения (-DFOO=bar), разделённых точкой с запятой.
-
CMAKE_REQUIRED_INCLUDES -
список путей поиска заголовочных файлов для передачи компилятору, разделённых точкой с запятой.
-
CMAKE_REQUIRED_LINK_OPTIONS -
список опций для добавления в команду линковки, разделённых точкой с запятой.
-
CMAKE_REQUIRED_LIBRARIES -
список библиотек для добавления в команду линковки, разделённых точкой с запятой. См. политику
CMP0075. -
CMAKE_REQUIRED_QUIET -
выполнять в бесшумном режиме без сообщений.
© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.14/module/CheckSymbolExists.html