CheckCXXSymbolExists
Проверка существования символа как функции, переменной или макроса в C++
CHECK_CXX_SYMBOL_EXISTS(<символ> <файлы> <переменная>)
Проверяет, доступен ли символ <символ> после включения указанных заголовков <файлы>, и сохраняет результат в <переменной>. Список файлов укажите в одном аргументе, разделенном точкой с запятой. CHECK_CXX_SYMBOL_EXISTS() можно использовать для проверки в C++ файлах, в отличие от CHECK_SYMBOL_EXISTS(), которое работает только для C.
Если заголовочные файлы определяют символ как макрос, он считается доступным и предполагается, что будет работать. Если заголовочные файлы объявляют символ как функцию или переменную, то символ также должен быть доступен для линковки. Если символ является типом или значением перечисления, он не будет распознан (рассмотрите использование CheckTypeSize или CheckCSourceCompiles).
Перед вызовом этого макроса можно установить следующие переменные, чтобы изменить способ выполнения проверки:
CMAKE_REQUIRED_FLAGS = string of compile command line flags CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar) CMAKE_REQUIRED_INCLUDES = list of include directories CMAKE_REQUIRED_LIBRARIES = list of libraries to link CMAKE_REQUIRED_QUIET = execute quietly without messages
© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.12/module/CheckCXXSymbolExists.html