Spec-Zone.ru › CMake 3.12

FindHDF5

Поиск HDF5, библиотеки для чтения и записи данных массивов с самоопределяющейся структурой.

Этот модуль вызывает компилятор оболочки HDF5, который должен быть установлен вместе с HDF5. В зависимости от конфигурации HDF5, компилятор оболочки называется либо h5cc, либо h5pcc. Если это удается, модуль затем вызовет компилятор со значением аргумента -show, чтобы увидеть, какие флаги используются при компиляции приложения-клиента HDF5.

Модуль может принять необязательный аргумент COMPONENTS. Если COMPONENTS не указан, модуль по умолчанию ищет только библиотеку HDF5 C. Если указан один или несколько компонентов COMPONENTS, модуль попытается найти языковые привязки для указанных компонентов. Единственно допустимые компоненты — C, CXX, Fortran, HL и Fortran_HL. Если аргумент COMPONENTS не указан, модуль попытается найти только привязки C.

Этот модуль будет читать переменную HDF5_USE_STATIC_LIBRARIES, чтобы определить, следует ли предпочесть статическую ссылку динамической ссылке для HDF5 и всех его зависимостей. Чтобы использовать эту функцию, убедитесь, что переменная HDF5_USE_STATIC_LIBRARIES установлена перед вызовом find_package.

Для указания модулю подсказки о том, где найти вашу установку HDF5, можно установить переменную среды HDF5_ROOT. Модуль поиска затем будет искать в этом пути исполняемые файлы, пути и библиотеки HDF5.

Рассматриваются как последовательные, так и параллельные оболочки HDF5, и будет использоваться первый каталог, содержащий какую-либо из них. В случае, если обе оболочки находятся в одном каталоге, предпочтительно выбирается последовательная версия. Это поведение можно изменить, установив переменную HDF5_PREFER_PARALLEL в значение true.

Помимо поиска заголовков и библиотек, необходимых для компиляции приложения-клиента HDF5, этот модуль также пытается найти инструменты, поставляемые с дистрибутивом HDF5, которые могут быть полезны для регрессионного тестирования.

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

HDF5_FOUND - true if HDF5 was found on the system
HDF5_VERSION - HDF5 version in format Major.Minor.Release
HDF5_INCLUDE_DIRS - Location of the hdf5 includes
HDF5_INCLUDE_DIR - Location of the hdf5 includes (deprecated)
HDF5_DEFINITIONS - Required compiler definitions for HDF5
HDF5_LIBRARIES - Required libraries for all requested bindings
HDF5_HL_LIBRARIES - Required libraries for the HDF5 high level API for all
                    bindings, if the HL component is enabled

Доступные компоненты: C, CXX, Fortran и HL. Для каждой включенной языковой привязки будет определена соответствующая переменная HDF5_${LANG}_LIBRARIES, а также потенциально HDF5_${LANG}_DEFINITIONS. Если включен компонент HL, также будет определена переменная HDF5_${LANG}_HL_LIBRARIES. При включении всех компонентов будут определены следующие переменные:

HDF5_C_DEFINITIONS -- Required compiler definitions for HDF5 C bindings
HDF5_CXX_DEFINITIONS -- Required compiler definitions for HDF5 C++ bindings
HDF5_Fortran_DEFINITIONS -- Required compiler definitions for HDF5 Fortran bindings
HDF5_C_INCLUDE_DIRS -- Required include directories for HDF5 C bindings
HDF5_CXX_INCLUDE_DIRS -- Required include directories for HDF5 C++ bindings
HDF5_Fortran_INCLUDE_DIRS -- Required include directories for HDF5 Fortran bindings
HDF5_C_LIBRARIES - Required libraries for the HDF5 C bindings
HDF5_CXX_LIBRARIES - Required libraries for the HDF5 C++ bindings
HDF5_Fortran_LIBRARIES - Required libraries for the HDF5 Fortran bindings
HDF5_C_HL_LIBRARIES - Required libraries for the high level C bindings
HDF5_CXX_HL_LIBRARIES - Required libraries for the high level C++ bindings
HDF5_Fortran_HL_LIBRARIES - Required libraries for the high level Fortran
                            bindings.

HDF5_IS_PARALLEL - Whether or not HDF5 was found with parallel IO support
HDF5_C_COMPILER_EXECUTABLE - the path to the HDF5 C wrapper compiler
HDF5_CXX_COMPILER_EXECUTABLE - the path to the HDF5 C++ wrapper compiler
HDF5_Fortran_COMPILER_EXECUTABLE - the path to the HDF5 Fortran wrapper compiler
HDF5_C_COMPILER_EXECUTABLE_NO_INTERROGATE - path to the primary C compiler
                                            which is also the HDF5 wrapper
HDF5_CXX_COMPILER_EXECUTABLE_NO_INTERROGATE - path to the primary C++
                                              compiler which is also
                                              the HDF5 wrapper
HDF5_Fortran_COMPILER_EXECUTABLE_NO_INTERROGATE - path to the primary
                                                  Fortran compiler which
                                                  is also the HDF5 wrapper
HDF5_DIFF_EXECUTABLE - the path to the HDF5 dataset comparison tool

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

HDF5_ROOT
Указывает путь к установке HDF5, которую следует использовать.
HDF5_FIND_DEBUG
Устанавливается в значение true, чтобы получить дополнительные отладочные сообщения.
HDF5_NO_FIND_PACKAGE_CONFIG_FILE
Устанавливается в значение true, чтобы пропустить попытку поиска hdf5-config.cmake.

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

Spec-Zone.ru

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