Spec-Zone.ru › CMake 3.31

FindOpenSSL

Найдите библиотеку шифрования OpenSSL.

Этот модуль находит установленную библиотеку OpenSSL и определяет её версию.

Добавлен в версии 3.19: Когда запрашивается версия, её можно указать как простое значение или как диапазон. Для подробного описания использования и возможностей диапазонов версий обратитесь к команде find_package().

Добавлен в версии 3.18: Поддержка OpenSSL 3.0.

Дополнительные КОМПОНЕНТЫ

Добавлен в версии 3.12.

Этот модуль поддерживает два дополнительных КОМПОНЕНТА: Crypto и SSL. Оба компонента имеют связанные импортированные цели, как описано ниже.

Импортированные цели

Добавлен в версии 3.4.

Этот модуль определяет следующие IMPORTED цели:

OpenSSL::SSL

Библиотека OpenSSL ssl , если найдена.

OpenSSL::Crypto

Библиотека OpenSSL crypto , если найдена.

OpenSSL::applink

Добавлен в версии 3.18.

Компоненты OpenSSL applink , которые могут потребоваться для компиляции в проекты под MSVC. Эта цель доступна только если версия найденного OpenSSL не меньше 0.9.8. С помощью этой цели можно связать указанные выше цели OpenSSL, даже если в проекте есть различные конфигурации времени выполнения MSVC с этими целями OpenSSL. Эта цель не влияет на платформы, отличные от MSVC.

ПРИМЕЧАНИЕ: Из-за того, как INTERFACE_SOURCES потребляются потребляющей целью, если вы не уверены в своих действиях, всегда предпочтительнее связывать цель OpenSSL::applink как PRIVATE и убедиться, что эта цель связана не более одного раза для всего графа зависимостей любой библиотеки или исполняемого файла:

target_link_libraries(myTarget PRIVATE OpenSSL::applink)

В противном случае вы, вероятно, столкнетесь с неожиданными случайными проблемами при построении и линковке, так как как стандарт ISO C, так и стандарт ISO C++ почти ничего не говорят о том, каким должен быть процесс линковки.

Переменные результатов

Этот модуль установит следующие переменные в вашем проекте:

OPENSSL_FOUND

Система имеет библиотеку OpenSSL. Если не запрашиваются компоненты, требуется только библиотека криптографии.

OPENSSL_INCLUDE_DIR

Директория заголовков OpenSSL.

OPENSSL_CRYPTO_LIBRARY

Библиотека криптографии OpenSSL.

OPENSSL_CRYPTO_LIBRARIES

Библиотека криптографии OpenSSL и её зависимости.

OPENSSL_SSL_LIBRARY

Библиотека OpenSSL SSL.

OPENSSL_SSL_LIBRARIES

Библиотека OpenSSL SSL и её зависимости.

OPENSSL_LIBRARIES

Все библиотеки OpenSSL и их зависимости.

OPENSSL_VERSION

Это установлено в $major.$minor.$revision$patch (например, 0.9.8s).

OPENSSL_APPLINK_SOURCE

Исходные файлы в цели OpenSSL::applink , о которой упоминалось выше. Эта переменная всегда должна быть неопределённой, если версия найденного OpenSSL меньше 0.9.8 или если платформа не MSVC.

Подсказки

Следующие переменные можно установить для управления поиском:

OPENSSL_ROOT_DIR

Установлена в корневую директорию установки OpenSSL.

OPENSSL_USE_STATIC_LIBS

Добавлен в версии 3.4.

Установлена в TRUE для поиска статических библиотек.

OPENSSL_MSVC_STATIC_RT

Добавлен в версии 3.5.

Установлена в TRUE для выбора версии lib MT.

ENV{PKG_CONFIG_PATH}

В системах типа UNIX, pkg-config используется для поиска системного OpenSSL. Установите переменную среды PKG_CONFIG_PATH для поиска в альтернативных расположениях. Полезно в системах с многократной поддержкой библиотек.

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

Spec-Zone.ru

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