summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAllen Byrne <50328838+byrnHDF@users.noreply.github.com>2024-01-09 17:15:46 (GMT)
committerGitHub <noreply@github.com>2024-01-09 17:15:46 (GMT)
commitc3180334e0af1150812f903dd5df34d392259072 (patch)
treec7126e26a29de16f88a2f5cc62f95daac2cf391e
parentc0d6d9bb220bf995a268367cca88dc4febbacf99 (diff)
downloadhdf5-c3180334e0af1150812f903dd5df34d392259072.zip
hdf5-c3180334e0af1150812f903dd5df34d392259072.tar.gz
hdf5-c3180334e0af1150812f903dd5df34d392259072.tar.bz2
CMake compression and directory includes from develop (#3933)
* Merge CMake dir props and compression changes from develop * Remove unused include
-rw-r--r--CMakeFilters.cmake4
-rw-r--r--CMakeLists.txt3
-rw-r--r--HDF5Examples/CMakeLists.txt8
-rw-r--r--HDF5Examples/FORTRAN/H5D/CMakeLists.txt6
-rw-r--r--HDF5Examples/FORTRAN/H5G/CMakeLists.txt6
-rw-r--r--HDF5Examples/FORTRAN/H5PAR/CMakeLists.txt7
-rw-r--r--HDF5Examples/FORTRAN/H5T/CMakeLists.txt6
-rw-r--r--HDF5Examples/JAVA/CMakeLists.txt4
-rw-r--r--HDF5Examples/JAVA/H5D/CMakeLists.txt5
-rw-r--r--HDF5Examples/JAVA/H5G/CMakeLists.txt5
-rw-r--r--HDF5Examples/JAVA/H5J/CMakeLists.txt5
-rw-r--r--HDF5Examples/JAVA/H5T/CMakeLists.txt5
-rw-r--r--config/cmake/LIBAEC/CMakeLists.txt4
-rw-r--r--config/cmake/ZLIB/CMakeLists.txt4
-rw-r--r--config/cmake/mccacheinit.cmake11
-rw-r--r--src/CMakeLists.txt4
-rw-r--r--test/dsets.c3
17 files changed, 36 insertions, 54 deletions
diff --git a/CMakeFilters.cmake b/CMakeFilters.cmake
index a9cba8f..b9c0e11 100644
--- a/CMakeFilters.cmake
+++ b/CMakeFilters.cmake
@@ -104,7 +104,7 @@ if (HDF5_ENABLE_Z_LIB_SUPPORT)
if (H5_HAVE_FILTER_DEFLATE)
set (EXTERNAL_FILTERS "${EXTERNAL_FILTERS} DEFLATE")
endif ()
- INCLUDE_DIRECTORIES (${ZLIB_INCLUDE_DIRS})
+ set (HDF5_COMP_INCLUDE_DIRECTORIES "${HDF5_COMP_INCLUDE_DIRECTORIES};${ZLIB_INCLUDE_DIRS}")
message (VERBOSE "Filter HDF5_ZLIB is ON")
else ()
set (HDF5_ENABLE_Z_LIB_SUPPORT OFF CACHE BOOL "" FORCE)
@@ -148,7 +148,7 @@ if (HDF5_ENABLE_SZIP_SUPPORT)
set (H5_HAVE_FILTER_SZIP 1)
set (H5_HAVE_SZLIB_H 1)
set (H5_HAVE_LIBSZ 1)
- INCLUDE_DIRECTORIES (${SZIP_INCLUDE_DIRS})
+ set (HDF5_COMP_INCLUDE_DIRECTORIES "${HDF5_COMP_INCLUDE_DIRECTORIES};${SZIP_INCLUDE_DIRS}")
message (VERBOSE "Filter SZIP is ON")
if (H5_HAVE_FILTER_SZIP)
set (EXTERNAL_FILTERS "${EXTERNAL_FILTERS} DECODE")
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6107063..1994458 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -462,7 +462,8 @@ set (CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE ON)
# Include directories in the source or build tree should come before other
# directories to prioritize headers in the sources over installed ones.
#-----------------------------------------------------------------------------
-set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
+set (CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
+set (HDF5_COMP_INCLUDE_DIRECTORIES)
#-----------------------------------------------------------------------------
# Mac OS X Options
diff --git a/HDF5Examples/CMakeLists.txt b/HDF5Examples/CMakeLists.txt
index 63adad6..d8e02d5 100644
--- a/HDF5Examples/CMakeLists.txt
+++ b/HDF5Examples/CMakeLists.txt
@@ -36,10 +36,6 @@ message (STATUS "HDF5 H5_LIBVER_DIR: ${H5_LIBVER_DIR} HDF5_VERSION_MAJOR: ${HDF5
option (HDF_BUILD_JAVA "Build JAVA support" OFF)
if (HDF_BUILD_JAVA)
find_package (Java)
- INCLUDE_DIRECTORIES (
- ${JAVA_INCLUDE_PATH}
- ${JAVA_INCLUDE_PATH2}
- )
include (${H5EX_RESOURCES_DIR}/UseJava.cmake)
endif ()
@@ -120,7 +116,9 @@ if (HDF_ENABLE_THREADSAFE)
set (H5EX_HDF5_LINK_LIBS ${H5EX_HDF5_LINK_LIBS} Threads::Threads)
endif ()
-INCLUDE_DIRECTORIES (${H5EX_HDF5_INCLUDE_DIRS})
+set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES
+ "${H5EX_HDF5_INCLUDE_DIRS}"
+)
#-----------------------------------------------------------------------------
# Dashboard and Testing Settings
diff --git a/HDF5Examples/FORTRAN/H5D/CMakeLists.txt b/HDF5Examples/FORTRAN/H5D/CMakeLists.txt
index 0d7f5b5..a929ac3 100644
--- a/HDF5Examples/FORTRAN/H5D/CMakeLists.txt
+++ b/HDF5Examples/FORTRAN/H5D/CMakeLists.txt
@@ -9,10 +9,8 @@ project (HDF5Examples_FORTRAN_H5D Fortran)
#-----------------------------------------------------------------------------
# Setup include Directories
#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (
- ${CMAKE_Fortran_MODULE_DIRECTORY}${HDF_MOD_EXT}
- ${PROJECT_BINARY_DIR}
- ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
+set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES
+ "${CMAKE_Fortran_MODULE_DIRECTORY}${HDF_MOD_EXT};${HDF5_F90_BINARY_DIR};${PROJECT_BINARY_DIR};${CMAKE_LIBRARY_OUTPUT_DIRECTORY}"
)
#-----------------------------------------------------------------------------
diff --git a/HDF5Examples/FORTRAN/H5G/CMakeLists.txt b/HDF5Examples/FORTRAN/H5G/CMakeLists.txt
index dc8888a..835eb04 100644
--- a/HDF5Examples/FORTRAN/H5G/CMakeLists.txt
+++ b/HDF5Examples/FORTRAN/H5G/CMakeLists.txt
@@ -9,10 +9,8 @@ project (HDF5Examples_FORTRAN_H5G Fortran)
#-----------------------------------------------------------------------------
# Setup include Directories
#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (
- ${CMAKE_Fortran_MODULE_DIRECTORY}${HDF_MOD_EXT}
- ${PROJECT_BINARY_DIR}
- ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
+set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES
+ "${CMAKE_Fortran_MODULE_DIRECTORY}${HDF_MOD_EXT};${HDF5_F90_BINARY_DIR};${PROJECT_BINARY_DIR};${CMAKE_LIBRARY_OUTPUT_DIRECTORY}"
)
#-----------------------------------------------------------------------------
diff --git a/HDF5Examples/FORTRAN/H5PAR/CMakeLists.txt b/HDF5Examples/FORTRAN/H5PAR/CMakeLists.txt
index 866f3ef..87fe8ab 100644
--- a/HDF5Examples/FORTRAN/H5PAR/CMakeLists.txt
+++ b/HDF5Examples/FORTRAN/H5PAR/CMakeLists.txt
@@ -9,11 +9,8 @@ project (HDF5Examples_FORTRAN_H5PAR Fortran)
#-----------------------------------------------------------------------------
# Setup include Directories
#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (
- ${CMAKE_Fortran_MODULE_DIRECTORY}${HDF_MOD_EXT}
- ${PROJECT_BINARY_DIR}
- ${HDF5_F90_BINARY_DIR}
- ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
+set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES
+ "${CMAKE_Fortran_MODULE_DIRECTORY}${HDF_MOD_EXT};${HDF5_F90_BINARY_DIR};${PROJECT_BINARY_DIR};${CMAKE_LIBRARY_OUTPUT_DIRECTORY}"
)
#-----------------------------------------------------------------------------
diff --git a/HDF5Examples/FORTRAN/H5T/CMakeLists.txt b/HDF5Examples/FORTRAN/H5T/CMakeLists.txt
index 8462bbf..4ef2256 100644
--- a/HDF5Examples/FORTRAN/H5T/CMakeLists.txt
+++ b/HDF5Examples/FORTRAN/H5T/CMakeLists.txt
@@ -4,10 +4,8 @@ project (HDF5Examples_FORTRAN_H5T Fortran)
#-----------------------------------------------------------------------------
# Setup include Directories
#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (
- ${CMAKE_Fortran_MODULE_DIRECTORY}${HDF_MOD_EXT}
- ${PROJECT_BINARY_DIR}
- ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
+set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES
+ "${CMAKE_Fortran_MODULE_DIRECTORY}${HDF_MOD_EXT};${HDF5_F90_BINARY_DIR};${PROJECT_BINARY_DIR};${CMAKE_LIBRARY_OUTPUT_DIRECTORY}"
)
#-----------------------------------------------------------------------------
diff --git a/HDF5Examples/JAVA/CMakeLists.txt b/HDF5Examples/JAVA/CMakeLists.txt
index 5063e5b..080e505 100644
--- a/HDF5Examples/JAVA/CMakeLists.txt
+++ b/HDF5Examples/JAVA/CMakeLists.txt
@@ -1,6 +1,10 @@
cmake_minimum_required (VERSION 3.18)
project (HDFJAVA_EXAMPLES Java)
+set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES
+ "${HDFJAVA_LIB_DIR};${JAVA_INCLUDE_PATH};${JAVA_INCLUDE_PATH2}"
+)
+
add_subdirectory (H5D)
add_subdirectory (H5T)
add_subdirectory (H5G)
diff --git a/HDF5Examples/JAVA/H5D/CMakeLists.txt b/HDF5Examples/JAVA/H5D/CMakeLists.txt
index 017830b..d5b3b85 100644
--- a/HDF5Examples/JAVA/H5D/CMakeLists.txt
+++ b/HDF5Examples/JAVA/H5D/CMakeLists.txt
@@ -3,11 +3,6 @@ project (HDF5Examples_JAVA_H5D Java)
set (CMAKE_VERBOSE_MAKEFILE 1)
-set_directory_properties(PROPERTIES
- INCLUDE_DIRECTORIES
- "${HDFJAVA_LIB_DIR};${JAVA_INCLUDE_PATH};${JAVA_INCLUDE_PATH2}"
-)
-
#-----------------------------------------------------------------------------
# Define Sources
#-----------------------------------------------------------------------------
diff --git a/HDF5Examples/JAVA/H5G/CMakeLists.txt b/HDF5Examples/JAVA/H5G/CMakeLists.txt
index bd43f2a..ac35a3a 100644
--- a/HDF5Examples/JAVA/H5G/CMakeLists.txt
+++ b/HDF5Examples/JAVA/H5G/CMakeLists.txt
@@ -3,11 +3,6 @@ project (HDF5Examples_JAVA_GROUPS Java)
set (CMAKE_VERBOSE_MAKEFILE 1)
-set_directory_properties(PROPERTIES
- INCLUDE_DIRECTORIES
- "${HDFJAVA_LIB_DIR};${JAVA_INCLUDE_PATH};${JAVA_INCLUDE_PATH2}"
-)
-
#-----------------------------------------------------------------------------
# Define Sources
#-----------------------------------------------------------------------------
diff --git a/HDF5Examples/JAVA/H5J/CMakeLists.txt b/HDF5Examples/JAVA/H5J/CMakeLists.txt
index 1bd28a1..6d15565 100644
--- a/HDF5Examples/JAVA/H5J/CMakeLists.txt
+++ b/HDF5Examples/JAVA/H5J/CMakeLists.txt
@@ -3,11 +3,6 @@ project (HDF5Examples_JAVA_INTRO Java)
set (CMAKE_VERBOSE_MAKEFILE 1)
-set_directory_properties(PROPERTIES
- INCLUDE_DIRECTORIES
- "${HDFJAVA_LIB_DIR};${JAVA_INCLUDE_PATH};${JAVA_INCLUDE_PATH2}"
-)
-
#-----------------------------------------------------------------------------
# Define Sources
#-----------------------------------------------------------------------------
diff --git a/HDF5Examples/JAVA/H5T/CMakeLists.txt b/HDF5Examples/JAVA/H5T/CMakeLists.txt
index 1c06804..d8c8220 100644
--- a/HDF5Examples/JAVA/H5T/CMakeLists.txt
+++ b/HDF5Examples/JAVA/H5T/CMakeLists.txt
@@ -3,11 +3,6 @@ project (HDF5Examples_JAVA_H5T Java)
set (CMAKE_VERBOSE_MAKEFILE 1)
-set_directory_properties(PROPERTIES
- INCLUDE_DIRECTORIES
- "${HDFJAVA_LIB_DIR};${JAVA_INCLUDE_PATH};${JAVA_INCLUDE_PATH2}"
-)
-
#-----------------------------------------------------------------------------
# Define Sources
#-----------------------------------------------------------------------------
diff --git a/config/cmake/LIBAEC/CMakeLists.txt b/config/cmake/LIBAEC/CMakeLists.txt
index a819587..e118438 100644
--- a/config/cmake/LIBAEC/CMakeLists.txt
+++ b/config/cmake/LIBAEC/CMakeLists.txt
@@ -146,7 +146,9 @@ configure_file (${LIBAEC_RESOURCES_DIR}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/
#-----------------------------------------------------------------------------
# All libs/tests/examples need the main include directories
#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (${LIBAEC_BINARY_DIR} ${LIBAEC_SOURCE_DIR}/src ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
+set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES
+ "${LIBAEC_BINARY_DIR};${LIBAEC_SOURCE_DIR}/src;${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
+)
#-----------------------------------------------------------------------------
# Define LIBAEC Library
diff --git a/config/cmake/ZLIB/CMakeLists.txt b/config/cmake/ZLIB/CMakeLists.txt
index d4b3924..09f67b0 100644
--- a/config/cmake/ZLIB/CMakeLists.txt
+++ b/config/cmake/ZLIB/CMakeLists.txt
@@ -146,7 +146,9 @@ endif ()
#-----------------------------------------------------------------------------
# All libs/tests/examples need the main include directories
#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (${ZLIB_BINARY_DIR} ${ZLIB_SOURCE_DIR} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
+set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES
+ "${ZLIB_BINARY_DIR};${ZLIB_SOURCE_DIR};${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
+)
#============================================================================
# zlib
diff --git a/config/cmake/mccacheinit.cmake b/config/cmake/mccacheinit.cmake
index 2fe3b6b..5b41167 100644
--- a/config/cmake/mccacheinit.cmake
+++ b/config/cmake/mccacheinit.cmake
@@ -50,11 +50,18 @@ set (HDF5_MINGW_STATIC_GCC_LIBS ON CACHE BOOL "Statically link libgcc/libstdc++"
set (HDF5_ALLOW_EXTERNAL_SUPPORT "TGZ" CACHE STRING "Allow External Library Building (NO GIT TGZ)" FORCE)
set_property (CACHE HDF5_ALLOW_EXTERNAL_SUPPORT PROPERTY STRINGS NO GIT TGZ)
+########################
+# compression options
+########################
set (ZLIB_PACKAGE_NAME "zlib" CACHE STRING "Name of ZLIB package" FORCE)
-set (ZLIB_TGZ_NAME "ZLib.tar.gz" CACHE STRING "Use ZLib from compressed file" FORCE)
+set (ZLIB_TGZ_NAME "zlib-1.3.tar.gz" CACHE STRING "Use HDF5_ZLib from compressed file" FORCE)
+set (ZLIB_TGZ_ORIGPATH "https://github.com/madler/zlib/releases/download/v1.3" CACHE STRING "Use ZLIB from original location" FORCE)
+set (ZLIB_USE_LOCALCONTENT ON CACHE BOOL "Use local file for ZLIB FetchContent" FORCE)
set (LIBAEC_PACKAGE_NAME "libaec" CACHE STRING "Name of AEC SZIP package" FORCE)
-set (LIBAEC_TGZ_NAME "LIBAEC.tar.gz" CACHE STRING "Use SZip AEC from compressed file" FORCE)
+set (LIBAEC_TGZ_NAME "libaec-1.0.6.tar.gz" CACHE STRING "Use SZip AEC from compressed file" FORCE)
+set (LIBAEC_TGZ_ORIGPATH "https://github.com/MathisRosenhauer/libaec/releases/download/v1.0.6" CACHE STRING "Use LIBAEC from original location" FORCE)
+set (LIBAEC_USE_LOCALCONTENT ON CACHE BOOL "Use local file for LIBAEC FetchContent" FORCE)
set (CMAKE_BUILD_TYPE "Debug" CACHE STRING "Build Debug" FORCE)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index a0a67df..c0e5e67 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1058,7 +1058,7 @@ endif ()
if (BUILD_STATIC_LIBS)
add_library (${HDF5_LIB_TARGET} STATIC ${common_SRCS} H5build_settings.c ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS} ${H5_MODULE_HEADERS})
target_include_directories (${HDF5_LIB_TARGET}
- PRIVATE "${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
+ PRIVATE "${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};${HDF5_COMP_INCLUDE_DIRECTORIES};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>;$<BUILD_INTERFACE:${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR}>"
)
target_compile_options(${HDF5_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
@@ -1091,7 +1091,7 @@ endif ()
if (BUILD_SHARED_LIBS)
add_library (${HDF5_LIBSH_TARGET} SHARED ${common_SRCS} H5build_settings.c ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS} ${H5_MODULE_HEADERS})
target_include_directories (${HDF5_LIBSH_TARGET}
- PRIVATE "${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
+ PRIVATE "${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};${HDF5_COMP_INCLUDE_DIRECTORIES};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
PUBLIC "$<$<BOOL:${HDF5_ENABLE_HDFS}>:${HDFS_INCLUDE_DIR}>"
INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>;$<BUILD_INTERFACE:${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR}>"
)
diff --git a/test/dsets.c b/test/dsets.c
index 9bebbb8..aba1f1e 100644
--- a/test/dsets.c
+++ b/test/dsets.c
@@ -48,9 +48,6 @@
#include "H5FDpkg.h"
#include "H5VMprivate.h"
#include "H5Zpkg.h"
-#ifdef H5_HAVE_SZLIB_H
-#include "szlib.h"
-#endif
static const char *FILENAME[] = {"dataset", /* 0 */
"compact_dataset", /* 1 */