Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reorg and update options for doc and cmake config #3934

Merged
merged 2 commits into from
Jan 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,7 @@ set (HDF5_CPP_TST_DIR ${HDF5_SOURCE_DIR}/c++/test)
set (HDF5_HL_SRC_DIR ${HDF5_SOURCE_DIR}/hl)
set (HDF5_HL_CPP_SRC_DIR ${HDF5_SOURCE_DIR}/hl/c++)
set (HDF5_HL_TOOLS_DIR ${HDF5_SOURCE_DIR}/hl/tools)
set (HDF5_TOOLS_ROOT_DIR ${HDF5_SOURCE_DIR}/tools)
set (HDF5_TOOLS_ROOT_DIR ${HDF5_SOURCE_DIR}/tools)
set (HDF5_TOOLS_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src)
set (HDF5_TOOLS_TST_DIR ${HDF5_SOURCE_DIR}/tools/test)
set (HDF5_PERFORM_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src/perform)
Expand Down
39 changes: 22 additions & 17 deletions config/cmake/hdf5-config.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -33,39 +33,42 @@ set (${HDF5_PACKAGE_NAME}_VALID_COMPONENTS
# User Options
#-----------------------------------------------------------------------------
# Languages:
#-----------------------------------------------------------------------------
set (${HDF5_PACKAGE_NAME}_BUILD_FORTRAN @HDF5_BUILD_FORTRAN@)
set (${HDF5_PACKAGE_NAME}_BUILD_CPP_LIB @HDF5_BUILD_CPP_LIB@)
set (${HDF5_PACKAGE_NAME}_BUILD_JAVA @HDF5_BUILD_JAVA@)
set (${HDF5_PACKAGE_NAME}_INSTALL_MOD_FORTRAN "@HDF5_INSTALL_MOD_FORTRAN@")
#-----------------------------------------------------------------------------
# Features:
set (${HDF5_PACKAGE_NAME}_ENABLE_PARALLEL @HDF5_ENABLE_PARALLEL@)
set (${HDF5_PACKAGE_NAME}_PARALLEL_FILTERED_WRITES @PARALLEL_FILTERED_WRITES@)
set (${HDF5_PACKAGE_NAME}_LARGE_PARALLEL_IO @LARGE_PARALLEL_IO@)
#-----------------------------------------------------------------------------
set (${HDF5_PACKAGE_NAME}_BUILD_HL_LIB @HDF5_BUILD_HL_LIB@)
set (${HDF5_PACKAGE_NAME}_BUILD_DIMENSION_SCALES_WITH_NEW_REF @DIMENSION_SCALES_WITH_NEW_REF@)
set (${HDF5_PACKAGE_NAME}_BUILD_TOOLS @HDF5_BUILD_TOOLS@)
set (${HDF5_PACKAGE_NAME}_BUILD_HL_GIF_TOOLS @HDF5_BUILD_HL_GIF_TOOLS@)
set (${HDF5_PACKAGE_NAME}_BUILD_SHARED_LIBS @H5_ENABLE_SHARED_LIB@)
set (${HDF5_PACKAGE_NAME}_BUILD_STATIC_LIBS @H5_ENABLE_STATIC_LIB@)
set (${HDF5_PACKAGE_NAME}_ENABLE_THREADSAFE @HDF5_ENABLE_THREADSAFE@)
set (${HDF5_PACKAGE_NAME}_ENABLE_PARALLEL @HDF5_ENABLE_PARALLEL@)
set (${HDF5_PACKAGE_NAME}_DEFAULT_API_VERSION "@DEFAULT_API_VERSION@")
set (${HDF5_PACKAGE_NAME}_ENABLE_DEPRECATED_SYMBOLS @HDF5_ENABLE_DEPRECATED_SYMBOLS@)
set (${HDF5_PACKAGE_NAME}_BUILD_DIMENSION_SCALES_WITH_NEW_REF @DIMENSION_SCALES_WITH_NEW_REF@)
#-----------------------------------------------------------------------------
set (${HDF5_PACKAGE_NAME}_BUILD_TOOLS @HDF5_BUILD_TOOLS@)
set (${HDF5_PACKAGE_NAME}_BUILD_HL_GIF_TOOLS @HDF5_BUILD_HL_GIF_TOOLS@)
#-----------------------------------------------------------------------------
set (${HDF5_PACKAGE_NAME}_ENABLE_Z_LIB_SUPPORT @HDF5_ENABLE_Z_LIB_SUPPORT@)
set (${HDF5_PACKAGE_NAME}_ENABLE_SZIP_SUPPORT @HDF5_ENABLE_SZIP_SUPPORT@)
set (${HDF5_PACKAGE_NAME}_ENABLE_SZIP_ENCODING @HDF5_ENABLE_SZIP_ENCODING@)
set (${HDF5_PACKAGE_NAME}_ENABLE_MAP_API @H5_HAVE_MAP_API@)
set (${HDF5_PACKAGE_NAME}_ENABLE_DIRECT_VFD @H5_HAVE_DIRECT@)
set (${HDF5_PACKAGE_NAME}_ENABLE_MIRROR_VFD @H5_HAVE_MIRROR_VFD@)
set (${HDF5_PACKAGE_NAME}_ENABLE_SUBFILING_VFD @HDF5_ENABLE_SUBFILING_VFD@)
#-----------------------------------------------------------------------------
set (${HDF5_PACKAGE_NAME}_ENABLE_MAP_API @HDF5_ENABLE_MAP_API@)
set (${HDF5_PACKAGE_NAME}_ENABLE_DIRECT_VFD @HDF5_ENABLE_DIRECT_VFD@)
set (${HDF5_PACKAGE_NAME}_ENABLE_MIRROR_VFD @HDF5_ENABLE_MIRROR_VFD@)
set (${HDF5_PACKAGE_NAME}_ENABLE_ROS3_VFD @HDF5_ENABLE_ROS3_VFD@)
set (${HDF5_PACKAGE_NAME}_ENABLE_HDFS_VFD @H5_HAVE_LIBHDFS@)
set (${HDF5_PACKAGE_NAME}_ENABLE_HDFS_VFD @HDF5_ENABLE_HDFS@)
set (${HDF5_PACKAGE_NAME}_ENABLE_SUBFILING_VFD @HDF5_ENABLE_SUBFILING_VFD@)
set (${HDF5_PACKAGE_NAME}_ENABLE_PLUGIN_SUPPORT @HDF5_ENABLE_PLUGIN_SUPPORT@)
#-----------------------------------------------------------------------------
set (${HDF5_PACKAGE_NAME}_BUILD_SHARED_LIBS @H5_ENABLE_SHARED_LIB@)
set (${HDF5_PACKAGE_NAME}_BUILD_STATIC_LIBS @H5_ENABLE_STATIC_LIB@)
set (${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS @HDF5_PACKAGE_EXTLIBS@)
set (${HDF5_PACKAGE_NAME}_EXPORT_LIBRARIES @HDF5_LIBRARIES_TO_EXPORT@)
set (${HDF5_PACKAGE_NAME}_ARCHITECTURE "@CMAKE_GENERATOR_ARCHITECTURE@")
set (${HDF5_PACKAGE_NAME}_TOOLSET "@CMAKE_GENERATOR_TOOLSET@")
set (${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS @HDF5_PACKAGE_EXTLIBS@)
set (${HDF5_PACKAGE_NAME}_EXPORT_LIBRARIES @HDF5_LIBRARIES_TO_EXPORT@)
set (${HDF5_PACKAGE_NAME}_ARCHITECTURE "@CMAKE_GENERATOR_ARCHITECTURE@")
set (${HDF5_PACKAGE_NAME}_TOOLSET "@CMAKE_GENERATOR_TOOLSET@")

#-----------------------------------------------------------------------------
# Dependencies
Expand All @@ -77,6 +80,8 @@ if (${HDF5_PACKAGE_NAME}_ENABLE_PARALLEL)
set (${HDF5_PACKAGE_NAME}_MPI_Fortran_INCLUDE_PATH "@MPI_Fortran_INCLUDE_DIRS@")
set (${HDF5_PACKAGE_NAME}_MPI_Fortran_LIBRARIES "@MPI_Fortran_LIBRARIES@")
endif ()
set (${HDF5_PACKAGE_NAME}_PARALLEL_FILTERED_WRITES @PARALLEL_FILTERED_WRITES@)
set (${HDF5_PACKAGE_NAME}_LARGE_PARALLEL_IO @LARGE_PARALLEL_IO@)

find_package(MPI QUIET REQUIRED)
endif ()
Expand Down
28 changes: 19 additions & 9 deletions release_docs/INSTALL_CMake.txt
Original file line number Diff line number Diff line change
Expand Up @@ -809,6 +809,8 @@ else ()
HDF5_INSTALL_DATA_DIR "share"
HDF5_INSTALL_DOC_DIR "HDF5_INSTALL_DATA_DIR"

HDF5_USE_GNU_DIRS "TRUE to use GNU Coding Standard install directory variables,
FALSE to use historical settings" FALSE
Defaults as defined by the `GNU Coding Standards`
HDF5_INSTALL_BIN_DIR "bin"
HDF5_INSTALL_LIB_DIR "lib"
Expand All @@ -819,26 +821,27 @@ HDF5_INSTALL_DATA_DIR "share"
HDF5_INSTALL_DOC_DIR "HDF5_INSTALL_DATA_DIR/doc/hdf5"

---------------- HDF5 Advanced Options ---------------------
HDF5_USE_GNU_DIRS "TRUE to use GNU Coding Standard install directory variables,
FALSE to use historical settings" FALSE
ONLY_SHARED_LIBS "Only Build Shared Libraries" OFF
ALLOW_UNSUPPORTED "Allow unsupported combinations of configure options" OFF
HDF5_ENABLE_PARALLEL "Enable parallel build (requires MPI)" OFF
HDF5_ENABLE_THREADSAFE "Enable Threadsafety" OFF
HDF5_DIMENSION_SCALES_NEW_REF "Use new-style references with dimension scale APIs" OFF
HDF5_EXTERNAL_LIB_PREFIX "Use prefix for custom library naming." ""

HDF5_DISABLE_COMPILER_WARNINGS "Disable compiler warnings" OFF
HDF5_ENABLE_ALL_WARNINGS "Enable all warnings" OFF
HDF5_SHOW_ALL_WARNINGS "Show all warnings (i.e. not suppress "noisy" ones internally)" OFF
HDF5_ENABLE_CODESTACK "Enable the function stack tracing (for developer debugging)." OFF
HDF5_ENABLE_COVERAGE "Enable code coverage for Libraries and Programs" OFF
HDF5_ENABLE_DEBUG_APIS "Turn on extra debug output in all packages" OFF
HDF5_ENABLE_DEPRECATED_SYMBOLS "Enable deprecated public API symbols" ON
HDF5_ENABLE_DIRECT_VFD "Build the Direct I/O Virtual File Driver" OFF
HDF5_ENABLE_EMBEDDED_LIBINFO "embed library info into executables" ON
HDF5_ENABLE_PARALLEL "Enable parallel build (requires MPI)" OFF
HDF5_ENABLE_PREADWRITE "Use pread/pwrite in sec2/log/core VFDs in place of read/write (when available)" ON
HDF5_ENABLE_TRACE "Enable API tracing capability" OFF
HDF5_ENABLE_USING_MEMCHECKER "Indicate that a memory checker is used" OFF
HDF5_GENERATE_HEADERS "Rebuild Generated Files" ON
HDF5_BUILD_GENERATORS "Build Test Generators" OFF

HDF5_JAVA_PACK_JRE "Package a JRE installer directory" OFF
HDF5_NO_PACKAGES "Do not include CPack Packaging" OFF
HDF5_PACK_EXAMPLES "Package the HDF5 Library Examples Compressed File" OFF
Expand All @@ -847,11 +850,11 @@ HDF5_BUILD_FRAMEWORKS "TRUE to build as frameworks libraries,
FALSE to build according to BUILD_SHARED_LIBS" FALSE
HDF5_PACKAGE_EXTLIBS "CPACK - include external libraries" OFF
HDF5_STRICT_FORMAT_CHECKS "Whether to perform strict file format checks" OFF
DEFAULT_API_VERSION "Enable default API (v16, v18, v110, v112, v114, v116)" "v116"
HDF5_USE_FOLDERS "Enable folder grouping of projects in IDEs." ON
HDF5_WANT_DATA_ACCURACY "IF data accuracy is guaranteed during data conversions" ON
HDF5_WANT_DCONV_EXCEPTION "exception handling functions is checked during data conversions" ON
HDF5_ENABLE_THREADSAFE "Enable Threadsafety" OFF

DEFAULT_API_VERSION "Enable default API (v16, v18, v110, v112, v114, v116)" "v116"
HDF5_USE_FOLDERS "Enable folder grouping of projects in IDEs." ON
HDF5_MSVC_NAMING_CONVENTION "Use MSVC Naming conventions for Shared Libraries" OFF
HDF5_MINGW_STATIC_GCC_LIBS "Statically link libgcc/libstdc++" OFF
if (APPLE)
Expand All @@ -864,13 +867,20 @@ if (HDF5_BUILD_FORTRAN)
if (BUILD_SHARED_LIBS AND NOT BUILD_STATIC_LIBS) default HDF5_INSTALL_MOD_FORTRAN is SHARED
if (NOT BUILD_SHARED_LIBS AND BUILD_STATIC_LIBS) default HDF5_INSTALL_MOD_FORTRAN is STATIC
if (NOT BUILD_SHARED_LIBS AND NOT BUILD_STATIC_LIBS) default HDF5_INSTALL_MOD_FORTRAN is SHARED
HDF5_BUILD_DOC "Build documentation" OFF

HDF5_ENABLE_ANALYZER_TOOLS "enable the use of Clang tools" OFF
HDF5_ENABLE_SANITIZERS "execute the Clang sanitizer" OFF
HDF5_ENABLE_FORMATTERS "format source files" OFF
HDF5_DIMENSION_SCALES_NEW_REF "Use new-style references with dimension scale APIs" OFF
HDF5_BUILD_DOC "Build documentation" OFF
HDF5_ENABLE_DOXY_WARNINGS "Enable fail if doxygen parsing has warnings." ON

---------------- HDF5 VFD Options ---------------------
HDF5_ENABLE_DIRECT_VFD "Build the Direct I/O Virtual File Driver" OFF
HDF5_ENABLE_MIRROR_VFD "Build the Mirror Virtual File Driver" OFF
HDF5_ENABLE_ROS3_VFD "Build the ROS3 Virtual File Driver" OFF
HDF5_ENABLE_HDFS "Enable HDFS" OFF
HDF5_ENABLE_SUBFILING_VFD "Build Parallel HDF5 Subfiling VFD" OFF

---------------- HDF5 Advanced Test Options ---------------------
if (BUILD_TESTING)
HDF5_TEST_SERIAL "Execute non-parallel tests" ON
Expand Down