summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAllen Byrne <50328838+byrnHDF@users.noreply.github.com>2021-09-16 17:15:25 (GMT)
committerGitHub <noreply@github.com>2021-09-16 17:15:25 (GMT)
commitc0f2bc87aca0ddfed4bbf1a75dda5ea71b6617eb (patch)
tree9db02def5d5567804d3c8f8bf615ed07f3b6d3ba
parentdaeb4454f6d8b72d5fab6a78546859b2182bd248 (diff)
downloadhdf5-c0f2bc87aca0ddfed4bbf1a75dda5ea71b6617eb.zip
hdf5-c0f2bc87aca0ddfed4bbf1a75dda5ea71b6617eb.tar.gz
hdf5-c0f2bc87aca0ddfed4bbf1a75dda5ea71b6617eb.tar.bz2
HDFFV-11266 - add option to build HL tools (#1018)
* HDFFV-11266 - add option to build HL tools * Correct if syntax * Correct name of conditional
-rw-r--r--config/cmake/hdf5-config.cmake.in1
-rw-r--r--config/cmake/libhdf5.settings.cmake.in1
-rw-r--r--configure.ac20
-rw-r--r--hl/CMakeLists.txt12
-rw-r--r--hl/Makefile.am5
-rw-r--r--release_docs/INSTALL_CMake.txt1
-rw-r--r--release_docs/RELEASE.txt12
7 files changed, 47 insertions, 5 deletions
diff --git a/config/cmake/hdf5-config.cmake.in b/config/cmake/hdf5-config.cmake.in
index 4d02c9c..8faa2fe 100644
--- a/config/cmake/hdf5-config.cmake.in
+++ b/config/cmake/hdf5-config.cmake.in
@@ -38,6 +38,7 @@ set (${HDF5_PACKAGE_NAME}_BUILD_CPP_LIB @HDF5_BUILD_CPP_LIB@)
set (${HDF5_PACKAGE_NAME}_BUILD_JAVA @HDF5_BUILD_JAVA@)
set (${HDF5_PACKAGE_NAME}_BUILD_TOOLS @HDF5_BUILD_TOOLS@)
set (${HDF5_PACKAGE_NAME}_BUILD_HL_LIB @HDF5_BUILD_HL_LIB@)
+set (${HDF5_PACKAGE_NAME}_BUILD_HL_TOOLS @HDF5_BUILD_HL_TOOLS@)
set (${HDF5_PACKAGE_NAME}_ENABLE_THREADSAFE @HDF5_ENABLE_THREADSAFE@)
set (${HDF5_PACKAGE_NAME}_ENABLE_PLUGIN_SUPPORT @HDF5_ENABLE_PLUGIN_SUPPORT@)
set (${HDF5_PACKAGE_NAME}_ENABLE_Z_LIB_SUPPORT @HDF5_ENABLE_Z_LIB_SUPPORT@)
diff --git a/config/cmake/libhdf5.settings.cmake.in b/config/cmake/libhdf5.settings.cmake.in
index ebcbd61..eb83c3a 100644
--- a/config/cmake/libhdf5.settings.cmake.in
+++ b/config/cmake/libhdf5.settings.cmake.in
@@ -70,6 +70,7 @@ Parallel Filtered Dataset Writes: @PARALLEL_FILTERED_WRITES@
High-level library: @HDF5_BUILD_HL_LIB@
Build HDF5 Tests: @BUILD_TESTING@
Build HDF5 Tools: @HDF5_BUILD_TOOLS@
+ Build High-level HDF5 Tools: @HDF5_BUILD_HL_TOOLS@
Threadsafety: @HDF5_ENABLE_THREADSAFE@
Default API mapping: @DEFAULT_API_VERSION@
With deprecated public symbols: @HDF5_ENABLE_DEPRECATED_SYMBOLS@
diff --git a/configure.ac b/configure.ac
index bc2358f..eb101cb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -786,6 +786,7 @@ AC_LANG_POP(C++)
## This needs to be exposed for the library info file even if the HL
## library is disabled.
AC_SUBST([HDF5_HL])
+AC_SUBST([HDF5_HL_TOOLS])
## The high-level library is enabled unless the build mode is clean.
if test "X-$BUILD_MODE" = "X-clean" ; then
@@ -802,6 +803,9 @@ HL=""
## Fortran high-level library
AC_SUBST(HL_FOR)
HL_FOR=""
+## Tools high-level library
+AC_SUBST(HL_TOOLS)
+HL_TOOLS=""
AC_MSG_CHECKING([if the high-level library is enabled])
AC_ARG_ENABLE([hl],
@@ -820,6 +824,21 @@ else
AC_MSG_RESULT([no])
fi
+AC_MSG_CHECKING([if the high-level tools are enabled])
+AC_ARG_ENABLE([hltools],
+ [AS_HELP_STRING([--enable-hltools],
+ [Enable the high-level tools.
+ [default=yes)]
+ ])],
+ [HDF5_HL_TOOLS=$enableval])
+
+if test "X${HDF5_HL}" = "Xyes" -a "X-$HDF5_HL_TOOLS" = "X-yes"; then
+ AC_MSG_RESULT([yes])
+ HL_TOOLS="tools"
+else
+ AC_MSG_RESULT([no])
+fi
+
## ----------------------------------------------------------------------
## Check which archiving tool to use. This needs to be done before
@@ -3850,6 +3869,7 @@ AM_CONDITIONAL([BUILD_HDF5_HL_CONDITIONAL], [test "X$HDF5_HL" = "Xyes"])
AM_CONDITIONAL([BUILD_TESTS_CONDITIONAL], [test "X$HDF5_TESTS" = "Xyes"])
AM_CONDITIONAL([BUILD_TESTS_PARALLEL_CONDITIONAL], [test -n "$TESTPARALLEL"])
AM_CONDITIONAL([BUILD_TOOLS_CONDITIONAL], [test "X$HDF5_TOOLS" = "Xyes"])
+AM_CONDITIONAL([BUILD_TOOLS_HL_CONDITIONAL], [test "X$HDF5_HL_TOOLS" = "Xyes"])
AM_CONDITIONAL([BUILD_DOXYGEN_CONDITIONAL], [test "X$HDF5_DOXYGEN" = "Xyes"])
## ----------------------------------------------------------------------
diff --git a/hl/CMakeLists.txt b/hl/CMakeLists.txt
index 083c60e..5061c6c 100644
--- a/hl/CMakeLists.txt
+++ b/hl/CMakeLists.txt
@@ -7,9 +7,17 @@ project (HDF5_HL C)
add_subdirectory (src)
-#-- Build the High level Tools
+# Build HDF5 Tools
if (HDF5_BUILD_TOOLS)
- add_subdirectory (tools)
+ #-----------------------------------------------------------------------------
+ #-- Option to build the High level Tools
+ #-----------------------------------------------------------------------------
+ if (EXISTS "${HDF5_HL_SOURCE_DIR}/tools" AND IS_DIRECTORY "${HDF5_HL_SOURCE_DIR}/tools")
+ option (HDF5_BUILD_HL_TOOLS "Build HDF5 HL Tools" ON)
+ if (HDF5_BUILD_HL_TOOLS)
+ add_subdirectory (tools)
+ endif ()
+ endif ()
endif ()
#-- Add High Level Examples
diff --git a/hl/Makefile.am b/hl/Makefile.am
index 9bf209e..8c427d3 100644
--- a/hl/Makefile.am
+++ b/hl/Makefile.am
@@ -37,16 +37,19 @@ else
TEST_DIR =
endif
if BUILD_TOOLS_CONDITIONAL
+if BUILD_TOOLS_HL_CONDITIONAL
TOOLS_DIR = tools
else
TOOLS_DIR =
endif
+else
+ TOOLS_DIR =
+endif
## Don't recurse into any subdirectories if HDF5 is not configured to
## use the HL library
if BUILD_HDF5_HL_CONDITIONAL
SUBDIRS=src $(TEST_DIR) $(TOOLS_DIR) $(CXX_DIR) $(FORTRAN_DIR)
-
endif
DIST_SUBDIRS=src test tools c++ fortran examples
diff --git a/release_docs/INSTALL_CMake.txt b/release_docs/INSTALL_CMake.txt
index 5d11957..91eb593 100644
--- a/release_docs/INSTALL_CMake.txt
+++ b/release_docs/INSTALL_CMake.txt
@@ -740,6 +740,7 @@ HDF5_BUILD_FORTRAN "Build FORTRAN support" OFF
HDF5_BUILD_JAVA "Build JAVA support" OFF
HDF5_BUILD_HL_LIB "Build HIGH Level HDF5 Library" ON
HDF5_BUILD_TOOLS "Build HDF5 Tools" ON
+HDF5_BUILD_HL_TOOLS "Build HIGH Level HDF5 Tools" ON
---------------- HDF5 Advanced Options ---------------------
ONLY_SHARED_LIBS "Only Build Shared Libraries" OFF
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt
index 66907be..ed12c5e 100644
--- a/release_docs/RELEASE.txt
+++ b/release_docs/RELEASE.txt
@@ -49,6 +49,14 @@ New Features
Configuration:
-------------
+ - Added new option to control the build of High-Level tools
+ that default ON/enabled.
+
+ Add configure options (autotools - CMake):
+ enable-hltools HDF5_BUILD_HL_TOOLS
+
+ (ADB - 2021/09/16, HDFFV-11266)
+
- Adds C++ Autotools configuration file for Intel
* Checks for icpc as the compiler
@@ -909,8 +917,8 @@ New Features
----------------
- added set/get for unsigned long long attributes
- the attribute writing high-level API has been expanded to include
- public set/get functions for ULL attributes, analogously to the
+ the attribute writing high-level API has been expanded to include
+ public set/get functions for ULL attributes, analogously to the
existing set/get for other types.
(AF - 2021/09/08)