Use cmake to build (rhbz#919623) Use %conf Use upstream static patch Add patch to drop Java soversion and set install location
1646 lines
76 KiB
Diff
1646 lines
76 KiB
Diff
From 2678055df49199351b6a5e3565170210808c90b6 Mon Sep 17 00:00:00 2001
|
|
From: "M. Scot Breitenfeld" <brtnfld@hdfgroup.org>
|
|
Date: Tue, 10 Feb 2026 17:32:24 -0600
|
|
Subject: [PATCH 1/4] addresses core DRY concern
|
|
|
|
---
|
|
CMakeInstallation.cmake | 34 +++++++++++++++++-
|
|
CMakeLists.txt | 7 ----
|
|
c++/src/CMakeLists.txt | 42 ++++++++++++++---------
|
|
config/install/hdf5-config.cmake.in | 6 ++++
|
|
fortran/src/CMakeLists.txt | 42 +++++++++++++----------
|
|
hl/c++/src/CMakeLists.txt | 42 ++++++++++++++---------
|
|
hl/fortran/src/CMakeLists.txt | 42 +++++++++++++----------
|
|
hl/src/CMakeLists.txt | 42 ++++++++++++++---------
|
|
java/src-jni/jni/CMakeLists.txt | 3 +-
|
|
src/CMakeLists.txt | 42 ++++++++++++++---------
|
|
tools/lib/CMakeLists.txt | 42 ++++++++++++++---------
|
|
tools/src/h5copy/CMakeLists.txt | 1 -
|
|
tools/src/h5diff/CMakeLists.txt | 2 --
|
|
tools/src/h5dump/CMakeLists.txt | 1 -
|
|
tools/src/h5format_convert/CMakeLists.txt | 1 -
|
|
tools/src/h5import/CMakeLists.txt | 1 -
|
|
tools/src/h5jam/CMakeLists.txt | 2 --
|
|
tools/src/h5ls/CMakeLists.txt | 1 -
|
|
tools/src/h5perf/CMakeLists.txt | 2 --
|
|
tools/src/h5repack/CMakeLists.txt | 1 -
|
|
tools/src/h5stat/CMakeLists.txt | 1 -
|
|
tools/src/misc/CMakeLists.txt | 5 ---
|
|
utils/mirror_vfd/CMakeLists.txt | 2 --
|
|
utils/tools/h5dwalk/CMakeLists.txt | 1 -
|
|
24 files changed, 218 insertions(+), 147 deletions(-)
|
|
|
|
diff --git a/CMakeInstallation.cmake b/CMakeInstallation.cmake
|
|
index 861e9c207c7..a9db35993e8 100644
|
|
--- a/CMakeInstallation.cmake
|
|
+++ b/CMakeInstallation.cmake
|
|
@@ -52,6 +52,24 @@ endif ()
|
|
#-----------------------------------------------------------------------------
|
|
if (NOT HDF5_EXTERNALLY_CONFIGURED)
|
|
if (HDF5_EXPORTED_TARGETS)
|
|
+ if (HDF5_ENABLE_JNI)
|
|
+ install (
|
|
+ EXPORT ${HDF5_EXPORTED_TARGETS}_java
|
|
+ DESTINATION ${HDF5_INSTALL_CMAKE_DIR}
|
|
+ FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}_java-targets.cmake
|
|
+ NAMESPACE ${HDF_PACKAGE_NAMESPACE}
|
|
+ COMPONENT configinstall
|
|
+ )
|
|
+ endif ()
|
|
+ if (BUILD_STATIC_LIBS)
|
|
+ install (
|
|
+ EXPORT ${HDF5_EXPORTED_TARGETS}_static
|
|
+ DESTINATION ${HDF5_INSTALL_CMAKE_DIR}
|
|
+ FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}_static-targets.cmake
|
|
+ NAMESPACE ${HDF_PACKAGE_NAMESPACE}
|
|
+ COMPONENT configinstall
|
|
+ )
|
|
+ endif ()
|
|
install (
|
|
EXPORT ${HDF5_EXPORTED_TARGETS}
|
|
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}
|
|
@@ -64,8 +82,22 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
|
|
#-----------------------------------------------------------------------------
|
|
# Export all exported targets to the build tree for use by parent project
|
|
#-----------------------------------------------------------------------------
|
|
+ if (HDF5_ENABLE_JNI)
|
|
+ export (
|
|
+ EXPORT ${HDF5_EXPORTED_TARGETS}_java
|
|
+ FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}_java-targets.cmake
|
|
+ NAMESPACE ${HDF_PACKAGE_NAMESPACE}
|
|
+ )
|
|
+ endif ()
|
|
+ if (BUILD_STATIC_LIBS)
|
|
+ export (
|
|
+ EXPORT ${HDF5_EXPORTED_TARGETS}_static
|
|
+ FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}_static-targets.cmake
|
|
+ NAMESPACE ${HDF_PACKAGE_NAMESPACE}
|
|
+ )
|
|
+ endif ()
|
|
export (
|
|
- TARGETS ${HDF5_LIBRARIES_TO_EXPORT} ${HDF5_LIB_DEPENDENCIES} ${HDF5_UTILS_TO_EXPORT}
|
|
+ EXPORT ${HDF5_EXPORTED_TARGETS}
|
|
FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake
|
|
NAMESPACE ${HDF_PACKAGE_NAMESPACE}
|
|
)
|
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index f6f2b821586..302e496d3eb 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -561,13 +561,6 @@ if (NOT HDF5_EXPORTED_TARGETS)
|
|
set (HDF5_EXPORTED_TARGETS "hdf5-targets")
|
|
endif ()
|
|
|
|
-#-----------------------------------------------------------------------------
|
|
-# To include a library in the list exported by the project AT BUILD TIME,
|
|
-# add it to this variable. This is NOT used by Make Install, but for projects
|
|
-# which include hdf5 as a sub-project within their build tree
|
|
-#-----------------------------------------------------------------------------
|
|
-set_global_variable (HDF5_LIBRARIES_TO_EXPORT "")
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "")
|
|
|
|
set (EXTERNAL_HEADER_LIST "")
|
|
set (EXTERNAL_LIBRARY_LIST "")
|
|
diff --git a/c++/src/CMakeLists.txt b/c++/src/CMakeLists.txt
|
|
index 130064e8afb..363b046c04e 100644
|
|
--- a/c++/src/CMakeLists.txt
|
|
+++ b/c++/src/CMakeLists.txt
|
|
@@ -93,10 +93,9 @@ if (BUILD_STATIC_LIBS)
|
|
)
|
|
TARGET_C_PROPERTIES (${HDF5_CPP_LIB_TARGET} STATIC)
|
|
target_link_libraries (${HDF5_CPP_LIB_TARGET} PUBLIC ${HDF5_LIB_TARGET})
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_CPP_LIB_TARGET} ${HDF5_CPP_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_CPP_LIB_TARGET} PROPERTIES FOLDER libraries/cpp)
|
|
- set (install_targets ${HDF5_CPP_LIB_TARGET})
|
|
+ set (install_targets_static ${HDF5_CPP_LIB_TARGET})
|
|
endif ()
|
|
|
|
if (BUILD_SHARED_LIBS)
|
|
@@ -119,10 +118,9 @@ if (BUILD_SHARED_LIBS)
|
|
PRIVATE -static-libgcc -static-libstdc++
|
|
)
|
|
endif ()
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_CPP_LIBSH_TARGET} ${HDF5_CPP_LIB_NAME} SHARED "CXX")
|
|
set_target_properties (${HDF5_CPP_LIBSH_TARGET} PROPERTIES FOLDER libraries/cpp)
|
|
- set (install_targets ${install_targets} ${HDF5_CPP_LIBSH_TARGET})
|
|
+ set (install_targets_shared ${HDF5_CPP_LIBSH_TARGET})
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -154,22 +152,34 @@ install (
|
|
if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_SHARED_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_CPP_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} cpplibraries)
|
|
+
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_shared}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT cpplibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT cpplibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
endif ()
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_CPP_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} cpplibraries)
|
|
- endif ()
|
|
|
|
- install (
|
|
- TARGETS
|
|
- ${install_targets}
|
|
- EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}
|
|
- LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
|
|
- ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
|
|
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT cpplibraries
|
|
- FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT cpplibraries
|
|
- INCLUDES DESTINATION include
|
|
- )
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_static}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}_static
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT cpplibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT cpplibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
+ endif ()
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/config/install/hdf5-config.cmake.in b/config/install/hdf5-config.cmake.in
|
|
index 3c8374b3f7f..7ceb0ced9b1 100644
|
|
--- a/config/install/hdf5-config.cmake.in
|
|
+++ b/config/install/hdf5-config.cmake.in
|
|
@@ -190,6 +190,12 @@ if (NOT TARGET "@HDF5_PACKAGE@")
|
|
endif ()
|
|
endif ()
|
|
include (@PACKAGE_SHARE_INSTALL_DIR@/@HDF5_PACKAGE@@HDF_PACKAGE_EXT@-targets.cmake)
|
|
+ if ( @BUILD_STATIC_LIBS@ )
|
|
+ include (@PACKAGE_SHARE_INSTALL_DIR@/@HDF5_PACKAGE@@HDF_PACKAGE_EXT@_static-targets.cmake OPTIONAL)
|
|
+ endif ()
|
|
+ if ( @HDF5_BUILD_JAVA@ )
|
|
+ include (@PACKAGE_SHARE_INSTALL_DIR@/@HDF5_PACKAGE@@HDF_PACKAGE_EXT@_java-targets.cmake OPTIONAL)
|
|
+ endif ()
|
|
endif ()
|
|
|
|
# Handle default component(static) :
|
|
diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt
|
|
index 7a936d500d1..7f7eec12257 100644
|
|
--- a/fortran/src/CMakeLists.txt
|
|
+++ b/fortran/src/CMakeLists.txt
|
|
@@ -274,14 +274,13 @@ if (BUILD_STATIC_LIBS)
|
|
target_compile_options (${HDF5_F90_C_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
|
|
TARGET_C_PROPERTIES (${HDF5_F90_C_LIB_TARGET} STATIC)
|
|
target_link_libraries (${HDF5_F90_C_LIB_TARGET} PUBLIC ${HDF5_LIB_TARGET})
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_F90_C_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_F90_C_LIB_TARGET} ${HDF5_F90_C_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_F90_C_LIB_TARGET} PROPERTIES
|
|
FOLDER libraries/fortran
|
|
LINKER_LANGUAGE C
|
|
)
|
|
add_dependencies (${HDF5_F90_C_LIB_TARGET} H5gen_i)
|
|
- set (install_targets ${HDF5_F90_C_LIB_TARGET})
|
|
+ set (install_targets_static ${HDF5_F90_C_LIB_TARGET})
|
|
endif ()
|
|
|
|
if (BUILD_SHARED_LIBS)
|
|
@@ -294,14 +293,13 @@ if (BUILD_SHARED_LIBS)
|
|
target_compile_definitions (${HDF5_F90_C_LIBSH_TARGET} PUBLIC "H5_BUILT_AS_DYNAMIC_LIB")
|
|
TARGET_C_PROPERTIES (${HDF5_F90_C_LIBSH_TARGET} SHARED)
|
|
target_link_libraries (${HDF5_F90_C_LIBSH_TARGET} PUBLIC ${HDF5_LIBSH_TARGET})
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_F90_C_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_F90_C_LIBSH_TARGET} ${HDF5_F90_C_LIB_NAME} SHARED "F")
|
|
set_target_properties (${HDF5_F90_C_LIBSH_TARGET} PROPERTIES
|
|
FOLDER libraries/fortran
|
|
LINKER_LANGUAGE C
|
|
)
|
|
add_dependencies (${HDF5_F90_C_LIBSH_TARGET} H5gen_iSH)
|
|
- set (install_targets ${install_targets} ${HDF5_F90_C_LIBSH_TARGET})
|
|
+ set (install_targets_shared ${HDF5_F90_C_LIBSH_TARGET})
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -483,8 +481,7 @@ if (BUILD_STATIC_LIBS)
|
|
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
|
|
)
|
|
H5_SET_LIB_OPTIONS (${HDF5_F90_LIB_TARGET} ${HDF5_F90_LIB_NAME} STATIC 0)
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_F90_LIB_TARGET}")
|
|
- set (install_targets ${install_targets} ${HDF5_F90_LIB_TARGET})
|
|
+ set (install_targets_static ${install_targets_static} ${HDF5_F90_LIB_TARGET})
|
|
add_dependencies (${HDF5_F90_LIB_TARGET} H5gen)
|
|
endif ()
|
|
|
|
@@ -518,9 +515,8 @@ if (BUILD_SHARED_LIBS)
|
|
LINKER_LANGUAGE Fortran
|
|
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
|
|
)
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_F90_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_F90_LIBSH_TARGET} ${HDF5_F90_LIB_NAME} SHARED "F")
|
|
- set (install_targets ${install_targets} ${HDF5_F90_LIBSH_TARGET})
|
|
+ set (install_targets_shared ${install_targets_shared} ${HDF5_F90_LIBSH_TARGET})
|
|
add_dependencies(${HDF5_F90_LIBSH_TARGET} H5genSH)
|
|
endif ()
|
|
|
|
@@ -621,21 +617,31 @@ if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_SHARED_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_F90_C_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} fortlibraries)
|
|
#INSTALL_TARGET_PDB (${HDF5_F90_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} fortlibraries)
|
|
+
|
|
+ install (
|
|
+ TARGETS ${install_targets_shared}
|
|
+ EXPORT ${HDF5_EXPORTED_TARGETS}
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT fortlibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT fortlibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT fortlibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT fortlibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
endif ()
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_F90_C_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} fortlibraries)
|
|
#INSTALL_TARGET_PDB (${HDF5_F90_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} fortlibraries)
|
|
- endif ()
|
|
|
|
- install (
|
|
- TARGETS ${install_targets}
|
|
- EXPORT ${HDF5_EXPORTED_TARGETS}
|
|
- LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT fortlibraries
|
|
- ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT fortlibraries
|
|
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT fortlibraries
|
|
- FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT fortlibraries
|
|
- INCLUDES DESTINATION include
|
|
- )
|
|
+ install (
|
|
+ TARGETS ${install_targets_static}
|
|
+ EXPORT ${HDF5_EXPORTED_TARGETS}_static
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT fortlibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT fortlibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT fortlibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT fortlibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
+ endif ()
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/hl/c++/src/CMakeLists.txt b/hl/c++/src/CMakeLists.txt
|
|
index 4ad1987391b..6bb6839dd05 100644
|
|
--- a/hl/c++/src/CMakeLists.txt
|
|
+++ b/hl/c++/src/CMakeLists.txt
|
|
@@ -22,10 +22,9 @@ if (BUILD_STATIC_LIBS)
|
|
target_compile_options(${HDF5_HL_CPP_LIB_TARGET} PRIVATE "${HDF5_CMAKE_CXX_FLAGS}")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_CPP_LIB_TARGET} STATIC)
|
|
target_link_libraries (${HDF5_HL_CPP_LIB_TARGET} PUBLIC ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_CPP_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_CPP_LIB_TARGET} ${HDF5_HL_CPP_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_HL_CPP_LIB_TARGET} PROPERTIES FOLDER libraries/hl)
|
|
- set (install_targets ${HDF5_HL_CPP_LIB_TARGET})
|
|
+ set (install_targets_static ${HDF5_HL_CPP_LIB_TARGET})
|
|
endif ()
|
|
|
|
if (BUILD_SHARED_LIBS)
|
|
@@ -38,10 +37,9 @@ if (BUILD_SHARED_LIBS)
|
|
target_compile_definitions(${HDF5_HL_CPP_LIBSH_TARGET} PUBLIC "H5_BUILT_AS_DYNAMIC_LIB")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_CPP_LIBSH_TARGET} SHARED)
|
|
target_link_libraries (${HDF5_HL_CPP_LIBSH_TARGET} PUBLIC ${HDF5_HL_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_CPP_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_CPP_LIBSH_TARGET} ${HDF5_HL_CPP_LIB_NAME} SHARED "HL_CXX")
|
|
set_target_properties (${HDF5_HL_CPP_LIBSH_TARGET} PROPERTIES FOLDER libraries/hl)
|
|
- set (install_targets ${install_targets} ${HDF5_HL_CPP_LIBSH_TARGET})
|
|
+ set (install_targets_shared ${HDF5_HL_CPP_LIBSH_TARGET})
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -73,22 +71,34 @@ install (
|
|
if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_SHARED_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_HL_CPP_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} hlcpplibraries)
|
|
+
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_shared}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlcpplibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlcpplibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlcpplibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT hlcpplibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
endif ()
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_HL_CPP_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hlcpplibraries)
|
|
- endif ()
|
|
|
|
- install (
|
|
- TARGETS
|
|
- ${install_targets}
|
|
- EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}
|
|
- LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlcpplibraries
|
|
- ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlcpplibraries
|
|
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlcpplibraries
|
|
- FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT hlcpplibraries
|
|
- INCLUDES DESTINATION include
|
|
- )
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_static}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}_static
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlcpplibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlcpplibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlcpplibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT hlcpplibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
+ endif ()
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
|
|
index 8acde782b5e..77227f8346d 100644
|
|
--- a/hl/fortran/src/CMakeLists.txt
|
|
+++ b/hl/fortran/src/CMakeLists.txt
|
|
@@ -73,13 +73,12 @@ if (BUILD_STATIC_LIBS)
|
|
target_compile_options(${HDF5_HL_F90_C_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_F90_C_LIB_TARGET} STATIC)
|
|
target_link_libraries (${HDF5_HL_F90_C_LIB_TARGET} PUBLIC ${HDF5_F90_C_LIB_TARGET} ${HDF5_HL_LIB_TARGET})
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_C_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_F90_C_LIB_TARGET} ${HDF5_HL_F90_C_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_HL_F90_C_LIB_TARGET} PROPERTIES
|
|
FOLDER libraries/hl/fortran
|
|
LINKER_LANGUAGE C
|
|
)
|
|
- set (install_targets ${HDF5_HL_F90_C_LIB_TARGET})
|
|
+ set (install_targets_static ${HDF5_HL_F90_C_LIB_TARGET})
|
|
endif ()
|
|
if (BUILD_SHARED_LIBS)
|
|
add_library (${HDF5_HL_F90_C_LIBSH_TARGET} SHARED ${HDF5_HL_F90_C_SOURCES} ${HDF5_HL_F90_HEADERS})
|
|
@@ -91,13 +90,12 @@ if (BUILD_SHARED_LIBS)
|
|
target_compile_definitions(${HDF5_HL_F90_C_LIBSH_TARGET} PUBLIC "H5_BUILT_AS_DYNAMIC_LIB")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_F90_C_LIBSH_TARGET} SHARED)
|
|
target_link_libraries (${HDF5_HL_F90_C_LIBSH_TARGET} PUBLIC ${HDF5_F90_C_LIBSH_TARGET} ${HDF5_HL_LIBSH_TARGET})
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_C_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_F90_C_LIBSH_TARGET} ${HDF5_HL_F90_C_LIB_NAME} SHARED "HL_F")
|
|
set_target_properties (${HDF5_HL_F90_C_LIBSH_TARGET} PROPERTIES
|
|
FOLDER libraries/hl/fortran
|
|
LINKER_LANGUAGE C
|
|
)
|
|
- set (install_targets ${install_targets} ${HDF5_HL_F90_C_LIBSH_TARGET})
|
|
+ set (install_targets_shared ${HDF5_HL_F90_C_LIBSH_TARGET})
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -241,8 +239,7 @@ if (BUILD_STATIC_LIBS)
|
|
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
|
|
)
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_F90_LIB_TARGET} ${HDF5_HL_F90_LIB_NAME} STATIC 0)
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_LIB_TARGET}")
|
|
- set (install_targets ${install_targets} ${HDF5_HL_F90_LIB_TARGET})
|
|
+ set (install_targets_static ${install_targets_static} ${HDF5_HL_F90_LIB_TARGET})
|
|
add_dependencies(${HDF5_HL_F90_LIB_TARGET} H5HLgen)
|
|
endif ()
|
|
if (BUILD_SHARED_LIBS)
|
|
@@ -280,8 +277,7 @@ if (BUILD_SHARED_LIBS)
|
|
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
|
|
)
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_HL_F90_LIB_NAME} SHARED "HL_F")
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_LIBSH_TARGET}")
|
|
- set (install_targets ${install_targets} ${HDF5_HL_F90_LIBSH_TARGET})
|
|
+ set (install_targets_shared ${install_targets_shared} ${HDF5_HL_F90_LIBSH_TARGET})
|
|
add_dependencies(${HDF5_HL_F90_LIBSH_TARGET} H5HLgenSH)
|
|
endif ()
|
|
|
|
@@ -341,21 +337,31 @@ if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_SHARED_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_HL_F90_C_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} hlfortlibraries)
|
|
#INSTALL_TARGET_PDB (${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} hlfortlibraries)
|
|
+
|
|
+ install (
|
|
+ TARGETS ${install_targets_shared}
|
|
+ EXPORT ${HDF5_EXPORTED_TARGETS}
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlfortlibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlfortlibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlfortlibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT hlfortlibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
endif ()
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_HL_F90_C_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hlfortlibraries)
|
|
#INSTALL_TARGET_PDB (${HDF5_HL_F90_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hlfortlibraries)
|
|
- endif ()
|
|
|
|
- install (
|
|
- TARGETS ${install_targets}
|
|
- EXPORT ${HDF5_EXPORTED_TARGETS}
|
|
- LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlfortlibraries
|
|
- ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlfortlibraries
|
|
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlfortlibraries
|
|
- FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT hlfortlibraries
|
|
- INCLUDES DESTINATION include
|
|
- )
|
|
+ install (
|
|
+ TARGETS ${install_targets_static}
|
|
+ EXPORT ${HDF5_EXPORTED_TARGETS}_static
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlfortlibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlfortlibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlfortlibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT hlfortlibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
+ endif ()
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt
|
|
index f8a3ba5956a..ef0fda43290 100644
|
|
--- a/hl/src/CMakeLists.txt
|
|
+++ b/hl/src/CMakeLists.txt
|
|
@@ -57,8 +57,7 @@ if (BUILD_STATIC_LIBS)
|
|
target_link_libraries (${HDF5_HL_LIB_TARGET} PUBLIC ${HDF5_LIB_TARGET})
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_LIB_TARGET} ${HDF5_HL_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_HL_LIB_TARGET} PROPERTIES FOLDER libraries/hl)
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_LIB_TARGET}")
|
|
- set (install_targets ${HDF5_HL_LIB_TARGET})
|
|
+ set (install_targets_static ${HDF5_HL_LIB_TARGET})
|
|
endif ()
|
|
|
|
if (BUILD_SHARED_LIBS)
|
|
@@ -73,8 +72,7 @@ if (BUILD_SHARED_LIBS)
|
|
target_link_libraries (${HDF5_HL_LIBSH_TARGET} PUBLIC ${HDF5_LIBSH_TARGET})
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_LIBSH_TARGET} ${HDF5_HL_LIB_NAME} SHARED "HL")
|
|
set_target_properties (${HDF5_HL_LIBSH_TARGET} PROPERTIES FOLDER libraries/hl)
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_LIBSH_TARGET}")
|
|
- set (install_targets ${install_targets} ${HDF5_HL_LIBSH_TARGET})
|
|
+ set (install_targets_shared ${HDF5_HL_LIBSH_TARGET})
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -106,22 +104,34 @@ install (
|
|
if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_SHARED_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_HL_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} hllibraries)
|
|
+
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_shared}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hllibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hllibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hllibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT hllibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
endif ()
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_HL_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hllibraries)
|
|
- endif ()
|
|
|
|
- install (
|
|
- TARGETS
|
|
- ${install_targets}
|
|
- EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}
|
|
- LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hllibraries
|
|
- ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hllibraries
|
|
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hllibraries
|
|
- FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT hllibraries
|
|
- INCLUDES DESTINATION include
|
|
- )
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_static}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}_static
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hllibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hllibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hllibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT hllibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
+ endif ()
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/java/src-jni/jni/CMakeLists.txt b/java/src-jni/jni/CMakeLists.txt
|
|
index 71319cf1e65..a8df5965671 100644
|
|
--- a/java/src-jni/jni/CMakeLists.txt
|
|
+++ b/java/src-jni/jni/CMakeLists.txt
|
|
@@ -91,7 +91,6 @@ target_compile_options(${HDF5_JAVA_JNI_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS
|
|
TARGET_C_PROPERTIES (${HDF5_JAVA_JNI_LIB_TARGET} SHARED)
|
|
target_link_libraries (${HDF5_JAVA_JNI_LIB_TARGET} PUBLIC ${HDF5_LIBSH_TARGET})
|
|
set_target_properties (${HDF5_JAVA_JNI_LIB_TARGET} PROPERTIES FOLDER libraries/jni)
|
|
-SET_GLOBAL_VARIABLE (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_JAVA_JNI_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_JAVA_JNI_LIB_TARGET} ${HDF5_JAVA_JNI_LIB_NAME} SHARED "JAVA")
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -110,7 +109,7 @@ if (HDF5_EXPORTED_TARGETS)
|
|
TARGETS
|
|
${HDF5_JAVA_JNI_LIB_TARGET}
|
|
EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}
|
|
+ ${HDF5_EXPORTED_TARGETS}_java
|
|
LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT libraries
|
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
|
index 0c0b129da0b..c7a509ccd19 100644
|
|
--- a/src/CMakeLists.txt
|
|
+++ b/src/CMakeLists.txt
|
|
@@ -1263,11 +1263,10 @@ if (BUILD_STATIC_LIBS)
|
|
PRIVATE ${LINK_LIBS} ${LINK_COMP_LIBS}
|
|
PUBLIC ${LINK_PUB_LIBS}
|
|
)
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT ${HDF5_LIB_TARGET})
|
|
H5_SET_LIB_OPTIONS (${HDF5_LIB_TARGET} ${HDF5_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_LIB_TARGET} PROPERTIES FOLDER libraries)
|
|
|
|
- set (install_targets ${HDF5_LIB_TARGET})
|
|
+ set (install_targets_static ${HDF5_LIB_TARGET})
|
|
endif ()
|
|
|
|
if (BUILD_SHARED_LIBS)
|
|
@@ -1292,11 +1291,10 @@ if (BUILD_SHARED_LIBS)
|
|
PRIVATE ${LINK_LIBS} ${LINK_COMP_LIBS}
|
|
PUBLIC ${LINK_PUB_LIBS}
|
|
)
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_LIBSH_TARGET} ${HDF5_LIB_NAME} SHARED "LIB")
|
|
set_target_properties (${HDF5_LIBSH_TARGET} PROPERTIES FOLDER libraries)
|
|
|
|
- set (install_targets ${install_targets} ${HDF5_LIBSH_TARGET})
|
|
+ set (install_targets_shared ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -1332,22 +1330,34 @@ endif ()
|
|
if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_SHARED_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} libraries)
|
|
+
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_shared}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT libraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT libraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
endif ()
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} libraries)
|
|
- endif ()
|
|
|
|
- install (
|
|
- TARGETS
|
|
- ${install_targets}
|
|
- EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}
|
|
- LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
- ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT libraries
|
|
- FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT libraries
|
|
- INCLUDES DESTINATION include
|
|
- )
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_static}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}_static
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT libraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT libraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
+ endif ()
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/tools/lib/CMakeLists.txt b/tools/lib/CMakeLists.txt
|
|
index 8d1f2315c79..d624b9f0fe1 100644
|
|
--- a/tools/lib/CMakeLists.txt
|
|
+++ b/tools/lib/CMakeLists.txt
|
|
@@ -56,10 +56,9 @@ if (BUILD_STATIC_LIBS)
|
|
PUBLIC ${HDF5_LIB_TARGET}
|
|
PRIVATE "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>"
|
|
)
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_TOOLS_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_TOOLS_LIB_TARGET} ${HDF5_TOOLS_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_TOOLS_LIB_TARGET} PROPERTIES FOLDER libraries/tools)
|
|
- set (install_targets ${HDF5_TOOLS_LIB_TARGET})
|
|
+ set (install_targets_static ${HDF5_TOOLS_LIB_TARGET})
|
|
endif ()
|
|
|
|
if (BUILD_SHARED_LIBS)
|
|
@@ -82,10 +81,9 @@ if (BUILD_SHARED_LIBS)
|
|
PUBLIC ${HDF5_LIBSH_TARGET}
|
|
PRIVATE "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>"
|
|
)
|
|
- set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_TOOLS_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_TOOLS_LIB_NAME} SHARED "TOOLS")
|
|
set_target_properties (${HDF5_TOOLS_LIBSH_TARGET} PROPERTIES FOLDER libraries/tools)
|
|
- set (install_targets ${install_targets} ${HDF5_TOOLS_LIBSH_TARGET})
|
|
+ set (install_targets_shared ${HDF5_TOOLS_LIBSH_TARGET})
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -111,20 +109,32 @@ endif ()
|
|
if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_SHARED_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} toolslibraries)
|
|
+
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_shared}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT toolslibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT toolslibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolslibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT toolslibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
endif ()
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_TOOLS_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} toolslibraries)
|
|
- endif ()
|
|
|
|
- install (
|
|
- TARGETS
|
|
- ${install_targets}
|
|
- EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}
|
|
- LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT toolslibraries
|
|
- ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT toolslibraries
|
|
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolslibraries
|
|
- FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT toolslibraries
|
|
- INCLUDES DESTINATION include
|
|
- )
|
|
+ install (
|
|
+ TARGETS
|
|
+ ${install_targets_static}
|
|
+ EXPORT
|
|
+ ${HDF5_EXPORTED_TARGETS}_static
|
|
+ LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT toolslibraries
|
|
+ ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT toolslibraries
|
|
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolslibraries
|
|
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT toolslibraries
|
|
+ INCLUDES DESTINATION include
|
|
+ )
|
|
+ endif ()
|
|
endif ()
|
|
diff --git a/tools/src/h5copy/CMakeLists.txt b/tools/src/h5copy/CMakeLists.txt
|
|
index 21ac152feba..bda6de578c3 100644
|
|
--- a/tools/src/h5copy/CMakeLists.txt
|
|
+++ b/tools/src/h5copy/CMakeLists.txt
|
|
@@ -21,7 +21,6 @@ else ()
|
|
target_link_libraries (h5copy PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5copy PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5copy")
|
|
|
|
set (H5_DEP_EXECUTABLES h5copy)
|
|
|
|
diff --git a/tools/src/h5diff/CMakeLists.txt b/tools/src/h5diff/CMakeLists.txt
|
|
index 04a4d9fbcde..475b0e0ca07 100644
|
|
--- a/tools/src/h5diff/CMakeLists.txt
|
|
+++ b/tools/src/h5diff/CMakeLists.txt
|
|
@@ -26,7 +26,6 @@ else ()
|
|
target_link_libraries (h5diff PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5diff PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5diff")
|
|
|
|
set (H5_DEP_EXECUTABLES h5diff)
|
|
|
|
@@ -55,7 +54,6 @@ if (H5_HAVE_PARALLEL)
|
|
target_link_libraries (ph5diff PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>")
|
|
endif ()
|
|
set_target_properties (ph5diff PROPERTIES FOLDER tools)
|
|
- set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};ph5diff")
|
|
set (H5_DEP_EXECUTABLES ${H5_DEP_EXECUTABLES} ph5diff)
|
|
endif ()
|
|
|
|
diff --git a/tools/src/h5dump/CMakeLists.txt b/tools/src/h5dump/CMakeLists.txt
|
|
index 000e3ffb33f..ee520b0f21f 100644
|
|
--- a/tools/src/h5dump/CMakeLists.txt
|
|
+++ b/tools/src/h5dump/CMakeLists.txt
|
|
@@ -30,7 +30,6 @@ else ()
|
|
target_link_libraries (h5dump PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5dump PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5dump")
|
|
|
|
set (H5_DEP_EXECUTABLES h5dump)
|
|
|
|
diff --git a/tools/src/h5format_convert/CMakeLists.txt b/tools/src/h5format_convert/CMakeLists.txt
|
|
index ce7bdaee344..b950cf4d07e 100644
|
|
--- a/tools/src/h5format_convert/CMakeLists.txt
|
|
+++ b/tools/src/h5format_convert/CMakeLists.txt
|
|
@@ -21,7 +21,6 @@ else ()
|
|
target_link_libraries (h5format_convert PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5format_convert PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5format_convert")
|
|
|
|
set (H5_DEP_EXECUTABLES h5format_convert)
|
|
|
|
diff --git a/tools/src/h5import/CMakeLists.txt b/tools/src/h5import/CMakeLists.txt
|
|
index c95589ee92b..b26e49896a3 100644
|
|
--- a/tools/src/h5import/CMakeLists.txt
|
|
+++ b/tools/src/h5import/CMakeLists.txt
|
|
@@ -21,7 +21,6 @@ else ()
|
|
endif ()
|
|
#set_target_properties (h5import PROPERTIES COMPILE_DEFINITIONS H5DEBUGIMPORT)
|
|
set_target_properties (h5import PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5import")
|
|
|
|
set (H5_DEP_EXECUTABLES h5import)
|
|
|
|
diff --git a/tools/src/h5jam/CMakeLists.txt b/tools/src/h5jam/CMakeLists.txt
|
|
index 7f645608c50..5e7cbbc13d1 100644
|
|
--- a/tools/src/h5jam/CMakeLists.txt
|
|
+++ b/tools/src/h5jam/CMakeLists.txt
|
|
@@ -20,7 +20,6 @@ else ()
|
|
target_link_libraries (h5jam PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5jam PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5jam")
|
|
|
|
add_executable (h5unjam ${HDF5_TOOLS_SRC_H5JAM_SOURCE_DIR}/h5unjam.c)
|
|
target_include_directories (h5unjam PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -32,7 +31,6 @@ else ()
|
|
target_link_libraries (h5unjam PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5unjam PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5unjam")
|
|
|
|
set (H5_DEP_EXECUTABLES
|
|
h5jam
|
|
diff --git a/tools/src/h5ls/CMakeLists.txt b/tools/src/h5ls/CMakeLists.txt
|
|
index 490dfaa6e70..31771d20d6f 100644
|
|
--- a/tools/src/h5ls/CMakeLists.txt
|
|
+++ b/tools/src/h5ls/CMakeLists.txt
|
|
@@ -22,7 +22,6 @@ else ()
|
|
target_link_libraries (h5ls PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5ls PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5ls")
|
|
|
|
set (H5_DEP_EXECUTABLES h5ls)
|
|
|
|
diff --git a/tools/src/h5perf/CMakeLists.txt b/tools/src/h5perf/CMakeLists.txt
|
|
index f246df080f1..f3bcfea77c5 100644
|
|
--- a/tools/src/h5perf/CMakeLists.txt
|
|
+++ b/tools/src/h5perf/CMakeLists.txt
|
|
@@ -23,7 +23,6 @@ else ()
|
|
target_link_libraries (h5perf_serial PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5perf_serial PROPERTIES FOLDER perform)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5perf_serial")
|
|
|
|
set (H5_DEP_EXECUTABLES h5perf_serial)
|
|
|
|
@@ -49,7 +48,6 @@ if (H5_HAVE_PARALLEL)
|
|
target_link_libraries (h5perf PRIVATE ${LINK_LIBS} ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>")
|
|
endif ()
|
|
set_target_properties (h5perf PROPERTIES FOLDER perform)
|
|
- set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5perf")
|
|
|
|
set (H5_DEP_EXECUTABLES ${H5_DEP_EXECUTABLES} h5perf)
|
|
|
|
diff --git a/tools/src/h5repack/CMakeLists.txt b/tools/src/h5repack/CMakeLists.txt
|
|
index 31f6a4970dc..595c8d689dc 100644
|
|
--- a/tools/src/h5repack/CMakeLists.txt
|
|
+++ b/tools/src/h5repack/CMakeLists.txt
|
|
@@ -32,7 +32,6 @@ else ()
|
|
target_link_libraries (h5repack PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5repack PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5repack")
|
|
|
|
set (H5_DEP_EXECUTABLES h5repack)
|
|
|
|
diff --git a/tools/src/h5stat/CMakeLists.txt b/tools/src/h5stat/CMakeLists.txt
|
|
index 09e373e9ae5..2633d57d5bf 100644
|
|
--- a/tools/src/h5stat/CMakeLists.txt
|
|
+++ b/tools/src/h5stat/CMakeLists.txt
|
|
@@ -21,7 +21,6 @@ else ()
|
|
target_link_libraries (h5stat PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5stat PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5stat")
|
|
|
|
set (H5_DEP_EXECUTABLES h5stat)
|
|
|
|
diff --git a/tools/src/misc/CMakeLists.txt b/tools/src/misc/CMakeLists.txt
|
|
index e47cd17ef37..b227c60652c 100644
|
|
--- a/tools/src/misc/CMakeLists.txt
|
|
+++ b/tools/src/misc/CMakeLists.txt
|
|
@@ -22,7 +22,6 @@ else ()
|
|
target_link_libraries (h5debug PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5debug PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5debug")
|
|
|
|
add_executable (h5repart ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5repart.c)
|
|
target_include_directories (h5repart PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -35,7 +34,6 @@ else ()
|
|
target_link_libraries (h5repart PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5repart PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5repart")
|
|
|
|
add_executable (h5mkgrp ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5mkgrp.c)
|
|
target_include_directories (h5mkgrp PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -48,7 +46,6 @@ else ()
|
|
target_link_libraries (h5mkgrp PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5mkgrp PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5mkgrp")
|
|
|
|
add_executable (h5clear ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5clear.c)
|
|
target_include_directories (h5clear PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -61,7 +58,6 @@ else ()
|
|
target_link_libraries (h5clear PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5clear PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5clear")
|
|
|
|
add_executable (h5delete ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5delete.c)
|
|
target_include_directories (h5delete PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -74,7 +70,6 @@ else ()
|
|
target_link_libraries (h5delete PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5delete PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5delete")
|
|
|
|
set (H5_DEP_EXECUTABLES
|
|
h5debug
|
|
diff --git a/utils/mirror_vfd/CMakeLists.txt b/utils/mirror_vfd/CMakeLists.txt
|
|
index cfd53337b34..43f73718346 100644
|
|
--- a/utils/mirror_vfd/CMakeLists.txt
|
|
+++ b/utils/mirror_vfd/CMakeLists.txt
|
|
@@ -24,7 +24,6 @@ else ()
|
|
target_link_libraries (mirror_server PRIVATE ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (mirror_server PROPERTIES FOLDER utils)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};mirror_server")
|
|
set (H5_DEP_EXECUTABLES ${H5_DEP_EXECUTABLES} mirror_server)
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -49,7 +48,6 @@ else ()
|
|
target_link_libraries (mirror_server_stop PRIVATE ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (mirror_server_stop PROPERTIES FOLDER utils)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};mirror_server_stop")
|
|
set (H5_DEP_EXECUTABLES ${H5_DEP_EXECUTABLES} mirror_server_stop)
|
|
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/utils/tools/h5dwalk/CMakeLists.txt b/utils/tools/h5dwalk/CMakeLists.txt
|
|
index b188d6e4e06..553f943baa3 100644
|
|
--- a/utils/tools/h5dwalk/CMakeLists.txt
|
|
+++ b/utils/tools/h5dwalk/CMakeLists.txt
|
|
@@ -18,7 +18,6 @@ else ()
|
|
target_link_libraries (h5dwalk PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} ${MFU_LIBRARY} "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>")
|
|
endif ()
|
|
set_target_properties (h5dwalk PROPERTIES FOLDER tools)
|
|
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5dwalk")
|
|
|
|
set (H5_DEP_EXECUTABLES h5dwalk)
|
|
|
|
|
|
From 53710f2556d3e4698e1ebdfd64bfab40b1f3d3ca Mon Sep 17 00:00:00 2001
|
|
From: "M. Scot Breitenfeld" <brtnfld@hdfgroup.org>
|
|
Date: Tue, 10 Feb 2026 20:44:19 -0600
|
|
Subject: [PATCH 2/4] Kept HDF5_LIBRARIES_TO_EXPORT
|
|
|
|
---
|
|
CMakeLists.txt | 4 ++++
|
|
c++/src/CMakeLists.txt | 2 ++
|
|
fortran/src/CMakeLists.txt | 4 ++++
|
|
hl/c++/src/CMakeLists.txt | 2 ++
|
|
hl/fortran/src/CMakeLists.txt | 4 ++++
|
|
hl/src/CMakeLists.txt | 2 ++
|
|
java/src-jni/jni/CMakeLists.txt | 1 +
|
|
src/CMakeLists.txt | 2 ++
|
|
tools/lib/CMakeLists.txt | 2 ++
|
|
9 files changed, 23 insertions(+)
|
|
|
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index 302e496d3eb..53b99280606 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -561,6 +561,10 @@ if (NOT HDF5_EXPORTED_TARGETS)
|
|
set (HDF5_EXPORTED_TARGETS "hdf5-targets")
|
|
endif ()
|
|
|
|
+#-----------------------------------------------------------------------------
|
|
+# Used by hdf5-config.cmake.in to advertise available library targets
|
|
+#-----------------------------------------------------------------------------
|
|
+set_global_variable (HDF5_LIBRARIES_TO_EXPORT "")
|
|
|
|
set (EXTERNAL_HEADER_LIST "")
|
|
set (EXTERNAL_LIBRARY_LIST "")
|
|
diff --git a/c++/src/CMakeLists.txt b/c++/src/CMakeLists.txt
|
|
index 363b046c04e..5fc6bc23058 100644
|
|
--- a/c++/src/CMakeLists.txt
|
|
+++ b/c++/src/CMakeLists.txt
|
|
@@ -93,6 +93,7 @@ if (BUILD_STATIC_LIBS)
|
|
)
|
|
TARGET_C_PROPERTIES (${HDF5_CPP_LIB_TARGET} STATIC)
|
|
target_link_libraries (${HDF5_CPP_LIB_TARGET} PUBLIC ${HDF5_LIB_TARGET})
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_CPP_LIB_TARGET} ${HDF5_CPP_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_CPP_LIB_TARGET} PROPERTIES FOLDER libraries/cpp)
|
|
set (install_targets_static ${HDF5_CPP_LIB_TARGET})
|
|
@@ -118,6 +119,7 @@ if (BUILD_SHARED_LIBS)
|
|
PRIVATE -static-libgcc -static-libstdc++
|
|
)
|
|
endif ()
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_CPP_LIBSH_TARGET} ${HDF5_CPP_LIB_NAME} SHARED "CXX")
|
|
set_target_properties (${HDF5_CPP_LIBSH_TARGET} PROPERTIES FOLDER libraries/cpp)
|
|
set (install_targets_shared ${HDF5_CPP_LIBSH_TARGET})
|
|
diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt
|
|
index 7f7eec12257..d935223fd7a 100644
|
|
--- a/fortran/src/CMakeLists.txt
|
|
+++ b/fortran/src/CMakeLists.txt
|
|
@@ -274,6 +274,7 @@ if (BUILD_STATIC_LIBS)
|
|
target_compile_options (${HDF5_F90_C_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
|
|
TARGET_C_PROPERTIES (${HDF5_F90_C_LIB_TARGET} STATIC)
|
|
target_link_libraries (${HDF5_F90_C_LIB_TARGET} PUBLIC ${HDF5_LIB_TARGET})
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_F90_C_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_F90_C_LIB_TARGET} ${HDF5_F90_C_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_F90_C_LIB_TARGET} PROPERTIES
|
|
FOLDER libraries/fortran
|
|
@@ -293,6 +294,7 @@ if (BUILD_SHARED_LIBS)
|
|
target_compile_definitions (${HDF5_F90_C_LIBSH_TARGET} PUBLIC "H5_BUILT_AS_DYNAMIC_LIB")
|
|
TARGET_C_PROPERTIES (${HDF5_F90_C_LIBSH_TARGET} SHARED)
|
|
target_link_libraries (${HDF5_F90_C_LIBSH_TARGET} PUBLIC ${HDF5_LIBSH_TARGET})
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_F90_C_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_F90_C_LIBSH_TARGET} ${HDF5_F90_C_LIB_NAME} SHARED "F")
|
|
set_target_properties (${HDF5_F90_C_LIBSH_TARGET} PROPERTIES
|
|
FOLDER libraries/fortran
|
|
@@ -480,6 +482,7 @@ if (BUILD_STATIC_LIBS)
|
|
LINKER_LANGUAGE Fortran
|
|
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
|
|
)
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_F90_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_F90_LIB_TARGET} ${HDF5_F90_LIB_NAME} STATIC 0)
|
|
set (install_targets_static ${install_targets_static} ${HDF5_F90_LIB_TARGET})
|
|
add_dependencies (${HDF5_F90_LIB_TARGET} H5gen)
|
|
@@ -515,6 +518,7 @@ if (BUILD_SHARED_LIBS)
|
|
LINKER_LANGUAGE Fortran
|
|
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
|
|
)
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_F90_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_F90_LIBSH_TARGET} ${HDF5_F90_LIB_NAME} SHARED "F")
|
|
set (install_targets_shared ${install_targets_shared} ${HDF5_F90_LIBSH_TARGET})
|
|
add_dependencies(${HDF5_F90_LIBSH_TARGET} H5genSH)
|
|
diff --git a/hl/c++/src/CMakeLists.txt b/hl/c++/src/CMakeLists.txt
|
|
index 6bb6839dd05..0a220a78543 100644
|
|
--- a/hl/c++/src/CMakeLists.txt
|
|
+++ b/hl/c++/src/CMakeLists.txt
|
|
@@ -22,6 +22,7 @@ if (BUILD_STATIC_LIBS)
|
|
target_compile_options(${HDF5_HL_CPP_LIB_TARGET} PRIVATE "${HDF5_CMAKE_CXX_FLAGS}")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_CPP_LIB_TARGET} STATIC)
|
|
target_link_libraries (${HDF5_HL_CPP_LIB_TARGET} PUBLIC ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_CPP_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_CPP_LIB_TARGET} ${HDF5_HL_CPP_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_HL_CPP_LIB_TARGET} PROPERTIES FOLDER libraries/hl)
|
|
set (install_targets_static ${HDF5_HL_CPP_LIB_TARGET})
|
|
@@ -37,6 +38,7 @@ if (BUILD_SHARED_LIBS)
|
|
target_compile_definitions(${HDF5_HL_CPP_LIBSH_TARGET} PUBLIC "H5_BUILT_AS_DYNAMIC_LIB")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_CPP_LIBSH_TARGET} SHARED)
|
|
target_link_libraries (${HDF5_HL_CPP_LIBSH_TARGET} PUBLIC ${HDF5_HL_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_CPP_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_CPP_LIBSH_TARGET} ${HDF5_HL_CPP_LIB_NAME} SHARED "HL_CXX")
|
|
set_target_properties (${HDF5_HL_CPP_LIBSH_TARGET} PROPERTIES FOLDER libraries/hl)
|
|
set (install_targets_shared ${HDF5_HL_CPP_LIBSH_TARGET})
|
|
diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
|
|
index 77227f8346d..c9bda362a3e 100644
|
|
--- a/hl/fortran/src/CMakeLists.txt
|
|
+++ b/hl/fortran/src/CMakeLists.txt
|
|
@@ -73,6 +73,7 @@ if (BUILD_STATIC_LIBS)
|
|
target_compile_options(${HDF5_HL_F90_C_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_F90_C_LIB_TARGET} STATIC)
|
|
target_link_libraries (${HDF5_HL_F90_C_LIB_TARGET} PUBLIC ${HDF5_F90_C_LIB_TARGET} ${HDF5_HL_LIB_TARGET})
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_C_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_F90_C_LIB_TARGET} ${HDF5_HL_F90_C_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_HL_F90_C_LIB_TARGET} PROPERTIES
|
|
FOLDER libraries/hl/fortran
|
|
@@ -90,6 +91,7 @@ if (BUILD_SHARED_LIBS)
|
|
target_compile_definitions(${HDF5_HL_F90_C_LIBSH_TARGET} PUBLIC "H5_BUILT_AS_DYNAMIC_LIB")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_F90_C_LIBSH_TARGET} SHARED)
|
|
target_link_libraries (${HDF5_HL_F90_C_LIBSH_TARGET} PUBLIC ${HDF5_F90_C_LIBSH_TARGET} ${HDF5_HL_LIBSH_TARGET})
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_C_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_F90_C_LIBSH_TARGET} ${HDF5_HL_F90_C_LIB_NAME} SHARED "HL_F")
|
|
set_target_properties (${HDF5_HL_F90_C_LIBSH_TARGET} PROPERTIES
|
|
FOLDER libraries/hl/fortran
|
|
@@ -238,6 +240,7 @@ if (BUILD_STATIC_LIBS)
|
|
LINKER_LANGUAGE Fortran
|
|
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static
|
|
)
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_F90_LIB_TARGET} ${HDF5_HL_F90_LIB_NAME} STATIC 0)
|
|
set (install_targets_static ${install_targets_static} ${HDF5_HL_F90_LIB_TARGET})
|
|
add_dependencies(${HDF5_HL_F90_LIB_TARGET} H5HLgen)
|
|
@@ -276,6 +279,7 @@ if (BUILD_SHARED_LIBS)
|
|
LINKER_LANGUAGE Fortran
|
|
Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared
|
|
)
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_HL_F90_LIB_NAME} SHARED "HL_F")
|
|
set (install_targets_shared ${install_targets_shared} ${HDF5_HL_F90_LIBSH_TARGET})
|
|
add_dependencies(${HDF5_HL_F90_LIBSH_TARGET} H5HLgenSH)
|
|
diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt
|
|
index ef0fda43290..55e42bc154a 100644
|
|
--- a/hl/src/CMakeLists.txt
|
|
+++ b/hl/src/CMakeLists.txt
|
|
@@ -55,6 +55,7 @@ if (BUILD_STATIC_LIBS)
|
|
target_compile_options(${HDF5_HL_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_LIB_TARGET} STATIC)
|
|
target_link_libraries (${HDF5_HL_LIB_TARGET} PUBLIC ${HDF5_LIB_TARGET})
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_LIB_TARGET} ${HDF5_HL_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_HL_LIB_TARGET} PROPERTIES FOLDER libraries/hl)
|
|
set (install_targets_static ${HDF5_HL_LIB_TARGET})
|
|
@@ -70,6 +71,7 @@ if (BUILD_SHARED_LIBS)
|
|
target_compile_definitions(${HDF5_HL_LIBSH_TARGET} PUBLIC "H5_BUILT_AS_DYNAMIC_LIB")
|
|
TARGET_C_PROPERTIES (${HDF5_HL_LIBSH_TARGET} SHARED)
|
|
target_link_libraries (${HDF5_HL_LIBSH_TARGET} PUBLIC ${HDF5_LIBSH_TARGET})
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_HL_LIBSH_TARGET} ${HDF5_HL_LIB_NAME} SHARED "HL")
|
|
set_target_properties (${HDF5_HL_LIBSH_TARGET} PROPERTIES FOLDER libraries/hl)
|
|
set (install_targets_shared ${HDF5_HL_LIBSH_TARGET})
|
|
diff --git a/java/src-jni/jni/CMakeLists.txt b/java/src-jni/jni/CMakeLists.txt
|
|
index a8df5965671..1248bbf4b6c 100644
|
|
--- a/java/src-jni/jni/CMakeLists.txt
|
|
+++ b/java/src-jni/jni/CMakeLists.txt
|
|
@@ -91,6 +91,7 @@ target_compile_options(${HDF5_JAVA_JNI_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS
|
|
TARGET_C_PROPERTIES (${HDF5_JAVA_JNI_LIB_TARGET} SHARED)
|
|
target_link_libraries (${HDF5_JAVA_JNI_LIB_TARGET} PUBLIC ${HDF5_LIBSH_TARGET})
|
|
set_target_properties (${HDF5_JAVA_JNI_LIB_TARGET} PROPERTIES FOLDER libraries/jni)
|
|
+SET_GLOBAL_VARIABLE (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_JAVA_JNI_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_JAVA_JNI_LIB_TARGET} ${HDF5_JAVA_JNI_LIB_NAME} SHARED "JAVA")
|
|
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
|
index c7a509ccd19..29dc1d885ef 100644
|
|
--- a/src/CMakeLists.txt
|
|
+++ b/src/CMakeLists.txt
|
|
@@ -1263,6 +1263,7 @@ if (BUILD_STATIC_LIBS)
|
|
PRIVATE ${LINK_LIBS} ${LINK_COMP_LIBS}
|
|
PUBLIC ${LINK_PUB_LIBS}
|
|
)
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT ${HDF5_LIB_TARGET})
|
|
H5_SET_LIB_OPTIONS (${HDF5_LIB_TARGET} ${HDF5_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_LIB_TARGET} PROPERTIES FOLDER libraries)
|
|
|
|
@@ -1291,6 +1292,7 @@ if (BUILD_SHARED_LIBS)
|
|
PRIVATE ${LINK_LIBS} ${LINK_COMP_LIBS}
|
|
PUBLIC ${LINK_PUB_LIBS}
|
|
)
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_LIBSH_TARGET} ${HDF5_LIB_NAME} SHARED "LIB")
|
|
set_target_properties (${HDF5_LIBSH_TARGET} PROPERTIES FOLDER libraries)
|
|
|
|
diff --git a/tools/lib/CMakeLists.txt b/tools/lib/CMakeLists.txt
|
|
index d624b9f0fe1..f6f2dd2e158 100644
|
|
--- a/tools/lib/CMakeLists.txt
|
|
+++ b/tools/lib/CMakeLists.txt
|
|
@@ -56,6 +56,7 @@ if (BUILD_STATIC_LIBS)
|
|
PUBLIC ${HDF5_LIB_TARGET}
|
|
PRIVATE "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>"
|
|
)
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_TOOLS_LIB_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_TOOLS_LIB_TARGET} ${HDF5_TOOLS_LIB_NAME} STATIC 0)
|
|
set_target_properties (${HDF5_TOOLS_LIB_TARGET} PROPERTIES FOLDER libraries/tools)
|
|
set (install_targets_static ${HDF5_TOOLS_LIB_TARGET})
|
|
@@ -81,6 +82,7 @@ if (BUILD_SHARED_LIBS)
|
|
PUBLIC ${HDF5_LIBSH_TARGET}
|
|
PRIVATE "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>"
|
|
)
|
|
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_TOOLS_LIBSH_TARGET}")
|
|
H5_SET_LIB_OPTIONS (${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_TOOLS_LIB_NAME} SHARED "TOOLS")
|
|
set_target_properties (${HDF5_TOOLS_LIBSH_TARGET} PROPERTIES FOLDER libraries/tools)
|
|
set (install_targets_shared ${HDF5_TOOLS_LIBSH_TARGET})
|
|
|
|
From bf869558df7b8eff417c0865e85c0e898e2608f6 Mon Sep 17 00:00:00 2001
|
|
From: "M. Scot Breitenfeld" <brtnfld@hdfgroup.org>
|
|
Date: Wed, 18 Feb 2026 14:34:44 -0700
|
|
Subject: [PATCH 4/4] Address PR #6216 review: fix export placement and restore
|
|
HDF5_UTILS_TO_EXPORT
|
|
|
|
- Move build-tree export(TARGETS) outside if(NOT HDF5_EXTERNALLY_CONFIGURED)
|
|
so sub-project builds can access targets in the build tree
|
|
- Use export(TARGETS) with global variables instead of export(EXPORT) to
|
|
avoid dependency on HDF5_EXPORTED_TARGETS which could be unset by parent
|
|
- Restore OPTIONAL on static targets include (needed for build-tree config
|
|
where all targets are in a single combined file)
|
|
- Keep OPTIONAL on Java targets include
|
|
- Restore original comment and HDF5_UTILS_TO_EXPORT global variable
|
|
- Re-add set_global_variable(HDF5_UTILS_TO_EXPORT) calls in tool/util files
|
|
---
|
|
CMakeInstallation.cmake | 33 +++++++----------------
|
|
CMakeLists.txt | 5 +++-
|
|
c++/src/CMakeLists.txt | 7 ++++-
|
|
config/install/hdf5-config.cmake.in | 6 ++---
|
|
fortran/src/CMakeLists.txt | 7 ++++-
|
|
hl/c++/src/CMakeLists.txt | 7 ++++-
|
|
hl/fortran/src/CMakeLists.txt | 7 ++++-
|
|
hl/src/CMakeLists.txt | 7 ++++-
|
|
src/CMakeLists.txt | 7 ++++-
|
|
tools/lib/CMakeLists.txt | 7 ++++-
|
|
tools/src/h5copy/CMakeLists.txt | 1 +
|
|
tools/src/h5diff/CMakeLists.txt | 2 ++
|
|
tools/src/h5dump/CMakeLists.txt | 1 +
|
|
tools/src/h5format_convert/CMakeLists.txt | 1 +
|
|
tools/src/h5import/CMakeLists.txt | 1 +
|
|
tools/src/h5jam/CMakeLists.txt | 2 ++
|
|
tools/src/h5ls/CMakeLists.txt | 1 +
|
|
tools/src/h5perf/CMakeLists.txt | 2 ++
|
|
tools/src/h5repack/CMakeLists.txt | 1 +
|
|
tools/src/h5stat/CMakeLists.txt | 1 +
|
|
tools/src/misc/CMakeLists.txt | 5 ++++
|
|
utils/mirror_vfd/CMakeLists.txt | 2 ++
|
|
utils/tools/h5dwalk/CMakeLists.txt | 1 +
|
|
23 files changed, 80 insertions(+), 34 deletions(-)
|
|
|
|
diff --git a/CMakeInstallation.cmake b/CMakeInstallation.cmake
|
|
index a9db35993e8..583f3153db9 100644
|
|
--- a/CMakeInstallation.cmake
|
|
+++ b/CMakeInstallation.cmake
|
|
@@ -61,7 +61,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
|
|
COMPONENT configinstall
|
|
)
|
|
endif ()
|
|
- if (BUILD_STATIC_LIBS)
|
|
+ if (BUILD_STATIC_LIBS AND BUILD_SHARED_LIBS)
|
|
install (
|
|
EXPORT ${HDF5_EXPORTED_TARGETS}_static
|
|
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}
|
|
@@ -79,30 +79,17 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
|
|
)
|
|
endif ()
|
|
|
|
- #-----------------------------------------------------------------------------
|
|
- # Export all exported targets to the build tree for use by parent project
|
|
- #-----------------------------------------------------------------------------
|
|
- if (HDF5_ENABLE_JNI)
|
|
- export (
|
|
- EXPORT ${HDF5_EXPORTED_TARGETS}_java
|
|
- FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}_java-targets.cmake
|
|
- NAMESPACE ${HDF_PACKAGE_NAMESPACE}
|
|
- )
|
|
- endif ()
|
|
- if (BUILD_STATIC_LIBS)
|
|
- export (
|
|
- EXPORT ${HDF5_EXPORTED_TARGETS}_static
|
|
- FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}_static-targets.cmake
|
|
- NAMESPACE ${HDF_PACKAGE_NAMESPACE}
|
|
- )
|
|
- endif ()
|
|
- export (
|
|
- EXPORT ${HDF5_EXPORTED_TARGETS}
|
|
- FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake
|
|
- NAMESPACE ${HDF_PACKAGE_NAMESPACE}
|
|
- )
|
|
endif ()
|
|
|
|
+#-----------------------------------------------------------------------------
|
|
+# Export all exported targets to the build tree for use by parent project
|
|
+#-----------------------------------------------------------------------------
|
|
+export (
|
|
+ TARGETS ${HDF5_LIBRARIES_TO_EXPORT} ${HDF5_LIB_DEPENDENCIES} ${HDF5_UTILS_TO_EXPORT}
|
|
+ FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake
|
|
+ NAMESPACE ${HDF_PACKAGE_NAMESPACE}
|
|
+)
|
|
+
|
|
#-----------------------------------------------------------------------------
|
|
# Set includes needed for build
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index ffdbbae1c2b..874a17d7b45 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -562,9 +562,12 @@ if (NOT HDF5_EXPORTED_TARGETS)
|
|
endif ()
|
|
|
|
#-----------------------------------------------------------------------------
|
|
-# Used by hdf5-config.cmake.in to advertise available library targets
|
|
+# To include a library in the list exported by the project AT BUILD TIME,
|
|
+# add it to this variable. This is NOT used by Make Install, but for projects
|
|
+# which include hdf5 as a sub-project within their build tree
|
|
#-----------------------------------------------------------------------------
|
|
set_global_variable (HDF5_LIBRARIES_TO_EXPORT "")
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "")
|
|
|
|
set (EXTERNAL_HEADER_LIST "")
|
|
set (EXTERNAL_LIBRARY_LIST "")
|
|
diff --git a/c++/src/CMakeLists.txt b/c++/src/CMakeLists.txt
|
|
index 5fc6bc23058..a88b0f43af1 100644
|
|
--- a/c++/src/CMakeLists.txt
|
|
+++ b/c++/src/CMakeLists.txt
|
|
@@ -170,11 +170,16 @@ if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_CPP_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} cpplibraries)
|
|
|
|
+ if (BUILD_SHARED_LIBS)
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS}_static)
|
|
+ else ()
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS})
|
|
+ endif ()
|
|
install (
|
|
TARGETS
|
|
${install_targets_static}
|
|
EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}_static
|
|
+ ${_static_export}
|
|
LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
|
|
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
|
|
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT cpplibraries
|
|
diff --git a/config/install/hdf5-config.cmake.in b/config/install/hdf5-config.cmake.in
|
|
index 7ceb0ced9b1..354792e5521 100644
|
|
--- a/config/install/hdf5-config.cmake.in
|
|
+++ b/config/install/hdf5-config.cmake.in
|
|
@@ -190,11 +190,11 @@ if (NOT TARGET "@HDF5_PACKAGE@")
|
|
endif ()
|
|
endif ()
|
|
include (@PACKAGE_SHARE_INSTALL_DIR@/@HDF5_PACKAGE@@HDF_PACKAGE_EXT@-targets.cmake)
|
|
- if ( @BUILD_STATIC_LIBS@ )
|
|
- include (@PACKAGE_SHARE_INSTALL_DIR@/@HDF5_PACKAGE@@HDF_PACKAGE_EXT@_static-targets.cmake OPTIONAL)
|
|
+ if ( @BUILD_STATIC_LIBS@ AND @BUILD_SHARED_LIBS@ )
|
|
+ include (@PACKAGE_SHARE_INSTALL_DIR@/@HDF5_PACKAGE@@HDF_PACKAGE_EXT@_static-targets.cmake OPTIONAL)
|
|
endif ()
|
|
if ( @HDF5_BUILD_JAVA@ )
|
|
- include (@PACKAGE_SHARE_INSTALL_DIR@/@HDF5_PACKAGE@@HDF_PACKAGE_EXT@_java-targets.cmake OPTIONAL)
|
|
+ include (@PACKAGE_SHARE_INSTALL_DIR@/@HDF5_PACKAGE@@HDF_PACKAGE_EXT@_java-targets.cmake OPTIONAL)
|
|
endif ()
|
|
endif ()
|
|
|
|
diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt
|
|
index d935223fd7a..5a45fdaa626 100644
|
|
--- a/fortran/src/CMakeLists.txt
|
|
+++ b/fortran/src/CMakeLists.txt
|
|
@@ -636,9 +636,14 @@ if (HDF5_EXPORTED_TARGETS)
|
|
INSTALL_TARGET_PDB (${HDF5_F90_C_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} fortlibraries)
|
|
#INSTALL_TARGET_PDB (${HDF5_F90_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} fortlibraries)
|
|
|
|
+ if (BUILD_SHARED_LIBS)
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS}_static)
|
|
+ else ()
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS})
|
|
+ endif ()
|
|
install (
|
|
TARGETS ${install_targets_static}
|
|
- EXPORT ${HDF5_EXPORTED_TARGETS}_static
|
|
+ EXPORT ${_static_export}
|
|
LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT fortlibraries
|
|
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT fortlibraries
|
|
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT fortlibraries
|
|
diff --git a/hl/c++/src/CMakeLists.txt b/hl/c++/src/CMakeLists.txt
|
|
index 0a220a78543..7e98773af98 100644
|
|
--- a/hl/c++/src/CMakeLists.txt
|
|
+++ b/hl/c++/src/CMakeLists.txt
|
|
@@ -89,11 +89,16 @@ if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_HL_CPP_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hlcpplibraries)
|
|
|
|
+ if (BUILD_SHARED_LIBS)
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS}_static)
|
|
+ else ()
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS})
|
|
+ endif ()
|
|
install (
|
|
TARGETS
|
|
${install_targets_static}
|
|
EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}_static
|
|
+ ${_static_export}
|
|
LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlcpplibraries
|
|
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlcpplibraries
|
|
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlcpplibraries
|
|
diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
|
|
index c9bda362a3e..162822494de 100644
|
|
--- a/hl/fortran/src/CMakeLists.txt
|
|
+++ b/hl/fortran/src/CMakeLists.txt
|
|
@@ -356,9 +356,14 @@ if (HDF5_EXPORTED_TARGETS)
|
|
INSTALL_TARGET_PDB (${HDF5_HL_F90_C_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hlfortlibraries)
|
|
#INSTALL_TARGET_PDB (${HDF5_HL_F90_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hlfortlibraries)
|
|
|
|
+ if (BUILD_SHARED_LIBS)
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS}_static)
|
|
+ else ()
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS})
|
|
+ endif ()
|
|
install (
|
|
TARGETS ${install_targets_static}
|
|
- EXPORT ${HDF5_EXPORTED_TARGETS}_static
|
|
+ EXPORT ${_static_export}
|
|
LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlfortlibraries
|
|
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlfortlibraries
|
|
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlfortlibraries
|
|
diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt
|
|
index 55e42bc154a..07d48aab595 100644
|
|
--- a/hl/src/CMakeLists.txt
|
|
+++ b/hl/src/CMakeLists.txt
|
|
@@ -122,11 +122,16 @@ if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_HL_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hllibraries)
|
|
|
|
+ if (BUILD_SHARED_LIBS)
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS}_static)
|
|
+ else ()
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS})
|
|
+ endif ()
|
|
install (
|
|
TARGETS
|
|
${install_targets_static}
|
|
EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}_static
|
|
+ ${_static_export}
|
|
LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hllibraries
|
|
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hllibraries
|
|
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hllibraries
|
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
|
index 29dc1d885ef..3df9280846d 100644
|
|
--- a/src/CMakeLists.txt
|
|
+++ b/src/CMakeLists.txt
|
|
@@ -1348,11 +1348,16 @@ if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} libraries)
|
|
|
|
+ if (BUILD_SHARED_LIBS)
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS}_static)
|
|
+ else ()
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS})
|
|
+ endif ()
|
|
install (
|
|
TARGETS
|
|
${install_targets_static}
|
|
EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}_static
|
|
+ ${_static_export}
|
|
LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT libraries
|
|
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT libraries
|
|
diff --git a/tools/lib/CMakeLists.txt b/tools/lib/CMakeLists.txt
|
|
index f6f2dd2e158..0fde818f93a 100644
|
|
--- a/tools/lib/CMakeLists.txt
|
|
+++ b/tools/lib/CMakeLists.txt
|
|
@@ -127,11 +127,16 @@ if (HDF5_EXPORTED_TARGETS)
|
|
if (BUILD_STATIC_LIBS)
|
|
INSTALL_TARGET_PDB (${HDF5_TOOLS_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} toolslibraries)
|
|
|
|
+ if (BUILD_SHARED_LIBS)
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS}_static)
|
|
+ else ()
|
|
+ set (_static_export ${HDF5_EXPORTED_TARGETS})
|
|
+ endif ()
|
|
install (
|
|
TARGETS
|
|
${install_targets_static}
|
|
EXPORT
|
|
- ${HDF5_EXPORTED_TARGETS}_static
|
|
+ ${_static_export}
|
|
LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT toolslibraries
|
|
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT toolslibraries
|
|
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolslibraries
|
|
diff --git a/tools/src/h5copy/CMakeLists.txt b/tools/src/h5copy/CMakeLists.txt
|
|
index bda6de578c3..21ac152feba 100644
|
|
--- a/tools/src/h5copy/CMakeLists.txt
|
|
+++ b/tools/src/h5copy/CMakeLists.txt
|
|
@@ -21,6 +21,7 @@ else ()
|
|
target_link_libraries (h5copy PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5copy PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5copy")
|
|
|
|
set (H5_DEP_EXECUTABLES h5copy)
|
|
|
|
diff --git a/tools/src/h5diff/CMakeLists.txt b/tools/src/h5diff/CMakeLists.txt
|
|
index 475b0e0ca07..04a4d9fbcde 100644
|
|
--- a/tools/src/h5diff/CMakeLists.txt
|
|
+++ b/tools/src/h5diff/CMakeLists.txt
|
|
@@ -26,6 +26,7 @@ else ()
|
|
target_link_libraries (h5diff PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5diff PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5diff")
|
|
|
|
set (H5_DEP_EXECUTABLES h5diff)
|
|
|
|
@@ -54,6 +55,7 @@ if (H5_HAVE_PARALLEL)
|
|
target_link_libraries (ph5diff PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>")
|
|
endif ()
|
|
set_target_properties (ph5diff PROPERTIES FOLDER tools)
|
|
+ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};ph5diff")
|
|
set (H5_DEP_EXECUTABLES ${H5_DEP_EXECUTABLES} ph5diff)
|
|
endif ()
|
|
|
|
diff --git a/tools/src/h5dump/CMakeLists.txt b/tools/src/h5dump/CMakeLists.txt
|
|
index ee520b0f21f..000e3ffb33f 100644
|
|
--- a/tools/src/h5dump/CMakeLists.txt
|
|
+++ b/tools/src/h5dump/CMakeLists.txt
|
|
@@ -30,6 +30,7 @@ else ()
|
|
target_link_libraries (h5dump PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5dump PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5dump")
|
|
|
|
set (H5_DEP_EXECUTABLES h5dump)
|
|
|
|
diff --git a/tools/src/h5format_convert/CMakeLists.txt b/tools/src/h5format_convert/CMakeLists.txt
|
|
index b950cf4d07e..ce7bdaee344 100644
|
|
--- a/tools/src/h5format_convert/CMakeLists.txt
|
|
+++ b/tools/src/h5format_convert/CMakeLists.txt
|
|
@@ -21,6 +21,7 @@ else ()
|
|
target_link_libraries (h5format_convert PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5format_convert PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5format_convert")
|
|
|
|
set (H5_DEP_EXECUTABLES h5format_convert)
|
|
|
|
diff --git a/tools/src/h5import/CMakeLists.txt b/tools/src/h5import/CMakeLists.txt
|
|
index b26e49896a3..c95589ee92b 100644
|
|
--- a/tools/src/h5import/CMakeLists.txt
|
|
+++ b/tools/src/h5import/CMakeLists.txt
|
|
@@ -21,6 +21,7 @@ else ()
|
|
endif ()
|
|
#set_target_properties (h5import PROPERTIES COMPILE_DEFINITIONS H5DEBUGIMPORT)
|
|
set_target_properties (h5import PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5import")
|
|
|
|
set (H5_DEP_EXECUTABLES h5import)
|
|
|
|
diff --git a/tools/src/h5jam/CMakeLists.txt b/tools/src/h5jam/CMakeLists.txt
|
|
index 5e7cbbc13d1..7f645608c50 100644
|
|
--- a/tools/src/h5jam/CMakeLists.txt
|
|
+++ b/tools/src/h5jam/CMakeLists.txt
|
|
@@ -20,6 +20,7 @@ else ()
|
|
target_link_libraries (h5jam PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5jam PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5jam")
|
|
|
|
add_executable (h5unjam ${HDF5_TOOLS_SRC_H5JAM_SOURCE_DIR}/h5unjam.c)
|
|
target_include_directories (h5unjam PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -31,6 +32,7 @@ else ()
|
|
target_link_libraries (h5unjam PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5unjam PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5unjam")
|
|
|
|
set (H5_DEP_EXECUTABLES
|
|
h5jam
|
|
diff --git a/tools/src/h5ls/CMakeLists.txt b/tools/src/h5ls/CMakeLists.txt
|
|
index 31771d20d6f..490dfaa6e70 100644
|
|
--- a/tools/src/h5ls/CMakeLists.txt
|
|
+++ b/tools/src/h5ls/CMakeLists.txt
|
|
@@ -22,6 +22,7 @@ else ()
|
|
target_link_libraries (h5ls PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5ls PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5ls")
|
|
|
|
set (H5_DEP_EXECUTABLES h5ls)
|
|
|
|
diff --git a/tools/src/h5perf/CMakeLists.txt b/tools/src/h5perf/CMakeLists.txt
|
|
index f3bcfea77c5..f246df080f1 100644
|
|
--- a/tools/src/h5perf/CMakeLists.txt
|
|
+++ b/tools/src/h5perf/CMakeLists.txt
|
|
@@ -23,6 +23,7 @@ else ()
|
|
target_link_libraries (h5perf_serial PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5perf_serial PROPERTIES FOLDER perform)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5perf_serial")
|
|
|
|
set (H5_DEP_EXECUTABLES h5perf_serial)
|
|
|
|
@@ -48,6 +49,7 @@ if (H5_HAVE_PARALLEL)
|
|
target_link_libraries (h5perf PRIVATE ${LINK_LIBS} ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>")
|
|
endif ()
|
|
set_target_properties (h5perf PROPERTIES FOLDER perform)
|
|
+ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5perf")
|
|
|
|
set (H5_DEP_EXECUTABLES ${H5_DEP_EXECUTABLES} h5perf)
|
|
|
|
diff --git a/tools/src/h5repack/CMakeLists.txt b/tools/src/h5repack/CMakeLists.txt
|
|
index 595c8d689dc..31f6a4970dc 100644
|
|
--- a/tools/src/h5repack/CMakeLists.txt
|
|
+++ b/tools/src/h5repack/CMakeLists.txt
|
|
@@ -32,6 +32,7 @@ else ()
|
|
target_link_libraries (h5repack PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5repack PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5repack")
|
|
|
|
set (H5_DEP_EXECUTABLES h5repack)
|
|
|
|
diff --git a/tools/src/h5stat/CMakeLists.txt b/tools/src/h5stat/CMakeLists.txt
|
|
index 2633d57d5bf..09e373e9ae5 100644
|
|
--- a/tools/src/h5stat/CMakeLists.txt
|
|
+++ b/tools/src/h5stat/CMakeLists.txt
|
|
@@ -21,6 +21,7 @@ else ()
|
|
target_link_libraries (h5stat PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5stat PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5stat")
|
|
|
|
set (H5_DEP_EXECUTABLES h5stat)
|
|
|
|
diff --git a/tools/src/misc/CMakeLists.txt b/tools/src/misc/CMakeLists.txt
|
|
index b227c60652c..e47cd17ef37 100644
|
|
--- a/tools/src/misc/CMakeLists.txt
|
|
+++ b/tools/src/misc/CMakeLists.txt
|
|
@@ -22,6 +22,7 @@ else ()
|
|
target_link_libraries (h5debug PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5debug PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5debug")
|
|
|
|
add_executable (h5repart ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5repart.c)
|
|
target_include_directories (h5repart PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -34,6 +35,7 @@ else ()
|
|
target_link_libraries (h5repart PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5repart PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5repart")
|
|
|
|
add_executable (h5mkgrp ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5mkgrp.c)
|
|
target_include_directories (h5mkgrp PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -46,6 +48,7 @@ else ()
|
|
target_link_libraries (h5mkgrp PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5mkgrp PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5mkgrp")
|
|
|
|
add_executable (h5clear ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5clear.c)
|
|
target_include_directories (h5clear PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -58,6 +61,7 @@ else ()
|
|
target_link_libraries (h5clear PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5clear PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5clear")
|
|
|
|
add_executable (h5delete ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5delete.c)
|
|
target_include_directories (h5delete PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
|
|
@@ -70,6 +74,7 @@ else ()
|
|
target_link_libraries (h5delete PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (h5delete PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5delete")
|
|
|
|
set (H5_DEP_EXECUTABLES
|
|
h5debug
|
|
diff --git a/utils/mirror_vfd/CMakeLists.txt b/utils/mirror_vfd/CMakeLists.txt
|
|
index 43f73718346..cfd53337b34 100644
|
|
--- a/utils/mirror_vfd/CMakeLists.txt
|
|
+++ b/utils/mirror_vfd/CMakeLists.txt
|
|
@@ -24,6 +24,7 @@ else ()
|
|
target_link_libraries (mirror_server PRIVATE ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (mirror_server PROPERTIES FOLDER utils)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};mirror_server")
|
|
set (H5_DEP_EXECUTABLES ${H5_DEP_EXECUTABLES} mirror_server)
|
|
|
|
#-----------------------------------------------------------------------------
|
|
@@ -48,6 +49,7 @@ else ()
|
|
target_link_libraries (mirror_server_stop PRIVATE ${HDF5_LIBSH_TARGET})
|
|
endif ()
|
|
set_target_properties (mirror_server_stop PROPERTIES FOLDER utils)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};mirror_server_stop")
|
|
set (H5_DEP_EXECUTABLES ${H5_DEP_EXECUTABLES} mirror_server_stop)
|
|
|
|
#-----------------------------------------------------------------------------
|
|
diff --git a/utils/tools/h5dwalk/CMakeLists.txt b/utils/tools/h5dwalk/CMakeLists.txt
|
|
index 553f943baa3..b188d6e4e06 100644
|
|
--- a/utils/tools/h5dwalk/CMakeLists.txt
|
|
+++ b/utils/tools/h5dwalk/CMakeLists.txt
|
|
@@ -18,6 +18,7 @@ else ()
|
|
target_link_libraries (h5dwalk PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} ${MFU_LIBRARY} "$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPI::MPI_C>")
|
|
endif ()
|
|
set_target_properties (h5dwalk PROPERTIES FOLDER tools)
|
|
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5dwalk")
|
|
|
|
set (H5_DEP_EXECUTABLES h5dwalk)
|
|
|