Add presets cookbook and use cases (#5323)

* RPM has issue with packaging RPM of a parallel library
This commit is contained in:
Allen Byrne
2025-02-27 09:58:03 -06:00
committed by GitHub
parent 9ae41641ff
commit d81ae5586a
34 changed files with 1591 additions and 249 deletions
+3 -3
View File
@@ -81,7 +81,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Enable Developer Command Prompt
uses: ilammy/msvc-dev-cmd@v1.13.0
@@ -220,7 +220,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Set file base name (Linux)
id: set-file-base
@@ -331,7 +331,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: check clang version
shell: bash
+3 -3
View File
@@ -42,7 +42,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Enable Developer Command Prompt
uses: ilammy/msvc-dev-cmd@v1.13.0
@@ -168,7 +168,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Setup MPI (${{ matrix.mpi }})
id: setup-mpi
@@ -279,7 +279,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Setup MPI (${{ matrix.mpi }})
id: setup-mpi
+2 -2
View File
@@ -70,7 +70,7 @@ jobs:
- name: Install Doxygen
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Set file base name (OpenMPI)
id: set-file-base
@@ -186,7 +186,7 @@ jobs:
- name: Install Doxygen
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Set file base name (MPICH)
id: set-file-base
+3 -3
View File
@@ -35,7 +35,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Enable Developer Command Prompt
uses: ilammy/msvc-dev-cmd@v1.13.0
@@ -140,7 +140,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Set file base name (Linux)
id: set-file-base
@@ -230,7 +230,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: check clang version
shell: bash
+1 -1
View File
@@ -146,7 +146,7 @@ jobs:
- name: Install Dependencies
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
version: "1.13.2"
- name: Set environment for MSVC (Windows)
run: |
+1 -1
View File
@@ -407,7 +407,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES)
endif ()
find_program (RPMBUILD_EXE rpmbuild)
if (RPMBUILD_EXE)
if (RPMBUILD_EXE AND NOT HDF_ENABLE_PARALLEL)
list (APPEND CPACK_GENERATOR "RPM")
set (CPACK_RPM_PACKAGE_RELEASE "1")
set (CPACK_RPM_PACKAGE_RELEASE_DIST ON)
+1 -1
View File
@@ -1084,7 +1084,7 @@ if (HDF5_BUILD_DOC AND EXISTS "${HDF5_DOXYGEN_DIR}" AND IS_DIRECTORY "${HDF5_DOX
option (HDF5_ENABLE_DOXY_WARNINGS "Enable fail if doxygen parsing has warnings." OFF)
mark_as_advanced (HDF5_ENABLE_DOXY_WARNINGS)
if (HDF5_ENABLE_DOXY_WARNINGS)
set (HDF5_DOXY_WARNINGS "FAIL_ON_WARNINGS")
set (HDF5_DOXY_WARNINGS "FAIL_ON_WARNINGS_PRINT")
else ()
set (HDF5_DOXY_WARNINGS "NO")
endif ()
+9 -4
View File
@@ -11,7 +11,7 @@
>If you’d like to learn more about this decision, check out this blog post from November 2022: [Can we remove the autotools?](https://www.hdfgroup.org/2022/11/14/can-we-remove-the-autotools/) And the [HDF5 2.0 planning wiki](https://github.com/HDFGroup/hdf5/wiki/HDF5-2.0-Planning#drop-support-for-the-autotools). If you use autotools for your builds, now is a great time to update your workflows to CMake.
![HDF5 Logo](doxygen/img/HDF5.png)
![HDF5 Logo][u3]
[![develop cmake build status](https://img.shields.io/github/actions/workflow/status/HDFGroup/hdf5/cmake.yml?branch=develop&label=HDF5%20develop%20CMake%20CI)](https://github.com/HDFGroup/hdf5/actions/workflows/cmake.yml?query=branch%3Adevelop)
[![develop autotools build status](https://img.shields.io/github/actions/workflow/status/HDFGroup/hdf5/autotools.yml?branch=develop&label=HDF5%20develop%20Autotools%20CI)](https://github.com/HDFGroup/hdf5/actions/workflows/autotools.yml?query=branch%3Adevelop)
@@ -51,10 +51,10 @@ The latest Doxygen documentation generated on changes to `develop`, which does *
https://hdfgroup.github.io/hdf5/develop
See the [RELEASE.txt](release_docs/RELEASE.txt) file in the [release_docs/](release_docs/) directory for information specific
See the [RELEASE.txt][u1] file in the [release_docs/][u4] directory for information specific
to the features and updates included in this release of the library.
Several more files are located within the [release_docs/](release_docs/) directory with specific
Several more files are located within the [release_docs/][u4] directory with specific
details for several common platforms and configurations.
INSTALL - Start Here. General instructions for compiling and installing the library
@@ -91,7 +91,7 @@ conversation. Please read the [instructions](https://forum.hdfgroup.org/t/quick
RELEASE SCHEDULE
----------------
![HDF5 release schedule](doc/img/release-schedule.png)
![HDF5 release schedule][u2]
HDF5 does not follow a regular release schedule. Instead, updates are based on the
introduction of new features and the resolution of bugs. However, we aim to have at
@@ -131,3 +131,8 @@ Development code is available at our Github location:
https://github.com/HDFGroup/hdf5.git
[u1]: https://github.com/HDFGroup/hdf5/blob/develop/release_docs/RELEASE.txt
[u2]: https://github.com/HDFGroup/hdf5/blob/develop/doc/img/release-schedule.png
[u3]: https://github.com/HDFGroup/hdf5/blob/develop/doxygen/img/HDF5.png
[u4]: https://github.com/HDFGroup/hdf5/blob/develop/release_docs
+6 -1
View File
@@ -17,11 +17,16 @@ macro (EXTERNAL_ZLIB_LIBRARY compress_type)
set (zlib_folder "ZLIB")
endif ()
if (${compress_type} MATCHES "GIT")
if (${ZLIB_BRANCH} MATCHES "develop")
set (ZLIB_FILE "devCMakeLists")
else ()
set (ZLIB_FILE "CMakeLists")
endif ()
FetchContent_Declare (HDF5_ZLIB
GIT_REPOSITORY ${ZLIB_URL}
GIT_TAG ${ZLIB_BRANCH}
PATCH_COMMAND ${CMAKE_COMMAND} -E copy
${HDF_RESOURCES_DIR}/${zlib_folder}/CMakeLists.txt
${HDF_RESOURCES_DIR}/${zlib_folder}/${ZLIB_FILE}.txt
<SOURCE_DIR>/CMakeLists.txt
)
elseif (${compress_type} MATCHES "TGZ")
+1 -1
View File
@@ -75,6 +75,6 @@ For more information see USING_CMake_Examples.txt in the install folder.
===========================================================================
Documentation for this release can be found at the following URL:
https://support.hdfgroup.org/releases/hdf5/@${H5_VERS_MAJOR}@_@${H5_VERS_MINOR}@/@${H5_VERS_MAJOR}@_@${H5_VERS_MINOR}@_@${H5_VERS_RELEASE}@/documentation/doxygen/index.html
https://support.hdfgroup.org/releases/hdf5/@H5_VERS_MAJOR@_@H5_VERS_MINOR@/@H5_VERS_MAJOR@_@H5_VERS_MINOR@_@H5_VERS_RELEASE@/documentation/doxygen/index.html
Bugs should be reported to help@hdfgroup.org.
+386
View File
@@ -0,0 +1,386 @@
cmake_minimum_required (VERSION 3.18)
project(
ZLIB
LANGUAGES C
VERSION 1.4.1.1
HOMEPAGE_URL "https://zlib.net/"
DESCRIPTION "a general-purpose lossless data-compression library")
set (CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON)
#-----------------------------------------------------------------------------
# Basic ZLIB stuff here
#-----------------------------------------------------------------------------
set (CMAKE_POSITION_INDEPENDENT_CODE ON)
set (ZLIB_PACKAGE_EXT ${HDF_PACKAGE_EXT})
set (HDF_USE_GNU_DIRS ${HDF5_USE_GNU_DIRS})
set (CMAKE_OSX_ARCHITECTURES ${CMAKE_OSX_ARCHITECTURES})
set (CMAKE_TOOLCHAIN_FILE ${CMAKE_TOOLCHAIN_FILE})
set (PACKAGE_NAMESPACE ${HDF_PACKAGE_NAMESPACE})
if (MINGW)
set (WINDOWS 1) # MinGW tries to imitate Windows
endif ()
if (WINDOWS)
set (HAVE_STDDEF_H 1)
set (HAVE_SYS_TYPES_H 1)
endif ()
# ============================================================================
# configuration
# ============================================================================
option(ZLIB_BUILD_TESTING "Enable Zlib Examples as tests" OFF)
option(ZLIB_BUILD_SHARED "Enable building zlib shared library" OFF)
option(ZLIB_BUILD_STATIC "Enable building zlib static library" ON)
option(ZLIB_BUILD_MINIZIP "Enable building libminizip contrib library" OFF)
option(ZLIB_INSTALL "Enable installation of zlib" OFF)
option(ZLIB_PREFIX "prefix for all types and library functions, see zconf.h.in"
OFF)
mark_as_advanced(ZLIB_PREFIX)
if(WIN32)
option(ZLIB_INSTALL_COMPAT_DLL "Install a copy as zlib1.dll" ON)
endif(WIN32)
get_property(IS_MULTI GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
if(NOT DEFINED CMAKE_BUILD_TYPE AND NOT IS_MULTI)
message(STATUS "No CMAKE_BUILD_TYPE set -- using Release")
set(CMAKE_BUILD_TYPE Release)
endif(NOT DEFINED CMAKE_BUILD_TYPE AND NOT IS_MULTI)
include(CheckCSourceCompiles)
include(CheckFunctionExists)
include(CheckIncludeFile)
include(CMakePackageConfigHelpers)
include(CheckTypeSize)
include(CPack)
include(GNUInstallDirs)
set(CPACK_INCLUDED FALSE)
if(NOT ZLIB_CONF_WRITTEN)
set(Z_PREFIX ${ZLIB_PREFIX})
set(CONF_OUT_FILE ${ZLIB_BINARY_DIR}/zconf.h.cmakein)
file(READ ${ZLIB_SOURCE_DIR}/zconf.h ZCONF_CONTENT LIMIT 245)
file(WRITE ${CONF_OUT_FILE} ${ZCONF_CONTENT})
file(APPEND ${CONF_OUT_FILE} "#cmakedefine Z_PREFIX 1\n")
file(APPEND ${CONF_OUT_FILE} "#cmakedefine HAVE_STDARG_H 1\n")
file(APPEND ${CONF_OUT_FILE} "#cmakedefine HAVE_UNISTD_H 1\n")
file(READ ${ZLIB_SOURCE_DIR}/zconf.h ZCONF_CONTENT OFFSET 244)
set(FIRST_ITEM TRUE)
foreach(item IN LISTS ZCONF_CONTENT)
if(FIRST_ITEM)
string(APPEND OUT_CONTENT ${item})
set(FIRST_ITEM FALSE)
else(FIRST_ITEM)
string(APPEND OUT_CONTENT "\;" ${item})
endif(FIRST_ITEM)
endforeach(item IN LISTS ${ZCONF_CONTENT})
file(APPEND ${CONF_OUT_FILE} ${OUT_CONTENT})
set(ZLIB_CONF_WRITTEN
TRUE
CACHE BOOL "zconf.h.cmakein was created")
mark_as_advanced(ZLIB_CONF_WRITTEN)
endif(NOT ZLIB_CONF_WRITTEN)
#
# Check to see if we have large file support
#
set(CMAKE_REQUIRED_DEFINITIONS -D_LARGEFILE64_SOURCE=1)
check_type_size(off64_t OFF64_T)
unset(CMAKE_REQUIRED_DEFINITIONS) # clear variable
#
# Check for fseeko
#
check_function_exists(fseeko HAVE_FSEEKO)
#
# Check for stdarg.h
#
check_include_file(stdarg.h HAVE_STDARG_H)
#
# Check for unistd.h
#
check_include_file(unistd.h HAVE_UNISTD_H)
#
# Check visibility attribute is supported
#
if(MSVC)
set(CMAKE_REQUIRED_FLAGS "-WX")
else(MSVC)
set(CMAKE_REQUIRED_FLAGS "-WError")
endif(MSVC)
check_c_source_compiles(
"
#include <stdlib.h>
static void f(void) __attribute__ ((visibility(\"hidden\")));
int main(void) {return 0;}
"
HAVE___ATTR__VIS_HIDDEN)
unset(CMAKE_COMPILE_FLAGS)
set(ZLIB_PC ${ZLIB_BINARY_DIR}/zlib.pc)
configure_file(${ZLIB_SOURCE_DIR}/zlib.pc.cmakein ${ZLIB_PC} @ONLY)
configure_file(${ZLIB_BINARY_DIR}/zconf.h.cmakein ${ZLIB_BINARY_DIR}/zconf.h)
include_directories(${ZLIB_BINARY_DIR} ${ZLIB_SOURCE_DIR})
#-----------------------------------------------------------------------------
# Define some CMake variables for use later in the project
#-----------------------------------------------------------------------------
set (ZLIB_RESOURCES_DIR ${HDF_RESOURCES_DIR}/ZLIB)
set (ZLIB_SRC_DIR ${ZLIB_SOURCE_DIR})
#-----------------------------------------------------------------------------
# Set the core names of all the libraries
#-----------------------------------------------------------------------------
set (ZLIB_LIB_CORENAME "zlib-static")
#-----------------------------------------------------------------------------
# Set the true names of all the libraries if customized by external project
#-----------------------------------------------------------------------------
set (ZLIB_LIB_NAME "${ZLIB_EXTERNAL_LIB_PREFIX}${ZLIB_LIB_CORENAME}")
#-----------------------------------------------------------------------------
# Set the target names of all the libraries
#-----------------------------------------------------------------------------
set (ZLIB_LIB_TARGET "zlib-static")
set (zlib_VERS_MAJOR 1)
set (zlib_VERS_MINOR 4)
set (zlib_VERS_RELEASE 1)
#-----------------------------------------------------------------------------
set (ZLIB_PACKAGE "zlib")
set (ZLIB_PACKAGE_NAME "ZLIB")
set (ZLIB_PACKAGE_VERSION "${zlib_VERS_MAJOR}.${zlib_VERS_MINOR}")
set (ZLIB_PACKAGE_VERSION_MAJOR "${zlib_VERS_MAJOR}.${zlib_VERS_MINOR}")
set (ZLIB_PACKAGE_VERSION_MINOR "${zlib_VERS_RELEASE}")
set (ZLIB_PACKAGE_STRING "${ZLIB_PACKAGE_NAME} ${ZLIB_PACKAGE_VERSION}")
set (ZLIB_PACKAGE_TARNAME "${ZLIB_PACKAGE_NAME}${ZLIB_PACKAGE_EXT}")
set (ZLIB_PACKAGE_URL "http://www.hdfgroup.org")
set (ZLIB_PACKAGE_BUGREPORT "help@hdfgroup.org")
set (ZLIB_PACKAGE_SOVERSION "${zlib_VERS_MAJOR}.${zlib_VERS_MINOR}.${zlib_VERS_RELEASE}")
set (ZLIB_PACKAGE_SOVERSION_MAJOR "${zlib_VERS_MAJOR}")
HDF_DIR_PATHS(${ZLIB_PACKAGE_NAME})
#-----------------------------------------------------------------------------
# Targets built within this project are exported at Install time for use
# by other projects
#-----------------------------------------------------------------------------
if (NOT ZLIB_EXPORTED_TARGETS)
set (ZLIB_EXPORTED_TARGETS "zlib-targets")
endif ()
set_global_variable (ZLIB_LIBRARIES_TO_EXPORT "")
#-----------------------------------------------------------------------------
# All libs/tests/examples need the main include directories
#-----------------------------------------------------------------------------
set_directory_properties (PROPERTIES INCLUDE_DIRECTORIES
"${ZLIB_BINARY_DIR};${ZLIB_SOURCE_DIR};${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
)
if (MSVC)
set(CMAKE_DEBUG_POSTFIX "d")
add_definitions (-D_BIND_TO_CURRENT_VCLIBS_VERSION=1)
add_definitions (-D_CRT_SECURE_NO_WARNINGS)
add_definitions (-D_CONSOLE)
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
endif ()
if(NOT CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR)
# If we're doing an out of source build and the user has a zconf.h
# in their source tree...
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h)
message(VERBOSE "Renaming")
message(VERBOSE " ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h")
message(VERBOSE "to 'zconf.h.included' because this file is included with zlib")
message(VERBOSE "but CMake generates it automatically in the build directory.")
file(RENAME ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h.included)
endif()
endif()
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR})
#-----------------------------------------------------------------------------
# Define ZLIB Library
#-----------------------------------------------------------------------------
set(ZLIB_PUBLIC_HDRS ${ZLIB_BINARY_DIR}/zconf.h zlib.h)
set(ZLIB_PRIVATE_HDRS
crc32.h
deflate.h
gzguts.h
inffast.h
inffixed.h
inflate.h
inftrees.h
trees.h
zutil.h)
set(ZLIB_SRCS
adler32.c
compress.c
crc32.c
deflate.c
gzclose.c
gzlib.c
gzread.c
gzwrite.c
inflate.c
infback.c
inftrees.c
inffast.c
trees.c
uncompr.c
zutil.c)
add_library(${ZLIB_LIB_TARGET} STATIC ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
target_include_directories(
${ZLIB_LIB_TARGET}
PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
target_compile_definitions(
${ZLIB_LIB_TARGET}
PRIVATE $<$<BOOL:NOT:${HAVE_FSEEKO}>:NO_FSEEKO>
$<$<BOOL:${HAVE___ATTR__VIS_HIDDEN}>:HAVE_HIDDEN>
$<$<BOOL:${MSVC}>:_CRT_SECURE_NO_DEPRECATE>
$<$<BOOL:${MSVC}>:_CRT_NONSTDC_NO_DEPRECATE>
$<$<BOOL:${MSVC}>:_BIND_TO_CURRENT_VCLIBS_VERSION=1>
$<$<BOOL:${MSVC}>:_CRT_SECURE_NO_WARNINGS>
$<$<BOOL:${MSVC}>:_CONSOLE>
PUBLIC $<$<BOOL:${HAVE_OFF64_T}>:_LARGEFILE64_SOURCE=1>)
target_include_directories(${ZLIB_LIB_TARGET}
PRIVATE "${CMAKE_BINARY_DIR}"
PUBLIC "${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}"
)
if (MSVC AND CMAKE_CL_64)
set_target_properties (${ZLIB_LIB_TARGET} PROPERTIES STATIC_LIBRARY_FLAGS "/machine:x64")
endif ()
set_target_properties(${ZLIB_LIB_TARGET} PROPERTIES
PUBLIC_HEADER ""
LINKER_LANGUAGE C
INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
#-----------------------------------------------------------------------------
# Compiler specific flags
#-----------------------------------------------------------------------------
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
target_compile_options(${ZLIB_LIB_TARGET} PRIVATE -Wno-strict-prototypes -Wno-implicit-function-declaration)
endif ()
if (CMAKE_C_COMPILER_ID MATCHES "IntelLLVM" OR CMAKE_C_COMPILER_ID MATCHES "[Cc]lang")
target_compile_options(${ZLIB_LIB_TARGET} PRIVATE -Wno-implicit-function-declaration)
endif ()
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
target_compile_options(${ZLIB_LIB_TARGET} PRIVATE -fmessage-length=0)
endif ()
set_target_properties(${ZLIB_LIB_TARGET} PROPERTIES OUTPUT_NAME zlib-static)
set_global_variable (ZLIB_LIBRARIES_TO_EXPORT "${ZLIB_LIB_TARGET}")
set (install_targets ${ZLIB_LIB_TARGET})
#-----------------------------------------------------------------------------
# Add Target(s) to CMake Install for import into other projects
#-----------------------------------------------------------------------------
if (ZLIB_EXPORTED_TARGETS)
install (
TARGETS
${install_targets}
EXPORT
${ZLIB_EXPORTED_TARGETS}
LIBRARY DESTINATION ${ZLIB_INSTALL_LIB_DIR} COMPONENT libraries
ARCHIVE DESTINATION ${ZLIB_INSTALL_LIB_DIR} COMPONENT libraries
RUNTIME DESTINATION ${ZLIB_INSTALL_BIN_DIR} COMPONENT libraries
FRAMEWORK DESTINATION ${ZLIB_INSTALL_FWRK_DIR} COMPONENT libraries
PUBLIC_HEADER DESTINATION ${ZLIB_INSTALL_INCLUDE_DIR} COMPONENT headers
)
endif ()
include (CMakePackageConfigHelpers)
#-----------------------------------------------------------------------------
# Configure the zlib-config.cmake file for the build directory
#-----------------------------------------------------------------------------
set (INCLUDE_INSTALL_DIR ${ZLIB_INSTALL_INCLUDE_DIR})
set (SHARE_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/${ZLIB_INSTALL_CMAKE_DIR}" )
set (CURRENT_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}" )
configure_package_config_file (
${ZLIB_RESOURCES_DIR}/zlib-config.cmake.in
"${ZLIB_BINARY_DIR}/zlib-config.cmake"
INSTALL_DESTINATION "${ZLIB_INSTALL_CMAKE_DIR}"
PATH_VARS INCLUDE_INSTALL_DIR SHARE_INSTALL_DIR CURRENT_BUILD_DIR
INSTALL_PREFIX "${CMAKE_CURRENT_BINARY_DIR}"
)
#-----------------------------------------------------------------------------
# Configure the zlib-config.cmake file for the install directory
#-----------------------------------------------------------------------------
set (INCLUDE_INSTALL_DIR ${ZLIB_INSTALL_INCLUDE_DIR})
set (SHARE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/${ZLIB_INSTALL_CMAKE_DIR}" )
set (CURRENT_BUILD_DIR "${CMAKE_INSTALL_PREFIX}")
configure_package_config_file (
${ZLIB_RESOURCES_DIR}/zlib-config.cmake.in
"${ZLIB_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/zlib-config.cmake"
INSTALL_DESTINATION "${ZLIB_INSTALL_CMAKE_DIR}"
PATH_VARS INCLUDE_INSTALL_DIR SHARE_INSTALL_DIR CURRENT_BUILD_DIR
)
if (NOT ZLIB_EXTERNALLY_CONFIGURED)
install (
FILES ${ZLIB_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/zlib-config.cmake
DESTINATION ${ZLIB_INSTALL_CMAKE_DIR}
COMPONENT configinstall
)
endif ()
#-----------------------------------------------------------------------------
# Configure the ZLIB-config-version.cmake file for the install directory
#-----------------------------------------------------------------------------
if (NOT ZLIB_EXTERNALLY_CONFIGURED)
configure_file (
${ZLIB_RESOURCES_DIR}/zlib-config-version.cmake.in
${ZLIB_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/zlib-config-version.cmake @ONLY
)
install (
FILES ${ZLIB_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/zlib-config-version.cmake
DESTINATION ${ZLIB_INSTALL_CMAKE_DIR}
COMPONENT configinstall
)
endif ()
#-----------------------------------------------------------------------------
# Add Target(s) to CMake Install for import into other projects
#-----------------------------------------------------------------------------
if (NOT ZLIB_EXTERNALLY_CONFIGURED)
install (
EXPORT ${ZLIB_EXPORTED_TARGETS}
DESTINATION ${ZLIB_INSTALL_CMAKE_DIR}
FILE zlib-targets.cmake
NAMESPACE ${PACKAGE_NAMESPACE}
COMPONENT configinstall
)
endif ()
#-----------------------------------------------------------------------------
# Export all exported targets to the build tree for use by parent project
#-----------------------------------------------------------------------------
if (NOT ZLIB_EXTERNALLY_CONFIGURED)
export (
TARGETS ${ZLIB_LIBRARIES_TO_EXPORT}
FILE zlib-targets.cmake
NAMESPACE ${PACKAGE_NAMESPACE}
)
export (PACKAGE zlib)
endif ()
+1 -1
View File
@@ -1564,7 +1564,7 @@ AC_ARG_ENABLE([doxygen-errors],
[DOXY_ERR=$enableval])
if test "X$DOXY_ERR" = "Xyes"; then
HDF5_DOXY_WARNINGS="FAIL_ON_WARNINGS"
HDF5_DOXY_WARNINGS="FAIL_ON_WARNINGS_PRINT"
else
HDF5_DOXY_WARNINGS="NO"
+329 -190
View File
@@ -1,7 +1,7 @@
# Doxyfile
# This file describes the settings to be used by the documentation system
# doxygen (www.doxygen.org) for a project.
# Doxygen (www.doxygen.org) for a project.
#
# All text after a double hash (##) is considered a comment and is placed in
# front of the TAG it is preceding.
@@ -44,7 +44,7 @@ PROJECT_NUMBER = @DOXYGEN_VERSION_STRING@
# for a project that appears at the top of each page and should give viewer a
# quick idea about the purpose of the project. Keep the description short.
PROJECT_BRIEF = @DOXYGEN_PROJECT_BRIEF@
PROJECT_BRIEF = "@DOXYGEN_PROJECT_BRIEF@"
# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
# in the documentation. The maximum height of the logo should not exceed 55
@@ -55,12 +55,34 @@ PROJECT_LOGO = @DOXYGEN_PROJECT_LOGO@
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
# into which the generated documentation will be written. If a relative path is
# entered, it will be relative to the location where doxygen was started. If
# entered, it will be relative to the location where Doxygen was started. If
# left blank the current directory will be used.
OUTPUT_DIRECTORY = @DOXYGEN_OUTPUT_DIRECTORY@
# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
# If the CREATE_SUBDIRS tag is set to YES then Doxygen will create up to 4096
# sub-directories (in 2 levels) under the output directory of each output format
# and will distribute the generated files over these directories. Enabling this
# option can be useful when feeding Doxygen a huge amount of source files, where
# putting all generated files in the same directory would otherwise causes
# performance problems for the file system. Adapt CREATE_SUBDIRS_LEVEL to
# control the number of sub-directories.
# The default value is: NO.
CREATE_SUBDIRS = Yes
# Controls the number of sub-directories that will be created when
# CREATE_SUBDIRS tag is set to YES. Level 0 represents 16 directories, and every
# level increment doubles the number of directories, resulting in 4096
# directories at level 8 which is the default and also the maximum value. The
# sub-directories are organized in 2 levels, the first level always has a fixed
# number of 16 directories.
# Minimum value: 0, maximum value: 8, default value: 8.
# This tag requires that the tag CREATE_SUBDIRS is set to YES.
CREATE_SUBDIRS_LEVEL = 8
# If the ALLOW_UNICODE_NAMES tag is set to YES, Doxygen will allow non-ASCII
# characters to appear in the names of generated files. If set to NO, non-ASCII
# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
# U+3044.
@@ -69,16 +91,16 @@ OUTPUT_DIRECTORY = @DOXYGEN_OUTPUT_DIRECTORY@
ALLOW_UNICODE_NAMES = NO
# The OUTPUT_LANGUAGE tag is used to specify the language in which all
# documentation generated by doxygen is written. Doxygen will use this
# documentation generated by Doxygen is written. Doxygen will use this
# information to generate all constant output in the proper language.
# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
# Ukrainian and Vietnamese.
# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Bulgarian,
# Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, English
# (United States), Esperanto, Farsi (Persian), Finnish, French, German, Greek,
# Hindi, Hungarian, Indonesian, Italian, Japanese, Japanese-en (Japanese with
# English messages), Korean, Korean-en (Korean with English messages), Latvian,
# Lithuanian, Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese,
# Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish,
# Swedish, Turkish, Ukrainian and Vietnamese.
# The default value is: English.
OUTPUT_LANGUAGE = English
@@ -104,7 +126,7 @@ ABBREVIATE_BRIEF = "The $name class" \
an \
the
# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
# If the FULL_PATH_NAMES tag is set to YES, Doxygen will prepend the full path
# before files name in the file list and in the header files. If set to NO the
# shortest path that makes the file name unique will be used
# The default value is: YES.
@@ -114,11 +136,11 @@ FULL_PATH_NAMES = YES
# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
# Stripping is only done if one of the specified strings matches the left-hand
# part of the path. The tag can be used to show relative paths in the file list.
# If left blank the directory from which doxygen is run is used as the path to
# If left blank the directory from which Doxygen is run is used as the path to
# strip.
#
# Note that you can specify absolute paths here, but also relative paths, which
# will be relative from the directory where doxygen is started.
# will be relative from the directory where Doxygen is started.
# This tag requires that the tag FULL_PATH_NAMES is set to YES.
STRIP_FROM_PATH = @DOXYGEN_STRIP_FROM_PATH@
@@ -132,7 +154,7 @@ STRIP_FROM_PATH = @DOXYGEN_STRIP_FROM_PATH@
STRIP_FROM_INC_PATH = @DOXYGEN_STRIP_FROM_INC_PATH@
# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen treat a
# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
# a brief description. This used to be the default behavior. The new default is
# to treat a multi-line C++ comment block as a detailed description. Set this
@@ -154,16 +176,17 @@ TAB_SIZE = 4
# the documentation. An alias has the form:
# name=value
# For example adding
# "sideeffect=@par Side Effects:\n"
# "sideeffect=@par Side Effects:^^"
# will allow you to put the command \sideeffect (or @sideeffect) in the
# documentation, which will result in a user-defined paragraph with heading
# "Side Effects:". You can put \n's in the value part of an alias to insert
# newlines (in the resulting output). You can put ^^ in the value part of an
# alias to insert a newline as if a physical newline was in the original file.
# When you need a literal { or } or , in the value part of an alias you have to
# escape them by means of a backslash (\), this can lead to conflicts with the
# commands \{ and \} for these it is advised to use the version @{ and @} or use
# a double escape (\\{ and \\})
# "Side Effects:". Note that you cannot put \n's in the value part of an alias
# to insert newlines (in the resulting output). You can put ^^ in the value part
# of an alias to insert a newline as if a physical newline was in the original
# file. When you need a literal { or } or , in the value part of an alias you
# have to escape them by means of a backslash (\), this can lead to conflicts
# with the commands \{ and \} for these it is advised to use the version @{ and
# @} or use a double escape (\\{ and \\})
ALIASES =
@@ -196,27 +219,30 @@ OPTIMIZE_FOR_FORTRAN = YES
# parses. With this tag you can assign which parser to use for a given
# extension. Doxygen has a built-in mapping, but you can override or extend it
# using this tag. The format is ext=language, where ext is a file extension, and
# language is one of the parsers supported by doxygen: IDL, Java, JavaScript,
# Csharp (C#), C, C++, D, PHP, md (Markdown), Objective-C, Python, Slice, VHDL,
# Fortran (fixed format Fortran: FortranFixed, free formatted Fortran:
# language is one of the parsers supported by Doxygen: IDL, Java, JavaScript,
# Csharp (C#), C, C++, Lex, D, PHP, md (Markdown), Objective-C, Python, Slice,
# VHDL, Fortran (fixed format Fortran: FortranFixed, free formatted Fortran:
# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser
# tries to guess whether the code is fixed or free formatted code, this is the
# default for Fortran type files). For instance to make doxygen treat .inc files
# default for Fortran type files). For instance to make Doxygen treat .inc files
# as Fortran files (default is PHP), and .f files as C (default is Fortran),
# use: inc=Fortran f=C.
#
# Note: For files without extension you can use no_extension as a placeholder.
#
# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
# the files are not read by doxygen.
# the files are not read by Doxygen. When specifying no_extension you should add
# * to the FILE_PATTERNS.
#
# Note see also the list of default file extension mappings.
EXTENSION_MAPPING =
# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
# If the MARKDOWN_SUPPORT tag is enabled then Doxygen pre-processes all comments
# according to the Markdown format, which allows for more readable
# documentation. See https://daringfireball.net/projects/markdown/ for details.
# The output of markdown processing is further processed by doxygen, so you can
# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
# The output of markdown processing is further processed by Doxygen, so you can
# mix Doxygen, HTML, and XML commands with Markdown formatting. Disable only in
# case of backward compatibilities issues.
# The default value is: YES.
@@ -226,12 +252,12 @@ MARKDOWN_SUPPORT = YES
# to that level are automatically included in the table of contents, even if
# they do not have an id attribute.
# Note: This feature currently applies only to Markdown headings.
# Minimum value: 0, maximum value: 99, default value: 5.
# Minimum value: 0, maximum value: 99, default value: 6.
# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
TOC_INCLUDE_HEADINGS = 5
# When enabled doxygen tries to link words that correspond to documented
# When enabled Doxygen tries to link words that correspond to documented
# classes, or namespaces to their corresponding documentation. Such a link can
# be prevented in individual cases by putting a % sign in front of the word or
# globally by setting AUTOLINK_SUPPORT to NO.
@@ -290,11 +316,11 @@ TYPEDEF_HIDES_STRUCT = YES
# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
# cache is used to resolve symbols given their name and scope. Since this can be
# an expensive process and often the same symbol appears multiple times in the
# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
# doxygen will become slower. If the cache is too large, memory is wasted. The
# code, Doxygen keeps a cache of pre-resolved symbols. If the cache is too small
# Doxygen will become slower. If the cache is too large, memory is wasted. The
# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
# symbols. At the end of a run doxygen will report the cache usage and suggest
# symbols. At the end of a run Doxygen will report the cache usage and suggest
# the optimal cache size from a speed point of view.
# Minimum value: 0, maximum value: 9, default value: 0.
@@ -304,7 +330,7 @@ LOOKUP_CACHE_SIZE = 0
# Build related configuration options
#---------------------------------------------------------------------------
# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
# If the EXTRACT_ALL tag is set to YES, Doxygen will assume all entities in
# documentation are documented, even if no documentation was available. Private
# class members and static file members will be hidden unless the
# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
@@ -363,7 +389,7 @@ EXTRACT_LOCAL_METHODS = NO
EXTRACT_ANON_NSPACES = NO
# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
# undocumented members inside documented classes or files. If set to NO these
# members will be included in the various overviews, but no documentation
# section is generated. This option has no effect if EXTRACT_ALL is enabled.
@@ -371,22 +397,23 @@ EXTRACT_ANON_NSPACES = NO
HIDE_UNDOC_MEMBERS = NO
# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
# undocumented classes that are normally visible in the class hierarchy. If set
# to NO, these classes will be included in the various overviews. This option
# has no effect if EXTRACT_ALL is enabled.
# will also hide undocumented C++ concepts if enabled. This option has no effect
# if EXTRACT_ALL is enabled.
# The default value is: NO.
HIDE_UNDOC_CLASSES = NO
# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all friend
# declarations. If set to NO, these declarations will be included in the
# documentation.
# The default value is: NO.
HIDE_FRIEND_COMPOUNDS = NO
# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
# documentation blocks found inside the body of a function. If set to NO, these
# blocks will be appended to the function's detailed documentation block.
# The default value is: NO.
@@ -400,30 +427,38 @@ HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = NO
# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
# names in lower-case letters. If set to YES, upper-case letters are also
# allowed. This is useful if you have classes or files whose names only differ
# in case and if your file system supports case sensitive file names. Windows
# (including Cygwin) ands Mac users are advised to set this option to NO.
# The default value is: system dependent.
# With the correct setting of option CASE_SENSE_NAMES Doxygen will better be
# able to match the capabilities of the underlying filesystem. In case the
# filesystem is case sensitive (i.e. it supports files in the same directory
# whose names only differ in casing), the option must be set to YES to properly
# deal with such files in case they appear in the input. For filesystems that
# are not case sensitive the option should be set to NO to properly deal with
# output files written for symbols that only differ in casing, such as for two
# classes, one named CLASS and the other named Class, and to also support
# references to files without having to specify the exact matching casing. On
# Windows (including Cygwin) and macOS, users should typically set this option
# to NO, whereas on Linux or other Unix flavors it should typically be set to
# YES.
# Possible values are: SYSTEM, NO and YES.
# The default value is: SYSTEM.
CASE_SENSE_NAMES = NO
# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
# If the HIDE_SCOPE_NAMES tag is set to NO then Doxygen will show members with
# their full class and namespace scopes in the documentation. If set to YES, the
# scope will be hidden.
# The default value is: NO.
HIDE_SCOPE_NAMES = YES
# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then Doxygen will
# append additional text to a page's title, such as Class Reference. If set to
# YES the compound reference will be hidden.
# The default value is: NO.
HIDE_COMPOUND_REFERENCE= NO
# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
# If the SHOW_INCLUDE_FILES tag is set to YES then Doxygen will put a list of
# the files that are included by a file in the documentation of that file.
# The default value is: YES.
@@ -436,7 +471,7 @@ SHOW_INCLUDE_FILES = YES
SHOW_GROUPED_MEMB_INC = NO
# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen will list include
# files with double quotes in the documentation rather than with sharp brackets.
# The default value is: NO.
@@ -448,14 +483,14 @@ FORCE_LOCAL_INCLUDES = NO
INLINE_INFO = YES
# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
# If the SORT_MEMBER_DOCS tag is set to YES then Doxygen will sort the
# (detailed) documentation of file and class members alphabetically by member
# name. If set to NO, the members will appear in declaration order.
# The default value is: YES.
SORT_MEMBER_DOCS = YES
# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
# If the SORT_BRIEF_DOCS tag is set to YES then Doxygen will sort the brief
# descriptions of file, namespace and class members alphabetically by member
# name. If set to NO, the members will appear in declaration order. Note that
# this will also influence the order of the classes in the class list.
@@ -463,7 +498,7 @@ SORT_MEMBER_DOCS = YES
SORT_BRIEF_DOCS = NO
# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then Doxygen will sort the
# (brief and detailed) documentation of class members so that constructors and
# destructors are listed first. If set to NO the constructors will appear in the
# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
@@ -475,7 +510,7 @@ SORT_BRIEF_DOCS = NO
SORT_MEMBERS_CTORS_1ST = NO
# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
# If the SORT_GROUP_NAMES tag is set to YES then Doxygen will sort the hierarchy
# of group names into alphabetical order. If set to NO the group names will
# appear in their defined order.
# The default value is: NO.
@@ -492,11 +527,11 @@ SORT_GROUP_NAMES = YES
SORT_BY_SCOPE_NAME = NO
# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
# If the STRICT_PROTO_MATCHING option is enabled and Doxygen fails to do proper
# type resolution of all parameters of a function it will reject a match between
# the prototype and the implementation of a member function even if there is
# only one candidate or it is obvious which candidate to choose by doing a
# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
# simple string match. By disabling STRICT_PROTO_MATCHING Doxygen will still
# accept a match between prototype and implementation in such cases.
# The default value is: NO.
@@ -566,30 +601,31 @@ SHOW_FILES = YES
SHOW_NAMESPACES = YES
# The FILE_VERSION_FILTER tag can be used to specify a program or script that
# doxygen should invoke to get the current version for each file (typically from
# Doxygen should invoke to get the current version for each file (typically from
# the version control system). Doxygen will invoke the program by executing (via
# popen()) the command command input-file, where command is the value of the
# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
# by doxygen. Whatever the program writes to standard output is used as the file
# by Doxygen. Whatever the program writes to standard output is used as the file
# version. For an example see the documentation.
FILE_VERSION_FILTER =
# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
# by doxygen. The layout file controls the global structure of the generated
# by Doxygen. The layout file controls the global structure of the generated
# output files in an output format independent way. To create the layout file
# that represents doxygen's defaults, run doxygen with the -l option. You can
# that represents Doxygen's defaults, run Doxygen with the -l option. You can
# optionally specify a file name after the option, if omitted DoxygenLayout.xml
# will be used as the name of the layout file.
# will be used as the name of the layout file. See also section "Changing the
# layout of pages" for information.
#
# Note that if you run doxygen from a directory containing a file called
# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
# Note that if you run Doxygen from a directory containing a file called
# DoxygenLayout.xml, Doxygen will parse it automatically even if the LAYOUT_FILE
# tag is left empty.
LAYOUT_FILE = @DOXYGEN_LAYOUT_FILE@
# The WARNINGS tag can be used to turn on/off the warning messages that are
# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
# generated to standard error (stderr) by Doxygen. If WARNINGS is set to YES
# this implies that the warnings are on.
#
# Tip: Turn warnings on while writing the documentation.
@@ -597,49 +633,79 @@ LAYOUT_FILE = @DOXYGEN_LAYOUT_FILE@
WARNINGS = YES
# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
# If the WARN_IF_UNDOCUMENTED tag is set to YES then Doxygen will generate
# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
# will automatically be disabled.
# The default value is: YES.
WARN_IF_UNDOCUMENTED = YES
# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
# potential errors in the documentation, such as not documenting some parameters
# in a documented function, or documenting parameters that don't exist or using
# markup commands wrongly.
# If the WARN_IF_DOC_ERROR tag is set to YES, Doxygen will generate warnings for
# potential errors in the documentation, such as documenting some parameters in
# a documented function twice, or documenting parameters that don't exist or
# using markup commands wrongly.
# The default value is: YES.
WARN_IF_DOC_ERROR = YES
# If WARN_IF_INCOMPLETE_DOC is set to YES, Doxygen will warn about incomplete
# function parameter documentation. If set to NO, Doxygen will accept that some
# parameters have no documentation without warning.
# The default value is: YES.
WARN_IF_INCOMPLETE_DOC = YES
# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
# are documented, but have no documentation for their parameters or return
# value. If set to NO, doxygen will only warn about wrong or incomplete
# parameter documentation, but not about the absence of documentation. If
# EXTRACT_ALL is set to YES then this flag will automatically be disabled.
# value. If set to NO, Doxygen will only warn about wrong parameter
# documentation, but not about the absence of documentation. If EXTRACT_ALL is
# set to YES then this flag will automatically be disabled. See also
# WARN_IF_INCOMPLETE_DOC
# The default value is: NO.
WARN_NO_PARAMDOC = NO
# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when
# a warning is encountered.
# If WARN_IF_UNDOC_ENUM_VAL option is set to YES, Doxygen will warn about
# undocumented enumeration values. If set to NO, Doxygen will accept
# undocumented enumeration values. If EXTRACT_ALL is set to YES then this flag
# will automatically be disabled.
# The default value is: NO.
WARN_IF_UNDOC_ENUM_VAL = NO
# If the WARN_AS_ERROR tag is set to YES then Doxygen will immediately stop when
# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS
# then Doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but
# at the end of the Doxygen process Doxygen will return with a non-zero status.
# If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS_PRINT then Doxygen behaves
# like FAIL_ON_WARNINGS but in case no WARN_LOGFILE is defined Doxygen will not
# write the warning messages in between other messages but write them at the end
# of a run, in case a WARN_LOGFILE is defined the warning messages will be
# besides being in the defined file also be shown at the end of a run, unless
# the WARN_LOGFILE is defined as - i.e. standard output (stdout) in that case
# the behavior will remain as with the setting FAIL_ON_WARNINGS.
# Possible values are: NO, YES, FAIL_ON_WARNINGS and FAIL_ON_WARNINGS_PRINT.
# The default value is: NO.
WARN_AS_ERROR = @DOXYGEN_WARN_AS_ERROR@
# The WARN_FORMAT tag determines the format of the warning messages that doxygen
# The WARN_FORMAT tag determines the format of the warning messages that Doxygen
# can produce. The string should contain the $file, $line, and $text tags, which
# will be replaced by the file and line number from which the warning originated
# and the warning text. Optionally the format may contain $version, which will
# be replaced by the version of the file (if it could be obtained via
# FILE_VERSION_FILTER)
# See also: WARN_LINE_FORMAT
# The default value is: $file:$line: $text.
WARN_FORMAT = "$file:$line: $text"
# The WARN_LOGFILE tag can be used to specify a file to which warning and error
# messages should be written. If left blank the output is written to standard
# error (stderr).
# error (stderr). In case the file specified cannot be opened for writing the
# warning and error messages are written to standard error. When as file - is
# specified the warning and error messages are written to standard output
# (stdout).
WARN_LOGFILE =
@@ -656,10 +722,11 @@ WARN_LOGFILE =
INPUT = @DOXYGEN_INPUT_DIRECTORY@
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
# that Doxygen parses. Internally Doxygen uses the UTF-8 encoding. Doxygen uses
# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
# documentation (see: https://www.gnu.org/software/libiconv/) for the list of
# possible encodings.
# documentation (see:
# https://www.gnu.org/software/libiconv/) for the list of possible encodings.
# See also: INPUT_FILE_ENCODING
# The default value is: UTF-8.
INPUT_ENCODING = UTF-8
@@ -670,15 +737,17 @@ INPUT_ENCODING = UTF-8
#
# Note that for custom extensions or not directly supported extensions you also
# need to set EXTENSION_MAPPING for the extension otherwise the files are not
# read by doxygen.
# read by Doxygen.
#
# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
# *.m, *.markdown, *.md, *.mm, *.dox (to be provided as doxygen C comment),
# *.doc (to be provided as doxygen C comment), *.txt (to be provided as doxygen
# C comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd,
# *.vhdl, *.ucf, *.qsf and *.ice.
# Note the list of default checked file patterns might differ from the list of
# default file extension mappings.
#
# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cxxm,
# *.cpp, *.cppm, *.ccm, *.c++, *.c++m, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl,
# *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, *.h++, *.ixx, *.l, *.cs, *.d,
# *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, *.md, *.mm, *.dox (to
# be provided as Doxygen C comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08,
# *.f18, *.f, *.for, *.vhd, *.vhdl, *.ucf, *.qsf and *.ice.
FILE_PATTERNS = H5*public.h H5*module.h H5*develop.h H5FD*.h \
H5VLconnector.h H5VLconnector_passthru.h H5VLnative.h H5PLextern.h \
@@ -708,7 +777,7 @@ RECURSIVE = YES
# excluded from the INPUT source files. This way you can easily exclude a
# subdirectory from a directory tree whose root is specified with the INPUT tag.
#
# Note that relative paths are relative to the directory from which doxygen is
# Note that relative paths are relative to the directory from which Doxygen is
# run.
EXCLUDE =
@@ -727,26 +796,23 @@ EXCLUDE_SYMLINKS = NO
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories for example use the pattern */test/*
EXCLUDE_PATTERNS = */fortran/test/*
EXCLUDE_PATTERNS += */fortran/testpar/*
EXCLUDE_PATTERNS += */fortran/examples/*
EXCLUDE_PATTERNS += */fortran/src/*.c
EXCLUDE_PATTERNS += */fortran/src/*.h
EXCLUDE_PATTERNS += */hl/fortran/examples/*
EXCLUDE_PATTERNS += */hl/fortran/test/*
EXCLUDE_PATTERNS += */hl/fortran/src/*.c
EXCLUDE_PATTERNS += */hl/fortran/src/*.h
EXCLUDE_PATTERNS += */HDF5Examples/FORTRAN/*
EXCLUDE_PATTERNS += */sanitizer/*
EXCLUDE_PATTERNS = */fortran/test/* \
*/fortran/testpar/* \
*/fortran/examples/* \
*/fortran/src/*.c \
*/fortran/src/*.h \
*/hl/fortran/examples/* \
*/hl/fortran/test/* \
*/hl/fortran/src/*.c \
*/hl/fortran/src/*.h \
*/HDF5Examples/FORTRAN/* \
*/sanitizer/* \
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the
# output. The symbol name can be a fully qualified name, a word, or if the
# wildcard * is used, a substring. Examples: ANamespace, AClass,
# AClass::ANamespace, ANamespace::*Test
#
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories use the pattern */test/*
# ANamespace::AClass, ANamespace::*Test
EXCLUDE_SYMBOLS =
@@ -776,7 +842,7 @@ EXAMPLE_RECURSIVE = NO
IMAGE_PATH = @DOXYGEN_DIR@/img
# The INPUT_FILTER tag can be used to specify a program that doxygen should
# The INPUT_FILTER tag can be used to specify a program that Doxygen should
# invoke to filter for each input file. Doxygen will invoke the filter program
# by executing (via popen()) the command:
#
@@ -791,9 +857,14 @@ IMAGE_PATH = @DOXYGEN_DIR@/img
# code is scanned, but not when the output code is generated. If lines are added
# or removed, the anchors will not be placed correctly.
#
# Note that Doxygen will use the data processed and written to standard output
# for further processing, therefore nothing else, like debug statements or used
# commands (so in case of a Windows batch file always use @echo OFF), should be
# written to standard output.
#
# Note that for custom extensions or not directly supported extensions you also
# need to set EXTENSION_MAPPING for the extension otherwise the files are not
# properly processed by doxygen.
# properly processed by Doxygen.
INPUT_FILTER =
@@ -806,7 +877,7 @@ INPUT_FILTER =
#
# Note that for custom extensions or not directly supported extensions you also
# need to set EXTENSION_MAPPING for the extension otherwise the files are not
# properly processed by doxygen.
# properly processed by Doxygen.
FILTER_PATTERNS =
@@ -828,7 +899,7 @@ FILTER_SOURCE_PATTERNS =
# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
# is part of the input, its contents will be placed on the main page
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.
# and want to reuse the introduction page also for the Doxygen output.
USE_MDFILE_AS_MAINPAGE =
@@ -846,12 +917,13 @@ USE_MDFILE_AS_MAINPAGE =
SOURCE_BROWSER = NO
# Setting the INLINE_SOURCES tag to YES will include the body of functions,
# classes and enums directly into the documentation.
# multi-line macros, enums or list initialized variables directly into the
# documentation.
# The default value is: NO.
INLINE_SOURCES = NO
# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
# Setting the STRIP_CODE_COMMENTS tag to YES will instruct Doxygen to hide any
# special comment blocks from generated source code fragments. Normal C, C++ and
# Fortran comments will always remain visible.
# The default value is: YES.
@@ -889,7 +961,7 @@ REFERENCES_LINK_SOURCE = NO
SOURCE_TOOLTIPS = YES
# If the USE_HTAGS tag is set to YES then the references to source code will
# point to the HTML generated by the htags(1) tool instead of doxygen built-in
# point to the HTML generated by the htags(1) tool instead of Doxygen built-in
# source browser. The htags tool is part of GNU's global source tagging system
# (see https://www.gnu.org/software/global/global.html). You will need version
# 4.8.6 or higher.
@@ -903,14 +975,14 @@ SOURCE_TOOLTIPS = YES
# Doxygen will invoke htags (and that will in turn invoke gtags), so these
# tools must be available from the command line (i.e. in the search path).
#
# The result: instead of the source browser generated by doxygen, the links to
# The result: instead of the source browser generated by Doxygen, the links to
# source code will now point to the output of htags.
# The default value is: NO.
# This tag requires that the tag SOURCE_BROWSER is set to YES.
USE_HTAGS = NO
# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
# If the VERBATIM_HEADERS tag is set the YES then Doxygen will generate a
# verbatim copy of the header file for each class for which an include is
# specified. Set to NO to disable this.
# See also: Section \class.
@@ -929,10 +1001,11 @@ VERBATIM_HEADERS = NO
ALPHABETICAL_INDEX = YES
# In case all classes in a project start with a common prefix, all classes will
# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
# can be used to specify a prefix (or a list of prefixes) that should be ignored
# while generating the index headers.
# The IGNORE_PREFIX tag can be used to specify a prefix (or a list of prefixes)
# that should be ignored while generating the index headers. The IGNORE_PREFIX
# tag works for classes, function and member names. The entity will be placed in
# the alphabetical list under the first letter of the entity name that remains
# after removing the prefix.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
IGNORE_PREFIX = H5
@@ -941,7 +1014,7 @@ IGNORE_PREFIX = H5
# Configuration options related to the HTML output
#---------------------------------------------------------------------------
# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
# If the GENERATE_HTML tag is set to YES, Doxygen will generate HTML output
# The default value is: YES.
GENERATE_HTML = YES
@@ -962,40 +1035,40 @@ HTML_OUTPUT = html
HTML_FILE_EXTENSION = .html
# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
# each generated HTML page. If the tag is left blank doxygen will generate a
# each generated HTML page. If the tag is left blank Doxygen will generate a
# standard header.
#
# To get valid HTML the header file that includes any scripts and style sheets
# that doxygen needs, which is dependent on the configuration options used (e.g.
# that Doxygen needs, which is dependent on the configuration options used (e.g.
# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
# default header using
# doxygen -w html new_header.html new_footer.html new_stylesheet.css
# YourConfigFile
# and then modify the file new_header.html. See also section "Doxygen usage"
# for information on how to generate the default header that doxygen normally
# for information on how to generate the default header that Doxygen normally
# uses.
# Note: The header is subject to change so you typically have to regenerate the
# default header when upgrading to a newer version of doxygen. For a description
# default header when upgrading to a newer version of Doxygen. For a description
# of the possible markers and block names see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_HEADER = @DOXYGEN_HTML_HEADER@
# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
# generated HTML page. If the tag is left blank doxygen will generate a standard
# generated HTML page. If the tag is left blank Doxygen will generate a standard
# footer. See HTML_HEADER for more information on how to generate a default
# footer and what special commands can be used inside the footer. See also
# section "Doxygen usage" for information on how to generate the default footer
# that doxygen normally uses.
# that Doxygen normally uses.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_FOOTER = @DOXYGEN_HTML_FOOTER@
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
# sheet that is used by each HTML page. It can be used to fine-tune the look of
# the HTML output. If left blank doxygen will generate a default style sheet.
# the HTML output. If left blank Doxygen will generate a default style sheet.
# See also section "Doxygen usage" for information on how to generate the style
# sheet that doxygen normally uses.
# sheet that Doxygen normally uses.
# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
# it is more robust and this tag (HTML_STYLESHEET) will in the future become
# obsolete.
@@ -1005,13 +1078,18 @@ HTML_STYLESHEET =
# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
# cascading style sheets that are included after the standard style sheets
# created by doxygen. Using this option one can overrule certain style aspects.
# created by Doxygen. Using this option one can overrule certain style aspects.
# This is preferred over using HTML_STYLESHEET since it does not replace the
# standard style sheet and is therefore more robust against future updates.
# Doxygen will copy the style sheet files to the output directory.
# Note: The order of the extra style sheet files is of importance (e.g. the last
# style sheet in the list overrules the setting of the previous ones in the
# list). For an example see the documentation.
# list).
# Note: Since the styling of scrollbars can currently not be overruled in
# Webkit/Chromium, the styling will be left out of the default doxygen.css if
# one or more extra stylesheets have been specified. So if scrollbar
# customization is desired it has to be added explicitly. For an example see the
# documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_STYLESHEET = @DOXYGEN_HTML_EXTRA_STYLESHEET@
@@ -1026,9 +1104,22 @@ HTML_EXTRA_STYLESHEET = @DOXYGEN_HTML_EXTRA_STYLESHEET@
HTML_EXTRA_FILES = @DOXYGEN_HTML_EXTRA_FILES@
# The HTML_COLORSTYLE tag can be used to specify if the generated HTML output
# should be rendered with a dark or light theme.
# Possible values are: LIGHT always generates light mode output, DARK always
# generates dark mode output, AUTO_LIGHT automatically sets the mode according
# to the user preference, uses light mode if no preference is set (the default),
# AUTO_DARK automatically sets the mode according to the user preference, uses
# dark mode if no preference is set and TOGGLE allows a user to switch between
# light and dark mode via a button.
# The default value is: AUTO_LIGHT.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_COLORSTYLE = LIGHT
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
# will adjust the colors in the style sheet and background images according to
# this color. Hue is specified as an angle on a colorwheel, see
# this color. Hue is specified as an angle on a color-wheel, see
# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
# purple, and 360 is red again.
@@ -1038,7 +1129,7 @@ HTML_EXTRA_FILES = @DOXYGEN_HTML_EXTRA_FILES@
HTML_COLORSTYLE_HUE = 220
# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
# in the HTML output. For a value of 0 the output will use grayscales only. A
# in the HTML output. For a value of 0 the output will use gray-scales only. A
# value of 255 will produce the most vivid colors.
# Minimum value: 0, maximum value: 255, default value: 100.
# This tag requires that the tag GENERATE_HTML is set to YES.
@@ -1075,6 +1166,17 @@ HTML_DYNAMIC_MENUS = NO
HTML_DYNAMIC_SECTIONS = YES
# If the HTML_COPY_CLIPBOARD tag is set to YES then Doxygen will show an icon in
# the top right corner of code and text fragments that allows the user to copy
# its content to the clipboard. Note this only works if supported by the browser
# and the web page is served via a secure context (see:
# https://www.w3.org/TR/secure-contexts/), i.e. using the https: or file:
# protocol.
# The default value is: YES.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_COPY_CLIPBOARD = YES
# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
# shown in the various tree structured indices initially; the user can expand
# and collapse entries dynamically later on. Doxygen will expand the tree to
@@ -1090,10 +1192,11 @@ HTML_INDEX_NUM_ENTRIES = 100
# If the GENERATE_DOCSET tag is set to YES, additional index files will be
# generated that can be used as input for Apple's Xcode 3 integrated development
# environment (see: https://developer.apple.com/xcode/), introduced with OSX
# 10.5 (Leopard). To create a documentation set, doxygen will generate a
# Makefile in the HTML output directory. Running make will produce the docset in
# that directory and running make install will install the docset in
# environment (see:
# https://developer.apple.com/xcode/), introduced with OSX 10.5 (Leopard). To
# create a documentation set, Doxygen will generate a Makefile in the HTML
# output directory. Running make will produce the docset in that directory and
# running make install will install the docset in
# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
# startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy
# genXcode/_index.html for more information.
@@ -1132,14 +1235,18 @@ DOCSET_PUBLISHER_ID = org.doxygen.Publisher
DOCSET_PUBLISHER_NAME = Publisher
# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
# If the GENERATE_HTMLHELP tag is set to YES then Doxygen generates three
# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
# (see: https://www.microsoft.com/en-us/download/details.aspx?id=21138) on
# Windows.
# on Windows. In the beginning of 2021 Microsoft took the original page, with
# a.o. the download links, offline the HTML help workshop was already many years
# in maintenance mode). You can download the HTML help workshop from the web
# archives at Installation executable (see:
# http://web.archive.org/web/20160201063255/http://download.microsoft.com/downlo
# ad/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe).
#
# The HTML Help Workshop contains a compiler that can convert all HTML output
# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
# generated by Doxygen into a single compiled HTML file (.chm). Compiled HTML
# files are now used as the Windows 98 help format, and will replace the old
# Windows help format (.hlp) on all Windows platforms in the future. Compressed
# HTML files also contain an index, a table of contents, and you can search for
@@ -1159,14 +1266,14 @@ CHM_FILE =
# The HHC_LOCATION tag can be used to specify the location (absolute path
# including file name) of the HTML help compiler (hhc.exe). If non-empty,
# doxygen will try to run the HTML help compiler on the generated index.hhp.
# Doxygen will try to run the HTML help compiler on the generated index.hhp.
# The file has to be specified with full path.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
HHC_LOCATION =
# The GENERATE_CHI flag controls if a separate .chi index file is generated
# (YES) or that it should be included in the master .chm file (NO).
# (YES) or that it should be included in the main .chm file (NO).
# The default value is: NO.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
@@ -1193,6 +1300,16 @@ BINARY_TOC = NO
TOC_EXPAND = NO
# The SITEMAP_URL tag is used to specify the full URL of the place where the
# generated documentation will be placed on the server by the user during the
# deployment of the documentation. The generated sitemap is called sitemap.xml
# and placed on the directory specified by HTML_OUTPUT. In case no SITEMAP_URL
# is specified no sitemap is generated. For information about the sitemap
# protocol see https://www.sitemaps.org
# This tag requires that the tag GENERATE_HTML is set to YES.
SITEMAP_URL =
# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
@@ -1211,7 +1328,8 @@ QCH_FILE =
# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
# Project output. For more information please see Qt Help Project / Namespace
# (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace).
# (see:
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace).
# The default value is: org.doxygen.Project.
# This tag requires that the tag GENERATE_QHP is set to YES.
@@ -1219,8 +1337,8 @@ QHP_NAMESPACE = org.doxygen.Project
# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
# Help Project output. For more information please see Qt Help Project / Virtual
# Folders (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-
# folders).
# Folders (see:
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-folders).
# The default value is: doc.
# This tag requires that the tag GENERATE_QHP is set to YES.
@@ -1228,16 +1346,16 @@ QHP_VIRTUAL_FOLDER = doc
# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
# filter to add. For more information please see Qt Help Project / Custom
# Filters (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-
# filters).
# Filters (see:
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
QHP_CUST_FILTER_NAME =
# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
# custom filter to add. For more information please see Qt Help Project / Custom
# Filters (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-
# filters).
# Filters (see:
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
QHP_CUST_FILTER_ATTRS =
@@ -1249,9 +1367,9 @@ QHP_CUST_FILTER_ATTRS =
QHP_SECT_FILTER_ATTRS =
# The QHG_LOCATION tag can be used to specify the location of Qt's
# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
# generated .qhp file.
# The QHG_LOCATION tag can be used to specify the location (absolute path
# including file name) of Qt's qhelpgenerator. If non-empty Doxygen will try to
# run qhelpgenerator on the generated .qhp file.
# This tag requires that the tag GENERATE_QHP is set to YES.
QHG_LOCATION =
@@ -1294,18 +1412,30 @@ DISABLE_INDEX = NO
# to work a browser that supports JavaScript, DHTML, CSS and frames is required
# (i.e. any modern browser). Windows users are probably better off using the
# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
# further fine-tune the look of the index. As an example, the default style
# sheet generated by doxygen has an example that shows how to put an image at
# the root of the tree instead of the PROJECT_NAME. Since the tree basically has
# the same information as the tab index, you could consider setting
# DISABLE_INDEX to YES when enabling this option.
# further fine tune the look of the index (see "Fine-tuning the output"). As an
# example, the default style sheet generated by Doxygen has an example that
# shows how to put an image at the root of the tree instead of the PROJECT_NAME.
# Since the tree basically has the same information as the tab index, you could
# consider setting DISABLE_INDEX to YES when enabling this option.
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
GENERATE_TREEVIEW = YES
# When both GENERATE_TREEVIEW and DISABLE_INDEX are set to YES, then the
# FULL_SIDEBAR option determines if the side bar is limited to only the treeview
# area (value NO) or if it should extend to the full height of the window (value
# YES). Setting this to YES gives a layout similar to
# https://docs.readthedocs.io with more room for contents, but less room for the
# project logo, title, and description. If either GENERATE_TREEVIEW or
# DISABLE_INDEX is set to NO, this option has no effect.
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
FULL_SIDEBAR = NO
# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
# doxygen will group on one line in the generated HTML documentation.
# Doxygen will group on one line in the generated HTML documentation.
#
# Note that a value of 0 will completely suppress the enum values from appearing
# in the overview section.
@@ -1314,6 +1444,12 @@ GENERATE_TREEVIEW = YES
ENUM_VALUES_PER_LINE = 4
# When the SHOW_ENUM_VALUES tag is set doxygen will show the specified
# enumeration values besides the enumeration mnemonics.
# The default value is: NO.
SHOW_ENUM_VALUES = NO
# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
# to set the initial width (in pixels) of the frame in which the tree is shown.
# Minimum value: 0, maximum value: 1500, default value: 250.
@@ -1321,30 +1457,30 @@ ENUM_VALUES_PER_LINE = 4
TREEVIEW_WIDTH = 250
# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
# If the EXT_LINKS_IN_WINDOW option is set to YES, Doxygen will open links to
# external symbols imported via tag files in a separate window.
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
EXT_LINKS_IN_WINDOW = NO
# If the HTML_FORMULA_FORMAT option is set to svg, doxygen will use the pdf2svg
# If the HTML_FORMULA_FORMAT option is set to svg, Doxygen will use the pdf2svg
# tool (see https://github.com/dawbarton/pdf2svg) or inkscape (see
# https://inkscape.org) to generate formulas as SVG images instead of PNGs for
# the HTML output. These images will generally look nicer at scaled resolutions.
# Possible values are: png The default and svg Looks nicer but requires the
# pdf2svg tool.
# Possible values are: png (the default) and svg (looks nicer but requires the
# pdf2svg or inkscape tool).
# The default value is: png.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_FORMULA_FORMAT = png
# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
# the HTML output. The underlying search engine uses javascript and DHTML and
# When the SEARCHENGINE tag is enabled Doxygen will generate a search box for
# the HTML output. The underlying search engine uses JavaScript and DHTML and
# should work on any modern browser. Note that when using HTML help
# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
# there is already a search function so this one should typically be disabled.
# For large projects the javascript based search engine can be slow, then
# For large projects the JavaScript based search engine can be slow, then
# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
# search using the keyboard; to jump to the search box use <access key> + S
# (what the <access key> is depends on the OS and browser, but it is typically
@@ -1363,7 +1499,7 @@ SEARCHENGINE = YES
# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
# implemented using a web server instead of a web client using JavaScript. There
# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
# setting. When disabled, doxygen will generate a PHP script for searching and
# setting. When disabled, Doxygen will generate a PHP script for searching and
# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
# and searching needs to be provided by external tools. See the section
# "External Indexing and Searching" for details.
@@ -1372,7 +1508,7 @@ SEARCHENGINE = YES
SERVER_BASED_SEARCH = @DOXYGEN_SERVER_BASED_SEARCH@
# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
# When EXTERNAL_SEARCH tag is enabled Doxygen will no longer generate the PHP
# script for searching. Instead the search results are written to an XML file
# which needs to be processed by an external indexer. Doxygen will invoke an
# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
@@ -1380,7 +1516,8 @@ SERVER_BASED_SEARCH = @DOXYGEN_SERVER_BASED_SEARCH@
#
# Doxygen ships with an example indexer (doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: https://xapian.org/).
# Xapian (see:
# https://xapian.org/).
#
# See the section "External Indexing and Searching" for details.
# The default value is: NO.
@@ -1393,8 +1530,9 @@ EXTERNAL_SEARCH = @DOXYGEN_EXTERNAL_SEARCH@
#
# Doxygen ships with an example indexer (doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: https://xapian.org/). See the section "External Indexing and
# Searching" for details.
# Xapian (see:
# https://xapian.org/). See the section "External Indexing and Searching" for
# details.
# This tag requires that the tag SEARCHENGINE is set to YES.
SEARCHENGINE_URL = @DOXYGEN_SEARCHENGINE_URL@
@@ -1415,7 +1553,7 @@ SEARCHDATA_FILE = searchdata.xml
EXTERNAL_SEARCH_ID =
# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through Doxygen
# projects other than the one defined by this configuration file, but that are
# all added to the same external search index. Each project needs to have a
# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
@@ -1429,7 +1567,7 @@ EXTRA_SEARCH_MAPPINGS =
# Configuration options related to the LaTeX output
#---------------------------------------------------------------------------
# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
# If the GENERATE_LATEX tag is set to YES, Doxygen will generate LaTeX output.
# The default value is: YES.
GENERATE_LATEX = NO
@@ -1438,7 +1576,7 @@ GENERATE_LATEX = NO
# Configuration options related to the RTF output
#---------------------------------------------------------------------------
# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
# If the GENERATE_RTF tag is set to YES, Doxygen will generate RTF output. The
# RTF output is optimized for Word 97 and may not look too pretty with other RTF
# readers/editors.
# The default value is: NO.
@@ -1449,7 +1587,7 @@ GENERATE_RTF = NO
# Configuration options related to the man page output
#---------------------------------------------------------------------------
# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
# If the GENERATE_MAN tag is set to YES, Doxygen will generate man pages for
# classes and files.
# The default value is: NO.
@@ -1459,7 +1597,7 @@ GENERATE_MAN = NO
# Configuration options related to the XML output
#---------------------------------------------------------------------------
# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
# If the GENERATE_XML tag is set to YES, Doxygen will generate an XML file that
# captures the structure of the code including all documentation.
# The default value is: NO.
@@ -1469,7 +1607,7 @@ GENERATE_XML = NO
# Configuration options related to the DOCBOOK output
#---------------------------------------------------------------------------
# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
# If the GENERATE_DOCBOOK tag is set to YES, Doxygen will generate Docbook files
# that can be used to generate PDF.
# The default value is: NO.
@@ -1479,8 +1617,8 @@ GENERATE_DOCBOOK = NO
# Configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures
# If the GENERATE_AUTOGEN_DEF tag is set to YES, Doxygen will generate an
# AutoGen Definitions (see https://autogen.sourceforge.net/) file that captures
# the structure of the code including all documentation. Note that this feature
# is still experimental and incomplete at the moment.
# The default value is: NO.
@@ -1491,7 +1629,7 @@ GENERATE_AUTOGEN_DEF = NO
# Configuration options related to the Perl module output
#---------------------------------------------------------------------------
# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
# If the GENERATE_PERLMOD tag is set to YES, Doxygen will generate a Perl module
# file that captures the structure of the code including all documentation.
#
# Note that this feature is still experimental and incomplete at the moment.
@@ -1503,13 +1641,13 @@ GENERATE_PERLMOD = NO
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
# If the ENABLE_PREPROCESSING tag is set to YES, Doxygen will evaluate all
# C-preprocessor directives found in the sources and include files.
# The default value is: YES.
ENABLE_PREPROCESSING = YES
# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
# If the MACRO_EXPANSION tag is set to YES, Doxygen will expand all macro names
# in the source code. If set to NO, only conditional compilation will be
# performed. Macro expansion can be done in a controlled way by setting
# EXPAND_ONLY_PREDEF to YES.
@@ -1535,7 +1673,8 @@ SEARCH_INCLUDES = YES
# The INCLUDE_PATH tag can be used to specify one or more directories that
# contain include files that are not input files but should be processed by the
# preprocessor.
# preprocessor. Note that the INCLUDE_PATH is not recursive, so the setting of
# RECURSIVE has no effect here.
# This tag requires that the tag SEARCH_INCLUDES is set to YES.
INCLUDE_PATH =
@@ -1567,7 +1706,7 @@ PREDEFINED = @DOXYGEN_PREDEFINED@
EXPAND_AS_DEFINED =
# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
# If the SKIP_FUNCTION_MACROS tag is set to YES then Doxygen's preprocessor will
# remove all references to function-like macros that are alone on a line, have
# an all uppercase name, and do not end with a semicolon. Such function macros
# are typically used for boiler-plate code, and will confuse the parser if not
@@ -1591,26 +1730,26 @@ SKIP_FUNCTION_MACROS = YES
# section "Linking to external documentation" for more information about the use
# of tag files.
# Note: Each tag file must have a unique name (where the name does NOT include
# the path). If a tag file is not located in the directory in which doxygen is
# the path). If a tag file is not located in the directory in which Doxygen is
# run, you must also specify the path to the tagfile here.
TAGFILES =
# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
# When a file name is specified after GENERATE_TAGFILE, Doxygen will create a
# tag file that is based on the input files it reads. See section "Linking to
# external documentation" for more information about the usage of tag files.
GENERATE_TAGFILE = @DOXYGEN_TAG_FILE@
# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
# the class index. If set to NO, only the inherited external classes will be
# listed.
# If the ALLEXTERNALS tag is set to YES, all external classes and namespaces
# will be listed in the class and namespace index. If set to NO, only the
# inherited external classes will be listed.
# The default value is: NO.
ALLEXTERNALS = NO
# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
# in the modules index. If set to NO, only the current project's groups will be
# in the topic index. If set to NO, only the current project's groups will be
# listed.
# The default value is: YES.
-4
View File
@@ -271,10 +271,6 @@ ALIASES += ref_spec_fileformat_btrees_v1="\ref subsubsec_fmt3_infra_btrees_v1"
ALIASES += ref_cons_semantics="<a href=\"https://\RFCURL/RFC%20PHDF5%20Consistency%20Semantics%20MC%20120328.docx.pdf\">Enabling a Strict Consistency Semantics Model in Parallel HDF5</a>"
ALIASES += ref_filter_pipe="<a href=\"https://\DOCURL/advanced_topics/data_flow_pline_H5Dread.md\">Data Flow Pipeline for H5Dread()</a>"
ALIASES += ref_group_impls="<a href=\"https://\DOXURL/group___h5_g.html\">Group implementations in HDF5</a>"
ALIASES += ref_mdc_in_hdf5="<a href=\"https://\DOCURL/advanced_topics/FineTuningMetadataCache.md\">Metadata Caching in HDF5</a>"
ALIASES += ref_mdc_logging="<a href=\"https://\RFCURL/Design-MetadataCache-Logging-THG20140224-v4.pdf\">Metadata Cache Logging</a>"
ALIASES += ref_news_112="<a href=\"https://\DOCURL/release_specifics/new_features_1_12.md\">New Features in HDF5 Release 1.12</a>"
ALIASES += ref_h5ocopy="<a href=\"https://\DOCURL/advanced_topics/CopyingCommittedDatatypesWithH5Ocopy.pdf\">Copying Committed Datatypes with H5Ocopy()</a>"
ALIASES += ref_sencode_fmt_change="<a href=\"https://\RFCURL/H5Sencode_format.docx.pdf\">RFC H5Sencode() / H5Sdecode() Format Change</a>"
ALIASES += ref_vlen_strings="\Emph{Creating variable-length string datatypes}"
ALIASES += ref_vol_doc="VOL documentation"
-3
View File
@@ -24,9 +24,6 @@ New documentation should, whenever possible, be created using Doxygen markdown!
Use Doxygen's <a href="https://www.doxygen.nl/manual/commands.html#cmdhtmlinclude"><code>htmlinclude</code></a>
special command to include existing plain HTML pages.
An example from this documentation set can be seen
<a href="https://\SRCURL/doxygen/dox/FileFormatSpec.dox">here</a>.
\subsection new_rm_entry Creating a New Reference Manual Entry
Please refer to the \ref RMT for guidance on how to create a new reference manual entry.
+6 -2
View File
@@ -1,6 +1,6 @@
/** \page Cookbook Cookbook
Healthy, everyday recipes for every taste and budget...
Healthy, everyday recipes for every taste and budget...
\ref Files
\li \ref CB_FreeSpace
@@ -16,4 +16,8 @@
\ref Performance
\li \ref CB_MDCPerf
*/
\ref cmake-presets
\li \ref sec_cmake_presets_build
\li \ref sec_cmake_presets_files
*/
+1 -1
View File
@@ -26,6 +26,6 @@ documents cover a mix of tasks, concepts, and reference, to help a specific
You can <a href="https://\RELURL/v1_14/v1_14_5/downloads/hdf5-1.14.5.doxygen.zip">download</a> it as an archive for offline reading.
\par ToDo List
There is plenty of <a href="./todo.html">unfinished business</a>.
There is plenty of \ref todo unfinished business.
*/
+1 -1
View File
@@ -138,7 +138,7 @@ The functions provided by the HDF5 API are grouped into the following
<tr>
<td>
\ref predefined_datatypes_tables<br />
<a href="./deprecated.html">Deprecated functions</a><br />
\ref deprecated<br />
Functions with \ref ASYNC<br />
\ref api-compat-macros
</td>
+1 -1
View File
@@ -987,7 +987,7 @@ In other words, it is an array of four elements, in which each element is a 3 by
This dataset is much more complex. Also note that subsetting cannot be done on Array datatypes.
See this <a href="https://\DOXURL/_l_b_datatypes.html">section</a> for more information on the Array datatype.
See \ref LBDatatypes section for more information on the Array datatype.
\subsubsection subsubsecViewToolsViewDtypes_newref New References
References were reworked in HDF5 1.12.0. The new reference datatype is #H5T_STD_REF. The old reference datatypes are deprecated.
+639
View File
@@ -0,0 +1,639 @@
/** \page cmake-presets Building with CMake Presets
\section sec_cmake_presets_build Building HDF5 with CMake
\par Problem
You want to build HDF5 with CMake, but there are so many options to consider.
\par Solution
CMake introduced presets in version 3.19. HDF Group provides a
<a href="https://\SRCURL/CMakePresets.json"><tt>CMakePresets.json</tt></a>,
requiring CMake 3.24 or higher,
that will build HDF5 with the options for building a typical shared library with
the common languages for a platform. The features include building the tools, examples,
plugins, and the shared and static libraries.
\par Discussion
The <a href="https://\SRCURL/CMakePresets.json"><tt>CMakePresets.json</tt></a> file is
located in the root directory of the HDF5 source. It is
from here you will execute the cmake command to build HDF5. The following example shows
how to build HDF5 with the
<a href="https://\SRCURL/CMakePresets.json"><tt>CMakePresets.json</tt></a> file:
\li change directory to the hdf5 source folder
\li execute <code>cmake --workflow --preset ci-StdShar-<compiler-type> --fresh</code><br />
where "<compiler-type>" is GNUC or MSVC or Clang
The above example will create a "build" folder in the source parent directory, which
will contain the results of the build, including installation package files.
\par See Also
See CMake documentation for details on presets:
\li https://cmake.org/cmake/help/latest/manual/cmake-presets.7.html
\subsection subsec_cmake_presets_build_static CMake Presets Use Case: Static Library and Tools
\par Problem
I want to build the HDF5 library statically and include the tools.
\par Solution
Static libraries can be built with zlib and libaec - but cannot be
built with plugins or Java.
Create a CMakeUserPresets.json file with the following content:
\code
{
"version": 6,
"cmakeMinimumRequired": {
"major": 3,
"minor": 24,
"patch": 0
},
"configurePresets": [
{
"name": "my-Static-Tools",
"hidden": true,
"description": "Build HDF5 with static library and tools",
"inherits": ["ci-base", "ci-CompressionVars", "ci-StdExamples"],
"cacheVariables": {
"HDF_PACKAGE_NAMESPACE": {"type": "STRING", "value": "hdf5::"},
"HDF5_BUILD_SHARED_LIBS": "OFF",
"HDF5_BUILD_TOOLS": "ON",
"HDF5_ENABLE_ZLIB_SUPPORT": "ON",
"HDF5_ENABLE_LIBAEC": "ON",
"HDF5_ENABLE_PLUGIN_SUPPORT": "OFF"
}
},
{
"name": "my-Static-Tools-MSVC",
"description": "MSVC Standard Config for x64 (Release)",
"inherits": [
"ci-x64-Release-MSVC",
"ci-CPP",
"my-Static-Tools"
]
},
{
"name": "my-Static-Tools-Clang",
"description": "Clang Standard Config for x64 (Release)",
"inherits": [
"ci-x64-Release-Clang",
"ci-CPP",
"ci-Fortran",
"my-Static-Tools"
]
},
{
"name": "my-Static-Tools-GNUC",
"description": "GNUC Standard Config for x64 (Release)",
"inherits": [
"ci-x64-Release-GNUC",
"ci-CPP",
"ci-Fortran",
"my-Static-Tools"
]
},
{
"name": "my-Static-Tools-macos-GNUC",
"description": "GNUC Standard Config for macos (Release)",
"inherits": [
"ci-macos-Release-GNUC",
"ci-CPP",
"my-Static-Tools"
]
}
],
"buildPresets": [
{
"name": "my-Static-Tools-MSVC",
"description": "MSVC Standard Build for x64 (Release)",
"configurePreset": "my-Static-Tools-MSVC",
"inherits": [
"ci-x64-Release-MSVC"
]
},
{
"name": "my-Static-Tools-Clang",
"description": "Clang Standard Build for x64 (Release)",
"configurePreset": "my-Static-Tools-Clang",
"inherits": [
"ci-x64-Release-Clang"
]
},
{
"name": "my-Static-Tools-GNUC",
"description": "GNUC Standard Build for x64 (Release)",
"configurePreset": "my-Static-Tools-GNUC",
"inherits": [
"ci-x64-Release-GNUC"
]
},
{
"name": "my-Static-Tools-macos-GNUC",
"description": "GNUC Standard Build for macos (Release)",
"configurePreset": "my-Static-Tools-macos-GNUC",
"verbose": true,
"inherits": [
"ci-macos-Release-GNUC"
]
}
],
"testPresets": [
{
"name": "my-Static-Tools-MSVC",
"configurePreset": "my-Static-Tools-MSVC",
"inherits": [
"ci-x64-Release-MSVC"
]
},
{
"name": "my-Static-Tools-Clang",
"configurePreset": "my-Static-Tools-Clang",
"inherits": [
"ci-x64-Release-Clang"
]
},
{
"name": "my-Static-Tools-GNUC",
"configurePreset": "my-Static-Tools-GNUC",
"inherits": [
"ci-x64-Release-GNUC"
]
},
{
"name": "my-Static-Tools-macos-GNUC",
"configurePreset": "my-Static-Tools-macos-GNUC",
"inherits": [
"ci-macos-Release-GNUC"
]
}
],
"packagePresets": [
{
"name": "my-Static-Tools-MSVC",
"configurePreset": "my-Static-Tools-MSVC",
"inherits": "ci-x64-Release-MSVC"
},
{
"name": "my-Static-Tools-Clang",
"configurePreset": "my-Static-Tools-Clang",
"inherits": "ci-x64-Release-Clang"
},
{
"name": "my-Static-Tools-GNUC",
"configurePreset": "my-Static-Tools-GNUC",
"inherits": "ci-x64-Release-GNUC"
},
{
"name": "my-Static-Tools-macos-GNUC",
"configurePreset": "my-Static-Tools-macos-GNUC",
"inherits": "ci-macos-Release-GNUC"
}
],
"workflowPresets": [
{
"name": "my-Static-Tools-MSVC",
"steps": [
{"type": "configure", "name": "my-Static-Tools-MSVC"},
{"type": "build", "name": "my-Static-Tools-MSVC"},
{"type": "test", "name": "my-Static-Tools-MSVC"},
{"type": "package", "name": "my-Static-Tools-MSVC"}
]
},
{
"name": "my-StdShar-Clang",
"steps": [
{"type": "configure", "name": "my-Static-Tools-Clang"},
{"type": "build", "name": "my-Static-Tools-Clang"},
{"type": "test", "name": "my-Static-Tools-Clang"},
{"type": "package", "name": "my-Static-Tools-Clang"}
]
},
{
"name": "my-StdShar-GNUC",
"steps": [
{"type": "configure", "name": "my-Static-Tools-GNUC"},
{"type": "build", "name": "my-Static-Tools-GNUC"},
{"type": "test", "name": "my-Static-Tools-GNUC"},
{"type": "package", "name": "my-Static-Tools-GNUC"}
]
},
{
"name": "my-Static-Tools-macos-GNUC",
"steps": [
{"type": "configure", "name": "my-Static-Tools-macos-GNUC"},
{"type": "build", "name": "my-Static-Tools-macos-GNUC"},
{"type": "test", "name": "my-Static-Tools-macos-GNUC"},
{"type": "package", "name": "my-Static-Tools-macos-GNUC"}
]
}
]
}
\endcode
\par Discussion
The above example shows how to build HDF5 with a static library and tools. The
CMakeUserPresets.json file is located in the root directory of the HDF5 source. It is
from here you execute:
\li <code>cmake --workflow --preset my-Static-Tools-<compiler-type> --fresh</code><br />
where "<compiler-type>" is GNUC or MSVC or Clang or macos-GNUC
If you don't need cross-compiler or cross-platform support, you can remove the
compiler-specific presets and use the "my-Static-Tools" preset directly.
\par See Also
\ref subsec_cmake_presets_files_json_details for details on the default settings for the
StdShar presets.
\subsection subsec_cmake_presets_build_s3 CMake Presets Use Case: S3 on linux
\par Problem
I want to build the HDF5 library with the ros3 vfd.
\par Solution
Create a CMakeUserPresets.json file with the following content:
\code
{
"version": 6,
"cmakeMinimumRequired": {
"major": 3,
"minor": 24,
"patch": 0
},
"configurePresets": [
{
"name": "my-linux-S3",
"hidden": true,
"description": "Build HDF5 with library and tools for S3",
"inherits": ["ci-base", "ci-S3", "ci-CompressionVars", "ci-StdExamples", "ci-StdPlugins"],
"cacheVariables": {
"HDF_PACKAGE_NAMESPACE": {"type": "STRING", "value": "hdf5::"},
"HDF5_BUILD_SHARED_LIBS": "ON",
"HDF5_BUILD_TOOLS": "ON",
"HDF5_ENABLE_ZLIB_SUPPORT": "ON",
"HDF5_ENABLE_LIBAEC": "ON",
"HDF5_ENABLE_PLUGIN_SUPPORT": "ON"
}
},
{
"name": "my-linux-S3-Clang",
"description": "Clang Standard Config for x64 (Release)",
"inherits": [
"ci-x64-Release-Clang",
"ci-CPP",
"ci-Fortran",
"my-linux-S3"
]
},
{
"name": "my-linux-S3-GNUC",
"description": "GNUC Standard Config for x64 (Release)",
"inherits": [
"ci-x64-Release-GNUC",
"ci-CPP",
"ci-Fortran",
"my-linux-S3"
]
}
],
"buildPresets": [
{
"name": "my-linux-S3-Clang",
"description": "Clang Standard Build for x64 (Release)",
"configurePreset": "my-linux-S3-Clang",
"inherits": [
"ci-x64-Release-Clang"
]
},
{
"name": "my-linux-S3-GNUC",
"description": "GNUC Standard Build for x64 (Release)",
"configurePreset": "my-linux-S3-GNUC",
"inherits": [
"ci-x64-Release-GNUC"
]
}
],
"testPresets": [
{
"name": "my-linux-S3-Clang",
"configurePreset": "my-linux-S3-Clang",
"inherits": [
"ci-x64-Release-Clang"
]
},
{
"name": "my-linux-S3-GNUC",
"configurePreset": "my-linux-S3-GNUC",
"inherits": [
"ci-x64-Release-GNUC"
]
}
],
"packagePresets": [
{
"name": "my-linux-S3-Clang",
"configurePreset": "my-linux-S3-Clang",
"inherits": "ci-x64-Release-Clang"
},
{
"name": "my-linux-S3-GNUC",
"configurePreset": "my-linux-S3-GNUC",
"inherits": "ci-x64-Release-GNUC"
}
],
"workflowPresets": [
{
"name": "my-linux-S3-Clang",
"steps": [
{"type": "configure", "name": "my-linux-S3-Clang"},
{"type": "build", "name": "my-linux-S3-Clang"},
{"type": "test", "name": "my-linux-S3-Clang"},
{"type": "package", "name": "my-linux-S3-Clang"}
]
},
{
"name": "my-linux-S3-GNUC",
"steps": [
{"type": "configure", "name": "my-linux-S3-GNUC"},
{"type": "build", "name": "my-linux-S3-GNUC"},
{"type": "test", "name": "my-linux-S3-GNUC"},
{"type": "package", "name": "my-linux-S3-GNUC"}
]
}
]
}
\endcode
\par Discussion
The above example shows how to build HDF5 with a static library and tools. The
CMakeUserPresets.json file is located in the root directory of the HDF5 source. It is
from here you execute:
\li <code>cmake --workflow --preset my-S3-<compiler-type> --fresh</code><br />
where "<compiler-type>" is GNUC or Clang or macos-GNUC
If you don't need cross-compiler support, you can remove the
compiler-specific presets and use the "my-linux-S3" preset directly.
\par See Also
\ref subsec_cmake_presets_files_json_details for details on the default settings for the
StdShar presets.
\subsection subsec_cmake_presets_build_par CMake Presets Use Case: Parallel Library
\par Problem
I want to build the HDF5 library with a parallel compiler.
\par Solution
Create a CMakeUserPresets.json file with the following content:
\code
{
"version": 6,
"cmakeMinimumRequired": {
"major": 3,
"minor": 24,
"patch": 0
},
"configurePresets": [
{
"name": "my-linux-par",
"hidden": true,
"description": "Build HDF5 with library and tools using parallel compiler",
"inherits": ["ci-base", "ci-CompressionVars", "ci-StdExamples"],
"environment": {
"CC": "mpicc"
},
"cacheVariables": {
"HDF_PACKAGE_NAMESPACE": {"type": "STRING", "value": "hdf5::"},
"HDF5_BUILD_SHARED_LIBS": "ON",
"HDF5_BUILD_TOOLS": "ON",
"MPIEXEC_NUMPROC_FLAG": "-n",
"MPIEXEC_MAX_NUMPROCS": "2",
"HDF5_ENABLE_PARALLEL": "ON",
"HDF5_ENABLE_SUBFILING_VFD": "OFF",
"HDF5_ENABLE_ZLIB_SUPPORT": "ON",
"HDF5_ENABLE_LIBAEC": "ON",
"HDF5_ENABLE_PLUGIN_SUPPORT": "OFF"
}
},
{
"name": "my-linux-par-mpich",
"description": "mpich Standard Config for x64 (Release)",
"inherits": [
"ci-x64-Release-GNUC",
"my-linux-par"
]
}
],
"buildPresets": [
{
"name": "my-linux-par-mpich",
"description": "mpich Standard Build for x64 (Release)",
"configurePreset": "my-linux-par-mpich",
"inherits": [
"ci-x64-Release-GNUC"
]
}
],
"testPresets": [
{
"name": "my-linux-serial-mpich",
"configurePreset": "my-linux-par-mpich",
"inherits": [
"ci-x64-Release-GNUC"
],
"filter": {
"exclude": {
"name": "MPI_TEST"
}
}
},
{
"name": "my-linux-par-mpich",
"configurePreset": "my-linux-par-mpich",
"inherits": [
"ci-x64-Release-GNUC"
],
"filter": {
"include": {
"name": "MPI_TEST"
}
}
}
],
"packagePresets": [
{
"name": "my-linux-par-mpich",
"configurePreset": "my-linux-par-mpich",
"inherits": "ci-x64-Release-GNUC"
}
],
"workflowPresets": [
{
"name": "my-linux-par-mpich",
"steps": [
{"type": "configure", "name": "my-linux-par-mpich"},
{"type": "build", "name": "my-linux-par-mpich"},
{"type": "test", "name": "my-linux-serial-mpich"},
{"type": "test", "name": "my-linux-par-mpich"},
{"type": "package", "name": "my-linux-par-mpich"}
]
}
]
}
\endcode
\par Discussion
The above example shows how to build HDF5 with a parallel compiler. The
CMakeUserPresets.json file is located in the root directory of the HDF5 source. It is
from here you execute:
\li <code>cmake --workflow --preset my-linux-par-GNUC --fresh</code>
\par See Also
\ref subsec_cmake_presets_files_json_details for details on the default settings for the
StdShar presets.
\section sec_cmake_presets_files CMake Presets
Presets are a way to store a set of
CMake cache variables in a file. This allows you to save and load a set of
variables that you use frequently. Presets can be used to save the configuration
of a project for different build configurations, such as Debug and Release.
CMake supports two main files, <strong>CMakePresets.json</strong> and <strong>CMakeUserPresets.json</strong>, that
allow users to specify common configure options and share them with others. CMake
also supports files included with the include field.
\subsection subsec_cmake_presets_files_json CMakePresets.json
HDF Group provides a <a href="https://\SRCURL/CMakePresets.json"><tt>CMakePresets.json</tt></a>
file, used by the github workflows, that
includes the following StdShar presets:
\li ci-StdShar-MSVC - use MSVC compiler
\li ci-StdShar-Clang - use Clang compiler
\li ci-StdShar-macos-Clang -Apple Clang compiler
\li ci-StdShar-GNUC - use GNU compiler
\li ci-StdShar-macos-GNUC - use Apple GNU compiler
\li ci-StdShar-GNUC-S3 - use GNU compiler with S3 support
\li ci-StdShar-Intel - use Intel OneAPI compiler
\li ci-StdShar-win-Intel - use Intel OneAPI compiler on Windows
The StdShar presets are used by the GitHub workflows to build and test the HDF5
library on different platforms and compilers. The
<a href="https://\SRCURL/CMakePresets.json"><tt>CMakePresets.json</tt></a> file is
located in the root directory of the HDF5 repository. The StdShar presets inherit
the following settings:
\li ci-CPP - enables C++ support
\li ci-Fortran - enables Fortran support, except on macOS
\li ci-Java - enables Java support
\li ci-StdShar - described below
The ci-StdShar preset inherits the following settings:
\li ci-StdCompression
\li ci-StdExamples
\li ci-StdPlugins
See the <a href="https://\SRCURL/CMakePresets.json"><tt>CMakePresets.json</tt></a>
file for the complete list of presets and settings. The
\ref subsec_cmake_presets_files_json_details section provides an overview of the default
settings for the StdShar presets.
\subsection subsec_cmake_presets_files_json_details Default CMakePresets.json Settings
The ci-StdShar preset sets the following cache variables:
\li "HDF_PACKAGE_NAMESPACE": {"type": "STRING", "value": "hdf5::"}
\li "HDF5_INSTALL_MOD_FORTRAN": "NO"
\li "HDF5_BUILD_GENERATORS": "ON"
\li "HDF5_ENABLE_ALL_WARNINGS": "ON"
\li "HDF5_MINGW_STATIC_GCC_LIBS": "ON"
\li "HDF_TEST_EXPRESS": "2"
The ci-StdExamples preset inherits the following settings:
\li ci-base
\li ci-base-tgz
The ci-StdExamples preset sets the following cache variables:
\li "HDF5_PACK_EXAMPLES": "ON"
\li "EXAMPLES_DOWNLOAD": "ON"
The ci-StdPlugins preset inherits the following settings:
\li ci-base-plugins
\li ci-PluginsVars
\li ci-base-tgz
The ci-StdPlugins preset sets the following cache variables:
\li "PLUGIN_USE_LOCALCONTENT": "OFF"
The ci-PluginsVars preset sets the following cache variables:
\li "HDF5_ENABLE_PLUGIN_SUPPORT": "ON"
\li "H5PL_ALLOW_EXTERNAL_SUPPORT": {"type": "STRING", "value": "TGZ"}
\li "PLUGIN_PACKAGE_NAME": {"type": "STRING", "value": "pl"}
\li "PLUGIN_TGZ_ORIGPATH": {"type": "STRING", "value": "https://github.com/HDFGroup/hdf5_plugins/releases/download/snapshot"}
\li "PLUGIN_TGZ_NAME": {"type": "STRING", "value": "hdf5_plugins-master.tar.gz"}
The ci-base-plugins preset sets the following cache variables:
\li "BSHUF_TGZ_NAME": {"type": "STRING", "value": "bitshuffle-0.5.2.tar.gz"}
\li "BSHUF_PACKAGE_NAME": {"type": "STRING", "value": "bshuf"}
\li "BLOSC_TGZ_NAME": {"type": "STRING", "value": "c-blosc-1.21.6.tar.gz"}
\li "BLOSC_PACKAGE_NAME": {"type": "STRING", "value": "blosc"}
\li "BLOSC_ZLIB_TGZ_NAME": {"type": "STRING", "value": "zlib-1.3.1.tar.gz"}
\li "BLOSC_ZLIB_PACKAGE_NAME": {"type": "STRING", "value": "zlib"}
\li "BLOSC2_TGZ_NAME": {"type": "STRING", "value": "c-blosc2-2.15.2.tar.gz"}
\li "BLOSC2_PACKAGE_NAME": {"type": "STRING", "value": "blosc2"}
\li "BLOSC2_ZLIB_TGZ_NAME": {"type": "STRING", "value": "zlib-1.3.1.tar.gz"}
\li "BLOSC2_ZLIB_PACKAGE_NAME": {"type": "STRING", "value": "zlib"}
\li "BZ2_TGZ_NAME": {"type": "STRING", "value": "bzip2-bzip2-1.0.8.tar.gz"}
\li "BZ2_PACKAGE_NAME": {"type": "STRING", "value": "bz2"}
\li "FPZIP_TGZ_NAME": {"type": "STRING", "value": "fpzip-1.3.0.tar.gz"}
\li "FPZIP_PACKAGE_NAME": {"type": "STRING", "value": "fpzip"}
\li "JPEG_TGZ_NAME": {"type": "STRING", "value": "jpegsrc.v9e.tar.gz"}
\li "JPEG_PACKAGE_NAME": {"type": "STRING", "value": "jpeg"}
\li "BUILD_LZ4_LIBRARY_SOURCE": "ON"
\li "LZ4_TGZ_NAME": {"type": "STRING", "value": "lz4-1.10.0.tar.gz"}
\li "LZ4_PACKAGE_NAME": {"type": "STRING", "value": "lz4"}
\li "LZF_TGZ_NAME": {"type": "STRING", "value": "liblzf-3.6.tar.gz"}
\li "LZF_PACKAGE_NAME": {"type": "STRING", "value": "lzf"}
\li "SZ_TGZ_NAME": {"type": "STRING", "value": "SZ-2.1.12.5.tar.gz"}
\li "SZ_PACKAGE_NAME": {"type": "STRING", "value": "SZ"}
\li "ZFP_TGZ_NAME": {"type": "STRING", "value": "zfp-1.0.1.tar.gz"}
\li "ZFP_PACKAGE_NAME": {"type": "STRING", "value": "zfp"}
\li "ZSTD_TGZ_NAME": {"type": "STRING", "value": "zstd-1.5.6.tar.gz"}
\li "ZSTD_PACKAGE_NAME": {"type": "STRING", "value": "zstd"}
The ci-StdCompression preset inherits the following settings:
\li ci-base-tgz
\li ci-CompressionVars
The ci-StdCompression preset sets the following cache variables:
\li "HDF5_PACKAGE_EXTLIBS": "ON"
\li "HDF5_USE_ZLIB_NG": "OFF"
\li "ZLIB_USE_LOCALCONTENT": "OFF"
\li "LIBAEC_USE_LOCALCONTENT": "OFF"
\li "HDF5_USE_ZLIB_STATIC": "ON"
\li "HDF5_USE_LIBAEC_STATIC": "ON"
The ci-CompressionVars preset sets the following cache variables:
\li "ZLIB_PACKAGE_NAME": {"type": "STRING", "value": "zlib"}
\li "ZLIB_TGZ_ORIGPATH": {"type": "STRING", "value": "https://github.com/madler/zlib/releases/download/v1.3.1"}
\li "ZLIB_TGZ_NAME": {"type": "STRING", "value": "zlib-1.3.1.tar.gz"}
\li "ZLIBNG_PACKAGE_NAME": {"type": "STRING", "value": "zlib-ng"}
\li "ZLIBNG_TGZ_ORIGPATH": {"type": "STRING", "value": "https://github.com/zlib-ng/zlib-ng/archive/refs/tags"}
\li "ZLIBNG_TGZ_NAME": {"type": "STRING", "value": "2.2.2.tar.gz"}
\li "LIBAEC_PACKAGE_NAME": {"type": "STRING", "value": "libaec"}
\li "LIBAEC_TGZ_ORIGPATH": {"type": "STRING", "value": "https://github.com/MathisRosenhauer/libaec/releases/download/v1.1.3"}
\li "LIBAEC_TGZ_NAME": {"type": "STRING", "value": "libaec-1.1.3.tar.gz"}
The ci-base-tgz preset inherits the following settings:
\li ci-base
The ci-base-tgz preset sets the following cache variables:
\li "HDF5_ALLOW_EXTERNAL_SUPPORT": {"type": "STRING", "value": "TGZ"}
\li "TGZPATH": {"type": "PATH", "value": "${sourceParentDir}/temp"}
The ci-base preset sets the following CMake variables:
\li "name": "ci-base"
\li "displayName": "Basic Config"
\li "description": "Basic build using Ninja generator"
\li "generator": "Ninja"
\li "binaryDir": "${sourceParentDir}/build/${presetName}"
\li "installDir": "${sourceParentDir}/install/${presetName}"
*/
+2 -2
View File
@@ -174,7 +174,7 @@ The following APIs were introduced to support this feature:
DCPL does or does not create minimized dataset object headers
\li #H5Pset_dset_no_attrs_hint - Sets the flag to create minimized dataset object headers
\subsubsection subsubsec_rel_spec_110_feat_new_5_parchg Parallel Library Change (RFC)
\subsubsection subsubsec_rel_spec_110_feat_new_5_parchg Parallel Library Change
A change was added to the default behavior in parallel when reading the same dataset in its
entirety (i.e. H5S_ALL dataset selection) which is being read by all the processes collectively.
@@ -376,7 +376,7 @@ otherwise described. The page includes the following sections:
RFCs for the new features in HDF5-1.10:
\li \ref_rfc20180620
\li \ref_rfc20181231
\li Parallel Library Change (RFC)(https://docs.hdfgroup.org/hdf5/develop/_r_f_c.html)
\li \ref subsubsec_rel_spec_110_feat_new_5_parchg
\li \ref_rfc20181220
\li \ref_rfc20160105
+2 -2
View File
@@ -2078,7 +2078,7 @@ SRB functionality is now supported through the mechanism described in SRB - The
\li H5Pget_fapl_srb
The stream virtual file driver (H5FD_STREAM) has been removed from the HDF5 distribution. The
functionality was last available from http://hdf5-addons.origo.ethz.ch/.
functionality was last available from <code>hdf5-addons.origo.ethz.ch/</code>.
\li H5Pset_fapl_stream
\li H5Pget_fapl_stream
@@ -2102,7 +2102,7 @@ Virtual File Driver Removed
The stream virtual file driver (H5FD_STREAM) have been removed in this release. This affects
the functions H5Pset_fapl_stream and H5Pget_fapl_stream and the constant H5FD_STREAM.
This virtual file driver will remain available at <code>http://hdf5-addons.origo.ethz.ch/</code>. Note that
This virtual file driver will remain available at <code>hdf5-addons.origo.ethz.ch/</code>. Note that
as of this writing, this transition is still in progress; the necessary integration tools may
not be available when HDF5 Release 1.8.0 first comes out.
+1 -1
View File
@@ -208,7 +208,7 @@ list the specific new feature that they were added for.
\subsubsection subsubsec_rel_spec_112_change_0versus10_6_compat API Compatibility
See API Compatibility Macros in HDF5 for details on using HDF5 version 1.12 with previous releases.
[Compatibility report for Release 1.12.0 versus Release 1.10.6](Compatibility report for Release 1.12.0 versus Release 1.10.6)
[Compatibility report for Release 1.12.0 versus Release 1.10.6]()
*/
+5 -1
View File
@@ -805,6 +805,8 @@ html.dark-mode iframe#MSearchResults {
#nav-tree .item {
height: var(--tree-item-height);
line-height: var(--tree-item-height);
overflow: hidden;
text-overflow: ellipsis;
}
#nav-tree .item > a:focus {
@@ -823,6 +825,8 @@ html.dark-mode iframe#MSearchResults {
background-image: none;
background-color: transparent;
position: relative;
color: var(--primary-color) !important;
font-weight: 500;
}
#nav-tree .selected::after {
@@ -1749,7 +1753,7 @@ table.fieldtable th {
color: var(--tablehead-foreground);
}
table.fieldtable td.fieldtype, .fieldtable td.fieldname, .fieldtable td.fielddoc, .fieldtable th {
table.fieldtable td.fieldtype, .fieldtable td.fieldname, .fieldtable td.fieldinit, .fieldtable td.fielddoc, .fieldtable th {
border-bottom: 1px solid var(--separator-color);
border-right: 1px solid var(--separator-color);
}
+169
View File
@@ -0,0 +1,169 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Creator: fig2dev Version 3.2.9 -->
<!-- CreationDate: 2023-11-17 17:06:33 -->
<!-- Magnification: 1 -->
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
width="929pt" height="314pt"
viewBox="1413 33 15474 5229">
<g fill="none">
<!-- Line -->
<rect x="1425" y="45" width="6600" height="5205" rx="105" fill="#f2f2f2"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<rect x="8100" y="45" width="8775" height="5205" rx="105" fill="#f2f2f2"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<rect x="4650" y="3735" width="3075" height="615" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<polyline points=" 8175,525 9525,525"
stroke="#000000" stroke-width="45px"/>
<!-- Line -->
<rect x="8325" y="2760" width="2475" height="615" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<defs>
<clipPath id="cp0">
<path clip-rule="evenodd" d="M 1413,33 H 16887 V 5262 H 1413 z
M 11230,1170 11260,1200 11230,1230 11407,1207 11407,1193z"/>
</clipPath>
</defs>
<polyline points=" 10760,1200 11400,1200" clip-path="url(#cp0)"
stroke="#000000" stroke-width="8px"/>
<!-- Forward arrow to point 11400,1200 -->
<polygon points=" 11230,1230 11380,1200 11230,1170 11260,1200 11230,1230"
stroke="#000000" stroke-width="8px" stroke-miterlimit="8" fill="#000000"/>
<!-- Line -->
<defs>
<clipPath id="cp1">
<path clip-rule="evenodd" d="M 1413,33 H 16887 V 5262 H 1413 z
M 11290,2070 11320,2100 11290,2130 11467,2107 11467,2093z"/>
</clipPath>
</defs>
<polyline points=" 10820,2100 11460,2100" clip-path="url(#cp1)"
stroke="#000000" stroke-width="8px"/>
<!-- Forward arrow to point 11460,2100 -->
<polygon points=" 11290,2130 11440,2100 11290,2070 11320,2100 11290,2130"
stroke="#000000" stroke-width="8px" stroke-miterlimit="8" fill="#000000"/>
<!-- Line -->
<defs>
<clipPath id="cp2">
<path clip-rule="evenodd" d="M 1413,33 H 16887 V 5262 H 1413 z
M 11260,3045 11290,3075 11260,3105 11437,3082 11437,3068z"/>
</clipPath>
</defs>
<polyline points=" 10790,3075 11430,3075" clip-path="url(#cp2)"
stroke="#000000" stroke-width="8px"/>
<!-- Forward arrow to point 11430,3075 -->
<polygon points=" 11260,3105 11410,3075 11260,3045 11290,3075 11260,3105"
stroke="#000000" stroke-width="8px" stroke-miterlimit="8" fill="#000000"/>
<!-- Line -->
<rect x="1500" y="60" width="2625" height="3315" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<defs>
<clipPath id="cp3">
<path clip-rule="evenodd" d="M 1413,33 H 16887 V 5262 H 1413 z
M 5805,1240 5775,1270 5745,1240 5768,1417 5782,1417z"/>
</clipPath>
</defs>
<polyline points=" 5775,960 5775,1410" clip-path="url(#cp3)"
stroke="#000000" stroke-width="8px"/>
<!-- Forward arrow to point 5775,1410 -->
<polygon points=" 5745,1240 5775,1390 5805,1240 5775,1270 5745,1240"
stroke="#000000" stroke-width="8px" stroke-miterlimit="8" fill="#000000"/>
<!-- Line -->
<defs>
<clipPath id="cp4">
<path clip-rule="evenodd" d="M 1413,33 H 16887 V 5262 H 1413 z
M 5700,3535 5670,3565 5640,3535 5663,3712 5677,3712z"/>
</clipPath>
</defs>
<polyline points=" 5670,3255 5670,3705" clip-path="url(#cp4)"
stroke="#000000" stroke-width="8px"/>
<!-- Forward arrow to point 5670,3705 -->
<polygon points=" 5640,3535 5670,3685 5700,3535 5670,3565 5640,3535"
stroke="#000000" stroke-width="8px" stroke-miterlimit="8" fill="#000000"/>
<!-- Line -->
<rect x="11460" y="870" width="2760" height="630" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<rect x="11445" y="1800" width="2805" height="630" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<rect x="4725" y="360" width="2250" height="600" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<rect x="4710" y="1425" width="2250" height="600" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<rect x="4650" y="2610" width="3075" height="615" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Text -->
<text xml:space="preserve" x="4740" y="3000" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5fort_type_defines.h.in</text>
<!-- Line -->
<defs>
<clipPath id="cp5">
<path clip-rule="evenodd" d="M 1413,33 H 16887 V 5262 H 1413 z
M 4480,645 4510,675 4480,705 4657,682 4657,668z"/>
</clipPath>
</defs>
<polyline points=" 4125,675 4650,675" clip-path="url(#cp5)"
stroke="#000000" stroke-width="8px"/>
<!-- Forward arrow to point 4650,675 -->
<polygon points=" 4480,705 4630,675 4480,645 4510,675 4480,705"
stroke="#000000" stroke-width="8px" stroke-miterlimit="8" fill="#000000"/>
<!-- Line -->
<defs>
<clipPath id="cp6">
<path clip-rule="evenodd" d="M 1413,33 H 16887 V 5262 H 1413 z
M 4405,2745 4435,2775 4405,2805 4582,2782 4582,2768z"/>
</clipPath>
</defs>
<polyline points=" 4125,2775 4575,2775" clip-path="url(#cp6)"
stroke="#000000" stroke-width="8px"/>
<!-- Forward arrow to point 4575,2775 -->
<polygon points=" 4405,2805 4555,2775 4405,2745 4435,2775 4405,2805"
stroke="#000000" stroke-width="8px" stroke-miterlimit="8" fill="#000000"/>
<!-- Text -->
<text xml:space="preserve" x="4815" y="750" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5config_f.inc.in</text>
<!-- Text -->
<text xml:space="preserve" x="4815" y="1815" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5config_f.inc</text>
<!-- Line -->
<rect x="8310" y="840" width="2490" height="1560" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<rect x="11475" y="2775" width="2790" height="600" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<rect x="11475" y="3525" width="5250" height="600" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Line -->
<rect x="11475" y="4275" width="5250" height="675" rx="105" fill="#e5e5e5"
stroke="#000000" stroke-width="8px"/>
<!-- Text -->
<text xml:space="preserve" x="8250" y="450" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="288" text-anchor="start">BUILD</text>
<!-- Text -->
<text xml:space="preserve" x="1575" y="1725" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="288" text-anchor="start">CONFIGURE</text>
<!-- Text -->
<text xml:space="preserve" x="8550" y="3150" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5_buildiface.F90</text>
<!-- Text -->
<text xml:space="preserve" x="8640" y="1680" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5match_types.c</text>
<!-- Text -->
<text xml:space="preserve" x="11550" y="2175" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5fortran_types.F90</text>
<!-- Text -->
<text xml:space="preserve" x="11550" y="1275" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5f90i_gen.h</text>
<!-- Text -->
<text xml:space="preserve" x="11550" y="3150" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5_gen.F90</text>
<!-- Text -->
<text xml:space="preserve" x="11550" y="3900" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5[A,D,S,T,E,ES,F,Z,G,I,L,O,P,R,VL]ff.F90</text>
<!-- Text -->
<text xml:space="preserve" x="11550" y="4725" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5[A,D,S,T,E,ES,F,Z,G,I,L,O,P,R,VL]f.c</text>
<!-- Line -->
<polyline points=" 1500,1800 4050,1800"
stroke="#000000" stroke-width="45px"/>
<!-- Text -->
<text xml:space="preserve" x="4800" y="4125" fill="#000000" font-family="Times" font-style="normal" font-weight="bold" font-size="192" text-anchor="start">H5fort_type_defines.h</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.0 KiB

+2 -4
View File
@@ -1386,8 +1386,7 @@ H5_HLDLL herr_t H5LTget_attribute_info(hid_t loc_id, const char *obj_name, const
* \p lang_type definition of HDF5 datatypes.
* Currently, only the DDL(#H5LT_DDL) is supported.
* The complete DDL definition of HDF5 datatypes can be found in
* the specifications chapter of the
* <a href="https://\DOXURL/_s_p_e_c.html">
* the \ref SPEC chapter of the
* HDF5 User's Guide</a>.
*
* \par Example
@@ -1424,8 +1423,7 @@ H5_HLDLL hid_t H5LTtext_to_dtype(const char *text, H5LT_lang_t lang_type);
*
* Currently only DDL (#H5LT_DDL) is supported for \p lang_type.
* The complete DDL definition of HDF5 data types can be found in
* the specifications chapter of the
* <a href="https://\DOXURL/_s_p_e_c.html">
* the \ref SPEC chapter of the
* HDF5 User's Guide</a>.
*
* \par Example
+1 -1
View File
@@ -559,7 +559,7 @@ typedef struct H5AC_cache_config_t {
* The value must lie in the interval [0.0, 1.0]. 0.01 is a good place to
* start in the serial case. In the parallel case, a larger value is needed
* -- see the overview of the metadata cache in the
* “Metadata Caching in HDF5” section of the -- <em>\ref UG</em>
* \ref TNMDC section of the -- <em>\ref UG</em>
* for details. */
size_t max_size;
+4 -4
View File
@@ -1170,7 +1170,7 @@ H5_DLL herr_t H5Fget_mdc_size(hid_t file_id, size_t *max_size_ptr, size_t *min_c
* is enabled. However, the call should be useful if you choose to control metadata cache size from your
* program.
*
* See \ref_mdc_in_hdf5 for details about the metadata cache and the adaptive cache resizing
* See \ref TNMDC for details about the metadata cache and the adaptive cache resizing
* algorithms. If you have not read, understood, and thought about the material covered in that
* documentation,
* you should not be using this API call.
@@ -1506,7 +1506,7 @@ H5_DLL herr_t H5Fset_libver_bounds(hid_t file_id, H5F_libver_t low, H5F_libver_t
* list, and H5Fget_mdc_logging_status() will return the current state of
* the logging flags.
*
* The log format is described in the \ref_mdc_logging document.
* The log format is described in the \ref_rfc20140224 document.
*
* \note Logging can only be started or stopped if metadata cache logging was enabled
* via H5Pset_mdc_log_options().\n
@@ -1556,7 +1556,7 @@ H5_DLL herr_t H5Fstart_mdc_logging(hid_t file_id);
* list, and H5Fget_mdc_logging_status() will return the current state of
* the logging flags.
*
* The log format is described in the \ref_mdc_logging document.
* The log format is described in the \ref_rfc20140224 document.
*
* \note Logging can only be started or stopped if metadata cache logging was enabled
* via H5Pset_mdc_log_options().\n
@@ -1602,7 +1602,7 @@ H5_DLL herr_t H5Fstop_mdc_logging(hid_t file_id);
* list, and H5Fget_mdc_logging_status() will return the current state of
* the logging flags.
*
* The log format is described in the \ref_mdc_logging document.
* The log format is described in the \ref_rfc20140224 document.
*
* \note Unlike H5Fstart_mdc_logging() and H5Fstop_mdc_logging(), this function can
* be called on any open file identifier.
+1 -1
View File
@@ -923,7 +923,7 @@ H5_DLL herr_t H5Odecr_refcount(hid_t object_id);
* - H5Pset_copy_object()
* - H5Pset_create_intermediate_group()
* - H5Pset_mcdt_search_cb()
* - Copying Committed Datatypes with #H5Ocopy - A comprehensive
* - \ref copying_committed - A comprehensive
* discussion of copying committed datatypes (PDF) in
* Advanced Topics in HDF5
*
+2 -2
View File
@@ -43,8 +43,8 @@
* available on the system in a default location. The HDF5 filter plugin is discussed in detail in the
* \ref subsec_filter_plugins_prog section.
*
* \subsubsection subsubsec_filter_plugins_model_apply Applying a Third-party Filter When Creating and Writing
* a Dataset A third-party filter can be added to the HDF5 filter pipeline by using the H5Pset_filter
* \subsubsection sssec_filt_pl_model_apply Applying a Third-party Filter When Creating and Writing a Dataset
* A third-party filter can be added to the HDF5 filter pipeline by using the H5Pset_filter
* function, as a user would do in the past. The identification number and the filter parameters should be
* available to the application. For example, if the application intends to apply the HDF5 bzip2 compression
* filter that was registered with The HDF Group and has an identification number 307
+5 -5
View File
@@ -3913,7 +3913,7 @@ H5_DLL herr_t H5Pget_mdc_image_config(hid_t plist_id, H5AC_cache_image_config_t
* access property list, and H5Fget_mdc_logging_status() will return
* the current state of the logging flags.
*
* The log format is described in the \ref_mdc_logging document.
* The log format is described in the \ref_rfc20140224 document.
*
* \since 1.10.0
*/
@@ -9644,7 +9644,7 @@ H5_DLL herr_t H5Pset_nlinks(hid_t plist_id, size_t nlinks);
* \li H5Pget_mcdt_search_cb()
* \li H5Pset_copy_object()
* \li H5Pset_mcdt_search_cb()
* \li \ref_h5ocopy
* \li \ref copying_committed
*
* \since 1.8.9
*
@@ -9758,7 +9758,7 @@ H5_DLL herr_t H5Pget_copy_object(hid_t plist_id, unsigned *copy_options /*out*/)
* \li H5Pget_mcdt_search_cb()
* \li H5Pset_copy_object()
* \li H5Pset_mcdt_search_cb()
* \li \ref_h5ocopy
* \li \ref copying_committed
*
* \since 1.8.9
*
@@ -9849,7 +9849,7 @@ H5_DLL herr_t H5Pget_mcdt_search_cb(hid_t plist_id, H5O_mcdt_search_cb_t *func,
* \li H5Pget_mcdt_search_cb()
* \li H5Pset_copy_object()
* \li H5Pset_mcdt_search_cb()
* \li \ref_h5ocopy
* \li \ref copying_committed
*
* \version 1.8.9 #H5O_COPY_MERGE_COMMITTED_DTYPE_FLAG added in this release.
*
@@ -9936,7 +9936,7 @@ H5_DLL herr_t H5Pset_copy_object(hid_t plist_id, unsigned copy_options);
* \li H5Pget_mcdt_search_cb()
* \li H5Pset_copy_object()
* \li H5Pset_mcdt_search_cb()
* \li \ref_h5ocopy
* \li \ref copying_committed
*
* \since 1.8.9
*
+1 -1
View File
@@ -410,7 +410,7 @@ H5_DLL hid_t H5Sdecode(const void *buf);
*
* \note Motivation: This function was introduced in HDF5-1.12 as part of the
* H5Sencode() format change to enable 64-bit selection encodings and
* a dataspace selection that is tied to a file. See the \ref_news_112
* a dataspace selection that is tied to a file. See the \ref sec_rel_spec_112_feat
* as well as the \ref_sencode_fmt_change.
*
* \since 1.12.0
+1 -1
View File
@@ -3679,7 +3679,7 @@ filled according to the value of this property. The padding can be:
* datatype object. This saves space and makes clear that the datatype is shared. Note that a
* committed datatype can be shared by objects within the same HDF5 file, but not by objects in
* other files. For more information on copying committed datatypes to other HDF5 files, see the
* “Copying Committed Datatypes with H5Ocopy” topic in the “Additional Resources” chapter.
* \ref copying_committed topic in the “Additional Resources” chapter.
*
* A committed datatype can be deleted from the file by calling #H5Ldelete which replaces
* #H5Gunlink. See item i in the figure below. If one or more objects are still using the datatype, the
+1 -1
View File
@@ -39,7 +39,7 @@
/* The maximum size allowed for blobs */
#define H5VL_MAX_BLOB_ID_SIZE (16) /* Allow for 128-bits blob IDs */
/** # of optional operations reserved for the native VOL connector \since 1.14.0 */
/** The number of optional operations reserved for the native VOL connector \since 1.14.0 */
#define H5VL_RESERVED_NATIVE_OPTIONAL 1024
/*******************/