summaryrefslogtreecommitdiffstats
path: root/hl
diff options
context:
space:
mode:
authorVailin Choi <vchoi@hdfgroup.org>2014-06-17 20:40:01 (GMT)
committerVailin Choi <vchoi@hdfgroup.org>2014-06-17 20:40:01 (GMT)
commit611d2c89afa02204e6321849d24aed26878097f0 (patch)
tree806802afc30a3a212d94b47ad661fd3b8c91a0df /hl
parent720e0c7623be9847867b9d857329ab626ee8f3e8 (diff)
downloadhdf5-611d2c89afa02204e6321849d24aed26878097f0.zip
hdf5-611d2c89afa02204e6321849d24aed26878097f0.tar.gz
hdf5-611d2c89afa02204e6321849d24aed26878097f0.tar.bz2
[svn-r25307] Bring revisions #24698 - #24783 from trunk to revise_chunks.
Tested on jam, koala, ostrich, platypus.
Diffstat (limited to 'hl')
-rw-r--r--hl/CMakeLists.txt32
-rw-r--r--hl/c++/CMakeLists.txt8
-rw-r--r--hl/c++/examples/CMakeLists.txt12
-rw-r--r--hl/c++/examples/CMakeTests.cmake6
-rw-r--r--hl/c++/src/CMakeLists.txt24
-rw-r--r--hl/c++/src/Makefile.in2
-rw-r--r--hl/c++/test/CMakeLists.txt8
-rw-r--r--hl/c++/test/CMakeTests.cmake2
-rw-r--r--hl/examples/CMakeLists.txt18
-rw-r--r--hl/examples/CMakeTests.cmake36
-rw-r--r--hl/examples/ex_image2.c17
-rw-r--r--hl/fortran/CMakeLists.txt8
-rw-r--r--hl/fortran/examples/CMakeLists.txt20
-rw-r--r--hl/fortran/examples/CMakeTests.cmake6
-rw-r--r--hl/fortran/src/CMakeLists.txt68
-rw-r--r--hl/fortran/src/Makefile.in2
-rw-r--r--hl/fortran/test/CMakeLists.txt34
-rw-r--r--hl/fortran/test/CMakeTests.cmake10
-rw-r--r--hl/src/CMakeLists.txt31
-rw-r--r--hl/src/H5DO.c122
-rw-r--r--hl/src/H5DOprivate.h37
-rw-r--r--hl/src/Makefile.in2
-rw-r--r--hl/test/CMakeLists.txt22
-rw-r--r--hl/test/CMakeTests.cmake40
-rw-r--r--hl/tools/CMakeLists.txt36
-rw-r--r--hl/tools/CMakeTests.cmake10
26 files changed, 273 insertions, 340 deletions
diff --git a/hl/CMakeLists.txt b/hl/CMakeLists.txt
index 5c9403d..c6c0f82 100644
--- a/hl/CMakeLists.txt
+++ b/hl/CMakeLists.txt
@@ -4,16 +4,16 @@ PROJECT (HDF5_HL C CXX)
#-----------------------------------------------------------------------------
# Apply Definitions to compiler in this directory and below
#-----------------------------------------------------------------------------
-ADD_DEFINITIONS (${HDF5_EXTRA_C_FLAGS})
+add_definitions (${HDF5_EXTRA_C_FLAGS})
#-----------------------------------------------------------------------------
# Shared Libs
#-----------------------------------------------------------------------------
-IF (BUILD_SHARED_LIBS)
- SET (HL_BUILT_AS_DYNAMIC_LIB 1)
-ELSE (BUILD_SHARED_LIBS)
- SET (HL_BUILT_AS_STATIC_LIB 1)
-ENDIF (BUILD_SHARED_LIBS)
+if (BUILD_SHARED_LIBS)
+ set (HL_BUILT_AS_DYNAMIC_LIB 1)
+else (BUILD_SHARED_LIBS)
+ set (HL_BUILT_AS_STATIC_LIB 1)
+endif (BUILD_SHARED_LIBS)
#-----------------------------------------------------------------------------
# List Source files
@@ -23,22 +23,22 @@ INCLUDE_DIRECTORIES (${HDF5_HL_SOURCE_DIR}/src )
ADD_SUBDIRECTORY (${HDF5_HL_SOURCE_DIR}/src ${HDF5_HL_BINARY_DIR}/src)
#-- Build the High level Tools
-IF (HDF5_BUILD_TOOLS)
+if (HDF5_BUILD_TOOLS)
ADD_SUBDIRECTORY (${HDF5_HL_SOURCE_DIR}/tools ${HDF5_HL_BINARY_DIR}/tools)
-ENDIF (HDF5_BUILD_TOOLS)
+endif (HDF5_BUILD_TOOLS)
#-- Add High Level Examples
-IF (HDF5_BUILD_EXAMPLES)
+if (HDF5_BUILD_EXAMPLES)
ADD_SUBDIRECTORY (${HDF5_HL_SOURCE_DIR}/examples ${HDF5_HL_BINARY_DIR}/examples)
-ENDIF (HDF5_BUILD_EXAMPLES)
+endif (HDF5_BUILD_EXAMPLES)
#-- Build the Unit testing if requested
-IF (NOT HDF5_EXTERNALLY_CONFIGURED)
- IF (BUILD_TESTING)
+if (NOT HDF5_EXTERNALLY_CONFIGURED)
+ if (BUILD_TESTING)
ADD_SUBDIRECTORY (${HDF5_HL_SOURCE_DIR}/test ${HDF5_HL_BINARY_DIR}/test)
- ENDIF (BUILD_TESTING)
-ENDIF (NOT HDF5_EXTERNALLY_CONFIGURED)
+ endif (BUILD_TESTING)
+endif (NOT HDF5_EXTERNALLY_CONFIGURED)
-IF (HDF5_BUILD_CPP_LIB)
+if (HDF5_BUILD_CPP_LIB)
ADD_SUBDIRECTORY (${HDF5_HL_SOURCE_DIR}/c++ ${HDF5_HL_BINARY_DIR}/c++)
-ENDIF (HDF5_BUILD_CPP_LIB)
+endif (HDF5_BUILD_CPP_LIB)
diff --git a/hl/c++/CMakeLists.txt b/hl/c++/CMakeLists.txt
index 8d68dd0..d641eae 100644
--- a/hl/c++/CMakeLists.txt
+++ b/hl/c++/CMakeLists.txt
@@ -9,14 +9,14 @@ ADD_SUBDIRECTORY (${HDF5_HL_CPP_SOURCE_DIR}/src ${HDF5_HL_CPP_BINARY_DIR}/src)
# --------------------------------------------------------------------
# Add in the examples for the Packet Table codes
# --------------------------------------------------------------------
-IF (HDF5_BUILD_EXAMPLES)
+if (HDF5_BUILD_EXAMPLES)
ADD_SUBDIRECTORY (${HDF5_HL_CPP_SOURCE_DIR}/examples ${HDF5_HL_CPP_BINARY_DIR}/examples)
-ENDIF (HDF5_BUILD_EXAMPLES)
+endif (HDF5_BUILD_EXAMPLES)
# --------------------------------------------------------------------
# Add in the unit tests for the packet table c++ wrapper
# --------------------------------------------------------------------
-IF (BUILD_TESTING)
+if (BUILD_TESTING)
ADD_SUBDIRECTORY (${HDF5_HL_CPP_SOURCE_DIR}/test ${HDF5_HL_CPP_BINARY_DIR}/test)
-ENDIF (BUILD_TESTING)
+endif (BUILD_TESTING)
diff --git a/hl/c++/examples/CMakeLists.txt b/hl/c++/examples/CMakeLists.txt
index f762839..ca086db 100644
--- a/hl/c++/examples/CMakeLists.txt
+++ b/hl/c++/examples/CMakeLists.txt
@@ -10,17 +10,17 @@ INCLUDE_DIRECTORIES (${HDF5_HL_CPP_SRC_DIR}/src)
# --------------------------------------------------------------------
# Add in the examples for the Packet Table codes
# --------------------------------------------------------------------
-ADD_EXECUTABLE (ptExampleFL ${HDF5_HL_CPP_EXAMPLES_SOURCE_DIR}/ptExampleFL.cpp)
+add_executable (ptExampleFL ${HDF5_HL_CPP_EXAMPLES_SOURCE_DIR}/ptExampleFL.cpp)
TARGET_NAMING (ptExampleFL ${LIB_TYPE})
TARGET_C_PROPERTIES (ptExampleFL " " " ")
-TARGET_LINK_LIBRARIES (
+target_link_libraries (
ptExampleFL
${HDF5_HL_CPP_LIB_TARGET}
${HDF5_HL_LIB_TARGET}
${HDF5_LIB_TARGET}
)
-SET_TARGET_PROPERTIES (ptExampleFL PROPERTIES FOLDER examples/hl/cpp)
+set_target_properties (ptExampleFL PROPERTIES FOLDER examples/hl/cpp)
-IF (BUILD_TESTING)
- INCLUDE (CMakeTests.cmake)
-ENDIF (BUILD_TESTING)
+if (BUILD_TESTING)
+ include (CMakeTests.cmake)
+endif (BUILD_TESTING)
diff --git a/hl/c++/examples/CMakeTests.cmake b/hl/c++/examples/CMakeTests.cmake
index c73ceeb..dc279e5 100644
--- a/hl/c++/examples/CMakeTests.cmake
+++ b/hl/c++/examples/CMakeTests.cmake
@@ -5,12 +5,12 @@
##############################################################################
##############################################################################
# Remove any output file left over from previous test run
-ADD_TEST (
+add_test (
NAME cpp_hl_ex_ptExampleFL-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
PTcppexampleFL.h5
)
-ADD_TEST (NAME cpp_hl_ex_ptExampleFL COMMAND $<TARGET_FILE:ptExampleFL>)
-SET_TESTS_PROPERTIES (cpp_hl_ex_ptExampleFL PROPERTIES DEPENDS cpp_hl_ex_ptExampleFL-clear-objects)
+add_test (NAME cpp_hl_ex_ptExampleFL COMMAND $<TARGET_FILE:ptExampleFL>)
+set_tests_properties (cpp_hl_ex_ptExampleFL PROPERTIES DEPENDS cpp_hl_ex_ptExampleFL-clear-objects)
diff --git a/hl/c++/src/CMakeLists.txt b/hl/c++/src/CMakeLists.txt
index 34e1a7a..9f8d3f8 100644
--- a/hl/c++/src/CMakeLists.txt
+++ b/hl/c++/src/CMakeLists.txt
@@ -7,24 +7,24 @@ PROJECT (HDF5_HL_CPP_SRC)
INCLUDE_DIRECTORIES (${HDF5_HL_SRC_DIR}/src)
INCLUDE_DIRECTORIES (${HDF5_HL_CPP_SRC_SOURCE_DIR})
-SET (HDF5_HL_CPP_SRCS ${HDF5_HL_CPP_SRC_SOURCE_DIR}/H5PacketTable.cpp)
-SET (HDF5_HL_CPP_HDRS ${HDF5_HL_CPP_SRC_SOURCE_DIR}/H5PacketTable.h)
+set (HDF5_HL_CPP_SRCS ${HDF5_HL_CPP_SRC_SOURCE_DIR}/H5PacketTable.cpp)
+set (HDF5_HL_CPP_HDRS ${HDF5_HL_CPP_SRC_SOURCE_DIR}/H5PacketTable.h)
-ADD_LIBRARY (${HDF5_HL_CPP_LIB_TARGET} ${LIB_TYPE} ${HDF5_HL_CPP_SRCS})
+add_library (${HDF5_HL_CPP_LIB_TARGET} ${LIB_TYPE} ${HDF5_HL_CPP_SRCS})
TARGET_C_PROPERTIES (${HDF5_HL_CPP_LIB_TARGET} " " " ")
-TARGET_LINK_LIBRARIES (
+target_link_libraries (
${HDF5_HL_CPP_LIB_TARGET}
${HDF5_HL_LIB_TARGET}
${HDF5_LIB_TARGET}
)
-SET_GLOBAL_VARIABLE (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_CPP_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} ${LIB_TYPE})
-SET_TARGET_PROPERTIES (${HDF5_HL_CPP_LIB_TARGET} PROPERTIES FOLDER libraries/hl)
+set_target_properties (${HDF5_HL_CPP_LIB_TARGET} PROPERTIES FOLDER libraries/hl)
#-----------------------------------------------------------------------------
# Add file(s) to CMake Install
#-----------------------------------------------------------------------------
-INSTALL (
+install (
FILES
${HDF5_HL_CPP_HDRS}
DESTINATION
@@ -36,12 +36,12 @@ INSTALL (
#-----------------------------------------------------------------------------
# Add Target(s) to CMake Install for import into other projects
#-----------------------------------------------------------------------------
-IF (HDF5_EXPORTED_TARGETS)
- IF (BUILD_SHARED_LIBS)
+if (HDF5_EXPORTED_TARGETS)
+ if (BUILD_SHARED_LIBS)
INSTALL_TARGET_PDB (${HDF5_HL_CPP_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hlcpplibraries)
- ENDIF (BUILD_SHARED_LIBS)
+ endif (BUILD_SHARED_LIBS)
- INSTALL (
+ install (
TARGETS
${HDF5_HL_CPP_LIB_TARGET}
EXPORT
@@ -50,4 +50,4 @@ IF (HDF5_EXPORTED_TARGETS)
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlcpplibraries
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlcpplibraries
)
-ENDIF (HDF5_EXPORTED_TARGETS)
+endif (HDF5_EXPORTED_TARGETS)
diff --git a/hl/c++/src/Makefile.in b/hl/c++/src/Makefile.in
index 2a0040c..235cb81 100644
--- a/hl/c++/src/Makefile.in
+++ b/hl/c++/src/Makefile.in
@@ -460,7 +460,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# Add libtool shared library version numbers to the HDF5 library
# See libtool versioning documentation online.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 162
+LT_VERS_REVISION = 165
LT_VERS_AGE = 0
# Include src directory
diff --git a/hl/c++/test/CMakeLists.txt b/hl/c++/test/CMakeLists.txt
index 46229ba..82a4df0 100644
--- a/hl/c++/test/CMakeLists.txt
+++ b/hl/c++/test/CMakeLists.txt
@@ -15,10 +15,10 @@ INCLUDE_DIRECTORIES (${HDF5_TEST_SRC_DIR})
INCLUDE_DIRECTORIES (${HDF5_HL_SRC_DIR}/test)
INCLUDE_DIRECTORIES (${HDF5_CPP_SRC_DIR}/src)
-ADD_EXECUTABLE (hl_ptableTest ${HDF5_HL_CPP_TEST_SOURCE_DIR}/ptableTest.cpp)
+add_executable (hl_ptableTest ${HDF5_HL_CPP_TEST_SOURCE_DIR}/ptableTest.cpp)
TARGET_C_PROPERTIES (hl_ptableTest " " " ")
TARGET_NAMING (hl_ptableTest ${LIB_TYPE})
-TARGET_LINK_LIBRARIES (
+target_link_libraries (
hl_ptableTest
${HDF5_LIB_TARGET}
${HDF5_TEST_LIB_TARGET}
@@ -26,6 +26,6 @@ TARGET_LINK_LIBRARIES (
${HDF5_HL_LIB_TARGET}
${HDF5_HL_CPP_LIB_TARGET}
)
-SET_TARGET_PROPERTIES (hl_ptableTest PROPERTIES FOLDER test/hl/cpp)
+set_target_properties (hl_ptableTest PROPERTIES FOLDER test/hl/cpp)
-INCLUDE (CMakeTests.cmake)
+include (CMakeTests.cmake)
diff --git a/hl/c++/test/CMakeTests.cmake b/hl/c++/test/CMakeTests.cmake
index cb9454b..5386624 100644
--- a/hl/c++/test/CMakeTests.cmake
+++ b/hl/c++/test/CMakeTests.cmake
@@ -5,4 +5,4 @@
##############################################################################
##############################################################################
- ADD_TEST (NAME hl_ptableTest COMMAND $<TARGET_FILE:hl_ptableTest>)
+ add_test (NAME hl_ptableTest COMMAND $<TARGET_FILE:hl_ptableTest>)
diff --git a/hl/examples/CMakeLists.txt b/hl/examples/CMakeLists.txt
index a9c5258..2d621ca 100644
--- a/hl/examples/CMakeLists.txt
+++ b/hl/examples/CMakeLists.txt
@@ -4,7 +4,7 @@ PROJECT (HDF5_HL_EXAMPLES )
#-----------------------------------------------------------------------------
# Define Sources
#-----------------------------------------------------------------------------
-SET (examples
+set (examples
ex_lite1
ex_lite2 #ex_lite2 PROPERTIES DEPENDS ex_lite1)
ex_lite3
@@ -26,16 +26,16 @@ SET (examples
ex_ds1
)
-FOREACH (example ${examples})
- ADD_EXECUTABLE (hl_ex_${example} ${HDF5_HL_EXAMPLES_SOURCE_DIR}/${example}.c)
+foreach (example ${examples})
+ add_executable (hl_ex_${example} ${HDF5_HL_EXAMPLES_SOURCE_DIR}/${example}.c)
TARGET_NAMING (hl_ex_${example} ${LIB_TYPE})
TARGET_C_PROPERTIES (hl_ex_${example} " " " ")
- TARGET_LINK_LIBRARIES (hl_ex_${example} ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
- SET_TARGET_PROPERTIES (hl_ex_${example} PROPERTIES FOLDER examples/hl)
-ENDFOREACH (example ${examples})
+ target_link_libraries (hl_ex_${example} ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
+ set_target_properties (hl_ex_${example} PROPERTIES FOLDER examples/hl)
+endforeach (example ${examples})
-IF (BUILD_TESTING)
+if (BUILD_TESTING)
- INCLUDE (CMakeTests.cmake)
+ include (CMakeTests.cmake)
-ENDIF (BUILD_TESTING)
+endif (BUILD_TESTING)
diff --git a/hl/examples/CMakeTests.cmake b/hl/examples/CMakeTests.cmake
index 0f9ca11..bc51183 100644
--- a/hl/examples/CMakeTests.cmake
+++ b/hl/examples/CMakeTests.cmake
@@ -5,24 +5,24 @@
##############################################################################
##############################################################################
-SET (HDF5_TEST_FILES
+set (HDF5_TEST_FILES
image24pixel.txt
image8.txt
)
-FOREACH (h5_file ${HDF5_TEST_FILES})
- SET (dest "${PROJECT_BINARY_DIR}/${h5_file}")
- #MESSAGE (STATUS " Copying ${h5_file}")
- ADD_CUSTOM_COMMAND (
+foreach (h5_file ${HDF5_TEST_FILES})
+ set (dest "${PROJECT_BINARY_DIR}/${h5_file}")
+ #message (STATUS " Copying ${h5_file}")
+ add_custom_command (
TARGET hl_ex_ex_ds1
POST_BUILD
COMMAND ${CMAKE_COMMAND}
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/${h5_file} ${dest}
)
-ENDFOREACH (h5_file ${HDF5_TEST_FILES})
+endforeach (h5_file ${HDF5_TEST_FILES})
# Remove any output file left over from previous test run
- ADD_TEST (
+ add_test (
NAME hl_ex-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
@@ -46,15 +46,15 @@ ENDFOREACH (h5_file ${HDF5_TEST_FILES})
ex_table_12.h5
ex_ds1.h5
)
- IF (NOT "${last_test}" STREQUAL "")
- SET_TESTS_PROPERTIES (hl_ex-clear-objects PROPERTIES DEPENDS ${last_test})
- ENDIF (NOT "${last_test}" STREQUAL "")
- SET (last_test "hl_ex-clear-objects")
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (hl_ex-clear-objects PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
+ set (last_test "hl_ex-clear-objects")
-FOREACH (example ${examples})
- ADD_TEST (NAME hl_ex_${example} COMMAND $<TARGET_FILE:hl_ex_${example}>)
- IF (NOT "${last_test}" STREQUAL "")
- SET_TESTS_PROPERTIES (hl_ex_${example} PROPERTIES DEPENDS ${last_test})
- ENDIF (NOT "${last_test}" STREQUAL "")
- SET (last_test "hl_ex_${example}")
-ENDFOREACH (example ${examples})
+foreach (example ${examples})
+ add_test (NAME hl_ex_${example} COMMAND $<TARGET_FILE:hl_ex_${example}>)
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (hl_ex_${example} PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
+ set (last_test "hl_ex_${example}")
+endforeach (example ${examples})
diff --git a/hl/examples/ex_image2.c b/hl/examples/ex_image2.c
index 76c3a75..3276f7c 100644
--- a/hl/examples/ex_image2.c
+++ b/hl/examples/ex_image2.c
@@ -26,7 +26,7 @@
#define PAL_ENTRIES 256
static int read_data(const char* file_name, hsize_t *width, hsize_t *height );
-unsigned char *gbuf = 0; /* global buffer for image data */
+unsigned char *gbuf = NULL; /* global buffer for image data */
int main( void )
{
@@ -79,18 +79,25 @@ int main( void )
/* make dataset */
status=H5IMmake_image_24bit( file_id, IMAGE2_NAME, width, height, "INTERLACE_PIXEL", gbuf );
- if (gbuf) {
- free(gbuf);
- gbuf = NULL;
- }
/* close the file. */
H5Fclose( file_id );
+ if(gbuf) {
+ free(gbuf);
+ gbuf = NULL;
+ }
+
return 0;
out:
printf("Error on return function...Exiting\n");
+
+ if(gbuf) {
+ free(gbuf);
+ gbuf = NULL;
+ }
+
return 1;
}
diff --git a/hl/fortran/CMakeLists.txt b/hl/fortran/CMakeLists.txt
index 0da0825..f0ff22d 100644
--- a/hl/fortran/CMakeLists.txt
+++ b/hl/fortran/CMakeLists.txt
@@ -9,13 +9,13 @@ ADD_SUBDIRECTORY (${HDF5_HL_F90_SOURCE_DIR}/src ${HDF5_HL_F90_BINARY_DIR}/src)
#-----------------------------------------------------------------------------
# Build the HL Fortran Examples
#-----------------------------------------------------------------------------
-IF (HDF5_BUILD_FORTRAN_EXAMPLES)
+if (HDF5_BUILD_FORTRAN_EXAMPLES)
ADD_SUBDIRECTORY (${HDF5_HL_F90_SOURCE_DIR}/examples ${HDF5_HL_F90_BINARY_DIR}/examples)
-ENDIF (HDF5_BUILD_FORTRAN_EXAMPLES)
+endif (HDF5_BUILD_FORTRAN_EXAMPLES)
#-----------------------------------------------------------------------------
# Testing
#-----------------------------------------------------------------------------
-IF (BUILD_TESTING)
+if (BUILD_TESTING)
ADD_SUBDIRECTORY (${HDF5_HL_F90_SOURCE_DIR}/test ${HDF5_HL_F90_BINARY_DIR}/test)
-ENDIF (BUILD_TESTING)
+endif (BUILD_TESTING)
diff --git a/hl/fortran/examples/CMakeLists.txt b/hl/fortran/examples/CMakeLists.txt
index 0f663c7..189c9cc 100644
--- a/hl/fortran/examples/CMakeLists.txt
+++ b/hl/fortran/examples/CMakeLists.txt
@@ -10,27 +10,27 @@ INCLUDE_DIRECTORIES (
${HDF5_F90_SRC_DIR}/src
)
-SET (examples
+set (examples
exlite
ex_ds1
)
-FOREACH (example ${examples})
- ADD_EXECUTABLE (hl_f90_ex_${example} ${HDF5_HL_F90_EXAMPLES_SOURCE_DIR}/${example}.f90)
+foreach (example ${examples})
+ add_executable (hl_f90_ex_${example} ${HDF5_HL_F90_EXAMPLES_SOURCE_DIR}/${example}.f90)
TARGET_NAMING (hl_f90_ex_${example} ${LIB_TYPE})
TARGET_FORTRAN_PROPERTIES (hl_f90_ex_${example} " " " ")
- TARGET_LINK_LIBRARIES (hl_f90_ex_${example}
+ target_link_libraries (hl_f90_ex_${example}
${HDF5_HL_F90_LIB_TARGET}
${HDF5_F90_LIB_TARGET}
${HDF5_LIB_TARGET}
)
- SET_TARGET_PROPERTIES (hl_f90_ex_${example} PROPERTIES LINKER_LANGUAGE Fortran)
- SET_TARGET_PROPERTIES (hl_f90_ex_${example} PROPERTIES FOLDER examples/hl/fortran)
+ set_target_properties (hl_f90_ex_${example} PROPERTIES LINKER_LANGUAGE Fortran)
+ set_target_properties (hl_f90_ex_${example} PROPERTIES FOLDER examples/hl/fortran)
-ENDFOREACH (example ${examples})
+endforeach (example ${examples})
-IF (BUILD_TESTING)
+if (BUILD_TESTING)
- INCLUDE (CMakeTests.cmake)
+ include (CMakeTests.cmake)
-ENDIF (BUILD_TESTING)
+endif (BUILD_TESTING)
diff --git a/hl/fortran/examples/CMakeTests.cmake b/hl/fortran/examples/CMakeTests.cmake
index 7e6c348..1784041 100644
--- a/hl/fortran/examples/CMakeTests.cmake
+++ b/hl/fortran/examples/CMakeTests.cmake
@@ -5,6 +5,6 @@
##############################################################################
##############################################################################
-FOREACH (example ${examples})
- ADD_TEST (NAME hl_f90_ex_${example} COMMAND $<TARGET_FILE:hl_f90_ex_${example}>)
-ENDFOREACH (example ${examples})
+foreach (example ${examples})
+ add_test (NAME hl_f90_ex_${example} COMMAND $<TARGET_FILE:hl_f90_ex_${example}>)
+endforeach (example ${examples})
diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
index 22353f8..9efcbc8 100644
--- a/hl/fortran/src/CMakeLists.txt
+++ b/hl/fortran/src/CMakeLists.txt
@@ -14,66 +14,66 @@ INCLUDE_DIRECTORIES (
#-----------------------------------------------------------------------------
# hl_f90CStub lib
#-----------------------------------------------------------------------------
-SET (HDF5_HL_F90_C_SRCS
+set (HDF5_HL_F90_C_SRCS
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5DSfc.c
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5LTfc.c
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5IMfc.c
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5IMcc.c
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5TBfc.c
)
-SET_SOURCE_FILES_PROPERTIES (${HDF5_HL_F90_C_SRCS} PROPERTIES LANGUAGE C)
+set_source_files_properties (${HDF5_HL_F90_C_SRCS} PROPERTIES LANGUAGE C)
-SET (HDF5_HL_F90_HEADERS ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5LTf90proto.h)
+set (HDF5_HL_F90_HEADERS ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5LTf90proto.h)
-ADD_LIBRARY (${HDF5_HL_F90_C_LIB_TARGET} ${LIB_TYPE} ${HDF5_HL_F90_C_SRCS} ${HDF5_HL_F90_HEADERS})
+add_library (${HDF5_HL_F90_C_LIB_TARGET} ${LIB_TYPE} ${HDF5_HL_F90_C_SRCS} ${HDF5_HL_F90_HEADERS})
TARGET_C_PROPERTIES (${HDF5_HL_F90_C_LIB_TARGET} " " " ")
-TARGET_LINK_LIBRARIES (${HDF5_HL_F90_C_LIB_TARGET} ${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}")
+target_link_libraries (${HDF5_HL_F90_C_LIB_TARGET} ${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} ${LIB_TYPE})
-SET_TARGET_PROPERTIES (${HDF5_HL_F90_C_LIB_TARGET} PROPERTIES FOLDER libraries/hl/fortran)
-SET_TARGET_PROPERTIES (${HDF5_HL_F90_C_LIB_TARGET} PROPERTIES LINKER_LANGUAGE C)
+set_target_properties (${HDF5_HL_F90_C_LIB_TARGET} PROPERTIES FOLDER libraries/hl/fortran)
+set_target_properties (${HDF5_HL_F90_C_LIB_TARGET} PROPERTIES LINKER_LANGUAGE C)
#-----------------------------------------------------------------------------
# Fortran Modules
#-----------------------------------------------------------------------------
-SET (HDF5_HL_F90_F_SRCS
+set (HDF5_HL_F90_F_SRCS
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5DSff.f90
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5TBff.f90
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5LTff.f90
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5IMff.f90
)
-ADD_LIBRARY (${HDF5_HL_F90_LIB_TARGET} ${LIB_TYPE} ${HDF5_HL_F90_F_SRCS})
-SET (SHARED_LINK_FLAGS " ")
-IF (BUILD_SHARED_LIBS)
- IF (WIN32 AND NOT CYGWIN)
- SET_PROPERTY (TARGET ${HDF5_HL_F90_LIB_TARGET}
+add_library (${HDF5_HL_F90_LIB_TARGET} ${LIB_TYPE} ${HDF5_HL_F90_F_SRCS})
+set (SHARED_LINK_FLAGS " ")
+if (BUILD_SHARED_LIBS)
+ if (WIN32 AND NOT CYGWIN)
+ set_property (TARGET ${HDF5_HL_F90_LIB_TARGET}
APPEND PROPERTY COMPILE_DEFINITIONS
BUILD_HDF5_DLL
)
- IF (MSVC)
- SET (SHARED_LINK_FLAGS "/DLL")
- ENDIF (MSVC)
- ENDIF (WIN32 AND NOT CYGWIN)
-ENDIF (BUILD_SHARED_LIBS)
-IF (WIN32 AND NOT CYGWIN)
- SET_PROPERTY (TARGET ${HDF5_HL_F90_LIB_TARGET}
+ if (MSVC)
+ set (SHARED_LINK_FLAGS "/DLL")
+ endif (MSVC)
+ endif (WIN32 AND NOT CYGWIN)
+endif (BUILD_SHARED_LIBS)
+if (WIN32 AND NOT CYGWIN)
+ set_property (TARGET ${HDF5_HL_F90_LIB_TARGET}
APPEND PROPERTY COMPILE_DEFINITIONS
HDF5F90_WINDOWS
)
-ENDIF (WIN32 AND NOT CYGWIN)
+endif (WIN32 AND NOT CYGWIN)
TARGET_FORTRAN_PROPERTIES (${HDF5_HL_F90_LIB_TARGET} " " ${SHARED_LINK_FLAGS})
-SET_TARGET_PROPERTIES (${HDF5_HL_F90_LIB_TARGET} PROPERTIES LINKER_LANGUAGE Fortran)
-TARGET_LINK_LIBRARIES (${HDF5_HL_F90_LIB_TARGET} ${HDF5_HL_F90_C_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
-SET_GLOBAL_VARIABLE (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_LIB_TARGET}")
+set_target_properties (${HDF5_HL_F90_LIB_TARGET} PROPERTIES LINKER_LANGUAGE Fortran)
+target_link_libraries (${HDF5_HL_F90_LIB_TARGET} ${HDF5_HL_F90_C_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
+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} ${LIB_TYPE})
-SET_TARGET_PROPERTIES (${HDF5_HL_F90_LIB_TARGET} PROPERTIES FOLDER libraries/hl/fortran)
+set_target_properties (${HDF5_HL_F90_LIB_TARGET} PROPERTIES FOLDER libraries/hl/fortran)
#-----------------------------------------------------------------------------
# Add file(s) to CMake Install
#-----------------------------------------------------------------------------
-IF (WIN32 AND NOT CYGWIN)
- INSTALL (
+if (WIN32 AND NOT CYGWIN)
+ install (
DIRECTORY
${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/
DESTINATION
@@ -81,8 +81,8 @@ IF (WIN32 AND NOT CYGWIN)
COMPONENT
fortheaders
)
-ELSE (WIN32 AND NOT CYGWIN)
- INSTALL (
+else (WIN32 AND NOT CYGWIN)
+ install (
DIRECTORY
${CMAKE_Fortran_MODULE_DIRECTORY}/
DESTINATION
@@ -90,17 +90,17 @@ ELSE (WIN32 AND NOT CYGWIN)
COMPONENT
fortheaders
)
-ENDIF (WIN32 AND NOT CYGWIN)
+endif (WIN32 AND NOT CYGWIN)
#-----------------------------------------------------------------------------
# Add Target(s) to CMake Install for import into other projects
#-----------------------------------------------------------------------------
-IF (HDF5_EXPORTED_TARGETS)
+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)
- INSTALL (
+ install (
TARGETS
${HDF5_HL_F90_C_LIB_TARGET}
${HDF5_HL_F90_LIB_TARGET}
@@ -110,4 +110,4 @@ IF (HDF5_EXPORTED_TARGETS)
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hlfortlibraries
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hlfortlibraries
)
-ENDIF (HDF5_EXPORTED_TARGETS)
+endif (HDF5_EXPORTED_TARGETS)
diff --git a/hl/fortran/src/Makefile.in b/hl/fortran/src/Makefile.in
index 7aa93cc2..37aac6b 100644
--- a/hl/fortran/src/Makefile.in
+++ b/hl/fortran/src/Makefile.in
@@ -476,7 +476,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# Add libtool shared library version numbers to the HDF5 library
# See libtool versioning documentation online.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 162
+LT_VERS_REVISION = 165
LT_VERS_AGE = 0
INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir)/hl/src -I$(top_builddir)/hl/src \
-I$(top_srcdir)/fortran/src -I$(top_builddir)/fortran/src
diff --git a/hl/fortran/test/CMakeLists.txt b/hl/fortran/test/CMakeLists.txt
index 2084162..23c199c 100644
--- a/hl/fortran/test/CMakeLists.txt
+++ b/hl/fortran/test/CMakeLists.txt
@@ -7,35 +7,35 @@ PROJECT (HDF5_HL_FORTRAN_TESTS C CXX Fortran)
INCLUDE_DIRECTORIES (${CMAKE_Fortran_MODULE_DIRECTORY} ${HDF5_F90_BINARY_DIR} ${HDF5_F90_SRC_DIR}/src)
#-- Adding test for hl_f90_tstds
-ADD_EXECUTABLE (hl_f90_tstds tstds.f90)
+add_executable (hl_f90_tstds tstds.f90)
TARGET_NAMING (hl_f90_tstds ${LIB_TYPE})
TARGET_FORTRAN_PROPERTIES (hl_f90_tstds " " " ")
-TARGET_LINK_LIBRARIES (hl_f90_tstds ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
-SET_TARGET_PROPERTIES (hl_f90_tstds PROPERTIES LINKER_LANGUAGE Fortran)
-SET_TARGET_PROPERTIES (hl_f90_tstds PROPERTIES FOLDER test/hl/fortran)
+target_link_libraries (hl_f90_tstds ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
+set_target_properties (hl_f90_tstds PROPERTIES LINKER_LANGUAGE Fortran)
+set_target_properties (hl_f90_tstds PROPERTIES FOLDER test/hl/fortran)
#-- Adding test for hl_f90_tstlite
-ADD_EXECUTABLE (hl_f90_tstlite tstlite.f90)
+add_executable (hl_f90_tstlite tstlite.f90)
TARGET_NAMING (hl_f90_tstlite ${LIB_TYPE})
TARGET_FORTRAN_PROPERTIES (hl_f90_tstlite " " " ")
-TARGET_LINK_LIBRARIES (hl_f90_tstlite ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
-SET_TARGET_PROPERTIES (hl_f90_tstlite PROPERTIES LINKER_LANGUAGE Fortran)
-SET_TARGET_PROPERTIES (hl_f90_tstlite PROPERTIES FOLDER test/hl/fortran)
+target_link_libraries (hl_f90_tstlite ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
+set_target_properties (hl_f90_tstlite PROPERTIES LINKER_LANGUAGE Fortran)
+set_target_properties (hl_f90_tstlite PROPERTIES FOLDER test/hl/fortran)
#-- Adding test for hl_f90_tstimage
-ADD_EXECUTABLE (hl_f90_tstimage tstimage.f90)
+add_executable (hl_f90_tstimage tstimage.f90)
TARGET_NAMING (hl_f90_tstimage ${LIB_TYPE})
TARGET_FORTRAN_PROPERTIES (hl_f90_tstimage " " " ")
-TARGET_LINK_LIBRARIES (hl_f90_tstimage ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
-SET_TARGET_PROPERTIES (hl_f90_tstimage PROPERTIES LINKER_LANGUAGE Fortran)
-SET_TARGET_PROPERTIES (hl_f90_tstimage PROPERTIES FOLDER test/hl/fortran)
+target_link_libraries (hl_f90_tstimage ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
+set_target_properties (hl_f90_tstimage PROPERTIES LINKER_LANGUAGE Fortran)
+set_target_properties (hl_f90_tstimage PROPERTIES FOLDER test/hl/fortran)
#-- Adding test for hl_f90_tsttable
-ADD_EXECUTABLE (hl_f90_tsttable tsttable.f90)
+add_executable (hl_f90_tsttable tsttable.f90)
TARGET_NAMING (hl_f90_tsttable ${LIB_TYPE})
TARGET_FORTRAN_PROPERTIES (hl_f90_tsttable " " " ")
-TARGET_LINK_LIBRARIES (hl_f90_tsttable ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
-SET_TARGET_PROPERTIES (hl_f90_tsttable PROPERTIES LINKER_LANGUAGE Fortran)
-SET_TARGET_PROPERTIES (hl_f90_tsttable PROPERTIES FOLDER test/hl/fortran)
+target_link_libraries (hl_f90_tsttable ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET})
+set_target_properties (hl_f90_tsttable PROPERTIES LINKER_LANGUAGE Fortran)
+set_target_properties (hl_f90_tsttable PROPERTIES FOLDER test/hl/fortran)
-INCLUDE (CMakeTests.cmake)
+include (CMakeTests.cmake)
diff --git a/hl/fortran/test/CMakeTests.cmake b/hl/fortran/test/CMakeTests.cmake
index 81253bd..94bb385 100644
--- a/hl/fortran/test/CMakeTests.cmake
+++ b/hl/fortran/test/CMakeTests.cmake
@@ -6,7 +6,7 @@
##############################################################################
# Remove any output file left over from previous test run
-ADD_TEST (
+add_test (
NAME hl_fortran_test-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
@@ -20,10 +20,10 @@ ADD_TEST (
tstds.h5
)
-ADD_TEST (NAME hl_f90_tstds COMMAND $<TARGET_FILE:hl_f90_tstds>)
+add_test (NAME hl_f90_tstds COMMAND $<TARGET_FILE:hl_f90_tstds>)
-ADD_TEST (NAME hl_f90_tstlite COMMAND $<TARGET_FILE:hl_f90_tstlite>)
+add_test (NAME hl_f90_tstlite COMMAND $<TARGET_FILE:hl_f90_tstlite>)
-ADD_TEST (NAME hl_f90_tstimage COMMAND $<TARGET_FILE:hl_f90_tstimage>)
+add_test (NAME hl_f90_tstimage COMMAND $<TARGET_FILE:hl_f90_tstimage>)
-ADD_TEST (NAME hl_f90_tsttable COMMAND $<TARGET_FILE:hl_f90_tsttable>)
+add_test (NAME hl_f90_tsttable COMMAND $<TARGET_FILE:hl_f90_tsttable>)
diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt
index 5904d05..7a4e411 100644
--- a/hl/src/CMakeLists.txt
+++ b/hl/src/CMakeLists.txt
@@ -4,16 +4,14 @@ PROJECT (HDF5_HL_SRC)
#-----------------------------------------------------------------------------
# Shared Libs
#-----------------------------------------------------------------------------
-IF (BUILD_SHARED_LIBS)
- SET (HL_BUILT_AS_DYNAMIC_LIB 1)
-ENDIF (BUILD_SHARED_LIBS)
+if (BUILD_SHARED_LIBS)
+ set (HL_BUILT_AS_DYNAMIC_LIB 1)
+endif (BUILD_SHARED_LIBS)
#-----------------------------------------------------------------------------
# List Source files
#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (${HDF5_HL_SRC_DIR}/src)
-
-SET (HL_SRCS
+set (HL_SRCS
${HDF5_HL_SRC_SOURCE_DIR}/H5DO.c
${HDF5_HL_SRC_SOURCE_DIR}/H5DS.c
${HDF5_HL_SRC_SOURCE_DIR}/H5IM.c
@@ -24,7 +22,7 @@ SET (HL_SRCS
${HDF5_HL_SRC_SOURCE_DIR}/H5TB.c
)
-SET (HL_HEADERS
+set (HL_HEADERS
${HDF5_HL_SRC_SOURCE_DIR}/H5DOpublic.h
${HDF5_HL_SRC_SOURCE_DIR}/H5DSpublic.h
${HDF5_HL_SRC_SOURCE_DIR}/H5IMpublic.h
@@ -35,17 +33,20 @@ SET (HL_HEADERS
${HDF5_HL_SRC_SOURCE_DIR}/hdf5_hl.h
)
-ADD_LIBRARY (${HDF5_HL_LIB_TARGET} ${LIB_TYPE} ${HL_SRCS} ${HL_HEADERS})
+add_library (${HDF5_HL_LIB_TARGET} ${LIB_TYPE} ${HL_SRCS} ${HL_HEADERS})
TARGET_C_PROPERTIES (${HDF5_HL_LIB_TARGET} " " " ")
-TARGET_LINK_LIBRARIES (${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
-SET_GLOBAL_VARIABLE (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_LIB_TARGET}")
+target_link_libraries (${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
H5_SET_LIB_OPTIONS (${HDF5_HL_LIB_TARGET} ${HDF5_HL_LIB_NAME} ${LIB_TYPE})
-SET_TARGET_PROPERTIES (${HDF5_HL_LIB_TARGET} PROPERTIES FOLDER libraries/hl)
+set_target_properties (${HDF5_HL_LIB_TARGET} PROPERTIES
+ FOLDER libraries/hl
+ INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
+)
+set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_LIB_TARGET}")
#-----------------------------------------------------------------------------
# Add file(s) to CMake Install
#-----------------------------------------------------------------------------
-INSTALL (
+install (
FILES
${HL_HEADERS}
DESTINATION
@@ -57,11 +58,11 @@ INSTALL (
#-----------------------------------------------------------------------------
# Add Target(s) to CMake Install for import into other projects
#-----------------------------------------------------------------------------
-IF (HDF5_EXPORTED_TARGETS)
+if (HDF5_EXPORTED_TARGETS)
INSTALL_TARGET_PDB (${HDF5_HL_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} hllibraries)
- INSTALL (
+ install (
TARGETS
${HDF5_HL_LIB_TARGET}
EXPORT
@@ -70,4 +71,4 @@ IF (HDF5_EXPORTED_TARGETS)
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT hllibraries
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hllibraries
)
-ENDIF (HDF5_EXPORTED_TARGETS)
+endif (HDF5_EXPORTED_TARGETS)
diff --git a/hl/src/H5DO.c b/hl/src/H5DO.c
index 9cfd8c1..99dbd93 100644
--- a/hl/src/H5DO.c
+++ b/hl/src/H5DO.c
@@ -18,8 +18,14 @@
#include <assert.h>
#include <stdio.h>
-#include "H5DOprivate.h"
+/* High-level library internal header file */
+#include "H5HLprivate2.h"
+/* public LT prototypes */
+#include "H5DOpublic.h"
+
+
+
/*-------------------------------------------------------------------------
* Function: H5DOwrite_chunk
*
@@ -30,108 +36,64 @@
* Programmer: Raymond Lu
* 30 July 2012
*
- * Modifications:
*-------------------------------------------------------------------------
*/
herr_t
H5DOwrite_chunk(hid_t dset_id, hid_t dxpl_id, uint32_t filters, const hsize_t *offset,
size_t data_size, const void *buf)
{
- hbool_t created_dxpl = FALSE;
- herr_t ret_value = SUCCEED; /* Return value */
+ hbool_t created_dxpl = FALSE; /* Whether we created a DXPL */
+ hbool_t do_direct_write = TRUE; /* Flag for direct writes */
+ uint32_t data_size_32; /* Chunk data size (limited to 32-bits currently) */
+ herr_t ret_value = FAIL; /* Return value */
- if(dset_id < 0) {
- ret_value = FAIL;
+ /* Check arguments */
+ if(dset_id < 0)
goto done;
- }
-
- if(!buf) {
- ret_value = FAIL;
+ if(!buf)
goto done;
- }
-
- if(!offset) {
- ret_value = FAIL;
+ if(!offset)
goto done;
- }
-
- if(!data_size) {
- ret_value = FAIL;
+ if(!data_size)
+ goto done;
+ data_size_32 = (uint32_t)data_size;
+ if(data_size != (size_t)data_size_32)
goto done;
- }
+ /* If the user passed in a default DXPL, create one to pass to H5Dwrite() */
if(H5P_DEFAULT == dxpl_id) {
- if((dxpl_id = H5Pcreate(H5P_DATASET_XFER)) < 0) {
- ret_value = FAIL;
+ if((dxpl_id = H5Pcreate(H5P_DATASET_XFER)) < 0)
goto done;
- }
-
created_dxpl = TRUE;
- }
+ } /* end if */
- if(H5DO_write_chunk(dset_id, dxpl_id, filters, offset, data_size, buf) < 0) {
- ret_value = FAIL;
+ /* Set direct write parameters */
+ if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_FLAG_NAME, &do_direct_write) < 0)
goto done;
- }
-
-done:
- if(created_dxpl) {
- if(H5Pclose(dxpl_id) < 0)
- ret_value = FAIL;
- }
-
- return ret_value;
-}
-
-/*-------------------------------------------------------------------------
- * Function: H5DO_write_chunk
- *
- * Purpose: Private function for H5DOwrite_chunk
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: Raymond Lu
- * 30 July 2012
- *
- * Modifications:
- *-------------------------------------------------------------------------
- */
-herr_t
-H5DO_write_chunk(hid_t dset_id, hid_t dxpl_id, uint32_t filters, const hsize_t *offset,
- size_t data_size, const void *buf)
-{
- hbool_t do_direct_write = TRUE;
- herr_t ret_value = SUCCEED; /* Return value */
-
- if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_FLAG_NAME, &do_direct_write) < 0) {
- ret_value = FAIL;
+ if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_FILTERS_NAME, &filters) < 0)
goto done;
- }
-
- if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_FILTERS_NAME, &filters) < 0) {
- ret_value = FAIL;
+ if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_OFFSET_NAME, &offset) < 0)
goto done;
- }
-
- if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_OFFSET_NAME, &offset) < 0) {
- ret_value = FAIL;
+ if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_DATASIZE_NAME, &data_size_32) < 0)
goto done;
- }
- if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_DATASIZE_NAME, &data_size) < 0) {
- ret_value = FAIL;
+ /* Write chunk */
+ if(H5Dwrite(dset_id, 0, H5S_ALL, H5S_ALL, dxpl_id, buf) < 0)
goto done;
- }
- if(H5Dwrite(dset_id, 0, H5S_ALL, H5S_ALL, dxpl_id, buf) < 0) {
- ret_value = FAIL;
- goto done;
- }
+ /* Indicate success */
+ ret_value = SUCCEED;
done:
- do_direct_write = FALSE;
- if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_FLAG_NAME, &do_direct_write) < 0)
- ret_value = FAIL;
+ if(created_dxpl) {
+ if(H5Pclose(dxpl_id) < 0)
+ ret_value = FAIL;
+ } /* end if */
+ else
+ /* Reset the direct write flag on user DXPL */
+ if(H5Pset(dxpl_id, H5D_XFER_DIRECT_CHUNK_WRITE_FLAG_NAME, &do_direct_write) < 0)
+ ret_value = FAIL;
+
+ return(ret_value);
+} /* end H5DOwrite_chunk() */
- return ret_value;
-}
diff --git a/hl/src/H5DOprivate.h b/hl/src/H5DOprivate.h
deleted file mode 100644
index fcea585..0000000
--- a/hl/src/H5DOprivate.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- * Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
- * All rights reserved. *
- * *
- * This file is part of HDF5. The full HDF5 copyright notice, including *
- * terms governing use, modification, and redistribution, is contained in *
- * the files COPYING and Copyright.html. COPYING can be found at the root *
- * of the source code distribution tree; Copyright.html can be found at the *
- * root level of an installed copy of the electronic HDF5 document set and *
- * is linked from the top-level documents page. It can also be found at *
- * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
- * access to either file, you may request a copy from help@hdfgroup.org. *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-
-#ifndef _H5DOprivate_H
-#define _H5DOprivate_H
-
-/* High-level library internal header file */
-#include "H5HLprivate2.h"
-
-/* public LT prototypes */
-#include "H5DOpublic.h"
-
-/*-------------------------------------------------------------------------
- * Private functions
- *-------------------------------------------------------------------------
- */
-
-H5_HLDLL herr_t H5DO_write_chunk(hid_t dset_id,
- hid_t dxpl_id,
- uint32_t filters,
- const hsize_t *offset,
- size_t data_size,
- const void *buf);
-
-#endif
diff --git a/hl/src/Makefile.in b/hl/src/Makefile.in
index 29cd2f2..e277048 100644
--- a/hl/src/Makefile.in
+++ b/hl/src/Makefile.in
@@ -459,7 +459,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# Add libtool shared library version numbers to the HDF5 library
# See libtool versioning documentation online.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 162
+LT_VERS_REVISION = 165
LT_VERS_AGE = 0
# This library is our main target.
diff --git a/hl/test/CMakeLists.txt b/hl/test/CMakeLists.txt
index f969dbf..32b049a 100644
--- a/hl/test/CMakeLists.txt
+++ b/hl/test/CMakeLists.txt
@@ -11,8 +11,8 @@ PROJECT (HDF5_HL_TEST)
#-----------------------------------------------------------------------------
# Generate the H5srcdir_str.h file containing user settings needed by compilation
#-----------------------------------------------------------------------------
-SET (srcdir ${CMAKE_CURRENT_SOURCE_DIR})
-CONFIGURE_FILE (${HDF5_HL_TEST_SOURCE_DIR}/H5srcdir_str.h.in H5srcdir_str.h @ONLY)
+set (srcdir ${CMAKE_CURRENT_SOURCE_DIR})
+configure_file (${HDF5_HL_TEST_SOURCE_DIR}/H5srcdir_str.h.in H5srcdir_str.h @ONLY)
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_BINARY_DIR})
INCLUDE_DIRECTORIES (${HDF5_TEST_SRC_DIR})
@@ -21,15 +21,15 @@ INCLUDE_DIRECTORIES (${HDF5_TEST_SRC_DIR})
# Macro used to add a unit test
# --------------------------------------------------------------------
MACRO (HL_ADD_EXE hl_name)
- ADD_EXECUTABLE (hl_${hl_name} ${hl_name}.c)
+ add_executable (hl_${hl_name} ${hl_name}.c)
TARGET_NAMING (hl_${hl_name} ${LIB_TYPE})
TARGET_C_PROPERTIES (hl_${hl_name} " " " ")
- TARGET_LINK_LIBRARIES (hl_${hl_name}
+ target_link_libraries (hl_${hl_name}
${HDF5_HL_LIB_TARGET}
${HDF5_LIB_TARGET}
${HDF5_TEST_LIB_TARGET}
)
- SET_TARGET_PROPERTIES (hl_${hl_name} PROPERTIES FOLDER test/hl)
+ set_target_properties (hl_${hl_name} PROPERTIES FOLDER test/hl)
ENDMACRO (HL_ADD_EXE)
HL_ADD_EXE (test_ds)
@@ -43,16 +43,16 @@ HL_ADD_EXE (test_table)
# This executable is used to generate test files for the test_ds test.
# It should only be run during development when new test files are needed
# --------------------------------------------------------------------
-IF (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
- ADD_EXECUTABLE (hl_gen_test_ds gen_test_ds.c)
+if (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
+ add_executable (hl_gen_test_ds gen_test_ds.c)
TARGET_NAMING (hl_gen_test_ds ${LIB_TYPE})
TARGET_C_PROPERTIES (hl_gen_test_ds " " " ")
- TARGET_LINK_LIBRARIES (hl_gen_test_ds
+ target_link_libraries (hl_gen_test_ds
${HDF5_HL_LIB_TARGET}
${HDF5_LIB_TARGET}
${HDF5_TEST_LIB_TARGET}
)
- SET_TARGET_PROPERTIES (hl_gen_test_ds PROPERTIES FOLDER test/hl/gen)
-ENDIF (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
+ set_target_properties (hl_gen_test_ds PROPERTIES FOLDER test/hl/gen)
+endif (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
-INCLUDE (CMakeTests.cmake)
+include (CMakeTests.cmake)
diff --git a/hl/test/CMakeTests.cmake b/hl/test/CMakeTests.cmake
index 5d42b57..fda388a 100644
--- a/hl/test/CMakeTests.cmake
+++ b/hl/test/CMakeTests.cmake
@@ -9,29 +9,29 @@
# Macro used to add a unit test
# --------------------------------------------------------------------
MACRO (HL_ADD_TEST hl_name files)
- ADD_TEST (NAME hl_${hl_name} COMMAND $<TARGET_FILE:hl_${hl_name}>)
- IF (NOT "${last_test}" STREQUAL "")
- SET_TESTS_PROPERTIES (hl_${hl_name} PROPERTIES DEPENDS ${last_test})
- ENDIF (NOT "${last_test}" STREQUAL "")
+ add_test (NAME hl_${hl_name} COMMAND $<TARGET_FILE:hl_${hl_name}>)
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (hl_${hl_name} PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
# --------------------------------------------------------------------
#-- Copy the necessary files.
# --------------------------------------------------------------------
- FOREACH (h5_file ${files})
- SET (dest "${HDF5_HL_TEST_BINARY_DIR}/${h5_file}")
- #MESSAGE (STATUS " Copying HL Test File ${h5_file} to ${dest}")
- ADD_CUSTOM_COMMAND (
+ foreach (h5_file ${files})
+ set (dest "${HDF5_HL_TEST_BINARY_DIR}/${h5_file}")
+ #message (STATUS " Copying HL Test File ${h5_file} to ${dest}")
+ add_custom_command (
TARGET hl_${hl_name}
PRE_BUILD
COMMAND ${CMAKE_COMMAND}
ARGS -E copy_if_different ${HDF5_HL_TEST_SOURCE_DIR}/${h5_file} ${dest}
)
- ENDFOREACH (h5_file ${HL_REFERENCE_TEST_FILES})
+ endforeach (h5_file ${HL_REFERENCE_TEST_FILES})
ENDMACRO (HL_ADD_TEST)
# Remove any output file left over from previous test run
-ADD_TEST (
+add_test (
NAME hl_test-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
@@ -60,14 +60,14 @@ ADD_TEST (
test_packet_table.h5
test_table.h5
)
-IF (NOT "${last_test}" STREQUAL "")
- SET_TESTS_PROPERTIES (hl_test-clear-objects PROPERTIES DEPENDS ${last_test})
-ENDIF (NOT "${last_test}" STREQUAL "")
-SET (last_test "hl_test-clear-objects")
+if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (hl_test-clear-objects PROPERTIES DEPENDS ${last_test})
+endif (NOT "${last_test}" STREQUAL "")
+set (last_test "hl_test-clear-objects")
-HL_ADD_TEST (test_ds "dsdata.txt;dslat.txt;dslon.txt;test_ds_be.h5;test_ds_le.h5")
-HL_ADD_TEST (test_dset_opt "")
-HL_ADD_TEST (test_image "image8.txt;sepia.pal;earth.pal;image24pixel.txt;image24plane.txt;usa.wri")
-HL_ADD_TEST (test_lite "dtype_file.txt")
-HL_ADD_TEST (test_packet "")
-HL_ADD_TEST (test_table "test_table_be.h5;test_table_cray.h5;test_table_le.h5")
+HL_add_test (test_ds "dsdata.txt;dslat.txt;dslon.txt;test_ds_be.h5;test_ds_le.h5")
+HL_add_test (test_dset_opt "")
+HL_add_test (test_image "image8.txt;sepia.pal;earth.pal;image24pixel.txt;image24plane.txt;usa.wri")
+HL_add_test (test_lite "dtype_file.txt")
+HL_add_test (test_packet "")
+HL_add_test (test_table "test_table_be.h5;test_table_cray.h5;test_table_le.h5")
diff --git a/hl/tools/CMakeLists.txt b/hl/tools/CMakeLists.txt
index 256ff89..a3db367 100644
--- a/hl/tools/CMakeLists.txt
+++ b/hl/tools/CMakeLists.txt
@@ -4,7 +4,7 @@ PROJECT (HDF5_HL_TOOLS)
#-----------------------------------------------------------------------------
# Define Sources
#-----------------------------------------------------------------------------
-SET (GIF2H5_SRCS
+set (GIF2H5_SRCS
${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gif.h
${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/decompress.c
${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gif2hdf.c
@@ -17,46 +17,46 @@ SET (GIF2H5_SRCS
INCLUDE_DIRECTORIES (${HDF5_TOOLS_SRC_DIR}/lib)
INCLUDE_DIRECTORIES (${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5)
-ADD_EXECUTABLE (gif2h5 ${GIF2H5_SRCS})
+add_executable (gif2h5 ${GIF2H5_SRCS})
TARGET_NAMING (gif2h5 ${LIB_TYPE})
TARGET_C_PROPERTIES (gif2h5 " " " ")
-TARGET_LINK_LIBRARIES (gif2h5 ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
-SET_TARGET_PROPERTIES (gif2h5 PROPERTIES FOLDER tools/hl)
+target_link_libraries (gif2h5 ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+set_target_properties (gif2h5 PROPERTIES FOLDER tools/hl)
#-- Add h52gif program
-SET (hdf2gif_SRCS
+set (hdf2gif_SRCS
${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/hdf2gif.c
${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/hdfgifwr.c
)
-ADD_EXECUTABLE (h52gif ${hdf2gif_SRCS})
+add_executable (h52gif ${hdf2gif_SRCS})
TARGET_NAMING (h52gif ${LIB_TYPE})
TARGET_C_PROPERTIES (h52gif " " " ")
-TARGET_LINK_LIBRARIES (h52gif ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
-SET_TARGET_PROPERTIES (h52gif PROPERTIES FOLDER tools/hl)
+target_link_libraries (h52gif ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+set_target_properties (h52gif PROPERTIES FOLDER tools/hl)
-IF (BUILD_TESTING)
+if (BUILD_TESTING)
# --------------------------------------------------------------------
# This executable can generate the actual test files - Currently not
# used in the CMake Build system as we rely on the test files that are
# shipped with HDF5 source archives
# --------------------------------------------------------------------
- IF (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
- ADD_EXECUTABLE (hl_h52gifgentest ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/h52gifgentst.c)
+ if (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
+ add_executable (hl_h52gifgentest ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/h52gifgentst.c)
TARGET_NAMING (hl_h52gifgentest ${LIB_TYPE})
TARGET_C_PROPERTIES (hl_h52gifgentest " " " ")
- TARGET_LINK_LIBRARIES (hl_h52gifgentest ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
- SET_TARGET_PROPERTIES (hl_h52gifgentest PROPERTIES FOLDER generator/tools/hl)
+ target_link_libraries (hl_h52gifgentest ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
+ set_target_properties (hl_h52gifgentest PROPERTIES FOLDER generator/tools/hl)
-# ADD_TEST (NAME hl_h52gifgentest COMMAND $<TARGET_FILE:hl_h52gifgentest>)
- ENDIF (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
+# add_test (NAME hl_h52gifgentest COMMAND $<TARGET_FILE:hl_h52gifgentest>)
+ endif (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
- INCLUDE (CMakeTests.cmake)
-ENDIF (BUILD_TESTING)
+ include (CMakeTests.cmake)
+endif (BUILD_TESTING)
#-----------------------------------------------------------------------------
# Add file(s) to CMake Install
#-----------------------------------------------------------------------------
-INSTALL (
+install (
TARGETS
gif2h5
h52gif
diff --git a/hl/tools/CMakeTests.cmake b/hl/tools/CMakeTests.cmake
index 9f987fd..7c5bd77 100644
--- a/hl/tools/CMakeTests.cmake
+++ b/hl/tools/CMakeTests.cmake
@@ -12,14 +12,14 @@ FILE (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
# copy test files from source to build dir
#
-ADD_CUSTOM_COMMAND (
+add_custom_command (
TARGET gif2h5
POST_BUILD
COMMAND ${CMAKE_COMMAND}
ARGS -E copy_if_different ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/testfiles/image1.gif ${PROJECT_BINARY_DIR}/testfiles/image1.gif
)
-ADD_CUSTOM_COMMAND (
+add_custom_command (
TARGET h52gif
POST_BUILD
COMMAND ${CMAKE_COMMAND}
@@ -27,7 +27,7 @@ ADD_CUSTOM_COMMAND (
)
# Remove any output file left over from previous test run
-ADD_TEST (
+add_test (
NAME HL_TOOLS-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
@@ -35,6 +35,6 @@ ADD_TEST (
image1.h5
)
-ADD_TEST (NAME HL_TOOLS_h52gif COMMAND $<TARGET_FILE:h52gif> testfiles/h52giftst.h5 image1.gif -i image)
+add_test (NAME HL_TOOLS_h52gif COMMAND $<TARGET_FILE:h52gif> testfiles/h52giftst.h5 image1.gif -i image)
-ADD_TEST (NAME HL_TOOLS_gif2h5 COMMAND $<TARGET_FILE:gif2h5> testfiles/image1.gif image1.h5)
+add_test (NAME HL_TOOLS_gif2h5 COMMAND $<TARGET_FILE:gif2h5> testfiles/image1.gif image1.h5)