summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeil Fortner <nfortne2@hdfgroup.org>2015-02-24 21:53:56 (GMT)
committerNeil Fortner <nfortne2@hdfgroup.org>2015-02-24 21:53:56 (GMT)
commit2ca5b16a9fd79d240d5e4ebe4689033c6c7182ad (patch)
tree30e44b12fa5cfd92d8524fcf2717e19ec21e2043
parent3f72ec11cdd07c30ee0340e3c1e9b13d88495807 (diff)
parent48d9c30923a5d298670cf1f8e930c9a9624f80b9 (diff)
downloadhdf5-2ca5b16a9fd79d240d5e4ebe4689033c6c7182ad.zip
hdf5-2ca5b16a9fd79d240d5e4ebe4689033c6c7182ad.tar.gz
hdf5-2ca5b16a9fd79d240d5e4ebe4689033c6c7182ad.tar.bz2
[svn-r26296] Merge r26050 through 26295 from trunk to vds branch.
Tested: ummon
-rw-r--r--CMakeFilters.cmake8
-rw-r--r--CMakeInstallation.cmake16
-rw-r--r--CMakeLists.txt4
-rw-r--r--MANIFEST54
-rw-r--r--Makefile.in4
-rw-r--r--README.txt2
-rw-r--r--aclocal.m42
-rwxr-xr-xbin/cmakehdf52
-rwxr-xr-xbin/trace18
-rw-r--r--c++/CMakeLists.txt2
-rw-r--r--c++/Makefile.in4
-rw-r--r--c++/examples/CMakeLists.txt2
-rw-r--r--c++/examples/Makefile.in4
-rw-r--r--c++/src/CMakeLists.txt2
-rw-r--r--c++/src/Makefile.in6
-rw-r--r--c++/test/CMakeLists.txt2
-rw-r--r--c++/test/Makefile.in4
-rw-r--r--config/cmake/CMakePackageConfigHelpers.cmake321
-rw-r--r--config/cmake/H5pubconf.h.in29
-rw-r--r--config/cmake/HDF518_Examples.cmake.in4
-rw-r--r--config/cmake/HDF5Macros.cmake4
-rw-r--r--config/cmake/cacheinit.cmake2
-rw-r--r--config/cmake/libhdf5.settings.cmake.in1
-rw-r--r--config/cmake/mccacheinit.cmake2
-rw-r--r--config/lt_vers.am2
-rwxr-xr-xconfigure2138
-rw-r--r--configure.ac845
-rw-r--r--examples/CMakeLists.txt2
-rw-r--r--examples/Makefile.in4
-rw-r--r--fortran/CMakeLists.txt2
-rw-r--r--fortran/Makefile.in4
-rw-r--r--fortran/examples/CMakeLists.txt2
-rw-r--r--fortran/examples/Makefile.in4
-rw-r--r--fortran/src/CMakeLists.txt7
-rw-r--r--fortran/src/H5Off_F03.f905
-rw-r--r--fortran/src/H5Tf.c72
-rw-r--r--fortran/src/H5Tff.f9051
-rw-r--r--fortran/src/H5Tff_F03.f90107
-rw-r--r--fortran/src/H5Tff_F90.f9056
-rw-r--r--fortran/src/H5_f.c21
-rw-r--r--fortran/src/H5f90global.f9031
-rw-r--r--fortran/src/H5f90proto.h1
-rw-r--r--fortran/src/Makefile.in6
-rw-r--r--fortran/src/hdf5_fortrandll.def.in4
-rw-r--r--fortran/test/CMakeLists.txt8
-rw-r--r--fortran/test/CMakeTests.cmake2
-rw-r--r--fortran/test/Makefile.in4
-rw-r--r--fortran/test/tH5T_F03.f9020
-rw-r--r--fortran/test/tf.f9024
-rw-r--r--fortran/test/tf_F03.f9010
-rw-r--r--fortran/test/tf_F08.f9010
-rw-r--r--fortran/testpar/CMakeLists.txt2
-rw-r--r--fortran/testpar/Makefile.in4
-rw-r--r--fortran/testpar/ptest.f901
-rw-r--r--hl/CMakeLists.txt2
-rw-r--r--hl/Makefile.in4
-rw-r--r--hl/c++/CMakeLists.txt2
-rw-r--r--hl/c++/Makefile.in4
-rw-r--r--hl/c++/examples/CMakeLists.txt2
-rw-r--r--hl/c++/examples/Makefile.in4
-rw-r--r--hl/c++/src/CMakeLists.txt2
-rw-r--r--hl/c++/src/Makefile.in6
-rw-r--r--hl/c++/test/CMakeLists.txt2
-rw-r--r--hl/c++/test/Makefile.in4
-rw-r--r--hl/examples/CMakeLists.txt2
-rw-r--r--hl/examples/Makefile.in4
-rw-r--r--hl/examples/ex_table_08.c1
-rw-r--r--hl/examples/ex_table_09.c1
-rw-r--r--hl/examples/ex_table_10.c1
-rw-r--r--hl/examples/ex_table_11.c1
-rw-r--r--hl/examples/ptExampleFL.c1
-rw-r--r--hl/fortran/CMakeLists.txt6
-rw-r--r--hl/fortran/Makefile.in4
-rw-r--r--hl/fortran/examples/CMakeLists.txt2
-rw-r--r--hl/fortran/examples/Makefile.in4
-rw-r--r--hl/fortran/src/CMakeLists.txt8
-rw-r--r--hl/fortran/src/H5DSff.f9027
-rw-r--r--hl/fortran/src/H5IMff.f9036
-rw-r--r--hl/fortran/src/H5LTff.f90300
-rw-r--r--hl/fortran/src/H5TBff.f9074
-rw-r--r--hl/fortran/src/Makefile.in6
-rw-r--r--hl/fortran/test/CMakeLists.txt2
-rw-r--r--hl/fortran/test/Makefile.in4
-rw-r--r--hl/src/CMakeLists.txt2
-rw-r--r--hl/src/H5LT.c3
-rw-r--r--hl/src/Makefile.in6
-rw-r--r--hl/src/hdf5_hl.h2
-rw-r--r--hl/test/CMakeLists.txt2
-rw-r--r--hl/test/Makefile.in4
-rw-r--r--hl/test/dectris_hl_perf.c1
-rw-r--r--hl/test/test_lite.c30
-rw-r--r--hl/tools/CMakeLists.txt2
-rw-r--r--hl/tools/Makefile.in4
-rw-r--r--hl/tools/gif2h5/Makefile.in4
-rw-r--r--m4/aclocal_cxx.m4121
-rw-r--r--m4/aclocal_fc.m4283
-rw-r--r--release_docs/INSTALL_CMake.txt10
-rw-r--r--release_docs/INSTALL_Cygwin.txt3
-rw-r--r--release_docs/INSTALL_parallel45
-rw-r--r--release_docs/RELEASE.txt24
-rw-r--r--release_docs/USING_HDF5_CMake.txt4
-rw-r--r--src/CMakeLists.txt6
-rw-r--r--src/H5.c80
-rw-r--r--src/H5B.c147
-rw-r--r--src/H5B2.c154
-rw-r--r--src/H5B2cache.c67
-rw-r--r--src/H5B2hdr.c46
-rw-r--r--src/H5B2int.c160
-rw-r--r--src/H5B2pkg.h32
-rw-r--r--src/H5B2stat.c25
-rw-r--r--src/H5Dbtree.c12
-rw-r--r--src/H5Dchunk.c126
-rw-r--r--src/H5Dint.c28
-rw-r--r--src/H5Dio.c10
-rw-r--r--src/H5Dmpio.c44
-rw-r--r--src/H5Dpkg.h2
-rw-r--r--src/H5Dpublic.h3
-rw-r--r--src/H5Edeprec.c2
-rw-r--r--src/H5FD.c1
-rw-r--r--src/H5I.c3
-rw-r--r--src/H5Olayout.c6
-rw-r--r--src/H5Omtime.c38
-rw-r--r--src/H5P.c1
-rw-r--r--src/H5PL.c141
-rw-r--r--src/H5Pdcpl.c2
-rw-r--r--src/H5Pfapl.c1
-rw-r--r--src/H5Tfields.c1
-rw-r--r--src/H5Topaque.c1
-rw-r--r--src/H5VM.c2
-rw-r--r--src/H5config.h.in50
-rw-r--r--src/H5private.h44
-rw-r--r--src/H5public.h4
-rw-r--r--src/Makefile.in6
-rw-r--r--src/libhdf5.settings.in1
-rw-r--r--test/CMakeLists.txt2
-rw-r--r--test/Makefile.in4
-rw-r--r--test/tfile.c2
-rw-r--r--testpar/CMakeLists.txt4
-rw-r--r--testpar/Makefile.am5
-rw-r--r--testpar/Makefile.in38
-rw-r--r--testpar/t_cache.c3
-rw-r--r--testpar/t_pflush1.c11
-rw-r--r--testpar/t_pflush2.c6
-rw-r--r--testpar/t_prestart.c138
-rw-r--r--testpar/t_pshutdown.c127
-rw-r--r--testpar/t_shapesame.c3
-rw-r--r--tools/CMakeLists.txt2
-rw-r--r--tools/Makefile.in4
-rw-r--r--tools/h5copy/CMakeLists.txt2
-rw-r--r--tools/h5copy/Makefile.in4
-rw-r--r--tools/h5diff/CMakeLists.txt2
-rw-r--r--tools/h5diff/Makefile.in4
-rw-r--r--tools/h5dump/CMakeLists.txt2
-rw-r--r--tools/h5dump/Makefile.in4
-rw-r--r--tools/h5import/CMakeLists.txt2
-rw-r--r--tools/h5import/Makefile.in4
-rw-r--r--tools/h5jam/CMakeLists.txt2
-rw-r--r--tools/h5jam/Makefile.in4
-rw-r--r--tools/h5ls/CMakeLists.txt2
-rw-r--r--tools/h5ls/Makefile.in4
-rw-r--r--tools/h5repack/CMakeLists.txt2
-rw-r--r--tools/h5repack/Makefile.in4
-rw-r--r--tools/h5stat/CMakeLists.txt2
-rw-r--r--tools/h5stat/Makefile.in4
-rw-r--r--tools/lib/CMakeLists.txt2
-rw-r--r--tools/lib/Makefile.in4
-rw-r--r--tools/misc/CMakeLists.txt2
-rw-r--r--tools/misc/Makefile.in4
-rw-r--r--tools/perform/CMakeLists.txt2
-rw-r--r--tools/perform/Makefile.in4
-rw-r--r--tools/perform/perf.c2
-rw-r--r--tools/perform/sio_standalone.h1
-rw-r--r--vms/COPYING16
-rw-r--r--vms/build.com65
-rw-r--r--vms/c++/examples/check.com53
-rw-r--r--vms/c++/examples/make.com79
-rw-r--r--vms/c++/src/make.com85
-rw-r--r--vms/c++/test/check.com23
-rw-r--r--vms/c++/test/make.com49
-rw-r--r--vms/examples/check.com31
-rw-r--r--vms/examples/make.com79
-rw-r--r--vms/fortran/examples/check.com94
-rw-r--r--vms/fortran/examples/make.com117
-rw-r--r--vms/fortran/src/make.com75
-rw-r--r--vms/fortran/test/check.com26
-rw-r--r--vms/fortran/test/make.com69
-rw-r--r--vms/install.com166
-rw-r--r--vms/make.com145
-rw-r--r--vms/src/h5pubconf.h719
-rw-r--r--vms/src/make.com76
-rw-r--r--vms/test/H5srcdir_str.h22
-rw-r--r--vms/test/check.com271
-rw-r--r--vms/test/make.com358
-rw-r--r--vms/tools/h5copy/check_h5copy.com110
-rw-r--r--vms/tools/h5copy/make.com40
-rw-r--r--vms/tools/h5diff/check_h5diff.com337
-rw-r--r--vms/tools/h5diff/make.com48
-rw-r--r--vms/tools/h5dump/check_h5dump.com353
-rw-r--r--vms/tools/h5dump/make.com41
-rw-r--r--vms/tools/h5import/check_h5import.com227
-rw-r--r--vms/tools/h5import/make.com46
-rw-r--r--vms/tools/h5jam/check_h5jam.com159
-rw-r--r--vms/tools/h5jam/make.com67
-rw-r--r--vms/tools/h5ls/check.com70
-rw-r--r--vms/tools/h5ls/check_h5ls.com165
-rw-r--r--vms/tools/h5ls/make.com39
-rw-r--r--vms/tools/h5repack/check_h5repack.com197
-rw-r--r--vms/tools/h5repack/make.com55
-rw-r--r--vms/tools/h5stat/make.com39
-rw-r--r--vms/tools/lib/make.com34
-rw-r--r--vms/tools/misc/make.com90
-rw-r--r--vms/tools/testfiles/tattr-3.ddl13
-rw-r--r--vms/tools/testfiles/tdset-2.ddl17
-rw-r--r--vms/tools/testfiles/tgroup-2.ddl47
-rw-r--r--vms/tools/testfiles/tperror.ddl9
215 files changed, 2733 insertions, 8766 deletions
diff --git a/CMakeFilters.cmake b/CMakeFilters.cmake
index f52b99b..3b9b4f7 100644
--- a/CMakeFilters.cmake
+++ b/CMakeFilters.cmake
@@ -45,9 +45,9 @@ option (HDF5_ENABLE_Z_LIB_SUPPORT "Enable Zlib Filters" OFF)
if (HDF5_ENABLE_Z_LIB_SUPPORT)
if (NOT H5_ZLIB_HEADER)
if (NOT ZLIB_USE_EXTERNAL)
- FIND_PACKAGE (ZLIB NAMES ${ZLIB_PACKAGE_NAME}${HDF_PACKAGE_EXT})
+ find_package (ZLIB NAMES ${ZLIB_PACKAGE_NAME}${HDF_PACKAGE_EXT})
if (NOT ZLIB_FOUND)
- FIND_PACKAGE (ZLIB) # Legacy find
+ find_package (ZLIB) # Legacy find
endif (NOT ZLIB_FOUND)
endif (NOT ZLIB_USE_EXTERNAL)
if (ZLIB_FOUND)
@@ -89,9 +89,9 @@ option (HDF5_ENABLE_SZIP_SUPPORT "Use SZip Filter" OFF)
if (HDF5_ENABLE_SZIP_SUPPORT)
option (HDF5_ENABLE_SZIP_ENCODING "Use SZip Encoding" OFF)
if (NOT SZIP_USE_EXTERNAL)
- FIND_PACKAGE (SZIP NAMES ${SZIP_PACKAGE_NAME}${HDF_PACKAGE_EXT})
+ find_package (SZIP NAMES ${SZIP_PACKAGE_NAME}${HDF_PACKAGE_EXT})
if (NOT SZIP_FOUND)
- FIND_PACKAGE (SZIP) # Legacy find
+ find_package (SZIP) # Legacy find
endif (NOT SZIP_FOUND)
endif (NOT SZIP_USE_EXTERNAL)
if (SZIP_FOUND)
diff --git a/CMakeInstallation.cmake b/CMakeInstallation.cmake
index 095fb4b..c83d6bb 100644
--- a/CMakeInstallation.cmake
+++ b/CMakeInstallation.cmake
@@ -1,4 +1,4 @@
-include (${HDF_RESOURCES_DIR}/CMakePackageConfigHelpers.cmake)
+include (CMakePackageConfigHelpers)
#-----------------------------------------------------------------------------
# Check for Installation Utilities
@@ -63,9 +63,9 @@ set (HDF5_VERSION_MINOR ${HDF5_PACKAGE_VERSION_MINOR})
#-----------------------------------------------------------------------------
# Configure the hdf5-config.cmake file for the build directory
#-----------------------------------------------------------------------------
-set(INCLUDE_INSTALL_DIR HDF5_INSTALL_INCLUDE_DIR )
-set(SHARE_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/${HDF5_INSTALL_CMAKE_DIR}" )
-set(CURRENT_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}" )
+set (INCLUDE_INSTALL_DIR ${HDF5_INSTALL_INCLUDE_DIR})
+set (SHARE_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/${HDF5_INSTALL_CMAKE_DIR}" )
+set (CURRENT_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}" )
configure_package_config_file (
${HDF_RESOURCES_DIR}/hdf5-config.cmake.in
"${HDF5_BINARY_DIR}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config.cmake"
@@ -92,14 +92,14 @@ endif (NOT HDF5_EXTERNALLY_CONFIGURED)
#-----------------------------------------------------------------------------
# Configure the hdf5-config.cmake file for the install directory
#-----------------------------------------------------------------------------
-set(INCLUDE_INSTALL_DIR HDF5_INSTALL_INCLUDE_DIR )
-set(SHARE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/${HDF5_INSTALL_CMAKE_DIR}" )
-set(CURRENT_BUILD_DIR "${CMAKE_INSTALL_PREFIX}" )
+set (INCLUDE_INSTALL_DIR ${HDF5_INSTALL_INCLUDE_DIR})
+set (SHARE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/${HDF5_INSTALL_CMAKE_DIR}" )
+set (CURRENT_BUILD_DIR "${CMAKE_INSTALL_PREFIX}" )
configure_package_config_file (
${HDF_RESOURCES_DIR}/hdf5-config.cmake.in
"${HDF5_BINARY_DIR}/CMakeFiles/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config.cmake"
INSTALL_DESTINATION "${HDF5_INSTALL_CMAKE_DIR}"
- PATH_VARS HDF5_INSTALL_INCLUDE_DIR SHARE_INSTALL_DIR CURRENT_BUILD_DIR
+ PATH_VARS INCLUDE_INSTALL_DIR SHARE_INSTALL_DIR CURRENT_BUILD_DIR
)
if (NOT HDF5_EXTERNALLY_CONFIGURED)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9a8b276..a09ab1a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5 C CXX)
#-----------------------------------------------------------------------------
@@ -805,7 +805,7 @@ if (EXISTS "${HDF5_SOURCE_DIR}/fortran" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/for
if (BUILD_SHARED_LIBS AND APPLE)
message (FATAL_ERROR " **** Shared FORTRAN libraries are unsupported **** ")
endif (BUILD_SHARED_LIBS AND APPLE)
- option (HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" OFF)
+ option (HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" ON)
include (${HDF_RESOURCES_EXT_DIR}/HDFUseFortran.cmake)
if (HDF5_ENABLE_F2003)
if (NOT FORTRAN_HAVE_ISO_C_BINDING)
diff --git a/MANIFEST b/MANIFEST
index b6a3168..9297e1d 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -33,6 +33,8 @@
./m4/ltversion.m4 _DO_NOT_DISTRIBUTE_
./m4/lt~obsolete.m4 _DO_NOT_DISTRIBUTE_
./m4/ltoptions.m4 _DO_NOT_DISTRIBUTE_
+./m4/aclocal_cxx.m4
+./m4/aclocal_fc.m4
./README.txt
./aclocal.m4
./acsite.m4
@@ -1146,6 +1148,8 @@
./testpar/t_pflush2.c
./testpar/t_prop.c
./testpar/t_shapesame.c
+./testpar/t_pshutdown.c
+./testpar/t_prestart.c
./testpar/t_span_tree.c
./testpar/testpar.h
./testpar/testphdf5.c
@@ -2385,58 +2389,8 @@
./hl/c++/test/Makefile.am
./hl/c++/test/Makefile.in
-#vms files
-./vms/COPYING
-
-./vms/c++/examples/check.com
-./vms/c++/examples/make.com
-./vms/c++/src/make.com
-./vms/c++/test/check.com
-./vms/c++/test/make.com
-
-./vms/fortran/examples/check.com
-./vms/fortran/examples/make.com
-./vms/fortran/src/make.com
-./vms/fortran/test/check.com
-./vms/fortran/test/make.com
-
-./vms/examples/check.com
-./vms/examples/make.com
-./vms/src/make.com
-./vms/src/h5pubconf.h
-./vms/test/check.com
-./vms/test/make.com
-./vms/test/H5srcdir_str.h
-
-./vms/build.com
-./vms/install.com
-./vms/make.com
-./vms/tools/h5copy/make.com
-./vms/tools/h5copy/check_h5copy.com
-./vms/tools/h5dump/make.com
-./vms/tools/h5dump/check_h5dump.com
-./vms/tools/h5ls/check.com
-./vms/tools/h5ls/check_h5ls.com
-./vms/tools/h5ls/make.com
-./vms/tools/h5diff/check_h5diff.com
-./vms/tools/h5diff/make.com
-./vms/tools/h5import/check_h5import.com
-./vms/tools/h5import/make.com
-./vms/tools/h5jam/check_h5jam.com
-./vms/tools/h5jam/make.com
-./vms/tools/h5repack/check_h5repack.com
-./vms/tools/h5repack/make.com
-./vms/tools/h5stat/make.com
-./vms/tools/lib/make.com
-./vms/tools/misc/make.com
-./vms/tools/testfiles/tattr-3.ddl
-./vms/tools/testfiles/tdset-2.ddl
-./vms/tools/testfiles/tgroup-2.ddl
-./vms/tools/testfiles/tperror.ddl
-
# CMake-specific Files
./config/cmake/cacheinit.cmake
-./config/cmake/CMakePackageConfigHelpers.cmake
./config/cmake/ConversionTests.c
./config/cmake/ConfigureChecks.cmake
./config/cmake/CTestCustom.cmake
diff --git a/Makefile.in b/Makefile.in
index 670bbde..f9c1263 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -121,7 +121,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am $(srcdir)/Makefile.in \
$(top_srcdir)/bin/missing
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -328,7 +329,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/README.txt b/README.txt
index a3e27d5..bb9bc71 100644
--- a/README.txt
+++ b/README.txt
@@ -1,4 +1,4 @@
-HDF5 version 1.9.212 currently under development
+HDF5 version 1.9.215 currently under development
Please refer to the release_docs/INSTALL file for installation instructions.
------------------------------------------------------------------------------
diff --git a/aclocal.m4 b/aclocal.m4
index 1ecfa26..e10c539 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1183,6 +1183,8 @@ AC_SUBST([am__tar])
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
+m4_include([m4/aclocal_cxx.m4])
+m4_include([m4/aclocal_fc.m4])
# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
diff --git a/bin/cmakehdf5 b/bin/cmakehdf5
index ec6357f..c092545 100755
--- a/bin/cmakehdf5
+++ b/bin/cmakehdf5
@@ -279,7 +279,7 @@ EOF
#==========
#==========
cat > $cfgfile <<'EOF'
-cmake_minimum_required(VERSION 2.8.10 FATAL_ERROR)
+cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
########################################################
# This dashboard is maintained by The HDF Group
# For any comments please contact cdashhelp@hdfgroup.org
diff --git a/bin/trace b/bin/trace
index abd47cd..5d5c5be 100755
--- a/bin/trace
+++ b/bin/trace
@@ -118,7 +118,8 @@ $Source = "";
"H5G_iterate_t" => "x",
"H5G_info_t" => "x",
"H5I_free_t" => "x",
- "H5L_class_t" => "x",
+ "H5I_search_func_t" => "x",
+ "H5L_class_t" => "x",
"H5L_elink_traverse_t" => "x",
"H5L_iterate_t" => "x",
"H5MM_allocate_t" => "x",
@@ -281,13 +282,9 @@ sub rewrite_func ($$$$$) {
# The H5TRACE() statement
if ($body =~ /\/\*[ \t]*NO[ \t]*TRACE[ \t]*\*\//) {
- if ($body =~ /\s*H5TRACE\d+\s*\(/) {
- errmesg $file, $name, "warning: trace info was not updated because of NO TRACE comment";
- } else {
- errmesg $file, $name, "warning: trace info was not inserted because of NO TRACE comment";
- }
+ # Ignored due to NO TRACE comment.
} elsif ($body =~ s/((\n[ \t]*)H5TRACE\d+\s*\(.*?\);)\n/"$2$trace"/es) {
- # Replaced an H5TRACE macro
+ # Replaced an H5TRACE macro.
} elsif ($body=~s/((\n[ \t]*)FUNC_ENTER\w*\s*\(.*?\);??)\n/"$1$2$trace"/es) {
# Added an H5TRACE macro after a FUNC_ENTER macro.
} else {
@@ -317,14 +314,14 @@ for $file (@ARGV) {
# Make modifications
my $original = $Source;
- my $napi = $Source =~ s/\n([A-Za-z]\w*(\s+[a-z]\w*)*)\s*\n #type
+ my $napi = $Source =~ s/\n([A-Za-z]\w*(\s+[A-Za-z]\w*)*\s*\**)\n #type
(H5[A-Z]{0,2}[^_A-Z0-9]\w*) #name
\s*\((.*?)\)\s* #args
(\{.*?\n\}[^\n]*) #body
/rewrite_func($file,$1,$3,$4,$5)/segx;
$total_api += $napi;
- # If the source changed then print out the new version
+# If the source changed then print out the new version
if ($original ne $Source) {
printf "%s: instrumented %d API function%s\n",
$file, $napi, 1==$napi?"":"s";
@@ -335,3 +332,6 @@ for $file (@ARGV) {
}
}
}
+
+printf "Finished processing HDF5 API calls\n"
+
diff --git a/c++/CMakeLists.txt b/c++/CMakeLists.txt
index 63fc083..39280e8 100644
--- a/c++/CMakeLists.txt
+++ b/c++/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_CPP)
#-----------------------------------------------------------------------------
diff --git a/c++/Makefile.in b/c++/Makefile.in
index de87fa5..ad4923f 100644
--- a/c++/Makefile.in
+++ b/c++/Makefile.in
@@ -101,7 +101,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = c++
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -488,7 +489,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/c++/examples/CMakeLists.txt b/c++/examples/CMakeLists.txt
index e3e1077..5ea51a4 100644
--- a/c++/examples/CMakeLists.txt
+++ b/c++/examples/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
# --------------------------------------------------------------------
# Notes: When creating examples they should be prefixed
# with "cpp_ex_". This allows for easier filtering of the examples.
diff --git a/c++/examples/Makefile.in b/c++/examples/Makefile.in
index 3403db4..8a6f4dc 100644
--- a/c++/examples/Makefile.in
+++ b/c++/examples/Makefile.in
@@ -107,7 +107,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS = $(TEST_SCRIPT)
subdir = c++/examples
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -436,7 +437,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/c++/src/CMakeLists.txt b/c++/src/CMakeLists.txt
index c0e2f11..513bbb6 100644
--- a/c++/src/CMakeLists.txt
+++ b/c++/src/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_CPP_SRC)
#-----------------------------------------------------------------------------
diff --git a/c++/src/Makefile.in b/c++/src/Makefile.in
index 7752e12..0faf8d9 100644
--- a/c++/src/Makefile.in
+++ b/c++/src/Makefile.in
@@ -109,7 +109,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = c++/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -502,7 +503,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
@@ -683,7 +683,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# After making changes, run bin/reconfigure to update other configure related
# files like Makefile.in.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 202
+LT_VERS_REVISION = 205
LT_VERS_AGE = 0
# This is our main target
diff --git a/c++/test/CMakeLists.txt b/c++/test/CMakeLists.txt
index acb2b7f..fe463fa 100644
--- a/c++/test/CMakeLists.txt
+++ b/c++/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_CPP_TEST)
# --------------------------------------------------------------------
# Notes: When creating unit test executables they should be prefixed
diff --git a/c++/test/Makefile.in b/c++/test/Makefile.in
index 49c08e4..f6e2044 100644
--- a/c++/test/Makefile.in
+++ b/c++/test/Makefile.in
@@ -106,7 +106,8 @@ check_PROGRAMS = $(am__EXEEXT_1)
TESTS = $(am__EXEEXT_1)
subdir = c++/test
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -493,7 +494,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/config/cmake/CMakePackageConfigHelpers.cmake b/config/cmake/CMakePackageConfigHelpers.cmake
deleted file mode 100644
index c6dc141..0000000
--- a/config/cmake/CMakePackageConfigHelpers.cmake
+++ /dev/null
@@ -1,321 +0,0 @@
-#.rst:
-# CMakePackageConfigHelpers
-# -------------------------
-#
-# Helpers functions for creating config files that can be included by other
-# projects to find and use a package.
-#
-# Adds the :command:`configure_package_config_file()` and
-# :command:`write_basic_package_version_file()` commands.
-#
-# Generating a Package Configuration File
-# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-#
-# .. command:: configure_package_config_file
-#
-# Create a config file for a project::
-#
-# configure_package_config_file(<input> <output> INSTALL_DESTINATION <path>
-# [PATH_VARS <var1> <var2> ... <varN>]
-# [NO_SET_AND_CHECK_MACRO]
-# [NO_CHECK_REQUIRED_COMPONENTS_MACRO]
-# [INSTALL_PREFIX <path>])
-#
-#
-# ``configure_package_config_file()`` should be used instead of the plain
-# :command:`configure_file()` command when creating the ``<Name>Config.cmake``
-# or ``<Name>-config.cmake`` file for installing a project or library. It helps
-# making the resulting package relocatable by avoiding hardcoded paths in the
-# installed ``Config.cmake`` file.
-#
-# In a ``FooConfig.cmake`` file there may be code like this to make the install
-# destinations know to the using project:
-#
-# .. code-block:: cmake
-#
-# set(FOO_INCLUDE_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@" )
-# set(FOO_DATA_DIR "@CMAKE_INSTALL_PREFIX@/@RELATIVE_DATA_INSTALL_DIR@" )
-# set(FOO_ICONS_DIR "@CMAKE_INSTALL_PREFIX@/share/icons" )
-# ...logic to determine installedPrefix from the own location...
-# set(FOO_CONFIG_DIR "${installedPrefix}/@CONFIG_INSTALL_DIR@" )
-#
-# All 4 options shown above are not sufficient, since the first 3 hardcode the
-# absolute directory locations, and the 4th case works only if the logic to
-# determine the ``installedPrefix`` is correct, and if ``CONFIG_INSTALL_DIR``
-# contains a relative path, which in general cannot be guaranteed. This has the
-# effect that the resulting ``FooConfig.cmake`` file would work poorly under
-# Windows and OSX, where users are used to choose the install location of a
-# binary package at install time, independent from how
-# :variable:`CMAKE_INSTALL_PREFIX` was set at build/cmake time.
-#
-# Using ``configure_package_config_file`` helps. If used correctly, it makes
-# the resulting ``FooConfig.cmake`` file relocatable. Usage:
-#
-# 1. write a ``FooConfig.cmake.in`` file as you are used to
-# 2. insert a line containing only the string ``@PACKAGE_INIT@``
-# 3. instead of ``set(FOO_DIR "@SOME_INSTALL_DIR@")``, use
-# ``set(FOO_DIR "@PACKAGE_SOME_INSTALL_DIR@")`` (this must be after the
-# ``@PACKAGE_INIT@`` line)
-# 4. instead of using the normal :command:`configure_file()`, use
-# ``configure_package_config_file()``
-#
-#
-#
-# The ``<input>`` and ``<output>`` arguments are the input and output file, the
-# same way as in :command:`configure_file()`.
-#
-# The ``<path>`` given to ``INSTALL_DESTINATION`` must be the destination where
-# the ``FooConfig.cmake`` file will be installed to. This path can either be
-# absolute, or relative to the ``INSTALL_PREFIX`` path.
-#
-# The variables ``<var1>`` to ``<varN>`` given as ``PATH_VARS`` are the
-# variables which contain install destinations. For each of them the macro will
-# create a helper variable ``PACKAGE_<var...>``. These helper variables must be
-# used in the ``FooConfig.cmake.in`` file for setting the installed location.
-# They are calculated by ``configure_package_config_file`` so that they are
-# always relative to the installed location of the package. This works both for
-# relative and also for absolute locations. For absolute locations it works
-# only if the absolute location is a subdirectory of ``INSTALL_PREFIX``.
-#
-# If the ``INSTALL_PREFIX`` argument is passed, this is used as base path to
-# calculate all the relative paths. The ``<path>`` argument must be an absolute
-# path. If this argument is not passed, the :variable:`CMAKE_INSTALL_PREFIX`
-# variable will be used instead. The default value is good when generating a
-# FooConfig.cmake file to use your package from the install tree. When
-# generating a FooConfig.cmake file to use your package from the build tree this
-# option should be used.
-#
-# By default ``configure_package_config_file`` also generates two helper macros,
-# ``set_and_check()`` and ``check_required_components()`` into the
-# ``FooConfig.cmake`` file.
-#
-# ``set_and_check()`` should be used instead of the normal ``set()`` command for
-# setting directories and file locations. Additionally to setting the variable
-# it also checks that the referenced file or directory actually exists and fails
-# with a ``FATAL_ERROR`` otherwise. This makes sure that the created
-# ``FooConfig.cmake`` file does not contain wrong references.
-# When using the ``NO_SET_AND_CHECK_MACRO``, this macro is not generated
-# into the ``FooConfig.cmake`` file.
-#
-# ``check_required_components(<package_name>)`` should be called at the end of
-# the ``FooConfig.cmake`` file if the package supports components. This macro
-# checks whether all requested, non-optional components have been found, and if
-# this is not the case, sets the ``Foo_FOUND`` variable to ``FALSE``, so that
-# the package is considered to be not found. It does that by testing the
-# ``Foo_<Component>_FOUND`` variables for all requested required components.
-# When using the ``NO_CHECK_REQUIRED_COMPONENTS_MACRO`` option, this macro is
-# not generated into the ``FooConfig.cmake`` file.
-#
-# For an example see below the documentation for
-# :command:`write_basic_package_version_file()`.
-#
-# Generating a Package Version File
-# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-#
-# .. command:: write_basic_package_version_file
-#
-# Create a version file for a project::
-#
-# write_basic_package_version_file(<filename>
-# [VERSION <major.minor.patch>]
-# COMPATIBILITY <AnyNewerVersion|SameMajorVersion|ExactVersion> )
-#
-#
-# Writes a file for use as ``<package>ConfigVersion.cmake`` file to
-# ``<filename>``. See the documentation of :command:`find_package()` for
-# details on this.
-#
-# ``<filename>`` is the output filename, it should be in the build tree.
-# ``<major.minor.patch>`` is the version number of the project to be installed.
-#
-# If no ``VERSION`` is given, the :variable:`PROJECT_VERSION` variable is used.
-# If this hasn't been set, it errors out.
-#
-# The ``COMPATIBILITY`` mode ``AnyNewerVersion`` means that the installed
-# package version will be considered compatible if it is newer or exactly the
-# same as the requested version. This mode should be used for packages which
-# are fully backward compatible, also across major versions.
-# If ``SameMajorVersion`` is used instead, then the behaviour differs from
-# ``AnyNewerVersion`` in that the major version number must be the same as
-# requested, e.g. version 2.0 will not be considered compatible if 1.0 is
-# requested. This mode should be used for packages which guarantee backward
-# compatibility within the same major version.
-# If ``ExactVersion`` is used, then the package is only considered compatible if
-# the requested version matches exactly its own version number (not considering
-# the tweak version). For example, version 1.2.3 of a package is only
-# considered compatible to requested version 1.2.3. This mode is for packages
-# without compatibility guarantees.
-# If your project has more elaborated version matching rules, you will need to
-# write your own custom ``ConfigVersion.cmake`` file instead of using this
-# macro.
-#
-# Internally, this macro executes :command:`configure_file()` to create the
-# resulting version file. Depending on the ``COMPATIBLITY``, either the file
-# ``BasicConfigVersion-SameMajorVersion.cmake.in`` or
-# ``BasicConfigVersion-AnyNewerVersion.cmake.in`` is used. Please note that
-# these two files are internal to CMake and you should not call
-# :command:`configure_file()` on them yourself, but they can be used as starting
-# point to create more sophisticted custom ``ConfigVersion.cmake`` files.
-#
-# Example Generating Package Files
-# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-#
-# Example using both :command:`configure_package_config_file` and
-# ``write_basic_package_version_file()``:
-#
-# ``CMakeLists.txt``:
-#
-# .. code-block:: cmake
-#
-# set(INCLUDE_INSTALL_DIR include/ ... CACHE )
-# set(LIB_INSTALL_DIR lib/ ... CACHE )
-# set(SYSCONFIG_INSTALL_DIR etc/foo/ ... CACHE )
-# ...
-# include(CMakePackageConfigHelpers)
-# configure_package_config_file(FooConfig.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/FooConfig.cmake
-# INSTALL_DESTINATION ${LIB_INSTALL_DIR}/Foo/cmake
-# PATH_VARS INCLUDE_INSTALL_DIR SYSCONFIG_INSTALL_DIR)
-# write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/FooConfigVersion.cmake
-# VERSION 1.2.3
-# COMPATIBILITY SameMajorVersion )
-# install(FILES ${CMAKE_CURRENT_BINARY_DIR}/FooConfig.cmake ${CMAKE_CURRENT_BINARY_DIR}/FooConfigVersion.cmake
-# DESTINATION ${LIB_INSTALL_DIR}/Foo/cmake )
-#
-# ``FooConfig.cmake.in``:
-#
-# .. code-block:: cmake
-#
-# set(FOO_VERSION x.y.z)
-# ...
-# @PACKAGE_INIT@
-# ...
-# set_and_check(FOO_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@")
-# set_and_check(FOO_SYSCONFIG_DIR "@PACKAGE_SYSCONFIG_INSTALL_DIR@")
-#
-# check_required_components(Foo)
-
-
-#=============================================================================
-# Copyright 2012 Alexander Neundorf <neundorf@kde.org>
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-# (To distribute this file outside of CMake, substitute the full
-# License text for the above reference.)
-
-include(CMakeParseArguments)
-
-include(WriteBasicConfigVersionFile)
-
-macro(WRITE_BASIC_PACKAGE_VERSION_FILE)
- write_basic_config_version_file(${ARGN})
-endmacro()
-
-function(CONFIGURE_PACKAGE_CONFIG_FILE _inputFile _outputFile)
- set(options NO_SET_AND_CHECK_MACRO NO_CHECK_REQUIRED_COMPONENTS_MACRO)
- set(oneValueArgs INSTALL_DESTINATION INSTALL_PREFIX)
- set(multiValueArgs PATH_VARS )
-
- cmake_parse_arguments(CCF "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
-
- if(CCF_UNPARSED_ARGUMENTS)
- message(FATAL_ERROR "Unknown keywords given to CONFIGURE_PACKAGE_CONFIG_FILE(): \"${CCF_UNPARSED_ARGUMENTS}\"")
- endif()
-
- if(NOT CCF_INSTALL_DESTINATION)
- message(FATAL_ERROR "No INSTALL_DESTINATION given to CONFIGURE_PACKAGE_CONFIG_FILE()")
- endif()
-
- if(DEFINED CCF_INSTALL_PREFIX)
- if(IS_ABSOLUTE "${CCF_INSTALL_PREFIX}")
- set(installPrefix "${CCF_INSTALL_PREFIX}")
- else()
- message(FATAL_ERROR "INSTALL_PREFIX must be an absolute path")
- endif()
- else()
- set(installPrefix "${CMAKE_INSTALL_PREFIX}")
- endif()
-
- if(IS_ABSOLUTE "${CCF_INSTALL_DESTINATION}")
- set(absInstallDir "${CCF_INSTALL_DESTINATION}")
- else()
- set(absInstallDir "${installPrefix}/${CCF_INSTALL_DESTINATION}")
- endif()
-
- file(RELATIVE_PATH PACKAGE_RELATIVE_PATH "${absInstallDir}" "${installPrefix}" )
-
- foreach(var ${CCF_PATH_VARS})
- if(NOT DEFINED ${var})
- message(FATAL_ERROR "Variable ${var} does not exist")
- else()
- if(IS_ABSOLUTE "${${var}}")
- string(REPLACE "${installPrefix}" "\${PACKAGE_PREFIX_DIR}"
- PACKAGE_${var} "${${var}}")
- else()
- set(PACKAGE_${var} "\${PACKAGE_PREFIX_DIR}/${${var}}")
- endif()
- endif()
- endforeach()
-
- get_filename_component(inputFileName "${_inputFile}" NAME)
-
- set(PACKAGE_INIT "
-####### Expanded from @PACKAGE_INIT@ by configure_package_config_file() #######
-####### Any changes to this file will be overwritten by the next CMake run ####
-####### The input file was ${inputFileName} ########
-
-get_filename_component(PACKAGE_PREFIX_DIR \"\${CMAKE_CURRENT_LIST_DIR}/${PACKAGE_RELATIVE_PATH}\" ABSOLUTE)
-")
-
- if("${absInstallDir}" MATCHES "^(/usr)?/lib(64)?/.+")
- # Handle "/usr move" symlinks created by some Linux distros.
- set(PACKAGE_INIT "${PACKAGE_INIT}
-# Use original install prefix when loaded through a \"/usr move\"
-# cross-prefix symbolic link such as /lib -> /usr/lib.
-get_filename_component(_realCurr \"\${CMAKE_CURRENT_LIST_DIR}\" REALPATH)
-get_filename_component(_realOrig \"${absInstallDir}\" REALPATH)
-if(_realCurr STREQUAL _realOrig)
- set(PACKAGE_PREFIX_DIR \"${installPrefix}\")
-endif()
-unset(_realOrig)
-unset(_realCurr)
-")
- endif()
-
- if(NOT CCF_NO_SET_AND_CHECK_MACRO)
- set(PACKAGE_INIT "${PACKAGE_INIT}
-macro(set_and_check _var _file)
- set(\${_var} \"\${_file}\")
- if(NOT EXISTS \"\${_file}\")
- message(FATAL_ERROR \"File or directory \${_file} referenced by variable \${_var} does not exist !\")
- endif()
-endmacro()
-")
- endif()
-
-
- if(NOT CCF_NO_CHECK_REQUIRED_COMPONENTS_MACRO)
- set(PACKAGE_INIT "${PACKAGE_INIT}
-macro(check_required_components _NAME)
- foreach(comp \${\${_NAME}_FIND_COMPONENTS})
- if(NOT \${_NAME}_\${comp}_FOUND)
- if(\${_NAME}_FIND_REQUIRED_\${comp})
- set(\${_NAME}_FOUND FALSE)
- endif()
- endif()
- endforeach()
-endmacro()
-")
- endif()
-
- set(PACKAGE_INIT "${PACKAGE_INIT}
-####################################################################################")
-
- configure_file("${_inputFile}" "${_outputFile}" @ONLY)
-
-endfunction()
diff --git a/config/cmake/H5pubconf.h.in b/config/cmake/H5pubconf.h.in
index 8235c54..a557364 100644
--- a/config/cmake/H5pubconf.h.in
+++ b/config/cmake/H5pubconf.h.in
@@ -57,9 +57,6 @@
/* Define the default plugins path to compile */
#cmakedefine H5_DEFAULT_PLUGINDIR "@H5_DEFAULT_PLUGINDIR@"
-/* Define the default virtual file driver to compile */
-#cmakedefine H5_DEFAULT_VFD @H5_DEFAULT_VFD@
-
/* Define if `dev_t' is a scalar */
#cmakedefine H5_DEV_T_IS_SCALAR @H5_DEV_T_IS_SCALAR@
@@ -89,9 +86,6 @@
long long values. */
#cmakedefine H5_FP_TO_ULLONG_RIGHT_MAXIMUM @H5_FP_TO_ULLONG_RIGHT_MAXIMUM@
-/* Define if gettimeofday() populates the tz pointer passed in */
-#cmakedefine H5_GETTIMEOFDAY_GIVES_TZ @H5_GETTIMEOFDAY_GIVES_TZ@
-
/* Define to 1 if you have the `alarm' function. */
#cmakedefine H5_HAVE_ALARM @H5_HAVE_ALARM@
@@ -101,9 +95,6 @@
/* Define if the __attribute__(()) extension is present */
#cmakedefine H5_HAVE_ATTRIBUTE @H5_HAVE_ATTRIBUTE@
-/* Define to 1 if you have the `BSDgettimeofday' function. */
-#cmakedefine H5_HAVE_BSDGETTIMEOFDAY @H5_HAVE_BSDGETTIMEOFDAY@
-
/* Define if the compiler understands C99 designated initialization of structs
and unions */
#cmakedefine H5_HAVE_C99_DESIGNATED_INITIALIZER @H5_HAVE_C99_DESIGNATED_INITIALIZER@
@@ -377,12 +368,6 @@
/* Define if `struct text_info' is defined */
#cmakedefine H5_HAVE_STRUCT_TEXT_INFO @H5_HAVE_STRUCT_TEXT_INFO@
-/* Define if `struct timezone' is defined */
-#cmakedefine H5_HAVE_STRUCT_TIMEZONE @H5_HAVE_STRUCT_TIMEZONE@
-
-/* Define to 1 if `tm_zone' is a member of `struct tm'. */
-#cmakedefine H5_HAVE_STRUCT_TM_TM_ZONE @H5_HAVE_STRUCT_TM_TM_ZONE@
-
/* Define if `struct videoconfig' is defined */
#cmakedefine H5_HAVE_STRUCT_VIDEOCONFIG @H5_HAVE_STRUCT_VIDEOCONFIG@
@@ -446,14 +431,6 @@
/* Define if `tm_gmtoff' is a member of `struct tm' */
#cmakedefine H5_HAVE_TM_GMTOFF @H5_HAVE_TM_GMTOFF@
-/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
- `HAVE_STRUCT_TM_TM_ZONE' instead. */
-#cmakedefine H5_HAVE_TM_ZONE @H5_HAVE_TM_ZONE@
-
-/* Define to 1 if you don't have `tm_zone' but do have the external array
- `tzname'. */
-#cmakedefine H5_HAVE_TZNAME @H5_HAVE_TZNAME@
-
/* Define to 1 if you have the <unistd.h> header file. */
#cmakedefine H5_HAVE_UNISTD_H @H5_HAVE_UNISTD_H@
@@ -484,9 +461,6 @@
/* Define to 1 if you have the `_scrsize' function. */
#cmakedefine H5_HAVE__SCRSIZE @H5_HAVE__SCRSIZE@
-/* Define if `__tm_gmtoff' is a member of `struct tm' */
-#cmakedefine H5_HAVE___TM_GMTOFF @H5_HAVE___TM_GMTOFF@
-
/* Define if your system can't handle converting floating-point values to long
long. */
#cmakedefine H5_HW_FP_TO_LLONG_NOT_WORKS @H5_HW_FP_TO_LLONG_NOT_WORKS@
@@ -540,9 +514,6 @@
/* Define if deprecated public API symbols are disabled */
#cmakedefine H5_NO_DEPRECATED_SYMBOLS @H5_NO_DEPRECATED_SYMBOLS@
-/* Define if shared writing must be disabled (CodeWarrior only) */
-#cmakedefine H5_NO_SHARED_WRITING @H5_NO_SHARED_WRITING@
-
/* Name of package */
#define H5_PACKAGE "@HDF5_PACKAGE@"
diff --git a/config/cmake/HDF518_Examples.cmake.in b/config/cmake/HDF518_Examples.cmake.in
index 78c8d9b..7b7cf0a 100644
--- a/config/cmake/HDF518_Examples.cmake.in
+++ b/config/cmake/HDF518_Examples.cmake.in
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 2.8.10 FATAL_ERROR)
+cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
###############################################################################################################
# This script will build and run the examples from a compressed file
# Execute from a command line:
@@ -14,7 +14,7 @@ set(CTEST_BUILD_CONFIGURATION "Release")
#set(NO_MAC_FORTRAN "true")
#set(BUILD_OPTIONS "${BUILD_OPTIONS} -DHDF_BUILD_FORTRAN:BOOL=ON")
#set(BUILD_OPTIONS "${BUILD_OPTIONS} -DHDF_ENABLE_F2003:BOOL=ON)
-set(CTEST_USE_TAR_SOURCE "true")
+set(CTEST_USE_TAR_SOURCE "${CTEST_SCRIPT_ARG}")
###############################################################################################################
# Adjust the following SET Commands as needed
diff --git a/config/cmake/HDF5Macros.cmake b/config/cmake/HDF5Macros.cmake
index baa18c0..ee9ed84 100644
--- a/config/cmake/HDF5Macros.cmake
+++ b/config/cmake/HDF5Macros.cmake
@@ -1,5 +1,5 @@
#-------------------------------------------------------------------------------
-MACRO (H5_SET_LIB_OPTIONS libtarget libname libtype)
+macro (H5_SET_LIB_OPTIONS libtarget libname libtype)
set (LIB_OUT_NAME "${libname}")
if (${libtype} MATCHES "SHARED")
if (WIN32)
@@ -28,4 +28,4 @@ MACRO (H5_SET_LIB_OPTIONS libtarget libname libtype)
endif (HDF5_BUILD_WITH_INSTALL_NAME)
endif (APPLE)
-ENDMACRO (H5_SET_LIB_OPTIONS)
+endmacro (H5_SET_LIB_OPTIONS)
diff --git a/config/cmake/cacheinit.cmake b/config/cmake/cacheinit.cmake
index 2c34e69..e68afe6 100644
--- a/config/cmake/cacheinit.cmake
+++ b/config/cmake/cacheinit.cmake
@@ -16,7 +16,7 @@ set (HDF5_BUILD_EXAMPLES ON CACHE BOOL "Build HDF5 Library Examples" FORCE)
set (HDF5_BUILD_FORTRAN ON CACHE BOOL "Build FORTRAN support" FORCE)
-set (HDF5_ENABLE_F2003 OFF CACHE BOOL "Enable FORTRAN 2003 Standard" FORCE)
+set (HDF5_ENABLE_F2003 ON CACHE BOOL "Enable FORTRAN 2003 Standard" FORCE)
set (HDF5_BUILD_HL_LIB ON CACHE BOOL "Build HIGH Level HDF5 Library" FORCE)
diff --git a/config/cmake/libhdf5.settings.cmake.in b/config/cmake/libhdf5.settings.cmake.in
index 0c0befa..a036ff8 100644
--- a/config/cmake/libhdf5.settings.cmake.in
+++ b/config/cmake/libhdf5.settings.cmake.in
@@ -65,4 +65,3 @@ Clear file buffers before write: @HDF5_Enable_Clear_File_Buffers@
Function Stack Tracing: @HDF5_ENABLE_CODESTACK@
Strict File Format Checks: @HDF5_STRICT_FORMAT_CHECKS@
Optimization Instrumentation: @HDF5_Enable_Instrument@
- Large File Support (LFS): @HDF5_ENABLE_LARGE_FILE@
diff --git a/config/cmake/mccacheinit.cmake b/config/cmake/mccacheinit.cmake
index a07e278..af506e6 100644
--- a/config/cmake/mccacheinit.cmake
+++ b/config/cmake/mccacheinit.cmake
@@ -16,7 +16,7 @@ set (HDF5_BUILD_EXAMPLES ON CACHE BOOL "Build HDF5 Library Examples" FORCE)
set (HDF5_BUILD_FORTRAN ON CACHE BOOL "Build FORTRAN support" FORCE)
-set (HDF5_ENABLE_F2003 OFF CACHE BOOL "Enable FORTRAN 2003 Standard" FORCE)
+set (HDF5_ENABLE_F2003 ON CACHE BOOL "Enable FORTRAN 2003 Standard" FORCE)
set (HDF5_BUILD_HL_LIB ON CACHE BOOL "Build HIGH Level HDF5 Library" FORCE)
diff --git a/config/lt_vers.am b/config/lt_vers.am
index 27e6067..d442ca9 100644
--- a/config/lt_vers.am
+++ b/config/lt_vers.am
@@ -19,7 +19,7 @@
# After making changes, run bin/reconfigure to update other configure related
# files like Makefile.in.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 202
+LT_VERS_REVISION = 205
LT_VERS_AGE = 0
## If the API changes *at all*, increment LT_VERS_INTERFACE and
diff --git a/configure b/configure
index e229b06..de1641c 100755
--- a/configure
+++ b/configure
@@ -1,7 +1,7 @@
#! /bin/sh
# From configure.ac Id: configure.ac 22697 2012-08-19 14:35:47Z hdftest .
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for HDF5 1.9.212.
+# Generated by GNU Autoconf 2.69 for HDF5 1.9.215.
#
# Report bugs to <help@hdfgroup.org>.
#
@@ -591,8 +591,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='HDF5'
PACKAGE_TARNAME='hdf5'
-PACKAGE_VERSION='1.9.212'
-PACKAGE_STRING='HDF5 1.9.212'
+PACKAGE_VERSION='1.9.215'
+PACKAGE_STRING='HDF5 1.9.215'
PACKAGE_BUGREPORT='help@hdfgroup.org'
PACKAGE_URL=''
@@ -655,8 +655,6 @@ DEFAULT_API_VERSION
DEPRECATED_SYMBOLS
BUILD_ALL_CONDITIONAL_FALSE
BUILD_ALL_CONDITIONAL_TRUE
-HL_FOR
-HL
DYNAMIC_DIRS
ROOT
CXX_VERSION
@@ -728,6 +726,8 @@ TIME
TR
AR
PERL
+HL_FOR
+HL
CXXCPP
am__fastdepCXX_FALSE
am__fastdepCXX_TRUE
@@ -787,7 +787,6 @@ DIRECT_VFD
HAVE_DMALLOC
CODESTACK
INSTRUMENT
-LARGEFILE
HDF5_HL
CXX
HDF_CXX
@@ -895,6 +894,7 @@ enable_unsupported
enable_fortran
enable_fortran2003
enable_cxx
+enable_hl
enable_shared
enable_static
with_pic
@@ -905,7 +905,6 @@ enable_libtool_lock
enable_static_exec
enable_sharedlib_rpath
enable_production
-enable_largefile
with_fnord
with_dmalloc
with_zlib
@@ -922,12 +921,10 @@ enable_using_memchecker
enable_parallel
with_mpe
enable_filters
-with_default_vfd
enable_direct_vfd
with_default_plugindir
enable_dconv_exception
enable_dconv_accuracy
-enable_hl
enable_build_all
enable_deprecated_symbols
with_default_api_version
@@ -1489,7 +1486,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures HDF5 1.9.212 to adapt to many kinds of systems.
+\`configure' configures HDF5 1.9.215 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1559,7 +1556,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of HDF5 1.9.212:";;
+ short | recursive ) echo "Configuration of HDF5 1.9.215:";;
esac
cat <<\_ACEOF
@@ -1577,10 +1574,11 @@ Optional Features:
--disable-dependency-tracking
speeds up one-time build
--enable-unsupported Allow unsupported combinations of configure options
- --enable-fortran Compile the Fortran 77/90/95 interface [default=no]
+ --enable-fortran Compile the Fortran 90/95 interface [default=no]
--enable-fortran2003 Compile the Fortran 2003 interface, must also
specify --enable-fortran [default=no]
--enable-cxx Compile the C++ interface [default=no]
+ --enable-hl Enable the high-level library [default=yes]
--enable-shared[=PKGS] build shared libraries [default=yes]
--enable-static[=PKGS] build static libraries [default=yes]
--enable-fast-install[=PKGS]
@@ -1591,7 +1589,6 @@ Optional Features:
--disable-sharedlib-rpath
Disable use of the '=Wl,-rpath' linker option
--enable-production Determines how to run the compiler.
- --disable-largefile omit support for large files
--enable-threadsafe Enable thread-safe capability
--enable-debug=all Turn on debugging in all packages. One may also
specify a comma-separated list of package names
@@ -1619,14 +1616,14 @@ Optional Features:
--enable-filters=all Turn on all internal I/O filters. One may also
specify a comma-separated list of filters or the
word no. The default is all internal I/O filters.
- --enable-direct-vfd Build the Direct I/O Virtual File Driver
- [default=yes]
+ --enable-direct-vfd Build the direct I/O virtual file driver (VFD). This
+ is based on the POSIX (sec2) VFD and requires the
+ open() call to take the O_DIRECT flag. [default=no]
--enable-dconv-exception
if exception handling functions is checked during
data conversions [default=yes]
--enable-dconv-accuracy if data accuracy is guaranteed during data
conversions [default=yes]
- --enable-hl Enable the high level library [default=yes]
--enable-build-all Build helper programs that only developers should
need [default=no]
--enable-deprecated-symbols
@@ -1662,8 +1659,6 @@ Optional Packages:
--with-pthread=DIR Specify alternative path to Pthreads library when
thread-safe capability is built
--with-mpe=DIR Use MPE instrumentation [default=no]
- --with-default-vfd=driver
- Specify default file driver [default=sec2]
--with-default-plugindir=location
Specify default location for plugins
[default="/usr/local/hdf5/lib/plugin"]
@@ -1752,7 +1747,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-HDF5 configure 1.9.212
+HDF5 configure 1.9.215
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1888,13 +1883,13 @@ fi
} # ac_fn_c_try_link
-# ac_fn_fc_try_run LINENO
-# -----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_fc_try_run ()
+# ac_fn_fc_try_link LINENO
+# ------------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded.
+ac_fn_fc_try_link ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext conftest$ac_exeext
if { { ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
@@ -1902,33 +1897,37 @@ case "(($ac_try" in
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
+ (eval "$ac_link") 2>conftest.err
ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
+ test $ac_status = 0; } && {
+ test -z "$ac_fc_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ test -x conftest$ac_exeext
+ }; then :
ac_retval=0
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
- $as_echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
- ac_retval=$ac_status
+ ac_retval=1
fi
+ # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
+ # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
+ # interfere with the next link command; also delete a directory that is
+ # left behind by Apple's compiler. We do this before executing the actions.
rm -rf conftest.dSYM conftest_ipa8_conftest.oo
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
-} # ac_fn_fc_try_run
+} # ac_fn_fc_try_link
# ac_fn_cxx_try_compile LINENO
# ----------------------------
@@ -2005,13 +2004,13 @@ fi
} # ac_fn_cxx_try_cpp
-# ac_fn_cxx_try_run LINENO
-# ------------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_cxx_try_run ()
+# ac_fn_cxx_try_link LINENO
+# -------------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded.
+ac_fn_cxx_try_link ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext conftest$ac_exeext
if { { ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
@@ -2019,33 +2018,37 @@ case "(($ac_try" in
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
+ (eval "$ac_link") 2>conftest.err
ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
+ test $ac_status = 0; } && {
+ test -z "$ac_cxx_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ test -x conftest$ac_exeext
+ }; then :
ac_retval=0
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
- $as_echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
- ac_retval=$ac_status
+ ac_retval=1
fi
+ # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
+ # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
+ # interfere with the next link command; also delete a directory that is
+ # left behind by Apple's compiler. We do this before executing the actions.
rm -rf conftest.dSYM conftest_ipa8_conftest.oo
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
-} # ac_fn_cxx_try_run
+} # ac_fn_cxx_try_link
# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
# -------------------------------------------------------
@@ -2232,98 +2235,6 @@ $as_echo "$ac_res" >&6; }
} # ac_fn_c_check_func
-# ac_fn_cxx_try_link LINENO
-# -------------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- test -x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_cxx_try_link
-
-# ac_fn_fc_try_link LINENO
-# ------------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_fc_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_fc_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- test -x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_fc_try_link
-
# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
# -------------------------------------------------------
# Tests whether HEADER exists, giving a warning if it cannot be compiled using
@@ -2769,84 +2680,11 @@ $as_echo "$ac_res" >&6; }
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_decl
-
-# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
-# ----------------------------------------------------
-# Tries to find if the field MEMBER exists in type AGGR, after including
-# INCLUDES, setting cache variable VAR accordingly.
-ac_fn_c_check_member ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
-$as_echo_n "checking for $2.$3... " >&6; }
-if eval \${$4+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$5
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-static $2 ac_aggr;
-if (ac_aggr.$3)
-return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$4=yes"
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$5
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-static $2 ac_aggr;
-if (sizeof ac_aggr.$3)
-return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$4=yes"
-else
- eval "$4=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$4
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_member
cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by HDF5 $as_me 1.9.212, which was
+It was created by HDF5 $as_me 1.9.215, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3717,7 +3555,7 @@ fi
# Define the identity of the package.
PACKAGE='hdf5'
- VERSION='1.9.212'
+ VERSION='1.9.215'
cat >>confdefs.h <<_ACEOF
@@ -4050,7 +3888,6 @@ $as_echo "done" >&6; }
## HDF_CXX: whether C++ is enabled. Default no.
## CXX: C++ compiler.
## HDF5_HL: whether high-level library is enabled. Default is yes.
-## LARGEFILE: whether largefile support is enabled. Default yes.
## INSTRUMENT: whether INSTRUMENT is enabled. No default set here.
## CODESTACK: whether CODESTACK is enabled. Default no.
## HAVE_DMALLOC: whether system has dmalloc support. Default no.
@@ -4071,7 +3908,6 @@ $as_echo "done" >&6; }
HDF_CXX=no
HDF_CXX=no
HDF5_HL=yes
- LARGEFILE=yes
CODESTACK=no
HAVE_DMALLOC=no
@@ -5353,14 +5189,13 @@ if test "X$HDF_FORTRAN2003" = "Xyes" && test "X$HDF_FORTRAN" = "Xno"; then
echo "no"
as_fn_error $? "--enable-fortran must be used with --enable-fortran2003" "$LINENO" 5
else
- echo "yes"
+ if test "X$HDF_FORTRAN2003" = "Xyes" && test "X$HDF_FORTRAN" = "Xyes"; then
+ echo "yes"
+ else
+ echo "no"
+ fi
fi
-HAVE_SIZEOF="no"
-HAVE_C_SIZEOF="no"
-HAVE_STORAGE_SIZE="no"
-FORTRAN_DEFAULT_REALisDBLE="no"
-
if test "X$HDF_FORTRAN" = "Xyes"; then
HDF_FORTRAN=yes
@@ -5369,12 +5204,6 @@ if test "X$HDF_FORTRAN" = "Xyes"; then
HDF5_INTERFACES="$HDF5_INTERFACES fortran"
## --------------------------------------------------------------------
- ## Default for FORTRAN 2003 compliant compilers
- ##
- HAVE_FORTRAN_2003="no"
- HAVE_F2003_REQUIREMENTS="no"
-
- ## --------------------------------------------------------------------
## HDF5 integer variables for the H5fortran_types.f90 file.
##
@@ -5660,14 +5489,14 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
## --------------------------------------------------------------------
- ## Check for a Fortran 9X compiler and how to include modules.
+ ## Check for a Fortran compiler and how to include modules.
##
ac_ext=${ac_fc_srcext-f}
ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_fc_compiler_gnu
if test -n "$ac_tool_prefix"; then
- for ac_prog in f90 pgf90 slf90 f95 g95 xlf95 efc ifort ftn
+ for ac_prog in gfortran ifort pgf90 pathf90 pathf95 xlf90 xlf95 xlf2003 f90 epcf90 f95 fort lf95 g95 ifc efc gfc
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
@@ -5711,7 +5540,7 @@ fi
fi
if test -z "$FC"; then
ac_ct_FC=$FC
- for ac_prog in f90 pgf90 slf90 f95 g95 xlf95 efc ifort ftn
+ for ac_prog in gfortran ifort pgf90 pathf90 pathf95 xlf90 xlf95 xlf2003 f90 epcf90 f95 fort lf95 g95 ifc efc gfc
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
@@ -5965,11 +5794,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
- ## It seems that libtool (as of Libtool 1.5.14) is trying to
- ## configure itself for Fortran 77.
- ## Tell it that our F77 compiler is $FC (actually a F9X compiler)
- F77=$FC
-
## Change to the Fortran 90 language
ac_ext=${ac_fc_srcext-f}
ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
@@ -6663,21 +6487,11 @@ ac_compiler_gnu=$ac_cv_fc_compiler_gnu
## --------------------------------------------------------------------
- ## See if the compiler will support the "-I." option
- ##
-
-
- ## --------------------------------------------------------------------
## See if the fortran compiler supports the intrinsic function "SIZEOF"
+ HAVE_SIZEOF_FORTRAN="no"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compiler supports intrinsic SIZEOF" >&5
$as_echo_n "checking if Fortran compiler supports intrinsic SIZEOF... " >&6; }
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
cat > conftest.$ac_ext <<_ACEOF
PROGRAM main
@@ -6685,29 +6499,23 @@ else
END PROGRAM
_ACEOF
-if ac_fn_fc_try_run "$LINENO"; then :
+if ac_fn_fc_try_link "$LINENO"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- HAVE_SIZEOF="yes"
+ HAVE_SIZEOF_FORTRAN="yes"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
## See if the fortran compiler supports the intrinsic function "C_SIZEOF"
+ HAVE_C_SIZEOF_FORTRAN="no"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compiler supports intrinsic C_SIZEOF" >&5
$as_echo_n "checking if Fortran compiler supports intrinsic C_SIZEOF... " >&6; }
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
cat > conftest.$ac_ext <<_ACEOF
PROGRAM main
@@ -6718,29 +6526,23 @@ else
END PROGRAM
_ACEOF
-if ac_fn_fc_try_run "$LINENO"; then :
+if ac_fn_fc_try_link "$LINENO"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- HAVE_C_SIZEOF="yes"
+ HAVE_C_SIZEOF_FORTRAN="yes"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
## See if the fortran compiler supports the intrinsic function "STORAGE_SIZE"
+ HAVE_STORAGE_SIZE_FORTRAN="no"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compiler supports intrinsic STORAGE_SIZE" >&5
$as_echo_n "checking if Fortran compiler supports intrinsic STORAGE_SIZE... " >&6; }
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
cat > conftest.$ac_ext <<_ACEOF
PROGRAM main
@@ -6750,31 +6552,26 @@ else
END PROGRAM
_ACEOF
-if ac_fn_fc_try_run "$LINENO"; then :
+if ac_fn_fc_try_link "$LINENO"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- HAVE_STORAGE_SIZE="yes"
+ HAVE_STORAGE_SIZE_FORTRAN="yes"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+
## Check to see if -r8 was specified to determine if we need to
## compile the DOUBLE PRECISION interfaces.
+ FORTRAN_DEFAULT_REALisDBLE="no"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran default REAL is DOUBLE PRECISION" >&5
$as_echo_n "checking if Fortran default REAL is DOUBLE PRECISION... " >&6; }
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
cat > conftest.$ac_ext <<_ACEOF
MODULE type_mod
@@ -6799,17 +6596,15 @@ else
END PROGRAM main
_ACEOF
-if ac_fn_fc_try_run "$LINENO"; then :
+if ac_fn_fc_try_compile "$LINENO"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- FORTRAN_DEFAULT_REALisDBLE="yes"
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
+ FORTRAN_DEFAULT_REALisDBLE="yes"
fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
if test "X$HDF_FORTRAN2003" = "Xyes"; then
@@ -6817,26 +6612,26 @@ fi
## Checking if the compiler supports the required Fortran 2003 features and
## disable Fortran 2003 if it does not.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compiler version compatible with Fortran 2003 HDF" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compiler version compatible with Fortran 2003 HDF" >&5
$as_echo_n "checking if Fortran compiler version compatible with Fortran 2003 HDF... " >&6; }
HAVE_FORTRAN_2003="no"
-
+ HAVE_F2003_REQUIREMENTS="no"
cat > conftest.$ac_ext <<_ACEOF
program main
- USE iso_c_binding
- IMPLICIT NONE
- TYPE(C_PTR) :: ptr
- TYPE(C_FUNPTR) :: funptr
- CHARACTER(LEN=80, KIND=c_char), TARGET :: ichr
+ USE iso_c_binding
+ IMPLICIT NONE
+ TYPE(C_PTR) :: ptr
+ TYPE(C_FUNPTR) :: funptr
+ CHARACTER(LEN=80, KIND=c_char), TARGET :: ichr
- ptr = C_LOC(ichr(1:1))
+ ptr = C_LOC(ichr(1:1))
end
_ACEOF
-if ac_fn_fc_try_compile "$LINENO"; then :
+if ac_fn_fc_try_link "$LINENO"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
HAVE_F2003_REQUIREMENTS=yes
@@ -6844,12 +6639,13 @@ else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+
+
if test "X$HAVE_F2003_REQUIREMENTS" = "Xno"; then
- ## echo $HAVE_FORTRAN_2003
as_fn_error $? "Fortran compiler lacks required Fortran 2003 features; unsupported Fortran 2003 compiler, remove --enable-fortran2003" "$LINENO" 5
else
- ## echo $HAVE_FORTRAN_2003
HAVE_FORTRAN_2003="yes"
fi
fi
@@ -6865,7 +6661,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- if test "X$HAVE_SIZEOF" = "Xyes"; then
+ if test "X$HAVE_SIZEOF_FORTRAN" = "Xyes"; then
FORTRAN_HAVE_SIZEOF_TRUE=
FORTRAN_HAVE_SIZEOF_FALSE='#'
else
@@ -6873,7 +6669,7 @@ else
FORTRAN_HAVE_SIZEOF_FALSE=
fi
- if test "X$HAVE_C_SIZEOF" = "Xyes"; then
+ if test "X$HAVE_C_SIZEOF_FORTRAN" = "Xyes"; then
FORTRAN_HAVE_C_SIZEOF_TRUE=
FORTRAN_HAVE_C_SIZEOF_FALSE='#'
else
@@ -6881,7 +6677,7 @@ else
FORTRAN_HAVE_C_SIZEOF_FALSE=
fi
- if test "X$HAVE_STORAGE_SIZE" = "Xyes"; then
+ if test "X$HAVE_STORAGE_SIZE_FORTRAN" = "Xyes"; then
FORTRAN_HAVE_STORAGE_SIZE_TRUE=
FORTRAN_HAVE_STORAGE_SIZE_FALSE='#'
else
@@ -6906,8 +6702,6 @@ else
fi
-
-
## ----------------------------------------------------------------------
## Check if they would like the C++ interface compiled
##
@@ -7486,15 +7280,11 @@ ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ex
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+ # Checking if C++ needs old style header files in includes
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CXX needs old style header files in includes" >&5
$as_echo_n "checking if $CXX needs old style header files in includes... " >&6; }
-
-if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -7503,30 +7293,23 @@ else
int main(void) { return 0; }
_ACEOF
-if ac_fn_cxx_try_run "$LINENO"; then :
-
- echo no
-
+if ac_fn_cxx_try_link "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
else
-
- echo yes
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
CXXFLAGS="${CXXFLAGS} -DOLD_HEADER_FILENAME"
AM_CXXFLAGS="${AM_CXXFLAGS} -DOLD_HEADER_FILENAME"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+
+ # Checking if C++ can handle namespaces
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CXX can handle namespaces" >&5
$as_echo_n "checking if $CXX can handle namespaces... " >&6; }
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -7541,91 +7324,20 @@ int main(void) {
}
_ACEOF
-if ac_fn_cxx_try_run "$LINENO"; then :
-
- echo yes
-
+if ac_fn_cxx_try_link "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
else
-
- echo no
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
CXXFLAGS="${CXXFLAGS} -DH5_NO_NAMESPACE"
AM_CXXFLAGS="${AM_CXXFLAGS} -DH5_NO_NAMESPACE"
-
fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CXX supports std" >&5
-$as_echo_n "checking if $CXX supports std... " >&6; }
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#include <string>
-
-using namespace std;
-
-int main(void) {
- string myString("testing namespace std");
- return 0;
-}
-
-_ACEOF
-if ac_fn_cxx_try_run "$LINENO"; then :
-
- echo yes
-
-else
-
- echo no
- CXXFLAGS="${CXXFLAGS} -DH5_NO_STD"
- AM_CXXFLAGS="${AM_CXXFLAGS} -DH5_NO_STD"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CXX supports bool types" >&5
-$as_echo_n "checking if $CXX supports bool types... " >&6; }
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int main(void) {
- bool flag;
- return 0;
-}
-
-_ACEOF
-if ac_fn_cxx_try_run "$LINENO"; then :
-
- echo yes
-
-else
-
- echo no
- CXXFLAGS="${CXXFLAGS} -DBOOL_NOTDEFINED"
- AM_CXXFLAGS="${AM_CXXFLAGS} -DBOOL_NOTDEFINED"
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
+ # Checking if C++ has offsetof extension
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CXX has offsetof extension" >&5
$as_echo_n "checking if $CXX has offsetof extension... " >&6; }
@@ -7662,26 +7374,24 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
+if ac_fn_cxx_try_link "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
$as_echo "#define CXX_HAVE_OFFSETOF 1" >>confdefs.h
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+
+
+ # if C++ can handle static cast
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CXX can handle static cast" >&5
$as_echo_n "checking if $CXX can handle static cast... " >&6; }
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -7694,23 +7404,22 @@ int main(void) {
}
_ACEOF
-if ac_fn_cxx_try_run "$LINENO"; then :
-
- echo yes
-
+if ac_fn_cxx_try_link "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
else
-
- echo no
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
CXXFLAGS="${CXXFLAGS} -DNO_STATIC_CAST"
AM_CXXFLAGS="${AM_CXXFLAGS} -DNO_STATIC_CAST"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+
else
- echo "no"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
CXX="no"
fi
@@ -7722,6 +7431,41 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+## ----------------------------------------------------------------------
+## Check if they would like the High Level library compiled
+##
+
+ HL=""
+## name of fortran folder inside "hl", if FORTRAN compile is requested
+ HL_FOR=""
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if high level library is enabled" >&5
+$as_echo_n "checking if high level library is enabled... " >&6; }
+# Check whether --enable-hl was given.
+if test "${enable_hl+set}" = set; then :
+ enableval=$enable_hl; HDF5_HL=$enableval
+else
+ HDF5_HL=yes
+fi
+
+
+if test "X$HDF5_HL" = "Xyes"; then
+ echo "yes"
+ HL="hl"
+
+$as_echo "#define INCLUDE_HL 1" >>confdefs.h
+
+
+ ## If Fortran's default real is double precision and HL is being built then configure
+ ## should fail due to bug HDFFV-889.
+ if test "X$FORTRAN_DEFAULT_REALisDBLE" = "Xyes"; then
+ as_fn_error $? "Fortran high-level routines are not supported when the default REAL is DOUBLE PRECISION, use configure option --disable-hl." "$LINENO" 5
+ fi
+else
+ echo "no"
+fi
+
+
## ----------------------------------------------------------------------
## Check if they have Perl installed on their system. We only need Perl
## if they're using a GNU compiler.
@@ -7772,7 +7516,6 @@ done
fi
-
## ----------------------------------------------------------------------
## Check which archiving tool to use. This needs to be done before
## the AM_PROG_LIBTOOL macro.
@@ -7864,8 +7607,7 @@ fi
## ----------------------------------------------------------------------
-## Check that the tr utility is working properly.
-
+## Set up ${TR} which is used to process DEBUG_PKG.
# Extract the first word of "tr", so it can be a program name with args.
set dummy tr; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -7907,16 +7649,16 @@ fi
-TR_TEST=`echo Test | ${TR} ${as_cr_letters}"," ${as_cr_LETTERS}" "`
-if test "X${TR_TEST}" != "XTEST"; then
- as_fn_error $? "tr program doesn't work" "$LINENO" 5
-fi
-
## ----------------------------------------------------------------------
## Check that time can be used with srcdir. This is okay on most systems,
## but seems to cause problems on Cygwin.
## The solution on Cygwin is not to record execution time for tests.
+##
+## Note: This is still true as of Cygwin 1.7.32 (Aug 2014) on both 32-
+## and 64-bit platforms. Given how long this has been true, it seems
+## unlikely to change, but we should probably re-test this periodically.
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if srcdir= and time commands work together" >&5
$as_echo_n "checking if srcdir= and time commands work together... " >&6; }
@@ -7941,16 +7683,14 @@ fi
## a parallel library even if configure wasn't
## able to find some header file or library that
## might be required. This is defined if the
-## compiler looks like a parallel compiler (e.g.,
-## mpicc or mpcc) or if the user explicitly states
+## user explicitly states
## that a parallel library is being built by supplying
## the `--enable-parallel' configure switch.
##
## PARALLEL -- This variable is set to a non-null value if
-## configure thinks we're compiling a parallel
-## version of the library.
+## we're building a parallel version of the library.
##
-## RUNSERIAL -- This is a command which will be prepended to
+## RUNSERIAL -- This is a command which will be prepended to
## the executable name to run the executable using
## a single process. For serial versions of the
## library this will normally be empty. For parallel
@@ -7976,146 +7716,6 @@ fi
## ----------------------------------------------------------------------
-## If the compiler is obviously a parallel compiler then we're building
-## a parallel version of hdf5 and should define HAVE_PARALLEL. Furthermore,
-## the name of the compiler might tell us how to run the resulting
-## executable. For `mpicc' the executable should be run with `mpiexec' from
-## the same directory as mpicc if it exists.
-##
-case "$CC_BASENAME" in
- mpicc)
- ## The mpich compiler. Use mpiexec from the same directory if it
- ## exists.
- PARALLEL=mpicc
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mpiexec" >&5
-$as_echo_n "checking for mpiexec... " >&6; }
-
- ## Find the path where mpicc is located.
- cmd="`echo $CC | cut -f1 -d' '`"
- if (echo $cmd | grep / >/dev/null); then
- path="`echo $cmd | sed 's/\(.*\)\/.*$/\1/'`"
- else
- for path in `echo $PATH | ${TR} ":" " "`; do
- if test -x $path/$cmd; then
- break
- fi
- done
- fi
-
- ## Is there an mpiexec at that path?
- if test -x $path/mpiexec; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $path/mpiexec" >&5
-$as_echo "$path/mpiexec" >&6; }
- RUNSERIAL="${RUNSERIAL:-none}"
-
- if test -z "$RUNPARALLEL"; then
- RUNPARALLEL="$path/mpiexec -n \$\${NPROCS:=6}"
- fi
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
- fi
- ;;
-
- mpcc|mpcc_r)
- ## The IBM compiler
- PARALLEL="$CC_BASENAME"
- ;;
-
- *)
- ## Probably not a parallel compiler, but if `--enable-parallel'
- ## is defined below then we're still building a parallel hdf5.
- ;;
-esac
-
-## ----------------------------------------------------------------------
-## If the Fortran compiler is obviously a parallel compiler then we're
-## building a parallel version of hdf5 and should define HAVE_PARALLEL.
-## Furthermore, the name of the compiler might tell us how to run the
-## resulting executable. For `mpif90' the executable should be run with
-## `mpiexec' from the same directory as mpif90 if it exists.
-##
-
-if test "X$HDF_FORTRAN" = "Xyes" ; then
- ## Change to the Fortran 90 language
- ac_ext=${ac_fc_srcext-f}
-ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
-ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_fc_compiler_gnu
-
-
- case "$FC" in
- *mpif90*)
- ## The Fortran mpich compiler. Use mpiexec from the same directory
- ## if it exists.
- PARALLEL=mpif90
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mpiexec" >&5
-$as_echo_n "checking for mpiexec... " >&6; }
-
- ## Find the path where mpif90 is located.
- cmd=`echo $FC |cut -f1 -d' '`
- if (echo $cmd |grep / >/dev/null); then
- path="`echo $cmd |sed 's/\(.*\)\/.*$/\1/'`"
- else
- for path in `echo $PATH | ${TR} ":" " "`; do
- if test -x $path/$cmd; then
- break;
- fi
- done
- fi
-
- ## Is there an mpiexec at that path?
- if test -x $path/mpiexec; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $path/mpiexec" >&5
-$as_echo "$path/mpiexec" >&6; }
- RUNSERIAL="${RUNSERIAL:-none}"
-
- if test -z "$RUNPARALLEL"; then
- RUNPARALLEL="$path/mpiexec -n \$\${NPROCS:=6}"
- fi
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
- fi
- ;;
-
- *mpxlf* | *mpxlf_r* | *mpxlf90* | *mpxlf90_r* | *mpxlf95* | *mpxlf95_r*)
- ## The IBM compiler
- PARALLEL="$FC"
- ;;
-
- *)
- ## Probably not a parallel compiler, but if `--enable-parallel'
- ## is defined below then we're still building a parallel hdf5.
- ;;
- esac
-
- ## Change to the C language
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-fi
-
-## -----------------------------------------------------------------------------
-## If shared libraries are being used with parallel, disable them, unless the
-## user explicity enables them via the '--enable-shared' option.
-
-if test "X${enable_shared}" = "X" -a "X${enable_parallel}" = "Xyes"; then
- echo ' shared libraries disabled in parallel'
- enable_shared="no"
-elif test "X${enable_shared}" = "Xyes" -a "X${enable_parallel}" = "Xyes"; then
- echo ' shared libraries explicitly enabled by user'
-elif test "X${enable_shared}" = "X" -a "X${PARALLEL}" != "X"; then
- echo ' shared libraries disabled when a parallel compiler is being used'
- enable_shared="no"
-elif test "X${enable_shared}" = "Xyes" -a "X${PARALLEL}" != "X"; then
- echo ' shared libraries explicitly enabled by user'
-fi
-
-## ----------------------------------------------------------------------
## Fortran libraries are not currently supported on Mac. Disable them.
## (this is overridable with --enable-unsupported).
##
@@ -22865,113 +22465,6 @@ $as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
fi
-## ----------------------------------------------------------------------
-## Check for these two functions before the time headers are checked
-## for, otherwise they are not detected correctly on Solaris (the
-## configure test will fail due to multiply-defined symbols).
-##
-for ac_func in difftime
-do :
- ac_fn_c_check_func "$LINENO" "difftime" "ac_cv_func_difftime"
-if test "x$ac_cv_func_difftime" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_DIFFTIME 1
-_ACEOF
-
-fi
-done
-
-for ac_func in gettimeofday
-do :
- ac_fn_c_check_func "$LINENO" "gettimeofday" "ac_cv_func_gettimeofday"
-if test "x$ac_cv_func_gettimeofday" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_GETTIMEOFDAY 1
-_ACEOF
- have_gettime="yes"
-else
- have_gettime="no"
-fi
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5
-$as_echo_n "checking for library containing clock_gettime... " >&6; }
-if ${ac_cv_search_clock_gettime+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char clock_gettime ();
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-return clock_gettime ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' rt posix4; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_clock_gettime=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_clock_gettime+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_clock_gettime+:} false; then :
-
-else
- ac_cv_search_clock_gettime=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5
-$as_echo "$ac_cv_search_clock_gettime" >&6; }
-ac_res=$ac_cv_search_clock_gettime
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-
-fi
-
-for ac_func in clock_gettime
-do :
- ac_fn_c_check_func "$LINENO" "clock_gettime" "ac_cv_func_clock_gettime"
-if test "x$ac_cv_func_clock_gettime" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOCK_GETTIME 1
-_ACEOF
- have_clock_gettime="yes"
-else
- have_clock_gettime="no"
-fi
-done
-
-
## Unix
for ac_header in sys/resource.h sys/time.h unistd.h sys/ioctl.h sys/stat.h
do :
@@ -23232,92 +22725,15 @@ $as_echo "no" >&6; }
fi
## ----------------------------------------------------------------------
-## Test for Largefile support.
-##
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if configure should try to set up large file support" >&5
-$as_echo_n "checking if configure should try to set up large file support... " >&6; }
-
-# Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
- enableval=$enable_largefile;
-fi
-
-
-## If largefile support is enabled, then set up appropriate compiler options.
-if test "$enable_largefile" != no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
- ## Check for needed compiler options. This check is pulled drectly
- ## from autoconf's AC_SYS_LARGEFILE macro, as of Autoconf v2.65.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
-$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_sys_largefile_CC=no
- if test "$GCC" != yes; then
- ac_save_CC=$CC
- while :; do
- ## IRIX 6.2 and later do not support large files by default,
- ## so use the C compiler's -n32 option if that helps.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
- We can't simply define LARGE_OFF_T to be 9223372036854775807,
- since some C++ compilers masquerading as C compilers
- incorrectly reject 9223372036854775807. */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
- int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
- && LARGE_OFF_T % 2147483647 == 1)
- ? 1 : -1];
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
- if ac_fn_c_try_compile "$LINENO"; then :
- break
-fi
-rm -f core conftest.err conftest.$ac_objext
- CC="$CC -n32"
- if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_sys_largefile_CC=' -n32'; break
-fi
-rm -f core conftest.err conftest.$ac_objext
- break
- done
- CC=$ac_save_CC
- rm -f conftest.$ac_ext
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
-$as_echo "$ac_cv_sys_largefile_CC" >&6; }
- if test "$ac_cv_sys_largefile_CC" != no; then
- CC=$CC$ac_cv_sys_largefile_CC
- fi
-
- ## Use the macro _AC_SYS_LARGEFILE_MACRO_VALUE to test defines
- ## that might need to be set for largefile support to behave
- ## correctly. This macro is defined in acsite.m4 and overrides
- ## the version provided by Autoconf (as of v2.65). The custom
- ## macro additionally adds the appropriate defines to AM_CPPFLAGS
- ## so that later configure checks have them visible.
-
- ## Check for _FILE_OFFSET_BITS
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+## Use the macro _AC_SYS_LARGEFILE_MACRO_VALUE to test defines
+## that might need to be set for largefile support to behave
+## correctly. This macro is defined in acsite.m4 and overrides
+## the version provided by Autoconf (as of v2.65). The custom
+## macro additionally adds the appropriate defines to AM_CPPFLAGS
+## so that later configure checks have them visible.
+
+## Check for _FILE_OFFSET_BITS
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
if ${ac_cv_sys_file_offset_bits+:} false; then :
$as_echo_n "(cached) " >&6
@@ -23403,9 +22819,9 @@ _ACEOF
esac
rm -rf conftest*
- ## Check for _LARGE_FILES
- if test "$ac_cv_sys_file_offset_bits" = unknown; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
+## Check for _LARGE_FILES
+if test "$ac_cv_sys_file_offset_bits" = unknown; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
if ${ac_cv_sys_large_files+:} false; then :
$as_echo_n "(cached) " >&6
@@ -23490,68 +22906,6 @@ _ACEOF
AM_CPPFLAGS="-D_LARGE_FILES=$ac_cv_sys_large_files $AM_CPPFLAGS";;
esac
rm -rf conftest*
- fi
-
- ## Now actually test to see if we can create large files after we've
- ## checked for any needed defines.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if large (64-bit) files are supported on this system." >&5
-$as_echo_n "checking if large (64-bit) files are supported on this system.... " >&6; }
- if ${hdf5_cv_have_lfs+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <stdio.h>
- #include <unistd.h>
- #include <stdlib.h>
- #include <fcntl.h>
- #define BIG_FILE (off_t)0x80000000UL
- int main(void) {
- int fd;
- if ((fd=open("test.conf", O_RDWR|O_TRUNC|O_CREAT, 0666)) < 0) exit(1);
- if (lseek(fd, BIG_FILE, SEEK_SET)!=BIG_FILE) exit(1);
- if (5!=write(fd, "hello", (size_t)5)) exit(1);
- if (lseek(fd, 2*BIG_FILE, SEEK_SET) != 2*BIG_FILE) exit(1);
- if (5!=write(fd, "hello", (size_t)5)) exit(1);
- if (unlink("test.conf") < 0) exit(1);
- exit(0);
- }
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- hdf5_cv_have_lfs=yes
-else
- hdf5_cv_have_lfs=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-
- if test "X${hdf5_cv_have_lfs}" = "Xyes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- LARGEFILE="yes"
- fi
- if test "X${hdf5_cv_have_lfs}" = "Xno"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- LARGEFILE="no"
- fi
-
-else
- LARGEFILE="no"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
fi
## ----------------------------------------------------------------------
@@ -23559,28 +22913,35 @@ fi
##
case "$host_cpu-$host_vendor-$host_os" in
*linux*)
- ## If largefile support is enabled, then make available various
- ## LFS-related routines using the following _LARGEFILE*_SOURCE macros.
- if test "X$LARGEFILE" != "Xno"; then
- AM_CPPFLAGS="-D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE $AM_CPPFLAGS"
- fi
+ ## Make available various LFS-related routines using the following
+ ## _LARGEFILE*_SOURCE macros.
+ AM_CPPFLAGS="-D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE $AM_CPPFLAGS"
## Add POSIX support on Linux systems, so <features.h> defines
## __USE_POSIX, which is required to get the prototype for fdopen
## defined correctly in <stdio.h>.
+ ##
## This flag was removed from h5cc as of 2009-10-17 when it was found
## that the flag broke compiling netCDF-4 code with h5cc, but kept in
## H5_CPPFLAGS because fdopen and HDfdopen fail without it. HDfdopen
## is used only by H5_debug_mask which is used only when debugging in
## H5_init_library (all in H5.c). When the flag was removed this was
## the only compile failure noted.
+ ##
## This was originally defined as _POSIX_SOURCE which was updated to
## _POSIX_C_SOURCE=199506L to expose a greater amount of POSIX
## functionality so clock_gettime and CLOCK_MONOTONIC are defined
- ## correctly.
+ ## correctly. This was later updated to 200112L so that
+ ## posix_memalign() is visible for the direct VFD code on Linux
+ ## systems.
+ ##
## POSIX feature information can be found in the gcc manual at:
## http://www.gnu.org/s/libc/manual/html_node/Feature-Test-Macros.html
- H5_CPPFLAGS="-D_POSIX_C_SOURCE=199506L $H5_CPPFLAGS"
+ H5_CPPFLAGS="-D_POSIX_C_SOURCE=200112L $H5_CPPFLAGS"
+
+ ## Need to add this so that O_DIRECT is visible for the direct
+ ## VFD on Linux systems.
+ AM_CPPFLAGS="-D_GNU_SOURCE $AM_CPPFLAGS"
## Also add BSD support on Linux systems, so <features.h> defines
## __USE_BSD, which is required to get the prototype for strdup
@@ -26794,42 +26155,6 @@ $as_echo "no" >&6; }
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-## check if `struct tm' has a `__tm_gmtoff' member.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __tm_gmtoff in struct tm" >&5
-$as_echo_n "checking for __tm_gmtoff in struct tm... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <sys/time.h>
- #include <time.h>
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-struct tm tm; tm.__tm_gmtoff=0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-$as_echo "#define HAVE___TM_GMTOFF 1" >>confdefs.h
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
## Check whether the global variable `timezone' is defined.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for global timezone variable" >&5
$as_echo_n "checking for global timezone variable... " >&6; }
@@ -26876,217 +26201,6 @@ rm -f core conftest.err conftest.$ac_objext \
;;
esac
-## Check whether `struct timezone' is defined.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct tm is in sys/time.h or time.h" >&5
-$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; }
-if ${ac_cv_struct_tm+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <sys/types.h>
-#include <time.h>
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-struct tm tm;
- int *p = &tm.tm_sec;
- return !p;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_struct_tm=time.h
-else
- ac_cv_struct_tm=sys/time.h
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_tm" >&5
-$as_echo "$ac_cv_struct_tm" >&6; }
-if test $ac_cv_struct_tm = sys/time.h; then
-
-$as_echo "#define TM_IN_SYS_TIME 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_member "$LINENO" "struct tm" "tm_zone" "ac_cv_member_struct_tm_tm_zone" "#include <sys/types.h>
-#include <$ac_cv_struct_tm>
-
-"
-if test "x$ac_cv_member_struct_tm_tm_zone" = xyes; then :
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_TM_TM_ZONE 1
-_ACEOF
-
-
-fi
-
-if test "$ac_cv_member_struct_tm_tm_zone" = yes; then
-
-$as_echo "#define HAVE_TM_ZONE 1" >>confdefs.h
-
-else
- ac_fn_c_check_decl "$LINENO" "tzname" "ac_cv_have_decl_tzname" "#include <time.h>
-"
-if test "x$ac_cv_have_decl_tzname" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_TZNAME $ac_have_decl
-_ACEOF
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tzname" >&5
-$as_echo_n "checking for tzname... " >&6; }
-if ${ac_cv_var_tzname+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <time.h>
-#if !HAVE_DECL_TZNAME
-extern char *tzname[];
-#endif
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-return tzname[0][0];
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_var_tzname=yes
-else
- ac_cv_var_tzname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_var_tzname" >&5
-$as_echo "$ac_cv_var_tzname" >&6; }
- if test $ac_cv_var_tzname = yes; then
-
-$as_echo "#define HAVE_TZNAME 1" >>confdefs.h
-
- fi
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timezone" >&5
-$as_echo_n "checking for struct timezone... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <sys/types.h>
- #include <sys/time.h>
- #include <time.h>
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-struct timezone tz; tz.tz_minuteswest=0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-$as_echo "#define HAVE_STRUCT_TIMEZONE 1" >>confdefs.h
-
- have_struct_tz="yes"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-## If gettimeofday() is going to be used, make sure it uses the timezone struct
-
-if test "$have_gettime" = "yes" -a "$have_struct_tz" = "yes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gettimeofday() gives timezone" >&5
-$as_echo_n "checking whether gettimeofday() gives timezone... " >&6; }
- if ${hdf5_cv_gettimeofday_tz+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <time.h>
- #include <sys/time.h>
- int main(void)
- {
- struct timeval tv;
- struct timezone tz;
- tz.tz_minuteswest = 7777; /* Initialize to an unreasonable number */
- tz.tz_dsttime = 7;
- gettimeofday(&tv, &tz);
- /* Check whether the function returned any value at all */
- if(tz.tz_minuteswest == 7777 && tz.tz_dsttime == 7)
- exit(1);
- else exit (0);
- }
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- hdf5_cv_gettimeofday_tz=yes
-else
- hdf5_cv_gettimeofday_tz=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-
- if test ${hdf5_cv_gettimeofday_tz} = "yes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define GETTIMEOFDAY_GIVES_TZ 1" >>confdefs.h
-
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-fi
## ----------------------------------------------------------------------
## Does the struct stat have the st_blocks field? This field is not Posix.
@@ -27306,7 +26420,73 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
## ----------------------------------------------------------------------
## Check for functions.
##
-for ac_func in alarm BSDgettimeofday fork frexpf frexpl
+## NOTE: clock_gettime may require linking to the rt or posix4 library
+## so we'll search for it before calling AC_CHECK_FUNCS.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5
+$as_echo_n "checking for library containing clock_gettime... " >&6; }
+if ${ac_cv_search_clock_gettime+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char clock_gettime ();
+#ifdef FC_DUMMY_MAIN
+#ifndef FC_DUMMY_MAIN_EQ_F77
+# ifdef __cplusplus
+ extern "C"
+# endif
+ int FC_DUMMY_MAIN() { return 1; }
+#endif
+#endif
+int
+main ()
+{
+return clock_gettime ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' rt posix4; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_clock_gettime=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_clock_gettime+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_clock_gettime+:} false; then :
+
+else
+ ac_cv_search_clock_gettime=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5
+$as_echo "$ac_cv_search_clock_gettime" >&6; }
+ac_res=$ac_cv_search_clock_gettime
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
+for ac_func in alarm clock_gettime difftime fork frexpf frexpl
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -27318,7 +26498,7 @@ _ACEOF
fi
done
-for ac_func in gethostname getpwuid getrusage lstat
+for ac_func in gethostname getpwuid getrusage gettimeofday
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -27330,7 +26510,7 @@ _ACEOF
fi
done
-for ac_func in rand_r random setsysinfo
+for ac_func in lstat rand_r random setsysinfo
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -28210,10 +27390,7 @@ rm -f confcache
## What header files and libraries do we have to look for for parallel
## support? For the most part, search paths are already specified with
-## CPPFLAGS and LDFLAGS or are known to the compiler. If the user says
-## `--disable-parallel' but specifies a known parallel compiler (like mpicc
-## or mpcc) then parallel support is enabled but configure doesn't search
-## for any parallel header files or libraries.
+## CPPFLAGS and LDFLAGS or are known to the compiler.
##
# Check whether --enable-parallel was given.
if test "${enable_parallel+set}" = set; then :
@@ -28238,26 +27415,11 @@ if test "X${ALLOW_UNSUPPORTED}" != "Xyes"; then
fi
fi
-## It's possible to build in parallel by specifying a parallel compiler
-## without using the --enable-parallel flag. This isn't allowed with
-## C++ or threadsafe, either, unless the --enable-unsupported flag
-## has also been specified.
-if test "X${ALLOW_UNSUPPORTED}" != "Xyes"; then
- if test "X${PARALLEL}" != "X" -a "X${enable_cxx}" = "Xyes" ; then
- as_fn_error $? "An MPI compiler is being used; --enable-cxx is not allowed. Use --enable-unsupported to override this error." "$LINENO" 5
- fi
- if test "X${PARALLEL}" != "X" -a "X${THREADSAFE}" = "Xyes"; then
- as_fn_error $? "An MPI compiler is being used; --enable-threadsafe is not allowed. Use --enable-unsupported to override this error." "$LINENO" 5
- fi
-fi
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for parallel support files" >&5
$as_echo_n "checking for parallel support files... " >&6; }
case "X-$enable_parallel" in
X-|X-no|X-none)
- ## Either we are not compiling for parallel or the header and
- ## library files and locations are known to the compiler (this is
- ## the case for a correct installation of mpicc for instance).
+ ## We are not compiling for parallel.
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: skipped" >&5
$as_echo "skipped" >&6; }
;;
@@ -28269,185 +27431,12 @@ $as_echo "skipped" >&6; }
$as_echo "provided by compiler" >&6; }
PARALLEL=yes
- ## Try link a simple MPI program. If fail, try again with -lmpi and
- ## -lmpich.
+ ## Try link a simple MPI program.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a simple MPI-IO C program can be linked" >&5
+$as_echo_n "checking whether a simple MPI-IO C program can be linked... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-MPI_Init()
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MPI_Init in -lmpi" >&5
-$as_echo_n "checking for MPI_Init in -lmpi... " >&6; }
-if ${ac_cv_lib_mpi_MPI_Init+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lmpi $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char MPI_Init ();
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-return MPI_Init ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_mpi_MPI_Init=yes
-else
- ac_cv_lib_mpi_MPI_Init=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mpi_MPI_Init" >&5
-$as_echo "$ac_cv_lib_mpi_MPI_Init" >&6; }
-if test "x$ac_cv_lib_mpi_MPI_Init" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBMPI 1
-_ACEOF
-
- LIBS="-lmpi $LIBS"
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MPI_Init in -lmpich" >&5
-$as_echo_n "checking for MPI_Init in -lmpich... " >&6; }
-if ${ac_cv_lib_mpich_MPI_Init+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lmpich $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char MPI_Init ();
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-return MPI_Init ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_mpich_MPI_Init=yes
-else
- ac_cv_lib_mpich_MPI_Init=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mpich_MPI_Init" >&5
-$as_echo "$ac_cv_lib_mpich_MPI_Init" >&6; }
-if test "x$ac_cv_lib_mpich_MPI_Init" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBMPICH 1
-_ACEOF
-
- LIBS="-lmpich $LIBS"
-
-else
- PARALLEL=no
-fi
-
-fi
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-
- ## Then try link a simple MPI-IO program. If fail, try again with
- ## -lmpio.
- if test "X$PARALLEL" = "Xyes"; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-MPI_File_open()
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MPI_File_open in -lmpio" >&5
-$as_echo_n "checking for MPI_File_open in -lmpio... " >&6; }
-if ${ac_cv_lib_mpio_MPI_File_open+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lmpio $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char MPI_File_open ();
+#include <mpi.h>
#ifdef FC_DUMMY_MAIN
#ifndef FC_DUMMY_MAIN_EQ_F77
# ifdef __cplusplus
@@ -28459,169 +27448,61 @@ char MPI_File_open ();
int
main ()
{
-return MPI_File_open ();
+ MPI_Init(0, (void *)0);
+ MPI_File_open(0, (void *)0, 0, 0, (void *)0);
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_mpio_MPI_File_open=yes
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
else
- ac_cv_lib_mpio_MPI_File_open=no
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ as_fn_error $? "unable to link a simple MPI-IO C program" "$LINENO" 5
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mpio_MPI_File_open" >&5
-$as_echo "$ac_cv_lib_mpio_MPI_File_open" >&6; }
-if test "x$ac_cv_lib_mpio_MPI_File_open" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBMPIO 1
-_ACEOF
-
- LIBS="-lmpio $LIBS"
-else
- PARALLEL=no
-fi
+ if test "X$HDF_FORTRAN" = "Xyes"; then
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- fi
- if test "X$HDF_FORTRAN" = "Xyes"; then
- ## Change to the Fortran 90 language
ac_ext=${ac_fc_srcext-f}
ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_fc_compiler_gnu
- ## Try link a simple MPI program. If fail, try again with -lmpi.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a simple MPI-IO Fortran program can be linked" >&5
+$as_echo_n "checking whether a simple MPI-IO Fortran program can be linked... " >&6; }
cat > conftest.$ac_ext <<_ACEOF
- program main
- include 'mpif.h'
- integer:: ierr
- call mpi_file_open( ierr )
- end
+ PROGRAM main
+ INCLUDE 'mpif.h'
+ INTEGER :: comm, amode, info, fh, ierror
+ CHARACTER(LEN=1) :: filename
+ CALL MPI_File_open( comm, filename, amode, info, fh, ierror)
+ END
_ACEOF
if ac_fn_fc_try_link "$LINENO"; then :
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mpi_file_open in -lmpi" >&5
-$as_echo_n "checking for mpi_file_open in -lmpi... " >&6; }
-if ${ac_cv_lib_mpi_mpi_file_open+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lmpi $LIBS"
-cat > conftest.$ac_ext <<_ACEOF
- program main
- call mpi_file_open
- end
-_ACEOF
-if ac_fn_fc_try_link "$LINENO"; then :
- ac_cv_lib_mpi_mpi_file_open=yes
-else
- ac_cv_lib_mpi_mpi_file_open=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mpi_mpi_file_open" >&5
-$as_echo "$ac_cv_lib_mpi_mpi_file_open" >&6; }
-if test "x$ac_cv_lib_mpi_mpi_file_open" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBMPI 1
-_ACEOF
-
- LIBS="-lmpi $LIBS"
-
-else
- PARALLEL=no
-fi
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-
- ## Then try link a simple MPI-IO program. If fail, try again with
- ## -lmpio.
- if test "X$PARALLEL" = "Xyes"; then
- cat > conftest.$ac_ext <<_ACEOF
-
- program main
- include 'mpif.h'
- integer:: ierr
- call mpi_file_open( ierr )
- end
-_ACEOF
-if ac_fn_fc_try_link "$LINENO"; then :
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mpi_file_open in -lmpio" >&5
-$as_echo_n "checking for mpi_file_open in -lmpio... " >&6; }
-if ${ac_cv_lib_mpio_mpi_file_open+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lmpio $LIBS"
-cat > conftest.$ac_ext <<_ACEOF
- program main
- call mpi_file_open
- end
-_ACEOF
-if ac_fn_fc_try_link "$LINENO"; then :
- ac_cv_lib_mpio_mpi_file_open=yes
-else
- ac_cv_lib_mpio_mpi_file_open=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mpio_mpi_file_open" >&5
-$as_echo "$ac_cv_lib_mpio_mpi_file_open" >&6; }
-if test "x$ac_cv_lib_mpio_mpi_file_open" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBMPIO 1
-_ACEOF
-
- LIBS="-lmpio $LIBS"
-
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
else
- PARALLEL=no
-fi
-
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ as_fn_error $? "unable to link a simple MPI-IO Fortran program" "$LINENO" 5
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
- fi
- ## Change to the C language
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- fi
- ## Set RUNPARALLEL to mpiexec if not set yet.
- ## Check for building on Cray if RUNPARALLEL is not yet set by checking
- ## for 'aprun' command (which is the parallel job launcher, like mpiexec).
- if test "X$PARALLEL" = "Xyes" -a -z "$RUNPARALLEL"; then
- ## Find the path where aprun is located.
- for path in `echo $PATH | ${TR} ":" " "`; do
- if test -x $path/aprun; then
- RUNPARALLEL="aprun -q -n \$\${NPROCS:=6}"
- break;
- fi
- done
fi
## Set RUNPARALLEL to mpiexec if not set yet.
@@ -28661,39 +27542,6 @@ $as_echo_n "checking prefix for running in parallel... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $RUNPARALLEL" >&5
$as_echo "$RUNPARALLEL" >&6; }
- ## Check that we can link a simple MPI and MPI-IO application
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a simple MPI-IO program can be linked" >&5
-$as_echo_n "checking whether a simple MPI-IO program can be linked... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-MPI_Init(); MPI_File_open();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- as_fn_error $? "unable to link a simple MPI-IO application" "$LINENO" 5
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-
## There *must* be some way to run in parallel even if it's just the
## word `none'.
if test -z "$RUNPARALLEL"; then
@@ -28701,7 +27549,8 @@ rm -f core conftest.err conftest.$ac_objext \
fi
## If RUNSERIAL or RUNPARALLEL is the word `none' then replace it with
- ## the empty string.
+ ## the empty string. This means that no launch commands were requested,
+ ## so we will not use any launch commands.
if test "X$RUNSERIAL" = "Xnone"; then
RUNSERIAL=""
fi
@@ -28877,61 +27726,6 @@ else
unset MPE
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MPE_Init_mpi_io in -llmpe" >&5
-$as_echo_n "checking for MPE_Init_mpi_io in -llmpe... " >&6; }
-if ${ac_cv_lib_lmpe_MPE_Init_mpi_io+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-llmpe $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char MPE_Init_mpi_io ();
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-return MPE_Init_mpi_io ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_lmpe_MPE_Init_mpi_io=yes
-else
- ac_cv_lib_lmpe_MPE_Init_mpi_io=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lmpe_MPE_Init_mpi_io" >&5
-$as_echo "$ac_cv_lib_lmpe_MPE_Init_mpi_io" >&6; }
-if test "x$ac_cv_lib_lmpe_MPE_Init_mpi_io" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBLMPE 1
-_ACEOF
-
- LIBS="-llmpe $LIBS"
-
-else
- unset MPE
-fi
-
;;
*)
case "$withval" in
@@ -29052,62 +27846,6 @@ else
LDFLAGS="$saved_LDFLAGS"; AM_LDFLAGS="$saved_AM_LDFLAGS"; unset MPE
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MPE_Init_mpi_io in -llmpe" >&5
-$as_echo_n "checking for MPE_Init_mpi_io in -llmpe... " >&6; }
-if ${ac_cv_lib_lmpe_MPE_Init_mpi_io+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-llmpe $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char MPE_Init_mpi_io ();
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-return MPE_Init_mpi_io ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_lmpe_MPE_Init_mpi_io=yes
-else
- ac_cv_lib_lmpe_MPE_Init_mpi_io=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lmpe_MPE_Init_mpi_io" >&5
-$as_echo "$ac_cv_lib_lmpe_MPE_Init_mpi_io" >&6; }
-if test "x$ac_cv_lib_lmpe_MPE_Init_mpi_io" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBLMPE 1
-_ACEOF
-
- LIBS="-llmpe $LIBS"
-
-else
- LDFLAGS="$saved_LDFLAGS"; AM_LDFLAGS="$saved_AM_LDFLAGS"; unset MPE
-fi
-
-
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MPE_Init_log in -lmpe" >&5
$as_echo_n "checking for MPE_Init_log in -lmpe... " >&6; }
@@ -29164,61 +27902,6 @@ else
unset MPE
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MPE_Init_mpi_io in -llmpe" >&5
-$as_echo_n "checking for MPE_Init_mpi_io in -llmpe... " >&6; }
-if ${ac_cv_lib_lmpe_MPE_Init_mpi_io+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-llmpe $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char MPE_Init_mpi_io ();
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-return MPE_Init_mpi_io ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_lmpe_MPE_Init_mpi_io=yes
-else
- ac_cv_lib_lmpe_MPE_Init_mpi_io=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lmpe_MPE_Init_mpi_io" >&5
-$as_echo "$ac_cv_lib_lmpe_MPE_Init_mpi_io" >&6; }
-if test "x$ac_cv_lib_lmpe_MPE_Init_mpi_io" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBLMPE 1
-_ACEOF
-
- LIBS="-llmpe $LIBS"
-
-else
- unset MPE
-fi
-
fi
;;
esac
@@ -29230,6 +27913,7 @@ $as_echo "#define HAVE_MPE 1" >>confdefs.h
fi
fi
+
## ----------------------------------------------------------------------
## Turn on internal I/O filters by setting macros in header files
## Internal I/O filters are contained entirely within the library and do
@@ -29303,147 +27987,70 @@ $as_echo "#define HAVE_FILTER_SCALEOFFSET 1" >>confdefs.h
done
fi
-## ----------------------------------------------------------------------
-## This is defined only when we're using CodeWarrior, since it has a
-## broken "open()" call.
-#
-if test 1 = 2; then
-
-$as_echo "#define NO_SHARED_WRITING 1" >>confdefs.h
-fi
-
-## --------------------------------------------------------------------------
-## Should the Default Virtual File Driver be compiled?
+## ----------------------------------------------------------------------
+## Check if Direct I/O driver is enabled by --enable-direct-vfd
##
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Default Virtual File Driver definition" >&5
-$as_echo_n "checking for Default Virtual File Driver definition... " >&6; }
+## Check these regardless. If the checks are moved inside the main
+## direct VFD block, the output is nested.
-# Check whether --with-default-vfd was given.
-if test "${with_default_vfd+set}" = set; then :
- withval=$with_default_vfd;
+if ${hdf5_cv_direct_io+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_fn_c_check_decl "$LINENO" "O_DIRECT" "ac_cv_have_decl_O_DIRECT" "#include <fcntl.h>
+"
+if test "x$ac_cv_have_decl_O_DIRECT" = xyes; then :
+ hdf5_cv_direct_io=yes
else
- withval=sec2
+ hdf5_cv_direct_io=no
fi
+fi
-if test "X$withval" = "Xsec2"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- default_vfd=yes
- vfd_define=H5FD_SEC2
-elif test "X$withval" = "Xstdio"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- default_vfd=yes
- vfd_define=H5FD_STDIO
+if ${hdf5_cv_posix_memalign+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- default_vfd=no
+ ac_fn_c_check_func "$LINENO" "posix_memalign" "ac_cv_func_posix_memalign"
+if test "x$ac_cv_func_posix_memalign" = xyes; then :
+ hdf5_cv_posix_memalign=yes
+else
+ hdf5_cv_posix_memalign=no
fi
-if test "X$default_vfd" = "Xyes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define DEFAULT_VFD $vfd_define
-_ACEOF
-
fi
-## ----------------------------------------------------------------------
-## Check if Direct I/O driver is enabled by --enable-direct-vfd
-##
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Direct Virtual File Driver support" >&5
-$as_echo_n "checking for Direct Virtual File Driver support... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the direct I/O virtual file driver (VFD) is enabled" >&5
+$as_echo_n "checking if the direct I/O virtual file driver (VFD) is enabled... " >&6; }
# Check whether --enable-direct-vfd was given.
if test "${enable_direct_vfd+set}" = set; then :
enableval=$enable_direct_vfd; DIRECT_VFD=$enableval
else
- DIRECT_VFD=yes
-fi
-
-
-if test "$DIRECT_VFD" = "yes"; then
- if ${hdf5_cv_direct_io+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <fcntl.h>
- int main(void)
- {
- int fid;
- if((fid=open("tst_file", O_CREAT | O_TRUNC | O_DIRECT, 0755))<0)
- exit(1);
- close(fid);
- remove("tst_file");
- exit (0);
- }
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#ifdef FC_DUMMY_MAIN
-#ifndef FC_DUMMY_MAIN_EQ_F77
-# ifdef __cplusplus
- extern "C"
-# endif
- int FC_DUMMY_MAIN() { return 1; }
-#endif
-#endif
-int
-main ()
-{
-posix_memalign()
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- hdf5_cv_direct_io=yes
-else
- hdf5_cv_direct_io=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-else
- hdf5_cv_direct_io=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
+ DIRECT_VFD=no
fi
- if test ${hdf5_cv_direct_io} = "yes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+if test "X$DIRECT_VFD" = "Xyes"; then
+ if test ${hdf5_cv_direct_io} = "yes" && test ${hdf5_cv_posix_memalign} = "yes" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
$as_echo "#define HAVE_DIRECT 1" >>confdefs.h
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
- DIRECT_VFD=no
- fi
+ DIRECT_VFD=no
+ as_fn_error $? "The direct VFD was requested but cannot be built. This is either
+ due to O_DIRECT not being found in fcntl.h or a lack of
+ posix_memalign() on your system. Please re-configure without
+ specifying --enable-direct-vfd." "$LINENO" 5
+ fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: suppressed" >&5
-$as_echo "suppressed" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
if test "X$DIRECT_VFD" = "Xyes"; then
@@ -30950,39 +29557,6 @@ if test -n "$AM_CPPFLAGS"; then
AM_CPPFLAGS=$TEMP_CPPFLAGS
fi
-## ----------------------------------------------------------------------
-## Check if they would like the High Level library compiled
-##
-
- HL=""
-## name of fortran folder inside "hl", if FORTRAN compile is requested
- HL_FOR=""
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if high level library is enabled" >&5
-$as_echo_n "checking if high level library is enabled... " >&6; }
-# Check whether --enable-hl was given.
-if test "${enable_hl+set}" = set; then :
- enableval=$enable_hl; HDF5_HL=$enableval
-else
- HDF5_HL=yes
-fi
-
-
-if test "X$HDF5_HL" = "Xyes"; then
- echo "yes"
- HL="hl"
-
-$as_echo "#define INCLUDE_HL 1" >>confdefs.h
-
-
-## Check if Fortran's default real is double precision. If it is and HL is being built then configure
-## should fail due to bug HDFFV-889.
- if test "X$FORTRAN_DEFAULT_REALisDBLE" = "Xyes"; then
- as_fn_error $? "Fortran high-level routines are not supported when the default REAL is DOUBLE PRECISION, use configure option --disable-hl." "$LINENO" 5
- fi
-else
- echo "no"
-fi
-
## ----------------------------------------------------------------------
## Some programs shouldn't be built by default (e.g., programs to generate
@@ -31732,7 +30306,7 @@ Usage: $0 [OPTIONS]
Report bugs to <bug-libtool@gnu.org>."
lt_cl_version="\
-HDF5 config.lt 1.9.212
+HDF5 config.lt 1.9.215
configured by $0, generated by GNU Autoconf 2.69.
Copyright (C) 2011 Free Software Foundation, Inc.
@@ -33874,7 +32448,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by HDF5 $as_me 1.9.212, which was
+This file was extended by HDF5 $as_me 1.9.215, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -33940,7 +32514,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-HDF5 config.status 1.9.212
+HDF5 config.status 1.9.215
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/configure.ac b/configure.ac
index e70ed30..f53c8a6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,7 +26,7 @@ AC_PREREQ([2.69])
## NOTE: Do not forget to change the version number here when we do a
## release!!!
##
-AC_INIT([HDF5], [1.9.212], [help@hdfgroup.org])
+AC_INIT([HDF5], [1.9.215], [help@hdfgroup.org])
AC_CONFIG_SRCDIR([src/H5.c])
AC_CONFIG_HEADER([src/H5config.h])
@@ -160,7 +160,6 @@ AC_MSG_RESULT([done])
## HDF_CXX: whether C++ is enabled. Default no.
## CXX: C++ compiler.
## HDF5_HL: whether high-level library is enabled. Default is yes.
-## LARGEFILE: whether largefile support is enabled. Default yes.
## INSTRUMENT: whether INSTRUMENT is enabled. No default set here.
## CODESTACK: whether CODESTACK is enabled. Default no.
## HAVE_DMALLOC: whether system has dmalloc support. Default no.
@@ -181,7 +180,6 @@ AC_SUBST([FC2003]) HDF_FORTRAN2003=no
AC_SUBST([HDF_CXX]) HDF_CXX=no
AC_SUBST([CXX]) HDF_CXX=no
AC_SUBST([HDF5_HL]) HDF5_HL=yes
-AC_SUBST([LARGEFILE]) LARGEFILE=yes
AC_SUBST([INSTRUMENT])
AC_SUBST([CODESTACK]) CODESTACK=no
AC_SUBST([HAVE_DMALLOC]) HAVE_DMALLOC=no
@@ -372,7 +370,7 @@ AC_SUBST([HDF5_INTERFACES]) HDF5_INTERFACES=""
AC_MSG_CHECKING([if Fortran interface enabled])
AC_ARG_ENABLE([fortran],
[AS_HELP_STRING([--enable-fortran],
- [Compile the Fortran 77/90/95 interface [default=no]])],
+ [Compile the Fortran 90/95 interface [default=no]])],
[HDF_FORTRAN=$enableval])
if test "X$HDF_FORTRAN" = "Xyes"; then
@@ -399,14 +397,13 @@ if test "X$HDF_FORTRAN2003" = "Xyes" && test "X$HDF_FORTRAN" = "Xno"; then
echo "no"
AC_MSG_ERROR([--enable-fortran must be used with --enable-fortran2003])
else
- echo "yes"
+ if test "X$HDF_FORTRAN2003" = "Xyes" && test "X$HDF_FORTRAN" = "Xyes"; then
+ echo "yes"
+ else
+ echo "no"
+ fi
fi
-HAVE_SIZEOF="no"
-HAVE_C_SIZEOF="no"
-HAVE_STORAGE_SIZE="no"
-FORTRAN_DEFAULT_REALisDBLE="no"
-
if test "X$HDF_FORTRAN" = "Xyes"; then
AC_SUBST([FC]) HDF_FORTRAN=yes
@@ -415,12 +412,6 @@ if test "X$HDF_FORTRAN" = "Xyes"; then
HDF5_INTERFACES="$HDF5_INTERFACES fortran"
## --------------------------------------------------------------------
- ## Default for FORTRAN 2003 compliant compilers
- ##
- HAVE_FORTRAN_2003="no"
- HAVE_F2003_REQUIREMENTS="no"
-
- ## --------------------------------------------------------------------
## HDF5 integer variables for the H5fortran_types.f90 file.
##
AC_SUBST([R_LARGE])
@@ -441,16 +432,11 @@ if test "X$HDF_FORTRAN" = "Xyes"; then
AC_SUBST([FSEARCH_DIRS])
## --------------------------------------------------------------------
- ## Check for a Fortran 9X compiler and how to include modules.
+ ## Check for a Fortran compiler and how to include modules.
##
- AC_PROG_FC([f90 pgf90 slf90 f95 g95 xlf95 efc ifort ftn],)
+ AC_PROG_FC([PAC_FC_SEARCH_LIST],)
AC_F9X_MODS
- ## It seems that libtool (as of Libtool 1.5.14) is trying to
- ## configure itself for Fortran 77.
- ## Tell it that our F77 compiler is $FC (actually a F9X compiler)
- F77=$FC
-
## Change to the Fortran 90 language
AC_LANG_PUSH(Fortran)
@@ -460,116 +446,28 @@ if test "X$HDF_FORTRAN" = "Xyes"; then
AC_FC_WRAPPERS
## --------------------------------------------------------------------
- ## See if the compiler will support the "-I." option
- ##
- dnl AM_FCFLAGS_saved=$AM_FCFLAGS
- dnl AM_FCFLAGS="${AM_FCFLAGS} -I."
-
- dnl AC_MSG_CHECKING(if compiler supports -I. option)
- dnl AC_TRY_FCOMPILE([
- dnl program conftest
- dnl end
- dnl ], AC_MSG_RESULT(yes),
- dnl AC_MSG_RESULT(no)
- dnl AM_FCFLAGS="$AM_FCFLAGS_saved")
-
- ## --------------------------------------------------------------------
## See if the fortran compiler supports the intrinsic function "SIZEOF"
-
- AC_MSG_CHECKING([if Fortran compiler supports intrinsic SIZEOF])
- AC_TRY_RUN([
- PROGRAM main
- i = sizeof(x)
- END PROGRAM
- ], [AC_MSG_RESULT([yes])
- HAVE_SIZEOF="yes"],
- [AC_MSG_RESULT([no])])
+ PAC_PROG_FC_SIZEOF
## See if the fortran compiler supports the intrinsic function "C_SIZEOF"
-
- AC_MSG_CHECKING([if Fortran compiler supports intrinsic C_SIZEOF])
- AC_TRY_RUN([
- PROGRAM main
- USE ISO_C_BINDING
- INTEGER(C_INT) :: a
- INTEGER(C_SIZE_T) :: result
- result = C_SIZEOF(a)
- END PROGRAM
- ], [AC_MSG_RESULT([yes])
- HAVE_C_SIZEOF="yes"],
- [AC_MSG_RESULT([no])])
+ PAC_PROG_FC_C_SIZEOF
## See if the fortran compiler supports the intrinsic function "STORAGE_SIZE"
-
- AC_MSG_CHECKING([if Fortran compiler supports intrinsic STORAGE_SIZE])
- AC_TRY_RUN([
- PROGRAM main
- INTEGER :: a
- INTEGER :: result
- result = STORAGE_SIZE(a)
- END PROGRAM
- ], [AC_MSG_RESULT([yes])
- HAVE_STORAGE_SIZE="yes"],
- [AC_MSG_RESULT([no])])
+ PAC_PROG_FC_STORAGE_SIZE
## Check to see if -r8 was specified to determine if we need to
## compile the DOUBLE PRECISION interfaces.
-
- AC_MSG_CHECKING([if Fortran default REAL is DOUBLE PRECISION])
-
- AC_TRY_RUN([
- MODULE type_mod
- INTERFACE h5t
- MODULE PROCEDURE h5t_real
- MODULE PROCEDURE h5t_dble
- END INTERFACE
- CONTAINS
- SUBROUTINE h5t_real(r)
- REAL :: r
- END SUBROUTINE h5t_real
- SUBROUTINE h5t_dble(d)
- DOUBLE PRECISION :: d
- END SUBROUTINE h5t_dble
- END MODULE type_mod
- PROGRAM main
- USE type_mod
- REAL :: r
- DOUBLE PRECISION :: d
- CALL h5t(r)
- CALL h5t(d)
- END PROGRAM main
- ],
- [AC_MSG_RESULT([no])],
- [AC_MSG_RESULT([yes])
- FORTRAN_DEFAULT_REALisDBLE="yes"])
+ PAC_PROG_FC_DEFAULT_REALisDBLE
if test "X$HDF_FORTRAN2003" = "Xyes"; then
## Checking if the compiler supports the required Fortran 2003 features and
## disable Fortran 2003 if it does not.
-
- AC_MSG_CHECKING([if Fortran compiler version compatible with Fortran 2003 HDF])
- HAVE_FORTRAN_2003="no"
-
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[
-
- USE iso_c_binding
- IMPLICIT NONE
- TYPE(C_PTR) :: ptr
- TYPE(C_FUNPTR) :: funptr
- CHARACTER(LEN=80, KIND=c_char), TARGET :: ichr
-
- ptr = C_LOC(ichr(1:1))
-
- ])],
- [AC_MSG_RESULT([yes])
- HAVE_F2003_REQUIREMENTS=[yes]],
- [AC_MSG_RESULT([no])])
+ PAC_PROG_FC_HAVE_F2003_REQUIREMENTS
+
if test "X$HAVE_F2003_REQUIREMENTS" = "Xno"; then
- ## echo $HAVE_FORTRAN_2003
AC_MSG_ERROR([Fortran compiler lacks required Fortran 2003 features; unsupported Fortran 2003 compiler, remove --enable-fortran2003])
else
- ## echo $HAVE_FORTRAN_2003
HAVE_FORTRAN_2003="yes"
fi
fi
@@ -580,14 +478,12 @@ fi
## Change back to the C language
AC_LANG_POP(Fortran)
-AM_CONDITIONAL([FORTRAN_HAVE_SIZEOF], [test "X$HAVE_SIZEOF" = "Xyes"])
-AM_CONDITIONAL([FORTRAN_HAVE_C_SIZEOF], [test "X$HAVE_C_SIZEOF" = "Xyes"])
-AM_CONDITIONAL([FORTRAN_HAVE_STORAGE_SIZE], [test "X$HAVE_STORAGE_SIZE" = "Xyes"])
+AM_CONDITIONAL([FORTRAN_HAVE_SIZEOF], [test "X$HAVE_SIZEOF_FORTRAN" = "Xyes"])
+AM_CONDITIONAL([FORTRAN_HAVE_C_SIZEOF], [test "X$HAVE_C_SIZEOF_FORTRAN" = "Xyes"])
+AM_CONDITIONAL([FORTRAN_HAVE_STORAGE_SIZE], [test "X$HAVE_STORAGE_SIZE_FORTRAN" = "Xyes"])
AM_CONDITIONAL([FORTRAN_2003_CONDITIONAL_F], [test "X$HAVE_FORTRAN_2003" = "Xyes"])
AM_CONDITIONAL([FORTRAN_DEFAULT_REALisDBLE_F], [test "X$FORTRAN_DEFAULT_REALisDBLE" = "Xyes"])
-
-
## ----------------------------------------------------------------------
## Check if they would like the C++ interface compiled
##
@@ -611,114 +507,56 @@ if test "X$HDF_CXX" = "Xyes"; then
## Change to the C++ language
AC_LANG_PUSH(C++)
- AC_MSG_CHECKING([if $CXX needs old style header files in includes])
- AC_TRY_RUN([
-#include <iostream>
-
-int main(void) { return 0; }
- ], [
- echo no
- ], [
- echo yes
- CXXFLAGS="${CXXFLAGS} -DOLD_HEADER_FILENAME"
- AM_CXXFLAGS="${AM_CXXFLAGS} -DOLD_HEADER_FILENAME"
- ])
+ # Checking if C++ needs old style header files in includes
+ PAC_PROG_CXX_HEADERS
- AC_MSG_CHECKING([if $CXX can handle namespaces])
- AC_TRY_RUN([
-namespace H5 {
-int fnord;
-}
+ # Checking if C++ can handle namespaces
+ PAC_PROG_CXX_NAMESPACE
+
+ # Checking if C++ has offsetof extension
+ PAC_PROG_CXX_OFFSETOF
-int main(void) {
- using namespace H5;
- fnord = 37;
- return 0;
-}
- ], [
- echo yes
- ], [
- echo no
- CXXFLAGS="${CXXFLAGS} -DH5_NO_NAMESPACE"
- AM_CXXFLAGS="${AM_CXXFLAGS} -DH5_NO_NAMESPACE"
- ])
+ # if C++ can handle static cast
+ PAC_PROG_CXX_STATIC_CAST
+
+else
+ AC_MSG_RESULT([no])
+ CXX="no"
+fi
- AC_MSG_CHECKING([if $CXX supports std])
- AC_TRY_RUN([
-#include <string>
+## Change back to the C language
+AC_LANG_POP(C++)
-using namespace std;
-int main(void) {
- string myString("testing namespace std");
- return 0;
-}
- ], [
- echo yes
- ], [
- echo no
- CXXFLAGS="${CXXFLAGS} -DH5_NO_STD"
- AM_CXXFLAGS="${AM_CXXFLAGS} -DH5_NO_STD"
- ])
+## ----------------------------------------------------------------------
+## Check if they would like the High Level library compiled
+##
- AC_MSG_CHECKING([if $CXX supports bool types])
- AC_TRY_RUN([
-int main(void) {
- bool flag;
- return 0;
-}
- ], [
- echo yes
- ], [
- echo no
- CXXFLAGS="${CXXFLAGS} -DBOOL_NOTDEFINED"
- AM_CXXFLAGS="${AM_CXXFLAGS} -DBOOL_NOTDEFINED"
- ])
+AC_SUBST(HL) HL=""
+## name of fortran folder inside "hl", if FORTRAN compile is requested
+AC_SUBST(HL_FOR) HL_FOR=""
+AC_MSG_CHECKING([if high level library is enabled])
+AC_ARG_ENABLE([hl],
+ [AS_HELP_STRING([--enable-hl],
+ [Enable the high-level library [default=yes]])],
+ [HDF5_HL=$enableval],
+ [HDF5_HL=yes])
- AC_MSG_CHECKING([if $CXX has offsetof extension])
- AC_TRY_COMPILE([
- #include <stdio.h>
- #include <stddef.h>
- ],[
- struct index_st
- {
- unsigned char type;
- unsigned char num;
- unsigned int len;
- };
- typedef struct index_st index_t;
- int x,y;
- x = offsetof(struct index_st, len);
- y = offsetof(index_t, num)
- ],
- AC_DEFINE([CXX_HAVE_OFFSETOF], [1],
- [Define if C++ compiler recognizes offsetof])
- AC_MSG_RESULT([yes]),
- AC_MSG_RESULT([no]))
-
- AC_MSG_CHECKING([if $CXX can handle static cast])
- AC_TRY_RUN([
-int main(void) {
- float test_float;
- int test_int;
- test_float = 37.0;
- test_int = static_cast <int> (test_float);
- return 0;
-}
- ], [
- echo yes
- ], [
- echo no
- CXXFLAGS="${CXXFLAGS} -DNO_STATIC_CAST"
- AM_CXXFLAGS="${AM_CXXFLAGS} -DNO_STATIC_CAST"
- ])
+if test "X$HDF5_HL" = "Xyes"; then
+ echo "yes"
+ HL="hl"
+ AC_DEFINE([INCLUDE_HL], [1],
+ [Define if HDF5's high-level library headers should be included in hdf5.h])
+
+ ## If Fortran's default real is double precision and HL is being built then configure
+ ## should fail due to bug HDFFV-889.
+ if test "X$FORTRAN_DEFAULT_REALisDBLE" = "Xyes"; then
+ AC_MSG_ERROR([Fortran high-level routines are not supported when the default REAL is DOUBLE PRECISION, use configure option --disable-hl.])
+ fi
else
- echo "no"
- CXX="no"
+ echo "no"
fi
-## Change back to the C language
-AC_LANG_POP(C++)
## ----------------------------------------------------------------------
## Check if they have Perl installed on their system. We only need Perl
@@ -729,7 +567,6 @@ if test "X$GCC" = "Xyes"; then
AC_CHECK_PROGS([PERL], [perl],, [$PATH])
fi
-
## ----------------------------------------------------------------------
## Check which archiving tool to use. This needs to be done before
## the AM_PROG_LIBTOOL macro.
@@ -749,20 +586,19 @@ AC_PROG_INSTALL
## ----------------------------------------------------------------------
-## Check that the tr utility is working properly.
-
+## Set up ${TR} which is used to process DEBUG_PKG.
AC_PATH_PROG([TR], [tr])
-TR_TEST=`echo Test | ${TR} ${as_cr_letters}"," ${as_cr_LETTERS}" "`
-if test "X${TR_TEST}" != "XTEST"; then
- AC_MSG_ERROR([tr program doesn't work])
-fi
-
## ----------------------------------------------------------------------
## Check that time can be used with srcdir. This is okay on most systems,
## but seems to cause problems on Cygwin.
## The solution on Cygwin is not to record execution time for tests.
+##
+## Note: This is still true as of Cygwin 1.7.32 (Aug 2014) on both 32-
+## and 64-bit platforms. Given how long this has been true, it seems
+## unlikely to change, but we should probably re-test this periodically.
+
AC_MSG_CHECKING([if srcdir= and time commands work together])
AC_SUBST([TIME])
@@ -784,16 +620,14 @@ fi
## a parallel library even if configure wasn't
## able to find some header file or library that
## might be required. This is defined if the
-## compiler looks like a parallel compiler (e.g.,
-## mpicc or mpcc) or if the user explicitly states
+## user explicitly states
## that a parallel library is being built by supplying
## the `--enable-parallel' configure switch.
##
## PARALLEL -- This variable is set to a non-null value if
-## configure thinks we're compiling a parallel
-## version of the library.
+## we're building a parallel version of the library.
##
-## RUNSERIAL -- This is a command which will be prepended to
+## RUNSERIAL -- This is a command which will be prepended to
## the executable name to run the executable using
## a single process. For serial versions of the
## library this will normally be empty. For parallel
@@ -819,131 +653,6 @@ AC_SUBST([RUNPARALLEL])
AC_SUBST([TESTPARALLEL])
## ----------------------------------------------------------------------
-## If the compiler is obviously a parallel compiler then we're building
-## a parallel version of hdf5 and should define HAVE_PARALLEL. Furthermore,
-## the name of the compiler might tell us how to run the resulting
-## executable. For `mpicc' the executable should be run with `mpiexec' from
-## the same directory as mpicc if it exists.
-##
-case "$CC_BASENAME" in
- mpicc)
- ## The mpich compiler. Use mpiexec from the same directory if it
- ## exists.
- PARALLEL=mpicc
- AC_MSG_CHECKING([for mpiexec])
-
- ## Find the path where mpicc is located.
- cmd="`echo $CC | cut -f1 -d' '`"
- if (echo $cmd | grep / >/dev/null); then
- path="`echo $cmd | sed 's/\(.*\)\/.*$/\1/'`"
- else
- for path in `echo $PATH | ${TR} ":" " "`; do
- if test -x $path/$cmd; then
- break
- fi
- done
- fi
-
- ## Is there an mpiexec at that path?
- if test -x $path/mpiexec; then
- AC_MSG_RESULT([$path/mpiexec])
- RUNSERIAL="${RUNSERIAL:-none}"
-
- if test -z "$RUNPARALLEL"; then
- RUNPARALLEL="$path/mpiexec -n \$\${NPROCS:=6}"
- fi
- else
- AC_MSG_RESULT([none])
- fi
- ;;
-
- mpcc|mpcc_r)
- ## The IBM compiler
- PARALLEL="$CC_BASENAME"
- ;;
-
- *)
- ## Probably not a parallel compiler, but if `--enable-parallel'
- ## is defined below then we're still building a parallel hdf5.
- ;;
-esac
-
-## ----------------------------------------------------------------------
-## If the Fortran compiler is obviously a parallel compiler then we're
-## building a parallel version of hdf5 and should define HAVE_PARALLEL.
-## Furthermore, the name of the compiler might tell us how to run the
-## resulting executable. For `mpif90' the executable should be run with
-## `mpiexec' from the same directory as mpif90 if it exists.
-##
-
-if test "X$HDF_FORTRAN" = "Xyes" ; then
- ## Change to the Fortran 90 language
- AC_LANG_PUSH(Fortran)
-
- case "$FC" in
- *mpif90*)
- ## The Fortran mpich compiler. Use mpiexec from the same directory
- ## if it exists.
- PARALLEL=mpif90
- AC_MSG_CHECKING([for mpiexec])
-
- ## Find the path where mpif90 is located.
- cmd=`echo $FC |cut -f1 -d' '`
- if (echo $cmd |grep / >/dev/null); then
- path="`echo $cmd |sed 's/\(.*\)\/.*$/\1/'`"
- else
- for path in `echo $PATH | ${TR} ":" " "`; do
- if test -x $path/$cmd; then
- break;
- fi
- done
- fi
-
- ## Is there an mpiexec at that path?
- if test -x $path/mpiexec; then
- AC_MSG_RESULT([$path/mpiexec])
- RUNSERIAL="${RUNSERIAL:-none}"
-
- if test -z "$RUNPARALLEL"; then
- RUNPARALLEL="$path/mpiexec -n \$\${NPROCS:=6}"
- fi
- else
- AC_MSG_RESULT([none])
- fi
- ;;
-
- *mpxlf* | *mpxlf_r* | *mpxlf90* | *mpxlf90_r* | *mpxlf95* | *mpxlf95_r*)
- ## The IBM compiler
- PARALLEL="$FC"
- ;;
-
- *)
- ## Probably not a parallel compiler, but if `--enable-parallel'
- ## is defined below then we're still building a parallel hdf5.
- ;;
- esac
-
- ## Change to the C language
- AC_LANG_POP(Fortran)
-fi
-
-## -----------------------------------------------------------------------------
-## If shared libraries are being used with parallel, disable them, unless the
-## user explicity enables them via the '--enable-shared' option.
-
-if test "X${enable_shared}" = "X" -a "X${enable_parallel}" = "Xyes"; then
- echo ' shared libraries disabled in parallel'
- enable_shared="no"
-elif test "X${enable_shared}" = "Xyes" -a "X${enable_parallel}" = "Xyes"; then
- echo ' shared libraries explicitly enabled by user'
-elif test "X${enable_shared}" = "X" -a "X${PARALLEL}" != "X"; then
- echo ' shared libraries disabled when a parallel compiler is being used'
- enable_shared="no"
-elif test "X${enable_shared}" = "Xyes" -a "X${PARALLEL}" != "X"; then
- echo ' shared libraries explicitly enabled by user'
-fi
-
-## ----------------------------------------------------------------------
## Fortran libraries are not currently supported on Mac. Disable them.
## (this is overridable with --enable-unsupported).
##
@@ -1288,16 +997,6 @@ dnl AC_CHECK_LIB([coug], [main]) ## ...for ASCI/Red
AC_HEADER_STDC
AC_HEADER_TIME
-## ----------------------------------------------------------------------
-## Check for these two functions before the time headers are checked
-## for, otherwise they are not detected correctly on Solaris (the
-## configure test will fail due to multiply-defined symbols).
-##
-AC_CHECK_FUNCS([difftime])
-AC_CHECK_FUNCS([gettimeofday], [have_gettime="yes"], [have_gettime="no"])
-AC_SEARCH_LIBS([clock_gettime], [rt posix4])
-AC_CHECK_FUNCS([clock_gettime],[have_clock_gettime="yes"],[have_clock_gettime="no"])
-
## Unix
AC_CHECK_HEADERS([sys/resource.h sys/time.h unistd.h sys/ioctl.h sys/stat.h])
AC_CHECK_HEADERS([sys/socket.h sys/types.h])
@@ -1368,96 +1067,25 @@ if test "X${enable_shared}" = "Xyes"; then
fi
## ----------------------------------------------------------------------
-## Test for Largefile support.
-##
-AC_MSG_CHECKING([if configure should try to set up large file support])
+## Use the macro _AC_SYS_LARGEFILE_MACRO_VALUE to test defines
+## that might need to be set for largefile support to behave
+## correctly. This macro is defined in acsite.m4 and overrides
+## the version provided by Autoconf (as of v2.65). The custom
+## macro additionally adds the appropriate defines to AM_CPPFLAGS
+## so that later configure checks have them visible.
-AC_ARG_ENABLE([largefile],
- [AS_HELP_STRING([--disable-largefile],
- [omit support for large files])])
-
-## If largefile support is enabled, then set up appropriate compiler options.
-if test "$enable_largefile" != no; then
- AC_MSG_RESULT([yes])
+## Check for _FILE_OFFSET_BITS
+_AC_SYS_LARGEFILE_MACRO_VALUE([_FILE_OFFSET_BITS], [64],
+ [ac_cv_sys_file_offset_bits],
+ [Number of bits in a file offset, on hosts where this is settable.],
+ [_AC_SYS_LARGEFILE_TEST_INCLUDES])
- ## Check for needed compiler options. This check is pulled drectly
- ## from autoconf's AC_SYS_LARGEFILE macro, as of Autoconf v2.65.
- AC_CACHE_CHECK([for special C compiler options needed for large files],
- ac_cv_sys_largefile_CC,
- [ac_cv_sys_largefile_CC=no
- if test "$GCC" != yes; then
- ac_save_CC=$CC
- while :; do
- ## IRIX 6.2 and later do not support large files by default,
- ## so use the C compiler's -n32 option if that helps.
- AC_LANG_CONFTEST([AC_LANG_PROGRAM([_AC_SYS_LARGEFILE_TEST_INCLUDES])])
- AC_COMPILE_IFELSE([], [break])
- CC="$CC -n32"
- AC_COMPILE_IFELSE([], [ac_cv_sys_largefile_CC=' -n32'; break])
- break
- done
- CC=$ac_save_CC
- rm -f conftest.$ac_ext
- fi])
- if test "$ac_cv_sys_largefile_CC" != no; then
- CC=$CC$ac_cv_sys_largefile_CC
- fi
-
- ## Use the macro _AC_SYS_LARGEFILE_MACRO_VALUE to test defines
- ## that might need to be set for largefile support to behave
- ## correctly. This macro is defined in acsite.m4 and overrides
- ## the version provided by Autoconf (as of v2.65). The custom
- ## macro additionally adds the appropriate defines to AM_CPPFLAGS
- ## so that later configure checks have them visible.
-
- ## Check for _FILE_OFFSET_BITS
- _AC_SYS_LARGEFILE_MACRO_VALUE([_FILE_OFFSET_BITS], [64],
- [ac_cv_sys_file_offset_bits],
- [Number of bits in a file offset, on hosts where this is settable.],
+## Check for _LARGE_FILES
+if test "$ac_cv_sys_file_offset_bits" = unknown; then
+ _AC_SYS_LARGEFILE_MACRO_VALUE([_LARGE_FILES], [1],
+ [ac_cv_sys_large_files],
+ [Define for large files, on AIX-style hosts.],
[_AC_SYS_LARGEFILE_TEST_INCLUDES])
-
- ## Check for _LARGE_FILES
- if test "$ac_cv_sys_file_offset_bits" = unknown; then
- _AC_SYS_LARGEFILE_MACRO_VALUE([_LARGE_FILES], [1],
- [ac_cv_sys_large_files],
- [Define for large files, on AIX-style hosts.],
- [_AC_SYS_LARGEFILE_TEST_INCLUDES])
- fi
-
- ## Now actually test to see if we can create large files after we've
- ## checked for any needed defines.
- AC_MSG_CHECKING([if large (64-bit) files are supported on this system.])
- AC_CACHE_VAL([hdf5_cv_have_lfs],
- [AC_TRY_RUN([
- #include <stdio.h>
- #include <unistd.h>
- #include <stdlib.h>
- #include <fcntl.h>
- #define BIG_FILE (off_t)0x80000000UL
- int main(void) {
- int fd;
- if ((fd=open("test.conf", O_RDWR|O_TRUNC|O_CREAT, 0666)) < 0) exit(1);
- if (lseek(fd, BIG_FILE, SEEK_SET)!=BIG_FILE) exit(1);
- if (5!=write(fd, "hello", (size_t)5)) exit(1);
- if (lseek(fd, 2*BIG_FILE, SEEK_SET) != 2*BIG_FILE) exit(1);
- if (5!=write(fd, "hello", (size_t)5)) exit(1);
- if (unlink("test.conf") < 0) exit(1);
- exit(0);
- }
- ],[hdf5_cv_have_lfs=yes],[hdf5_cv_have_lfs=no],)])
-
- if test "X${hdf5_cv_have_lfs}" = "Xyes"; then
- AC_MSG_RESULT([yes])
- LARGEFILE="yes"
- fi
- if test "X${hdf5_cv_have_lfs}" = "Xno"; then
- AC_MSG_RESULT([no])
- LARGEFILE="no"
- fi
-
-else
- LARGEFILE="no"
- AC_MSG_RESULT([no])
fi
## ----------------------------------------------------------------------
@@ -1465,28 +1093,35 @@ fi
##
case "$host_cpu-$host_vendor-$host_os" in
*linux*)
- ## If largefile support is enabled, then make available various
- ## LFS-related routines using the following _LARGEFILE*_SOURCE macros.
- if test "X$LARGEFILE" != "Xno"; then
- AM_CPPFLAGS="-D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE $AM_CPPFLAGS"
- fi
+ ## Make available various LFS-related routines using the following
+ ## _LARGEFILE*_SOURCE macros.
+ AM_CPPFLAGS="-D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE $AM_CPPFLAGS"
## Add POSIX support on Linux systems, so <features.h> defines
## __USE_POSIX, which is required to get the prototype for fdopen
## defined correctly in <stdio.h>.
+ ##
## This flag was removed from h5cc as of 2009-10-17 when it was found
## that the flag broke compiling netCDF-4 code with h5cc, but kept in
## H5_CPPFLAGS because fdopen and HDfdopen fail without it. HDfdopen
## is used only by H5_debug_mask which is used only when debugging in
## H5_init_library (all in H5.c). When the flag was removed this was
## the only compile failure noted.
+ ##
## This was originally defined as _POSIX_SOURCE which was updated to
## _POSIX_C_SOURCE=199506L to expose a greater amount of POSIX
## functionality so clock_gettime and CLOCK_MONOTONIC are defined
- ## correctly.
+ ## correctly. This was later updated to 200112L so that
+ ## posix_memalign() is visible for the direct VFD code on Linux
+ ## systems.
+ ##
## POSIX feature information can be found in the gcc manual at:
## http://www.gnu.org/s/libc/manual/html_node/Feature-Test-Macros.html
- H5_CPPFLAGS="-D_POSIX_C_SOURCE=199506L $H5_CPPFLAGS"
+ H5_CPPFLAGS="-D_POSIX_C_SOURCE=200112L $H5_CPPFLAGS"
+
+ ## Need to add this so that O_DIRECT is visible for the direct
+ ## VFD on Linux systems.
+ AM_CPPFLAGS="-D_GNU_SOURCE $AM_CPPFLAGS"
## Also add BSD support on Linux systems, so <features.h> defines
## __USE_BSD, which is required to get the prototype for strdup
@@ -2096,16 +1731,6 @@ AC_TRY_COMPILE([
AC_MSG_RESULT([yes])],
[AC_MSG_RESULT([no])])
-## check if `struct tm' has a `__tm_gmtoff' member.
-AC_MSG_CHECKING([for __tm_gmtoff in struct tm])
-AC_TRY_COMPILE([
- #include <sys/time.h>
- #include <time.h>], [struct tm tm; tm.__tm_gmtoff=0;],
- [AC_DEFINE([HAVE___TM_GMTOFF], [1],
- [Define if `__tm_gmtoff' is a member of `struct tm'])
- AC_MSG_RESULT([yes])],
- [AC_MSG_RESULT([no])])
-
## Check whether the global variable `timezone' is defined.
AC_MSG_CHECKING([for global timezone variable])
@@ -2124,50 +1749,6 @@ case "`uname`" in
;;
esac
-## Check whether `struct timezone' is defined.
-AC_STRUCT_TIMEZONE
-AC_MSG_CHECKING([for struct timezone])
-AC_TRY_COMPILE([
- #include <sys/types.h>
- #include <sys/time.h>
- #include <time.h>], [struct timezone tz; tz.tz_minuteswest=0;],
- [AC_DEFINE([HAVE_STRUCT_TIMEZONE], [1],
- [Define if `struct timezone' is defined])
- have_struct_tz="yes"
- AC_MSG_RESULT([yes])],
- [AC_MSG_RESULT([no])])
-
-## If gettimeofday() is going to be used, make sure it uses the timezone struct
-
-if test "$have_gettime" = "yes" -a "$have_struct_tz" = "yes"; then
- AC_MSG_CHECKING(whether gettimeofday() gives timezone)
- AC_CACHE_VAL([hdf5_cv_gettimeofday_tz],
- [AC_TRY_RUN([
- #include <time.h>
- #include <sys/time.h>
- int main(void)
- {
- struct timeval tv;
- struct timezone tz;
- tz.tz_minuteswest = 7777; /* Initialize to an unreasonable number */
- tz.tz_dsttime = 7;
- gettimeofday(&tv, &tz);
- /* Check whether the function returned any value at all */
- if(tz.tz_minuteswest == 7777 && tz.tz_dsttime == 7)
- exit(1);
- else exit (0);
- }],
- [hdf5_cv_gettimeofday_tz=yes],
- [hdf5_cv_gettimeofday_tz=no])])
-
- if test ${hdf5_cv_gettimeofday_tz} = "yes"; then
- AC_MSG_RESULT([yes])
- AC_DEFINE([GETTIMEOFDAY_GIVES_TZ], [1],
- [Define if gettimeofday() populates the tz pointer passed in])
- else
- AC_MSG_RESULT([no])
- fi
-fi
## ----------------------------------------------------------------------
## Does the struct stat have the st_blocks field? This field is not Posix.
@@ -2225,9 +1806,12 @@ AC_TRY_COMPILE([#include <sys/ioctl.h>],[int w=TIOCGETD;],
## ----------------------------------------------------------------------
## Check for functions.
##
-AC_CHECK_FUNCS([alarm BSDgettimeofday fork frexpf frexpl])
-AC_CHECK_FUNCS([gethostname getpwuid getrusage lstat])
-AC_CHECK_FUNCS([rand_r random setsysinfo])
+## NOTE: clock_gettime may require linking to the rt or posix4 library
+## so we'll search for it before calling AC_CHECK_FUNCS.
+AC_SEARCH_LIBS([clock_gettime], [rt posix4])
+AC_CHECK_FUNCS([alarm clock_gettime difftime fork frexpf frexpl])
+AC_CHECK_FUNCS([gethostname getpwuid getrusage gettimeofday])
+AC_CHECK_FUNCS([lstat rand_r random setsysinfo])
AC_CHECK_FUNCS([signal longjmp setjmp siglongjmp sigsetjmp sigprocmask])
AC_CHECK_FUNCS([snprintf srandom strdup symlink system])
AC_CHECK_FUNCS([tmpfile asprintf vasprintf waitpid])
@@ -2638,10 +2222,7 @@ AC_CACHE_SAVE
## What header files and libraries do we have to look for for parallel
## support? For the most part, search paths are already specified with
-## CPPFLAGS and LDFLAGS or are known to the compiler. If the user says
-## `--disable-parallel' but specifies a known parallel compiler (like mpicc
-## or mpcc) then parallel support is enabled but configure doesn't search
-## for any parallel header files or libraries.
+## CPPFLAGS and LDFLAGS or are known to the compiler.
##
AC_ARG_ENABLE([parallel],
[AS_HELP_STRING([--enable-parallel],
@@ -2664,25 +2245,10 @@ if test "X${ALLOW_UNSUPPORTED}" != "Xyes"; then
fi
fi
-## It's possible to build in parallel by specifying a parallel compiler
-## without using the --enable-parallel flag. This isn't allowed with
-## C++ or threadsafe, either, unless the --enable-unsupported flag
-## has also been specified.
-if test "X${ALLOW_UNSUPPORTED}" != "Xyes"; then
- if test "X${PARALLEL}" != "X" -a "X${enable_cxx}" = "Xyes" ; then
- AC_MSG_ERROR([An MPI compiler is being used; --enable-cxx is not allowed. Use --enable-unsupported to override this error.])
- fi
- if test "X${PARALLEL}" != "X" -a "X${THREADSAFE}" = "Xyes"; then
- AC_MSG_ERROR([An MPI compiler is being used; --enable-threadsafe is not allowed. Use --enable-unsupported to override this error.])
- fi
-fi
-
AC_MSG_CHECKING([for parallel support files])
case "X-$enable_parallel" in
X-|X-no|X-none)
- ## Either we are not compiling for parallel or the header and
- ## library files and locations are known to the compiler (this is
- ## the case for a correct installation of mpicc for instance).
+ ## We are not compiling for parallel.
AC_MSG_RESULT([skipped])
;;
@@ -2692,59 +2258,17 @@ case "X-$enable_parallel" in
AC_MSG_RESULT([provided by compiler])
PARALLEL=yes
- ## Try link a simple MPI program. If fail, try again with -lmpi and
- ## -lmpich.
- AC_TRY_LINK(, [MPI_Init()],,
- [AC_CHECK_LIB([mpi], [MPI_Init],,
- [AC_CHECK_LIB([mpich], [MPI_Init],, [PARALLEL=no])])])
-
- ## Then try link a simple MPI-IO program. If fail, try again with
- ## -lmpio.
- if test "X$PARALLEL" = "Xyes"; then
- AC_TRY_LINK(, [MPI_File_open()],,
- [AC_CHECK_LIB([mpio], [MPI_File_open],, [PARALLEL=no])])
- fi
+ ## Try link a simple MPI program.
+ AC_MSG_CHECKING([whether a simple MPI-IO C program can be linked])
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <mpi.h>]],
+ [[ MPI_Init(0, (void *)0);
+ MPI_File_open(0, (void *)0, 0, 0, (void *)0);]])],
+ [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])
+ AC_MSG_ERROR([unable to link a simple MPI-IO C program])])
if test "X$HDF_FORTRAN" = "Xyes"; then
- ## Change to the Fortran 90 language
- AC_LANG_PUSH(Fortran)
-
- ## Try link a simple MPI program. If fail, try again with -lmpi.
- AC_LINK_IFELSE([
- program main
- include 'mpif.h'
- integer:: ierr
- call mpi_file_open( ierr )
- end],,
- [AC_CHECK_LIB([mpi], [mpi_file_open],, [PARALLEL=no])])
-
- ## Then try link a simple MPI-IO program. If fail, try again with
- ## -lmpio.
- if test "X$PARALLEL" = "Xyes"; then
- AC_LINK_IFELSE([
- program main
- include 'mpif.h'
- integer:: ierr
- call mpi_file_open( ierr )
- end],,
- [AC_CHECK_LIB([mpio], [mpi_file_open],, [PARALLEL=no])])
- fi
-
- ## Change to the C language
- AC_LANG_POP(Fortran)
- fi
-
- ## Set RUNPARALLEL to mpiexec if not set yet.
- ## Check for building on Cray if RUNPARALLEL is not yet set by checking
- ## for 'aprun' command (which is the parallel job launcher, like mpiexec).
- if test "X$PARALLEL" = "Xyes" -a -z "$RUNPARALLEL"; then
- ## Find the path where aprun is located.
- for path in `echo $PATH | ${TR} ":" " "`; do
- if test -x $path/aprun; then
- RUNPARALLEL="aprun -q -n \$\${NPROCS:=6}"
- break;
- fi
- done
+ PAC_PROG_FC_MPI_CHECK
fi
## Set RUNPARALLEL to mpiexec if not set yet.
@@ -2777,13 +2301,6 @@ if test -n "$PARALLEL"; then
AC_MSG_CHECKING([prefix for running in parallel])
AC_MSG_RESULT([$RUNPARALLEL])
- ## Check that we can link a simple MPI and MPI-IO application
- AC_MSG_CHECKING([whether a simple MPI-IO program can be linked])
- AC_TRY_LINK(, [MPI_Init(); MPI_File_open();],
- [AC_MSG_RESULT([yes])],
- [AC_MSG_RESULT([no])
- AC_MSG_ERROR([unable to link a simple MPI-IO application])])
-
## There *must* be some way to run in parallel even if it's just the
## word `none'.
if test -z "$RUNPARALLEL"; then
@@ -2791,7 +2308,8 @@ if test -n "$PARALLEL"; then
fi
## If RUNSERIAL or RUNPARALLEL is the word `none' then replace it with
- ## the empty string.
+ ## the empty string. This means that no launch commands were requested,
+ ## so we will not use any launch commands.
if test "X$RUNSERIAL" = "Xnone"; then
RUNSERIAL=""
fi
@@ -2842,7 +2360,6 @@ if test -n "$PARALLEL"; then
X-yes)
AC_CHECK_HEADERS([mpe.h],, [unset MPE])
AC_CHECK_LIB([mpe], [MPE_Init_log],, [unset MPE])
- AC_CHECK_LIB([lmpe], [MPE_Init_mpi_io],, [unset MPE])
;;
*)
case "$withval" in
@@ -2884,12 +2401,8 @@ if test -n "$PARALLEL"; then
AM_LDFLAGS="$AM_LDFLAGS -L$mpe_lib"
AC_CHECK_LIB([mpe], [MPE_Init_log],,
[LDFLAGS="$saved_LDFLAGS"; AM_LDFLAGS="$saved_AM_LDFLAGS"; unset MPE])
- AC_CHECK_LIB([lmpe], [MPE_Init_mpi_io],,
- [LDFLAGS="$saved_LDFLAGS"; AM_LDFLAGS="$saved_AM_LDFLAGS"; unset MPE])
-
else
AC_CHECK_LIB([mpe], [MPE_Init_log],, [unset MPE])
- AC_CHECK_LIB([lmpe], [MPE_Init_mpi_io],, [unset MPE])
fi
;;
esac
@@ -2899,6 +2412,7 @@ if test -n "$PARALLEL"; then
fi
fi
+
## ----------------------------------------------------------------------
## Turn on internal I/O filters by setting macros in header files
## Internal I/O filters are contained entirely within the library and do
@@ -2966,82 +2480,44 @@ if test -n "$FILTERS"; then
done
fi
-## ----------------------------------------------------------------------
-## This is defined only when we're using CodeWarrior, since it has a
-## broken "open()" call.
-#
-if test 1 = 2; then
- AC_DEFINE([NO_SHARED_WRITING], [1],
- [Define if shared writing must be disabled (CodeWarrior only)])
-fi
-
-## --------------------------------------------------------------------------
-## Should the Default Virtual File Driver be compiled?
-##
-
-AC_MSG_CHECKING([for Default Virtual File Driver definition])
-AC_ARG_WITH([default-vfd],
- [AS_HELP_STRING([--with-default-vfd=driver],
- [Specify default file driver
- [default=sec2]])],,
- withval=sec2)
-
-if test "X$withval" = "Xsec2"; then
- AC_MSG_RESULT([yes])
- default_vfd=yes
- vfd_define=H5FD_SEC2
-elif test "X$withval" = "Xstdio"; then
- AC_MSG_RESULT([yes])
- default_vfd=yes
- vfd_define=H5FD_STDIO
-else
- AC_MSG_RESULT([no])
- default_vfd=no
-fi
-
-if test "X$default_vfd" = "Xyes"; then
- AC_DEFINE_UNQUOTED([DEFAULT_VFD], [$vfd_define],
- [Define the default virtual file driver to compile])
-fi
## ----------------------------------------------------------------------
## Check if Direct I/O driver is enabled by --enable-direct-vfd
##
-AC_MSG_CHECKING([for Direct Virtual File Driver support])
+## Check these regardless. If the checks are moved inside the main
+## direct VFD block, the output is nested.
+
+AC_CACHE_VAL([hdf5_cv_direct_io],
+ AC_CHECK_DECL([O_DIRECT], [hdf5_cv_direct_io=yes], [hdf5_cv_direct_io=no], [[#include <fcntl.h>]]))
+AC_CACHE_VAL([hdf5_cv_posix_memalign],
+ AC_CHECK_FUNC([posix_memalign], [hdf5_cv_posix_memalign=yes], [hdf5_cv_posix_memalign=no]))
+
+AC_MSG_CHECKING([if the direct I/O virtual file driver (VFD) is enabled])
AC_ARG_ENABLE([direct-vfd],
[AS_HELP_STRING([--enable-direct-vfd],
- [Build the Direct I/O Virtual File Driver
- [default=yes]])],
- [DIRECT_VFD=$enableval], [DIRECT_VFD=yes])
-
-if test "$DIRECT_VFD" = "yes"; then
- AC_CACHE_VAL([hdf5_cv_direct_io],
- [AC_TRY_RUN([
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <fcntl.h>
- int main(void)
- {
- int fid;
- if((fid=open("tst_file", O_CREAT | O_TRUNC | O_DIRECT, 0755))<0)
- exit(1);
- close(fid);
- remove("tst_file");
- exit (0);
- }], [AC_TRY_LINK(, [posix_memalign()], [hdf5_cv_direct_io=yes], [hdf5_cv_direct_io=no])], [hdf5_cv_direct_io=no],)])
-
- if test ${hdf5_cv_direct_io} = "yes"; then
- AC_MSG_RESULT([yes])
- AC_DEFINE([HAVE_DIRECT], [1],
- [Define if the direct I/O virtual file driver should be compiled])
- else
- AC_MSG_RESULT([no])
- DIRECT_VFD=no
- fi
+ [Build the direct I/O virtual file driver (VFD).
+ This is based on the POSIX (sec2) VFD and
+ requires the open() call to take the O_DIRECT
+ flag. [default=no]])],
+ [DIRECT_VFD=$enableval], [DIRECT_VFD=no])
+
+if test "X$DIRECT_VFD" = "Xyes"; then
+ if test ${hdf5_cv_direct_io} = "yes" && test ${hdf5_cv_posix_memalign} = "yes" ; then
+ AC_MSG_RESULT([yes])
+ AC_DEFINE([HAVE_DIRECT], [1],
+ [Define if the direct I/O virtual file driver (VFD) should be compiled])
+ else
+ AC_MSG_RESULT([no])
+ DIRECT_VFD=no
+ AC_MSG_ERROR([The direct VFD was requested but cannot be built. This is either
+ due to O_DIRECT not being found in fcntl.h or a lack of
+ posix_memalign() on your system. Please re-configure without
+ specifying --enable-direct-vfd.])
+ fi
else
- AC_MSG_RESULT([suppressed])
+ AC_MSG_RESULT([no])
fi
AM_CONDITIONAL([DIRECT_VFD_CONDITIONAL], [test "X$DIRECT_VFD" = "Xyes"])
@@ -4136,35 +3612,6 @@ if test -n "$AM_CPPFLAGS"; then
AM_CPPFLAGS=$TEMP_CPPFLAGS
fi
-## ----------------------------------------------------------------------
-## Check if they would like the High Level library compiled
-##
-
-AC_SUBST(HL) HL=""
-## name of fortran folder inside "hl", if FORTRAN compile is requested
-AC_SUBST(HL_FOR) HL_FOR=""
-AC_MSG_CHECKING([if high level library is enabled])
-AC_ARG_ENABLE([hl],
- [AS_HELP_STRING([--enable-hl],
- [Enable the high level library [default=yes]])],
- [HDF5_HL=$enableval],
- [HDF5_HL=yes])
-
-if test "X$HDF5_HL" = "Xyes"; then
- echo "yes"
- HL="hl"
- AC_DEFINE([INCLUDE_HL], [1],
- [Define if HDF5's high-level library headers should be included in hdf5.h])
-
-## Check if Fortran's default real is double precision. If it is and HL is being built then configure
-## should fail due to bug HDFFV-889.
- if test "X$FORTRAN_DEFAULT_REALisDBLE" = "Xyes"; then
- AC_MSG_ERROR([Fortran high-level routines are not supported when the default REAL is DOUBLE PRECISION, use configure option --disable-hl.])
- fi
-else
- echo "no"
-fi
-
## ----------------------------------------------------------------------
## Some programs shouldn't be built by default (e.g., programs to generate
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 4cd72a0..da8174b 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_EXAMPLES)
#-----------------------------------------------------------------------------
diff --git a/examples/Makefile.in b/examples/Makefile.in
index c4b8e3f..b54a6cc 100644
--- a/examples/Makefile.in
+++ b/examples/Makefile.in
@@ -107,7 +107,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS = $(TEST_SCRIPT)
subdir = examples
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -436,7 +437,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/fortran/CMakeLists.txt b/fortran/CMakeLists.txt
index 3fe9e7d..c725047 100644
--- a/fortran/CMakeLists.txt
+++ b/fortran/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_F90 C CXX Fortran)
if (H5_HAVE_PARALLEL)
diff --git a/fortran/Makefile.in b/fortran/Makefile.in
index 4d8abdc..2d0e0b7 100644
--- a/fortran/Makefile.in
+++ b/fortran/Makefile.in
@@ -105,7 +105,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = fortran
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -492,7 +493,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/fortran/examples/CMakeLists.txt b/fortran/examples/CMakeLists.txt
index 322ae35..1f59f32 100644
--- a/fortran/examples/CMakeLists.txt
+++ b/fortran/examples/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_F90_EXAMPLES C CXX Fortran)
# --------------------------------------------------------------------
# Notes: When creating examples they should be prefixed
diff --git a/fortran/examples/Makefile.in b/fortran/examples/Makefile.in
index b9b5efb..c468739 100644
--- a/fortran/examples/Makefile.in
+++ b/fortran/examples/Makefile.in
@@ -115,7 +115,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS = $(TEST_SCRIPT)
subdir = fortran/examples
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -444,7 +445,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt
index 5b641d1..22a091e 100644
--- a/fortran/src/CMakeLists.txt
+++ b/fortran/src/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_F90_SRC C CXX Fortran)
#-----------------------------------------------------------------------------
@@ -11,6 +11,8 @@ if (WIN32)
endif (NOT H5_HAVE_PARALLEL)
if (NOT HDF5_ENABLE_F2003)
set (H5_NOF03EXP ";")
+ else (NOT HDF5_ENABLE_F2003)
+ set (H5_F03EXP ";")
endif (NOT HDF5_ENABLE_F2003)
configure_file (${HDF5_F90_SRC_SOURCE_DIR}/hdf5_fortrandll.def.in ${HDF5_F90_SRC_BINARY_DIR}/hdf5_fortrandll.def @ONLY)
endif (MSVC)
@@ -132,7 +134,6 @@ if (H5_HAVE_PARALLEL)
${HDF5_F90_SRC_SOURCE_DIR}/H5FDmpiof.c
)
endif (H5_HAVE_PARALLEL)
-
set_source_files_properties (${f90CStub_C_SRCS} PROPERTIES LANGUAGE C)
set (f90CStub_C_HDRS
@@ -224,6 +225,7 @@ else (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND)
${HDF5_F90_SRC_SOURCE_DIR}/HDF5.f90
)
endif (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND)
+set_source_files_properties (${f90_F_SRCS} PROPERTIES LANGUAGE Fortran)
#-----------------------------------------------------------------------------
# Add Main fortran library
@@ -255,6 +257,7 @@ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF
H5_SET_LIB_OPTIONS (${HDF5_F90_LIB_TARGET} ${HDF5_F90_LIB_NAME} ${LIB_TYPE})
set_target_properties (${HDF5_F90_LIB_TARGET} PROPERTIES
FOLDER libraries/fortran
+ LINKER_LANGUAGE Fortran
INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
diff --git a/fortran/src/H5Off_F03.f90 b/fortran/src/H5Off_F03.f90
index e6b87ea..36b6246 100644
--- a/fortran/src/H5Off_F03.f90
+++ b/fortran/src/H5Off_F03.f90
@@ -40,11 +40,6 @@ MODULE H5O_PROVISIONAL
IMPLICIT NONE
- enum, bind(c)
- enumerator :: H5O_TYPE_UNKNOWN_F = -1
- enumerator :: H5O_TYPE_GROUP_F, H5O_TYPE_DATASET_F, H5O_TYPE_NAMED_DATATYPE_F, H5O_TYPE_NTYPES_F
- end enum
-
!****t* H5T (F03)/h5o_info_t
!
! Fortran2003 Derived Type:
diff --git a/fortran/src/H5Tf.c b/fortran/src/H5Tf.c
index ca9c30f..878119f 100644
--- a/fortran/src/H5Tf.c
+++ b/fortran/src/H5Tf.c
@@ -1738,21 +1738,23 @@ nh5tenum_create_c ( hid_t_f *parent_id , hid_t_f *new_type_id)
/****if* H5Tf/h5tenum_insert_c
* NAME
- * h5tenum_insert_c
+ * h5tenum_insert_c
* PURPOSE
- * Call H5Tenum_insert to insert a new enumeration datatype member.
+ * Call H5Tenum_insert to insert a new enumeration datatype member.
* INPUTS
- * type_id - identifier of the datatype
- * name - Name of the new member
- * namelen - length of the name
- * value - value of the new member
+ * type_id - identifier of the datatype
+ * name - Name of the new member
+ * namelen - length of the name
+ * value - value of the new member
* RETURNS
- * 0 on success, -1 on failure
+ * 0 on success, -1 on failure
* AUTHOR
* XIANGYANG SU
- * Thursday, February 3, 2000
+ * Thursday, February 3, 2000
* HISTORY
- *
+ * 'value' is no longer cast into an int. If the user passes in an 8 byte integer then
+ * it should not be cast to an int (which might be 4 bytes). Instead the value
+ * is written as the size of an int_f.
* SOURCE
*/
@@ -1761,19 +1763,18 @@ nh5tenum_insert_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value)
/******/
{
int ret_value = -1;
- hid_t c_type_id;
char* c_name;
size_t c_namelen;
- int_f c_value;
herr_t error;
+ int_f c_value;
c_namelen = *namelen;
c_name = (char *)HD5f2cstring(name, c_namelen);
if (c_name == NULL) return ret_value;
- c_type_id = (hid_t)*type_id;
- c_value = (int)*value;
- error = H5Tenum_insert(c_type_id, c_name, &c_value);
+ c_value = *value;
+ error = H5Tenum_insert((hid_t)*type_id, c_name, &c_value);
+
HDfree(c_name);
if(error < 0) return ret_value;
@@ -2421,3 +2422,46 @@ h5tconvert_c(hid_t_f *src_id, hid_t_f *dst_id, size_t_f *nelmts, void *buf, void
return ret_value;
}
+/****if* H5Tf/h5tenum_insert_ptr_c
+ * NAME
+ * /h5tenum_insert_ptr_c
+ * PURPOSE
+ * Calls H5Tenum_insert
+ * INPUTS
+ * type_id - Datatype identifier for the enumeration datatype.
+ * name - Datatype identifier.
+ * value - Pointer to the value of the new member.
+ *
+ * OUTPUTS
+ *
+ * RETURNS
+ * 0 on success, -1 on failure
+ * AUTHOR
+ * M. Scot Breitenfeld
+ * February 6, 2015
+ *
+ * SOURCE
+*/
+int_f
+h5tenum_insert_ptr_c(hid_t_f *type_id, _fcd name, int_f* namelen, void *value)
+/******/
+{
+ int ret_value = -1;
+ hid_t status;
+ char *c_name;
+ size_t c_namelen;
+
+ /*
+ * Convert FORTRAN name to C name
+ */
+ c_namelen = *namelen;
+ c_name = (char *)HD5f2cstring(name, c_namelen);
+ if (c_name == NULL) return ret_value;
+
+ status = H5Tenum_insert( (hid_t)*type_id, c_name, value);
+ if ( status < 0 ) return ret_value;
+ ret_value = 0;
+ return ret_value;
+}
+
+
diff --git a/fortran/src/H5Tff.f90 b/fortran/src/H5Tff.f90
index 0e1dbb0..4b4c0b6 100644
--- a/fortran/src/H5Tff.f90
+++ b/fortran/src/H5Tff.f90
@@ -2335,57 +2335,6 @@ CONTAINS
hdferr = h5tenum_create_c(parent_id, new_type_id)
END SUBROUTINE h5tenum_create_f
-
-!
-!****s* H5T/h5tenaum_insert_f
-!
-! NAME
-! h5tenaum_insert_f
-!
-! PURPOSE
-! Inserts a new enumeration datatype member.
-!
-! INPUTS
-! type_id - datatype identifier
-! OUTPUTS
-! hdferr - Returns 0 if successful and -1 if fails
-!
-! AUTHOR
-! Elena Pourmal
-! August 12, 1999
-!
-! HISTORY
-! Explicit Fortran interfaces were added for
-! called C functions (it is needed for Windows
-! port). March 7, 2001
-! SOURCE
- SUBROUTINE h5tenum_insert_f(type_id, name, value, hdferr)
- IMPLICIT NONE
- INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
- CHARACTER(LEN=*), INTENT(IN) :: name !Name of the new member
- INTEGER, INTENT(IN) :: value !value of the new member
- INTEGER, INTENT(OUT) :: hdferr ! Error code
-!*****
- INTEGER :: namelen
-
- INTERFACE
- INTEGER FUNCTION h5tenum_insert_c(type_id, name, namelen, value)
- USE H5GLOBAL
- !DEC$IF DEFINED(HDF5F90_WINDOWS)
- !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_INSERT_C'::h5tenum_insert_c
- !DEC$ENDIF
- !DEC$ATTRIBUTES reference :: name
- INTEGER(HID_T), INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER, INTENT(IN) :: value
- INTEGER :: namelen
- END FUNCTION h5tenum_insert_c
- END INTERFACE
-
- namelen = LEN(name)
- hdferr = h5tenum_insert_c(type_id, name, namelen, value)
- END SUBROUTINE h5tenum_insert_f
-
!
!****s* H5T/h5tenum_nameof_f
!
diff --git a/fortran/src/H5Tff_F03.f90 b/fortran/src/H5Tff_F03.f90
index 2405837..2c9f212 100644
--- a/fortran/src/H5Tff_F03.f90
+++ b/fortran/src/H5Tff_F03.f90
@@ -47,6 +47,11 @@ MODULE H5T_PROVISIONAL
!*****
+ INTERFACE h5tenum_insert_f
+ MODULE PROCEDURE h5tenum_insert_f03
+ MODULE PROCEDURE h5tenum_insert_f90
+ END INTERFACE
+
CONTAINS
!****s* H5T (F03)/H5Tconvert_f_F03
@@ -93,6 +98,7 @@ CONTAINS
BIND(C, NAME='h5tconvert_c')
USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr
USE H5GLOBAL
+ IMPLICIT NONE
INTEGER(HID_T) , INTENT(IN) :: src_id
INTEGER(HID_T) , INTENT(IN) :: dst_id
INTEGER(SIZE_T), INTENT(IN) :: nelmts
@@ -111,6 +117,107 @@ CONTAINS
hdferr = H5Tconvert_c(src_id, dst_id, nelmts, buf, background_default, plist_id_default)
END SUBROUTINE h5tconvert_f
+!
+!****s* (F03) H5T/h5tenum_insert_f90
+!
+! NAME
+! h5tenum_insert_f
+!
+! PURPOSE
+! Inserts a new enumeration datatype member.
+!
+! INPUTS
+! type_id - Datatype identifier for the enumeration datatype.
+! name - Datatype identifier.
+! value - Value of the new member.
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tenum_insert_f90(type_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id ! Datatype identifier
+ CHARACTER(LEN=*), INTENT(IN) :: name !Name of the new member
+ INTEGER, INTENT(IN) :: value ! value of the new member
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+!*****
+ INTEGER :: namelen
+ INTERFACE
+ INTEGER FUNCTION h5tenum_insert_c(type_id, name, namelen, value)
+ USE H5GLOBAL
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_INSERT_C'::h5tenum_insert_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: name
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: value
+ INTEGER :: namelen
+ END FUNCTION h5tenum_insert_c
+ END INTERFACE
+
+ namelen = LEN(name)
+ hdferr = h5tenum_insert_c(type_id, name, namelen, value)
+ END SUBROUTINE h5tenum_insert_f90
+
+!
+!****s* (F03) H5T/h5tenum_insert_f03
+!
+! NAME
+! h5tenum_insert_f
+!
+! PURPOSE
+! Inserts a new enumeration datatype member.
+!
+! INPUTS
+! type_id - Datatype identifier for the enumeration datatype.
+! name - Datatype identifier.
+! value - Pointer to the value of the new member.
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! M. Scot Breitenfeld
+! February 6, 2015
+!
+! HISTORY
+! F2003 implementation of function
+! SOURCE
+ SUBROUTINE h5tenum_insert_f03(type_id, name, value, hdferr)
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr, c_char
+ USE H5GLOBAL
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ TYPE(C_PTR) , INTENT(IN) :: value
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: namelen
+
+ INTERFACE
+ INTEGER FUNCTION h5tenum_insert_ptr_c(type_id, name, namelen, value) &
+ BIND(C, NAME='h5tenum_insert_ptr_c')
+ USE, INTRINSIC :: ISO_C_BINDING, ONLY : c_ptr, c_char
+ USE H5GLOBAL
+ IMPLICIT NONE
+ INTEGER(HID_T) , INTENT(IN) :: type_id
+ CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name
+ INTEGER :: namelen
+ TYPE(C_PTR), VALUE :: value
+ END FUNCTION h5tenum_insert_ptr_c
+ END INTERFACE
+
+ namelen = LEN(name)
+ hdferr = h5tenum_insert_ptr_c(type_id, name, namelen, value)
+ END SUBROUTINE h5tenum_insert_f03
END MODULE H5T_PROVISIONAL
diff --git a/fortran/src/H5Tff_F90.f90 b/fortran/src/H5Tff_F90.f90
index a95b31f..380fbec 100644
--- a/fortran/src/H5Tff_F90.f90
+++ b/fortran/src/H5Tff_F90.f90
@@ -36,4 +36,60 @@
MODULE H5T_PROVISIONAL
+ USE H5GLOBAL
+
+CONTAINS
+
+!
+!****s* H5T/h5tenum_insert_f
+!
+! NAME
+! h5tenum_insert_f
+!
+! PURPOSE
+! Inserts a new enumeration datatype member.
+!
+! INPUTS
+! type_id - Datatype identifier for the enumeration datatype.
+! name - Datatype identifier.
+! value - Value of the new member.
+! OUTPUTS
+! hdferr - Returns 0 if successful and -1 if fails
+!
+! AUTHOR
+! Elena Pourmal
+! August 12, 1999
+!
+! HISTORY
+! Explicit Fortran interfaces were added for
+! called C functions (it is needed for Windows
+! port). March 7, 2001
+! SOURCE
+ SUBROUTINE h5tenum_insert_f(type_id, name, value, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: value
+ INTEGER, INTENT(OUT) :: hdferr
+!*****
+ INTEGER :: namelen
+
+ INTERFACE
+ INTEGER FUNCTION h5tenum_insert_c(type_id, name, namelen, value)
+ USE H5GLOBAL
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TENUM_INSERT_C'::h5tenum_insert_c
+ !DEC$ENDIF
+ !DEC$ATTRIBUTES reference :: name
+ INTEGER(HID_T), INTENT(IN) :: type_id
+ CHARACTER(LEN=*), INTENT(IN) :: name
+ INTEGER, INTENT(IN) :: value
+ INTEGER :: namelen
+ END FUNCTION h5tenum_insert_c
+ END INTERFACE
+
+ namelen = LEN(name)
+ hdferr = h5tenum_insert_c(type_id, name, namelen, value)
+ END SUBROUTINE h5tenum_insert_f
+
END MODULE H5T_PROVISIONAL
diff --git a/fortran/src/H5_f.c b/fortran/src/H5_f.c
index 05e525d..a149109 100644
--- a/fortran/src/H5_f.c
+++ b/fortran/src/H5_f.c
@@ -471,14 +471,11 @@ nh5init_flags_c( int_f *h5d_flags, size_t_f *h5d_size_flags,
/*
* H5G flags
*/
-
- h5g_flags[0] = (int_f)H5O_TYPE_UNKNOWN;
- h5g_flags[1] = (int_f)H5O_TYPE_GROUP;
- h5g_flags[2] = (int_f)H5O_TYPE_DATASET;
- h5g_flags[3] = (int_f)H5O_TYPE_NAMED_DATATYPE;
-/* This value can no longer be returned and all these flags should be updated
- * to reflect the refinements between links and objects. -QAK */
-/* h5g_flags[4] = H5G_LINK; */
+ h5g_flags[0] = (int_f)H5O_TYPE_UNKNOWN; /* H5G_UNKNOWN is deprecated */
+ h5g_flags[1] = (int_f)H5O_TYPE_GROUP; /* H5G_GROUP is deprecated */
+ h5g_flags[2] = (int_f)H5O_TYPE_DATASET; /* H5G_DATASET is deprecated */
+ h5g_flags[3] = (int_f)H5O_TYPE_NAMED_DATATYPE; /* H5G_TYPE is deprecated */
+ h5g_flags[4] = (int_f)H5L_SAME_LOC;
h5g_flags[5] = (int_f)H5L_TYPE_ERROR;
h5g_flags[6] = (int_f)H5L_TYPE_HARD;
h5g_flags[7] = (int_f)H5L_TYPE_SOFT;
@@ -491,7 +488,6 @@ nh5init_flags_c( int_f *h5d_flags, size_t_f *h5d_size_flags,
/*
* H5I flags
*/
-
h5i_flags[0] = (int_f)H5I_FILE;
h5i_flags[1] = (int_f)H5I_GROUP;
h5i_flags[2] = (int_f)H5I_DATATYPE;
@@ -551,10 +547,15 @@ nh5init_flags_c( int_f *h5d_flags, size_t_f *h5d_size_flags,
h5o_flags[20] = (int_f)H5O_SHMESG_MAX_NINDEXES;
h5o_flags[21] = (int_f)H5O_SHMESG_MAX_LIST_SIZE;
+/* Types of objects in file */
+ h5o_flags[22] = (int_f)H5O_TYPE_UNKNOWN; /* Unknown object type */
+ h5o_flags[23] = (int_f)H5O_TYPE_GROUP; /* Object is a group */
+ h5o_flags[24] = (int_f)H5O_TYPE_DATASET; /* Object is a dataset */
+ h5o_flags[25] = (int_f)H5O_TYPE_NAMED_DATATYPE; /* Object is a named data type */
+ h5o_flags[26] = (int_f)H5O_TYPE_NTYPES; /* Number of different object types */
/*
* H5P flags
*/
-
h5p_flags[0] = (hid_t_f)H5P_FILE_CREATE;
h5p_flags[1] = (hid_t_f)H5P_FILE_ACCESS;
h5p_flags[2] = (hid_t_f)H5P_DATASET_CREATE;
diff --git a/fortran/src/H5f90global.f90 b/fortran/src/H5f90global.f90
index da1837a..ca50e20 100644
--- a/fortran/src/H5f90global.f90
+++ b/fortran/src/H5f90global.f90
@@ -44,6 +44,8 @@
MODULE H5GLOBAL
USE H5FORTRAN_TYPES
+ IMPLICIT NONE
+
! Definitions for reference datatypes.
! If you change the value of these parameters, do not forget to change corresponding
! values in the H5f90.h file.
@@ -309,8 +311,6 @@ MODULE H5GLOBAL
EQUIVALENCE(H5generic_flags(7), H5_ITER_DEC_F)
EQUIVALENCE(H5generic_flags(8), H5_ITER_NATIVE_F)
EQUIVALENCE(H5generic_flags(9), H5_ITER_N_F)
-
-
!
! H5G flags declaration
!
@@ -325,8 +325,9 @@ MODULE H5GLOBAL
INTEGER :: H5G_GROUP_F
INTEGER :: H5G_DATASET_F
INTEGER :: H5G_TYPE_F
- ! XXX: Fix problems with H5G_LINK_F! - QAK
INTEGER :: H5G_LINK_F
+ INTEGER :: H5G_UDLINK_F
+ INTEGER :: H5G_SAME_LOC_F
INTEGER :: H5G_LINK_ERROR_F
INTEGER :: H5G_LINK_HARD_F
INTEGER :: H5G_LINK_SOFT_F
@@ -335,16 +336,14 @@ MODULE H5GLOBAL
INTEGER :: H5G_STORAGE_TYPE_COMPACT_F
INTEGER :: H5G_STORAGE_TYPE_DENSE_F
- EQUIVALENCE(H5G_flags(1), H5G_UNKNOWN_F)
- EQUIVALENCE(H5G_flags(2), H5G_GROUP_F)
- EQUIVALENCE(H5G_flags(3), H5G_DATASET_F)
- EQUIVALENCE(H5G_flags(4), H5G_TYPE_F)
- ! XXX: Fix problems with H5G_LINK_F! - QAK ! these are really H5L values -MSB-
- EQUIVALENCE(H5G_flags(5), H5G_LINK_F)
+ EQUIVALENCE(H5G_flags(1), H5G_UNKNOWN_F) ! Unknown object type
+ EQUIVALENCE(H5G_flags(2), H5G_GROUP_F) ! Object is a group
+ EQUIVALENCE(H5G_flags(3), H5G_DATASET_F) ! Object is a dataset
+ EQUIVALENCE(H5G_flags(4), H5G_TYPE_F) ! Object is a named data type
+ EQUIVALENCE(H5G_flags(5), H5G_SAME_LOC_F)
EQUIVALENCE(H5G_flags(6), H5G_LINK_ERROR_F)
EQUIVALENCE(H5G_flags(7), H5G_LINK_HARD_F)
EQUIVALENCE(H5G_flags(8), H5G_LINK_SOFT_F)
- ! XXX
EQUIVALENCE(H5G_flags(9), H5G_STORAGE_TYPE_UNKNOWN_F )
EQUIVALENCE(H5G_flags(10), H5G_STORAGE_TYPE_SYMBOL_TABLE_F)
@@ -574,7 +573,7 @@ MODULE H5GLOBAL
!
! H5O flags declaration
!
- INTEGER, PARAMETER :: H5O_FLAGS_LEN = 22
+ INTEGER, PARAMETER :: H5O_FLAGS_LEN = 27
INTEGER :: H5o_flags(H5O_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
!DEC$ATTRIBUTES DLLEXPORT :: /H5O_FLAGS/
@@ -603,6 +602,11 @@ MODULE H5GLOBAL
INTEGER :: H5O_HDR_ALL_FLAGS_F
INTEGER :: H5O_SHMESG_MAX_NINDEXES_F
INTEGER :: H5O_SHMESG_MAX_LIST_SIZE_F
+ INTEGER :: H5O_TYPE_UNKNOWN_F
+ INTEGER :: H5O_TYPE_GROUP_F
+ INTEGER :: H5O_TYPE_DATASET_F
+ INTEGER :: H5O_TYPE_NAMED_DATATYPE_F
+ INTEGER :: H5O_TYPE_NTYPES_F
EQUIVALENCE(h5o_flags(1) , H5O_COPY_SHALLOW_HIERARCHY_F)
EQUIVALENCE(h5o_flags(2) , H5O_COPY_EXPAND_SOFT_LINK_F)
@@ -626,6 +630,11 @@ MODULE H5GLOBAL
EQUIVALENCE(h5o_flags(20) , H5O_HDR_ALL_FLAGS_F)
EQUIVALENCE(h5o_flags(21) , H5O_SHMESG_MAX_NINDEXES_F)
EQUIVALENCE(h5o_flags(22) , H5O_SHMESG_MAX_LIST_SIZE_F)
+ EQUIVALENCE(h5o_flags(23) , H5O_TYPE_UNKNOWN_F)
+ EQUIVALENCE(h5o_flags(24) , H5O_TYPE_GROUP_F)
+ EQUIVALENCE(h5o_flags(25) , H5O_TYPE_DATASET_F)
+ EQUIVALENCE(h5o_flags(26) , H5O_TYPE_NAMED_DATATYPE_F)
+ EQUIVALENCE(h5o_flags(27) , H5O_TYPE_NTYPES_F)
!
! H5P flags declaration
diff --git a/fortran/src/H5f90proto.h b/fortran/src/H5f90proto.h
index 284ffbd..b5e40a8 100644
--- a/fortran/src/H5f90proto.h
+++ b/fortran/src/H5f90proto.h
@@ -772,6 +772,7 @@ H5_FCDLL int_f nh5tinsert_array_c(hid_t_f * parent_id, _fcd name, int_f* namelen
H5_FCDLL int_f nh5tinsert_array_c2(hid_t_f * parent_id, _fcd name, int_f* namelen, size_t_f* offset, int_f* ndims, size_t_f* dims, hid_t_f* member_id);
H5_FCDLL int_f nh5tenum_create_c ( hid_t_f *parent_id , hid_t_f *new_type_id);
H5_FCDLL int_f nh5tenum_insert_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value);
+H5_FCDLL int_f h5tenum_insert_ptr_c(hid_t_f *type_id, _fcd name, int_f* namelen, void *value);
H5_FCDLL int_f nh5tenum_nameof_c(hid_t_f *type_id, int_f* value, _fcd name, size_t_f* namelen);
H5_FCDLL int_f nh5tenum_valueof_c(hid_t_f *type_id, _fcd name, int_f* namelen, int_f* value);
H5_FCDLL int_f nh5tget_member_value_c(hid_t_f *type_id, int_f* member_no, int_f* value);
diff --git a/fortran/src/Makefile.in b/fortran/src/Makefile.in
index 7e6b2eb..7466528 100644
--- a/fortran/src/Makefile.in
+++ b/fortran/src/Makefile.in
@@ -112,7 +112,8 @@ noinst_PROGRAMS = H5match_types$(EXEEXT) H5fortran_detect$(EXEEXT) \
TESTS =
subdir = fortran/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -553,7 +554,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
@@ -734,7 +734,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# After making changes, run bin/reconfigure to update other configure related
# files like Makefile.in.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 202
+LT_VERS_REVISION = 205
LT_VERS_AGE = 0
AM_FCLIBS = $(LIBHDF5)
diff --git a/fortran/src/hdf5_fortrandll.def.in b/fortran/src/hdf5_fortrandll.def.in
index c9c5e76..48fb343 100644
--- a/fortran/src/hdf5_fortrandll.def.in
+++ b/fortran/src/hdf5_fortrandll.def.in
@@ -543,7 +543,6 @@ H5T_mp_H5TINSERT_F
H5T_mp_H5TPACK_F
H5T_mp_H5TARRAY_CREATE_F
H5T_mp_H5TENUM_CREATE_F
-H5T_mp_H5TENUM_INSERT_F
H5T_mp_H5TENUM_NAMEOF_F
H5T_mp_H5TENUM_VALUEOF_F
H5T_mp_H5TGET_MEMBER_VALUE_F
@@ -560,6 +559,9 @@ H5T_mp_H5TGET_CREATE_PLIST_F
H5T_mp_H5TCOMPILER_CONV_F
H5T_mp_H5TGET_NATIVE_TYPE_F
@H5_NOF03EXP@H5T_PROVISIONAL_mp_H5TCONVERT_F
+@H5_F03EXP@H5T_PROVISIONAL_mp_H5TENUM_INSERT_F
+@H5_NOF03EXP@H5T_PROVISIONAL_mp_H5TENUM_INSERT_F90
+@H5_NOF03EXP@H5T_PROVISIONAL_mp_H5TENUM_INSERT_F03
; H5Z
H5Z_mp_H5ZUNREGISTER_F
H5Z_mp_H5ZFILTER_AVAIL_F
diff --git a/fortran/test/CMakeLists.txt b/fortran/test/CMakeLists.txt
index d10f2ef..3395906 100644
--- a/fortran/test/CMakeLists.txt
+++ b/fortran/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_FORTRAN_TESTS C CXX Fortran)
#-----------------------------------------------------------------------------
@@ -10,6 +10,7 @@ INCLUDE_DIRECTORIES (${CMAKE_Fortran_MODULE_DIRECTORY} ${HDF5_F90_BINARY_DIR} ${
# Add Test Lib
#-----------------------------------------------------------------------------
add_library (${HDF5_F90_C_TEST_LIB_TARGET} ${LIB_TYPE} t.c)
+set_source_files_properties (t.c PROPERTIES LANGUAGE C)
TARGET_C_PROPERTIES (${HDF5_F90_C_TEST_LIB_TARGET} " " " ")
target_link_libraries (${HDF5_F90_C_TEST_LIB_TARGET}
${HDF5_F90_C_LIB_TARGET}
@@ -18,12 +19,14 @@ target_link_libraries (${HDF5_F90_C_TEST_LIB_TARGET}
H5_SET_LIB_OPTIONS (${HDF5_F90_C_TEST_LIB_TARGET} ${HDF5_F90_C_TEST_LIB_NAME} ${LIB_TYPE})
set_target_properties (${HDF5_F90_C_TEST_LIB_TARGET} PROPERTIES
FOLDER libraries/test/fortran
+ LINKER_LANGUAGE C
INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
# See if the F2008 intrinsic STORAGE_SIZE and C_SIZEOF are supported. If not then
# fall back to F2003. If F2003 not supported then use F90 for the tests.
+set_source_files_properties (tf_F90.f90 tf_F03.f90 tf_F08.f90 tf.f90 PROPERTIES LANGUAGE Fortran)
if (FORTRAN_HAVE_STORAGE_SIZE AND FORTRAN_HAVE_C_SIZEOF)
add_library (${HDF5_F90_TEST_LIB_TARGET} ${LIB_TYPE} tf_F08.f90 tf.f90)
elseif (HDF5_ENABLE_F2003)
@@ -36,7 +39,7 @@ endif (FORTRAN_HAVE_STORAGE_SIZE AND FORTRAN_HAVE_C_SIZEOF)
set (SHARED_LINK_FLAGS " ")
if (WIN32)
if (BUILD_SHARED_LIBS)
- set_property (TARGET ${HDF5_F90_TEST_LIB_TARGET} APPEND PROPERTY COMPILE_DEFINITIONS BUILD_HDF5_DLL)
+ set_property (TARGET ${HDF5_F90_TEST_LIB_TARGET} APPEND PROPERTY COMPILE_DEFINITIONS BUILD_HDF5_TEST_DLL)
if (MSVC)
set (SHARED_LINK_FLAGS "/DLL")
endif (MSVC)
@@ -53,6 +56,7 @@ target_link_libraries (${HDF5_F90_TEST_LIB_TARGET}
H5_SET_LIB_OPTIONS (${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_TEST_LIB_NAME} ${LIB_TYPE})
set_target_properties (${HDF5_F90_TEST_LIB_TARGET} PROPERTIES
FOLDER libraries/test/fortran
+ LINKER_LANGUAGE Fortran
INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
diff --git a/fortran/test/CMakeTests.cmake b/fortran/test/CMakeTests.cmake
index 6a9c535..4df50ad 100644
--- a/fortran/test/CMakeTests.cmake
+++ b/fortran/test/CMakeTests.cmake
@@ -11,11 +11,13 @@ set_tests_properties (FORTRAN_testhdf5_fortran PROPERTIES PASS_REGULAR_EXPRESSIO
#-- Adding test for testhdf5_fortran_1_8
add_test (NAME FORTRAN_testhdf5_fortran_1_8 COMMAND $<TARGET_FILE:testhdf5_fortran_1_8>)
set_tests_properties (FORTRAN_testhdf5_fortran_1_8 PROPERTIES PASS_REGULAR_EXPRESSION "[ ]*0 error.s")
+set_tests_properties (FORTRAN_testhdf5_fortran_1_8 PROPERTIES DEPENDS FORTRAN_testhdf5_fortran)
#-- Adding test for fortranlib_test_F03
if (HDF5_ENABLE_F2003)
add_test (NAME FORTRAN_fortranlib_test_F03 COMMAND $<TARGET_FILE:fortranlib_test_F03>)
set_tests_properties (FORTRAN_fortranlib_test_F03 PROPERTIES PASS_REGULAR_EXPRESSION "[ ]*0 error.s")
+ set_tests_properties (FORTRAN_fortranlib_test_F03 PROPERTIES DEPENDS FORTRAN_testhdf5_fortran_1_8)
endif (HDF5_ENABLE_F2003)
#-- Adding test for fflush1
diff --git a/fortran/test/Makefile.in b/fortran/test/Makefile.in
index ca91cf5..c2055c4 100644
--- a/fortran/test/Makefile.in
+++ b/fortran/test/Makefile.in
@@ -92,7 +92,8 @@ check_PROGRAMS = $(am__EXEEXT_2)
TESTS = $(am__EXEEXT_2)
subdir = fortran/test
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -562,7 +563,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/fortran/test/tH5T_F03.f90 b/fortran/test/tH5T_F03.f90
index f15424d..e019d0f 100644
--- a/fortran/test/tH5T_F03.f90
+++ b/fortran/test/tH5T_F03.f90
@@ -1419,7 +1419,7 @@ SUBROUTINE t_enum(total_error)
! Insert enumerated value for memtype.
!
val(1) = i
- CALL H5Tenum_insert_f(memtype, TRIM(names(i+1)), val(1), error)
+ CALL H5Tenum_insert_f(memtype, TRIM(names(i+1)), C_LOC(val(1)), error)
CALL check("H5Tenum_insert_f", error, total_error)
!
! Insert enumerated value for filetype. We must first convert
@@ -1428,7 +1428,11 @@ SUBROUTINE t_enum(total_error)
f_ptr = C_LOC(val(1))
CALL H5Tconvert_f(M_BASET, F_BASET, INT(1,SIZE_T), f_ptr, error)
CALL check("H5Tconvert_f",error, total_error)
- CALL H5Tenum_insert_f(filetype, TRIM(names(i+1)), val(1), error)
+ IF(i.GE.1)THEN ! test both F90 and F03 APIs
+ CALL H5Tenum_insert_f(filetype, TRIM(names(i+1)), f_ptr, error)
+ ELSE
+ CALL H5Tenum_insert_f(filetype, TRIM(names(i+1)), val(1), error)
+ ENDIF
CALL check("H5Tenum_insert_f",error, total_error)
ENDDO
!
@@ -3134,7 +3138,7 @@ SUBROUTINE t_enum_conv(total_error)
ENUMERATOR :: E1_RED, E1_GREEN, E1_BLUE, E1_WHITE, E1_BLACK
END ENUM
- INTEGER :: val
+ INTEGER(KIND(E1_RED)), TARGET :: val
! Enumerated data array
! Some values are out of range for testing. The library should accept them
@@ -3185,19 +3189,19 @@ SUBROUTINE t_enum_conv(total_error)
! Initialize enum data.
!
val = E1_RED
- CALL H5Tenum_insert_f(dtype, "RED", val, error)
+ CALL H5Tenum_insert_f(dtype, "RED", C_LOC(val), error)
CALL check("h5tenum_insert_f",error, total_error)
val = E1_GREEN
- CALL H5Tenum_insert_f(dtype, "GREEN", val, error)
+ CALL H5Tenum_insert_f(dtype, "GREEN", C_LOC(val), error)
CALL check("h5tenum_insert_f",error, total_error)
val = E1_BLUE
- CALL H5Tenum_insert_f(dtype, "BLUE", val, error)
+ CALL H5Tenum_insert_f(dtype, "BLUE", C_LOC(val), error)
CALL check("h5tenum_insert_f",error, total_error)
val = E1_WHITE
- CALL H5Tenum_insert_f(dtype, "WHITE", val, error)
+ CALL H5Tenum_insert_f(dtype, "WHITE", C_LOC(val), error)
CALL check("h5tenum_insert_f",error, total_error)
val = E1_BLACK
- CALL H5Tenum_insert_f(dtype, "BLACK", val, error)
+ CALL H5Tenum_insert_f(dtype, "BLACK", C_LOC(val), error)
CALL check("h5tenum_insert_f",error, total_error)
!
! Create dataspace. Setting maximum size to be the current size.
diff --git a/fortran/test/tf.f90 b/fortran/test/tf.f90
index 063e93d..6d5911f 100644
--- a/fortran/test/tf.f90
+++ b/fortran/test/tf.f90
@@ -36,7 +36,7 @@ MODULE TH5_MISC
CONTAINS
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: dreal_eq
!DEC$endif
LOGICAL FUNCTION dreal_eq(a,b)
@@ -49,7 +49,7 @@ CONTAINS
END FUNCTION dreal_eq
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: verify_real_kind_7
!DEC$endif
SUBROUTINE verify_real_kind_7(string,value,correct_value,total_error)
@@ -66,7 +66,7 @@ CONTAINS
END SUBROUTINE verify_real_kind_7
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: write_test_status
!DEC$endif
SUBROUTINE write_test_status( test_result, test_title, total_error)
@@ -105,7 +105,7 @@ CONTAINS
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: check
!DEC$endif
SUBROUTINE check(string,error,total_error)
@@ -119,7 +119,7 @@ CONTAINS
END SUBROUTINE check
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: verify
!DEC$endif
SUBROUTINE VERIFY(string,value,correct_value,total_error)
@@ -133,7 +133,7 @@ CONTAINS
END SUBROUTINE verify
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: verify_Fortran_INTEGER_4
!DEC$endif
SUBROUTINE verify_Fortran_INTEGER_4(string,value,correct_value,total_error)
@@ -150,7 +150,7 @@ CONTAINS
END SUBROUTINE verify_Fortran_INTEGER_4
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: verifyLogical
!DEC$endif
SUBROUTINE verifyLogical(string,value,correct_value,total_error)
@@ -165,7 +165,7 @@ CONTAINS
END SUBROUTINE verifyLogical
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: verifyString
!DEC$endif
SUBROUTINE verifyString(string, value,correct_value,total_error)
@@ -203,7 +203,7 @@ CONTAINS
SUBROUTINE h5_fixname_f(base_name, full_name, fapl, hdferr)
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_fixname_f
!DEC$endif
USE H5GLOBAL
@@ -263,7 +263,7 @@ CONTAINS
SUBROUTINE h5_cleanup_f(base_name, fapl, hdferr)
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_cleanup_f
!DEC$endif
USE H5GLOBAL
@@ -315,7 +315,7 @@ CONTAINS
SUBROUTINE h5_exit_f(status)
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_exit_f
!DEC$endif
IMPLICIT NONE
@@ -352,7 +352,7 @@ CONTAINS
SUBROUTINE h5_env_nocleanup_f(HDF5_NOCLEANUP)
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_env_nocleanup_f
!DEC$endif
IMPLICIT NONE
diff --git a/fortran/test/tf_F03.f90 b/fortran/test/tf_F03.f90
index 4513783..b3f1399 100644
--- a/fortran/test/tf_F03.f90
+++ b/fortran/test/tf_F03.f90
@@ -66,7 +66,7 @@ MODULE TH5_MISC_PROVISIONAL
CONTAINS
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_cmpd
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CMPD(a)
@@ -78,7 +78,7 @@ CONTAINS
END FUNCTION H5_SIZEOF_CMPD
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_chr
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CHR(a)
@@ -90,7 +90,7 @@ CONTAINS
END FUNCTION H5_SIZEOF_CHR
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_i
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_I(a)
@@ -102,7 +102,7 @@ CONTAINS
END FUNCTION H5_SIZEOF_I
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_sp
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_SP(a)
@@ -114,7 +114,7 @@ CONTAINS
END FUNCTION H5_SIZEOF_SP
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_dp
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_DP(a)
diff --git a/fortran/test/tf_F08.f90 b/fortran/test/tf_F08.f90
index 5583f3f..20c2859 100644
--- a/fortran/test/tf_F08.f90
+++ b/fortran/test/tf_F08.f90
@@ -65,7 +65,7 @@ MODULE TH5_MISC_PROVISIONAL
CONTAINS
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_cmpd
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CMPD(a)
@@ -77,7 +77,7 @@ CONTAINS
END FUNCTION H5_SIZEOF_CMPD
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_chr
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_CHR(a)
@@ -89,7 +89,7 @@ CONTAINS
END FUNCTION H5_SIZEOF_CHR
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_i
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_I(a)
@@ -102,7 +102,7 @@ CONTAINS
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_sp
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_SP(a)
@@ -114,7 +114,7 @@ CONTAINS
END FUNCTION H5_SIZEOF_SP
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_TEST_DLL)
!DEC$attributes dllexport :: h5_sizeof_dp
!DEC$endif
INTEGER(C_SIZE_T) FUNCTION H5_SIZEOF_DP(a)
diff --git a/fortran/testpar/CMakeLists.txt b/fortran/testpar/CMakeLists.txt
index 3361220..dfe9ce7 100644
--- a/fortran/testpar/CMakeLists.txt
+++ b/fortran/testpar/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_FORTRAN_TESTPAR C CXX Fortran)
#-----------------------------------------------------------------------------
diff --git a/fortran/testpar/Makefile.in b/fortran/testpar/Makefile.in
index 583b6dc..97e59ed 100644
--- a/fortran/testpar/Makefile.in
+++ b/fortran/testpar/Makefile.in
@@ -109,7 +109,8 @@ check_PROGRAMS = $(am__EXEEXT_1)
TESTS =
subdir = fortran/testpar
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -488,7 +489,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/fortran/testpar/ptest.f90 b/fortran/testpar/ptest.f90
index e474668..69594b0 100644
--- a/fortran/testpar/ptest.f90
+++ b/fortran/testpar/ptest.f90
@@ -19,6 +19,7 @@
PROGRAM parallel_test
USE hdf5
+
IMPLICIT NONE
INCLUDE 'mpif.h'
diff --git a/hl/CMakeLists.txt b/hl/CMakeLists.txt
index e693dd7..031b7d6 100644
--- a/hl/CMakeLists.txt
+++ b/hl/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL C CXX)
#-----------------------------------------------------------------------------
diff --git a/hl/Makefile.in b/hl/Makefile.in
index cda0122..6ca0805 100644
--- a/hl/Makefile.in
+++ b/hl/Makefile.in
@@ -105,7 +105,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -492,7 +493,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/c++/CMakeLists.txt b/hl/c++/CMakeLists.txt
index 9f0aa7e..36f4c30 100644
--- a/hl/c++/CMakeLists.txt
+++ b/hl/c++/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_CPP)
#-----------------------------------------------------------------------------
diff --git a/hl/c++/Makefile.in b/hl/c++/Makefile.in
index 3839814..f16130a 100644
--- a/hl/c++/Makefile.in
+++ b/hl/c++/Makefile.in
@@ -101,7 +101,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl/c++
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -488,7 +489,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/c++/examples/CMakeLists.txt b/hl/c++/examples/CMakeLists.txt
index 8f9b43f..12c1d50 100644
--- a/hl/c++/examples/CMakeLists.txt
+++ b/hl/c++/examples/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_CPP_EXAMPLES)
#-----------------------------------------------------------------------------
diff --git a/hl/c++/examples/Makefile.in b/hl/c++/examples/Makefile.in
index 5712043..83f07f2 100644
--- a/hl/c++/examples/Makefile.in
+++ b/hl/c++/examples/Makefile.in
@@ -106,7 +106,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl/c++/examples
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -435,7 +436,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/c++/src/CMakeLists.txt b/hl/c++/src/CMakeLists.txt
index 03ef26d..0dee06f 100644
--- a/hl/c++/src/CMakeLists.txt
+++ b/hl/c++/src/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_CPP_SRC)
#-----------------------------------------------------------------------------
diff --git a/hl/c++/src/Makefile.in b/hl/c++/src/Makefile.in
index 3754fc9..98110b9 100644
--- a/hl/c++/src/Makefile.in
+++ b/hl/c++/src/Makefile.in
@@ -108,7 +108,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl/c++/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -494,7 +495,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
@@ -675,7 +675,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# After making changes, run bin/reconfigure to update other configure related
# files like Makefile.in.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 202
+LT_VERS_REVISION = 205
LT_VERS_AGE = 0
# This is our main target
diff --git a/hl/c++/test/CMakeLists.txt b/hl/c++/test/CMakeLists.txt
index 4a7523c..d4e1157 100644
--- a/hl/c++/test/CMakeLists.txt
+++ b/hl/c++/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_CPP_TEST)
#-----------------------------------------------------------------------------
diff --git a/hl/c++/test/Makefile.in b/hl/c++/test/Makefile.in
index f6bd246..7e50ec4 100644
--- a/hl/c++/test/Makefile.in
+++ b/hl/c++/test/Makefile.in
@@ -105,7 +105,8 @@ check_PROGRAMS = $(am__EXEEXT_1)
TESTS = $(am__EXEEXT_1)
subdir = hl/c++/test
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -491,7 +492,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/examples/CMakeLists.txt b/hl/examples/CMakeLists.txt
index 7847dbe..edcb920 100644
--- a/hl/examples/CMakeLists.txt
+++ b/hl/examples/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_EXAMPLES )
#-----------------------------------------------------------------------------
diff --git a/hl/examples/Makefile.in b/hl/examples/Makefile.in
index 6bbf493..43c6e3c 100644
--- a/hl/examples/Makefile.in
+++ b/hl/examples/Makefile.in
@@ -106,7 +106,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl/examples
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -435,7 +436,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/examples/ex_table_08.c b/hl/examples/ex_table_08.c
index 4078bea..bd3a3e1 100644
--- a/hl/examples/ex_table_08.c
+++ b/hl/examples/ex_table_08.c
@@ -13,7 +13,6 @@
* access to either file, you may request a copy from help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-#include "hdf5.h"
#include "hdf5_hl.h"
#include <stdlib.h>
diff --git a/hl/examples/ex_table_09.c b/hl/examples/ex_table_09.c
index 7ba0aa1..c50e20d 100644
--- a/hl/examples/ex_table_09.c
+++ b/hl/examples/ex_table_09.c
@@ -13,7 +13,6 @@
* access to either file, you may request a copy from help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-#include "hdf5.h"
#include "hdf5_hl.h"
#include <stdlib.h>
diff --git a/hl/examples/ex_table_10.c b/hl/examples/ex_table_10.c
index 20543c2..73a9431 100644
--- a/hl/examples/ex_table_10.c
+++ b/hl/examples/ex_table_10.c
@@ -13,7 +13,6 @@
* access to either file, you may request a copy from help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-#include "hdf5.h"
#include "hdf5_hl.h"
#include <stdlib.h>
diff --git a/hl/examples/ex_table_11.c b/hl/examples/ex_table_11.c
index 872fa4e..6746945 100644
--- a/hl/examples/ex_table_11.c
+++ b/hl/examples/ex_table_11.c
@@ -13,7 +13,6 @@
* access to either file, you may request a copy from help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-#include "hdf5.h"
#include "hdf5_hl.h"
#include <stdlib.h>
diff --git a/hl/examples/ptExampleFL.c b/hl/examples/ptExampleFL.c
index bbd0bf6..37b5035 100644
--- a/hl/examples/ptExampleFL.c
+++ b/hl/examples/ptExampleFL.c
@@ -13,7 +13,6 @@
* access to either file, you may request a copy from help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-#include "hdf5.h"
#include "hdf5_hl.h"
#include <stdlib.h>
diff --git a/hl/fortran/CMakeLists.txt b/hl/fortran/CMakeLists.txt
index c26d94c..892169c 100644
--- a/hl/fortran/CMakeLists.txt
+++ b/hl/fortran/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_F90 C CXX Fortran)
#-----------------------------------------------------------------------------
@@ -9,9 +9,9 @@ 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_EXAMPLES)
add_subdirectory (${HDF5_HL_F90_SOURCE_DIR}/examples ${HDF5_HL_F90_BINARY_DIR}/examples)
-endif (HDF5_BUILD_FORTRAN_EXAMPLES)
+endif (HDF5_BUILD_EXAMPLES)
#-----------------------------------------------------------------------------
# Testing
diff --git a/hl/fortran/Makefile.in b/hl/fortran/Makefile.in
index 8fe9e35..ff02a60 100644
--- a/hl/fortran/Makefile.in
+++ b/hl/fortran/Makefile.in
@@ -105,7 +105,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl/fortran
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -492,7 +493,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/fortran/examples/CMakeLists.txt b/hl/fortran/examples/CMakeLists.txt
index 12467b8..bf6a0ca 100644
--- a/hl/fortran/examples/CMakeLists.txt
+++ b/hl/fortran/examples/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_F90_EXAMPLES C CXX Fortran)
#-----------------------------------------------------------------------------
diff --git a/hl/fortran/examples/Makefile.in b/hl/fortran/examples/Makefile.in
index 1051658..27b1dee 100644
--- a/hl/fortran/examples/Makefile.in
+++ b/hl/fortran/examples/Makefile.in
@@ -106,7 +106,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl/fortran/examples
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -435,7 +436,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
index ee8604e..f188a53 100644
--- a/hl/fortran/src/CMakeLists.txt
+++ b/hl/fortran/src/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT(HDF5_HL_F90_SRC C CXX Fortran)
#-----------------------------------------------------------------------------
@@ -45,6 +45,7 @@ set (HDF5_HL_F90_F_SRCS
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5LTff.f90
${HDF5_HL_F90_SRC_SOURCE_DIR}/H5IMff.f90
)
+set_source_files_properties (${HDF5_HL_F90_F_SRCS} PROPERTIES LANGUAGE Fortran)
add_library (${HDF5_HL_F90_LIB_TARGET} ${LIB_TYPE} ${HDF5_HL_F90_F_SRCS})
set (SHARED_LINK_FLAGS " ")
@@ -52,8 +53,8 @@ if (BUILD_SHARED_LIBS)
if (WIN32)
set_property (TARGET ${HDF5_HL_F90_LIB_TARGET}
APPEND PROPERTY COMPILE_DEFINITIONS
- BUILD_HDF5_DLL
- )
+ BUILD_HDF5_HL_DLL
+ )
if (MSVC)
set (SHARED_LINK_FLAGS "/DLL")
endif (MSVC)
@@ -72,6 +73,7 @@ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF
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
+ LINKER_LANGUAGE Fortran
INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
diff --git a/hl/fortran/src/H5DSff.f90 b/hl/fortran/src/H5DSff.f90
index c3ec587..8cb568e 100644
--- a/hl/fortran/src/H5DSff.f90
+++ b/hl/fortran/src/H5DSff.f90
@@ -48,7 +48,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5dsset_scale_f
!DEC$endif
!
@@ -63,6 +63,7 @@ CONTAINS
INTEGER FUNCTION H5DSset_scale_c(dsid, dimname, dimname_len )
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSSET_SCALE_C'::h5dsset_scale_c
!DEC$ENDIF
@@ -105,7 +106,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5dsattach_scale_f
!DEC$endif
!
@@ -119,6 +120,7 @@ CONTAINS
INTEGER FUNCTION H5DSattach_scale_c(did, dsid, idx )
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSATTACH_SCALE_C':: h5dsattach_scale_c
!DEC$ENDIF
@@ -157,7 +159,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5dsdetach_scale_f
!DEC$endif
!
@@ -171,6 +173,7 @@ CONTAINS
INTEGER FUNCTION H5DSdetach_scale_c(did, dsid, idx )
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSDETACH_SCALE_C':: h5dsdetach_scale_c
!DEC$ENDIF
@@ -210,7 +213,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5dsis_attached_f
!DEC$endif
!
@@ -227,6 +230,7 @@ CONTAINS
INTEGER FUNCTION H5DSis_attached_c(did, dsid, idx, c_is_attached )
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSIS_ATTACHED_C':: h5dsis_attached_c
!DEC$ENDIF
@@ -277,7 +281,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5dsis_scale_f
!DEC$endif
!
@@ -291,6 +295,7 @@ CONTAINS
INTEGER FUNCTION H5DSis_scale_c(did,c_is_scale)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSIS_SCALE_C':: h5dsis_scale_c
!DEC$ENDIF
@@ -333,7 +338,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5dsset_label_f
!DEC$endif
!
@@ -350,6 +355,7 @@ CONTAINS
INTEGER FUNCTION H5DSset_label_c(did, idx, label, label_len)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSSET_LABEL_C'::h5dsset_label_c
!DEC$ENDIF
@@ -391,7 +397,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5dsget_label_f
!DEC$endif
!
@@ -407,6 +413,7 @@ CONTAINS
INTEGER FUNCTION H5DSget_label_c(did, idx, label, size)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSGET_LABEL_C'::h5dsget_label_c
!DEC$ENDIF
@@ -448,7 +455,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5dsget_scale_name_f
!DEC$endif
!
@@ -462,6 +469,7 @@ CONTAINS
INTEGER FUNCTION H5DSget_scale_name_c(did, name, size)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSGET_SCALE_NAME_C'::h5dsget_scale_name_c
!DEC$ENDIF
@@ -499,7 +507,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5dsget_num_scales_f
!DEC$endif
!
@@ -513,6 +521,7 @@ CONTAINS
INTEGER FUNCTION H5DSget_num_scales_c(did, idx, num_scales)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5DSGET_NUM_SCALES_C':: h5dsget_num_scales_c
!DEC$ENDIF
diff --git a/hl/fortran/src/H5IMff.f90 b/hl/fortran/src/H5IMff.f90
index d78dc06..37030ac 100644
--- a/hl/fortran/src/H5IMff.f90
+++ b/hl/fortran/src/H5IMff.f90
@@ -51,7 +51,7 @@ subroutine h5immake_image_8bit_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5immake_image_8bit_f
!DEC$endif
!
@@ -67,6 +67,7 @@ subroutine h5immake_image_8bit_f(loc_id,&
interface
integer function h5immake_image_8bit_c(loc_id,namelen,dset_name,width,height,buf)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMMAKE_IMAGE_8BIT_C'::h5immake_image_8bit_c
!DEC$ENDIF
@@ -114,7 +115,7 @@ subroutine h5imread_image_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5imread_image_f
!DEC$endif
!
@@ -127,6 +128,7 @@ subroutine h5imread_image_f(loc_id,&
interface
integer function h5imread_image_c(loc_id,namelen,dset_name,buf)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMREAD_IMAGE_C'::h5imread_image_c
!DEC$ENDIF
@@ -173,7 +175,7 @@ subroutine h5immake_image_24bit_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5immake_image_24bit_f
!DEC$endif
!
@@ -191,6 +193,7 @@ subroutine h5immake_image_24bit_f(loc_id,&
interface
integer function h5immake_image_24bit_c(loc_id,namelen,dset_name,ilen,il,width,height,buf)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMMAKE_IMAGE_24BIT_C'::h5immake_image_24bit_c
!DEC$ENDIF
@@ -246,7 +249,7 @@ subroutine h5imget_image_info_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5imget_image_info_f
!DEC$endif
!
@@ -265,6 +268,7 @@ subroutine h5imget_image_info_f(loc_id,&
interface
integer function h5imget_image_info_c(loc_id,namelen,dset_name,width,height,planes,npals,ilen,interlace)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMGET_IMAGE_INFO_C'::h5imget_image_info_c
!DEC$ENDIF
@@ -313,7 +317,7 @@ integer function h5imis_image_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5imis_image_f
!DEC$endif
!
@@ -326,6 +330,7 @@ integer function h5imis_image_f(loc_id,&
interface
integer function h5imis_image_c(loc_id,namelen,dset_name)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMIS_IMAGE_C'::h5imis_image_c
!DEC$ENDIF
@@ -370,7 +375,7 @@ subroutine h5immake_palette_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5immake_palette_f
!DEC$endif
!
@@ -385,6 +390,7 @@ subroutine h5immake_palette_f(loc_id,&
interface
integer function h5immake_palette_c(loc_id,namelen,dset_name,pal_dims,buf)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMMAKE_PALETTE_C'::h5immake_palette_c
!DEC$ENDIF
@@ -430,7 +436,7 @@ subroutine h5imlink_palette_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5imlink_palette_f
!DEC$endif
!
@@ -444,6 +450,7 @@ subroutine h5imlink_palette_f(loc_id,&
interface
integer function h5imlink_palette_c(loc_id,namelen,dset_name,ilen,pal_name)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMLINK_PALETTE_C'::h5imlink_palette_c
!DEC$ENDIF
@@ -490,7 +497,7 @@ subroutine h5imunlink_palette_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5imunlink_palette_f
!DEC$endif
!
@@ -506,6 +513,7 @@ subroutine h5imunlink_palette_f(loc_id,&
interface
integer function h5imunlink_palette_c(loc_id,namelen,dset_name,ilen,pal_name)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMUNLINK_PALETTE_C'::h5imunlink_palette_c
!DEC$ENDIF
@@ -553,7 +561,7 @@ subroutine h5imget_npalettes_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5imget_npalettes_f
!DEC$endif
!
@@ -567,6 +575,7 @@ subroutine h5imget_npalettes_f(loc_id,&
interface
integer function h5imget_npalettes_c(loc_id,namelen,dset_name,npals)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMGET_NPALETTES_C'::h5imget_npalettes_c
!DEC$ENDIF
@@ -612,7 +621,7 @@ subroutine h5imget_palette_info_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5imget_palette_info_f
!DEC$endif
!
@@ -627,6 +636,7 @@ subroutine h5imget_palette_info_f(loc_id,&
interface
integer function h5imget_palette_info_c(loc_id,namelen,dset_name,pal_number,dims)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMGET_PALETTE_INFO_C'::h5imget_palette_info_c
!DEC$ENDIF
@@ -674,7 +684,7 @@ subroutine h5imget_palette_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5imget_palette_f
!DEC$endif
!
@@ -689,6 +699,7 @@ subroutine h5imget_palette_f(loc_id,&
interface
integer function h5imget_palette_c(loc_id,namelen,dset_name,pal_number,buf)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMGET_PALETTE_C'::h5imget_palette_c
!DEC$ENDIF
@@ -731,7 +742,7 @@ integer function h5imis_palette_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5imis_palette_f
!DEC$endif
!
@@ -744,6 +755,7 @@ integer function h5imis_palette_f(loc_id,&
interface
integer function h5imis_palette_c(loc_id,namelen,dset_name)
use h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5IMIS_PALETTE_C'::h5imis_palette_c
!DEC$ENDIF
diff --git a/hl/fortran/src/H5LTff.f90 b/hl/fortran/src/H5LTff.f90
index 0302b61..8df024e 100644
--- a/hl/fortran/src/H5LTff.f90
+++ b/hl/fortran/src/H5LTff.f90
@@ -163,7 +163,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_int1
!DEC$endif
!
@@ -180,6 +180,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT1_C'::h5ltmake_dataset_int1_c
!DEC$ENDIF
@@ -228,7 +229,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_int2
!DEC$endif
!
@@ -246,6 +247,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_int2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT2_C'::h5ltmake_dataset_int2_c
!DEC$ENDIF
@@ -295,7 +297,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_int3
!DEC$endif
!
@@ -313,6 +315,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_int3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT3_C'::h5ltmake_dataset_int3_c
!DEC$ENDIF
@@ -357,7 +360,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_int4
!DEC$endif
!
@@ -375,6 +378,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_int4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT4_C'::h5ltmake_dataset_int4_c
!DEC$ENDIF
@@ -419,7 +423,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_int5
!DEC$endif
!
@@ -437,6 +441,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_int5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT5_C'::h5ltmake_dataset_int5_c
!DEC$ENDIF
@@ -481,7 +486,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_int6
!DEC$endif
!
@@ -499,6 +504,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_int6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT6_C'::h5ltmake_dataset_int6_c
!DEC$ENDIF
@@ -543,7 +549,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_int7
!DEC$endif
!
@@ -561,6 +567,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_int7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT7_C'::h5ltmake_dataset_int7_c
!DEC$ENDIF
@@ -611,7 +618,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_float1
!DEC$endif
!
@@ -628,6 +635,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL1_C'::h5ltmake_dataset_fl1_c
!DEC$ENDIF
@@ -676,7 +684,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_float2
!DEC$endif
!
@@ -694,6 +702,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_fl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL2_C'::h5ltmake_dataset_fl2_c
!DEC$ENDIF
@@ -743,7 +752,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_float3
!DEC$endif
!
@@ -761,6 +770,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_fl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL3_C'::h5ltmake_dataset_fl3_c
!DEC$ENDIF
@@ -805,7 +815,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_float4
!DEC$endif
!
@@ -823,6 +833,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_fl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL4_C'::h5ltmake_dataset_fl4_c
!DEC$ENDIF
@@ -867,7 +878,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_float5
!DEC$endif
!
@@ -885,6 +896,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_fl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL5_C'::h5ltmake_dataset_fl5_c
!DEC$ENDIF
@@ -929,7 +941,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_float6
!DEC$endif
!
@@ -947,6 +959,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_fl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL6_C'::h5ltmake_dataset_fl6_c
!DEC$ENDIF
@@ -991,7 +1004,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_float7
!DEC$endif
!
@@ -1009,6 +1022,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_fl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL7_C'::h5ltmake_dataset_fl7_c
!DEC$ENDIF
@@ -1058,7 +1072,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_double1
!DEC$endif
!
@@ -1075,6 +1089,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL1_C'::h5ltmake_dataset_dl1_c
!DEC$ENDIF
@@ -1123,7 +1138,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_double2
!DEC$endif
!
@@ -1141,6 +1156,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_dl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL2_C'::h5ltmake_dataset_dl2_c
!DEC$ENDIF
@@ -1190,7 +1206,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_double3
!DEC$endif
!
@@ -1208,6 +1224,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_dl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL3_C'::h5ltmake_dataset_dl3_c
!DEC$ENDIF
@@ -1252,7 +1269,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_double4
!DEC$endif
!
@@ -1270,6 +1287,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_dl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL4_C'::h5ltmake_dataset_dl4_c
!DEC$ENDIF
@@ -1314,7 +1332,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_double5
!DEC$endif
!
@@ -1332,6 +1350,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_dl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL5_C'::h5ltmake_dataset_dl5_c
!DEC$ENDIF
@@ -1376,7 +1395,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_double6
!DEC$endif
!
@@ -1394,6 +1413,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_dl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL6_C'::h5ltmake_dataset_dl6_c
!DEC$ENDIF
@@ -1438,7 +1458,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_f_double7
!DEC$endif
!
@@ -1456,6 +1476,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_dl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL7_C'::h5ltmake_dataset_dl7_c
!DEC$ENDIF
@@ -1504,7 +1525,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_int1
!DEC$endif
!
@@ -1520,6 +1541,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT1_C'::h5ltread_dataset_int1_c
!DEC$ENDIF
@@ -1566,7 +1588,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_int2
!DEC$endif
!
@@ -1583,6 +1605,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_int2_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT2_C'::h5ltread_dataset_int2_c
!DEC$ENDIF
@@ -1630,7 +1653,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_int3
!DEC$endif
!
@@ -1647,6 +1670,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_int3_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT3_C'::h5ltread_dataset_int3_c
!DEC$ENDIF
@@ -1690,7 +1714,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_int4
!DEC$endif
!
@@ -1707,6 +1731,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_int4_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT4_C'::h5ltread_dataset_int4_c
!DEC$ENDIF
@@ -1750,7 +1775,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_int5
!DEC$endif
!
@@ -1767,6 +1792,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_int5_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT5_C'::h5ltread_dataset_int5_c
!DEC$ENDIF
@@ -1810,7 +1836,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_int6
!DEC$endif
!
@@ -1827,6 +1853,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_int6_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT6_C'::h5ltread_dataset_int6_c
!DEC$ENDIF
@@ -1870,7 +1897,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_int7
!DEC$endif
!
@@ -1887,6 +1914,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_int7_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT7_C'::h5ltread_dataset_int7_c
!DEC$ENDIF
@@ -1935,7 +1963,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_float1
!DEC$endif
!
@@ -1951,6 +1979,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL1_C'::h5ltread_dataset_fl1_c
!DEC$ENDIF
@@ -1997,7 +2026,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_float2
!DEC$endif
!
@@ -2015,6 +2044,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_fl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL2_C'::h5ltread_dataset_fl2_c
!DEC$ENDIF
@@ -2062,7 +2092,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_float3
!DEC$endif
!
@@ -2079,6 +2109,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_fl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL3_C'::h5ltread_dataset_fl3_c
!DEC$ENDIF
@@ -2122,7 +2153,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_float4
!DEC$endif
!
@@ -2139,6 +2170,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_fl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL4_C'::h5ltread_dataset_fl4_c
!DEC$ENDIF
@@ -2182,7 +2214,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_float5
!DEC$endif
!
@@ -2199,6 +2231,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_fl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL5_C'::h5ltread_dataset_fl5_c
!DEC$ENDIF
@@ -2242,7 +2275,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_float6
!DEC$endif
!
@@ -2259,6 +2292,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_fl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL6_C'::h5ltread_dataset_fl6_c
!DEC$ENDIF
@@ -2302,7 +2336,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_float7
!DEC$endif
!
@@ -2319,6 +2353,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_fl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL7_C'::h5ltread_dataset_fl7_c
!DEC$ENDIF
@@ -2367,7 +2402,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport ::h5ltread_dataset_f_double1
!DEC$endif
!
@@ -2383,6 +2418,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL1_C'::h5ltread_dataset_dl1_c
!DEC$ENDIF
@@ -2429,7 +2465,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_double2
!DEC$endif
!
@@ -2446,6 +2482,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_dl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL2_C'::h5ltread_dataset_dl2_c
!DEC$ENDIF
@@ -2493,7 +2530,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_double3
!DEC$endif
!
@@ -2510,6 +2547,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_dl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL3_C'::h5ltread_dataset_dl3_c
!DEC$ENDIF
@@ -2553,7 +2591,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_double4
!DEC$endif
!
@@ -2570,6 +2608,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_dl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL4_C'::h5ltread_dataset_dl4_c
!DEC$ENDIF
@@ -2613,7 +2652,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_double5
!DEC$endif
!
@@ -2630,6 +2669,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_dl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL5_C'::h5ltread_dataset_dl5_c
!DEC$ENDIF
@@ -2673,7 +2713,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_double6
!DEC$endif
!
@@ -2690,6 +2730,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_dl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL6_C'::h5ltread_dataset_dl6_c
!DEC$ENDIF
@@ -2733,7 +2774,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_f_double7
!DEC$endif
!
@@ -2750,6 +2791,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_dl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL7_C'::h5ltread_dataset_dl7_c
!DEC$ENDIF
@@ -2797,7 +2839,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_int_f_1
!DEC$endif
!
@@ -2813,6 +2855,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT1_C'::h5ltmake_dataset_nint1_c
!DEC$ENDIF
@@ -2860,7 +2903,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_int_f_2
!DEC$endif
!
@@ -2878,6 +2921,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nint2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT2_C'::h5ltmake_dataset_nint2_c
!DEC$ENDIF
@@ -2927,7 +2971,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_int_f_3
!DEC$endif
!
@@ -2945,6 +2989,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nint3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT3_C'::h5ltmake_dataset_nint3_c
!DEC$ENDIF
@@ -2989,7 +3034,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_int_f_4
!DEC$endif
!
@@ -3007,6 +3052,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nint4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT4_C'::h5ltmake_dataset_nint4_c
!DEC$ENDIF
@@ -3051,7 +3097,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_int_f_5
!DEC$endif
!
@@ -3069,6 +3115,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nint5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT5_C'::h5ltmake_dataset_nint5_c
!DEC$ENDIF
@@ -3113,7 +3160,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_int_f_6
!DEC$endif
!
@@ -3131,6 +3178,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nint6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT6_C'::h5ltmake_dataset_nint6_c
!DEC$ENDIF
@@ -3175,7 +3223,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_int_f_7
!DEC$endif
!
@@ -3193,6 +3241,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nint7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT7_C'::h5ltmake_dataset_nint7_c
!DEC$ENDIF
@@ -3241,7 +3290,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_float_f_1
!DEC$endif
!
@@ -3257,6 +3306,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL1_C'::h5ltmake_dataset_nfl1_c
!DEC$ENDIF
@@ -3304,7 +3354,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_float_f_2
!DEC$endif
!
@@ -3321,6 +3371,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nfl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL2_C'::h5ltmake_dataset_nfl2_c
!DEC$ENDIF
@@ -3369,7 +3420,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_float_f_3
!DEC$endif
!
@@ -3386,6 +3437,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nfl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL3_C'::h5ltmake_dataset_nfl3_c
!DEC$ENDIF
@@ -3430,7 +3482,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_float_f_4
!DEC$endif
!
@@ -3447,6 +3499,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nfl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL4_C'::h5ltmake_dataset_nfl4_c
!DEC$ENDIF
@@ -3491,7 +3544,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_float_f_5
!DEC$endif
!
@@ -3508,6 +3561,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nfl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL5_C'::h5ltmake_dataset_nfl5_c
!DEC$ENDIF
@@ -3552,7 +3606,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_float_f_6
!DEC$endif
!
@@ -3569,6 +3623,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nfl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL6_C'::h5ltmake_dataset_nfl6_c
!DEC$ENDIF
@@ -3613,7 +3668,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_float_f_7
!DEC$endif
!
@@ -3630,6 +3685,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_nfl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL7_C'::h5ltmake_dataset_nfl7_c
!DEC$ENDIF
@@ -3679,7 +3735,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_double_f_1
!DEC$endif
!
@@ -3696,6 +3752,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_ndl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL1_C'::h5ltmake_dataset_ndl1_c
!DEC$ENDIF
@@ -3745,7 +3802,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_double_f_2
!DEC$endif
!
@@ -3762,6 +3819,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_ndl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL2_C'::h5ltmake_dataset_ndl2_c
!DEC$ENDIF
@@ -3810,7 +3868,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_double_f_3
!DEC$endif
!
@@ -3827,6 +3885,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_ndl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL3_C'::h5ltmake_dataset_ndl3_c
!DEC$ENDIF
@@ -3871,7 +3930,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_double_f_4
!DEC$endif
!
@@ -3888,6 +3947,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_ndl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL4_C'::h5ltmake_dataset_ndl4_c
!DEC$ENDIF
@@ -3932,7 +3992,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_double_f_5
!DEC$endif
!
@@ -3949,6 +4009,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_ndl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL5_C'::h5ltmake_dataset_ndl5_c
!DEC$ENDIF
@@ -3993,7 +4054,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_double_f_5
!DEC$endif
!
@@ -4010,6 +4071,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_ndl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL6_C'::h5ltmake_dataset_ndl6_c
!DEC$ENDIF
@@ -4054,7 +4116,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_double_f_5
!DEC$endif
!
@@ -4071,6 +4133,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_ndl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL7_C'::h5ltmake_dataset_ndl7_c
!DEC$ENDIF
@@ -4118,7 +4181,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_int_f_1
!DEC$endif
!
@@ -4134,6 +4197,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nint1_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT1_C'::h5ltread_dataset_nint1_c
!DEC$ENDIF
@@ -4181,7 +4245,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_int_f_2
!DEC$endif
!
@@ -4197,6 +4261,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nint2_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT2_C'::h5ltread_dataset_nint2_c
!DEC$ENDIF
@@ -4243,7 +4308,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_int_f_3
!DEC$endif
!
@@ -4259,6 +4324,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nint3_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT3_C'::h5ltread_dataset_nint3_c
!DEC$ENDIF
@@ -4301,7 +4367,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_int_f_4
!DEC$endif
!
@@ -4317,6 +4383,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nint4_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT4_C'::h5ltread_dataset_nint4_c
!DEC$ENDIF
@@ -4359,7 +4426,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_int_f_5
!DEC$endif
!
@@ -4375,6 +4442,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nint5_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT5_C'::h5ltread_dataset_nint5_c
!DEC$ENDIF
@@ -4417,7 +4485,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_int_f_6
!DEC$endif
!
@@ -4433,6 +4501,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nint6_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT6_C'::h5ltread_dataset_nint6_c
!DEC$ENDIF
@@ -4475,7 +4544,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_int_f_7
!DEC$endif
!
@@ -4491,6 +4560,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nint7_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT7_C'::h5ltread_dataset_nint7_c
!DEC$ENDIF
@@ -4538,7 +4608,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_float_f_1
!DEC$endif
!
@@ -4554,6 +4624,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nfl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL1_C'::h5ltread_dataset_nfl1_c
!DEC$ENDIF
@@ -4601,7 +4672,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_float_f_2
!DEC$endif
!
@@ -4617,6 +4688,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nfl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL2_C'::h5ltread_dataset_nfl2_c
!DEC$ENDIF
@@ -4663,7 +4735,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_float_f_3
!DEC$endif
!
@@ -4679,6 +4751,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nfl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL3_C'::h5ltread_dataset_nfl3_c
!DEC$ENDIF
@@ -4721,7 +4794,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_float_f_4
!DEC$endif
!
@@ -4737,6 +4810,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nfl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL4_C'::h5ltread_dataset_nfl4_c
!DEC$ENDIF
@@ -4779,7 +4853,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_float_f_5
!DEC$endif
!
@@ -4795,6 +4869,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nfl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL5_C'::h5ltread_dataset_nfl5_c
!DEC$ENDIF
@@ -4837,7 +4912,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_float_f_6
!DEC$endif
!
@@ -4853,6 +4928,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nfl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL6_C'::h5ltread_dataset_nfl6_c
!DEC$ENDIF
@@ -4895,7 +4971,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_float_f_7
!DEC$endif
!
@@ -4911,6 +4987,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_nfl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL7_C'::h5ltread_dataset_nfl7_c
!DEC$ENDIF
@@ -4957,7 +5034,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_double_f_1
!DEC$endif
!
@@ -4973,6 +5050,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_ndl1_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL1_C'::h5ltread_dataset_ndl1_c
!DEC$ENDIF
@@ -5020,7 +5098,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_double_f_2
!DEC$endif
!
@@ -5036,6 +5114,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_ndl2_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL2_C'::h5ltread_dataset_ndl2_c
!DEC$ENDIF
@@ -5082,7 +5161,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_double_f_3
!DEC$endif
!
@@ -5098,6 +5177,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_ndl3_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL3_C'::h5ltread_dataset_ndl3_c
!DEC$ENDIF
@@ -5140,7 +5220,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_double_f_4
!DEC$endif
!
@@ -5156,6 +5236,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_ndl4_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL4_C'::h5ltread_dataset_ndl4_c
!DEC$ENDIF
@@ -5198,7 +5279,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_double_f_5
!DEC$endif
!
@@ -5214,6 +5295,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_ndl5_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL5_C'::h5ltread_dataset_ndl5_c
!DEC$ENDIF
@@ -5256,7 +5338,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_double_f_6
!DEC$endif
!
@@ -5272,6 +5354,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_ndl6_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL6_C'::h5ltread_dataset_ndl6_c
!DEC$ENDIF
@@ -5314,7 +5397,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_double_f_7
!DEC$endif
!
@@ -5330,6 +5413,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_ndl7_c(loc_id,namelen,dset_name,type_id,buf,dims)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL7_C'::h5ltread_dataset_ndl7_c
!DEC$ENDIF
@@ -5376,7 +5460,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltmake_dataset_string_f
!DEC$endif
!
@@ -5391,6 +5475,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_STRING_C'::h5ltmake_dataset_string_c
!DEC$ENDIF
@@ -5435,7 +5520,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltread_dataset_string_f
!DEC$endif
!
@@ -5449,6 +5534,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_STRING_C'::h5ltread_dataset_string_c
!DEC$ENDIF
@@ -5501,7 +5587,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltset_attribute_int_f
!DEC$endif
!
@@ -5518,6 +5604,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_INT_C'::h5ltset_attribute_int_c
!DEC$ENDIF
@@ -5567,7 +5654,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltset_attribute_float_f
!DEC$endif
!
@@ -5584,6 +5671,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_FLOAT_C'::h5ltset_attribute_float_c
!DEC$ENDIF
@@ -5633,7 +5721,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltset_attribute_double_f
!DEC$endif
!
@@ -5650,6 +5738,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_DOUBLE_C'::h5ltset_attribute_double_c
!DEC$ENDIF
@@ -5699,7 +5788,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltset_attribute_string_f
!DEC$endif
!
@@ -5716,6 +5805,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_STRING_C'::h5ltset_attribute_string_c
!DEC$ENDIF
@@ -5767,7 +5857,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltget_attribute_int_f
!DEC$endif
!
@@ -5783,6 +5873,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INT_C'::h5ltget_attribute_int_c
!DEC$ENDIF
@@ -5831,7 +5922,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltget_attribute_float_f
!DEC$endif
!
@@ -5847,6 +5938,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_FLOAT_C'::h5ltget_attribute_float_c
!DEC$ENDIF
@@ -5894,7 +5986,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltget_attribute_double_f
!DEC$endif
!
@@ -5910,6 +6002,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_DOUBLE_C'::h5ltget_attribute_double_c
!DEC$ENDIF
@@ -5957,7 +6050,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltget_attribute_string_f
!DEC$endif
!
@@ -5974,6 +6067,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf,buf_size)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_STRING_C'::h5ltget_attribute_string_c
!DEC$ENDIF
@@ -6027,7 +6121,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltget_dataset_ndims_f
!DEC$endif
!
@@ -6041,6 +6135,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_NDIMS_C'::h5ltget_dataset_ndims_c
!DEC$ENDIF
@@ -6083,7 +6178,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltfind_dataset_f
!DEC$endif
!
@@ -6096,6 +6191,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltfind_dataset_c(loc_id,namelen,dset_name)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTFIND_DATASET_C'::h5ltfind_dataset_c
!DEC$ENDIF
@@ -6140,7 +6236,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltget_dataset_info_f
!DEC$endif
!
@@ -6156,6 +6252,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_INFO_C'::h5ltget_dataset_info_c
!DEC$ENDIF
@@ -6207,7 +6304,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltget_attribute_ndims_f
!DEC$endif
!
@@ -6223,6 +6320,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_NDIMS_C'::h5ltget_attribute_ndims_c
!DEC$ENDIF
@@ -6273,7 +6371,7 @@ CONTAINS
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltget_attribute_info_f
!DEC$endif
!
@@ -6291,6 +6389,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INFO_C'::h5ltget_attribute_info_c
!DEC$ENDIF
@@ -6335,7 +6434,7 @@ CONTAINS
IMPLICIT NONE
!
!This definition is needed for Windows DLLs
- !DEC$if defined(BUILD_HDF5_DLL)
+ !DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5ltpath_valid_f
!DEC$endif
!
@@ -6353,6 +6452,7 @@ CONTAINS
INTERFACE
INTEGER FUNCTION h5ltpath_valid_c(loc_id, path, pathlen, check_object_valid_c)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTPATH_VALID_C'::h5ltpath_valid_c
!DEC$ENDIF
diff --git a/hl/fortran/src/H5TBff.f90 b/hl/fortran/src/H5TBff.f90
index 36e13f9..8d31a93 100644
--- a/hl/fortran/src/H5TBff.f90
+++ b/hl/fortran/src/H5TBff.f90
@@ -96,7 +96,7 @@ SUBROUTINE h5tbmake_table_f(table_title,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbmake_table_f
!DEC$endif
!
@@ -138,6 +138,7 @@ SUBROUTINE h5tbmake_table_f(table_title,&
field_names)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBMAKE_TABLE_C'::h5tbmake_table_c
!DEC$ENDIF
@@ -157,7 +158,7 @@ SUBROUTINE h5tbmake_table_f(table_title,&
INTEGER :: namelen ! name length
INTEGER :: namelen1 ! name length
INTEGER, DIMENSION(nfields) :: char_len_field_names ! field name's lengths
- INTEGER :: max_char_size ! character len of field names
+ INTEGER :: max_char_size_field_names ! character len of field names
END FUNCTION h5tbmake_table_c
END INTERFACE
@@ -218,7 +219,7 @@ SUBROUTINE h5tbwrite_field_name_f_int(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbwrite_field_name_f_int
!DEC$endif
!
@@ -239,6 +240,7 @@ SUBROUTINE h5tbwrite_field_name_f_int(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_INT_C'::h5tbwrite_field_name_int_c
!DEC$ENDIF
@@ -293,7 +295,7 @@ SUBROUTINE h5tbwrite_field_name_f_float(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbwrite_field_name_f_float
!DEC$endif
!
@@ -314,6 +316,7 @@ SUBROUTINE h5tbwrite_field_name_f_float(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_FL_C'::h5tbwrite_field_name_fl_c
!DEC$ENDIF
@@ -370,7 +373,7 @@ SUBROUTINE h5tbwrite_field_name_f_double(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbwrite_field_name_f_double
!DEC$endif
!
@@ -391,6 +394,7 @@ SUBROUTINE h5tbwrite_field_name_f_double(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_DL_C'::h5tbwrite_field_name_dl_c
!DEC$ENDIF
@@ -445,7 +449,7 @@ SUBROUTINE h5tbwrite_field_name_f_string(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbwrite_field_name_f_string
!DEC$endif
!
@@ -466,6 +470,7 @@ SUBROUTINE h5tbwrite_field_name_f_string(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_ST_C'::h5tbwrite_field_name_st_c
!DEC$ENDIF
@@ -521,7 +526,7 @@ SUBROUTINE h5tbread_field_name_f_int(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbread_field_name_f_int
!DEC$endif
!
@@ -542,6 +547,7 @@ SUBROUTINE h5tbread_field_name_f_int(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_INT_C'::h5tbread_field_name_int_c
!DEC$ENDIF
@@ -596,7 +602,7 @@ SUBROUTINE h5tbread_field_name_f_float(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbread_field_name_f_float
!DEC$endif
!
@@ -617,6 +623,7 @@ SUBROUTINE h5tbread_field_name_f_float(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_FL_C'::h5tbread_field_name_fl_c
!DEC$ENDIF
@@ -671,7 +678,7 @@ SUBROUTINE h5tbread_field_name_f_double(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbread_field_name_f_double
!DEC$endif
!
@@ -692,6 +699,7 @@ SUBROUTINE h5tbread_field_name_f_double(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_DL_C'::h5tbread_field_name_dl_c
!DEC$ENDIF
@@ -746,7 +754,7 @@ SUBROUTINE h5tbread_field_name_f_string(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbread_field_name_f_string
!DEC$endif
!
@@ -767,6 +775,7 @@ SUBROUTINE h5tbread_field_name_f_string(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_ST_C'::h5tbread_field_name_st_c
!DEC$ENDIF
@@ -822,7 +831,7 @@ SUBROUTINE h5tbwrite_field_index_f_int(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbwrite_field_index_f_int
!DEC$endif
!
@@ -842,6 +851,7 @@ SUBROUTINE h5tbwrite_field_index_f_int(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_INT_C'::h5tbwrite_field_index_int_c
!DEC$ENDIF
@@ -893,7 +903,7 @@ SUBROUTINE h5tbwrite_field_index_f_float(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbwrite_field_index_f_float
!DEC$endif
!
@@ -913,6 +923,7 @@ SUBROUTINE h5tbwrite_field_index_f_float(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_FL_C'::h5tbwrite_field_index_fl_c
!DEC$ENDIF
@@ -966,7 +977,7 @@ SUBROUTINE h5tbwrite_field_index_f_double(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbwrite_field_index_f_double
!DEC$endif
!
@@ -986,6 +997,7 @@ SUBROUTINE h5tbwrite_field_index_f_double(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_DL_C'::h5tbwrite_field_index_dl_c
!DEC$ENDIF
@@ -1037,7 +1049,7 @@ SUBROUTINE h5tbwrite_field_index_f_string(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbwrite_field_index_f_string
!DEC$endif
!
@@ -1057,6 +1069,7 @@ SUBROUTINE h5tbwrite_field_index_f_string(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_ST_C'::h5tbwrite_field_index_st_c
!DEC$ENDIF
@@ -1109,7 +1122,7 @@ SUBROUTINE h5tbread_field_index_f_int(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport ::h5tbread_field_index_f_int
!DEC$endif
!
@@ -1129,6 +1142,7 @@ SUBROUTINE h5tbread_field_index_f_int(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_INT_C'::h5tbread_field_index_int_c
!DEC$ENDIF
@@ -1180,7 +1194,7 @@ SUBROUTINE h5tbread_field_index_f_float(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbread_field_index_f_float
!DEC$endif
!
@@ -1200,6 +1214,7 @@ SUBROUTINE h5tbread_field_index_f_float(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_FL_C'::h5tbread_field_index_fl_c
!DEC$ENDIF
@@ -1251,7 +1266,7 @@ SUBROUTINE h5tbread_field_index_f_double(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbread_field_index_f_double
!DEC$endif
!
@@ -1271,6 +1286,7 @@ SUBROUTINE h5tbread_field_index_f_double(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_DL_C'::h5tbread_field_index_dl_c
!DEC$ENDIF
@@ -1322,7 +1338,7 @@ SUBROUTINE h5tbread_field_index_f_string(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbread_field_index_f_string
!DEC$endif
!
@@ -1342,6 +1358,7 @@ SUBROUTINE h5tbread_field_index_f_string(loc_id,&
start,nrecords,type_size,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_ST_C'::h5tbread_field_index_st_c
!DEC$ENDIF
@@ -1392,7 +1409,7 @@ SUBROUTINE h5tbinsert_field_f_int(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbinsert_field_f_int
!DEC$endif
!
@@ -1413,6 +1430,7 @@ SUBROUTINE h5tbinsert_field_f_int(loc_id,&
field_type,field_index,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_INT_C'::h5tbinsert_field_int_c
!DEC$ENDIF
@@ -1465,7 +1483,7 @@ SUBROUTINE h5tbinsert_field_f_float(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbinsert_field_f_float
!DEC$endif
!
@@ -1486,6 +1504,7 @@ SUBROUTINE h5tbinsert_field_f_float(loc_id,&
field_type,field_index,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_FL_C'::h5tbinsert_field_fl_c
!DEC$ENDIF
@@ -1538,7 +1557,7 @@ SUBROUTINE h5tbinsert_field_f_double(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbinsert_field_f_double
!DEC$endif
!
@@ -1559,6 +1578,7 @@ SUBROUTINE h5tbinsert_field_f_double(loc_id,&
field_type,field_index,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_DL_C'::h5tbinsert_field_dl_c
!DEC$ENDIF
@@ -1612,7 +1632,7 @@ SUBROUTINE h5tbinsert_field_f_string(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbinsert_field_f_string
!DEC$endif
!
@@ -1633,6 +1653,7 @@ SUBROUTINE h5tbinsert_field_f_string(loc_id,&
field_type,field_index,buf)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_ST_C'::h5tbinsert_field_st_c
!DEC$ENDIF
@@ -1683,7 +1704,7 @@ SUBROUTINE h5tbdelete_field_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbdelete_field_f
!DEC$endif
!
@@ -1700,6 +1721,7 @@ SUBROUTINE h5tbdelete_field_f(loc_id,&
INTEGER FUNCTION h5tbdelete_field_c(loc_id,namelen,dset_name,namelen1,field_name)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBDELETE_FIELD_C'::h5tbdelete_field_c
!DEC$ENDIF
@@ -1749,7 +1771,7 @@ SUBROUTINE h5tbget_table_info_f(loc_id,&
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbget_table_info_f
!DEC$endif
!
@@ -1764,6 +1786,7 @@ SUBROUTINE h5tbget_table_info_f(loc_id,&
INTERFACE
INTEGER FUNCTION h5tbget_table_info_c(loc_id,namelen,dset_name,nfields,nrecords)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBGET_TABLE_INFO_C'::h5tbget_table_info_c
!DEC$ENDIF
@@ -1813,7 +1836,7 @@ SUBROUTINE h5tbget_field_info_f(loc_id,&
IMPLICIT NONE
!
!This definition is needed for Windows DLLs
-!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$if defined(BUILD_HDF5_HL_DLL)
!DEC$attributes dllexport :: h5tbget_field_info_f
!DEC$endif
!
@@ -1837,6 +1860,7 @@ SUBROUTINE h5tbget_field_info_f(loc_id,&
field_sizes,field_offsets,type_size,namelen2, maxlen, field_names, c_maxlen_out)
USE h5global
+ IMPLICIT NONE
!DEC$IF DEFINED(HDF5F90_WINDOWS)
!DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBGET_FIELD_INFO_C'::h5tbget_field_info_c
!DEC$ENDIF
diff --git a/hl/fortran/src/Makefile.in b/hl/fortran/src/Makefile.in
index 5d4eaf2..6979867 100644
--- a/hl/fortran/src/Makefile.in
+++ b/hl/fortran/src/Makefile.in
@@ -108,7 +108,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl/fortran/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -509,7 +510,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
@@ -690,7 +690,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# After making changes, run bin/reconfigure to update other configure related
# files like Makefile.in.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 202
+LT_VERS_REVISION = 205
LT_VERS_AGE = 0
# Our main target, the high-level fortran library
diff --git a/hl/fortran/test/CMakeLists.txt b/hl/fortran/test/CMakeLists.txt
index 120d6a5..fcb0b8c 100644
--- a/hl/fortran/test/CMakeLists.txt
+++ b/hl/fortran/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_FORTRAN_TESTS C CXX Fortran)
#-----------------------------------------------------------------------------
diff --git a/hl/fortran/test/Makefile.in b/hl/fortran/test/Makefile.in
index 4a929a6..50b8780 100644
--- a/hl/fortran/test/Makefile.in
+++ b/hl/fortran/test/Makefile.in
@@ -107,7 +107,8 @@ check_PROGRAMS = $(am__EXEEXT_1)
TESTS = $(am__EXEEXT_1)
subdir = hl/fortran/test
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -500,7 +501,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt
index 9c9e3a9..f4d5a96 100644
--- a/hl/src/CMakeLists.txt
+++ b/hl/src/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_SRC)
#-----------------------------------------------------------------------------
diff --git a/hl/src/H5LT.c b/hl/src/H5LT.c
index ed725a3..9d6123b 100644
--- a/hl/src/H5LT.c
+++ b/hl/src/H5LT.c
@@ -1981,7 +1981,8 @@ find_attr(hid_t loc_id, const char *name, const H5A_info_t *ainfo,
* cause the iterator to immediately return that positive value,
* indicating short-circuit success
*/
- if(HDstrncmp(name, (char *)op_data, HDstrlen((char *)op_data)) == 0)
+
+ if(HDstrncmp(name, (char *)op_data, MAX(HDstrlen((char *)op_data),HDstrlen(name))) == 0)
ret = H5_ITER_STOP;
return ret;
diff --git a/hl/src/Makefile.in b/hl/src/Makefile.in
index 0ac1592..a848280 100644
--- a/hl/src/Makefile.in
+++ b/hl/src/Makefile.in
@@ -105,7 +105,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -490,7 +491,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
@@ -671,7 +671,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# After making changes, run bin/reconfigure to update other configure related
# files like Makefile.in.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 202
+LT_VERS_REVISION = 205
LT_VERS_AGE = 0
# This library is our main target.
diff --git a/hl/src/hdf5_hl.h b/hl/src/hdf5_hl.h
index e9e3bf1..6c363f1 100644
--- a/hl/src/hdf5_hl.h
+++ b/hl/src/hdf5_hl.h
@@ -21,7 +21,7 @@
#ifndef _HDF5_HL_H
#define _HDF5_HL_H
-
+#include "hdf5.h" /* hdf5 main library */
#include "H5DOpublic.h" /* dataset optimization */
#include "H5DSpublic.h" /* dimension scales */
#include "H5LTpublic.h" /* lite */
diff --git a/hl/test/CMakeLists.txt b/hl/test/CMakeLists.txt
index 545210b..28c716c 100644
--- a/hl/test/CMakeLists.txt
+++ b/hl/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_TEST)
# --------------------------------------------------------------------
# Notes: When creating unit test executables they should be prefixed
diff --git a/hl/test/Makefile.in b/hl/test/Makefile.in
index a002482..e0ce927 100644
--- a/hl/test/Makefile.in
+++ b/hl/test/Makefile.in
@@ -107,7 +107,8 @@ check_PROGRAMS = $(am__EXEEXT_1)
TESTS = $(am__EXEEXT_1)
subdir = hl/test
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -527,7 +528,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/test/dectris_hl_perf.c b/hl/test/dectris_hl_perf.c
index a3e382a..d62926a 100644
--- a/hl/test/dectris_hl_perf.c
+++ b/hl/test/dectris_hl_perf.c
@@ -18,7 +18,6 @@
*
*/
-#include "hdf5.h"
#include "hdf5_hl.h"
#include <zlib.h>
#include <math.h>
diff --git a/hl/test/test_lite.c b/hl/test/test_lite.c
index d61d6cf..19d3759 100644
--- a/hl/test/test_lite.c
+++ b/hl/test/test_lite.c
@@ -36,10 +36,12 @@
#define DIM 6
+#define ATTR_NAME_SUB "att"
#define ATTR1_NAME "attr string"
#define ATTR2_NAME "attr char"
#define ATTR3_NAME "attr short"
#define ATTR4_NAME "attr int"
+#define ATTR_NAME_EXT "att int ext"
#define ATTR5_NAME "attr long"
#define ATTR6_NAME "attr uchar"
#define ATTR7_NAME "attr ushort"
@@ -646,6 +648,14 @@ static herr_t make_attributes( hid_t loc_id, const char* obj_name )
if ( H5LTset_attribute_int( loc_id, obj_name, ATTR4_NAME, attr_int_in, (size_t)5 ) < 0 )
return -1;
+ /* Set the attribute which is a substring of an existing attribute */
+ if ( H5LTset_attribute_int( loc_id, obj_name, ATTR_NAME_SUB, attr_int_in, (size_t)5 ) < 0 )
+ return -1;
+
+ /* Set the attribute which is an extension of an existing attribute */
+ if ( H5LTset_attribute_int( loc_id, obj_name, ATTR_NAME_EXT, attr_int_in, (size_t)5 ) < 0 )
+ return -1;
+
PASSED();
/*-------------------------------------------------------------------------
@@ -666,6 +676,26 @@ static herr_t make_attributes( hid_t loc_id, const char* obj_name )
}
}
+ if ( H5LTget_attribute_int( loc_id, obj_name, ATTR_NAME_SUB, attr_int_out ) < 0 )
+ return -1;
+
+ for (i = 0; i < 5; i++)
+ {
+ if ( attr_int_in[i] != attr_int_out[i] ) {
+ return -1;
+ }
+ }
+
+ if ( H5LTget_attribute_int( loc_id, obj_name, ATTR_NAME_EXT, attr_int_out ) < 0 )
+ return -1;
+
+ for (i = 0; i < 5; i++)
+ {
+ if ( attr_int_in[i] != attr_int_out[i] ) {
+ return -1;
+ }
+ }
+
/* Get the attribute */
if ( H5LTget_attribute( loc_id, obj_name, ATTR4_NAME, H5T_NATIVE_INT, attr_int_out ) < 0 )
return -1;
diff --git a/hl/tools/CMakeLists.txt b/hl/tools/CMakeLists.txt
index a41aecc..567b3da 100644
--- a/hl/tools/CMakeLists.txt
+++ b/hl/tools/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_HL_TOOLS)
#-----------------------------------------------------------------------------
diff --git a/hl/tools/Makefile.in b/hl/tools/Makefile.in
index a34e225..bb7f71a 100644
--- a/hl/tools/Makefile.in
+++ b/hl/tools/Makefile.in
@@ -101,7 +101,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = hl/tools
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -489,7 +490,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/hl/tools/gif2h5/Makefile.in b/hl/tools/gif2h5/Makefile.in
index 1c9be68..2317975 100644
--- a/hl/tools/gif2h5/Makefile.in
+++ b/hl/tools/gif2h5/Makefile.in
@@ -105,7 +105,8 @@ noinst_PROGRAMS = h52gifgentst$(EXEEXT)
TESTS = $(TEST_SCRIPT)
subdir = hl/tools/gif2h5
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -503,7 +504,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/m4/aclocal_cxx.m4 b/m4/aclocal_cxx.m4
new file mode 100644
index 0000000..b44ae82
--- /dev/null
+++ b/m4/aclocal_cxx.m4
@@ -0,0 +1,121 @@
+dnl -------------------------------------------------------------------------
+dnl -------------------------------------------------------------------------
+dnl
+dnl Copyright by the Board of Trustees of the University of Illinois.
+dnl All rights reserved.
+dnl
+dnl This file is part of HDF5. The full HDF5 copyright notice, including
+dnl terms governing use, modification, and redistribution, is contained in
+dnl the files COPYING and Copyright.html. COPYING can be found at the root
+dnl of the source code distribution tree; Copyright.html can be found at the
+dnl root level of an installed copy of the electronic HDF5 document set and
+dnl is linked from the top-level documents page. It can also be found at
+dnl http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have
+dnl access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu.
+dnl
+dnl -------------------------------------------------------------------------
+dnl -------------------------------------------------------------------------
+
+dnl *********************************
+dnl PURPOSE
+dnl Contains Macros for HDF5 C++
+dnl *********************************
+dnl
+dnl Special characteristics that have no autoconf counterpart but that
+dnl we need as part of the C++ support. To distinquish these, they
+dnl have a [PAC] prefix.
+
+dnl Checking if C++ needs old style header files in includes
+
+AC_DEFUN([PAC_PROG_CXX_HEADERS],[
+ AC_MSG_CHECKING([if $CXX needs old style header files in includes])
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+#include <iostream>
+
+int main(void) { return 0; }
+ ])],
+ [AC_MSG_RESULT([no])],
+ [AC_MSG_RESULT([yes])
+ CXXFLAGS="${CXXFLAGS} -DOLD_HEADER_FILENAME"
+ AM_CXXFLAGS="${AM_CXXFLAGS} -DOLD_HEADER_FILENAME"])
+])
+
+dnl Checking if ++ can handle namespaces
+
+AC_DEFUN([PAC_PROG_CXX_NAMESPACE],[
+ AC_MSG_CHECKING([if $CXX can handle namespaces])
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+namespace H5 {
+int fnord;
+}
+
+int main(void) {
+ using namespace H5;
+ fnord = 37;
+ return 0;
+}
+ ])], [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])
+ CXXFLAGS="${CXXFLAGS} -DH5_NO_NAMESPACE"
+ AM_CXXFLAGS="${AM_CXXFLAGS} -DH5_NO_NAMESPACE"])
+])
+
+dnl Checking if C++ supports std
+
+AC_DEFUN([PAC_PROG_CXX_STD],[
+ AC_MSG_CHECKING([if $CXX supports std])
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+#include <string>
+
+using namespace std;
+
+int main(void) {
+ string myString("testing namespace std");
+ return 0;
+}
+ ])], [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])
+ CXXFLAGS="${CXXFLAGS} -DH5_NO_STD"
+ AM_CXXFLAGS="${AM_CXXFLAGS} -DH5_NO_STD"])
+])
+
+dnl Checking if C++ has offsetof extension
+
+AC_DEFUN([PAC_PROG_CXX_OFFSETOF],[
+ AC_MSG_CHECKING([if $CXX has offsetof extension])
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([
+ #include <stdio.h>
+ #include <stddef.h>
+ ],[
+ struct index_st
+ {
+ unsigned char type;
+ unsigned char num;
+ unsigned int len;
+ };
+ typedef struct index_st index_t;
+ int x,y;
+ x = offsetof(struct index_st, len);
+ y = offsetof(index_t, num)
+ ])],[AC_MSG_RESULT([yes])
+ AC_DEFINE([CXX_HAVE_OFFSETOF], [1], [Define if C++ compiler recognizes offsetof])],
+ AC_MSG_RESULT([no]))
+])
+
+dnl Checking if C++ can handle static cast
+
+AC_DEFUN([PAC_PROG_CXX_STATIC_CAST],[
+ AC_MSG_CHECKING([if $CXX can handle static cast])
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+int main(void) {
+ float test_float;
+ int test_int;
+ test_float = 37.0;
+ test_int = static_cast <int> (test_float);
+ return 0;
+}
+ ])], [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])
+ CXXFLAGS="${CXXFLAGS} -DNO_STATIC_CAST"
+ AM_CXXFLAGS="${AM_CXXFLAGS} -DNO_STATIC_CAST"])
+])
diff --git a/m4/aclocal_fc.m4 b/m4/aclocal_fc.m4
new file mode 100644
index 0000000..cda2fee
--- /dev/null
+++ b/m4/aclocal_fc.m4
@@ -0,0 +1,283 @@
+dnl -------------------------------------------------------------------------
+dnl -------------------------------------------------------------------------
+dnl
+dnl Copyright by the Board of Trustees of the University of Illinois.
+dnl All rights reserved.
+dnl
+dnl This file is part of HDF5. The full HDF5 copyright notice, including
+dnl terms governing use, modification, and redistribution, is contained in
+dnl the files COPYING and Copyright.html. COPYING can be found at the root
+dnl of the source code distribution tree; Copyright.html can be found at the
+dnl root level of an installed copy of the electronic HDF5 document set and
+dnl is linked from the top-level documents page. It can also be found at
+dnl http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have
+dnl access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu.
+dnl
+dnl -------------------------------------------------------------------------
+dnl -------------------------------------------------------------------------
+
+dnl *********************************
+dnl PURPOSE
+dnl Contains Macros for HDF5 Fortran
+dnl *********************************
+dnl
+dnl Special characteristics that have no autoconf counterpart but that
+dnl we need as part of the C++ support. To distinquish these, they
+dnl have a [PAC] prefix.
+dnl
+dnl -------------------------------------------------------------------------
+dnl
+dnl PAC_FC_SEARCH_LIST - expands to a whitespace separated list of modern
+dnl fortran compilers for use with AC_PROG_FC that is more suitable for HPC
+dnl software packages
+AC_DEFUN([PAC_FC_SEARCH_LIST],
+ [gfortran ifort pgf90 pathf90 pathf95 xlf90 xlf95 xlf2003 f90 epcf90 f95 fort lf95 g95 ifc efc gfc])
+dnl
+dnl PAC_PROG_FC([COMPILERS])
+dnl
+dnl COMPILERS is a space separated list of Fortran compilers to search for.
+dnl
+dnl Compilers are ordered by
+dnl 1. F90, F95, F2003
+dnl 2. Good/tested native compilers, bad/untested native compilers
+dnl 3. Wrappers around f2c go last.
+dnl
+dnl frt is the Fujitsu Fortran compiler.
+dnl pgf90 are the Portland Group F90 compilers.
+dnl xlf/xlf90/xlf95/xlf2003 are IBM (AIX) F90/F95/F2003 compilers.
+dnl lf95 is the Lahey-Fujitsu compiler.
+dnl fl32 is the Microsoft Fortran "PowerStation" compiler.
+dnl epcf90 is the "Edinburgh Portable Compiler" F90.
+dnl fort is the Compaq Fortran 90 (now 95) compiler for Tru64 and Linux/Alpha.
+dnl pathf90 is the Pathscale Fortran 90 compiler
+dnl ifort is another name for the Intel f90 compiler
+dnl efc - An older Intel compiler (?)
+dnl ifc - An older Intel compiler
+dnl fc - A compiler on some unknown system. This has been removed because
+dnl it may also be the name of a command for something other than
+dnl the Fortran compiler (e.g., fc=file system check!)
+dnl gfortran - The GNU Fortran compiler (not the same as g95)
+dnl gfc - An alias for gfortran recommended in cygwin installations
+dnl NOTE: this macro suffers from a basically intractable "expanded before it
+dnl was required" problem when libtool is also used
+dnl [1] MPICH.org
+dnl
+
+dnl See if the fortran compiler supports the intrinsic function "SIZEOF"
+
+AC_DEFUN([PAC_PROG_FC_SIZEOF],[
+ HAVE_SIZEOF_FORTRAN="no"
+ AC_MSG_CHECKING([if Fortran compiler supports intrinsic SIZEOF])
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+ PROGRAM main
+ i = sizeof(x)
+ END PROGRAM
+ ])],[AC_MSG_RESULT([yes])
+ HAVE_SIZEOF_FORTRAN="yes"],
+ [AC_MSG_RESULT([no])])
+])
+
+dnl See if the fortran compiler supports the intrinsic function "C_SIZEOF"
+
+AC_DEFUN([PAC_PROG_FC_C_SIZEOF],[
+ HAVE_C_SIZEOF_FORTRAN="no"
+ AC_MSG_CHECKING([if Fortran compiler supports intrinsic C_SIZEOF])
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+ PROGRAM main
+ USE ISO_C_BINDING
+ INTEGER(C_INT) :: a
+ INTEGER(C_SIZE_T) :: result
+ result = C_SIZEOF(a)
+ END PROGRAM
+ ])], [AC_MSG_RESULT([yes])
+ HAVE_C_SIZEOF_FORTRAN="yes"],
+ [AC_MSG_RESULT([no])])
+])
+
+dnl See if the fortran compiler supports the intrinsic function "STORAGE_SIZE"
+
+AC_DEFUN([PAC_PROG_FC_STORAGE_SIZE],[
+ HAVE_STORAGE_SIZE_FORTRAN="no"
+ AC_MSG_CHECKING([if Fortran compiler supports intrinsic STORAGE_SIZE])
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
+ PROGRAM main
+ INTEGER :: a
+ INTEGER :: result
+ result = STORAGE_SIZE(a)
+ END PROGRAM
+ ])], [AC_MSG_RESULT([yes])
+ HAVE_STORAGE_SIZE_FORTRAN="yes"],
+ [AC_MSG_RESULT([no])])
+
+])
+
+dnl Check to see if -r8 was specified to determine if we need to
+dnl compile the DOUBLE PRECISION interfaces.
+
+AC_DEFUN([PAC_PROG_FC_DEFAULT_REALisDBLE],[
+ FORTRAN_DEFAULT_REALisDBLE="no"
+ AC_MSG_CHECKING([if Fortran default REAL is DOUBLE PRECISION])
+
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([
+ MODULE type_mod
+ INTERFACE h5t
+ MODULE PROCEDURE h5t_real
+ MODULE PROCEDURE h5t_dble
+ END INTERFACE
+ CONTAINS
+ SUBROUTINE h5t_real(r)
+ REAL :: r
+ END SUBROUTINE h5t_real
+ SUBROUTINE h5t_dble(d)
+ DOUBLE PRECISION :: d
+ END SUBROUTINE h5t_dble
+ END MODULE type_mod
+ PROGRAM main
+ USE type_mod
+ REAL :: r
+ DOUBLE PRECISION :: d
+ CALL h5t(r)
+ CALL h5t(d)
+ END PROGRAM main
+ ])], [AC_MSG_RESULT([no])],
+ [AC_MSG_RESULT([yes])
+ FORTRAN_DEFAULT_REALisDBLE="yes"])
+])
+
+dnl Checking if the compiler supports the required Fortran 2003 features and
+dnl disable Fortran 2003 if it does not.
+
+AC_DEFUN([PAC_PROG_FC_HAVE_F2003_REQUIREMENTS],[
+ AC_MSG_CHECKING([if Fortran compiler version compatible with Fortran 2003 HDF])
+dnl --------------------------------------------------------------------
+dnl Default for FORTRAN 2003 compliant compilers
+dnl
+ HAVE_FORTRAN_2003="no"
+ HAVE_F2003_REQUIREMENTS="no"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[
+
+ USE iso_c_binding
+ IMPLICIT NONE
+ TYPE(C_PTR) :: ptr
+ TYPE(C_FUNPTR) :: funptr
+ CHARACTER(LEN=80, KIND=c_char), TARGET :: ichr
+
+ ptr = C_LOC(ichr(1:1))
+
+ ])],[AC_MSG_RESULT([yes])
+ HAVE_F2003_REQUIREMENTS=[yes]],
+ [AC_MSG_RESULT([no])])
+])
+
+dnl -------------------------------------------------------------------------
+dnl AC_F9X_MODS()
+dnl
+dnl Check how F9X handles modules. This macro also checks which
+dnl command-line option to use to include the module once it's built.
+dnl
+AC_DEFUN([AC_F9X_MODS],
+[AC_MSG_CHECKING(what $FC does with modules)
+AC_LANG_PUSH(Fortran)
+
+test -d conftestdir || mkdir conftestdir
+cd conftestdir
+rm -rf *
+
+cat >conftest.$ac_ext <<EOF
+ module module
+ integer foo
+ end module module
+EOF
+
+eval $ac_compile
+modfiles=""
+F9XMODEXT=""
+
+for f in conftest.o module.mod MODULE.mod module.M MODULE.M; do
+ if test -f "$f" ; then
+ modfiles="$f"
+
+ case "$f" in
+ *.o) F9XMODEXT="o" ;;
+ *.mod) F9XMODEXT="mod" ;;
+ *.M) F9XMODEXT="M" ;;
+ esac
+ fi
+done
+
+echo $modfiles 6>&1
+if test "$modfiles" = file.o; then
+ echo $ac_n "checking whether $FC -em is saner""... $ac_c" 1>&6
+ OLD_FCFLAGS=$FCFLAGS
+ FCFLAGS="$FCFLAGS -em"
+ eval $ac_compile
+ modfiles=""
+ for f in file.o module.mod MODULE.mod module.M MODULE.M; do
+ test -f $f && modfiles="$f"
+ done
+ if test "$modfiles" = "file.o"; then
+ FCFLAGS=$OLD_FCFLAGS
+ echo no 6>&1
+ else
+ echo yes 6>&1
+ fi
+fi
+cd ..
+
+AC_MSG_CHECKING(how $FC finds modules)
+
+for flag in "-I" "-M" "-p"; do
+ cat >conftest.$ac_ext <<EOF
+ program conftest
+ use module
+ end program conftest
+EOF
+
+ ac_compile='${FC-f90} $FCFLAGS ${flag}conftestdir -c conftest.$ac_ext 1>&AS_MESSAGE_LOG_FD'
+
+ if AC_TRY_EVAL(ac_compile); then
+ F9XMODFLAG=$flag
+ break
+ fi
+done
+
+if test -n "$F9XMODFLAG"; then
+ echo $F9XMODFLAG 1>&6
+ FCFLAGS="$F9XMODFLAG. $FCFLAGS"
+else
+ echo unknown 1>&6
+fi
+AC_SUBST(F9XMODFLAG)
+AC_SUBST(F9XMODEXT)
+rm -rf conftest*
+AC_LANG_POP(Fortran)
+])
+
+dnl ----------------------
+dnl Parallel Test Programs
+dnl ----------------------
+
+dnl Try link a simple MPI program.
+
+AC_DEFUN([PAC_PROG_FC_MPI_CHECK],[
+
+dnl Change to the Fortran 90 language
+ AC_LANG_PUSH(Fortran)
+
+dnl Try link a simple MPI program.
+ AC_MSG_CHECKING([whether a simple MPI-IO Fortran program can be linked])
+ AC_LINK_IFELSE([
+ PROGRAM main
+ INCLUDE 'mpif.h'
+ INTEGER :: comm, amode, info, fh, ierror
+ CHARACTER(LEN=1) :: filename
+ CALL MPI_File_open( comm, filename, amode, info, fh, ierror)
+ END],
+ [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])
+ AC_MSG_ERROR([unable to link a simple MPI-IO Fortran program])])
+
+dnl Change to the C language
+ AC_LANG_POP(Fortran)
+])
+
diff --git a/release_docs/INSTALL_CMake.txt b/release_docs/INSTALL_CMake.txt
index b831071..248f03f 100644
--- a/release_docs/INSTALL_CMake.txt
+++ b/release_docs/INSTALL_CMake.txt
@@ -379,7 +379,7 @@ These five steps are described in detail below.
set (HDF5_BUILD_CPP_LIB ON CACHE BOOL "Build HDF5 C++ Library" FORCE)
set (HDF5_BUILD_EXAMPLES ON CACHE BOOL "Build HDF5 Library Examples" FORCE)
set (HDF5_BUILD_FORTRAN ON CACHE BOOL "Build FORTRAN support" FORCE)
- set (HDF5_ENABLE_F2003 OFF CACHE BOOL "Enable FORTRAN 2003 Standard" FORCE)
+ set (HDF5_ENABLE_F2003 ON CACHE BOOL "Enable FORTRAN 2003 Standard" FORCE)
set (HDF5_BUILD_HL_LIB ON CACHE BOOL "Build HIGH Level HDF5 Library" FORCE)
set (HDF5_BUILD_TOOLS ON CACHE BOOL "Build HDF5 Tools" FORCE)
set (HDF5_BUILD_GENERATORS OFF CACHE BOOL "Build Test Generators" FORCE)
@@ -552,7 +552,7 @@ HDF5_BUILD_FORTRAN "Build FORTRAN support" OFF
HDF5_BUILD_HL_LIB "Build HIGH Level HDF5 Library" OFF
HDF5_BUILD_TOOLS "Build HDF5 Tools" OFF
if (HDF5_BUILD_FORTRAN)
- HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" OFF
+ HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" ON
---------------- HDF5 Advanced Options ---------------------
HDF5_DISABLE_COMPILER_WARNINGS "Disable compiler warnings" OFF
@@ -632,7 +632,7 @@ platform configuration script.
# CTestScript.cmake file. Usage:
# "ctest -S HDF518LinuxCmake.cmake -C Release -O hdf518shared.log"
############################################################################
-cmake_minimum_required(VERSION 2.8.10 FATAL_ERROR)
+cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
# this is the location of the source hardcoded to hdf5-1.8.13
set(CTEST_SOURCE_NAME hdf5-1.8.13)
@@ -714,8 +714,8 @@ set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ALLOW_EXTERNAL_SUPPORT:STRING
#set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSZIP_LIBRARY:FILEPATH=some_location/lib/szlib.lib -DSZIP_INCLUDE_DIR:PATH=some_location/include")
#### fortran ####
-### enable Fortran 2003
-#set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ENABLE_F2003:BOOL=ON")
+### disable Fortran 2003
+#set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ENABLE_F2003:BOOL=OFF")
### disable Fortran
#set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_BUILD_FORTRAN:BOOL=OFF")
diff --git a/release_docs/INSTALL_Cygwin.txt b/release_docs/INSTALL_Cygwin.txt
index a56895a..2b72cac 100644
--- a/release_docs/INSTALL_Cygwin.txt
+++ b/release_docs/INSTALL_Cygwin.txt
@@ -71,8 +71,7 @@ Preconditions:
http://hdfgroup.org/HDF5/doc_resource/SZIP/index.html.
The latest supported public release of SZIP is available from
- ftp://ftp.hdfgroup.org/lib-external/szip/2.1. Binary distribution can be
- found under ftp://ftp.hdfgroup.org/lib-external/szip/2.1/bin/cygwin
+ ftp://ftp.hdfgroup.org/lib-external/szip/2.1.
2.3 Additional Utilities
diff --git a/release_docs/INSTALL_parallel b/release_docs/INSTALL_parallel
index 28068f1..2624b3b 100644
--- a/release_docs/INSTALL_parallel
+++ b/release_docs/INSTALL_parallel
@@ -191,7 +191,7 @@ echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
2.5.1 Building HDF5 for Hopper
------------------------------------------
The following steps are for building HDF5 for the Hopper compute
-nodes. They would probably work for other Cray XE6 systems but have
+nodes. They would probably work for other Cray systems but have
not been verified.
Obtain a copy from the HDF ftp server:
@@ -199,39 +199,32 @@ http://www.hdfgroup.org/ftp/HDF5/current/src/
(link might change, so always double check the HDF group website).
$ wget http://www.hdfgroup.org/ftp/HDF5/current/src/hdf5-x.x.x.tar.gz
-
unpack the tarball
-$ cd hdf5-x.x.x/
-$ CC=cc FC=ftn ./configure \
---prefix=/project/hdf5/hdf5 --enable-parallel --enable-fortran \
---disable-shared --disable-production
-$ make
+The entire build process should be done on a MOM node in an interactive allocation and on a file system accessible by all compute nodes.
+Request an interactive allocation with qsub:
+qsub -I -q debug -l mppwidth=8
-Run make check. make check should be run on the compute nodes, not the
-front end nodes. So using a PBS batch script, allocate 4 or more
-cores. Always consult with the machine's website on how to create PBS
-scripts and allocate nodes for your job. For Hopper, all the
-information can be found on:
-http://www.nersc.gov/systems/hopper-cray-xe6/
+- create a build directory build-hdf5:
+ mkdir build-hdf5; cd build-hdf5/
-save the PBS script into your HDF5 build directory. The PBS script
-should contain (besides the PBS node allocation requests)the
-following:
+- configure HDF5:
+ RUNSERIAL="aprun -q -n 1" RUNPARALLEL="aprun -q -n 6" FC=ftn CC=cc /path/to/source/configure --enable-fortran --enable-parallel --disable-shared
---------------------------------------------------------------
-cd $PBS_O_WORKDIR
+ RUNSERIAL and RUNPARALLEL tells the library how it should launch programs that are part of the build procedure.
-##set RUNSERIAL and RUNPARALLEL like this in the PBS script:
-export RUNPARALLEL="aprun -n 6"
-export RUNSERIAL="aprun -n 1"
+- Compile HDF5:
+ gmake
-##execute make check:
-make check
---------------------------------------------------------------
+- Check HDF5
+ gmake check
+
+- Install HDF5
+ gmake install
+
+The build will be in build-hdf5/hdf5/ (or whatever you specify in --prefix).
+To compile other HDF5 applications use the wrappers created by the build (build-hdf5/hdf5/bin/h5pcc or h5fc)
-Once the job runs and all is well, install the binary:
-$ make install
2.5.2 Hopper known issues
------------------------------
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt
index 097685e..23b2000 100644
--- a/release_docs/RELEASE.txt
+++ b/release_docs/RELEASE.txt
@@ -1,4 +1,4 @@
-HDF5 version 1.9.212 currently under development
+HDF5 version 1.9.215 currently under development
================================================================================
@@ -1216,23 +1216,23 @@ Supported Platforms
(emu) Sun Fortran 95 8.6 SunOS_sparc
Sun C++ 5.12 SunOS_sparc
- Windows 7 Visual Studio 2008 w/ Intel Fortran 14 (cmake)
+ Windows 7 Visual Studio 2008 (cmake)
Visual Studio 2010 w/ Intel Fortran 14 (cmake)
- Visual Studio 2012 w/ Intel Fortran 14 (cmake)
- Visual Studio 2013 w/ Intel Fortran 14 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.32(0.274/5/3) gcc(4.8.3) compiler and gfortran)
+ Visual Studio 2012 w/ Intel Fortran 15 (cmake)
+ Visual Studio 2013 w/ Intel Fortran 15 (cmake)
+ Cygwin(CYGWIN_NT-6.1 1.7.34(0.285/5/3) gcc(4.9.2) compiler and gfortran)
(cmake and autotools)
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 14 (cmake)
+ Windows 7 x64 Visual Studio 2008 (cmake)
Visual Studio 2010 w/ Intel Fortran 14 (cmake)
- Visual Studio 2012 w/ Intel Fortran 14 (cmake)
- Visual Studio 2013 w/ Intel Fortran 14 (cmake)
+ Visual Studio 2012 w/ Intel Fortran 15 (cmake)
+ Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Windows 8.1 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
- Visual Studio 2013 w/ Intel Fortran 14 (cmake)
+ Windows 8.1 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
+ Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
- Visual Studio 2013 w/ Intel Fortran 14 (cmake)
+ Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
+ Visual Studio 2013 w/ Intel Fortran 15 (cmake)
Mac OS X Lion 10.7.3 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 4.2.1
32- and 64-bit g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 4.2.1
diff --git a/release_docs/USING_HDF5_CMake.txt b/release_docs/USING_HDF5_CMake.txt
index 6195dc3..ae62ac9 100644
--- a/release_docs/USING_HDF5_CMake.txt
+++ b/release_docs/USING_HDF5_CMake.txt
@@ -179,7 +179,7 @@ Create a CMakeLists.txt file at the source root. Include the
following text in the file:
##########################################################
-cmake_minimum_required (VERSION 2.8.12)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5MyApp C CXX)
FIND_PACKAGE (HDF5 NAMES hdf5)
@@ -232,7 +232,7 @@ ctest
# where hdf518Examples is the source folder relative to the location of these scripts
############################################################################
-cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
+cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
set(CTEST_DASHBOARD_ROOT ${CTEST_SCRIPT_DIRECTORY})
set(CTEST_SOURCE_NAME ${CTEST_SCRIPT_ARG})
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 1ff03d1..b852cc3 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_SRC C CXX)
#-----------------------------------------------------------------------------
@@ -878,8 +878,8 @@ set_target_properties (${HDF5_LIB_TARGET} PROPERTIES
option (HDF5_ENABLE_DEBUG_APIS "Turn on debugging in all packages" OFF)
if (HDF5_ENABLE_DEBUG_APIS)
set_target_properties (${HDF5_LIB_TARGET} PROPERTIES
- COMPILE_DEFINITIONS
- "H5Z_DEBUG;H5VM_DEBUG;H5T_DEBUG;H5S_DEBUG;H5P_DEBUG;H5O_DEBUG;H5MM_DEBUG;H5MF_DEBUG;H5I_DEBUG;H5HL_DEBUG;H5HG_DEBUG;H5G_DEBUG;H5F_DEBUG;H5E_DEBUG;H5D_DEBUG;H5B_DEBUG;H5AC_DEBUG"
+ COMPILE_DEFINITIONS
+ "H5Z_DEBUG;H5VM_DEBUG;H5T_DEBUG;H5S_DEBUG;H5P_DEBUG;H5O_DEBUG;H5MM_DEBUG;H5MF_DEBUG;H5I_DEBUG;H5HL_DEBUG;H5HG_DEBUG;H5G_DEBUG;H5F_DEBUG;H5E_DEBUG;H5D_DEBUG;H5B_DEBUG;H5AC_DEBUG"
)
endif (HDF5_ENABLE_DEBUG_APIS)
diff --git a/src/H5.c b/src/H5.c
index af8b668..52dc566 100644
--- a/src/H5.c
+++ b/src/H5.c
@@ -52,7 +52,9 @@
/* Local Prototypes */
/********************/
static void H5_debug_mask(const char*);
-
+#ifdef H5_HAVE_PARALLEL
+static int H5_mpi_delete_cb(MPI_Comm comm, int keyval, void *attr_val, int *flag);
+#endif /*H5_HAVE_PARALLEL*/
/*********************/
/* Package Variables */
@@ -109,6 +111,43 @@ H5_init_library(void)
herr_t ret_value = SUCCEED;
FUNC_ENTER_NOAPI(FAIL)
+
+#ifdef H5_HAVE_PARALLEL
+ {
+ int mpi_initialized;
+ int mpi_code;
+
+ MPI_Initialized(&mpi_initialized);
+
+#ifdef H5_HAVE_MPE
+ /* Initialize MPE instrumentation library. */
+ if (!H5_MPEinit_g)
+ {
+ int mpe_code;
+ if (mpi_initialized){
+ mpe_code = MPE_Init_log();
+ HDassert(mpe_code >=0);
+ H5_MPEinit_g = TRUE;
+ }
+ }
+#endif /*H5_HAVE_MPE*/
+
+ /* add an attribute on MPI_COMM_SELF to call H5_term_library
+ when it is destroyed, i.e. on MPI_Finalize */
+ if (mpi_initialized) {
+ int key_val;
+
+ if(MPI_SUCCESS != (mpi_code = MPI_Comm_create_keyval(MPI_NULL_COPY_FN,
+ (MPI_Comm_delete_attr_function *)H5_mpi_delete_cb,
+ &key_val, NULL)))
+ HMPI_GOTO_ERROR(FAIL, "MPI_Comm_create_keyval failed", mpi_code)
+
+ if(MPI_SUCCESS != (mpi_code = MPI_Comm_set_attr(MPI_COMM_SELF, key_val, NULL)))
+ HMPI_GOTO_ERROR(FAIL, "MPI_Comm_set_attr failed", mpi_code)
+ }
+ }
+#endif /*H5_HAVE_PARALLEL*/
+
/*
* Make sure the package information is updated.
*/
@@ -132,24 +171,6 @@ H5_init_library(void)
H5_debug_g.pkg[H5_PKG_V].name = "v";
H5_debug_g.pkg[H5_PKG_Z].name = "z";
-#ifdef H5_HAVE_MPE
- /* Initialize MPE instrumentation library. May need to move this
- * up earlier if any of the above initialization involves using
- * the instrumentation code.
- */
- if (!H5_MPEinit_g)
- {
- int mpe_code;
- int mpi_initialized;
- MPI_Initialized(&mpi_initialized);
- if (mpi_initialized){
- mpe_code = MPE_Init_log();
- HDassert(mpe_code >=0);
- H5_MPEinit_g = TRUE;
- }
- }
-#endif
-
/*
* Install atexit() library cleanup routines unless the H5dont_atexit()
* has been called. Once we add something to the atexit() list it stays
@@ -580,6 +601,27 @@ H5_debug_mask(const char *s)
}
} /* end H5_debug_mask() */
+#ifdef H5_HAVE_PARALLEL
+
+/*-------------------------------------------------------------------------
+ * Function: H5_mpi_delete_cb
+ *
+ * Purpose: Callback attribute on MPI_COMM_SELF to terminate the HDF5
+ * library when the communicator is destroyed, i.e. on MPI_Finalize.
+ *
+ * Return: MPI_SUCCESS
+ *
+ * Programmer: Mohamad Chaarawi, February 2015
+ *
+ *-------------------------------------------------------------------------
+ */
+static int H5_mpi_delete_cb(MPI_Comm UNUSED comm, int UNUSED keyval, void UNUSED *attr_val, int UNUSED *flag)
+{
+ H5_term_library();
+ return MPI_SUCCESS;
+}
+#endif /*H5_HAVE_PARALLEL*/
+
/*-------------------------------------------------------------------------
* Function: H5get_libversion
diff --git a/src/H5B.c b/src/H5B.c
index 286f09d..621209f 100644
--- a/src/H5B.c
+++ b/src/H5B.c
@@ -510,22 +510,18 @@ H5B_split(H5F_t *f, hid_t dxpl_id, H5B_ins_ud_t *bt_ud, unsigned idx,
bt_ud->bt->nchildren = nleft;
/*
- * Update sibling pointers.
+ * Update other sibling pointers.
*/
split_bt_ud->bt->left = bt_ud->addr;
split_bt_ud->bt->right = bt_ud->bt->right;
if(H5F_addr_defined(bt_ud->bt->right)) {
- H5B_t *tmp_bt;
- H5B_cache_ud_t cache_udata2; /* User-data for metadata cache callback */
+ H5B_t *tmp_bt;
- cache_udata2.f = f;
- cache_udata2.type = shared->type;
- cache_udata2.rc_shared = bt_ud->bt->rc_shared;
- if(NULL == (tmp_bt = (H5B_t *)H5AC_protect(f, dxpl_id, H5AC_BT, bt_ud->bt->right, &cache_udata2, H5AC_WRITE)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, FAIL, "unable to load right sibling")
+ if(NULL == (tmp_bt = (H5B_t *)H5AC_protect(f, dxpl_id, H5AC_BT, bt_ud->bt->right, &cache_udata, H5AC_WRITE)))
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, FAIL, "unable to load right sibling")
- tmp_bt->left = split_bt_ud->addr;
+ tmp_bt->left = split_bt_ud->addr;
if(H5AC_unprotect(f, dxpl_id, H5AC_BT, bt_ud->bt->right, tmp_bt, H5AC__DIRTIED_FLAG) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree node")
@@ -539,6 +535,7 @@ done:
HDONE_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree node")
split_bt_ud->bt = NULL;
split_bt_ud->addr = HADDR_UNDEF;
+ split_bt_ud->cache_flags = H5AC__NO_FLAGS_SET;
} /* end if */
FUNC_LEAVE_NOAPI(ret_value)
@@ -559,8 +556,7 @@ done:
*-------------------------------------------------------------------------
*/
herr_t
-H5B_insert(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t addr,
- void *udata)
+H5B_insert(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t addr, void *udata)
{
/*
* These are defined this way to satisfy alignment constraints.
@@ -609,6 +605,8 @@ H5B_insert(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t addr,
&lt_key_changed, md_key, udata, rt_key, &rt_key_changed,
&split_bt_ud/*out*/)) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTINIT, FAIL, "unable to insert key")
+
+ /* Check if the root node split */
if(H5B_INS_NOOP == my_ins) {
HDassert(!split_bt_ud.bt);
HGOTO_DONE(SUCCEED)
@@ -633,7 +631,7 @@ H5B_insert(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t addr,
*/
H5_CHECK_OVERFLOW(shared->sizeof_rnode,size_t,hsize_t);
if(HADDR_UNDEF == (old_root_addr = H5MF_alloc(f, H5FD_MEM_BTREE, dxpl_id, (hsize_t)shared->sizeof_rnode)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, FAIL, "unable to allocate file space to move root")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, FAIL, "unable to allocate file space to move root")
/*
* Move the node to the new location
@@ -641,7 +639,7 @@ H5B_insert(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t addr,
/* Make a copy of the old root information */
if(NULL == (new_root_bt = H5B_copy(bt_ud.bt)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTCOPY, FAIL, "unable to copy old root");
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTCOPY, FAIL, "unable to copy old root")
/* Unprotect the old root so we can move it. Also force it to be marked
* dirty so it is written to the new location. */
@@ -651,7 +649,7 @@ H5B_insert(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t addr,
/* Move the location of the old root on the disk */
if(H5AC_move_entry(f, H5AC_BT, bt_ud.addr, old_root_addr) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTSPLIT, FAIL, "unable to move B-tree root node")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTSPLIT, FAIL, "unable to move B-tree root node")
bt_ud.addr = old_root_addr;
/* Update the split b-tree's left pointer to point to the new location */
@@ -769,7 +767,7 @@ H5B_insert_child(H5B_t *bt, unsigned *bt_flags, unsigned idx,
*bt_flags |= H5AC__DIRTIED_FLAG;
FUNC_LEAVE_NOAPI(SUCCEED)
-}
+} /* end H5B_insert_child() */
/*-------------------------------------------------------------------------
@@ -1046,6 +1044,10 @@ H5B_insert_helper(H5F_t *f, hid_t dxpl_id, H5B_ins_ud_t *bt_ud,
else
HDmemcpy(rt_key, H5B_NKEY(bt, shared, idx + 1), type->sizeof_nkey);
} /* end if */
+
+ /*
+ * Handle changes/additions to children
+ */
if(H5B_INS_CHANGE == my_ins) {
/*
* The insertion simply changed the address for the child.
@@ -1081,7 +1083,7 @@ H5B_insert_helper(H5F_t *f, hid_t dxpl_id, H5B_ins_ud_t *bt_ud,
/* Insert the child */
if(H5B_insert_child(tmp_bt, tmp_bt_flags_ptr, idx, new_child_bt_ud.addr, my_ins, md_key) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTINSERT, H5B_INS_ERROR, "can't insert child")
- }
+ } /* end else-if */
/*
* If this node split, return the mid key (the one that is shared
@@ -1113,7 +1115,7 @@ done:
HDONE_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, H5B_INS_ERROR, "unable to unprotect new child")
FUNC_LEAVE_NOAPI(ret_value)
-}
+} /* end H5B_insert_helper() */
/*-------------------------------------------------------------------------
@@ -1134,13 +1136,12 @@ static herr_t
H5B_iterate_helper(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t addr,
H5B_operator_t op, void *udata)
{
- H5B_t *bt = NULL; /* Pointer to current B-tree node */
+ H5B_t *bt = NULL; /* Pointer to current B-tree node */
H5UC_t *rc_shared; /* Ref-counted shared info */
H5B_shared_t *shared; /* Pointer to shared B-tree info */
H5B_cache_ud_t cache_udata; /* User-data for metadata cache callback */
- uint8_t *native = NULL; /* Array of keys in native format */
- haddr_t *child = NULL; /* Array of child pointers */
- herr_t ret_value; /* Return value */
+ unsigned u; /* Local index variable */
+ herr_t ret_value = H5_ITER_CONT; /* Return value */
FUNC_ENTER_NOAPI_NOINIT
@@ -1155,7 +1156,7 @@ H5B_iterate_helper(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t add
/* Get shared info for B-tree */
if(NULL == (rc_shared = (type->get_shared)(f, udata)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTGET, FAIL, "can't retrieve B-tree's shared ref. count object")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTGET, FAIL, "can't retrieve B-tree's shared ref. count object")
shared = (H5B_shared_t *)H5UC_GET_OBJ(rc_shared);
HDassert(shared);
@@ -1164,99 +1165,21 @@ H5B_iterate_helper(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t add
cache_udata.type = type;
cache_udata.rc_shared = rc_shared;
if(NULL == (bt = (H5B_t *)H5AC_protect(f, dxpl_id, H5AC_BT, addr, &cache_udata, H5AC_READ)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, H5_ITER_ERROR, "unable to load B-tree node")
-
- if(bt->level > 0) {
- haddr_t left_child = bt->child[0]; /* Address of left-most child in node */
-
- /* Release current node */
- if(H5AC_unprotect(f, dxpl_id, H5AC_BT, addr, bt, H5AC__NO_FLAGS_SET) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, H5_ITER_ERROR, "unable to release B-tree node")
- bt = NULL;
-
- /* Keep following the left-most child until we reach a leaf node. */
- if((ret_value = H5B_iterate_helper(f, dxpl_id, type, left_child, op, udata)) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTLIST, H5_ITER_ERROR, "unable to list B-tree node")
- } /* end if */
- else {
- unsigned nchildren; /* Number of child pointers */
- haddr_t next_addr; /* Address of next node to the right */
-
- /* Allocate space for a copy of the native records & child pointers */
- if(NULL == (native = H5FL_BLK_MALLOC(native_block, shared->sizeof_keys)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, H5_ITER_ERROR, "memory allocation failed for shared B-tree native records")
- if(NULL == (child = H5FL_SEQ_MALLOC(haddr_t, (size_t)shared->two_k)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, H5_ITER_ERROR, "memory allocation failed for shared B-tree child addresses")
-
- /* Cache information from this node */
- nchildren = bt->nchildren;
- next_addr = bt->right;
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, H5_ITER_ERROR, "unable to load B-tree node")
- /* Copy the native keys & child pointers into local arrays */
- HDmemcpy(native, bt->native, shared->sizeof_keys);
- HDmemcpy(child, bt->child, (nchildren * sizeof(haddr_t)));
-
- /* Release current node */
- if(H5AC_unprotect(f, dxpl_id, H5AC_BT, addr, bt, H5AC__NO_FLAGS_SET) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, H5_ITER_ERROR, "unable to release B-tree node")
- bt = NULL;
-
- /*
- * We've reached the left-most leaf. Now follow the right-sibling
- * pointer from leaf to leaf until we've processed all leaves.
- */
- ret_value = H5_ITER_CONT;
- while(ret_value == H5_ITER_CONT) {
- haddr_t *curr_child; /* Pointer to node's child addresses */
- uint8_t *curr_native; /* Pointer to node's native keys */
- unsigned u; /* Local index variable */
-
- /*
- * Perform the iteration operator, which might invoke an
- * application callback.
- */
- for(u = 0, curr_child = child, curr_native = native; u < nchildren && ret_value == H5_ITER_CONT; u++, curr_child++, curr_native += type->sizeof_nkey) {
- ret_value = (*op)(f, dxpl_id, curr_native, *curr_child, curr_native + type->sizeof_nkey, udata);
- if(ret_value < 0)
- HERROR(H5E_BTREE, H5E_CANTLIST, "iterator function failed");
- } /* end for */
-
- /* Check for continuing iteration */
- if(ret_value == H5_ITER_CONT) {
- /* Check for another node */
- if(H5F_addr_defined(next_addr)) {
- /* Protect the next node to the right */
- addr = next_addr;
- if(NULL == (bt = (H5B_t *)H5AC_protect(f, dxpl_id, H5AC_BT, addr, &cache_udata, H5AC_READ)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, H5_ITER_ERROR, "B-tree node")
-
- /* Cache information from this node */
- nchildren = bt->nchildren;
- next_addr = bt->right;
-
- /* Copy the native keys & child pointers into local arrays */
- HDmemcpy(native, bt->native, shared->sizeof_keys);
- HDmemcpy(child, bt->child, nchildren * sizeof(haddr_t));
-
- /* Unprotect node */
- if(H5AC_unprotect(f, dxpl_id, H5AC_BT, addr, bt, H5AC__NO_FLAGS_SET) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, H5_ITER_ERROR, "unable to release B-tree node")
- bt = NULL;
- } /* end if */
- else
- /* Exit loop */
- break;
- } /* end if */
- } /* end while */
- } /* end else */
+ /* Iterate over node's children */
+ for(u = 0; u < bt->nchildren && ret_value == H5_ITER_CONT; u++) {
+ if(bt->level > 0)
+ ret_value = H5B_iterate_helper(f, dxpl_id, type, bt->child[u], op, udata);
+ else
+ ret_value = (*op)(f, dxpl_id, H5B_NKEY(bt, shared, u), bt->child[u], H5B_NKEY(bt, shared, u + 1), udata);
+ if(ret_value < 0)
+ HERROR(H5E_BTREE, H5E_BADITER, "B-tree iteration failed");
+ } /* end for */
done:
if(bt && H5AC_unprotect(f, dxpl_id, H5AC_BT, addr, bt, H5AC__NO_FLAGS_SET) < 0)
HDONE_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, H5_ITER_ERROR, "unable to release B-tree node")
- if(native)
- native = H5FL_BLK_FREE(native_block, native);
- if(child)
- child = H5FL_SEQ_FREE(haddr_t, child);
FUNC_LEAVE_NOAPI(ret_value)
} /* end H5B_iterate_helper() */
@@ -1715,7 +1638,7 @@ H5B_delete(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t addr, void
/* Get shared info for B-tree */
if(NULL == (rc_shared = (type->get_shared)(f, udata)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTGET, FAIL, "can't retrieve B-tree's shared ref. count object")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTGET, FAIL, "can't retrieve B-tree's shared ref. count object")
shared = (H5B_shared_t *)H5UC_GET_OBJ(rc_shared);
HDassert(shared);
@@ -1724,7 +1647,7 @@ H5B_delete(H5F_t *f, hid_t dxpl_id, const H5B_class_t *type, haddr_t addr, void
cache_udata.type = type;
cache_udata.rc_shared = rc_shared;
if(NULL == (bt = (H5B_t *)H5AC_protect(f, dxpl_id, H5AC_BT, addr, &cache_udata, H5AC_WRITE)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, FAIL, "unable to load B-tree node")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, FAIL, "unable to load B-tree node")
/* Iterate over all children in tree, deleting them */
if(bt->level > 0) {
diff --git a/src/H5B2.c b/src/H5B2.c
index a2b218d..7d7345e 100644
--- a/src/H5B2.c
+++ b/src/H5B2.c
@@ -128,11 +128,11 @@ H5FL_DEFINE_STATIC(H5B2_t);
H5B2_t *
H5B2_create(H5F_t *f, hid_t dxpl_id, const H5B2_create_t *cparam, void *ctx_udata)
{
- H5B2_t *bt2 = NULL; /* Pointer to the B-tree */
- H5B2_hdr_t *hdr = NULL; /* Pointer to the B-tree header */
+ H5B2_t *bt2 = NULL; /* Pointer to the B-tree */
+ H5B2_hdr_t *hdr = NULL; /* Pointer to the B-tree header */
H5B2_hdr_cache_ud_t cache_udata; /* User-data for callback */
haddr_t hdr_addr; /* B-tree header address */
- H5B2_t *ret_value; /* Return value */
+ H5B2_t *ret_value; /* Return value */
FUNC_ENTER_NOAPI(NULL)
@@ -147,7 +147,7 @@ H5B2_create(H5F_t *f, hid_t dxpl_id, const H5B2_create_t *cparam, void *ctx_udat
/* Create shared v2 B-tree header */
if(HADDR_UNDEF == (hdr_addr = H5B2_hdr_create(f, dxpl_id, cparam, ctx_udata)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTINIT, NULL, "can't create v2 B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTINIT, NULL, "can't create v2 B-tree header")
/* Create v2 B-tree wrapper */
if(NULL == (bt2 = H5FL_MALLOC(H5B2_t)))
@@ -157,7 +157,7 @@ H5B2_create(H5F_t *f, hid_t dxpl_id, const H5B2_create_t *cparam, void *ctx_udat
cache_udata.f = f;
cache_udata.ctx_udata = ctx_udata;
if(NULL == (hdr = (H5B2_hdr_t *)H5AC_protect(f, dxpl_id, H5AC_BT2_HDR, hdr_addr, &cache_udata, H5AC_WRITE)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, NULL, "unable to load B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, NULL, "unable to load B-tree header")
/* Point v2 B-tree wrapper at header and bump it's ref count */
bt2->hdr = hdr;
@@ -166,7 +166,7 @@ H5B2_create(H5F_t *f, hid_t dxpl_id, const H5B2_create_t *cparam, void *ctx_udat
/* Increment # of files using this v2 B-tree header */
if(H5B2_hdr_fuse_incr(bt2->hdr) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTINC, NULL, "can't increment file reference count on shared v2 B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTINC, NULL, "can't increment file reference count on shared v2 B-tree header")
/* Set file pointer for this v2 B-tree open context */
bt2->f = f;
@@ -299,11 +299,11 @@ H5B2_insert(H5B2_t *bt2, hid_t dxpl_id, void *udata)
/* Attempt to insert record into B-tree */
if(hdr->depth > 0) {
- if(H5B2_insert_internal(hdr, dxpl_id, hdr->depth, NULL, &hdr->root, udata) < 0)
+ if(H5B2_insert_internal(hdr, dxpl_id, hdr->depth, NULL, &hdr->root, H5B2_POS_ROOT, udata) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTINSERT, FAIL, "unable to insert record into B-tree internal node")
} /* end if */
else {
- if(H5B2_insert_leaf(hdr, dxpl_id, &hdr->root, udata) < 0)
+ if(H5B2_insert_leaf(hdr, dxpl_id, &hdr->root, H5B2_POS_ROOT, udata) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTINSERT, FAIL, "unable to insert record into B-tree leaf node")
} /* end else */
@@ -420,12 +420,13 @@ htri_t
H5B2_find(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_found_t op,
void *op_data)
{
- H5B2_hdr_t *hdr; /* Pointer to the B-tree header */
+ H5B2_hdr_t *hdr; /* Pointer to the B-tree header */
H5B2_node_ptr_t curr_node_ptr; /* Node pointer info for current node */
unsigned depth; /* Current depth of the tree */
int cmp; /* Comparison value of records */
unsigned idx; /* Location of record which matches key */
- htri_t ret_value = TRUE; /* Return value */
+ H5B2_nodepos_t curr_pos; /* Position of the current node */
+ htri_t ret_value = TRUE; /* Return value */
FUNC_ENTER_NOAPI(FAIL)
@@ -441,16 +442,39 @@ H5B2_find(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_found_t op,
/* Make copy of the root node pointer to start search with */
curr_node_ptr = hdr->root;
- /* Current depth of the tree */
- depth = hdr->depth;
-
/* Check for empty tree */
if(curr_node_ptr.node_nrec == 0)
HGOTO_DONE(FALSE)
+ /* Check record against min & max records in tree, to attempt to quickly
+ * find candidates or avoid further searching.
+ */
+ if(hdr->min_native_rec != NULL) {
+ if((cmp = (hdr->cls->compare)(udata, hdr->min_native_rec)) < 0)
+ HGOTO_DONE(FALSE) /* Less than the least record--not found */
+ else if(cmp == 0) { /* Record is found */
+ if(op && (op)(hdr->min_native_rec, op_data) < 0)
+ HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "'found' callback failed for B-tree find operation")
+ HGOTO_DONE(TRUE)
+ } /* end if */
+ } /* end if */
+ if(hdr->max_native_rec != NULL) {
+ if((cmp = (hdr->cls->compare)(udata, hdr->max_native_rec)) > 0)
+ HGOTO_DONE(FALSE) /* Greater than the greatest record--not found */
+ else if(cmp == 0) { /* Record is found */
+ if(op && (op)(hdr->max_native_rec, op_data) < 0)
+ HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "'found' callback failed for B-tree find operation")
+ HGOTO_DONE(TRUE)
+ } /* end if */
+ } /* end if */
+
+ /* Current depth of the tree */
+ depth = hdr->depth;
+
/* Walk down B-tree to find record or leaf node where record is located */
cmp = -1;
- while(depth > 0 && cmp != 0) {
+ curr_pos = H5B2_POS_ROOT;
+ while(depth > 0) {
H5B2_internal_t *internal; /* Pointer to internal node in B-tree */
H5B2_node_ptr_t next_node_ptr; /* Node pointer info for next node */
@@ -467,6 +491,24 @@ H5B2_find(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_found_t op,
/* Get node pointer for next node to search */
next_node_ptr=internal->node_ptrs[idx];
+ /* Set the position of the next node */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ curr_pos = H5B2_POS_LEFT;
+ else
+ curr_pos = H5B2_POS_MIDDLE;
+ } /* end if */
+ else if(idx == internal->nrec) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ curr_pos = H5B2_POS_RIGHT;
+ else
+ curr_pos = H5B2_POS_MIDDLE;
+ } /* end if */
+ else
+ curr_pos = H5B2_POS_MIDDLE;
+ } /* end if */
+
/* Unlock current node */
if(H5AC_unprotect(hdr->f, dxpl_id, H5AC_BT2_INT, curr_node_ptr.addr, internal, H5AC__NO_FLAGS_SET) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree node")
@@ -523,6 +565,27 @@ H5B2_find(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_found_t op,
HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "'found' callback failed for B-tree find operation")
} /* end if */
+
+ /* Check for record being the min or max for the tree */
+ /* (Don't use 'else' for the idx check, to allow for root leaf node) */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->min_native_rec == NULL)
+ if(NULL == (hdr->min_native_rec = (uint8_t *)HDmalloc(hdr->cls->nrec_size)))
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, FAIL, "memory allocation failed for v2 B-tree min record info")
+ HDmemcpy(hdr->min_native_rec, H5B2_LEAF_NREC(leaf, hdr, idx), hdr->cls->nrec_size);
+ } /* end if */
+ } /* end if */
+ if(idx == (unsigned)(leaf->nrec - 1)) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->max_native_rec == NULL)
+ if(NULL == (hdr->max_native_rec = (uint8_t *)HDmalloc(hdr->cls->nrec_size)))
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, FAIL, "memory allocation failed for v2 B-tree max record info")
+ HDmemcpy(hdr->max_native_rec, H5B2_LEAF_NREC(leaf, hdr, idx), hdr->cls->nrec_size);
+ } /* end if */
+ } /* end if */
+ } /* end if */
} /* end else */
/* Unlock current node */
@@ -577,9 +640,6 @@ H5B2_index(H5B2_t *bt2, hid_t dxpl_id, H5_iter_order_t order, hsize_t idx,
/* Make copy of the root node pointer to start search with */
curr_node_ptr = hdr->root;
- /* Current depth of the tree */
- depth = hdr->depth;
-
/* Check for empty tree */
if(curr_node_ptr.node_nrec == 0)
HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "B-tree has no records")
@@ -588,6 +648,9 @@ H5B2_index(H5B2_t *bt2, hid_t dxpl_id, H5_iter_order_t order, hsize_t idx,
if(idx >= curr_node_ptr.all_nrec)
HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "B-tree doesn't have that many records")
+ /* Current depth of the tree */
+ depth = hdr->depth;
+
/* Check for reverse indexing and map requested index to appropriate forward index */
if(order == H5_ITER_DEC)
idx = curr_node_ptr.all_nrec - (idx + 1);
@@ -736,7 +799,7 @@ H5B2_remove(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_remove_t op,
hbool_t depth_decreased = FALSE; /* Flag to indicate whether the depth of the B-tree decreased */
if(H5B2_remove_internal(hdr, dxpl_id, &depth_decreased, NULL, hdr->depth,
- &(hdr->cache_info), NULL, &hdr->root, udata, op, op_data) < 0)
+ &(hdr->cache_info), NULL, H5B2_POS_ROOT, &hdr->root, udata, op, op_data) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTDELETE, FAIL, "unable to remove record from B-tree internal node")
/* Check for decreasing the depth of the B-tree */
@@ -754,7 +817,7 @@ H5B2_remove(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_remove_t op,
} /* end for */
} /* end if */
else {
- if(H5B2_remove_leaf(hdr, dxpl_id, &hdr->root, udata, op, op_data) < 0)
+ if(H5B2_remove_leaf(hdr, dxpl_id, &hdr->root, H5B2_POS_ROOT, udata, op, op_data) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTDELETE, FAIL, "unable to remove record from B-tree leaf node")
} /* end else */
@@ -818,7 +881,7 @@ H5B2_remove_by_idx(H5B2_t *bt2, hid_t dxpl_id, H5_iter_order_t order,
hbool_t depth_decreased = FALSE; /* Flag to indicate whether the depth of the B-tree decreased */
if(H5B2_remove_internal_by_idx(hdr, dxpl_id, &depth_decreased, NULL, hdr->depth,
- &(hdr->cache_info), NULL, &hdr->root, idx, op, op_data) < 0)
+ &(hdr->cache_info), NULL, &hdr->root, H5B2_POS_ROOT, idx, op, op_data) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTDELETE, FAIL, "unable to remove record from B-tree internal node")
/* Check for decreasing the depth of the B-tree */
@@ -836,7 +899,7 @@ H5B2_remove_by_idx(H5B2_t *bt2, hid_t dxpl_id, H5_iter_order_t order,
} /* end for */
} /* end if */
else {
- if(H5B2_remove_leaf_by_idx(hdr, dxpl_id, &hdr->root, (unsigned)idx, op, op_data) < 0)
+ if(H5B2_remove_leaf_by_idx(hdr, dxpl_id, &hdr->root, H5B2_POS_ROOT, (unsigned)idx, op, op_data) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTDELETE, FAIL, "unable to remove record from B-tree leaf node")
} /* end else */
@@ -970,6 +1033,7 @@ H5B2_modify(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_modify_t op,
{
H5B2_hdr_t *hdr; /* Pointer to the B-tree header */
H5B2_node_ptr_t curr_node_ptr; /* Node pointer info for current node */
+ H5B2_nodepos_t curr_pos; /* Position of current node */
unsigned depth; /* Current depth of the tree */
int cmp; /* Comparison value of records */
unsigned idx; /* Location of record which matches key */
@@ -990,16 +1054,17 @@ H5B2_modify(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_modify_t op,
/* Make copy of the root node pointer to start search with */
curr_node_ptr = hdr->root;
- /* Current depth of the tree */
- depth = hdr->depth;
-
/* Check for empty tree */
if(0 == curr_node_ptr.node_nrec)
HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "B-tree has no records")
+ /* Current depth of the tree */
+ depth = hdr->depth;
+
/* Walk down B-tree to find record or leaf node where record is located */
cmp = -1;
- while(depth > 0 && cmp != 0) {
+ curr_pos = H5B2_POS_ROOT;
+ while(depth > 0) {
unsigned internal_flags = H5AC__NO_FLAGS_SET;
H5B2_internal_t *internal; /* Pointer to internal node in B-tree */
H5B2_node_ptr_t next_node_ptr; /* Node pointer info for next node */
@@ -1017,6 +1082,24 @@ H5B2_modify(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_modify_t op,
/* Get node pointer for next node to search */
next_node_ptr = internal->node_ptrs[idx];
+ /* Set the position of the next node */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ curr_pos = H5B2_POS_LEFT;
+ else
+ curr_pos = H5B2_POS_MIDDLE;
+ } /* end if */
+ else if(idx == internal->nrec) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ curr_pos = H5B2_POS_RIGHT;
+ else
+ curr_pos = H5B2_POS_MIDDLE;
+ } /* end if */
+ else
+ curr_pos = H5B2_POS_MIDDLE;
+ } /* end if */
+
/* Unlock current node */
if(H5AC_unprotect(hdr->f, dxpl_id, H5AC_BT2_INT, curr_node_ptr.addr, internal, H5AC__NO_FLAGS_SET) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree node")
@@ -1092,6 +1175,27 @@ H5B2_modify(H5B2_t *bt2, hid_t dxpl_id, void *udata, H5B2_modify_t op,
HGOTO_ERROR(H5E_BTREE, H5E_CANTMODIFY, FAIL, "'modify' callback failed for B-tree find operation")
} /* end if */
+
+ /* Check for modified record being the min or max for the tree */
+ /* (Don't use 'else' for the idx check, to allow for root leaf node) */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->min_native_rec == NULL)
+ if(NULL == (hdr->min_native_rec = (uint8_t *)HDmalloc(hdr->cls->nrec_size)))
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, FAIL, "memory allocation failed for v2 B-tree min record info")
+ HDmemcpy(hdr->min_native_rec, H5B2_LEAF_NREC(leaf, hdr, idx), hdr->cls->nrec_size);
+ } /* end if */
+ } /* end if */
+ if(idx == (unsigned)(leaf->nrec - 1)) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->max_native_rec == NULL)
+ if(NULL == (hdr->max_native_rec = (uint8_t *)HDmalloc(hdr->cls->nrec_size)))
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, FAIL, "memory allocation failed for v2 B-tree max record info")
+ HDmemcpy(hdr->max_native_rec, H5B2_LEAF_NREC(leaf, hdr, idx), hdr->cls->nrec_size);
+ } /* end if */
+ } /* end if */
+ } /* end if */
} /* end else */
/* Mark the node as dirty if it changed */
diff --git a/src/H5B2cache.c b/src/H5B2cache.c
index 1554501..1e2a6a3 100644
--- a/src/H5B2cache.c
+++ b/src/H5B2cache.c
@@ -15,11 +15,11 @@
/*-------------------------------------------------------------------------
*
- * Created: H5B2cache.c
- * Jan 31 2005
- * Quincey Koziol <koziol@ncsa.uiuc.edu>
+ * Created: H5B2cache.c
+ * Jan 31 2005
+ * Quincey Koziol <koziol@hdfgroup.org>
*
- * Purpose: Implement v2 B-tree metadata cache methods.
+ * Purpose: Implement v2 B-tree metadata cache methods.
*
*-------------------------------------------------------------------------
*/
@@ -174,7 +174,7 @@ H5B2__cache_hdr_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, void *_udata)
/* Allocate new B-tree header and reset cache info */
if(NULL == (hdr = H5B2_hdr_alloc(udata->f)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, NULL, "allocation failed for B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, NULL, "allocation failed for B-tree header")
/* Wrap the local buffer for serialized header info */
if(NULL == (wb = H5WB_wrap(hdr_buf, sizeof(hdr_buf))))
@@ -186,7 +186,7 @@ H5B2__cache_hdr_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, void *_udata)
/* Read header from disk */
if(H5F_block_read(f, H5FD_MEM_BTREE, addr, hdr->hdr_size, dxpl_id, buf) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_READERROR, NULL, "can't read B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_READERROR, NULL, "can't read B-tree header")
/* Get temporary pointer to serialized header */
p = buf;
@@ -203,7 +203,7 @@ H5B2__cache_hdr_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, void *_udata)
/* B-tree class */
id = (H5B2_subid_t)*p++;
if(id >= H5B2_NUM_BTREE_ID)
- HGOTO_ERROR(H5E_BTREE, H5E_BADTYPE, NULL, "incorrect B-tree type")
+ HGOTO_ERROR(H5E_BTREE, H5E_BADTYPE, NULL, "incorrect B-tree type")
/* Node size (in bytes) */
UINT32DECODE(p, cparam.node_size);
@@ -234,12 +234,12 @@ H5B2__cache_hdr_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, void *_udata)
/* Verify checksum */
if(stored_chksum != computed_chksum)
- HGOTO_ERROR(H5E_BTREE, H5E_BADVALUE, NULL, "incorrect metadata checksum for v2 B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_BADVALUE, NULL, "incorrect metadata checksum for v2 B-tree header")
/* Initialize B-tree header info */
cparam.cls = H5B2_client_class_g[id];
if(H5B2_hdr_init(hdr, &cparam, udata->ctx_udata, depth) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTINIT, NULL, "can't initialize B-tree header info")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTINIT, NULL, "can't initialize B-tree header info")
/* Set the B-tree header's address */
hdr->addr = addr;
@@ -342,17 +342,17 @@ H5B2__cache_hdr_flush(H5F_t *f, hid_t dxpl_id, hbool_t destroy, haddr_t addr,
/* Metadata checksum */
UINT32ENCODE(p, metadata_chksum);
- /* Write the B-tree header. */
+ /* Write the B-tree header. */
HDassert((size_t)(p - buf) == hdr->hdr_size);
- if(H5F_block_write(f, H5FD_MEM_BTREE, addr, hdr->hdr_size, dxpl_id, buf) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTFLUSH, FAIL, "unable to save B-tree header to disk")
+ if(H5F_block_write(f, H5FD_MEM_BTREE, addr, hdr->hdr_size, dxpl_id, buf) < 0)
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTFLUSH, FAIL, "unable to save B-tree header to disk")
- hdr->cache_info.is_dirty = FALSE;
+ hdr->cache_info.is_dirty = FALSE;
} /* end if */
if(destroy)
if(H5B2__cache_hdr_dest(f, hdr) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTFREE, FAIL, "unable to destroy B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTFREE, FAIL, "unable to destroy B-tree header")
done:
/* Release resources */
@@ -445,17 +445,17 @@ done:
/*-------------------------------------------------------------------------
- * Function: H5B2__cache_hdr_size
+ * Function: H5B2__cache_hdr_size
*
- * Purpose: Compute the size in bytes of a B-tree header
- * on disk, and return it in *size_ptr. On failure,
- * the value of *size_ptr is undefined.
+ * Purpose: Compute the size in bytes of a B-tree header
+ * on disk, and return it in *size_ptr. On failure,
+ * the value of *size_ptr is undefined.
*
- * Return: Non-negative on success/Negative on failure
+ * Return: SUCCEED (Can't fail)
*
- * Programmer: Quincey Koziol
- * koziol@ncsa.uiuc.edu
- * Feb 1 2005
+ * Programmer: Quincey Koziol
+ * koziol@hdfgroup.org
+ * Feb 1 2005
*
*-------------------------------------------------------------------------
*/
@@ -466,6 +466,7 @@ H5B2__cache_hdr_size(const H5F_t UNUSED *f, const H5B2_hdr_t *hdr, size_t *size_
/* check arguments */
HDassert(f);
+ HDassert(hdr);
HDassert(size_ptr);
/* Set size value */
@@ -519,14 +520,14 @@ H5B2__cache_internal_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, void *_udata)
/* Increment ref. count on B-tree header */
if(H5B2_hdr_incr(udata->hdr) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTINC, NULL, "can't increment ref. count on B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTINC, NULL, "can't increment ref. count on B-tree header")
/* Share B-tree information */
internal->hdr = udata->hdr;
/* Read header from disk */
if(H5F_block_read(f, H5FD_MEM_BTREE, addr, udata->hdr->node_size, dxpl_id, udata->hdr->page) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_READERROR, NULL, "can't read B-tree internal node")
+ HGOTO_ERROR(H5E_BTREE, H5E_READERROR, NULL, "can't read B-tree internal node")
p = udata->hdr->page;
@@ -541,7 +542,7 @@ H5B2__cache_internal_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, void *_udata)
/* B-tree type */
if(*p++ != (uint8_t)udata->hdr->cls->id)
- HGOTO_ERROR(H5E_BTREE, H5E_BADTYPE, NULL, "incorrect B-tree type")
+ HGOTO_ERROR(H5E_BTREE, H5E_BADTYPE, NULL, "incorrect B-tree type")
/* Allocate space for the native keys in memory */
if(NULL == (internal->int_native = (uint8_t *)H5FL_FAC_MALLOC(udata->hdr->node_info[udata->depth].nat_rec_fac)))
@@ -593,7 +594,7 @@ H5B2__cache_internal_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, void *_udata)
/* Verify checksum */
if(stored_chksum != computed_chksum)
- HGOTO_ERROR(H5E_BTREE, H5E_BADVALUE, NULL, "incorrect metadata checksum for v2 internal node")
+ HGOTO_ERROR(H5E_BTREE, H5E_BADVALUE, NULL, "incorrect metadata checksum for v2 internal node")
/* Set return value */
ret_value = internal;
@@ -853,7 +854,7 @@ H5B2__cache_leaf_load(H5F_t UNUSED *f, hid_t dxpl_id, haddr_t addr, void *_udata
/* Allocate new leaf node and reset cache info */
if(NULL == (leaf = H5FL_MALLOC(H5B2_leaf_t)))
- HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed")
+ HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed")
HDmemset(&leaf->cache_info, 0, sizeof(H5AC_info_t));
/* Set the B-tree header's file context for this operation */
@@ -861,33 +862,33 @@ H5B2__cache_leaf_load(H5F_t UNUSED *f, hid_t dxpl_id, haddr_t addr, void *_udata
/* Increment ref. count on B-tree header */
if(H5B2_hdr_incr(udata->hdr) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTINC, NULL, "can't increment ref. count on B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTINC, NULL, "can't increment ref. count on B-tree header")
/* Share B-tree header information */
leaf->hdr = udata->hdr;
/* Read header from disk */
if(H5F_block_read(udata->f, H5FD_MEM_BTREE, addr, udata->hdr->node_size, dxpl_id, udata->hdr->page) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_READERROR, NULL, "can't read B-tree leaf node")
+ HGOTO_ERROR(H5E_BTREE, H5E_READERROR, NULL, "can't read B-tree leaf node")
p = udata->hdr->page;
/* Magic number */
if(HDmemcmp(p, H5B2_LEAF_MAGIC, (size_t)H5_SIZEOF_MAGIC))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTLOAD, NULL, "wrong B-tree leaf node signature")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTLOAD, NULL, "wrong B-tree leaf node signature")
p += H5_SIZEOF_MAGIC;
/* Version */
if(*p++ != H5B2_LEAF_VERSION)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTLOAD, NULL, "wrong B-tree leaf node version")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTLOAD, NULL, "wrong B-tree leaf node version")
/* B-tree type */
if(*p++ != (uint8_t)udata->hdr->cls->id)
- HGOTO_ERROR(H5E_BTREE, H5E_BADTYPE, NULL, "incorrect B-tree type")
+ HGOTO_ERROR(H5E_BTREE, H5E_BADTYPE, NULL, "incorrect B-tree type")
/* Allocate space for the native keys in memory */
if(NULL == (leaf->leaf_native = (uint8_t *)H5FL_FAC_MALLOC(udata->hdr->node_info[0].nat_rec_fac)))
- HGOTO_ERROR(H5E_BTREE, H5E_NOSPACE, NULL, "memory allocation failed for B-tree leaf native keys")
+ HGOTO_ERROR(H5E_BTREE, H5E_NOSPACE, NULL, "memory allocation failed for B-tree leaf native keys")
/* Set the number of records in the leaf */
leaf->nrec = udata->nrec;
diff --git a/src/H5B2hdr.c b/src/H5B2hdr.c
index 443a2e5..452a35d 100644
--- a/src/H5B2hdr.c
+++ b/src/H5B2hdr.c
@@ -166,7 +166,7 @@ HDmemset(hdr->page, 0, hdr->node_size);
hdr->node_info[0].cum_max_nrec = hdr->node_info[0].max_nrec;
hdr->node_info[0].cum_max_nrec_size = 0;
if(NULL == (hdr->node_info[0].nat_rec_fac = H5FL_fac_init(hdr->cls->nrec_size * hdr->node_info[0].max_nrec)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTINIT, FAIL, "can't create node native key block factory")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTINIT, FAIL, "can't create node native key block factory")
hdr->node_info[0].node_ptr_fac = NULL;
/* Allocate array of pointers to internal node native keys */
@@ -250,7 +250,7 @@ H5B2_hdr_alloc(H5F_t *f)
/* Allocate space for the shared information */
if(NULL == (hdr = H5FL_CALLOC(H5B2_hdr_t)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, NULL, "memory allocation failed for B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, NULL, "memory allocation failed for B-tree header")
/* Assign non-zero information */
hdr->f = f;
@@ -298,19 +298,19 @@ H5B2_hdr_create(H5F_t *f, hid_t dxpl_id, const H5B2_create_t *cparam,
/* Allocate v2 B-tree header */
if(NULL == (hdr = H5B2_hdr_alloc(f)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, HADDR_UNDEF, "allocation failed for B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, HADDR_UNDEF, "allocation failed for B-tree header")
/* Initialize shared B-tree info */
if(H5B2_hdr_init(hdr, cparam, ctx_udata, (uint16_t)0) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTINIT, HADDR_UNDEF, "can't create shared B-tree info")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTINIT, HADDR_UNDEF, "can't create shared B-tree info")
/* Allocate space for the header on disk */
if(HADDR_UNDEF == (hdr->addr = H5MF_alloc(f, H5FD_MEM_BTREE, dxpl_id, (hsize_t)hdr->hdr_size)))
- HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, HADDR_UNDEF, "file allocation failed for B-tree header")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, HADDR_UNDEF, "file allocation failed for B-tree header")
/* Cache the new B-tree node */
if(H5AC_insert_entry(f, dxpl_id, H5AC_BT2_HDR, hdr->addr, hdr, H5AC__NO_FLAGS_SET) < 0)
- HGOTO_ERROR(H5E_BTREE, H5E_CANTINSERT, HADDR_UNDEF, "can't add B-tree header to cache")
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTINSERT, HADDR_UNDEF, "can't add B-tree header to cache")
/* Set address of v2 B-tree header to return */
ret_value = hdr->addr;
@@ -398,15 +398,15 @@ done:
/*-------------------------------------------------------------------------
- * Function: H5B2_hdr_fuse_incr
+ * Function: H5B2_hdr_fuse_incr
*
- * Purpose: Increment file reference count on shared v2 B-tree header
+ * Purpose: Increment file reference count on shared v2 B-tree header
*
- * Return: Non-negative on success/Negative on failure
+ * Return: SUCCEED (Can't fail)
*
- * Programmer: Quincey Koziol
- * koziol@hdfgroup.org
- * Oct 27 2009
+ * Programmer: Quincey Koziol
+ * koziol@hdfgroup.org
+ * Oct 27 2009
*
*-------------------------------------------------------------------------
*/
@@ -426,15 +426,15 @@ H5B2_hdr_fuse_incr(H5B2_hdr_t *hdr)
/*-------------------------------------------------------------------------
- * Function: H5B2_hdr_fuse_decr
+ * Function: H5B2_hdr_fuse_decr
*
- * Purpose: Decrement file reference count on shared v2 B-tree header
+ * Purpose: Decrement file reference count on shared v2 B-tree header
*
- * Return: Non-negative on success/Negative on failure
+ * Return: The file's reference count after the decrement. (Can't fail)
*
- * Programmer: Quincey Koziol
- * koziol@hdfgroup.org
- * Oct 27 2009
+ * Programmer: Quincey Koziol
+ * koziol@hdfgroup.org
+ * Oct 27 2009
*
*-------------------------------------------------------------------------
*/
@@ -542,6 +542,16 @@ H5B2_hdr_free(H5B2_hdr_t *hdr)
hdr->node_info = H5FL_SEQ_FREE(H5B2_node_info_t, hdr->node_info);
} /* end if */
+ /* Release the min & max record info, if set */
+ if(hdr->min_native_rec) {
+ HDfree(hdr->min_native_rec);
+ hdr->min_native_rec = NULL;
+ } /* end if */
+ if(hdr->max_native_rec) {
+ HDfree(hdr->max_native_rec);
+ hdr->max_native_rec = NULL;
+ } /* end if */
+
/* Free B-tree header info */
hdr = H5FL_FREE(H5B2_hdr_t, hdr);
diff --git a/src/H5B2int.c b/src/H5B2int.c
index 630ff98..ef83e93 100644
--- a/src/H5B2int.c
+++ b/src/H5B2int.c
@@ -172,9 +172,9 @@ H5B2_locate_record(const H5B2_class_t *type, unsigned nrec, size_t *rec_off,
*-------------------------------------------------------------------------
*/
static herr_t
-H5B2_split1(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth, H5B2_node_ptr_t *curr_node_ptr,
- unsigned *parent_cache_info_flags_ptr, H5B2_internal_t *internal,
- unsigned *internal_flags_ptr, unsigned idx)
+H5B2_split1(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth,
+ H5B2_node_ptr_t *curr_node_ptr, unsigned *parent_cache_info_flags_ptr,
+ H5B2_internal_t *internal, unsigned *internal_flags_ptr, unsigned idx)
{
const H5AC_class_t *child_class; /* Pointer to child node's class info */
haddr_t left_addr, right_addr; /* Addresses of left & right child nodes */
@@ -214,7 +214,7 @@ H5B2_split1(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth, H5B2_node_ptr_t *cur
left_addr = internal->node_ptrs[idx].addr;
right_addr = internal->node_ptrs[idx + 1].addr;
- /* Protect both leafs */
+ /* Protect both leaves */
if(NULL == (left_int = H5B2_protect_internal(hdr, dxpl_id, left_addr, internal->node_ptrs[idx].node_nrec, (depth - 1), H5AC_WRITE)))
HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, FAIL, "unable to protect B-tree internal node")
if(NULL == (right_int = H5B2_protect_internal(hdr, dxpl_id, right_addr, internal->node_ptrs[idx + 1].node_nrec, (depth - 1), H5AC_WRITE)))
@@ -243,7 +243,7 @@ H5B2_split1(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth, H5B2_node_ptr_t *cur
left_addr = internal->node_ptrs[idx].addr;
right_addr = internal->node_ptrs[idx + 1].addr;
- /* Protect both leafs */
+ /* Protect both leaves */
if(NULL == (left_leaf = H5B2_protect_leaf(hdr, dxpl_id, left_addr, internal->node_ptrs[idx].node_nrec, H5AC_WRITE)))
HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, FAIL, "unable to protect B-tree leaf node")
if(NULL == (right_leaf = H5B2_protect_leaf(hdr, dxpl_id, right_addr, internal->node_ptrs[idx + 1].node_nrec, H5AC_WRITE)))
@@ -341,7 +341,7 @@ done:
HDONE_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree leaf node")
FUNC_LEAVE_NOAPI(ret_value)
-} /* end H5B2_split1 */
+} /* end H5B2_split1() */
/*-------------------------------------------------------------------------
@@ -646,7 +646,7 @@ done:
HDONE_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree child node")
FUNC_LEAVE_NOAPI(ret_value)
-} /* end H5B2_redistribute2 */
+} /* end H5B2_redistribute2() */
/*-------------------------------------------------------------------------
@@ -1033,7 +1033,7 @@ done:
HDONE_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree child node")
FUNC_LEAVE_NOAPI(ret_value)
-} /* end H5B2_redistribute3 */
+} /* end H5B2_redistribute3() */
/*-------------------------------------------------------------------------
@@ -1505,7 +1505,7 @@ done:
HDONE_ERROR(H5E_BTREE, H5E_CANTUNPROTECT, FAIL, "unable to release B-tree child node")
FUNC_LEAVE_NOAPI(ret_value)
-} /* end H5B2_swap_leaf */
+} /* end H5B2_swap_leaf() */
/*-------------------------------------------------------------------------
@@ -1523,7 +1523,7 @@ done:
*/
herr_t
H5B2_insert_leaf(H5B2_hdr_t *hdr, hid_t dxpl_id, H5B2_node_ptr_t *curr_node_ptr,
- void *udata)
+ H5B2_nodepos_t curr_pos, void *udata)
{
H5B2_leaf_t *leaf; /* Pointer to leaf node */
int cmp; /* Comparison value of records */
@@ -1574,6 +1574,27 @@ H5B2_insert_leaf(H5B2_hdr_t *hdr, hid_t dxpl_id, H5B2_node_ptr_t *curr_node_ptr,
/* Update record count for current node */
leaf->nrec++;
+ /* Check for new record being the min or max for the tree */
+ /* (Don't use 'else' for the idx check, to allow for root leaf node) */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->min_native_rec == NULL)
+ if(NULL == (hdr->min_native_rec = (uint8_t *)HDmalloc(hdr->cls->nrec_size)))
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, FAIL, "memory allocation failed for v2 B-tree min record info")
+ HDmemcpy(hdr->min_native_rec, H5B2_LEAF_NREC(leaf, hdr, idx), hdr->cls->nrec_size);
+ } /* end if */
+ } /* end if */
+ if(idx == (unsigned)(leaf->nrec - 1)) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->max_native_rec == NULL)
+ if(NULL == (hdr->max_native_rec = (uint8_t *)HDmalloc(hdr->cls->nrec_size)))
+ HGOTO_ERROR(H5E_BTREE, H5E_CANTALLOC, FAIL, "memory allocation failed for v2 B-tree max record info")
+ HDmemcpy(hdr->max_native_rec, H5B2_LEAF_NREC(leaf, hdr, idx), hdr->cls->nrec_size);
+ } /* end if */
+ } /* end if */
+ } /* end if */
+
done:
/* Release the B-tree leaf node (marked as dirty) */
if(leaf && H5AC_unprotect(hdr->f, dxpl_id, H5AC_BT2_LEAF, curr_node_ptr->addr, leaf, H5AC__DIRTIED_FLAG) < 0)
@@ -1599,11 +1620,12 @@ done:
herr_t
H5B2_insert_internal(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth,
unsigned *parent_cache_info_flags_ptr, H5B2_node_ptr_t *curr_node_ptr,
- void *udata)
+ H5B2_nodepos_t curr_pos, void *udata)
{
- H5B2_internal_t *internal; /* Pointer to internal node */
+ H5B2_internal_t *internal = NULL; /* Pointer to internal node */
unsigned internal_flags = H5AC__NO_FLAGS_SET;
unsigned idx; /* Location of record which matches key */
+ H5B2_nodepos_t next_pos = H5B2_POS_MIDDLE; /* Position of node */
herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_NOAPI_NOINIT
@@ -1618,7 +1640,7 @@ H5B2_insert_internal(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth,
if(NULL == (internal = H5B2_protect_internal(hdr, dxpl_id, curr_node_ptr->addr, curr_node_ptr->node_nrec, depth, H5AC_WRITE)))
HGOTO_ERROR(H5E_BTREE, H5E_CANTPROTECT, FAIL, "unable to protect B-tree internal node")
-/* Split or redistribute child node pointers, if necessary */
+ /* Split or redistribute child node pointers, if necessary */
{
int cmp; /* Comparison value of records */
unsigned retries; /* Number of times to attempt redistribution */
@@ -1691,13 +1713,25 @@ H5B2_insert_internal(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth,
} /* end while */
} /* end block */
+ /* Check if this node is left/right-most */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ next_pos = H5B2_POS_LEFT;
+ } /* end if */
+ else if(idx == internal->nrec) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ next_pos = H5B2_POS_RIGHT;
+ } /* end else */
+ } /* end if */
+
/* Attempt to insert node */
if(depth > 1) {
- if(H5B2_insert_internal(hdr, dxpl_id, (depth - 1), &internal_flags, &internal->node_ptrs[idx], udata) < 0)
+ if(H5B2_insert_internal(hdr, dxpl_id, (depth - 1), &internal_flags, &internal->node_ptrs[idx], next_pos, udata) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTINSERT, FAIL, "unable to insert record into B-tree internal node")
} /* end if */
else {
- if(H5B2_insert_leaf(hdr, dxpl_id, &internal->node_ptrs[idx], udata) < 0)
+ if(H5B2_insert_leaf(hdr, dxpl_id, &internal->node_ptrs[idx], next_pos, udata) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTINSERT, FAIL, "unable to insert record into B-tree leaf node")
} /* end else */
@@ -2074,7 +2108,7 @@ done:
*/
herr_t
H5B2_remove_leaf(H5B2_hdr_t *hdr, hid_t dxpl_id, H5B2_node_ptr_t *curr_node_ptr,
- void *udata, H5B2_remove_t op, void *op_data)
+ H5B2_nodepos_t curr_pos, void *udata, H5B2_remove_t op, void *op_data)
{
H5B2_leaf_t *leaf; /* Pointer to leaf node */
haddr_t leaf_addr = HADDR_UNDEF; /* Leaf address on disk */
@@ -2102,6 +2136,27 @@ H5B2_remove_leaf(H5B2_hdr_t *hdr, hid_t dxpl_id, H5B2_node_ptr_t *curr_node_ptr,
if(H5B2_locate_record(hdr->cls, leaf->nrec, hdr->nat_off, leaf->leaf_native, udata, &idx) != 0)
HGOTO_ERROR(H5E_BTREE, H5E_NOTFOUND, FAIL, "record is not in B-tree")
+ /* Check for invalidating the min/max record for the tree */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ /* (Don't use 'else' for the idx check, to allow for root leaf node) */
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->min_native_rec) {
+ HDfree(hdr->min_native_rec);
+ hdr->min_native_rec = NULL;
+ } /* end if */
+ } /* end if */
+ } /* end if */
+ if(idx == (unsigned)(leaf->nrec - 1)) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->max_native_rec) {
+ HDfree(hdr->max_native_rec);
+ hdr->max_native_rec = NULL;
+ } /* end if */
+ } /* end if */
+ } /* end if */
+ } /* end if */
+
/* Make 'remove' callback if there is one */
if(op)
if((op)(H5B2_LEAF_NREC(leaf, hdr, idx), op_data) < 0)
@@ -2154,13 +2209,14 @@ done:
herr_t
H5B2_remove_internal(H5B2_hdr_t *hdr, hid_t dxpl_id, hbool_t *depth_decreased,
void *swap_loc, unsigned depth, H5AC_info_t *parent_cache_info,
- unsigned *parent_cache_info_flags_ptr, H5B2_node_ptr_t *curr_node_ptr,
- void *udata, H5B2_remove_t op, void *op_data)
+ unsigned *parent_cache_info_flags_ptr, H5B2_nodepos_t curr_pos,
+ H5B2_node_ptr_t *curr_node_ptr, void *udata, H5B2_remove_t op, void *op_data)
{
H5AC_info_t *new_cache_info; /* Pointer to new cache info */
unsigned *new_cache_info_flags_ptr = NULL;
H5B2_node_ptr_t *new_node_ptr; /* Pointer to new node pointer */
H5B2_internal_t *internal; /* Pointer to internal node */
+ H5B2_nodepos_t next_pos = H5B2_POS_MIDDLE; /* Position of next node */
unsigned internal_flags = H5AC__NO_FLAGS_SET;
haddr_t internal_addr; /* Address of internal node */
size_t merge_nrec; /* Number of records to merge node at */
@@ -2211,6 +2267,9 @@ H5B2_remove_internal(H5B2_hdr_t *hdr, hid_t dxpl_id, hbool_t *depth_decreased,
/* Set flag to indicate root was collapsed */
collapsed_root = TRUE;
+
+ /* Indicate position of next node */
+ next_pos = H5B2_POS_ROOT;
} /* end if */
/* Merge or redistribute child node pointers, if necessary */
else {
@@ -2306,16 +2365,28 @@ H5B2_remove_internal(H5B2_hdr_t *hdr, hid_t dxpl_id, hbool_t *depth_decreased,
new_cache_info_flags_ptr = &internal_flags;
new_cache_info = &internal->cache_info;
new_node_ptr = &internal->node_ptrs[idx];
+
+ /* Indicate position of next node */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ next_pos = H5B2_POS_LEFT;
+ } /* end if */
+ else if(idx == internal->nrec) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ next_pos = H5B2_POS_RIGHT;
+ } /* end if */
+ } /* end if */
} /* end else */
/* Attempt to remove record from child node */
if(depth > 1) {
if(H5B2_remove_internal(hdr, dxpl_id, depth_decreased, swap_loc, depth - 1,
- new_cache_info, new_cache_info_flags_ptr, new_node_ptr, udata, op, op_data) < 0)
+ new_cache_info, new_cache_info_flags_ptr, next_pos, new_node_ptr, udata, op, op_data) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTDELETE, FAIL, "unable to remove record from B-tree internal node")
} /* end if */
else {
- if(H5B2_remove_leaf(hdr, dxpl_id, new_node_ptr, udata, op, op_data) < 0)
+ if(H5B2_remove_leaf(hdr, dxpl_id, new_node_ptr, next_pos, udata, op, op_data) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTDELETE, FAIL, "unable to remove record from B-tree leaf node")
} /* end else */
@@ -2355,8 +2426,8 @@ done:
*/
herr_t
H5B2_remove_leaf_by_idx(H5B2_hdr_t *hdr, hid_t dxpl_id,
- H5B2_node_ptr_t *curr_node_ptr, unsigned idx, H5B2_remove_t op,
- void *op_data)
+ H5B2_node_ptr_t *curr_node_ptr, H5B2_nodepos_t curr_pos,
+ unsigned idx, H5B2_remove_t op, void *op_data)
{
H5B2_leaf_t *leaf; /* Pointer to leaf node */
haddr_t leaf_addr = HADDR_UNDEF; /* Leaf address on disk */
@@ -2380,6 +2451,27 @@ H5B2_remove_leaf_by_idx(H5B2_hdr_t *hdr, hid_t dxpl_id,
HDassert(leaf->nrec == curr_node_ptr->node_nrec);
HDassert(idx < leaf->nrec);
+ /* Check for invalidating the min/max record for the tree */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ /* (Don't use 'else' for the idx check, to allow for root leaf node) */
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->min_native_rec) {
+ HDfree(hdr->min_native_rec);
+ hdr->min_native_rec = NULL;
+ } /* end if */
+ } /* end if */
+ } /* end if */
+ if(idx == (unsigned)(leaf->nrec - 1)) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos) {
+ if(hdr->max_native_rec) {
+ HDfree(hdr->max_native_rec);
+ hdr->max_native_rec = NULL;
+ } /* end if */
+ } /* end if */
+ } /* end if */
+ } /* end if */
+
/* Make 'remove' callback if there is one */
if(op)
if((op)(H5B2_LEAF_NREC(leaf, hdr, idx), op_data) < 0)
@@ -2434,13 +2526,14 @@ herr_t
H5B2_remove_internal_by_idx(H5B2_hdr_t *hdr, hid_t dxpl_id,
hbool_t *depth_decreased, void *swap_loc, unsigned depth,
H5AC_info_t *parent_cache_info, unsigned *parent_cache_info_flags_ptr,
- H5B2_node_ptr_t *curr_node_ptr, hsize_t n, H5B2_remove_t op,
- void *op_data)
+ H5B2_node_ptr_t *curr_node_ptr, H5B2_nodepos_t curr_pos, hsize_t n,
+ H5B2_remove_t op, void *op_data)
{
H5AC_info_t *new_cache_info; /* Pointer to new cache info */
unsigned *new_cache_info_flags_ptr = NULL;
H5B2_node_ptr_t *new_node_ptr; /* Pointer to new node pointer */
H5B2_internal_t *internal; /* Pointer to internal node */
+ H5B2_nodepos_t next_pos = H5B2_POS_MIDDLE; /* Position of next node */
unsigned internal_flags = H5AC__NO_FLAGS_SET;
haddr_t internal_addr; /* Address of internal node */
size_t merge_nrec; /* Number of records to merge node at */
@@ -2494,6 +2587,9 @@ H5B2_remove_internal_by_idx(H5B2_hdr_t *hdr, hid_t dxpl_id,
/* Set flag to indicate root was collapsed */
collapsed_root = TRUE;
+
+ /* Indicate position of next node */
+ next_pos = H5B2_POS_ROOT;
} /* end if */
/* Merge or redistribute child node pointers, if necessary */
else {
@@ -2641,16 +2737,28 @@ H5B2_remove_internal_by_idx(H5B2_hdr_t *hdr, hid_t dxpl_id,
new_cache_info_flags_ptr = &internal_flags;
new_cache_info = &internal->cache_info;
new_node_ptr = &internal->node_ptrs[idx];
+
+ /* Indicate position of next node */
+ if(H5B2_POS_MIDDLE != curr_pos) {
+ if(idx == 0) {
+ if(H5B2_POS_LEFT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ next_pos = H5B2_POS_LEFT;
+ } /* end if */
+ else if(idx == internal->nrec) {
+ if(H5B2_POS_RIGHT == curr_pos || H5B2_POS_ROOT == curr_pos)
+ next_pos = H5B2_POS_RIGHT;
+ } /* end if */
+ } /* end if */
} /* end else */
/* Attempt to remove record from child node */
if(depth > 1) {
if(H5B2_remove_internal_by_idx(hdr, dxpl_id, depth_decreased, swap_loc, depth - 1,
- new_cache_info, new_cache_info_flags_ptr, new_node_ptr, n, op, op_data) < 0)
+ new_cache_info, new_cache_info_flags_ptr, new_node_ptr, next_pos, n, op, op_data) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTDELETE, FAIL, "unable to remove record from B-tree internal node")
} /* end if */
else {
- if(H5B2_remove_leaf_by_idx(hdr, dxpl_id, new_node_ptr, (unsigned)n, op, op_data) < 0)
+ if(H5B2_remove_leaf_by_idx(hdr, dxpl_id, new_node_ptr, next_pos, (unsigned)n, op, op_data) < 0)
HGOTO_ERROR(H5E_BTREE, H5E_CANTDELETE, FAIL, "unable to remove record from B-tree leaf node")
} /* end else */
diff --git a/src/H5B2pkg.h b/src/H5B2pkg.h
index b820853..7a538bd 100644
--- a/src/H5B2pkg.h
+++ b/src/H5B2pkg.h
@@ -172,6 +172,8 @@ typedef struct H5B2_hdr_t {
uint8_t *page; /* Common disk page for I/O */
size_t *nat_off; /* Array of offsets of native records */
H5B2_node_info_t *node_info; /* Table of node info structs for current depth of B-tree */
+ uint8_t *min_native_rec; /* Pointer to minimum native record */
+ uint8_t *max_native_rec; /* Pointer to maximum native record */
/* Client information (not stored) */
const H5B2_class_t *cls; /* Class of B-tree client */
@@ -208,6 +210,14 @@ struct H5B2_t {
H5F_t *f; /* Pointer to file for v2 B-tree */
};
+/* Node position, for min/max determination */
+typedef enum H5B2_nodepos_t {
+ H5B2_POS_ROOT, /* Node is root (i.e. both right & left-most in tree) */
+ H5B2_POS_RIGHT, /* Node is right-most in tree, at a given depth */
+ H5B2_POS_LEFT, /* Node is left-most in tree, at a given depth */
+ H5B2_POS_MIDDLE /* Node is neither right or left-most in tree */
+} H5B2_nodepos_t;
+
/* Callback info for loading a free space header into the cache */
typedef struct H5B2_hdr_cache_ud_t {
H5F_t *f; /* File that v2 b-tree header is within */
@@ -304,9 +314,9 @@ H5_DLL herr_t H5B2_internal_free(H5B2_internal_t *i);
/* Routines for inserting records */
H5_DLL herr_t H5B2_insert_internal(H5B2_hdr_t *hdr, hid_t dxpl_id,
unsigned depth, unsigned *parent_cache_info_flags_ptr,
- H5B2_node_ptr_t *curr_node_ptr, void *udata);
+ H5B2_node_ptr_t *curr_node_ptr, H5B2_nodepos_t curr_pos, void *udata);
H5_DLL herr_t H5B2_insert_leaf(H5B2_hdr_t *hdr, hid_t dxpl_id,
- H5B2_node_ptr_t *curr_node_ptr, void *udata);
+ H5B2_node_ptr_t *curr_node_ptr, H5B2_nodepos_t curr_pos, void *udata);
/* Routines for iterating over nodes/records */
H5_DLL herr_t H5B2_iterate_node(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth,
@@ -326,19 +336,21 @@ H5_DLL herr_t H5B2_neighbor_leaf(H5B2_hdr_t *hdr, hid_t dxpl_id,
/* Routines for removing records */
H5_DLL herr_t H5B2_remove_internal(H5B2_hdr_t *hdr, hid_t dxpl_id,
- hbool_t *depth_decreased, void *swap_loc, unsigned depth, H5AC_info_t *parent_cache_info,
- hbool_t * parent_cache_info_dirtied_ptr, H5B2_node_ptr_t *curr_node_ptr, void *udata,
+ hbool_t *depth_decreased, void *swap_loc, unsigned depth,
+ H5AC_info_t *parent_cache_info, hbool_t * parent_cache_info_dirtied_ptr,
+ H5B2_nodepos_t curr_pos, H5B2_node_ptr_t *curr_node_ptr, void *udata,
H5B2_remove_t op, void *op_data);
H5_DLL herr_t H5B2_remove_leaf(H5B2_hdr_t *hdr, hid_t dxpl_id,
- H5B2_node_ptr_t *curr_node_ptr, void *udata, H5B2_remove_t op,
- void *op_data);
+ H5B2_node_ptr_t *curr_node_ptr, H5B2_nodepos_t curr_pos,
+ void *udata, H5B2_remove_t op, void *op_data);
H5_DLL herr_t H5B2_remove_internal_by_idx(H5B2_hdr_t *hdr, hid_t dxpl_id,
- hbool_t *depth_decreased, void *swap_loc, unsigned depth, H5AC_info_t *parent_cache_info,
- hbool_t * parent_cache_info_dirtied_ptr, H5B2_node_ptr_t *curr_node_ptr, hsize_t idx,
+ hbool_t *depth_decreased, void *swap_loc, unsigned depth,
+ H5AC_info_t *parent_cache_info, hbool_t * parent_cache_info_dirtied_ptr,
+ H5B2_node_ptr_t *curr_node_ptr, H5B2_nodepos_t curr_pos, hsize_t idx,
H5B2_remove_t op, void *op_data);
H5_DLL herr_t H5B2_remove_leaf_by_idx(H5B2_hdr_t *hdr, hid_t dxpl_id,
- H5B2_node_ptr_t *curr_node_ptr, unsigned idx, H5B2_remove_t op,
- void *op_data);
+ H5B2_node_ptr_t *curr_node_ptr, H5B2_nodepos_t curr_pos,
+ unsigned idx, H5B2_remove_t op, void *op_data);
/* Routines for deleting nodes */
H5_DLL herr_t H5B2_delete_node(H5B2_hdr_t *hdr, hid_t dxpl_id, unsigned depth,
diff --git a/src/H5B2stat.c b/src/H5B2stat.c
index 5e48a6f..5d159ed 100644
--- a/src/H5B2stat.c
+++ b/src/H5B2stat.c
@@ -13,10 +13,10 @@
* access to either file, you may request a copy from help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-/* Programmer: Quincey Koziol <koziol@ncsa.uiuc.edu>
+/* Programmer: Quincey Koziol <koziol@hdfgroup.org>
* Monday, March 6, 2006
*
- * Purpose: v2 B-tree metadata statistics functions.
+ * Purpose: v2 B-tree metadata statistics functions.
*
*/
@@ -24,15 +24,15 @@
/* Module Setup */
/****************/
-#define H5B2_PACKAGE /*suppress error about including H5B2pkg */
+#define H5B2_PACKAGE /* Suppress error about including H5B2pkg */
/***********/
/* Headers */
/***********/
-#include "H5private.h" /* Generic Functions */
-#include "H5B2pkg.h" /* v2 B-trees */
-#include "H5Eprivate.h" /* Error handling */
+#include "H5private.h" /* Generic Functions */
+#include "H5B2pkg.h" /* v2 B-trees */
+#include "H5Eprivate.h" /* Error handling */
/****************/
@@ -71,14 +71,13 @@
/*-------------------------------------------------------------------------
- * Function: H5B2_stat_info
+ * Function: H5B2_stat_info
*
- * Purpose: Retrieve metadata statistics for a v2 B-tree
+ * Purpose: Retrieve metadata statistics for a v2 B-tree
*
- * Return: Success: non-negative
- * Failure: negative
+ * Return: SUCCEED (Can't fail)
*
- * Programmer: Quincey Koziol
+ * Programmer: Quincey Koziol
* Monday, March 6, 2006
*
*-------------------------------------------------------------------------
@@ -105,7 +104,7 @@ H5B2_stat_info(H5B2_t *bt2, H5B2_stat_t *info)
* Purpose: Iterate over all the records in the B-tree, collecting
* storage info.
*
- * Return: non-negative on success, negative on error
+ * Return: SUCCEED/FAIL
*
* Programmer: Vailin Choi
* June 19 2007
@@ -115,7 +114,7 @@ H5B2_stat_info(H5B2_t *bt2, H5B2_stat_t *info)
herr_t
H5B2_size(H5B2_t *bt2, hid_t dxpl_id, hsize_t *btree_size)
{
- H5B2_hdr_t *hdr; /* Pointer to the B-tree header */
+ H5B2_hdr_t *hdr; /* Pointer to the B-tree header */
herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_NOAPI(FAIL)
diff --git a/src/H5Dbtree.c b/src/H5Dbtree.c
index 039ebdc..35c2afa 100644
--- a/src/H5Dbtree.c
+++ b/src/H5Dbtree.c
@@ -195,7 +195,7 @@ H5B_class_t H5B_BTREE[1] = {{
H5D__btree_remove, /*remove */
H5D__btree_decode_key, /*decode */
H5D__btree_encode_key, /*encode */
- H5D__btree_debug_key, /*debug */
+ H5D__btree_debug_key /*debug */
}};
@@ -228,7 +228,7 @@ H5D__btree_get_shared(const H5F_t UNUSED *f, const void *_udata)
HDassert(udata);
HDassert(udata->storage);
- HDassert(udata->storage->idx_type == H5D_CHUNK_BTREE);
+ HDassert(udata->storage->idx_type == H5D_CHUNK_IDX_BTREE);
HDassert(udata->storage->u.btree.shared);
/* Return the pointer to the ref-count object */
@@ -868,7 +868,7 @@ done:
static herr_t
H5D__btree_idx_create(const H5D_chk_idx_info_t *idx_info)
{
- H5D_chunk_common_ud_t udata; /* User data for B-tree callback */
+ H5D_chunk_common_ud_t udata; /* User data for B-tree callback */
herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_STATIC
@@ -939,7 +939,7 @@ H5D__btree_idx_is_space_alloc(const H5O_storage_chunk_t *storage)
static herr_t
H5D__btree_idx_insert(const H5D_chk_idx_info_t *idx_info, H5D_chunk_ud_t *udata)
{
- herr_t ret_value = SUCCEED; /* Return value */
+ herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_STATIC
@@ -1111,7 +1111,7 @@ H5D__btree_idx_iterate(const H5D_chk_idx_info_t *idx_info,
static herr_t
H5D__btree_idx_remove(const H5D_chk_idx_info_t *idx_info, H5D_chunk_common_ud_t *udata)
{
- herr_t ret_value = SUCCEED; /* Return value */
+ herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_STATIC
@@ -1453,7 +1453,7 @@ H5D_btree_debug(H5F_t *f, hid_t dxpl_id, haddr_t addr, FILE * stream, int indent
/* Reset "fake" storage info */
HDmemset(&storage, 0, sizeof(storage));
- storage.idx_type = H5D_CHUNK_BTREE;
+ storage.idx_type = H5D_CHUNK_IDX_BTREE;
/* Allocate the shared structure */
if(H5D__btree_shared_create(f, &storage, ndims) < 0)
diff --git a/src/H5Dchunk.c b/src/H5Dchunk.c
index 46f0a4f..9f2a020 100644
--- a/src/H5Dchunk.c
+++ b/src/H5Dchunk.c
@@ -318,24 +318,22 @@ H5D__chunk_direct_write(const H5D_t *dset, hid_t dxpl_id, uint32_t filters, hsiz
uint32_t data_size, const void *buf)
{
const H5O_layout_t *layout = &(dset->shared->layout); /* Dataset layout */
- H5D_chunk_ud_t udata; /* User data for querying chunk info */
+ H5D_chunk_ud_t udata; /* User data for querying chunk info */
hsize_t chunk_idx;
H5D_dxpl_cache_t _dxpl_cache; /* Data transfer property cache buffer */
H5D_dxpl_cache_t *dxpl_cache = &_dxpl_cache; /* Data transfer property cache */
const H5D_rdcc_t *rdcc = &(dset->shared->cache.chunk); /*raw data chunk cache */
int space_ndims; /* Dataset's space rank */
hsize_t space_dim[H5O_LAYOUT_NDIMS]; /* Dataset's dataspace dimensions */
- herr_t ret_value = SUCCEED; /* Return value */
+ herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_STATIC_TAG(dxpl_id, dset->oloc.addr, FAIL)
/* Allocate data space and initialize it if it hasn't been. */
- if(!(*dset->shared->layout.ops->is_space_alloc)(&dset->shared->layout.storage)) {
+ if(!(*dset->shared->layout.ops->is_space_alloc)(&dset->shared->layout.storage))
/* Allocate storage */
if(H5D__alloc_storage(dset, dxpl_id, H5D_ALLOC_WRITE, FALSE, NULL) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "unable to initialize storage")
- } /* end if */
-
/* Retrieve the dataset dimensions */
if((space_ndims = H5S_get_simple_extent_dims(dset->shared->space, space_dim, NULL)) < 0)
@@ -385,11 +383,9 @@ H5D__chunk_direct_write(const H5D_t *dset, hid_t dxpl_id, uint32_t filters, hsiz
/* Evict the entry from the cache if present, but do not flush
* it to disk */
- if(UINT_MAX != udata.idx_hint) {
- if(H5D__chunk_cache_evict(dset, dxpl_id, dxpl_cache,
- rdcc->slot[udata.idx_hint], FALSE) < 0)
+ if(UINT_MAX != udata.idx_hint)
+ if(H5D__chunk_cache_evict(dset, dxpl_id, dxpl_cache, rdcc->slot[udata.idx_hint], FALSE) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_CANTREMOVE, FAIL, "unable to evict chunk")
- } /* end if */
/* Write the data to the file */
if(H5F_block_write(dset->oloc.file, H5FD_MEM_DRAW, udata.addr, data_size, dxpl_id, buf) < 0)
@@ -1317,13 +1313,12 @@ H5D__create_chunk_file_map_hyper(H5D_chunk_map_t *fm, const H5D_io_info_t
new_chunk_info->mspace_shared = FALSE;
/* Copy the chunk's coordinates */
- for(u=0; u<fm->f_ndims; u++)
- new_chunk_info->coords[u]=coords[u];
- new_chunk_info->coords[fm->f_ndims]=0;
+ HDmemcpy(new_chunk_info->coords, coords, sizeof(hsize_t) * fm->f_ndims);
+ new_chunk_info->coords[fm->f_ndims] = 0;
/* Insert the new chunk into the skip list */
if(H5SL_insert(fm->sel_chunks, new_chunk_info, &new_chunk_info->index) < 0) {
- H5D__free_chunk_info(new_chunk_info, NULL, NULL);
+ H5D__free_chunk_info(new_chunk_info, NULL, NULL);
HGOTO_ERROR(H5E_DATASPACE, H5E_CANTINSERT, FAIL, "can't insert chunk into skip list")
} /* end if */
@@ -1508,7 +1503,7 @@ H5D__chunk_file_cb(void UNUSED *elem, hid_t UNUSED type_id, unsigned ndims, cons
H5D_chunk_file_iter_ud_t *udata = (H5D_chunk_file_iter_ud_t *)_udata; /* User data for operation */
H5D_chunk_map_t *fm = udata->fm; /* File<->memory chunk mapping info */
H5D_chunk_info_t *chunk_info; /* Chunk information for current chunk */
- hsize_t coords_in_chunk[H5O_LAYOUT_NDIMS]; /* Coordinates of element in chunk */
+ hsize_t coords_in_chunk[H5O_LAYOUT_NDIMS]; /* Coordinates of element in chunk */
hsize_t chunk_index; /* Chunk index */
unsigned u; /* Local index variable */
herr_t ret_value = SUCCEED; /* Return value */
@@ -2238,8 +2233,6 @@ H5D__chunk_cinfo_cache_reset(H5D_chunk_cached_t *last)
static herr_t
H5D__chunk_cinfo_cache_update(H5D_chunk_cached_t *last, const H5D_chunk_ud_t *udata)
{
- unsigned u; /* Local index variable */
-
FUNC_ENTER_STATIC_NOERR
/* Sanity check */
@@ -2250,8 +2243,7 @@ H5D__chunk_cinfo_cache_update(H5D_chunk_cached_t *last, const H5D_chunk_ud_t *ud
HDassert(udata->common.offset);
/* Stored the information to cache */
- for(u = 0; u < udata->common.layout->ndims; u++)
- last->offset[u] = udata->common.offset[u];
+ HDmemcpy(last->offset, udata->common.offset, sizeof(hsize_t) * udata->common.layout->ndims);
last->nbytes = udata->nbytes;
last->filter_mask = udata->filter_mask;
last->addr = udata->addr;
@@ -2820,7 +2812,6 @@ H5D__chunk_lock(const H5D_io_info_t *io_info, H5D_chunk_ud_t *udata,
haddr_t chunk_addr = HADDR_UNDEF; /* Address of chunk on disk */
size_t chunk_size; /*size of a chunk */
void *chunk = NULL; /*the file chunk */
- unsigned u; /*counters */
void *ret_value; /*return value */
FUNC_ENTER_PACKAGE
@@ -2846,9 +2837,13 @@ H5D__chunk_lock(const H5D_io_info_t *io_info, H5D_chunk_ud_t *udata,
ent = rdcc->slot[udata->idx_hint];
#ifndef NDEBUG
+{
+ unsigned u; /*counters */
+
/* Make sure this is the right chunk */
for(u = 0; u < layout->u.chunk.ndims; u++)
HDassert(io_info->store->chunk.offset[u] == ent->offset[u]);
+}
#endif /* NDEBUG */
/*
@@ -2990,15 +2985,12 @@ H5D__chunk_lock(const H5D_io_info_t *io_info, H5D_chunk_ud_t *udata,
HGOTO_ERROR(H5E_IO, H5E_CANTINIT, NULL, "unable to preempt chunk(s) from cache")
/* Create a new entry */
- if(NULL == (ent = H5FL_MALLOC(H5D_rdcc_ent_t)))
+ if(NULL == (ent = H5FL_CALLOC(H5D_rdcc_ent_t)))
HGOTO_ERROR(H5E_DATASET, H5E_CANTALLOC, NULL, "can't allocate raw data chunk entry")
- ent->locked = 0;
- ent->dirty = FALSE;
- ent->deleted = FALSE;
+ /* Initialize the new entry */
ent->chunk_addr = chunk_addr;
- for(u = 0; u < layout->u.chunk.ndims; u++)
- ent->offset[u] = io_info->store->chunk.offset[u];
+ HDmemcpy(ent->offset, io_info->store->chunk.offset, sizeof(hsize_t) * layout->u.chunk.ndims);
H5_ASSIGN_OVERFLOW(ent->rd_count, chunk_size, size_t, uint32_t);
H5_ASSIGN_OVERFLOW(ent->wr_count, chunk_size, size_t, uint32_t);
ent->chunk = (uint8_t *)chunk;
@@ -3011,16 +3003,13 @@ H5D__chunk_lock(const H5D_io_info_t *io_info, H5D_chunk_ud_t *udata,
rdcc->nused++;
/* Add it to the linked list */
- ent->next = NULL;
if(rdcc->tail) {
rdcc->tail->next = ent;
ent->prev = rdcc->tail;
rdcc->tail = ent;
} /* end if */
- else {
+ else
rdcc->head = rdcc->tail = ent;
- ent->prev = NULL;
- } /* end else */
} /* end if */
else
/* We did not add the chunk to cache */
@@ -3413,8 +3402,7 @@ H5D__chunk_allocate(const H5D_t *dset, hid_t dxpl_id, hbool_t full_overwrite,
continue;
else {
/* Reset the chunk offset indices */
- HDmemset(chunk_offset, 0, ((unsigned)space_ndims
- * sizeof(chunk_offset[0])));
+ HDmemset(chunk_offset, 0, ((unsigned)space_ndims * sizeof(chunk_offset[0])));
chunk_offset[op_dim] = min_unalloc[op_dim];
carry = FALSE;
@@ -3444,10 +3432,12 @@ H5D__chunk_allocate(const H5D_t *dset, hid_t dxpl_id, hbool_t full_overwrite,
/* Make sure the chunk is really in the dataset and outside the
* original dimensions */
{
+ unsigned u; /* Local index variable */
hbool_t outside_orig = FALSE;
- for(i=0; i<space_ndims; i++) {
- HDassert(chunk_offset[i] < space_dim[i]);
- if(chunk_offset[i] >= old_dim[i])
+
+ for(u = 0; u < (unsigned)space_ndims; u++) {
+ HDassert(chunk_offset[u] < space_dim[u]);
+ if(chunk_offset[u] >= old_dim[u])
outside_orig = TRUE;
} /* end for */
HDassert(outside_orig);
@@ -3546,13 +3536,14 @@ H5D__chunk_allocate(const H5D_t *dset, hid_t dxpl_id, hbool_t full_overwrite,
/* Increment indices */
carry = TRUE;
- for(i = (int)(space_ndims - 1); i >= 0; --i) {
+ for(i = ((int)space_ndims - 1); i >= 0; --i) {
chunk_offset[i] += chunk_dim[i];
- if(chunk_offset[i] > max_unalloc[i])
+ if(chunk_offset[i] > max_unalloc[i]) {
if(i == op_dim)
chunk_offset[i] = min_unalloc[i];
else
chunk_offset[i] = 0;
+ } /* end if */
else {
carry = FALSE;
break;
@@ -4006,7 +3997,7 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
hsize_t hyper_start[H5O_LAYOUT_NDIMS]; /* Starting location of hyperslab */
uint32_t elmts_per_chunk; /* Elements in chunk */
hbool_t carry; /* Flag to indicate that chunk increment carrys to higher dimension (sorta) */
- int i; /* Local index variable */
+ unsigned u; /* Local index variable */
herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_PACKAGE
@@ -4043,15 +4034,14 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
/* (also copy the chunk dimensions into 'hsize_t' array for creating dataspace) */
/* (also compute the dimensions which have been shrunk) */
elmts_per_chunk = 1;
- for(i = 0; i < space_ndims; i++) {
- elmts_per_chunk *= layout->u.chunk.dim[i];
- chunk_dim[i] = layout->u.chunk.dim[i];
- shrunk_dim[i] = space_dim[i] < old_dim[i];
+ for(u = 0; u < (unsigned)space_ndims; u++) {
+ elmts_per_chunk *= layout->u.chunk.dim[u];
+ chunk_dim[u] = layout->u.chunk.dim[u];
+ shrunk_dim[u] = space_dim[u] < old_dim[u];
} /* end for */
/* Create a dataspace for a chunk & set the extent */
- if(NULL == (chunk_space = H5S_create_simple((unsigned)space_ndims,
- chunk_dim, NULL)))
+ if(NULL == (chunk_space = H5S_create_simple((unsigned)space_ndims, chunk_dim, NULL)))
HGOTO_ERROR(H5E_DATASPACE, H5E_CANTCREATE, FAIL, "can't create simple dataspace")
/* Reset hyperslab start array */
@@ -4118,8 +4108,7 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
/ chunk_dim[op_dim]);
/* Determine if we need to fill chunks in this dimension */
- if((hssize_t)min_mod_chunk_off[op_dim]
- == max_fill_chunk_off[op_dim]) {
+ if((hssize_t)min_mod_chunk_off[op_dim] == max_fill_chunk_off[op_dim]) {
fill_dim[op_dim] = TRUE;
has_fill = TRUE;
} /* end if */
@@ -4136,8 +4125,8 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
if(has_fill)
for(ent = rdcc->head; ent; ent = ent->next)
/* Check for chunk offset outside of new dimensions */
- for(i = 0; i<space_ndims; i++)
- if((hsize_t)ent->offset[i] >= space_dim[i]) {
+ for(u = 0; u < (unsigned)space_ndims; u++)
+ if((hsize_t)ent->offset[u] >= space_dim[u]) {
/* Mark the entry as "deleted" */
ent->deleted = TRUE;
break;
@@ -4149,28 +4138,28 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
if(!shrunk_dim[op_dim])
continue;
else {
- HDassert((hsize_t) max_mod_chunk_off[op_dim]
- >= min_mod_chunk_off[op_dim]);
+ HDassert((hsize_t) max_mod_chunk_off[op_dim] >= min_mod_chunk_off[op_dim]);
/* Reset the chunk offset indices */
- HDmemset(chunk_offset, 0, ((unsigned)space_ndims
- * sizeof(chunk_offset[0])));
+ HDmemset(chunk_offset, 0, ((unsigned)space_ndims * sizeof(chunk_offset[0])));
chunk_offset[op_dim] = min_mod_chunk_off[op_dim];
/* Initialize "dims_outside_fill" array */
ndims_outside_fill = 0;
- for(i=0; i<space_ndims; i++)
- if((hssize_t)chunk_offset[i] > max_fill_chunk_off[i]) {
- dims_outside_fill[i] = TRUE;
+ for(u = 0; u < (unsigned)space_ndims; u++)
+ if((hssize_t)chunk_offset[u] > max_fill_chunk_off[u]) {
+ dims_outside_fill[u] = TRUE;
ndims_outside_fill++;
} /* end if */
else
- dims_outside_fill[i] = FALSE;
+ dims_outside_fill[u] = FALSE;
carry = FALSE;
} /* end if */
while(!carry) {
+ int i; /* Local index variable */
+
/* Calculate the index of this chunk */
if(H5VM_chunk_index((unsigned)space_ndims, chunk_offset,
layout->u.chunk.dim, layout->u.chunk.down_chunks,
@@ -4191,8 +4180,8 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
{
hbool_t outside_dim = FALSE;
- for(i=0; i<space_ndims; i++)
- if(chunk_offset[i] >= space_dim[i]){
+ for(u = 0; u < (unsigned)space_ndims; u++)
+ if(chunk_offset[u] >= space_dim[u]) {
outside_dim = TRUE;
break;
} /* end if */
@@ -4206,11 +4195,9 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
/* Evict the entry from the cache if present, but do not flush
* it to disk */
- if(UINT_MAX != chk_udata.idx_hint) {
- if(H5D__chunk_cache_evict(dset, dxpl_id, dxpl_cache,
- rdcc->slot[chk_udata.idx_hint], FALSE) < 0)
+ if(UINT_MAX != chk_udata.idx_hint)
+ if(H5D__chunk_cache_evict(dset, dxpl_id, dxpl_cache, rdcc->slot[chk_udata.idx_hint], FALSE) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_CANTREMOVE, FAIL, "unable to evict chunk")
- } /* end if */
/* Remove the chunk from disk, if present */
if(H5F_addr_defined(chk_udata.addr)) {
@@ -4218,8 +4205,7 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
idx_udata.offset = chunk_offset;
/* Remove the chunk from disk */
- if((layout->storage.u.chunk.ops->remove)(&idx_info, &idx_udata)
- < 0)
+ if((layout->storage.u.chunk.ops->remove)(&idx_info, &idx_udata) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_CANTDELETE, FAIL, "unable to remove chunk entry from index")
} /* end if */
} /* end else */
@@ -4248,8 +4234,7 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
} /* end if */
else {
/* Check if we just went outside the fill dimension */
- if(!dims_outside_fill[i] && (hssize_t)chunk_offset[i]
- > max_fill_chunk_off[i]) {
+ if(!dims_outside_fill[i] && (hssize_t)chunk_offset[i] > max_fill_chunk_off[i]) {
dims_outside_fill[i] = TRUE;
ndims_outside_fill++;
} /* end if */
@@ -4267,8 +4252,7 @@ H5D__chunk_prune_by_extent(H5D_t *dset, hid_t dxpl_id, const hsize_t *old_dim)
if(min_mod_chunk_off[op_dim] == 0)
break;
else
- max_mod_chunk_off[op_dim] = min_mod_chunk_off[op_dim]
- - chunk_dim[op_dim];
+ max_mod_chunk_off[op_dim] = min_mod_chunk_off[op_dim] - chunk_dim[op_dim];
} /* end for(op_dim=0...) */
/* Reset any cached chunk info for this dataset */
@@ -4278,10 +4262,9 @@ done:
/* Release resources */
if(chunk_space && H5S_close(chunk_space) < 0)
HDONE_ERROR(H5E_DATASET, H5E_CLOSEERROR, FAIL, "unable to release dataspace")
- if(udata_init) {
+ if(udata_init)
if(udata.fb_info_init && H5D__fill_term(&udata.fb_info) < 0)
HDONE_ERROR(H5E_DATASET, H5E_CANTFREE, FAIL, "Can't release fill buffer info")
- } /* end if */
FUNC_LEAVE_NOAPI(ret_value)
} /* end H5D__chunk_prune_by_extent() */
@@ -4473,7 +4456,7 @@ H5D__chunk_update_cache(H5D_t *dset, hid_t dxpl_id)
H5D_rdcc_ent_t *old_ent; /* Old cache entry */
H5D_dxpl_cache_t _dxpl_cache; /* Data transfer property cache buffer */
H5D_dxpl_cache_t *dxpl_cache = &_dxpl_cache; /* Data transfer property cache */
- unsigned rank; /*current # of dimensions */
+ unsigned rank; /* Current # of dimensions */
herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_PACKAGE
@@ -5178,7 +5161,8 @@ H5D__chunk_dest(H5F_t *f, hid_t dxpl_id, H5D_t *dset)
idx_info.storage = &dset->shared->layout.storage.u.chunk;
/* Free any index structures */
- if((dset->shared->layout.storage.u.chunk.ops->dest)(&idx_info) < 0)
+ if(dset->shared->layout.storage.u.chunk.ops->dest &&
+ (dset->shared->layout.storage.u.chunk.ops->dest)(&idx_info) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_CANTFREE, FAIL, "unable to release chunk index info")
done:
diff --git a/src/H5Dint.c b/src/H5Dint.c
index 056b07b..5035a67 100644
--- a/src/H5Dint.c
+++ b/src/H5Dint.c
@@ -478,7 +478,6 @@ done:
herr_t
H5D__get_space_status(H5D_t *dset, H5D_space_status_t *allocation, hid_t dxpl_id)
{
- H5S_t *space; /* Dataset's dataspace */
hsize_t space_allocated; /* The number of bytes allocated for chunks */
hssize_t snelmts; /* Temporary holder for number of elements in dataspace */
hsize_t nelmts; /* Number of elements in dataspace */
@@ -491,11 +490,10 @@ H5D__get_space_status(H5D_t *dset, H5D_space_status_t *allocation, hid_t dxpl_id
HDassert(dset);
/* Get the dataset's dataspace */
- space = dset->shared->space;
- HDassert(space);
+ HDassert(dset->shared->space);
/* Get the total number of elements in dataset's dataspace */
- if((snelmts = H5S_GET_EXTENT_NPOINTS(space)) < 0)
+ if((snelmts = H5S_GET_EXTENT_NPOINTS(dset->shared->space)) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, FAIL, "unable to retrieve number of elements in dataspace")
nelmts = (hsize_t)snelmts;
@@ -1185,6 +1183,7 @@ H5D_open(const H5G_loc_t *loc, hid_t dapl_id, hid_t dxpl_id)
HGOTO_ERROR(H5E_DATASET, H5E_CANTINC, NULL, "can't increment object count")
} /* end else */
+ /* Set the dataset to return */
ret_value = dataset;
done:
@@ -1226,6 +1225,7 @@ H5D__open_oid(H5D_t *dataset, hid_t dapl_id, hid_t dxpl_id)
H5O_fill_t *fill_prop; /* Pointer to dataset's fill value info */
unsigned alloc_time_state; /* Allocation time state */
htri_t msg_exists; /* Whether a particular type of message exists */
+ hbool_t layout_init = FALSE; /* Flag to indicate that chunk information was initialized */
herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_STATIC_TAG(dxpl_id, dataset->oloc.addr, FAIL)
@@ -1263,6 +1263,9 @@ H5D__open_oid(H5D_t *dataset, hid_t dapl_id, hid_t dxpl_id)
if(H5D__layout_oh_read(dataset, dxpl_id, dapl_id, plist) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, FAIL, "can't get layout/pline/efl info")
+ /* Indicate that the layout information was initialized */
+ layout_init = TRUE;
+
/* Point at dataset's copy, to cache it for later */
fill_prop = &dataset->shared->dcpl_cache.fill;
@@ -1343,6 +1346,9 @@ done:
if(H5F_addr_defined(dataset->oloc.addr) && H5O_close(&(dataset->oloc)) < 0)
HDONE_ERROR(H5E_DATASET, H5E_CLOSEERROR, FAIL, "unable to release object header")
if(dataset->shared) {
+ if(dataset->shared->layout.type == H5D_CHUNKED && layout_init)
+ if(H5D__chunk_dest(dataset->oloc.file, dxpl_id, dataset) < 0)
+ HDONE_ERROR(H5E_DATASET, H5E_CANTRELEASE, FAIL, "unable to destroy chunk cache")
if(dataset->shared->space && H5S_close(dataset->shared->space) < 0)
HDONE_ERROR(H5E_DATASET, H5E_CLOSEERROR, FAIL, "unable to release dataspace")
if(dataset->shared->type) {
@@ -2234,6 +2240,7 @@ H5D__set_extent(H5D_t *dset, const hsize_t *size, hid_t dxpl_id)
*/
/* Update the index values for the cached chunks for this dataset */
if(H5D_CHUNKED == dset->shared->layout.type) {
+ /* Update the cached chunk info */
if(H5D__chunk_set_info(dset) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_CANTSET, FAIL, "unable to update # of chunks")
if(H5D__chunk_update_cache(dset, dxpl_id) < 0)
@@ -2252,11 +2259,10 @@ H5D__set_extent(H5D_t *dset, const hsize_t *size, hid_t dxpl_id)
*-------------------------------------------------------------------------
*/
if(shrink && H5D_CHUNKED == dset->shared->layout.type &&
- (*dset->shared->layout.ops->is_space_alloc)(&dset->shared->layout.storage)) {
+ (*dset->shared->layout.ops->is_space_alloc)(&dset->shared->layout.storage))
/* Remove excess chunks */
if(H5D__chunk_prune_by_extent(dset, dxpl_id, curr_dims) < 0)
HGOTO_ERROR(H5E_DATASET, H5E_WRITEERROR, FAIL, "unable to remove chunks")
- } /* end if */
/* Mark the dataspace as dirty, for later writing to the file */
if(H5D__mark(dset, dxpl_id, H5D_MARK_SPACE) < 0)
@@ -2689,16 +2695,14 @@ H5D_get_space(H5D_t *dset)
HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "unable to get data space")
/* Create an atom */
- if((ret_value = H5I_register (H5I_DATASPACE, space, TRUE)) < 0)
- HGOTO_ERROR(H5E_ATOM, H5E_CANTREGISTER, FAIL, "unable to register data space")
+ if((ret_value = H5I_register(H5I_DATASPACE, space, TRUE)) < 0)
+ HGOTO_ERROR(H5E_ATOM, H5E_CANTREGISTER, FAIL, "unable to register dataspace")
done:
- if(ret_value < 0) {
- if(space!=NULL) {
+ if(ret_value < 0)
+ if(space != NULL)
if(H5S_close(space) < 0)
HDONE_ERROR(H5E_DATASET, H5E_CLOSEERROR, FAIL, "unable to release dataspace")
- } /* end if */
- } /* end if */
FUNC_LEAVE_NOAPI(ret_value)
} /* end H5D_get_space() */
diff --git a/src/H5Dio.c b/src/H5Dio.c
index 096a211..88f75b1 100644
--- a/src/H5Dio.c
+++ b/src/H5Dio.c
@@ -305,7 +305,7 @@ H5D__pre_write(H5D_t *dset, hbool_t direct_write, hid_t mem_type_id,
int ndims = 0;
hsize_t dims[H5O_LAYOUT_NDIMS];
hsize_t internal_offset[H5O_LAYOUT_NDIMS];
- int i;
+ unsigned u;
/* Get the dataset transfer property list */
if(NULL == (plist = (H5P_genplist_t *)H5I_object(dxpl_id)))
@@ -327,16 +327,16 @@ H5D__pre_write(H5D_t *dset, hbool_t direct_write, hid_t mem_type_id,
if((ndims = H5S_get_simple_extent_dims(dset->shared->space, dims, NULL)) < 0)
HGOTO_ERROR(H5E_DATASPACE, H5E_CANTGET, FAIL, "can't retrieve dataspace extent dims")
- for(i = 0; i < ndims; i++) {
+ for(u = 0; u < ndims; u++) {
/* Make sure the offset doesn't exceed the dataset's dimensions */
- if(direct_offset[i] > dims[i])
+ if(direct_offset[u] > dims[u])
HGOTO_ERROR(H5E_DATASPACE, H5E_BADTYPE, FAIL, "offset exceeds dimensions of dataset")
/* Make sure the offset fall right on a chunk's boundary */
- if(direct_offset[i] % dset->shared->layout.u.chunk.dim[i])
+ if(direct_offset[u] % dset->shared->layout.u.chunk.dim[u])
HGOTO_ERROR(H5E_DATASPACE, H5E_BADTYPE, FAIL, "offset doesn't fall on chunks's boundary")
- internal_offset[i] = direct_offset[i];
+ internal_offset[u] = direct_offset[u];
} /* end for */
/* Terminate the offset with a zero */
diff --git a/src/H5Dmpio.c b/src/H5Dmpio.c
index 58bcc04..01d2288 100644
--- a/src/H5Dmpio.c
+++ b/src/H5Dmpio.c
@@ -833,39 +833,37 @@ H5D__link_chunk_collective_io(H5D_io_info_t *io_info, const H5D_type_info_t *typ
* equivalent of compressed contiguous datasets - QAK]
*/
if(total_chunks == 1) {
- H5D_chunk_ud_t udata; /* User data for querying chunk info */
- hsize_t coords[H5O_LAYOUT_NDIMS]; /* Coordinates of chunk in file dataset's dataspace */
H5SL_node_t *chunk_node; /* Pointer to chunk node for selection */
H5S_t *fspace; /* Dataspace describing chunk & selection in it */
H5S_t *mspace; /* Dataspace describing selection in memory corresponding to this chunk */
- /* Initialize the chunk coordinates */
- /* (must be all zero, since there's only one chunk) */
- HDmemset(coords, 0, sizeof(coords));
-
- /* Look up address of chunk */
- if(H5D__chunk_lookup(io_info->dset, io_info->dxpl_id, coords,
- io_info->store->chunk.index, &udata) < 0)
- HGOTO_ERROR(H5E_STORAGE, H5E_CANTGET, FAIL, "couldn't get chunk info from skipped list")
- ctg_store.contig.dset_addr = udata.addr;
-
/* Check for this process having selection in this chunk */
chunk_node = H5SL_first(fm->sel_chunks);
if(chunk_node == NULL) {
- /* Set the dataspace info for I/O to NULL, this process doesn't have any I/O to perform */
- fspace = mspace = NULL;
+ /* Set the dataspace info for I/O to NULL, this process doesn't have any I/O to perform */
+ fspace = mspace = NULL;
+
+ /* Initialize chunk address */
+ ctg_store.contig.dset_addr = 0;
} /* end if */
else {
- H5D_chunk_info_t *chunk_info;
-
- /* Get the chunk info, for the selection in the chunk */
- if(NULL == (chunk_info = H5SL_item(chunk_node)))
- HGOTO_ERROR(H5E_STORAGE, H5E_CANTGET, FAIL, "couldn't get chunk info from skipped list")
-
- /* Set the dataspace info for I/O */
- fspace = chunk_info->fspace;
- mspace = chunk_info->mspace;
+ H5D_chunk_ud_t udata; /* User data for querying chunk info */
+ H5D_chunk_info_t *chunk_info; /* Info for chunk in skiplist */
+
+ /* Get the chunk info, for the selection in the chunk */
+ if(NULL == (chunk_info = (H5D_chunk_info_t *)H5SL_item(chunk_node)))
+ HGOTO_ERROR(H5E_STORAGE, H5E_CANTGET, FAIL, "couldn't get chunk info from skip list")
+
+ /* Set the dataspace info for I/O */
+ fspace = chunk_info->fspace;
+ mspace = chunk_info->mspace;
+
+ /* Look up address of chunk */
+ if(H5D__chunk_lookup(io_info->dset, io_info->dxpl_id, chunk_info->coords,
+ chunk_info->index, &udata) < 0)
+ HGOTO_ERROR(H5E_STORAGE, H5E_CANTGET, FAIL, "couldn't get chunk address")
+ ctg_store.contig.dset_addr = udata.addr;
} /* end else */
/* Set up the base storage address for this chunk */
diff --git a/src/H5Dpkg.h b/src/H5Dpkg.h
index 847cec9..82c4d2f 100644
--- a/src/H5Dpkg.h
+++ b/src/H5Dpkg.h
@@ -366,7 +366,7 @@ typedef struct H5D_chunk_map_t {
} H5D_chunk_map_t;
/* Cached information about a particular chunk */
-typedef struct H5D_chunk_cached_t{
+typedef struct H5D_chunk_cached_t {
hbool_t valid; /*whether cache info is valid*/
hsize_t offset[H5O_LAYOUT_NDIMS]; /*logical offset to start*/
uint32_t nbytes; /*size of stored data */
diff --git a/src/H5Dpublic.h b/src/H5Dpublic.h
index fb936d2..a08ea3d 100644
--- a/src/H5Dpublic.h
+++ b/src/H5Dpublic.h
@@ -57,7 +57,8 @@ typedef enum H5D_layout_t {
/* Types of chunk index data structures */
typedef enum H5D_chunk_index_t {
- H5D_CHUNK_BTREE = 0 /* v1 B-tree index */
+ H5D_CHUNK_IDX_BTREE = 0, /* v1 B-tree index */
+ H5D_CHUNK_IDX_NTYPES /* this one must be last! */
} H5D_chunk_index_t;
/* Values for the space allocation time property */
diff --git a/src/H5Edeprec.c b/src/H5Edeprec.c
index 3e9444b..6a83745 100644
--- a/src/H5Edeprec.c
+++ b/src/H5Edeprec.c
@@ -152,6 +152,7 @@ H5Eget_major(H5E_major_t maj)
char *ret_value; /* Return value */
FUNC_ENTER_API_NOCLEAR(NULL)
+ H5TRACE1("*s", "i", maj);
/* Get the message object */
if(NULL == (msg = (H5E_msg_t *)H5I_object_verify(maj, H5I_ERROR_MSG)))
@@ -204,6 +205,7 @@ H5Eget_minor(H5E_minor_t min)
char *ret_value; /* Return value */
FUNC_ENTER_API_NOCLEAR(NULL)
+ H5TRACE1("*s", "i", min);
/* Get the message object */
if(NULL == (msg = (H5E_msg_t *)H5I_object_verify(min, H5I_ERROR_MSG)))
diff --git a/src/H5FD.c b/src/H5FD.c
index bbadd33..fc6937e 100644
--- a/src/H5FD.c
+++ b/src/H5FD.c
@@ -886,6 +886,7 @@ H5FDopen(const char *name, unsigned flags, hid_t fapl_id, haddr_t maxaddr)
H5FD_t *ret_value=NULL;
FUNC_ENTER_API(NULL)
+ H5TRACE4("*x", "*sIuia", name, flags, fapl_id, maxaddr);
/* Check arguments */
if(H5P_DEFAULT == fapl_id)
diff --git a/src/H5I.c b/src/H5I.c
index ba1fef2..54b7ecc 100644
--- a/src/H5I.c
+++ b/src/H5I.c
@@ -883,6 +883,7 @@ H5Iobject_verify(hid_t id, H5I_type_t id_type)
void * ret_value; /* Return value */
FUNC_ENTER_API(NULL)
+ H5TRACE2("*x", "iIt", id, id_type);
if(H5I_IS_LIB_TYPE(id_type))
HGOTO_ERROR(H5E_ATOM, H5E_BADGROUP, NULL, "cannot call public function on library type")
@@ -1023,6 +1024,7 @@ H5Iremove_verify(hid_t id, H5I_type_t id_type)
void * ret_value; /* Return value */
FUNC_ENTER_API(NULL)
+ H5TRACE2("*x", "iIt", id, id_type);
if(H5I_IS_LIB_TYPE(id_type))
HGOTO_ERROR(H5E_ATOM, H5E_BADGROUP, NULL, "cannot call public function on library type")
@@ -1871,6 +1873,7 @@ H5Isearch(H5I_type_t type, H5I_search_func_t func, void *key)
void *ret_value; /* Return value */
FUNC_ENTER_API(NULL)
+ H5TRACE3("*x", "Itx*x", type, func, key);
/* Check arguments */
if(H5I_IS_LIB_TYPE(type))
diff --git a/src/H5Olayout.c b/src/H5Olayout.c
index 9d4fff7..8fc1650 100644
--- a/src/H5Olayout.c
+++ b/src/H5Olayout.c
@@ -148,7 +148,7 @@ H5O_layout_decode(H5F_t *f, hid_t dxpl_id, H5O_t UNUSED *open_oh,
/* Set the chunk operations */
/* (Only "btree" indexing type currently supported in this version) */
- mesg->storage.u.chunk.idx_type = H5D_CHUNK_BTREE;
+ mesg->storage.u.chunk.idx_type = H5D_CHUNK_IDX_BTREE;
mesg->storage.u.chunk.ops = H5D_COPS_BTREE;
} /* end if */
else {
@@ -235,7 +235,7 @@ H5O_layout_decode(H5F_t *f, hid_t dxpl_id, H5O_t UNUSED *open_oh,
/* Set the chunk operations */
/* (Only "btree" indexing type supported with v3 of message format) */
- mesg->storage.u.chunk.idx_type = H5D_CHUNK_BTREE;
+ mesg->storage.u.chunk.idx_type = H5D_CHUNK_IDX_BTREE;
mesg->storage.u.chunk.ops = H5D_COPS_BTREE;
/* Set the layout operations */
@@ -932,7 +932,7 @@ H5O_layout_debug(H5F_t UNUSED *f, hid_t UNUSED dxpl_id, const void *_mesg,
/* Index information */
switch(mesg->storage.u.chunk.idx_type) {
- case H5D_CHUNK_BTREE:
+ case H5D_CHUNK_IDX_BTREE:
HDfprintf(stream, "%*s%-*s %s\n", indent, "", fwidth,
"Index Type:", "v1 B-tree");
HDfprintf(stream, "%*s%-*s %a\n", indent, "", fwidth,
diff --git a/src/H5Omtime.c b/src/H5Omtime.c
index 612d656..c9375f9 100644
--- a/src/H5Omtime.c
+++ b/src/H5Omtime.c
@@ -200,8 +200,8 @@ H5O_mtime_decode(H5F_t UNUSED *f, hid_t UNUSED dxpl_id, H5O_t UNUSED *open_oh,
/* decode */
for(i = 0; i < 14; i++)
- if(!HDisdigit(p[i]))
- HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, NULL, "badly formatted modification time message")
+ if(!HDisdigit(p[i]))
+ HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, NULL, "badly formatted modification time message")
/*
* Convert YYYYMMDDhhmmss UTC to a time_t. This is a little problematic
@@ -219,36 +219,14 @@ H5O_mtime_decode(H5F_t UNUSED *f, hid_t UNUSED dxpl_id, H5O_t UNUSED *open_oh,
tm.tm_sec = (p[12]-'0')*10 + (p[13]-'0');
tm.tm_isdst = -1; /*figure it out*/
if((time_t)-1 == (the_time = HDmktime(&tm)))
- HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, NULL, "badly formatted modification time message")
+ HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, NULL, "badly formatted modification time message")
#if defined(H5_HAVE_TM_GMTOFF)
- /* FreeBSD, OSF 4.0 */
+ /* BSD-like systems */
the_time += tm.tm_gmtoff;
-#elif defined(H5_HAVE___TM_GMTOFF)
- /* Linux libc-4 */
- the_time += tm.__tm_gmtoff;
#elif defined(H5_HAVE_TIMEZONE)
- /* Linux libc-5 */
- the_time -= timezone - (tm.tm_isdst?3600:0);
-#elif defined(H5_HAVE_BSDGETTIMEOFDAY) && defined(H5_HAVE_STRUCT_TIMEZONE)
- /* Irix5.3 */
- {
- struct timezone tz;
-
- if(HDBSDgettimeofday(NULL, &tz) < 0)
- HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, NULL, "unable to obtain local timezone information")
- the_time -= tz.tz_minuteswest * 60 - (tm.tm_isdst ? 3600 : 0);
- }
-#elif defined(H5_HAVE_GETTIMEOFDAY) && defined(H5_HAVE_STRUCT_TIMEZONE) && defined(H5_GETTIMEOFDAY_GIVES_TZ)
- {
- struct timezone tz;
- struct timeval tv; /* Used as a placebo; some systems don't like NULL */
-
- if(HDgettimeofday(&tv, &tz) < 0)
- HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, NULL, "unable to obtain local timezone information")
-
- the_time -= tz.tz_minuteswest * 60 - (tm.tm_isdst ? 3600 : 0);
- }
+ /* GNU/Linux systems */
+ the_time -= timezone - (tm.tm_isdst ? 3600 : 0);
#else
/*
* The catch-all. If we can't convert a character string universal
@@ -257,14 +235,12 @@ H5O_mtime_decode(H5F_t UNUSED *f, hid_t UNUSED dxpl_id, H5O_t UNUSED *open_oh,
* only way a user can get the modification time is from our internal
* query routines, which can gracefully recover.
*/
-
- /* Irix64 */
HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, NULL, "unable to obtain local timezone information")
#endif
/* The return value */
if(NULL == (mesg = H5FL_MALLOC(time_t)))
- HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed")
+ HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed")
*mesg = the_time;
/* Set return value */
diff --git a/src/H5P.c b/src/H5P.c
index 113203d..ff230ed 100644
--- a/src/H5P.c
+++ b/src/H5P.c
@@ -1596,6 +1596,7 @@ H5Pget_class_name(hid_t pclass_id)
char *ret_value; /* return value */
FUNC_ENTER_API(NULL)
+ H5TRACE1("*s", "i", pclass_id);
/* Check arguments. */
if(NULL == (pclass = (H5P_genclass_t *)H5I_object_verify(pclass_id, H5I_GENPROP_CLS)))
diff --git a/src/H5PL.c b/src/H5PL.c
index 738db90..1806ea6 100644
--- a/src/H5PL.c
+++ b/src/H5PL.c
@@ -23,11 +23,11 @@
/***********/
/* Headers */
/***********/
-#include "H5private.h" /* Generic Functions */
-#include "H5Eprivate.h" /* Error handling */
-#include "H5MMprivate.h" /* Memory management */
-#include "H5PLprivate.h" /* Plugin */
-#include "H5Zprivate.h" /* Filter pipeline */
+#include "H5private.h" /* Generic Functions */
+#include "H5Eprivate.h" /* Error handling */
+#include "H5MMprivate.h" /* Memory management */
+#include "H5PLprivate.h" /* Plugin */
+#include "H5Zprivate.h" /* Filter pipeline */
/****************/
@@ -40,7 +40,19 @@
/* Macros for supporting
* both Windows and Unix */
/****************************/
-/* Windows support */
+/* Windows support
+ *
+ * SPECIAL WINDOWS NOTE
+ *
+ * Some of the Win32 API functions expand to fooA or fooW depending on
+ * whether UNICODE or _UNICODE are defined. You MUST explicitly use
+ * the A version of the functions to force char * behavior until we
+ * work out a scheme for proper Windows Unicode support.
+ *
+ * If you do not do this, people will be unable to incorporate our
+ * source code into their own CMake builds if they define UNICODE.
+ */
+
#ifdef H5_HAVE_WIN32_API
#define H5PL_PATH_SEPARATOR ";"
@@ -49,7 +61,7 @@
#define H5PL_HANDLE HINSTANCE
/* Get a handle to a plugin library. Windows: TEXT macro handles Unicode strings */
-#define H5PL_OPEN_DLIB(S) LoadLibraryEx(TEXT(S), NULL, LOAD_WITH_ALTERED_SEARCH_PATH)
+#define H5PL_OPEN_DLIB(S) LoadLibraryExA(S, NULL, LOAD_WITH_ALTERED_SEARCH_PATH)
/* Get the address of a symbol in dynamic library */
#define H5PL_GET_LIB_FUNC(H,N) GetProcAddress(H,N)
@@ -96,9 +108,9 @@ typedef const void *(*H5PL_get_plugin_info_t)(void);
/* Type for the list of info for opened plugin libraries */
typedef struct H5PL_table_t {
- H5PL_type_t pl_type; /* plugin type */
- int pl_id; /* ID for the plugin */
- H5PL_HANDLE handle; /* plugin handle */
+ H5PL_type_t pl_type; /* plugin type */
+ int pl_id; /* ID for the plugin */
+ H5PL_HANDLE handle; /* plugin handle */
} H5PL_table_t;
@@ -128,8 +140,8 @@ static herr_t H5PL__close(H5PL_HANDLE handle);
/*******************/
/* Table for opened plugin libraries */
-static size_t H5PL_table_alloc_g = 0;
-static size_t H5PL_table_used_g = 0;
+static size_t H5PL_table_alloc_g = 0;
+static size_t H5PL_table_used_g = 0;
static H5PL_table_t *H5PL_table_g = NULL;
/* Table of location paths for plugin libraries */
@@ -173,15 +185,15 @@ H5PL__init_interface(void)
/*-------------------------------------------------------------------------
- * Function: H5PL_no_plugin
+ * Function: H5PL_no_plugin
*
- * Purpose: Quick way for filter module to query whether to load plugin
+ * Purpose: Quick way for filter module to query whether to load plugin
*
- * Return: TRUE: No plugin loading during data reading
+ * Return: TRUE: No plugin loading during data reading
*
- * FALSE: Load plugin during data reading
+ * FALSE: Load plugin during data reading
*
- * Programmer: Raymond Lu
+ * Programmer: Raymond Lu
* 20 February 2013
*
*-------------------------------------------------------------------------
@@ -201,18 +213,18 @@ done:
/*-------------------------------------------------------------------------
- * Function: H5PL_term_interface
+ * Function: H5PL_term_interface
*
- * Purpose: Terminate the H5PL interface: release all memory, reset all
- * global variables to initial values. This only happens if all
- * types have been destroyed from other interfaces.
+ * Purpose: Terminate the H5PL interface: release all memory, reset all
+ * global variables to initial values. This only happens if all
+ * types have been destroyed from other interfaces.
*
- * Return: Success: Positive if any action was taken that might
- * affect some other interface; zero otherwise.
+ * Return: Success: Positive if any action was taken that might
+ * affect some other interface; zero otherwise.
*
- * Failure: Negative.
+ * Failure: Negative.
*
- * Programmer: Raymond Lu
+ * Programmer: Raymond Lu
* 20 February 2013
*
*-------------------------------------------------------------------------
@@ -227,13 +239,13 @@ H5PL_term_interface(void)
if(H5_interface_initialize_g) {
size_t u; /* Local index variable */
- /* Close opened dynamic libraries */
+ /* Close opened dynamic libraries */
for(u = 0; u < H5PL_table_used_g; u++)
H5PL__close((H5PL_table_g[u]).handle);
- /* Free the table of dynamic libraries */
- H5PL_table_g = (H5PL_table_t *)H5MM_xfree(H5PL_table_g);
- H5PL_table_used_g = H5PL_table_alloc_g = 0;
+ /* Free the table of dynamic libraries */
+ H5PL_table_g = (H5PL_table_t *)H5MM_xfree(H5PL_table_g);
+ H5PL_table_used_g = H5PL_table_alloc_g = 0;
/* Free the table of search paths */
for(u = 0; u < H5PL_num_paths_g; u++)
@@ -242,7 +254,7 @@ H5PL_term_interface(void)
H5PL_num_paths_g = 0;
H5PL_path_found_g = FALSE;
- H5_interface_initialize_g = 0;
+ H5_interface_initialize_g = 0;
i = 1;
} /* end if */
@@ -251,15 +263,15 @@ H5PL_term_interface(void)
/*-------------------------------------------------------------------------
- * Function: H5PL_load
+ * Function: H5PL_load
*
- * Purpose: Given the plugin type and identifier, this function searches
+ * Purpose: Given the plugin type and identifier, this function searches
* and/or loads a dynamic plugin library first among the already
* opened libraries then in the designated location paths.
*
- * Return: Non-NULL on success/NULL on failure
+ * Return: Non-NULL on success/NULL on failure
*
- * Programmer: Raymond Lu
+ * Programmer: Raymond Lu
* 13 February 2013
*
*-------------------------------------------------------------------------
@@ -314,13 +326,13 @@ done:
/*-------------------------------------------------------------------------
- * Function: H5PL__init_path_table
+ * Function: H5PL__init_path_table
*
- * Purpose: Initialize the path table.
+ * Purpose: Initialize the path table.
*
- * Return: Non-negative on success/Negative on failure
+ * Return: Non-negative on success/Negative on failure
*
- * Programmer: Quincey Koziol
+ * Programmer: Quincey Koziol
* 18 March 2013
*
*-------------------------------------------------------------------------
@@ -369,18 +381,18 @@ done:
/*-------------------------------------------------------------------------
- * Function: H5PL__find
+ * Function: H5PL__find
*
* Purpose: Given a path, this function opens the directory and envokes
* another function to go through all files to find the right
* plugin library. Two function definitions are for Unix and
* Windows.
*
- * Return: TRUE on success,
+ * Return: TRUE on success,
* FALSE on not found,
* negative on failure
*
- * Programmer: Raymond Lu
+ * Programmer: Raymond Lu
* 13 February 2013
*
*-------------------------------------------------------------------------
@@ -457,17 +469,17 @@ done:
static htri_t
H5PL__find(H5PL_type_t plugin_type, int type_id, char *dir, const void **info)
{
- WIN32_FIND_DATA fdFile;
- HANDLE hFind;
- char *pathname = NULL;
- char service[2048];
- htri_t ret_value = FALSE;
+ WIN32_FIND_DATAA fdFile;
+ HANDLE hFind;
+ char *pathname = NULL;
+ char service[2048];
+ htri_t ret_value = FALSE;
FUNC_ENTER_STATIC
/* Specify a file mask. *.* = We want everything! */
sprintf(service, "%s\\*.dll", dir);
- if((hFind = FindFirstFile(service, &fdFile)) == INVALID_HANDLE_VALUE)
+ if((hFind = FindFirstFileA(service, &fdFile)) == INVALID_HANDLE_VALUE)
HGOTO_ERROR(H5E_PLUGIN, H5E_OPENERROR, FAIL, "can't open directory")
do {
@@ -480,7 +492,7 @@ H5PL__find(H5PL_type_t plugin_type, int type_id, char *dir, const void **info)
/* Allocate & initialize the path name */
pathname_len = HDstrlen(dir) + HDstrlen(fdFile.cFileName) + 2;
- if(NULL == (pathname = (char *)H5MM_malloc(pathname_len)))
+ if(NULL == (pathname = (char *)H5MM_malloc(pathname_len)))
HGOTO_ERROR(H5E_PLUGIN, H5E_CANTALLOC, FAIL, "can't allocate memory for path")
HDsnprintf(pathname, pathname_len, "%s\\%s", dir, fdFile.cFileName);
@@ -495,10 +507,10 @@ H5PL__find(H5PL_type_t plugin_type, int type_id, char *dir, const void **info)
HGOTO_DONE(TRUE)
} /* end if */
else
- HDassert(pathname);
+ HDassert(pathname);
pathname = (char *)H5MM_xfree(pathname);
} /* end if */
- } while(FindNextFile(hFind, &fdFile)); /* Find the next file. */
+ } while(FindNextFileA(hFind, &fdFile)); /* Find the next file. */
done:
if(hFind)
@@ -512,17 +524,17 @@ done:
/*-------------------------------------------------------------------------
- * Function: H5PL__open
+ * Function: H5PL__open
*
* Purpose: Iterates through all files to find the right plugin library.
* It loads the dynamic plugin library and keeps it on the list
- * of loaded libraries.
+ * of loaded libraries.
*
- * Return: TRUE on success,
+ * Return: TRUE on success,
* FALSE on not found,
* negative on failure
*
- * Programmer: Raymond Lu
+ * Programmer: Raymond Lu
* 13 February 2013
*
*-------------------------------------------------------------------------
@@ -600,16 +612,16 @@ done:
/*-------------------------------------------------------------------------
- * Function: H5PL__search_table
+ * Function: H5PL__search_table
*
* Purpose: Search in the list of already opened dynamic libraries
* to see if the one we are looking for is already opened.
*
- * Return: TRUE on success,
+ * Return: TRUE on success,
* FALSE on not found,
* Negative on failure
*
- * Programmer: Raymond Lu
+ * Programmer: Raymond Lu
* 13 February 2013
*
*-------------------------------------------------------------------------
@@ -631,12 +643,12 @@ H5PL__search_table(H5PL_type_t plugin_type, int type_id, const void **info)
const H5Z_class2_t *plugin_info;
if(NULL == (get_plugin_info = (H5PL_get_plugin_info_t)H5PL_GET_LIB_FUNC((H5PL_table_g[i]).handle, "H5PLget_plugin_info")))
- HGOTO_ERROR(H5E_DATATYPE, H5E_CANTGET, FAIL, "can't get function for H5PLget_plugin_info")
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTGET, FAIL, "can't get function for H5PLget_plugin_info")
- if(NULL == (plugin_info = (const H5Z_class2_t *)(*get_plugin_info)()))
- HGOTO_ERROR(H5E_DATATYPE, H5E_CANTGET, FAIL, "can't get plugin info")
+ if(NULL == (plugin_info = (const H5Z_class2_t *)(*get_plugin_info)()))
+ HGOTO_ERROR(H5E_DATATYPE, H5E_CANTGET, FAIL, "can't get plugin info")
- *info = plugin_info;
+ *info = plugin_info;
HGOTO_DONE(TRUE)
} /* end if */
} /* end for */
@@ -648,13 +660,13 @@ done:
/*-------------------------------------------------------------------------
- * Function: H5PL__close
+ * Function: H5PL__close
*
* Purpose: Closes the handle for dynamic library
*
- * Return: Non-negative on success/Negative on failure
+ * Return: Non-negative on success/Negative on failure
*
- * Programmer: Raymond Lu
+ * Programmer: Raymond Lu
* 13 February 2013
*
*-------------------------------------------------------------------------
@@ -668,4 +680,3 @@ H5PL__close(H5PL_HANDLE handle)
FUNC_LEAVE_NOAPI(SUCCEED)
} /* end H5PL__close() */
-
diff --git a/src/H5Pdcpl.c b/src/H5Pdcpl.c
index ebd1e0a..de3ab86 100644
--- a/src/H5Pdcpl.c
+++ b/src/H5Pdcpl.c
@@ -54,7 +54,7 @@
/* Define default layout information */
#define H5D_DEF_STORAGE_COMPACT_INIT {(hbool_t)FALSE, (size_t)0, NULL}
#define H5D_DEF_STORAGE_CONTIG_INIT {HADDR_UNDEF, (hsize_t)0}
-#define H5D_DEF_STORAGE_CHUNK_INIT {H5D_CHUNK_BTREE, HADDR_UNDEF, NULL, {{HADDR_UNDEF, NULL}}}
+#define H5D_DEF_STORAGE_CHUNK_INIT {H5D_CHUNK_IDX_BTREE, HADDR_UNDEF, NULL, {{HADDR_UNDEF, NULL}}}
#define H5D_DEF_LAYOUT_CHUNK_INIT {(unsigned)0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, (uint32_t)0, (hsize_t)0, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}}
#define H5D_DEF_STORAGE_VIRTUAL_INIT {{HADDR_UNDEF, 0}, 0, NULL, 0}
#ifdef H5_HAVE_C99_DESIGNATED_INITIALIZER
diff --git a/src/H5Pfapl.c b/src/H5Pfapl.c
index 089bfb9..7a44e86 100644
--- a/src/H5Pfapl.c
+++ b/src/H5Pfapl.c
@@ -920,6 +920,7 @@ H5Pget_driver_info(hid_t plist_id)
void *ret_value; /* Return value */
FUNC_ENTER_API(NULL)
+ H5TRACE1("*x", "i", plist_id);
if(NULL == (plist = (H5P_genplist_t *)H5I_object_verify(plist_id, H5I_GENPROP_LST)))
HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, NULL, "not a property list")
diff --git a/src/H5Tfields.c b/src/H5Tfields.c
index 0e0d4e7..fb186fb 100644
--- a/src/H5Tfields.c
+++ b/src/H5Tfields.c
@@ -163,6 +163,7 @@ H5Tget_member_name(hid_t type_id, unsigned membno)
char *ret_value;
FUNC_ENTER_API(NULL)
+ H5TRACE2("*s", "iIu", type_id, membno);
/* Check args */
if (NULL == (dt = (H5T_t *)H5I_object_verify(type_id,H5I_DATATYPE)))
diff --git a/src/H5Topaque.c b/src/H5Topaque.c
index d68e659..e93bf65 100644
--- a/src/H5Topaque.c
+++ b/src/H5Topaque.c
@@ -121,6 +121,7 @@ H5Tget_tag(hid_t type_id)
char *ret_value;
FUNC_ENTER_API(NULL)
+ H5TRACE1("*s", "i", type_id);
/* Check args */
if (NULL == (dt = H5I_object_verify(type_id,H5I_DATATYPE)))
diff --git a/src/H5VM.c b/src/H5VM.c
index 6f72c57..a1eafb6 100644
--- a/src/H5VM.c
+++ b/src/H5VM.c
@@ -1089,7 +1089,7 @@ H5VM_array_offset_pre(unsigned n, const hsize_t *acc, const hsize_t *offset)
HDassert(offset);
/* Compute offset in array */
- for (i=(int)(n-1), ret_value=0; i>=0; --i)
+ for(i = (int)(n - 1), ret_value = 0; i >= 0; --i)
ret_value += acc[i] * offset[i];
FUNC_LEAVE_NOAPI(ret_value)
diff --git a/src/H5config.h.in b/src/H5config.h.in
index daf7d0d..42dfcfb 100644
--- a/src/H5config.h.in
+++ b/src/H5config.h.in
@@ -20,9 +20,6 @@
/* Define the default plugins path to compile */
#undef DEFAULT_PLUGINDIR
-/* Define the default virtual file driver to compile */
-#undef DEFAULT_VFD
-
/* Define if `dev_t' is a scalar */
#undef DEV_T_IS_SCALAR
@@ -52,9 +49,6 @@
long long values. */
#undef FP_TO_ULLONG_RIGHT_MAXIMUM
-/* Define if gettimeofday() populates the tz pointer passed in */
-#undef GETTIMEOFDAY_GIVES_TZ
-
/* Define to 1 if you have the `alarm' function. */
#undef HAVE_ALARM
@@ -64,9 +58,6 @@
/* Define if the __attribute__(()) extension is present */
#undef HAVE_ATTRIBUTE
-/* Define to 1 if you have the `BSDgettimeofday' function. */
-#undef HAVE_BSDGETTIMEOFDAY
-
/* Define if the compiler understands C99 designated initialization of structs
and unions */
#undef HAVE_C99_DESIGNATED_INITIALIZER
@@ -83,14 +74,10 @@
/* Define if Darwin or Mac OS X */
#undef HAVE_DARWIN
-/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't.
- */
-#undef HAVE_DECL_TZNAME
-
/* Define to 1 if you have the `difftime' function. */
#undef HAVE_DIFFTIME
-/* Define if the direct I/O virtual file driver should be compiled */
+/* Define if the direct I/O virtual file driver (VFD) should be compiled */
#undef HAVE_DIRECT
/* Define to 1 if you have the <dirent.h> header file. */
@@ -196,24 +183,12 @@
/* Define to 1 if you have the `dmalloc' library (-ldmalloc). */
#undef HAVE_LIBDMALLOC
-/* Define to 1 if you have the `lmpe' library (-llmpe). */
-#undef HAVE_LIBLMPE
-
/* Define to 1 if you have the `m' library (-lm). */
#undef HAVE_LIBM
/* Define to 1 if you have the `mpe' library (-lmpe). */
#undef HAVE_LIBMPE
-/* Define to 1 if you have the `mpi' library (-lmpi). */
-#undef HAVE_LIBMPI
-
-/* Define to 1 if you have the `mpich' library (-lmpich). */
-#undef HAVE_LIBMPICH
-
-/* Define to 1 if you have the `mpio' library (-lmpio). */
-#undef HAVE_LIBMPIO
-
/* Define to 1 if you have the `nsl' library (-lnsl). */
#undef HAVE_LIBNSL
@@ -325,12 +300,6 @@
/* Define if `struct text_info' is defined */
#undef HAVE_STRUCT_TEXT_INFO
-/* Define if `struct timezone' is defined */
-#undef HAVE_STRUCT_TIMEZONE
-
-/* Define to 1 if `tm_zone' is a member of `struct tm'. */
-#undef HAVE_STRUCT_TM_TM_ZONE
-
/* Define if `struct videoconfig' is defined */
#undef HAVE_STRUCT_VIDEOCONFIG
@@ -391,14 +360,6 @@
/* Define if `tm_gmtoff' is a member of `struct tm' */
#undef HAVE_TM_GMTOFF
-/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
- `HAVE_STRUCT_TM_TM_ZONE' instead. */
-#undef HAVE_TM_ZONE
-
-/* Define to 1 if you don't have `tm_zone' but do have the external array
- `tzname'. */
-#undef HAVE_TZNAME
-
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
@@ -426,9 +387,6 @@
/* Define to 1 if you have the `_scrsize' function. */
#undef HAVE__SCRSIZE
-/* Define if `__tm_gmtoff' is a member of `struct tm' */
-#undef HAVE___TM_GMTOFF
-
/* Define if your system can't handle converting floating-point values to long
long. */
#undef HW_FP_TO_LLONG_NOT_WORKS
@@ -482,9 +440,6 @@
/* Define if deprecated public API symbols are disabled */
#undef NO_DEPRECATED_SYMBOLS
-/* Define if shared writing must be disabled (CodeWarrior only) */
-#undef NO_SHARED_WRITING
-
/* Name of package */
#undef PACKAGE
@@ -639,9 +594,6 @@
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
-/* Define to 1 if your <sys/time.h> declares `struct tm'. */
-#undef TM_IN_SYS_TIME
-
/* Define if your system can compile unsigned long long to floating-point
casts. */
#undef ULLONG_TO_FP_CAST_WORKS
diff --git a/src/H5private.h b/src/H5private.h
index f971504..a532c79 100644
--- a/src/H5private.h
+++ b/src/H5private.h
@@ -160,6 +160,10 @@
#include <dirent.h>
#endif
+/* Define the default VFD for this platform.
+ * Since the removal of the Windows VFD, this is sec2 for all platforms.
+ */
+#define H5_DEFAULT_VFD H5FD_SEC2
#ifdef H5_HAVE_WIN32_API
/* The following two defines must be before any windows headers are included */
@@ -210,10 +214,10 @@
*/
#define eventa(func_name) h5_mpe_eventa
#define eventb(func_name) h5_mpe_eventb
-#define MPE_LOG_VARS \
- static int eventa(FUNC) = -1; \
- static int eventb(FUNC) = -1; \
- const char* p_event_start = "start" FUNC;
+#define MPE_LOG_VARS \
+ static int eventa(FUNC) = -1; \
+ static int eventb(FUNC) = -1; \
+ char p_event_start[128];
/* Hardwire the color to "red", since that's what all the routines are using
* now. In the future, if we want to change that color for a given routine,
@@ -222,16 +226,17 @@
* color information down to the BEGIN_MPE_LOG macro (which should have a new
* BEGIN_MPE_LOG_COLOR variant). -QAK
*/
-#define BEGIN_MPE_LOG \
- if (H5_MPEinit_g){ \
- if (eventa(FUNC) == -1 && eventb(FUNC) == -1) { \
- const char* p_color = "red"; \
- eventa(FUNC)=MPE_Log_get_event_number(); \
- eventb(FUNC)=MPE_Log_get_event_number(); \
- MPE_Describe_state(eventa(FUNC), eventb(FUNC), (char *)FUNC, (char *)p_color); \
- } \
- MPE_Log_event(eventa(FUNC), 0, (char *)p_event_start); \
- }
+#define BEGIN_MPE_LOG \
+ if (H5_MPEinit_g){ \
+ sprintf(p_event_start, "start %s", FUNC); \
+ if (eventa(FUNC) == -1 && eventb(FUNC) == -1) { \
+ const char* p_color = "red"; \
+ eventa(FUNC)=MPE_Log_get_event_number(); \
+ eventb(FUNC)=MPE_Log_get_event_number(); \
+ MPE_Describe_state(eventa(FUNC), eventb(FUNC), FUNC, p_color); \
+ } \
+ MPE_Log_event(eventa(FUNC), 0, p_event_start); \
+ }
/*------------------------------------------------------------------------
@@ -240,9 +245,9 @@
*
* Programmer: Long Wang
*/
-#define FINISH_MPE_LOG \
- if (H5_MPEinit_g) { \
- MPE_Log_event(eventb(FUNC), 0, (char *)FUNC); \
+#define FINISH_MPE_LOG \
+ if (H5_MPEinit_g) { \
+ MPE_Log_event(eventb(FUNC), 0, FUNC); \
}
#else /* H5_HAVE_MPE */
@@ -566,9 +571,6 @@ typedef struct {
#ifndef HDatol
#define HDatol(S) atol(S)
#endif /* HDatol */
-#ifndef HDBSDgettimeofday
- #define HDBSDgettimeofday(S,P) BSDgettimeofday(S,P)
-#endif /* HDBSDgettimeofday */
#ifndef HDbsearch
#define HDbsearch(K,B,N,Z,F) bsearch(K,B,N,Z,F)
#endif /* HDbsearch */
@@ -1850,7 +1852,7 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
/* Local variables for API routines */
#define FUNC_ENTER_API_VARS \
- MPE_LOG_VARS \
+ MPE_LOG_VARS \
H5TRACE_DECL
#define FUNC_ENTER_API_COMMON \
diff --git a/src/H5public.h b/src/H5public.h
index b4ec8a7..673aa6f 100644
--- a/src/H5public.h
+++ b/src/H5public.h
@@ -94,10 +94,10 @@ extern "C" {
/* Version numbers */
#define H5_VERS_MAJOR 1 /* For major interface/format changes */
#define H5_VERS_MINOR 9 /* For minor interface/format changes */
-#define H5_VERS_RELEASE 212 /* For tweaks, bug-fixes, or development */
+#define H5_VERS_RELEASE 215 /* For tweaks, bug-fixes, or development */
#define H5_VERS_SUBRELEASE "" /* For pre-releases like snap0 */
/* Empty string for real releases. */
-#define H5_VERS_INFO "HDF5 library version: 1.9.212" /* Full version string */
+#define H5_VERS_INFO "HDF5 library version: 1.9.215" /* Full version string */
#define H5check() H5check_version(H5_VERS_MAJOR,H5_VERS_MINOR, \
H5_VERS_RELEASE)
diff --git a/src/Makefile.in b/src/Makefile.in
index 14ed2af..aa0fc7a 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -109,7 +109,8 @@ noinst_PROGRAMS = H5detect$(EXEEXT) H5make_libsettings$(EXEEXT)
TESTS =
subdir = src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -553,7 +554,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
@@ -734,7 +734,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# After making changes, run bin/reconfigure to update other configure related
# files like Makefile.in.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 202
+LT_VERS_REVISION = 205
LT_VERS_AGE = 0
# Our main target, the HDF5 library
diff --git a/src/libhdf5.settings.in b/src/libhdf5.settings.in
index 27df560..424334d 100644
--- a/src/libhdf5.settings.in
+++ b/src/libhdf5.settings.in
@@ -71,4 +71,3 @@ Clear file buffers before write: @CLEARFILEBUF@
Function Stack Tracing: @CODESTACK@
Strict File Format Checks: @STRICT_FORMAT_CHECKS@
Optimization Instrumentation: @INSTRUMENT@
- Large File Support (LFS): @LARGEFILE@
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 255503d..5e23219 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TEST)
#-----------------------------------------------------------------------------
diff --git a/test/Makefile.in b/test/Makefile.in
index 45db393..f5a25ce 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -115,7 +115,8 @@ check_PROGRAMS = $(am__EXEEXT_1) error_test$(EXEEXT) \
TESTS = $(am__EXEEXT_1) $(TEST_SCRIPT)
subdir = test
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -899,7 +900,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/test/tfile.c b/test/tfile.c
index 4bef41c..5de035a 100644
--- a/test/tfile.c
+++ b/test/tfile.c
@@ -3652,9 +3652,7 @@ test_file(void)
test_file_create(); /* Test file creation(also creation templates)*/
test_file_open(); /* Test file opening */
-#ifndef H5_NO_SHARED_WRITING
test_file_close(); /* Test file close behavior */
-#endif /* H5_NO_SHARED_WRITING */
test_get_file_id(); /* Test H5Iget_file_id */
test_get_obj_ids(); /* Test H5Fget_obj_ids for Jira Issue 8528 */
test_file_perm(); /* Test file access permissions */
diff --git a/testpar/CMakeLists.txt b/testpar/CMakeLists.txt
index 8c631a3..d1db0b7 100644
--- a/testpar/CMakeLists.txt
+++ b/testpar/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TEST_PAR)
#-----------------------------------------------------------------------------
@@ -46,6 +46,8 @@ set (H5P_TESTS
t_cache
t_pflush1
t_pflush2
+ t_pshutdown
+ t_prestart
t_shapesame
)
diff --git a/testpar/Makefile.am b/testpar/Makefile.am
index 448f745..1eae439 100644
--- a/testpar/Makefile.am
+++ b/testpar/Makefile.am
@@ -25,7 +25,7 @@ AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/test
# Test programs. These are our main targets.
#
-TEST_PROG_PARA=t_mpi testphdf5 t_cache t_pflush1 t_pflush2 t_shapesame
+TEST_PROG_PARA=t_mpi testphdf5 t_cache t_pflush1 t_pflush2 t_pshutdown t_prestart t_shapesame
check_PROGRAMS = $(TEST_PROG_PARA)
@@ -39,7 +39,8 @@ LDADD = $(LIBH5TEST) $(LIBHDF5)
# Temporary files
# MPItest.h5 is from t_mpi
# Para*.h5 are from testphdf
+# shutdown.h5 is from t_pshutdown
# go is used for debugging. See testphdf5.c.
-CHECK_CLEANFILES+=MPItest.h5 Para*.h5 CacheTestDummy.h5 go
+CHECK_CLEANFILES+=MPItest.h5 Para*.h5 CacheTestDummy.h5 shutdown.h5 go
include $(top_srcdir)/config/conclude.am
diff --git a/testpar/Makefile.in b/testpar/Makefile.in
index 6814acb..959731e 100644
--- a/testpar/Makefile.in
+++ b/testpar/Makefile.in
@@ -103,7 +103,8 @@ check_PROGRAMS = $(am__EXEEXT_1)
TESTS =
subdir = testpar
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -111,7 +112,8 @@ CONFIG_HEADER = $(top_builddir)/src/H5config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__EXEEXT_1 = t_mpi$(EXEEXT) testphdf5$(EXEEXT) t_cache$(EXEEXT) \
- t_pflush1$(EXEEXT) t_pflush2$(EXEEXT) t_shapesame$(EXEEXT)
+ t_pflush1$(EXEEXT) t_pflush2$(EXEEXT) t_pshutdown$(EXEEXT) \
+ t_prestart$(EXEEXT) t_shapesame$(EXEEXT)
t_cache_SOURCES = t_cache.c
t_cache_OBJECTS = t_cache.$(OBJEXT)
t_cache_LDADD = $(LDADD)
@@ -132,6 +134,14 @@ t_pflush2_SOURCES = t_pflush2.c
t_pflush2_OBJECTS = t_pflush2.$(OBJEXT)
t_pflush2_LDADD = $(LDADD)
t_pflush2_DEPENDENCIES = $(LIBH5TEST) $(LIBHDF5)
+t_prestart_SOURCES = t_prestart.c
+t_prestart_OBJECTS = t_prestart.$(OBJEXT)
+t_prestart_LDADD = $(LDADD)
+t_prestart_DEPENDENCIES = $(LIBH5TEST) $(LIBHDF5)
+t_pshutdown_SOURCES = t_pshutdown.c
+t_pshutdown_OBJECTS = t_pshutdown.$(OBJEXT)
+t_pshutdown_LDADD = $(LDADD)
+t_pshutdown_DEPENDENCIES = $(LIBH5TEST) $(LIBHDF5)
t_shapesame_SOURCES = t_shapesame.c
t_shapesame_OBJECTS = t_shapesame.$(OBJEXT)
t_shapesame_LDADD = $(LDADD)
@@ -178,10 +188,10 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
-SOURCES = t_cache.c t_mpi.c t_pflush1.c t_pflush2.c t_shapesame.c \
- $(testphdf5_SOURCES)
-DIST_SOURCES = t_cache.c t_mpi.c t_pflush1.c t_pflush2.c t_shapesame.c \
- $(testphdf5_SOURCES)
+SOURCES = t_cache.c t_mpi.c t_pflush1.c t_pflush2.c t_prestart.c \
+ t_pshutdown.c t_shapesame.c $(testphdf5_SOURCES)
+DIST_SOURCES = t_cache.c t_mpi.c t_pflush1.c t_pflush2.c t_prestart.c \
+ t_pshutdown.c t_shapesame.c $(testphdf5_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -509,7 +519,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
@@ -687,13 +696,14 @@ TRACE = perl $(top_srcdir)/bin/trace
# Temporary files
# MPItest.h5 is from t_mpi
# Para*.h5 are from testphdf
+# shutdown.h5 is from t_pshutdown
# go is used for debugging. See testphdf5.c.
CHECK_CLEANFILES = *.chkexe *.chklog *.clog MPItest.h5 Para*.h5 \
- CacheTestDummy.h5 go
+ CacheTestDummy.h5 shutdown.h5 go
# Test programs. These are our main targets.
#
-TEST_PROG_PARA = t_mpi testphdf5 t_cache t_pflush1 t_pflush2 t_shapesame
+TEST_PROG_PARA = t_mpi testphdf5 t_cache t_pflush1 t_pflush2 t_pshutdown t_prestart t_shapesame
testphdf5_SOURCES = testphdf5.c t_dset.c t_file.c t_file_image.c t_mdset.c \
t_ph5basic.c t_coll_chunk.c t_span_tree.c t_chunk_alloc.c t_filter_read.c \
t_prop.c
@@ -782,6 +792,14 @@ t_pflush2$(EXEEXT): $(t_pflush2_OBJECTS) $(t_pflush2_DEPENDENCIES) $(EXTRA_t_pfl
@rm -f t_pflush2$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(t_pflush2_OBJECTS) $(t_pflush2_LDADD) $(LIBS)
+t_prestart$(EXEEXT): $(t_prestart_OBJECTS) $(t_prestart_DEPENDENCIES) $(EXTRA_t_prestart_DEPENDENCIES)
+ @rm -f t_prestart$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(t_prestart_OBJECTS) $(t_prestart_LDADD) $(LIBS)
+
+t_pshutdown$(EXEEXT): $(t_pshutdown_OBJECTS) $(t_pshutdown_DEPENDENCIES) $(EXTRA_t_pshutdown_DEPENDENCIES)
+ @rm -f t_pshutdown$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(t_pshutdown_OBJECTS) $(t_pshutdown_LDADD) $(LIBS)
+
t_shapesame$(EXEEXT): $(t_shapesame_OBJECTS) $(t_shapesame_DEPENDENCIES) $(EXTRA_t_shapesame_DEPENDENCIES)
@rm -f t_shapesame$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(t_shapesame_OBJECTS) $(t_shapesame_LDADD) $(LIBS)
@@ -808,7 +826,9 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t_pflush1.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t_pflush2.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t_ph5basic.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t_prestart.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t_prop.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t_pshutdown.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t_shapesame.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/t_span_tree.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testphdf5.Po@am__quote@
diff --git a/testpar/t_cache.c b/testpar/t_cache.c
index 20fb9fd..f526a8b 100644
--- a/testpar/t_cache.c
+++ b/testpar/t_cache.c
@@ -4245,7 +4245,6 @@ setup_rand(void)
unsigned predefined_seeds[3] = {33402, 33505, 33422};
unsigned seed;
struct timeval tv;
- struct timezone tz;
if ( ( use_predefined_seeds ) &&
( world_mpi_size == num_predefined_seeds ) ) {
@@ -4261,7 +4260,7 @@ setup_rand(void)
} else {
- if ( HDgettimeofday(&tv, &tz) != 0 ) {
+ if ( HDgettimeofday(&tv, NULL) != 0 ) {
nerrors++;
if ( verbose ) {
diff --git a/testpar/t_pflush1.c b/testpar/t_pflush1.c
index ebe5c38..1bcfeb8 100644
--- a/testpar/t_pflush1.c
+++ b/testpar/t_pflush1.c
@@ -164,12 +164,9 @@ main(int argc, char* argv[])
} /* end else */
/*
- * Some systems like Linux with mpich, if you just _exit without MPI_Finalize
- * called, it would terminate but left the launching process waiting forever.
- * OTHO, some systems like AIX do not like files not closed when MPI_Finalize
- * is called. So, we need to get the MPI file handles, close them by hand,
- * then MPI_Finalize. Then the _exit is still needed to stop at_exit from
- * happening in some systems.
+ * Some systems like AIX do not like files not closed when MPI_Finalize
+ * is called. So, we need to get the MPI file handles, close them by hand.
+ * Then the _exit is still needed to stop at_exit from happening in some systems.
* Note that MPIO VFD returns the address of the file-handle in the VFD struct
* because MPI_File_close wants to modify the file-handle variable.
*/
@@ -195,13 +192,11 @@ main(int argc, char* argv[])
fflush(stdout);
fflush(stderr);
- MPI_Finalize();
HD_exit(0);
error:
fflush(stdout);
fflush(stderr);
- MPI_Finalize();
HD_exit(1);
}
diff --git a/testpar/t_pflush2.c b/testpar/t_pflush2.c
index 743a3d3..03f7c82 100644
--- a/testpar/t_pflush2.c
+++ b/testpar/t_pflush2.c
@@ -101,13 +101,17 @@ check_file(char* name, hid_t fapl)
if(H5Dclose(dset) < 0) goto error;
if(H5Fclose(file) < 0) goto error;
if(H5Pclose(plist) < 0) goto error;
+ if(H5Sclose(space) < 0) goto error;
return 0;
error:
H5E_BEGIN_TRY {
- H5Fclose(file);
H5Pclose(plist);
+ H5Gclose(groups);
+ H5Dclose(dset);
+ H5Fclose(file);
+ H5Sclose(space);
} H5E_END_TRY;
return 1;
}
diff --git a/testpar/t_prestart.c b/testpar/t_prestart.c
new file mode 100644
index 0000000..fab4a7c
--- /dev/null
+++ b/testpar/t_prestart.c
@@ -0,0 +1,138 @@
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * 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. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+/*
+ * Programmer: Mohamad Chaarawi
+ * February 2015
+ *
+ * Purpose: This test opens a file created by the t_pshutdown program
+ * and makes sure the objects created are there.
+ */
+
+#include "testphdf5.h"
+
+int nerrors = 0; /* errors count */
+
+const char *FILENAME[] = {
+ "shutdown",
+ NULL
+};
+
+int
+main (int argc, char **argv)
+{
+ hid_t file_id, dset_id, grp_id;
+ hid_t fapl, sid, mem_dataspace;
+ herr_t ret;
+ char filename[1024];
+ int mpi_size, mpi_rank, ndims, i, j;
+ MPI_Comm comm = MPI_COMM_WORLD;
+ MPI_Info info = MPI_INFO_NULL;
+ hsize_t dims[RANK];
+ hsize_t start[RANK];
+ hsize_t count[RANK];
+ hsize_t stride[RANK];
+ hsize_t block[RANK];
+ DATATYPE *data_array = NULL, *dataptr; /* data buffer */
+
+ MPI_Init(&argc, &argv);
+ MPI_Comm_size(comm, &mpi_size);
+ MPI_Comm_rank(comm, &mpi_rank);
+
+ if(MAINPROCESS)
+ TESTING("proper shutdown of HDF5 library");
+
+ /* Set up file access property list with parallel I/O access */
+ fapl = H5Pcreate(H5P_FILE_ACCESS);
+ VRFY((fapl >= 0), "H5Pcreate succeeded");
+ ret = H5Pset_fapl_mpio(fapl, comm, info);
+ VRFY((ret >= 0), "");
+
+ h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
+ file_id = H5Fopen(filename, H5F_ACC_RDONLY, fapl);
+ VRFY((file_id >= 0), "H5Fopen succeeded");
+
+ grp_id = H5Gopen2(file_id, "Group", H5P_DEFAULT);
+ VRFY((grp_id >= 0), "H5Gopen succeeded");
+
+ dset_id = H5Dopen2(grp_id, "Dataset", H5P_DEFAULT);
+ VRFY((dset_id >= 0), "H5Dopen succeeded");
+
+ sid = H5Dget_space(dset_id);
+ VRFY((dset_id >= 0), "H5Dget_space succeeded");
+
+ ndims = H5Sget_simple_extent_dims(sid, dims, NULL);
+ VRFY((ndims == 2), "H5Sget_simple_extent_dims succeeded");
+ VRFY(dims[0] == ROW_FACTOR*mpi_size, "Wrong dataset dimensions");
+ VRFY(dims[1] == COL_FACTOR*mpi_size, "Wrong dataset dimensions");
+
+ /* allocate memory for data buffer */
+ data_array = (DATATYPE *)HDmalloc(dims[0]*dims[1]*sizeof(DATATYPE));
+ VRFY((data_array != NULL), "data_array HDmalloc succeeded");
+
+ /* Each process takes a slabs of rows. */
+ block[0] = dims[0]/mpi_size;
+ block[1] = dims[1];
+ stride[0] = block[0];
+ stride[1] = block[1];
+ count[0] = 1;
+ count[1] = 1;
+ start[0] = mpi_rank*block[0];
+ start[1] = 0;
+
+ ret = H5Sselect_hyperslab(sid, H5S_SELECT_SET, start, stride, count, block);
+ VRFY((ret >= 0), "H5Sset_hyperslab succeeded");
+
+ /* create a memory dataspace independently */
+ mem_dataspace = H5Screate_simple (RANK, block, NULL);
+ VRFY((mem_dataspace >= 0), "");
+
+ /* write data independently */
+ ret = H5Dread(dset_id, H5T_NATIVE_INT, mem_dataspace, sid,
+ H5P_DEFAULT, data_array);
+ VRFY((ret >= 0), "H5Dwrite succeeded");
+
+ dataptr = data_array;
+
+ for (i=0; i < block[0]; i++){
+ for (j=0; j < block[1]; j++){
+ if(*dataptr != mpi_rank+1) {
+ printf("Dataset Verify failed at [%lu][%lu](row %lu, col %lu): expect %d, got %d\n",
+ (unsigned long)i, (unsigned long)j,
+ (unsigned long)(i+start[0]), (unsigned long)(j+start[1]),
+ mpi_rank+1, *(dataptr));
+ nerrors ++;
+ }
+ dataptr++;
+ }
+ }
+ MPI_Finalize();
+ HDremove(filename);
+
+ /* release data buffers */
+ if(data_array)
+ HDfree(data_array);
+
+ nerrors += GetTestNumErrs();
+
+ if(MAINPROCESS) {
+ if(0 == nerrors)
+ PASSED()
+ else
+ H5_FAILED()
+ }
+
+ return (nerrors!=0);
+}
diff --git a/testpar/t_pshutdown.c b/testpar/t_pshutdown.c
new file mode 100644
index 0000000..be9734f
--- /dev/null
+++ b/testpar/t_pshutdown.c
@@ -0,0 +1,127 @@
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * 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. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+/*
+ * Programmer: Mohamad Chaarawi
+ * February 2015
+ *
+ * Purpose: This test creates a file and a bunch of objects in the
+ * file and then calls MPI_Finalize without closing anything. The
+ * library should exercise the attribute callback destroy attached to
+ * MPI_COMM_SELF and terminate the HDF5 library closing all open
+ * objects. The t_prestart test will read back the file and make sure
+ * all created objects are there.
+ */
+
+#include "testphdf5.h"
+
+int nerrors = 0; /* errors count */
+
+const char *FILENAME[] = {
+ "shutdown",
+ NULL
+};
+
+int
+main (int argc, char **argv)
+{
+ hid_t file_id, dset_id, grp_id;
+ hid_t fapl, sid, mem_dataspace;
+ hsize_t dims[RANK], i;
+ herr_t ret;
+ char filename[1024];
+ int mpi_size, mpi_rank;
+ MPI_Comm comm = MPI_COMM_WORLD;
+ MPI_Info info = MPI_INFO_NULL;
+ hsize_t start[RANK];
+ hsize_t count[RANK];
+ hsize_t stride[RANK];
+ hsize_t block[RANK];
+ DATATYPE *data_array = NULL; /* data buffer */
+
+ MPI_Init(&argc, &argv);
+ MPI_Comm_size(comm, &mpi_size);
+ MPI_Comm_rank(comm, &mpi_rank);
+
+ if(MAINPROCESS)
+ TESTING("proper shutdown of HDF5 library");
+
+ /* Set up file access property list with parallel I/O access */
+ fapl = H5Pcreate(H5P_FILE_ACCESS);
+ VRFY((fapl >= 0), "H5Pcreate succeeded");
+ ret = H5Pset_fapl_mpio(fapl, comm, info);
+ VRFY((ret >= 0), "");
+
+ h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
+ file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
+ VRFY((file_id >= 0), "H5Fcreate succeeded");
+ grp_id = H5Gcreate2(file_id, "Group", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+ VRFY((grp_id >= 0), "H5Gcreate succeeded");
+
+ dims[0] = ROW_FACTOR*mpi_size;
+ dims[1] = COL_FACTOR*mpi_size;
+ sid = H5Screate_simple (RANK, dims, NULL);
+ VRFY((sid >= 0), "H5Screate_simple succeeded");
+
+ dset_id = H5Dcreate2(grp_id, "Dataset", H5T_NATIVE_INT, sid, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+ VRFY((dset_id >= 0), "H5Dcreate succeeded");
+
+ /* allocate memory for data buffer */
+ data_array = (DATATYPE *)HDmalloc(dims[0]*dims[1]*sizeof(DATATYPE));
+ VRFY((data_array != NULL), "data_array HDmalloc succeeded");
+
+ /* Each process takes a slabs of rows. */
+ block[0] = dims[0]/mpi_size;
+ block[1] = dims[1];
+ stride[0] = block[0];
+ stride[1] = block[1];
+ count[0] = 1;
+ count[1] = 1;
+ start[0] = mpi_rank*block[0];
+ start[1] = 0;
+
+ /* put some trivial data in the data_array */
+ for(i=0 ; i<dims[0]*dims[1]; i++)
+ data_array[i] = mpi_rank + 1;
+
+ ret = H5Sselect_hyperslab(sid, H5S_SELECT_SET, start, stride, count, block);
+ VRFY((ret >= 0), "H5Sset_hyperslab succeeded");
+
+ /* create a memory dataspace independently */
+ mem_dataspace = H5Screate_simple (RANK, block, NULL);
+ VRFY((mem_dataspace >= 0), "");
+
+ /* write data independently */
+ ret = H5Dwrite(dset_id, H5T_NATIVE_INT, mem_dataspace, sid,
+ H5P_DEFAULT, data_array);
+ VRFY((ret >= 0), "H5Dwrite succeeded");
+
+ /* release data buffers */
+ if(data_array)
+ HDfree(data_array);
+
+ MPI_Finalize();
+
+ nerrors += GetTestNumErrs();
+
+ if(MAINPROCESS) {
+ if(0 == nerrors)
+ PASSED()
+ else
+ H5_FAILED()
+ }
+
+ return (nerrors!=0);
+}
diff --git a/testpar/t_shapesame.c b/testpar/t_shapesame.c
index d167687..9088470 100644
--- a/testpar/t_shapesame.c
+++ b/testpar/t_shapesame.c
@@ -5142,10 +5142,7 @@ int main(int argc, char **argv)
printf("Shape Same tests finished with no errors\n");
printf("===================================\n");
}
- /* close HDF5 library */
- H5close();
- /* MPI_Finalize must be called AFTER H5close which may use MPI calls */
MPI_Finalize();
/* cannot just return (nerrors) because exit code is limited to 1byte */
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
index 2365326..fd47379 100644
--- a/tools/CMakeLists.txt
+++ b/tools/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS)
#-----------------------------------------------------------------------------
diff --git a/tools/Makefile.in b/tools/Makefile.in
index c4bf941..ef0d6ab 100644
--- a/tools/Makefile.in
+++ b/tools/Makefile.in
@@ -101,7 +101,8 @@ DIST_COMMON = $(top_srcdir)/config/commence.am \
TESTS =
subdir = tools
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -489,7 +490,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/h5copy/CMakeLists.txt b/tools/h5copy/CMakeLists.txt
index 267d92b..8c27536 100644
--- a/tools/h5copy/CMakeLists.txt
+++ b/tools/h5copy/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_H5COPY)
#-----------------------------------------------------------------------------
diff --git a/tools/h5copy/Makefile.in b/tools/h5copy/Makefile.in
index 76573a0..2cb3a1e 100644
--- a/tools/h5copy/Makefile.in
+++ b/tools/h5copy/Makefile.in
@@ -105,7 +105,8 @@ check_PROGRAMS = $(am__EXEEXT_1)
TESTS = $(am__EXEEXT_1) $(TEST_SCRIPT)
subdir = tools/h5copy
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -497,7 +498,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/h5diff/CMakeLists.txt b/tools/h5diff/CMakeLists.txt
index 35c55a4..f539d20 100644
--- a/tools/h5diff/CMakeLists.txt
+++ b/tools/h5diff/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_H5DIFF)
#-----------------------------------------------------------------------------
diff --git a/tools/h5diff/Makefile.in b/tools/h5diff/Makefile.in
index 6a8d2ac..860590c 100644
--- a/tools/h5diff/Makefile.in
+++ b/tools/h5diff/Makefile.in
@@ -105,7 +105,8 @@ check_PROGRAMS = $(am__EXEEXT_2)
TESTS = $(am__EXEEXT_2) $(TEST_SCRIPT)
subdir = tools/h5diff
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -504,7 +505,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/h5dump/CMakeLists.txt b/tools/h5dump/CMakeLists.txt
index 584222e..4559ae3 100644
--- a/tools/h5dump/CMakeLists.txt
+++ b/tools/h5dump/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_H5DUMP)
#-----------------------------------------------------------------------------
diff --git a/tools/h5dump/Makefile.in b/tools/h5dump/Makefile.in
index 8cb1661..287713d 100644
--- a/tools/h5dump/Makefile.in
+++ b/tools/h5dump/Makefile.in
@@ -106,7 +106,8 @@ bin_PROGRAMS = h5dump$(EXEEXT)
TESTS = $(am__EXEEXT_1) $(TEST_SCRIPT)
subdir = tools/h5dump
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -503,7 +504,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/h5import/CMakeLists.txt b/tools/h5import/CMakeLists.txt
index a18133f..2ba2b78 100644
--- a/tools/h5import/CMakeLists.txt
+++ b/tools/h5import/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_H5IMPORT)
#-----------------------------------------------------------------------------
diff --git a/tools/h5import/Makefile.in b/tools/h5import/Makefile.in
index d3b0185..7b9eadc 100644
--- a/tools/h5import/Makefile.in
+++ b/tools/h5import/Makefile.in
@@ -105,7 +105,8 @@ bin_PROGRAMS = h5import$(EXEEXT)
TESTS = $(am__EXEEXT_1) $(TEST_SCRIPT)
subdir = tools/h5import
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -497,7 +498,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/h5jam/CMakeLists.txt b/tools/h5jam/CMakeLists.txt
index a8e3a7c..412a2f0 100644
--- a/tools/h5jam/CMakeLists.txt
+++ b/tools/h5jam/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_H5JAM)
#-----------------------------------------------------------------------------
diff --git a/tools/h5jam/Makefile.in b/tools/h5jam/Makefile.in
index d0c8f16..4c40784 100644
--- a/tools/h5jam/Makefile.in
+++ b/tools/h5jam/Makefile.in
@@ -105,7 +105,8 @@ check_PROGRAMS = tellub$(EXEEXT) h5jamgentest$(EXEEXT) getub$(EXEEXT)
TESTS = $(TEST_SCRIPT)
subdir = tools/h5jam
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -509,7 +510,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/h5ls/CMakeLists.txt b/tools/h5ls/CMakeLists.txt
index f3749e3..0d163ce 100644
--- a/tools/h5ls/CMakeLists.txt
+++ b/tools/h5ls/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_H5LS)
#-----------------------------------------------------------------------------
diff --git a/tools/h5ls/Makefile.in b/tools/h5ls/Makefile.in
index 2c4fe10..bd1244c 100644
--- a/tools/h5ls/Makefile.in
+++ b/tools/h5ls/Makefile.in
@@ -104,7 +104,8 @@ bin_PROGRAMS = h5ls$(EXEEXT)
TESTS = $(TEST_SCRIPT)
subdir = tools/h5ls
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -489,7 +490,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/h5repack/CMakeLists.txt b/tools/h5repack/CMakeLists.txt
index cb8720e..f6c3050 100644
--- a/tools/h5repack/CMakeLists.txt
+++ b/tools/h5repack/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_H5REPACK)
#-----------------------------------------------------------------------------
diff --git a/tools/h5repack/Makefile.in b/tools/h5repack/Makefile.in
index 50e7341..9edb827 100644
--- a/tools/h5repack/Makefile.in
+++ b/tools/h5repack/Makefile.in
@@ -108,7 +108,8 @@ bin_PROGRAMS = h5repack$(EXEEXT)
TESTS = $(am__EXEEXT_1) $(TEST_SCRIPT)
subdir = tools/h5repack
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -521,7 +522,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/h5stat/CMakeLists.txt b/tools/h5stat/CMakeLists.txt
index 0658216..2969405 100644
--- a/tools/h5stat/CMakeLists.txt
+++ b/tools/h5stat/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_H5STAT)
#-----------------------------------------------------------------------------
diff --git a/tools/h5stat/Makefile.in b/tools/h5stat/Makefile.in
index 32b6d4c..9e9a6aa 100644
--- a/tools/h5stat/Makefile.in
+++ b/tools/h5stat/Makefile.in
@@ -106,7 +106,8 @@ bin_PROGRAMS = h5stat$(EXEEXT)
TESTS = $(am__EXEEXT_1) $(TEST_SCRIPT)
subdir = tools/h5stat
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -499,7 +500,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/lib/CMakeLists.txt b/tools/lib/CMakeLists.txt
index ce29208..35ad46e 100644
--- a/tools/lib/CMakeLists.txt
+++ b/tools/lib/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_LIB)
#-----------------------------------------------------------------------------
diff --git a/tools/lib/Makefile.in b/tools/lib/Makefile.in
index b2afb07..26e88ee 100644
--- a/tools/lib/Makefile.in
+++ b/tools/lib/Makefile.in
@@ -103,7 +103,8 @@ check_PROGRAMS = $(am__EXEEXT_1)
TESTS = $(am__EXEEXT_1)
subdir = tools/lib
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -486,7 +487,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/misc/CMakeLists.txt b/tools/misc/CMakeLists.txt
index 8af05b4..932948d 100644
--- a/tools/misc/CMakeLists.txt
+++ b/tools/misc/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_TOOLS_MISC)
#-----------------------------------------------------------------------------
diff --git a/tools/misc/Makefile.in b/tools/misc/Makefile.in
index 1160938..06396f8 100644
--- a/tools/misc/Makefile.in
+++ b/tools/misc/Makefile.in
@@ -107,7 +107,8 @@ bin_PROGRAMS = h5debug$(EXEEXT) h5repart$(EXEEXT) h5mkgrp$(EXEEXT)
TESTS = $(am__EXEEXT_1) $(TEST_SCRIPT)
subdir = tools/misc
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -524,7 +525,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/perform/CMakeLists.txt b/tools/perform/CMakeLists.txt
index 0713661..e6abf7f 100644
--- a/tools/perform/CMakeLists.txt
+++ b/tools/perform/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8.11)
+cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_PERFORM )
#-----------------------------------------------------------------------------
diff --git a/tools/perform/Makefile.in b/tools/perform/Makefile.in
index 24aa8be..728ce45 100644
--- a/tools/perform/Makefile.in
+++ b/tools/perform/Makefile.in
@@ -111,7 +111,8 @@ check_PROGRAMS = iopipe$(EXEEXT) chunk$(EXEEXT) overhead$(EXEEXT) \
TESTS = $(am__EXEEXT_3)
subdir = tools/perform
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/aclocal_cxx.m4 \
+ $(top_srcdir)/m4/aclocal_fc.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
@@ -528,7 +529,6 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTRUMENT = @INSTRUMENT@
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
-LARGEFILE = @LARGEFILE@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
diff --git a/tools/perform/perf.c b/tools/perform/perf.c
index 7d329f0..1bd33b6 100644
--- a/tools/perform/perf.c
+++ b/tools/perform/perf.c
@@ -390,7 +390,7 @@ die_jar_jar_die:
free(tmp);
if (opt_correct) free(tmp2);
-
+
MPI_Finalize();
return(0);
diff --git a/tools/perform/sio_standalone.h b/tools/perform/sio_standalone.h
index b2f8220..4eb1ded 100644
--- a/tools/perform/sio_standalone.h
+++ b/tools/perform/sio_standalone.h
@@ -87,7 +87,6 @@
#define HDatof(S) atof(S)
#define HDatoi(S) atoi(S)
#define HDatol(S) atol(S)
-#define HDBSDgettimeofday(S,P) BSDgettimeofday(S,P)
#define HDbsearch(K,B,N,Z,F) bsearch(K,B,N,Z,F)
#define HDcalloc(N,Z) calloc(N,Z)
#define HDceil(X) ceil(X)
diff --git a/vms/COPYING b/vms/COPYING
deleted file mode 100644
index 6903daf..0000000
--- a/vms/COPYING
+++ /dev/null
@@ -1,16 +0,0 @@
-
- Copyright by The HDF Group and
- The Board of Trustees of the University of Illinois.
- All rights reserved.
-
- The files and subdirectories in this directory are 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://www.hdfgroup.org/HDF5/doc/Copyright.html. If you do not
- have access to either file, you may request a copy from
- help@hdfgroup.org.
-
diff --git a/vms/build.com b/vms/build.com
deleted file mode 100644
index c6b972a..0000000
--- a/vms/build.com
+++ /dev/null
@@ -1,65 +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.
-$!#
-$!
-$!
-$! This file builds C, Fortran, C++ HDF5 libraries and runs the tests
-$! Specify location of the top HDF5 source directory
-$
-$ hdf5top == "disk$user:[hdfgroup.hdf5]"
-$ len = F$LENGTH(hdf5top)
-$ tmp = F$EXTRACT(0, len-1, hdf5top)
-$ hdf5vms = tmp + ".VMS]"
-$ hdf5ctest = tmp + ".TEST]"
-$ hdf5f90test = tmp + ".FORTRAN.TEST]"
-$ hdf5cxxtest = tmp + ".C__.TEST]"
-$ hdf5toolstest = tmp + ".TOOLS.TESTFILES]"
-$ hdf5toolstest_h5diff = tmp + ".TOOLS.H5DIFF.TESTFILES]"
-$ hdf5toolstest_h5repack = tmp + ".TOOLS.H5REPACK.TESTFILES]"
-$ hdf5toolstest_h5copy = tmp + ".TOOLS.H5COPY.TESTFILES]"
-$ hdf5toolstest_h5import = tmp + ".TOOLS.H5IMPORT.TESTFILES]"
-$ hdf5toolstest_h5jam = tmp + ".TOOLS.H5JAM.TESTFILES]"
-$ set def 'hdf5vms'
-$@make
-$ set def 'hdf5ctest'
-$@check
-$ set def 'hdf5f90test'
-$@check
-$ set def 'hdf5cxxtest'
-$@check
-$ set def 'hdf5toolstest'
-$ copy [-.h5dump]check_h5dump.com check_h5dump.com
-$ copy [-.h5ls]check_h5ls.com check_h5ls.com
-$@check_h5dump.com
-$@check_h5ls.com
-$ set def 'hdf5toolstest_h5diff'
-$ copy [-]check_h5diff.com check_h5diff.com
-$@check_h5diff.com
-$ set def 'hdf5toolstest_h5repack'
-$ copy [-]check_h5repack.com check_h5repack.com
-$@check_h5repack.com
-$!
-$ set def 'hdf5toolstest_h5copy'
-$ copy [-]check_h5copy.com check_h5copy.com
-$@check_h5copy.com
-$!
-$ set def 'hdf5toolstest_h5import'
-$ copy [.-]check_h5import.com check_h5import.com
-$@check_h5import.com
-$!
-$ set def 'hdf5toolstest_h5jam'
-$ copy [.-]check_h5jam.com check_h5jam.com
-$@check_h5jam.com
-$
-$ exit
diff --git a/vms/c++/examples/check.com b/vms/c++/examples/check.com
deleted file mode 100644
index 0149819..0000000
--- a/vms/c++/examples/check.com
+++ /dev/null
@@ -1,53 +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.
-$!#
-$!
-$! Command file to run C++ examples
-$!
-$!
-$ type sys$input
-
- Running create
-$ run create
-$!
-$ type sys$input
-
- Running readdata
-$ run readdata
-$!
-$ type sys$input
-
- Running writedata
-$ run writedata
-$!
-$ type sys$input
-
- Running compound
-$ run compound
-$!
-$ type sys$input
-
- Running extend_ds
-$ run extend_ds
-$!
-$ type sys$input
-
- Running chunks
-$ run chunks
-$!
-$ type sys$input
-
- Running h5group
-$ run h5group
-$ exit
diff --git a/vms/c++/examples/make.com b/vms/c++/examples/make.com
deleted file mode 100644
index 45d74ce..0000000
--- a/vms/c++/examples/make.com
+++ /dev/null
@@ -1,79 +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.
-$!#
-$!
-$! Make HDF5 C++ examples
-$!
-$ define zlib_dir disk$user:[hdfgroup.zlib-1_2_5_ieee]
-$ cxxopt = "/float=ieee_float/standard=strict_ansi/define=H5_VMS/include=zlib_dir"
-$ ccc := cxx 'cxxopt /include=([-.-.include])
-$!
-$!
-$ cxxobj= "chunks.cxx, compound.cxx, create.cxx, extend_ds.cxx, h5group.cxx, "+-
- "readdata.cxx, writedata.cxx"
-$!
-$!
-$ ccc 'cxxobj
-$ type sys$input
-
- Creating chunks
-$ cxxlink chunks, -
- [-.-.lib]hdf5_cplus.olb/lib, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
-
- Creating compound
-$ cxxlink compound, -
- [-.-.lib]hdf5_cplus.olb/lib, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
-
- Creating create
-$ cxxlink create, -
- [-.-.lib]hdf5_cplus.olb/lib, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
-
- Creating extend_ds
-$ cxxlink extend_ds, -
- [-.-.lib]hdf5_cplus.olb/lib, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
-
- Creating h5group
-$ cxxlink h5group, -
- [-.-.lib]hdf5_cplus.olb/lib, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
-
- Creating readdata
-$ cxxlink readdata, -
- [-.-.lib]hdf5_cplus.olb/lib, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
-
- Creating writedata
-$ cxxlink writedata, -
- [-.-.lib]hdf5_cplus.olb/lib, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
-$!
-$ exit
diff --git a/vms/c++/src/make.com b/vms/c++/src/make.com
deleted file mode 100644
index 37525bc..0000000
--- a/vms/c++/src/make.com
+++ /dev/null
@@ -1,85 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make HDF5 C++ library
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! cxxopt = "/float=ieee_float/standard=strict_ansi/define=H5_VMS"
-$ ccc := cxx 'cxxopt /include=([-.-.src])
-$!
-$! type sys$input
-$! Creating HDF5 C++ library
-$!
-$ lib/create/object hdf5_cplus.olb
-$ ccc H5AbstractDs.cxx
-$ lib/insert/object hdf5_cplus H5AbstractDs
-$ ccc H5ArrayType.cxx
-$ lib/insert/object hdf5_cplus H5ArrayType
-$ ccc H5AtomType.cxx
-$ lib/insert/object hdf5_cplus H5AtomType
-$ ccc H5Attribute.cxx
-$ lib/insert/object hdf5_cplus H5Attribute
-$ ccc H5CommonFG.cxx
-$ lib/insert/object hdf5_cplus H5CommonFG
-$ ccc H5CompType.cxx
-$ lib/insert/object hdf5_cplus H5CompType
-$ ccc H5DataSet.cxx
-$ lib/insert/object hdf5_cplus H5DataSet
-$ ccc H5DataSpace.cxx
-$ lib/insert/object hdf5_cplus H5DataSpace
-$ ccc H5DataType.cxx
-$ lib/insert/object hdf5_cplus H5DataType
-$ ccc H5DcreatProp.cxx
-$ lib/insert/object hdf5_cplus H5DcreatProp
-$ ccc H5DxferProp.cxx
-$ lib/insert/object hdf5_cplus H5DxferProp
-$ ccc H5EnumType.cxx
-$ lib/insert/object hdf5_cplus H5EnumType
-$ ccc H5Exception.cxx
-$ lib/insert/object hdf5_cplus H5Exception
-$ ccc H5FaccProp.cxx
-$ lib/insert/object hdf5_cplus H5FaccProp
-$ ccc H5FcreatProp.cxx
-$ lib/insert/object hdf5_cplus H5FcreatProp
-$ ccc H5File.cxx
-$ lib/insert/object hdf5_cplus H5File
-$ ccc H5FloatType.cxx
-$ lib/insert/object hdf5_cplus H5FloatType
-$ ccc H5Group.cxx
-$ lib/insert/object hdf5_cplus H5Group
-$ ccc H5IdComponent.cxx
-$ lib/insert/object hdf5_cplus H5IdComponent
-$ ccc H5IntType.cxx
-$ lib/insert/object hdf5_cplus H5IntType
-$ ccc H5Library.cxx
-$ lib/insert/object hdf5_cplus H5Library
-$ ccc H5Object.cxx
-$ lib/insert/object hdf5_cplus H5Object
-$ ccc H5PredType.cxx
-$ lib/insert/object hdf5_cplus H5PredType
-$ ccc H5PropList.cxx
-$ lib/insert/object hdf5_cplus H5PropList
-$ ccc H5StrType.cxx
-$ lib/insert/object hdf5_cplus H5StrType
-$ ccc H5VarLenType.cxx
-$ lib/insert/object hdf5_cplus H5VarLenType
-$!
-$ type sys$input
- Done
-$ exit
diff --git a/vms/c++/test/check.com b/vms/c++/test/check.com
deleted file mode 100644
index cd523c3..0000000
--- a/vms/c++/test/check.com
+++ /dev/null
@@ -1,23 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Command file to run C++ tests
-$!
-$ type sys$input
- Running C++ tests
-$!
-$ run testhdf5
-$ exit
diff --git a/vms/c++/test/make.com b/vms/c++/test/make.com
deleted file mode 100644
index 7016a18..0000000
--- a/vms/c++/test/make.com
+++ /dev/null
@@ -1,49 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make HDF5 C++ library tests
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! cxxopt = "/float=ieee_float/standard=strict_ansi/define=H5_VMS"
-$
-$ ccc := cxx 'cxxopt /include=([-.-.src], [-.-.test], [-.src])
-$!
-$!
-$!
-$ ccc h5cpputil
-$ ccc dsets
-$ ccc tattr
-$ ccc tcompound
-$ ccc testhdf5
-$ ccc tfile
-$ ccc tfilter
-$ ccc th5s
-$ ccc tlinks
-$ ccc trefer
-$ ccc ttypes
-$ ccc tvlstr
-$ type sys$input
- Creating testhdf5
-$ cxxlink testhdf5, dsets, h5cpputil, tattr, tcompound, tfile, tfilter, th5s, -
- tlinks, trefer, ttypes, tvlstr, -
- [-.src]hdf5_cplus.olb/lib, [-.-.test]libh5test.olb/lib, -
- [-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Done
-$ exit
diff --git a/vms/examples/check.com b/vms/examples/check.com
deleted file mode 100644
index e78dcf5..0000000
--- a/vms/examples/check.com
+++ /dev/null
@@ -1,31 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$ type sys$input
- Running examples
-$ run h5_write
-$ run h5_read
-$ run h5_extend_write
-$ run h5_chunk_read
-$ run h5_compound
-$ run h5_group
-$ run h5_select
-$ run h5_attribute
-$ run h5_mount
-$ run h5_reference
-$ run h5_ref2reg
-$ run h5_drivers
-$ exit
diff --git a/vms/examples/make.com b/vms/examples/make.com
deleted file mode 100644
index 2de398e..0000000
--- a/vms/examples/make.com
+++ /dev/null
@@ -1,79 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make HDF5 C examples
-$!
-$ define zlib_dir disk$user:[hdfgroup.zlib-1_2_5_ieee]
-$ ccopt = "/float=ieee_float/nowarnings/define=H5_VMS/include=zlib_dir"
-$ ccc := cc 'ccopt /include=([-.-.include])
-$ type sys$input
- Compiling C examples
-$!
-$ cobj= "h5_write.c, h5_read.c, h5_extend_write.c, h5_chunk_read.c, "+-
- "h5_compound.c, h5_group.c, h5_select.c, h5_attribute.c, "+-
- "h5_mount.c, h5_ref2reg.c, h5_reference.c, h5_drivers.c "
-$!
-$ ccc 'cobj
-$
-$ type sys$input
- Creating h5_write
-$ link h5_write, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_read
-$ link h5_read, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_extend_write
-$ link h5_extend_write, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_chunk_read
-$ link h5_chunk_read, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_compound
-$ link h5_compound, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_group
-$ link h5_group, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_select
-$ link h5_select, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_attribute
-$ link h5_attribute, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_mount
-$ link h5_mount, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_reference
-$ link h5_reference, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_ref2reg
-$ link h5_ref2reg, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Creating h5_drivers
-$ link h5_drivers, -
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ exit
diff --git a/vms/fortran/examples/check.com b/vms/fortran/examples/check.com
deleted file mode 100644
index 63c1c25..0000000
--- a/vms/fortran/examples/check.com
+++ /dev/null
@@ -1,94 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Command file to run Fortran examples; examples need to run in a defined
-$! order due to file dependencies.
-$!
-$ type sys$input
-
-
- Running Fortran examples
-
-$ type sys$input
-
- Running dsetexample
-$ run dsetexample
-$
-$ type sys$input
-
- Running fileexample
-$ run fileexample
-$
-$ type sys$input
-
- Running rwdsetexample
-$ run rwdsetexample
-$
-$ type sys$input
-
- Running attrexample
-$ run attrexample
-$
-$ type sys$input
-
- Running groupexample
-$ run groupexample
-$
-$ type sys$input
-
- Running grpsexample
-$ run grpsexample
-$
-$ type sys$input
-
- Running grpdsetexample
-$ run grpdsetexample
-$
-$ type sys$input
-
- Running hyperslab
-$ run hyperslab
-$
-$ type sys$input
-
- Running selectele
-$ run selectele
-$
-$ type sys$input
-
- Running grpit
-$ run grpit
-$
-$ type sys$input
-
- Running refobjexample
-$ run refobjexample
-$
-$ type sys$input
-
- Running refregexample
-$ run refregexample
-$
-$ type sys$input
-
- Running mountexample
-$ run mountexample
-$
-$ type sys$input
-
- Running compound
-$ run compound
-$ exit
diff --git a/vms/fortran/examples/make.com b/vms/fortran/examples/make.com
deleted file mode 100644
index 6c5bfe7..0000000
--- a/vms/fortran/examples/make.com
+++ /dev/null
@@ -1,117 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make HDF5 Fortran examples
-$!
-$ fcopt = "/float=ieee_float/define=H5_VMS"
-$ define zlib_dir disk$user:[hdfgroup.zlib-1_2_5_ieee]
-$ fff := fortran 'fcopt /module=[-.-.include]
-$
-$ type sys$input
- Compiling HDF5 Fortran examples
-$!
-$ ffiles="dsetexample.f90, fileexample.f90, rwdsetexample.f90, "+-
- "attrexample.f90, groupexample.f90, grpsexample.f90, "+-
- "grpdsetexample.f90, hyperslab.f90, selectele.f90, grpit.f90,"+-
- "refobjexample.f90, refregexample.f90, mountexample.f90,"+-
- "compound.f90"
-$!
-$ fff 'ffiles
-$ type sys$input
-
- Creating dsetexample
-$ link dsetexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating fileexample
-$ link fileexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating rwdsetexample
-$ link rwdsetexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating attrexample
-$ link attrexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating groupexample
-$ link groupexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating grpsexample
-$ link grpsexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating grpdsetexample
-$ link grpdsetexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating hyperslab
-$ link hyperslab ,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating selectele
-$ link selectele,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating grpit
-$ link grpit,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating refobjexample
-$ link refobjexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating refregexample
-$ link refregexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating mountexample
-$ link mountexample,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
-
- Creating compound
-$ link compound,-
- [-.-.lib]hdf5_fortran.olb/lib,-
- [-.-.lib]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ exit
diff --git a/vms/fortran/src/make.com b/vms/fortran/src/make.com
deleted file mode 100644
index 5ad89ff..0000000
--- a/vms/fortran/src/make.com
+++ /dev/null
@@ -1,75 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make HDF5 Fortran library
-$!
-$! The thre two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$!
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/debug/nooptimize/include=zlib_dir"
-$! fcopt = "/float=ieee_float/define=H5_VMS/debug/nooptimize/include=zlib_dir"
-$ ccc := cc 'ccopt /include=[-.-.src]
-$ fff := fortran 'fcopt
-$ type sys$input
- Creating and running H5test_kind to generate H5fortran_detect.f90
-$!
-$ fff H5test_kind_sizeof.f90
-$ link H5test_kind_sizeof
-$ define/user_mode sys$output H5fortran_detect.f90
-$ run H5test_kind_sizeof
-$!
-$ type sys$input
- Creating and running H5fortran_detect.f90 to generate H5fort_type_defines.h
-$!
-$ fff H5fortran_detect.f90
-$ link H5fortran_detect
-$ define/user_mode sys$output H5fort_type_defines.h
-$ run H5fortran_detect
-$!
-$ type sys$input
- Creating and running H5match_types to generate H5fortran_types.f90
-$!
-$ ccc H5match_types.c
-$ link H5match_types
-$ run H5match_types
-$!
-$!
-$ type sys$input
- Creating HDF5 Fortran library
-$!
-$ cobj="H5f90kit, H5_f, H5Af, H5Df, H5Ef, H5Ff, H5Gf, "+-
- "H5If, H5Lf, H5Of, H5Pf, H5Rf, H5Sf, H5Tf, H5Zf"
-$ ffiles= "H5_ff.f90, H5Aff.f90, H5Dff.f90, H5Eff.f90,"+-
- "H5Lff.f90, H5Off.f90,"+-
- "H5Fff.f90, H5Gff.f90, H5Iff.f90, H5Pff.f90, H5Rff.f90, H5Sff.f90,"+-
- "H5Tff.f90, H5Zff.f90, H5_DBLE_InterfaceInclude.f90, HDF5.f90"
-$ fobj="H5f90global, "+-
- "H5fortran_types, H5_ff, H5Aff, H5Dff, H5Eff,"+-
- "H5Fff, H5Gff, H5Iff, H5Lff, H5Off, H5Pff, H5Rff, H5Sff,"+-
- "H5Tff, H5Zff, H5_DBLE_InterfaceInclude, HDF5"
-$!
-$ ccc 'cobj
-$ fff H5fortran_types.f90
-$ fff H5f90global.f90
-$
-$ fff 'ffiles
-$ library/create []hdf5_fortran 'cobj
-$ library/replace []hdf5_fortran 'fobj
-$ type sys$input
- Done
-$ exit
diff --git a/vms/fortran/test/check.com b/vms/fortran/test/check.com
deleted file mode 100644
index 0a53e20..0000000
--- a/vms/fortran/test/check.com
+++ /dev/null
@@ -1,26 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Command file to run Fortran tests
-$!
-$!
-$ type sys$input
- Running Fortran tests
-$ run fortranlib_test
-$ run fortranlib_test_1_8
-$ run fflush1
-$ run fflush2
-$ exit
diff --git a/vms/fortran/test/make.com b/vms/fortran/test/make.com
deleted file mode 100644
index 478c64c..0000000
--- a/vms/fortran/test/make.com
+++ /dev/null
@@ -1,69 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make HDF5 Fortran tests
-$!
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/debug/nooptimize/include=zlib_dir"
-$! fcopt = "/float=ieee_float/define=H5_VMS/debug/nooptimize/include=zlib_dir"
-$ ccc := cc 'ccopt /include=[-.-.src]
-$ fff := fortran 'fcopt /module=[-.src]
-$
-$ type sys$input
- Creating HDF5 Fortran tests
-$!
-$ cobj="t "
-$ ffiles="fortranlib_test.f90, tH5F.f90, tH5D.f90, "+-
- "tH5R.f90, tH5S.f90, tH5T.f90, tH5VL.f90, tH5Z.f90, tH5Sselect.f90,"+-
- "tH5P.f90, tH5A.f90, tH5I.f90, tH5G.f90, tH5E.f90, tf.f90"
-$ ffiles18="fortranlib_test_1_8.f90, tH5F.f90, tH5O.f90,"+-
- "tH5A_1_8.f90, tH5G_1_8.f90"
-
-$ fobj="fortranlib_test, tH5F, tH5D, "+-
- "tH5R, tH5S, tH5T, tH5VL, tH5Z, tH5Sselect,"+-
- "tH5P, tH5A, tH5I, tH5G, tH5E, tf"
-$ fobj18="fortranlib_test_1_8, tH5F, tH5O, tH5A_1_8, tH5G_1_8"
-$!
-$ ccc 'cobj
-$ fff 'ffiles
-$ fff 'ffiles18
-$ fff fflush1.f90
-$ fff fflush2.f90
-$ library/create []h5test_fortran t, tf
-$ link fflush1,h5test_fortran.olb/lib,-
- [-.-.test]libh5test.olb/lib, -
- [-.src]hdf5_fortran.olb/lib,-
- [-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ link fflush2,h5test_fortran.olb/lib,-
- [-.-.test]libh5test.olb/lib, -
- [-.src]hdf5_fortran.olb/lib,-
- [-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ link/exec=fortranlib_test.exe -
- fortranlib_test.obj, tH5F.obj, tH5D.obj, -
- tH5R.obj, tH5S.obj, tH5T.obj, tH5VL.obj, tH5Z.obj, tH5Sselect.obj, -
- tH5P.obj, tH5A.obj, tH5I.obj, tH5G.obj, tH5E.obj,-
- h5test_fortran.olb/lib,[-.-.test]libh5test.olb/lib, -
- [-.src]hdf5_fortran.olb/lib,-
- [-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ link/exec=fortranlib_test_1_8.exe -
- fortranlib_test_1_8.obj, tH5F.obj, tH5O.obj, tH5A_1_8.obj, tH5G_1_8.obj,-
- h5test_fortran.olb/lib,[-.-.test]libh5test.olb/lib, -
- [-.src]hdf5_fortran.olb/lib,-
- [-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created HDF5 Fortran tests
-$!
-$ exit
diff --git a/vms/install.com b/vms/install.com
deleted file mode 100644
index f1f9304..0000000
--- a/vms/install.com
+++ /dev/null
@@ -1,166 +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.
-$!#
-$!
-$!
-$! This command file installs built binaries, header files, examples and
-$! scripts under [.hdf5] directory in the main distribution
-$!
-$
-$!
-$!
-$ hdf5top = F$DIRECTORY()
-$ len = F$LENGTH(hdf5top)
-$ hdf5top_dir = F$EXTRACT(0, len-4, hdf5top)
-$!
-$ hdf5src = hdf5top_dir + "SRC]"
-$ hdf5examples = hdf5top_dir + "EXAMPLES]"
-$ hdf5tools_h5copy = hdf5top_dir + "TOOLS.H5COPY]"
-$ hdf5tools_h5diff = hdf5top_dir + "TOOLS.H5DIFF]"
-$ hdf5tools_h5dump = hdf5top_dir + "TOOLS.H5DUMP]"
-$ hdf5tools_h5ls = hdf5top_dir + "TOOLS.H5LS]"
-$ hdf5tools_h5repack = hdf5top_dir + "TOOLS.H5REPACK]"
-$ hdf5tools_h5jam = hdf5top_dir + "TOOLS.H5JAM]"
-$ hdf5tools_h5import = hdf5top_dir + "TOOLS.H5IMPORT]"
-$ hdf5tools_h5stat = hdf5top_dir + "TOOLS.H5STAT]"
-$ hdf5tools_h5misc = hdf5top_dir + "TOOLS.H5MISC]"
-$ hdf5fortran_examples = hdf5top_dir + "FORTRAN.EXAMPLES]"
-$ hdf5fortran_src = hdf5top_dir + "FORTRAN.SRC]"
-$ hdf5cxx_src = hdf5top_dir + "C__.SRC]"
-$ hdf5cxx_examples = hdf5top_dir + "C__.EXAMPLES]"
-$!
-$ hdf5install = hdf5top_dir + "HDF5]"
-$ hdf5install_include = hdf5top_dir + "HDF5.INCLUDE]"
-$ hdf5install_examples = hdf5top_dir + "HDF5.EXAMPLES]"
-$ hdf5install_examples_c = hdf5top_dir + "HDF5.EXAMPLES.C]"
-$ hdf5install_examples_f90 = hdf5top_dir + "HDF5.EXAMPLES.F90]"
-$ hdf5install_examples_cxx = hdf5top_dir + "HDF5.EXAMPLES.CXX]"
-$ hdf5install_lib = hdf5top_dir + "HDF5.LIB]"
-$ hdf5install_bin = hdf5top_dir + "HDF5.BIN]"
-$
-$ if F$SEARCH(hdf5install) .NES. ""
-$ then write sys$output "''hdf5install' directory exists, will not create"
-$ else
-$ write sys$output "Creating ''hdf5install'..."
-$ create/dir 'hdf5install'
-$ endif
-$
-$ if F$SEARCH(hdf5install_include) .NES. ""
-$ then write sys$output "''hdf5install_include' directory exists, will not create"
-$ else
-$ write sys$output "Creating ''hdf5install_include'..."
-$ create/dir 'hdf5install_include'
-$ endif
-$ if F$SEARCH(hdf5install_lib) .NES. ""
-$ then write sys$output "''hdf5install_lib' directory exists, will not create"
-$ else
-$ write sys$output "Creating ''hdf5install_lib'..."
-$ create/dir 'hdf5install_lib'
-$ endif
-$ if F$SEARCH(hdf5install_bin) .NES. ""
-$ then write sys$output "''hdf5install_bin' directory exists, will not create"
-$ else
-$ write sys$output "Creating ''hdf5install_bin'..."
-$ create/dir 'hdf5install_bin'
-$ endif
-$ if F$SEARCH(hdf5install_examples) .NES. ""
-$ then write sys$output "''hdf5install_examples' directory exists, will not create"
-$ else
-$ write sys$output "Creating ''hdf5install_examples'..."
-$ create/dir 'hdf5install_examples'
-$ endif
-$ if F$SEARCH(hdf5install_examples_c) .NES. ""
-$ then write sys$output "''hdf5install_examples_c' directory exists, will not create"
-$ else
-$ write sys$output "Creating ''hdf5install_examples_c'..."
-$ create/dir 'hdf5install_examples_c'
-$ endif
-$ if F$SEARCH(hdf5install_examples_f90) .NES. ""
-$ then write sys$output "''hdf5install_examples_f90' directory exists, will not create"
-$ else
-$ write sys$output "Creating ''hdf5install_examples_f90'..."
-$ create/dir 'hdf5install_examples_f90'
-$ endif
-$ if F$SEARCH(hdf5install_examples_cxx) .NES. ""
-$ then write sys$output "''hdf5install_examples_cxx' directory exists, will not create"
-$ else
-$ write sys$output "Creating ''hdf5install_examples_cxx'..."
-$ create/dir 'hdf5install_examples_cxx'
-$ endif
-
-$!
-$ write sys$output "Installing C library and header files"
-$ set def 'hdf5src'
-$ copy HDF5.olb 'hdf5install_lib'
-$ copy *.h 'hdf5install_include'
-$ del 'hdf5install_include'*private*.*;*
-$!
-$ write sys$output "Installing Fortran library module files"
-$ set def 'hdf5fortran_src'
-$ copy HDF5_FORTRAN.olb 'hdf5install_lib'
-$ copy *.F90$MOD 'hdf5install_include'
-$!
-$ write sys$output "Installing C++ library and header files"
-$ set def 'hdf5cxx_src'
-$ copy HDF5_CPLUS.olb 'hdf5install_lib'
-$ copy *.h 'hdf5install_include'
-$!
-$ write sys$output "Installing utilties"
-$ set def 'hdf5tools_h5copy'
-$ copy h5copy.exe 'hdf5install_bin'
-$!
-$ set def 'hdf5tools_h5diff'
-$ copy h5diff.exe 'hdf5install_bin'
-$!
-$ set def 'hdf5tools_h5dump'
-$ copy h5dump.exe 'hdf5install_bin'
-$!
-$ set def 'hdf5tools_h5repack'
-$ copy h5repack.exe 'hdf5install_bin'
-$!
-$ set def 'hdf5tools_h5ls'
-$ copy h5ls.exe 'hdf5install_bin'
-$!
-$ set def 'hdf5tools_h5jam'
-$ copy h5jam.exe 'hdf5install_bin'
-$ copy h5unjam.exe 'hdf5install_bin'
-$!
-$ set def 'hdf5tools_h5import'
-$ copy h5import.exe 'hdf5install_bin'
-$!
-$ set def 'hdf5tools_h5stat'
-$ copy h5stat.exe 'hdf5install_bin'
-$!
-$ set def 'hdf5tools_h5misc'
-$ copy h5debug.exe 'hdf5install_bin'
-$ copy h5mkgrp.exe 'hdf5install_bin'
-$!
-$ write sys$output "Installing examples"
-$ set def 'hdf5examples'
-$ copy *.c 'hdf5install_examples_c'
-$!
-$ set def 'hdf5fortran_examples'
-$ copy *.f90 'hdf5install_examples_f90'
-$!
-$ set def 'hdf5cxx_examples'
-$ copy *.cpp 'hdf5install_examples_cxx'
-$ rename 'hdf5install_examples_cxx'*.cpp 'hdf5install_examples_cxx'*.cxx
-$
-$
-$!
-$ set def 'hdf5top'
-$ copy [.examples]*.com 'hdf5install_examples_c'
-$ copy [.fortran.examples]*.com 'hdf5install_examples_f90'
-$ copy [.c__.examples]*.com 'hdf5install_examples_cxx'
-$ exit
diff --git a/vms/make.com b/vms/make.com
deleted file mode 100644
index 4be8784..0000000
--- a/vms/make.com
+++ /dev/null
@@ -1,145 +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.
-$!#
-$!
-$!
-$! This file copies all make files from the VMS directory to the
-$! source directories and builds libraries, tests, and utilties
-$!
-$ copy [.c__.src]make.com [-.c__.src]
-$ copy [.c__.test]*.com [-.c__.test]
-$ copy [.fortran.src]make.com [-.fortran.src]
-$ copy [.fortran.test]*.com [-.fortran.test]
-$ copy [.src]make.com [-.src]
-$ copy [.src]h5pubconf.h [-.src]
-$ copy [.test]*.com [-.test]
-$ copy [.tools.h5copy]*.com [-.tools.h5copy]
-$ copy [.tools.h5dump]*.com [-.tools.h5dump]
-$ copy [.tools.h5ls]*.com [-.tools.h5ls]
-$ copy [.tools.h5diff]*.com [-.tools.h5diff]
-$ copy [.tools.h5repack]*.com [-.tools.h5repack]
-$ copy [.tools.h5import]*.com [-.tools.h5import]
-$ copy [.tools.h5jam]*.com [-.tools.h5jam]
-$ copy [.tools.h5stat]*.com [-.tools.h5stat]
-$ copy [.tools.lib]make.com [-.tools.lib]
-$ copy [.tools.testfiles]*.ddl [-.tools.testfiles]
-$ copy [.tools.misc]make.com [-.tools.misc]
-$!
-$! Define location of ZLIB library. If you do not have it on your system, download
-$! source code from http://www.zlib.net/, build and install on your system
-$ define zlib_dir disk$user:[hdfgroup.zlib-1_2_5_ieee]
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3-ieee]
-$!
-$! Set up compilation flags here
-$! Do not remove define=H5_VMS and standard=strict_ansi qualifiers.
-$!
-$ ccopt == "/float=ieee_float/define=(_LARGEFILE,H5_VMS)/debug/nooptimize/include=zlib_dir"
-$ fcopt == "/float=ieee_float/define=(_LARGEFILE,H5_VMS)/debug/nooptimize/include=zlib_dir"
-$ cxxopt == "/float=ieee_float/define=(_LARGEFILE,H5_VMS)/debug/nooptimize/"+-
- "standard=strict_ansi/include=zlib_dir"
-$!
-$!
-$ hdf5top = F$DIRECTORY()
-$ len = F$LENGTH(hdf5top)
-$ hdf5top_dir = F$EXTRACT(0, len-4, hdf5top)
-$!
-$ hdf5src = hdf5top_dir + "SRC]"
-$ hdf5test = hdf5top_dir + "TEST]"
-$ hdf5examples = hdf5top_dir + "EXAMPLES]"
-$ hdf5tools_lib = hdf5top_dir + "TOOLS.LIB]"
-$ hdf5tools_h5copy = hdf5top_dir + "TOOLS.H5COPY]"
-$ hdf5tools_h5diff = hdf5top_dir + "TOOLS.H5DIFF]"
-$ hdf5tools_h5dump = hdf5top_dir + "TOOLS.H5DUMP]"
-$ hdf5tools_h5import = hdf5top_dir + "TOOLS.H5IMPORT]"
-$ hdf5tools_h5jam = hdf5top_dir + "TOOLS.H5JAM]"
-$ hdf5tools_h5ls = hdf5top_dir + "TOOLS.H5LS]"
-$ hdf5tools_h5repack = hdf5top_dir + "TOOLS.H5REPACK]"
-$ hdf5tools_h5stat = hdf5top_dir + "TOOLS.H5STAT]"
-$ hdf5tools_misc = hdf5top_dir + "TOOLS.MISC]"
-$ hdf5fortran_examples = hdf5top_dir + "FORTRAN.EXAMPLES]"
-$ hdf5fortran_src = hdf5top_dir + "FORTRAN.SRC]"
-$ hdf5fortran_test = hdf5top_dir + "FORTRAN.TEST]"
-$ hdf5cxx_src = hdf5top_dir + "C__.SRC]"
-$ hdf5cxx_test = hdf5top_dir + "C__.TEST]"
-$ hdf5cxx_examples = hdf5top_dir + "C__.EXAMPLES]"
-$!
-$ write sys$output "Building C library"
-$ set def 'hdf5src'
-$ @make.com
-$!
-$!
-$ write sys$output "Building C library tests"
-$ set def 'hdf5test'
-$ @make.com
-$!
-$ write sys$output "Building tools library"
-$ set def 'hdf5tools_lib'
-$ @make.com
-$!
-$ write sys$output "Building h5copy"
-$ set def 'hdf5tools_h5copy'
-$ @make.com
-$!
-$ write sys$output "Building h5diff"
-$ set def 'hdf5tools_h5diff'
-$ @make.com
-$!
-$ write sys$output "Building h5dump"
-$ set def 'hdf5tools_h5dump'
-$ @make.com
-$!
-$ write sys$output "Building h5import"
-$ set def 'hdf5tools_h5import'
-$ @make.com
-$!
-$ write sys$output "Building h5jam"
-$ set def 'hdf5tools_h5jam'
-$ @make.com
-$!
-$ write sys$output "Building h5ls"
-$ set def 'hdf5tools_h5ls'
-$ @make.com
-$!
-$ write sys$output "Building h5repack"
-$ set def 'hdf5tools_h5repack'
-$ @make.com
-$!
-$ write sys$output "Building h5stat"
-$ set def 'hdf5tools_h5stat'
-$ @make.com
-$!
-$ write sys$output "Building misc"
-$ set def 'hdf5tools_misc'
-$ @make.com
-$!
-$ write sys$output "Building Fortran library"
-$ set def 'hdf5fortran_src'
-$ @make.com
-$!
-$ write sys$output "Building Fortran library tests"
-$ set def 'hdf5fortran_test'
-$ @make.com
-$!
-$ write sys$output "Building C++ library"
-$ set def 'hdf5cxx_src'
-$ copy *.cpp *.cxx
-$ @make.com
-$!
-$ write sys$output "Building C++ library tests"
-$ set def 'hdf5cxx_test'
-$ copy *.cpp *.cxx
-$ @make.com
-$!
-$ set def 'hdf5top'
-$ exit
diff --git a/vms/src/h5pubconf.h b/vms/src/h5pubconf.h
deleted file mode 100644
index 67f0443..0000000
--- a/vms/src/h5pubconf.h
+++ /dev/null
@@ -1,719 +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. *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-/* src/H5config.h. Generated from H5config.h.in by configure. */
-/* src/H5config.h.in. Generated from configure.ac by autoheader. */
-
-/* Define if building universal (internal helper macro) */
-/* #undef H5_AC_APPLE_UNIVERSAL_BUILD */
-
-/* Define if your system generates wrong code for log2 routine. */
-/* #undef H5_BAD_LOG2_CODE_GENERATED */
-
-/* Define if the memory buffers being written to disk should be cleared before
- writing. */
-#define H5_CLEAR_MEMORY 1
-
-/* Define if your system can handle converting denormalized floating-point
- values. */
-#define H5_CONVERT_DENORMAL_FLOAT 1
-
-/* Define if C++ compiler recognizes offsetof */
-#define H5_CXX_HAVE_OFFSETOF 1
-
-/* Define the default virtual file driver to compile */
-#define H5_DEFAULT_VFD H5FD_SEC2
-
-/* Define if `dev_t' is a scalar */
-#define H5_DEV_T_IS_SCALAR 1
-
-/* Define to dummy `main' function (if any) required to link to the Fortran
- libraries. */
-/* #undef H5_FC_DUMMY_MAIN */
-
-/* Define if F77 and FC dummy `main' functions are identical. */
-/* #undef H5_FC_DUMMY_MAIN_EQ_F77 */
-
-/* Define to a macro mangling the given C identifier (in lower and upper
- case), which must not contain underscores, for linking with Fortran. */
-/* #undef H5_FC_FUNC */
-
-/* As FC_FUNC, but for C identifiers containing underscores. */
-/* #undef H5_FC_FUNC_ */
-
-/* Define if your system can handle overflow converting floating-point to
- integer values. */
-#define H5_FP_TO_INTEGER_OVERFLOW_WORKS 1
-
-/* Define if your system roundup accurately converting floating-point to
- unsigned long long values. */
-#define H5_FP_TO_ULLONG_ACCURATE 1
-
-/* Define if your system has right maximum convert floating-point to unsigned
- long long values. */
-#define H5_FP_TO_ULLONG_RIGHT_MAXIMUM 1
-
-/* Define if gettimeofday() populates the tz pointer passed in */
-/* #undef H5_GETTIMEOFDAY_GIVES_TZ */
-
-/* Define to 1 if you have the `alarm' function. */
-#define H5_HAVE_ALARM 1
-
-/* Define if the __attribute__(()) extension is present */
-/* #undef H5_HAVE_ATTRIBUTE */
-
-/* Define to 1 if you have the `BSDgettimeofday' function. */
-/* #undef H5_HAVE_BSDGETTIMEOFDAY */
-
-/* Define if the compiler understands C99 designated initialization of structs
- and unions */
-#define H5_HAVE_C99_DESIGNATED_INITIALIZER 1
-
-/* Define if the compiler understands the __func__ keyword */
-#define H5_HAVE_C99_FUNC 1
-
-/* Define to 1 if you have the `clock_gettime' function. */
-#define H5_HAVE_CLOCK_GETTIME 1
-
-/* Define if the function stack tracing code is to be compiled in */
-/* #undef H5_HAVE_CODESTACK */
-
-/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't.
- */
-/* #undef H5_HAVE_DECL_TZNAME */
-
-/* Define to 1 if you have the `difftime' function. */
-#define H5_HAVE_DIFFTIME 1
-
-/* Define if the direct I/O virtual file driver should be compiled */
-/* #undef H5_HAVE_DIRECT */
-
-/* Define to 1 if you have the <dirent.h> header file. */
-#define H5_HAVE_DIRENT_H 1
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#define H5_HAVE_DLFCN_H 1
-
-/* Define to 1 if you have the <dmalloc.h> header file. */
-/* #undef H5_HAVE_DMALLOC_H */
-
-/* Define if library information should be embedded in the executables */
-/* #undef H5_HAVE_EMBEDDED_LIBINFO */
-
-/* Define to 1 if you have the <features.h> header file. */
-/* #undef H5_HAVE_FEATURES_H */
-
-/* Define if support for deflate (zlib) filter is enabled */
-#define H5_HAVE_FILTER_DEFLATE 1
-
-/* Define if support for Fletcher32 checksum is enabled */
-#define H5_HAVE_FILTER_FLETCHER32 1
-
-/* Define if support for nbit filter is enabled */
-#define H5_HAVE_FILTER_NBIT 1
-
-/* Define if support for scaleoffset filter is enabled */
-#define H5_HAVE_FILTER_SCALEOFFSET 1
-
-/* Define if support for shuffle filter is enabled */
-#define H5_HAVE_FILTER_SHUFFLE 1
-
-/* Define if support for szip filter is enabled */
-/* #undef H5_HAVE_FILTER_SZIP */
-
-/* Define to 1 if you have the `fork' function. */
-/* #undef H5_HAVE_FORK */
-
-/* Define to 1 if you have the `frexpf' function. */
-#define H5_HAVE_FREXPF 1
-
-/* Define to 1 if you have the `frexpl' function. */
-#define H5_HAVE_FREXPL 1
-
-/* Define to 1 if you have the `fseeko' function. */
-#define H5_HAVE_FSEEKO 1
-
-/* Define to 1 if you have the `fseek64' function. */
-/* #undef H5_HAVE_FSEEKO64 */
-
-/* Define to 1 if you have the `fstat64' function. */
-/* #undef H5_HAVE_FSTAT64 */
-
-/* Define to 1 if you have the `ftello' function. */
-#define H5_HAVE_FTELLO 1
-
-/* Define to 1 if you have the `ftruncate64' function. */
-/* #undef H5_HAVE_FTRUNCATE64 */
-
-/* Define if the compiler understands the __FUNCTION__ keyword */
-/* #undef H5_HAVE_FUNCTION */
-
-/* Define to 1 if you have the `GetConsoleScreenBufferInfo' function. */
-/* #undef H5_HAVE_GETCONSOLESCREENBUFFERINFO */
-
-/* Define to 1 if you have the `gethostname' function. */
-#define H5_HAVE_GETHOSTNAME 1
-
-/* Define to 1 if you have the `getpwuid' function. */
-/* #undef H5_HAVE_GETPWUID */
-
-/* Define to 1 if you have the `getrusage' function. */
-/* #undef H5_HAVE_GETRUSAGE */
-
-/* Define to 1 if you have the `gettextinfo' function. */
-/* #undef H5_HAVE_GETTEXTINFO */
-
-/* Define to 1 if you have the `gettimeofday' function. */
-#define H5_HAVE_GETTIMEOFDAY 1
-
-/* Define to 1 if you have the `get_fpc_csr' function. */
-/* #undef H5_HAVE_GET_FPC_CSR */
-
-/* Define if library will contain instrumentation to detect correct
- optimization operation */
-#define H5_HAVE_INSTRUMENTED_LIBRARY 1
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#define H5_HAVE_INTTYPES_H 1
-
-/* Define to 1 if you have the `ioctl' function. */
-#define H5_HAVE_IOCTL 1
-
-/* Define to 1 if you have the <io.h> header file. */
-/* #undef H5_HAVE_IO_H */
-
-/* Define to 1 if you have the `dl' library (-ldl). */
-#define H5_HAVE_LIBDL 1
-
-/* Define to 1 if you have the `dmalloc' library (-ldmalloc). */
-/* #undef H5_HAVE_LIBDMALLOC */
-
-/* Define to 1 if you have the `lmpe' library (-llmpe). */
-/* #undef H5_HAVE_LIBLMPE */
-
-/* Define to 1 if you have the `m' library (-lm). */
-#define H5_HAVE_LIBM 1
-
-/* Define to 1 if you have the `mpe' library (-lmpe). */
-/* #undef H5_HAVE_LIBMPE */
-
-/* Define to 1 if you have the `mpi' library (-lmpi). */
-/* #undef H5_HAVE_LIBMPI */
-
-/* Define to 1 if you have the `mpich' library (-lmpich). */
-/* #undef H5_HAVE_LIBMPICH */
-
-/* Define to 1 if you have the `mpio' library (-lmpio). */
-/* #undef H5_HAVE_LIBMPIO */
-
-/* Define to 1 if you have the `nsl' library (-lnsl). */
-/* #undef H5_HAVE_LIBNSL */
-
-/* Define to 1 if you have the `pthread' library (-lpthread). */
-/* #undef H5_HAVE_LIBPTHREAD */
-
-/* Define to 1 if you have the `socket' library (-lsocket). */
-/* #undef H5_HAVE_LIBSOCKET */
-
-/* Define to 1 if you have the `sz' library (-lsz). */
-/* #undef H5_HAVE_LIBSZ */
-
-/* Define to 1 if you have the `z' library (-lz). */
-/* #undef H5_HAVE_LIBZ */
-
-/* Define to 1 if you have the `longjmp' function. */
-#define H5_HAVE_LONGJMP 1
-
-/* Define to 1 if you have the `lseek64' function. */
-/* #undef H5_HAVE_LSEEK64 */
-
-/* Define to 1 if you have the `lstat' function. */
-/* #undef H5_HAVE_LSTAT */
-
-/* Define to 1 if you have the <mach/mach_time.h> header file. */
-/* #undef H5_HAVE_MACH_MACH_TIME_H */
-
-/* Define to 1 if you have the <memory.h> header file. */
-/* #undef H5_HAVE_MEMORY_H */
-
-/* Define if we have MPE support */
-/* #undef H5_HAVE_MPE */
-
-/* Define to 1 if you have the <mpe.h> header file. */
-/* #undef H5_HAVE_MPE_H */
-
-/* Define if `MPI_Comm_c2f' and `MPI_Comm_f2c' exists */
-/* #undef H5_HAVE_MPI_MULTI_LANG_Comm */
-
-/* Define if `MPI_Info_c2f' and `MPI_Info_f2c' exists */
-/* #undef H5_HAVE_MPI_MULTI_LANG_Info */
-
-/* Define if we have parallel support */
-/* #undef H5_HAVE_PARALLEL */
-
-/* Define to 1 if you have the <pthread.h> header file. */
-/* #undef H5_HAVE_PTHREAD_H */
-
-/* Define to 1 if you have the `random' function. */
-#define H5_HAVE_RANDOM 1
-
-/* Define to 1 if you have the `rand_r' function. */
-/* #define H5_HAVE_RAND_R 1 */
-
-/* Define to 1 if you have the `setjmp' function. */
-#define H5_HAVE_SETJMP 1
-
-/* Define to 1 if you have the <setjmp.h> header file. */
-#define H5_HAVE_SETJMP_H 1
-
-/* Define to 1 if you have the `setsysinfo' function. */
-/* #undef H5_HAVE_SETSYSINFO */
-
-/* Define to 1 if you have the `siglongjmp' function. */
-#define H5_HAVE_SIGLONGJMP 1
-
-/* Define to 1 if you have the `signal' function. */
-#define H5_HAVE_SIGNAL 1
-
-/* Define to 1 if you have the `sigprocmask' function. */
-/* #undef H5_HAVE_SIGPROCMASK */
-
-/* Define to 1 if you have the `sigsetjmp' function. */
-/* #undef H5_HAVE_SIGSETJMP */
-
-/* Define to 1 if you have the `snprintf' function. */
-#define H5_HAVE_SNPRINTF 1
-
-/* Define to 1 if you have the `srandom' function. */
-#define H5_HAVE_SRANDOM 1
-
-/* Define to 1 if you have the `stat64' function. */
-/* #undef H5_HAVE_STAT64 */
-
-/* Define if `struct stat' has the `st_blocks' field */
-/* #undef H5_HAVE_STAT_ST_BLOCKS */
-
-/* Define to 1 if you have the <stddef.h> header file. */
-#define H5_HAVE_STDDEF_H 1
-
-/* Define to 1 if you have the <stdint.h> header file. */
-/* #undef H5_HAVE_STDINT_H */
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#define H5_HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the `strdup' function. */
-#define H5_HAVE_STRDUP 1
-
-/* Define to 1 if you have the <strings.h> header file. */
-#define H5_HAVE_STRINGS_H 1
-
-/* Define to 1 if you have the <string.h> header file. */
-#define H5_HAVE_STRING_H 1
-
-/* Define if `struct text_info' is defined */
-/* #undef H5_HAVE_STRUCT_TEXT_INFO */
-
-/* Define if `struct timezone' is defined */
-/* #undef H5_HAVE_STRUCT_TIMEZONE */
-
-/* Define to 1 if `tm_zone' is member of `struct tm'. */
-#define H5_HAVE_STRUCT_TM_TM_ZONE 1
-
-/* Define if `struct videoconfig' is defined */
-/* #undef H5_HAVE_STRUCT_VIDEOCONFIG */
-
-/* Define to 1 if you have the `symlink' function. */
-/* #undef H5_HAVE_SYMLINK */
-
-/* Define to 1 if you have the `system' function. */
-#define H5_HAVE_SYSTEM 1
-
-/* Define to 1 if you have the <sys/fpu.h> header file. */
-/* #undef H5_HAVE_SYS_FPU_H */
-
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-#define H5_HAVE_SYS_IOCTL_H 1
-
-/* Define to 1 if you have the <sys/proc.h> header file. */
-/* #undef H5_HAVE_SYS_PROC_H */
-
-/* Define to 1 if you have the <sys/resource.h> header file. */
-#define H5_HAVE_SYS_RESOURCE_H 1
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#define H5_HAVE_SYS_SOCKET_H 1
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#define H5_HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the <sys/sysinfo.h> header file. */
-/* #undef H5_HAVE_SYS_SYSINFO_H */
-
-/* Define to 1 if you have the <sys/timeb.h> header file. */
-#define H5_HAVE_SYS_TIMEB_H 1
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#define H5_HAVE_SYS_TIME_H 1
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#define H5_HAVE_SYS_TYPES_H 1
-
-/* Define to 1 if you have the <szlib.h> header file. */
-/* #undef H5_HAVE_SZLIB_H */
-
-/* Define if we have thread safe support */
-/* #undef H5_HAVE_THREADSAFE */
-
-/* Define if `timezone' is a global variable */
-#define H5_HAVE_TIMEZONE 1
-
-/* Define if the ioctl TIOCGETD is defined */
-#define H5_HAVE_TIOCGETD 1
-
-/* Define if the ioctl TIOGWINSZ is defined */
-#define H5_HAVE_TIOCGWINSZ 1
-
-/* Define to 1 if you have the `tmpfile' function. */
-#define H5_HAVE_TMPFILE 1
-
-/* Define if `tm_gmtoff' is a member of `struct tm' */
-/* #undef H5_HAVE_TM_GMTOFF */
-
-/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
- `HAVE_STRUCT_TM_TM_ZONE' instead. */
-#define H5_HAVE_TM_ZONE 1
-
-/* Define to 1 if you don't have `tm_zone' but do have the external array
- `tzname'. */
-/* #undef H5_HAVE_TZNAME */
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#define H5_HAVE_UNISTD_H 1
-
-/* Define to 1 if you have the `asprintf' function. */
-/* #undef H5_HAVE_ASPRINTF */
-
-/* Define to 1 if you have the `vasprintf' function. */
-/* #undef H5_HAVE_VASPRINTF */
-
-/* Define to 1 if you have the `vsnprintf' function. */
-#define H5_HAVE_VSNPRINTF 1
-
-/* Define to 1 if you have the `waitpid' function. */
-#define H5_HAVE_WAITPID 1
-
-/* Define if your system has OpenVMS path name. This macro is added by hand. */
-#define H5_HAVE_VMS_PATH 1
-
-/* Define if your system has window style path name. */
-/* #undef H5_HAVE_WINDOW_PATH */
-
-/* Define to 1 if you have the <winsock.h> header file. */
-/* #undef H5_HAVE_WINSOCK2_H */
-
-/* Define to 1 if you have the <zlib.h> header file. */
-#define H5_HAVE_ZLIB_H 1
-
-/* Define to 1 if you have the `_getvideoconfig' function. */
-/* #undef H5_HAVE__GETVIDEOCONFIG */
-
-/* Define to 1 if you have the `_scrsize' function. */
-/* #undef H5_HAVE__SCRSIZE */
-
-/* Define if `__tm_gmtoff' is a member of `struct tm' */
-/* #undef H5_HAVE___TM_GMTOFF */
-
-/* Define if your system can't handle converting floating-point values to long
- long. */
-/* #undef H5_HW_FP_TO_LLONG_NOT_WORKS */
-
-/* Define if HDF5's high-level library headers should be included in hdf5.h */
-#define H5_INCLUDE_HL 1
-
-/* Define if your system can accurately convert from integers to long double
- values. */
-#define H5_INTEGER_TO_LDOUBLE_ACCURATE 1
-
-/* Define if your system can convert long double to integers accurately. */
-#define H5_LDOUBLE_TO_INTEGER_ACCURATE 1
-
-/* Define if your system can convert from long double to integer values. */
-#define H5_LDOUBLE_TO_INTEGER_WORKS 1
-
-/* Define if your system can convert long double to (unsigned) long long
- values correctly. */
-#define H5_LDOUBLE_TO_LLONG_ACCURATE 1
-
-/* Define if your system converts long double to (unsigned) long values with
- special algorithm. */
-/* #undef H5_LDOUBLE_TO_LONG_SPECIAL */
-
-/* Define if your system can convert long double to unsigned int values
- correctly. */
-#define H5_LDOUBLE_TO_UINT_ACCURATE 1
-
-/* Define if your system can compile long long to floating-point casts. */
-#define H5_LLONG_TO_FP_CAST_WORKS 1
-
-/* Define if your system can convert (unsigned) long long to long double
- values correctly. */
-#define H5_LLONG_TO_LDOUBLE_CORRECT 1
-
-/* Define if your system can convert (unsigned) long to long double values
- with special algorithm. */
-/* #undef H5_LONG_TO_LDOUBLE_SPECIAL */
-
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
- */
-#define H5_LT_OBJDIR ".libs/"
-
-/* Define if the metadata trace file code is to be compiled in */
-/* #undef H5_METADATA_TRACE_FILE */
-
-/* Define if we can violate pointer alignment restrictions */
-#define H5_NO_ALIGNMENT_RESTRICTIONS 1
-
-/* Define if deprecated public API symbols are disabled */
-/* #undef H5_NO_DEPRECATED_SYMBOLS */
-
-/* Define if shared writing must be disabled (CodeWarrior only) */
-#define H5_NO_SHARED_WRITING 1
-
-/* Name of package */
-#define H5_PACKAGE "hdf5"
-
-/* Define to the address where bug reports for this package should be sent. */
-#define H5_PACKAGE_BUGREPORT "help@hdfgroup.org"
-
-/* Define to the full name of this package. */
-#define H5_PACKAGE_NAME "HDF5"
-
-/* Define to the full name and version of this package. */
-#define H5_PACKAGE_STRING "HDF5 1.9.212"
-
-/* Define to the one symbol short name of this package. */
-#define H5_PACKAGE_TARNAME "hdf5"
-
-/* Define to the home page for this package. */
-#define H5_PACKAGE_URL ""
-
-/* Define to the version of this package. */
-#define H5_PACKAGE_VERSION "1.9.212"
-
-/* Width for printf() for type `long long' or `__int64', use `ll' */
-#define H5_PRINTF_LL_WIDTH "ll"
-
-/* The size of `char', as computed by sizeof. */
-#define H5_SIZEOF_CHAR 1
-
-/* The size of `double', as computed by sizeof. */
-#define H5_SIZEOF_DOUBLE 8
-
-/* The size of `float', as computed by sizeof. */
-#define H5_SIZEOF_FLOAT 4
-
-/* The size of `int', as computed by sizeof. */
-#define H5_SIZEOF_INT 4
-
-/* The size of `int16_t', as computed by sizeof. */
-#define H5_SIZEOF_INT16_T 2
-
-/* The size of `int32_t', as computed by sizeof. */
-#define H5_SIZEOF_INT32_T 4
-
-/* The size of `int64_t', as computed by sizeof. */
-#define H5_SIZEOF_INT64_T 8
-
-/* The size of `int8_t', as computed by sizeof. */
-#define H5_SIZEOF_INT8_T 1
-
-/* The size of `int_fast16_t', as computed by sizeof. */
-/* #define H5_SIZEOF_INT_FAST16_T 0 */
-
-/* The size of `int_fast32_t', as computed by sizeof. */
-/* #define H5_SIZEOF_INT_FAST32_T 0 */
-
-/* The size of `int_fast64_t', as computed by sizeof. */
-/* #define H5_SIZEOF_INT_FAST64_T 0 */
-
-/* The size of `int_fast8_t', as computed by sizeof. */
-/* #define H5_SIZEOF_INT_FAST8_T 0 */
-
-/* The size of `int_least16_t', as computed by sizeof. */
-/* #define H5_SIZEOF_INT_LEAST16_T 0 */
-
-/* The size of `int_least32_t', as computed by sizeof. */
-/* #define H5_SIZEOF_INT_LEAST32_T 0 */
-
-/* The size of `int_least64_t', as computed by sizeof. */
-/* #define H5_SIZEOF_INT_LEAST64_T 0 */
-
-/* The size of `int_least8_t', as computed by sizeof. */
-/* #define H5_SIZEOF_INT_LEAST8_T 0 */
-
-/* The size of `long', as computed by sizeof. */
-#define H5_SIZEOF_LONG 4
-
-/* The size of `long double', as computed by sizeof. */
-#define H5_SIZEOF_LONG_DOUBLE 16
-
-/* The size of `long long', as computed by sizeof. */
-#define H5_SIZEOF_LONG_LONG 8
-
-/* The size of `off64_t', as computed by sizeof. */
-#define H5_SIZEOF_OFF64_T 0
-
-/* The size of `off_t', as computed by sizeof. */
-#define H5_SIZEOF_OFF_T 8
-
-/* The size of `ptrdiff_t', as computed by sizeof. */
-#define H5_SIZEOF_PTRDIFF_T 4
-
-/* The size of `short', as computed by sizeof. */
-#define H5_SIZEOF_SHORT 2
-
-/* The size of `size_t', as computed by sizeof. */
-#define H5_SIZEOF_SIZE_T 4
-
-/* The size of `ssize_t', as computed by sizeof. */
-#define H5_SIZEOF_SSIZE_T 4
-
-/* The size of `uint16_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT16_T 2
-
-/* The size of `uint32_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT32_T 4
-
-/* The size of `uint64_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT64_T 8
-
-/* The size of `uint8_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT8_T 1
-
-/* The size of `uint_fast16_t', as computed by sizeof. */
-/* #define H5_SIZEOF_UINT_FAST16_T 0 */
-
-/* The size of `uint_fast32_t', as computed by sizeof. */
-/* #define H5_SIZEOF_UINT_FAST32_T 0 */
-
-/* The size of `uint_fast64_t', as computed by sizeof. */
-/* #define H5_SIZEOF_UINT_FAST64_T 0 */
-
-/* The size of `uint_fast8_t', as computed by sizeof. */
-/* #define H5_SIZEOF_UINT_FAST8_T 0 */
-
-/* The size of `uint_least16_t', as computed by sizeof. */
-/* #define H5_SIZEOF_UINT_LEAST16_T 0 */
-
-/* The size of `uint_least32_t', as computed by sizeof. */
-/* #define H5_SIZEOF_UINT_LEAST32_T 0 */
-
-/* The size of `uint_least64_t', as computed by sizeof. */
-/* #define H5_SIZEOF_UINT_LEAST64_T 0 */
-
-/* The size of `uint_least8_t', as computed by sizeof. */
-/* #define H5_SIZEOF_UINT_LEAST8_T 0 */
-
-/* The size of `unsigned', as computed by sizeof. */
-#define H5_SIZEOF_UNSIGNED 4
-
-/* The size of `__int64', as computed by sizeof. */
-#define H5_SIZEOF___INT64 0
-
-/* Define to 1 if you have the ANSI C header files. */
-#define H5_STDC_HEADERS 1
-
-/* Define if strict file format checks are enabled */
-/* #undef H5_STRICT_FORMAT_CHECKS */
-
-/* Define if your system supports pthread_attr_setscope(&attribute,
- PTHREAD_SCOPE_SYSTEM) call. */
-#define H5_SYSTEM_SCOPE_THREADS 1
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-#define H5_TIME_WITH_SYS_TIME 1
-
-/* Define to 1 if your <sys/time.h> declares `struct tm'. */
-/* #undef H5_TM_IN_SYS_TIME */
-
-/* Define if your system can compile unsigned long long to floating-point
- casts. */
-#define H5_ULLONG_TO_FP_CAST_WORKS 1
-
-/* Define if your system can convert unsigned long long to long double with
- correct precision. */
-#define H5_ULLONG_TO_LDOUBLE_PRECISION 1
-
-/* Define if your system accurately converting unsigned long to float values.
- */
-/* #undef H5_ULONG_TO_FLOAT_ACCURATE */
-
-/* Define if your system can accurately convert unsigned (long) long values to
- floating-point values. */
-#define H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE 1
-
-/* Define using v1.6 public API symbols by default */
-/* #define H5_USE_16_API_DEFAULT 1 */
-
-/* Define if a memory checking tool will be used on the library, to cause
- library to be very picky about memory operations and also disable the
- internal free list manager code. */
-/* #undef H5_USING_MEMCHECKER */
-
-/* Version number of package */
-#define H5_VERSION "1.9.212"
-
-/* Define if vsnprintf() returns the correct value for formatted strings that
- don't fit into size allowed */
-#define H5_VSNPRINTF_WORKS 1
-
-/* Data accuracy is prefered to speed during data conversions */
-#define H5_WANT_DATA_ACCURACY 1
-
-/* Check exception handling functions during data conversions */
-#define H5_WANT_DCONV_EXCEPTION 1
-
-/* Define to 1 if your processor stores words with the most significant byte
- first (like Motorola and SPARC, unlike Intel and VAX). */
-/* #undef H5_WORDS_BIGENDIAN */
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-/* #undef H5__FILE_OFFSET_BITS */
-
-/* Define for large files, on AIX-style hosts. */
-/* #undef H5__LARGE_FILES */
-
-/* Define to empty if `const' does not conform to ANSI C. */
-/* #undef H5_const */
-
-/* Define to `__inline__' or `__inline' if that's what the C compiler
- calls it, or to nothing if 'inline' is not supported under any name. */
-#ifndef __cplusplus
-/* #undef H5_inline */
-#endif
-
-/* Define to `long int' if <sys/types.h> does not define. */
-/* #undef H5_off_t */
-
-/* Define to `long' if <sys/types.h> does not define. */
-/* #undef H5_ptrdiff_t */
-
-/* Define to `unsigned long' if <sys/types.h> does not define. */
-/* #undef H5_size_t */
-
-/* Define to `long' if <sys/types.h> does not define. */
-/* #undef H5_ssize_t */
-#define H5_HAVE_FILE_VERSIONS 1
-#define H5_CANNOT_OPEN_TWICE 1
diff --git a/vms/src/make.com b/vms/src/make.com
deleted file mode 100644
index 397d543..0000000
--- a/vms/src/make.com
+++ /dev/null
@@ -1,76 +0,0 @@
-$!#
-$!# Copyright by The HDF Group.
-$!# Copyright by the Board of Trustees of the University of Illinois.
-$!# All rights reserved.
-$!# 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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make HDF5 library
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$!
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=(_LARGEFILE,H5_VMS)/include=zlib_dir"
-$ ccc := cc 'ccopt
-$ ccc h5detect.c
-$ link h5detect
-$ type sys$input
- Running h5detect to create h5tinit.c
-$ define/user_mode sys$output h5tinit.c
-$ run h5detect
-$!
-$ ccc h5make_libsettings.c
-$ link h5make_libsettings
-$ type sys$input
- Running h5make_libsettings to create H5lib_settings.h
-$ define/user_mode sys$output H5lib_settings.h
-$ run h5make_libsettings
-$!
-$ type sys$input
- Creating HDF5 library
-$!
-$ cobj= "H5, H5checksum, H5dbg, H5system, H5timer, H5trace,"+-
- "H5Abtree2, H5A, H5AC, H5Adense, H5Adeprec, H5Aint, H5Atest, H5B2, H5B2cache,"+-
- "H5B2dbg, H5B2hdr, H5B2int, H5B2stat, H5B2test, H5B, H5Bcache, H5Bdbg, H5C, H5CS,"+-
- "H5Dbtree, H5D, H5Dchunk, H5Dcompact, H5Dcontig, H5Ddbg, H5Ddeprec,"+-
- "H5Defl, H5Dfill, H5Dint, H5Dio, H5Dlayout, H5Dmpio, H5Doh, H5Dscatgath, H5Dselect, H5Dtest,"+-
- "H5EA, H5EAcache, H5EAdbg, H5EAdblkpage, H5EAdblock, H5EAhdr, H5EAiblock, H5EAint,"+-
- "H5EAsblock, H5EAstat, H5EAtest, H5E, H5Edeprec, H5Eint,"+-
- "H5FA, H5FAcache, H5FAdbg, H5FAdblkpage, H5FAdblock, H5FAhdr, H5FAstat, H5FAtest,"+-
- "H5Faccum, H5F, H5Fcwfs, H5Fdbg, H5Fdeprec, H5FD, H5FDcore, H5FDdirect, H5FDfamily, H5FDint, H5FDlog, "+-
- "H5FDmpi, H5FDmpio, H5FDmulti, H5FDsec2, H5FDspace, H5FDstdio, H5FDwindows,"+-
- "H5Fefc, H5Ffake, H5Fio, H5FL, H5Fmount, H5Fmpi, H5FO, H5Fquery, H5FS, H5FScache, H5FSdbg,"+-
- "H5Fsfile, H5FSsection, H5FSstat, H5FStest, H5Fsuper, H5Fsuper_cache, H5Ftest,"+-
- "H5Gbtree2, H5G, H5Gcache, H5Gcompact, H5Gdense, H5Gdeprec, H5Gent, H5Gint, H5Glink, H5Gloc,"+-
- "H5Gname, H5Gnode, H5Gobj, H5Goh, H5Groot, H5Gstab, H5Gtest, H5Gtraverse,"+-
- "H5HFbtree2, H5HF, H5HFcache, H5HFdbg, H5HFdblock, H5HFdtable, H5HFhdr, H5HFhuge, H5HFiblock,"+-
- "H5HFiter, H5HFman, H5HFsection, H5HFspace, H5HFstat, H5HFtest, H5HFtiny,"+-
- "H5HG, H5HGcache, H5HGdbg, H5HGquery, H5HL, H5HLcache, H5HLdbg, H5HLint, H5HP, H5I, H5Itest, H5L, H5Lexternal"
-$ cobj1= "H5MFaggr, H5MF, H5MFdbg, H5MFsection, H5MM,"+-
- "H5MP, H5MPtest, H5Oainfo, H5Oalloc, H5Oattr, H5Oattribute, H5Obogus, H5Obtreek,"+-
- "H5O, H5Ocache, H5Ochunk, H5Ocont, H5Ocopy, H5Odbg, H5Odrvinfo, H5Odtype, H5Oefl, H5Ofill, H5Ofsinfo,"+-
- "H5Oginfo, H5Olayout, H5Olinfo, H5Olink, H5Omessage, H5Omtime, H5Oname, H5Onull, H5Opline,"+-
- "H5Orefcount, H5Osdspace, H5Oshared, H5Oshmesg, H5Ostab, H5Otest, H5Ounknown,"+-
- "H5Pacpl, H5P, H5Pdapl, H5Pdcpl, H5Pdeprec, H5Pdxpl, H5Pencdec, H5Pfapl, H5Pfcpl, H5Pfmpl, H5Pgcpl, H5Pint,"+-
- "H5Plapl, H5Plcpl, H5Pocpl, H5Pocpypl, H5Pstrcpl, H5Ptest,"+-
- "H5R, H5UC, H5Rdeprec, H5RS, H5Sall, H5S, H5Sdbg, H5Shyper, H5SL, H5SMbtree2, H5SM, H5SMcache,"+-
- "H5SMmessage, H5Smpio, H5SMtest, H5Snone, H5Spoint, H5Sselect, H5ST, H5Stest,"+-
- "H5Tarray, H5Tbit, H5T, H5Tcommit, H5Tcompound, H5Tconv, H5Tcset, H5Tdbg, H5Tdeprec, H5Tenum,"+-
- "H5Tfields, H5Tfixed, H5Tfloat, H5Tinit, H5Tnative, H5Toffset, H5Toh, H5Topaque, H5Torder,"+-
- "H5Tpad, H5Tprecis, H5TS, H5Tstrpad, H5Tvisit, H5Tvlen, H5V, H5WB, H5Z,"+-
- "H5Zdeflate, H5Zfletcher32, H5Znbit, H5Zscaleoffset, H5Zshuffle, H5Zszip, H5Ztrans"
-$!
-$ ccc 'cobj
-$ ccc 'cobj1
-$ library/create []hdf5
-$ library/insert []hdf5 'cobj
-$ library/insert []hdf5 'cobj1
-$ type sys$input
- Done
-$!
diff --git a/vms/test/H5srcdir_str.h b/vms/test/H5srcdir_str.h
deleted file mode 100644
index 2eb1a39..0000000
--- a/vms/test/H5srcdir_str.h
+++ /dev/null
@@ -1,22 +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. *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-
-/* If you are reading this file and it has a '.h' suffix, it was automatically
- * generated from the '.in' version. Make changes there. But for OpenVMS, this
- * file is created by hand.
- */
-
-/* Set the 'srcdir' path from configure time */
-static const char *config_srcdir = "[-.test]";
diff --git a/vms/test/check.com b/vms/test/check.com
deleted file mode 100644
index 5a3c945..0000000
--- a/vms/test/check.com
+++ /dev/null
@@ -1,271 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Run HDF5 C tests
-$!
-$ type sys$input
- Running tests
-$! define sys$output check_vms.out
-$
-$ type sys$input
-------- Running testhdf5 -------
-$ run testhdf5
-$ type sys$input
-
-$ type sys$input
-------- Running accum -------
-$ run accum
-$ type sys$input
-
-$ type sys$input
-------- Running app_ref -------
-$ run app_ref
-$ type sys$input
-
-$ type sys$input
-------- Running big -------
-$ run big
-$ type sys$input
-
-$ type sys$input
-------- Running bittests -------
-$ run bittests
-$ type sys$input
-
-$ type sys$input
-------- Running btree2 -------
-$ run btree2
-$ type sys$input
-
-$ type sys$input
-------- Running cache_api -------
-$ run cache_api
-$ type sys$input
-
-$ type sys$input
-------- Running cache -------
-$ run cache
-$ type sys$input
-
-$ type sys$input
-------- Running cache_tagging -------
-$ run cache_tagging
-$ type sys$input
-
-$ type sys$input
-------- Running chunk_info -------
-$ run chunk_info
-$ type sys$input
-
-$ type sys$input
-------- Running cmpd_dset -------
-$ run cmpd_dset
-$ type sys$input
-
-$ type sys$input
-------- Running cross_read -------
-$ run cross_read
-$ type sys$input
-
-$ type sys$input
-------- Running dangle -------
-$ run dangle
-$ type sys$input
-
-$ type sys$input
-------- Running dsets -------
-$ run dsets
-$ type sys$input
-
-$ type sys$input
-------- Running dt_arith -------
-$ run dt_arith
-$ type sys$input
-
-$ type sys$input
-------- Running dtransform -------
-$ run dtransform
-$ type sys$input
-
-$ type sys$input
-------- Running dtypes -------
-$ run dtypes
-$ type sys$input
-
-$ type sys$input
-------- Running earray -------
-$ run earray
-$ type sys$input
-
-$! Skip this test for now because it opens the same file many times.
-$! Please see Issue 7620 in Jira about it.
-$! type sys$input
-$! ------- Running efc -------
-$! run efc
-$! type sys$input
-
-$ type sys$input
-------- Running enum -------
-$ run enum
-$ type sys$input
-
-$ type sys$input
-------- Running extend -------
-$ run extend
-$ type sys$input
-
-$ type sys$input
-------- Running external -------
-$ run external
-$ type sys$input
-
-$ type sys$input
-------- Running fheap -------
-$ run fheap
-$ type sys$input
-
-$ type sys$input
-------- Running fillval -------
-$ run fillval
-$ type sys$input
-
-$ type sys$input
-------- Running filter_fail -------
-$ run filter_fail
-$ type sys$input
-
-$ type sys$input
-------- Running flush1 -------
-$ run flush1
-$ type sys$input
-
-$ type sys$input
-------- Running flush2 -------
-$ run flush2
-$ type sys$input
-
-$ type sys$input
-------- Running freespace -------
-$ run freespace
-$ type sys$input
-
-$ type sys$input
-------- Running getname -------
-$ run getname
-$ type sys$input
-
-$ type sys$input
-------- Running gheap -------
-$ run gheap
-$ type sys$input
-
-$ type sys$input
-------- Running hyperslab -------
-$ run hyperslab
-$ type sys$input
-
-$ type sys$input
-------- Running istore -------
-$ run istore
-$ type sys$input
-
-$ type sys$input
-------- Running lheap -------
-$ run lheap
-$ type sys$input
-
-$ type sys$input
-------- Running links -------
-$ run links
-$ type sys$input
-
-$ type sys$input
-------- Running links_env -------
-$ run links_env
-$ type sys$input
-
-$ type sys$input
-------- Running mf -------
-$ run mf
-$ type sys$input
-
-$ type sys$input
-------- Running mount -------
-$ run mount
-$ type sys$input
-
-$ type sys$input
-------- Running mtime -------
-$ run mtime
-$ type sys$input
-
-$ type sys$input
-------- Running ntypes -------
-$ run ntypes
-$ type sys$input
-
-$ type sys$input
-------- Running objcopy -------
-$ run objcopy
-$ type sys$input
-
-$ type sys$input
-------- Running ohdr -------
-$ run ohdr
-$ type sys$input
-
-$ type sys$input
-------- Running pool -------
-$ run pool
-$ type sys$input
-
-$ type sys$input
-------- Running reserved -------
-$ run reserved
-$ type sys$input
-
-$ type sys$input
-------- Running set_extent -------
-$ run set_extent
-$ type sys$input
-
-$ type sys$input
-------- Running space_overflow -------
-$ run space_overflow
-$ type sys$input
-
-$ type sys$input
-------- Running stab -------
-$ run stab
-$ type sys$input
-
-$ type sys$input
-------- Running testmeta -------
-$ run testmeta
-$ type sys$input
-
-$ type sys$input
-------- Running unlink -------
-$ run unlink
-$ type sys$input
-
-$ type sys$input
-------- Running vfd -------
-$ run vfd
-$ type sys$input
-
-------- Testing completed -------
-$ exit
diff --git a/vms/test/make.com b/vms/test/make.com
deleted file mode 100644
index 22479c6..0000000
--- a/vms/test/make.com
+++ /dev/null
@@ -1,358 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make HDF5 library tests
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=(_LARGEFILE,H5_VMS)/include=zlib_dir"
-$!
-$ ccc := cc 'ccopt /include=([-.src])
-$ type sys$input
- Creating testhdf5
-$!
-$ cobj= "h5test.c, testframe.c, testhdf5.c, tarray.c, tattr.c, tcheck_version., tchecksum.c,"+-
- "tconfig.c, tcoords.c, tfile.c, tgenprop.c, th5o.c, th5s.c, theap.c, tid.c,"+-
- "titerate.c, tmeta.c, tmisc.c, trefer.c, trefstr.c, tselect.c, tskiplist.c,"+-
- "tsohm.c, ttime.c, ttst.c, tunicode.c, tvlstr.c, tvltypes.c, cache_common.c"
-$!
-$ ccc 'cobj
-$ library/create/replace []libh5test h5test, testframe, cache_common
-$ type sys$input
- Creating libh5test
-$ link testhdf5,tarray,tattr,tcheck_version,tchecksum,tconfig, -
- tcoords,tfile,tgenprop,th5o,th5s,theap,tid,titerate, -
- tmeta,tmisc,trefer,trefstr, -
- tselect,tskiplist,tsohm,ttime,ttst,tunicode,tvlstr,tvltypes, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$
-$! a new test
-$ type sys$input
- Creating accum test
-$ ccc accum
-$ link accum, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating app_ref test
-$ ccc app_ref
-$ link app_ref, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating big test
-$ ccc big
-$ link big, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating bittests test
-$ ccc bittests
-$ link bittests, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating btree2 test
-$ ccc btree2
-$ link btree2, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating cache_api test
-$ ccc cache_api
-$ link cache_api, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating cache test
-$ ccc cache
-$ link cache, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating cache_common test
-$ ccc cache_common
-$ link cache_common, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$! a new test
-$ type sys$input
- Creating cache_tagging tests
-$ ccc cache_tagging
-$ link cache_tagging, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating chunk_info test
-$ ccc chunk_info
-$ link chunk_info, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating cmpd_dset test
-$ ccc cmpd_dset
-$ link cmpd_dset, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating cross_read test
-$ ccc cross_read
-$ link cross_read, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating dangle test
-$ ccc dangle
-$ link dangle, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating dsets tests
-$ ccc dsets
-$ link dsets, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating dt_arith test
-$ ccc dt_arith
-$ link dt_arith, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating dtransform test
-$ ccc dtransform
-$ link dtransform, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating dtypes test
-$ ccc dtypes
-$ link dtypes, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating earray test
-$ ccc earray
-$ link earray, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating efc test
-$ ccc efc
-$ link efc, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating enum test
-$ ccc enum
-$ link enum, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating err_compat test
-$ ccc err_compat
-$ link err_compat, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating error_test test
-$ ccc error_test
-$ link error_test, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating extend test
-$ ccc extend
-$ link extend, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating external test
-$ ccc external
-$ link external, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating fheap test
-$ ccc fheap
-$ link fheap, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating fillval test
-$ ccc fillval
-$ link fillval, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$! a new test
-$ type sys$input
- Creating filter_fail test
-$ ccc filter_fail
-$ link filter_fail, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating flush1 test
-$ ccc flush1
-$ link flush1, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating flush2 test
-$ ccc flush2
-$ link flush2, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating freespace test
-$ ccc freespace
-$ link freespace, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating getname test
-$ ccc getname
-$ link getname, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating gheap test
-$ ccc gheap
-$ link gheap, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating hyperslab test
-$ ccc hyperslab
-$ link hyperslab, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating istore test
-$ ccc istore
-$ link istore, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating lheap test
-$ ccc lheap
-$ link lheap, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating links test
-$ ccc links
-$ link links, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$! a new test
-$ type sys$input
- Creating links_env test
-$ ccc links_env
-$ link links_env, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating mf test
-$ ccc mf
-$ link mf, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating mount test
-$ ccc mount
-$ link mount, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating mtime test
-$ ccc mtime
-$ link mtime, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating ntypes test
-$ ccc ntypes
-$ link ntypes, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating objcopy test
-$ ccc objcopy
-$ link objcopy, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating ohdr test
-$ ccc ohdr
-$ link ohdr, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating pool test
-$ ccc pool
-$ link pool, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating reserved test
-$ ccc reserved
-$ link reserved, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating set_extent test
-$ ccc set_extent
-$ link set_extent, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$! a new test
-$ type sys$input
- Creating space_overflow test
-$ ccc space_overflow
-$ link space_overflow, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating stab test
-$ ccc stab
-$ link stab, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$! a new test
-$ type sys$input
- Creating testmeta test
-$ ccc testmeta
-$ link testmeta, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating unlink test
-$ ccc unlink
-$ link unlink, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Creating vfd test
-$ ccc vfd
-$ link vfd, -
- libh5test.olb/lib,[-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$!
-$ type sys$input
- Done with tests compilation
-$ exit
diff --git a/vms/tools/h5copy/check_h5copy.com b/vms/tools/h5copy/check_h5copy.com
deleted file mode 100644
index df83c88..0000000
--- a/vms/tools/h5copy/check_h5copy.com
+++ /dev/null
@@ -1,110 +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.
-$!#
-$!
-$ !
-$ ! This command file tests h5copy utility. The command file has to
-$ ! run in the [hdf5-top.tools.h5copy.testfiles] directory.
-$ !
-$ type sys$input
-
-===================================
- Testing h5copy utiltity
-===================================
-
-$ !
-$ ! Define h5copy symbols
-$ !
-$ current_dir = F$DIRECTRY()
-$ len = F$LENGTH(current_dir)
-$ temp = F$EXTRACT(0, len-11, current_dir)
-$ h5copy_dir = temp + "]"
-$ h5copy :== $sys$disk:'h5copy_dir'h5copy.exe
-$ !
-$ !
-$ ! h5copy tests
-$ !
-$
-
-$ !# copy files
-$ write sys$output "Test copying various forms of datasets"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s simple -d simple"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s chunk -d chunk"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s compact -d compact"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s compound -d compound"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s compressed -d compressed"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s named_vl -d named_vl"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s nested_vl -d nested_vl"
-$ !
-$ write sys$output " "
-$ write sys$output "Test copying dataset within group in source file to root of destination"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s grp_dsets/simple -d simple_top"
-$ write sys$output " "
-$ write sys$output "Test copying & renaming dataset"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s compound -d rename"
-$!
-$ write sys$output " "
-$ write sys$output "Test copying empty, 'full' & 'nested' groups"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s grp_empty -d grp_empty"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s grp_dsets -d grp_dsets"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s grp_nested -d grp_nested"
-$!
-$ write sys$output " "
-$ write sys$output "Test copying dataset within group in source file to group in destination"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -v -s /grp_dsets/simple -d /grp_dsets/simple_group"
-$! write sys$output "Test copying & renaming group"
-$! CALL TOOLTEST_FAIL "-i h5copytst.h5 -o out.h5 -v -s grp_dsets -d grp_rename
-$! write sys$output "Test copying full group hierarchy into group in destination file"
-$! CALL TOOLTEST_FAIL "-i h5copytst.h5 -o out.h5 -v -s grp_dsets -d /grp_rename/grp_dsets"
-$!
-$ write sys$output " "
-$ write sys$output "Test copying objects into group hier. that doesn't exist yet in destination file"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -vp -s simple -d /A/B1/simple"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -vp -s simple -d /A/B2/simple2"
-$ CALL TOOLTEST "-i h5copytst.h5 -o out.h5 -vp -s /grp_dsets/simple -d /C/D/simple"
-$!CALL TOOLTEST_FAIL "-i h5copytst.h5 -o out.h5 -vp -s /grp_dsets -d /E/F/grp_dsets"
-$!CALL TOOLTEST_FAIL "-i h5copytst.h5 -o out.h5 -vp -s /grp_nested -d /G/H/grp_nested"
-$!
-$ del *out.h5;*
-$ !
-$TOOLTEST: SUBROUTINE
-
-$
-$ begin = "Testing h5copy"
-$ !
-$ ! Run the test and save output in the 'actual' file
-$ !
-$ define/nolog sys$error h5copy_temp.err
-$ ON ERROR THEN CONTINUE
-$ h5copy 'P1
-$ deassign sys$error
-$ if F$SEARCH("h5copy_temp.err") .EQS. ""
-$ then
-$ result = "PASSED"
-$ line = F$FAO("!16AS !53AS !70AS", begin, P1, result)
-$ else
-$ result = "*FAILED*"
-$ line = F$FAO("!16AS !52AS !69AS", begin, P1, result)
-$ endif
-$ !
-$ ! Delete error file if any print test result
-$ !
-$ if F$SEARCH ("*.err;*") .NES. ""
-$ then
-$ del *.err;*
-$ endif
-$ !
-$ write sys$output line
-$ !
-$ENDSUBROUTINE
diff --git a/vms/tools/h5copy/make.com b/vms/tools/h5copy/make.com
deleted file mode 100644
index 1a95f58..0000000
--- a/vms/tools/h5copy/make.com
+++ /dev/null
@@ -1,40 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make h5copy tool
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/include=zlib_dir"
-$
-$ ccc := cc 'ccopt /include=([-.-.src], [-.lib], [-.-.test])
-$ type sys$input
- Creating h5copy
-$!
-$ cobj= " h5copy "
-$!
-$ ccc 'cobj
-$ type sys$input
-$ link/exe=h5copy.exe -
- h5copy, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5copy
-$!
-$!
-$ exit
diff --git a/vms/tools/h5diff/check_h5diff.com b/vms/tools/h5diff/check_h5diff.com
deleted file mode 100644
index 5a0ef46..0000000
--- a/vms/tools/h5diff/check_h5diff.com
+++ /dev/null
@@ -1,337 +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.
-$!#
-$!
-$ !
-$ ! This command file tests h5diff utility. The command file has to
-$ ! run in the [hdf5-top.tools.h5diff.testfiles] directory.
-$ !
-$ !
-$ type sys$input
-
-===================================
- Testing h5diff utiltity
-===================================
-
-$ ! Define h5diff symbol
-$ !
-$! set message/notext/nofacility/noidentification/noseverity
-$ current_dir = F$DIRECTRY()
-$ len = F$LENGTH(current_dir)
-$ temp = F$EXTRACT(0, len-11, current_dir)
-$ h5diff_dir = temp + "]"
-$ h5diff :== $sys$disk:'h5diff_dir'h5diff.exe
-$ !
-
-$ !
-$ ! h5diff tests
-$ !
-$
-$!# 1.0
-$ CALL TOOLTEST h5diff_10.txt "-h"
-$!
-$!# 1.1 normal mode
-$ CALL TOOLTEST h5diff_11.txt "h5diff_basic1.h5 h5diff_basic2.h5"
-$!
-$!# 1.2 normal mode with objects
-$ CALL TOOLTEST h5diff_12.txt "h5diff_basic1.h5 h5diff_basic2.h5 g1/dset1 g1/dset2"
-$!
-$!# 1.3 report mode
-$ CALL TOOLTEST h5diff_13.txt "-r h5diff_basic1.h5 h5diff_basic2.h5"
-$!
-$!# 1.4 report mode with objects
-$ CALL TOOLTEST h5diff_14.txt "-r h5diff_basic1.h5 h5diff_basic2.h5 g1/dset1 g1/dset2"
-$!
-$!# 1.5 with -d
-$ CALL TOOLTEST h5diff_15.txt " --report --delta=5 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 1.6.1 with -p (int)
-$ CALL TOOLTEST h5diff_16_1.txt "-v -p 0.02 h5diff_basic1.h5 h5diff_basic1.h5 g1/dset5 g1/dset6"
-$!
-$!# 1.6.2 with -p (unsigned long long)
-$ CALL TOOLTEST h5diff_16_2.txt "--verbose --relative=0.02 h5diff_basic1.h5 h5diff_basic1.h5 g1/dset7 g1/dset8"
-$!
-$!# 1.6.3 with -p (int)
-$ CALL TOOLTEST h5diff_16_3.txt "-v -p 0.02 h5diff_basic1.h5 h5diff_basic1.h5 g1/dset9 g1/dset10"
-$!
-$!# 1.7 verbose mode
-$ CALL TOOLTEST h5diff_17.txt "-v h5diff_basic1.h5 h5diff_basic2.h5"
-$!
-$!# 1.8 quiet mode
-$ CALL TOOLTEST h5diff_18.txt "-q h5diff_basic1.h5 h5diff_basic2.h5"
-$!
-$!
-$!# ##############################################################################
-$!# # not comparable types
-$!# ##############################################################################
-$!
-$!# 2.0
-$ CALL TOOLTEST h5diff_20.txt "-v h5diff_types.h5 h5diff_types.h5 dset g1"
-$
-$!# 2.1
-$ CALL TOOLTEST h5diff_21.txt "-v h5diff_types.h5 h5diff_types.h5 dset l1"
-$!
-$!# 2.2
-$ CALL TOOLTEST h5diff_22.txt "-v h5diff_types.h5 h5diff_types.h5 dset t1"
-$!
-$!# ##############################################################################
-$!# # compare groups, types, links (no differences and differences)
-$!# ##############################################################################
-$!
-$!# 2.3
-$ CALL TOOLTEST h5diff_23.txt "-v h5diff_types.h5 h5diff_types.h5 g1 g1"
-$!
-$!# 2.4
-$ CALL TOOLTEST h5diff_24.txt "-v h5diff_types.h5 h5diff_types.h5 t1 t1"
-$!
-$!# 2.5
-$ CALL TOOLTEST h5diff_25.txt "-v h5diff_types.h5 h5diff_types.h5 l1 l1"
-$!
-$!# 2.6
-$ CALL TOOLTEST h5diff_26.txt "-v h5diff_types.h5 h5diff_types.h5 g1 g2"
-$!
-$!# 2.7
-$ CALL TOOLTEST h5diff_27.txt "-v h5diff_types.h5 h5diff_types.h5 t1 t2"
-$!
-$!# 2.8
-$ CALL TOOLTEST h5diff_28.txt "-v h5diff_types.h5 h5diff_types.h5 l1 l2"
-$!
-$!
-$!
-$!# ##############################################################################
-$!# # Dataset types
-$!# ##############################################################################
-$
-$!# 5.0
-$ CALL TOOLTEST h5diff_50.txt "-v h5diff_dtypes.h5 h5diff_dtypes.h5 dset0a dset0b"
-$!
-$!# 5.1
-$ CALL TOOLTEST h5diff_51.txt "-v h5diff_dtypes.h5 h5diff_dtypes.h5 dset1a dset1b"
-$!
-$!# 5.2
-$ CALL TOOLTEST h5diff_52.txt "-v h5diff_dtypes.h5 h5diff_dtypes.h5 dset2a dset2b"
-$!
-$!# 5.3
-$ CALL TOOLTEST h5diff_53.txt "-v h5diff_dtypes.h5 h5diff_dtypes.h5 dset3a dset4b"
-$!
-$!# 5.4
-$ CALL TOOLTEST h5diff_54.txt "-v h5diff_dtypes.h5 h5diff_dtypes.h5 dset4a dset4b"
-$!
-$!# 5.5
-$ CALL TOOLTEST h5diff_55.txt "-v h5diff_dtypes.h5 h5diff_dtypes.h5 dset5a dset5b"
-$!
-$!# 5.6
-$ CALL TOOLTEST h5diff_56.txt "-v h5diff_dtypes.h5 h5diff_dtypes.h5 dset6a dset6b"
-$!
-$!# 5.7
-$ CALL TOOLTEST h5diff_57.txt "-v h5diff_dtypes.h5 h5diff_dtypes.h5 dset7a dset7b"
-$!
-$!# 5.8 (region reference)
-$ CALL TOOLTEST h5diff_58.txt "-v h5diff_dset1.h5 h5diff_dset2.h5 refreg"
-$!
-$!# ##############################################################################
-$!# # Error messages
-$!# ##############################################################################
-$!
-$!
-$!# 6.0: Check if the command line number of arguments is less than 3
-$ CALL TOOLTEST h5diff_600.txt "h5diff_basic1.h5"
-$!
-$!# ##############################################################################
-$!# # -d
-$!# ##############################################################################
-$!
-$!
-$!# 6.3: negative value
-$ CALL TOOLTEST h5diff_603.txt "-d -4 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.4: zero
-$ CALL TOOLTEST h5diff_604.txt "-d 0 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.5: non number
-$ CALL TOOLTEST h5diff_605.txt "-d u h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.6: hexadecimal
-$ CALL TOOLTEST h5diff_606.txt "-d 0x1 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.7: string
-$ CALL TOOLTEST h5diff_607.txt "-d """1""" h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.8: repeated option
-$ CALL TOOLTEST h5diff_608.txt "-d 1 -d 2 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.9: number larger than biggest difference
-$ CALL TOOLTEST h5diff_609.txt "-d 200 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.10: number smaller than smallest difference
-$ CALL TOOLTEST h5diff_610.txt "-d 1 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!
-$!# ##############################################################################
-$!# # -p
-$!# ##############################################################################
-$!
-$!
-$!
-$!# 6.12: negative value
-$ CALL TOOLTEST h5diff_612.txt "-p -4 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.13: zero
-$ CALL TOOLTEST h5diff_613.txt "-p 0 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.14: non number
-$ CALL TOOLTEST h5diff_614.txt "-p u h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.15: hexadecimal
-$ CALL TOOLTEST h5diff_615.txt "-p 0x1 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.16: string
-$! CALL TOOLTEST h5diff_616.txt "-p """0.21""" h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.17: repeated option
-$ CALL TOOLTEST h5diff_617.txt "-p 0.21 -p 0.22 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.18: number larger than biggest difference
-$ CALL TOOLTEST h5diff_618.txt "-p 2 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.19: number smaller than smallest difference
-$ CALL TOOLTEST h5diff_619.txt "-p 0.005 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!
-$!
-$!# ##############################################################################
-$!# # -n
-$!# ##############################################################################
-$!
-$!
-$!
-$!# 6.21: negative value
-$ CALL TOOLTEST h5diff_621.txt "-n -4 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.22: zero
-$ CALL TOOLTEST h5diff_622.txt "-n 0 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.23: non number
-$ CALL TOOLTEST h5diff_623.txt "-n u h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.24: hexadecimal
-$ CALL TOOLTEST h5diff_624.txt "-n 0x1 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.25: string
-$ CALL TOOLTEST h5diff_625.txt "-n """2""" h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.26: repeated option
-$ CALL TOOLTEST h5diff_626.txt "-n 2 -n 3 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.27: number larger than biggest difference
-$ CALL TOOLTEST h5diff_627.txt "--count=200 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# 6.28: number smaller than smallest difference
-$ CALL TOOLTEST h5diff_628.txt "-n 1 h5diff_basic1.h5 h5diff_basic2.h5 g1/dset3 g1/dset4"
-$!
-$!# ##############################################################################
-$!# 6.29 non valid files
-$!# ##############################################################################
-$! This test is disabled in the C test script.
-$! CALL TOOLTEST h5diff_629.txt "file1.h6 file2.h6"
-$!
-$!# ##############################################################################
-$!# 7. attributes
-$!# ##############################################################################
-$!
-$ CALL TOOLTEST h5diff_70.txt "-v h5diff_attr1.h5 h5diff_attr2.h5"
-$!
-$!# ##############################################################################
-$!# 8. all dataset datatypes
-$!# ##############################################################################
-$!
-$ CALL TOOLTEST h5diff_80.txt "-v h5diff_dset1.h5 h5diff_dset2.h5"
-$!
-$!# 9. compare a file with itself
-$!
-$ CALL TOOLTEST h5diff_90.txt "-v h5diff_basic2.h5 h5diff_basic2.h5"
-$!
-$! 10. read by hyperslab, print indexes
-$ CALL TOOLTEST h5diff_100.txt "-v h5diff_hyper1.h5 h5diff_hyper2.h5"
-$!
-$! 11. floating point comparison
-$ CALL TOOLTEST h5diff_101.txt "-v h5diff_basic1.h5 h5diff_basic1.h5 g1/d1 g1/d2"
-$ CALL TOOLTEST h5diff_102.txt "-v h5diff_basic1.h5 h5diff_basic1.h5 g1/fp1 g1/fp2"
-$!
-$!
-$!
-$TOOLTEST: SUBROUTINE
-$
-$ len = F$LENGTH(P1)
-$ base = F$EXTRACT(0,len-3,P1)
-$ actual = base + "h5diffout"
-$ actual_err = base + "h5differr"
-$
-$ begin = "Testing h5diff "
-$ !
-$ ! Run the test and save output in the 'actual' file
-$ !
-$ define/nolog sys$output 'actual'
-$ define/nolog sys$error 'actual_err'
-$ ON ERROR THEN CONTINUE
-$ h5diff 'P2
-$ deassign sys$output
-$ deassign sys$error
-$ if F$SEARCH(actual_err) .NES. ""
-$ then
-$ set message/notext/nofacility/noidentification/noseverity
-$ append 'actual_err' 'actual'
-$ set message/text/facility/identification/severity
-$ endif
-$ !
-$ ! Compare the results
-$ !
-$ diff/output=h5diff_temp/ignore=(spacing,trailing_spaces,blank_lines) 'actual' 'P1'
-$ open/read temp_out h5diff_temp.dif
-$ read temp_out record1
-$ close temp_out
-$ !
-$ ! Extract error code and format output line
-$ !
-$ len = F$LENGTH(record1)
-$ err_code = F$EXTRACT(len-1,1,record1)
-$ if err_code .eqs. "0"
-$ then
-$ result = "PASSED"
-$ line = F$FAO("!15AS !50AS !70AS", begin, P2, result)
-$ else
-$ result = "*FAILED*"
-$ line = F$FAO("!15AS !49AS !69AS", begin, P2, result)
-$ endif
-$ !
-$ ! Print test result
-$ !
-$ write sys$output line
-$ !
-$ ! Append the result to the log file
-$ !
-$ append/new_version h5diff_temp.dif h5diff.log
-$ append/new_version 'actual' h5diff_output.txt
-$ !
-$ ! Delete temporary files
-$ !
-$ if F$SEARCH(actual_err) .NES. ""
-$ then
-$ del *.h5differr;*
-$ endif
-$ del *.h5diffout;*
-$ del h5diff_temp.dif;*
-$ !
-$ENDSUBROUTINE
-
diff --git a/vms/tools/h5diff/make.com b/vms/tools/h5diff/make.com
deleted file mode 100644
index c1e0078..0000000
--- a/vms/tools/h5diff/make.com
+++ /dev/null
@@ -1,48 +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.
-$!#
-$! Makefile for VAX/VMX systems.
-$!
-$! Make h5diff tool
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/include=zlib_dir"
-$ ccc := cc 'ccopt /include=([-.-.src], [-.lib])
-$!
-$ cobj= "h5diff_main, h5diff_common, h5diffgentest"
-
-$!
-$ ccc 'cobj
-$ type sys$input
- Creating h5diffgentest ...
-$ link/exe=h5diffgentest.exe -
- h5diffgentest, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Finished h5difftest
-
-$
-$ type sys$input
- Creating h5diff ...
-$ link/exe=h5diff.exe -
- h5diff_main, h5diff_common, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Finished h5diff
-
-$!
-$ exit
diff --git a/vms/tools/h5dump/check_h5dump.com b/vms/tools/h5dump/check_h5dump.com
deleted file mode 100644
index 2c34731..0000000
--- a/vms/tools/h5dump/check_h5dump.com
+++ /dev/null
@@ -1,353 +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.
-$!#
-$ !
-$ ! This command file tests h5dump utility. The command file has to
-$ ! run in the [hdf5-top.tools.testfiles] directory.
-$ !
-$ type sys$input
-
-===================================
- Testing h5dump utiltity
-===================================
-
-$
-$ !
-$ ! Define h5dump symbol
-$ !
-$! set message/notext/nofacility/noidentification/noseverity
-$ current_dir = F$DIRECTRY()
-$ len = F$LENGTH(current_dir)
-$ temp = F$EXTRACT(0, len-10, current_dir)
-$ h5dump_dir = temp + "H5DUMP]"
-$ h5dump :== $sys$disk:'h5dump_dir'h5dump.exe
-$ !
-$ ! h5dump tests
-$ !
-$
-$
-$
-$ ! Test for displaying groups
-$ CALL TOOLTEST tgroup-1.ddl "tgroup.h5"
-$ ! Test for displaying the selected groups
-$ CALL TOOLTEST tgroup-2.ddl "--group=/g2 --group / -g /y tgroup.h5"
-$ ! Test for displaying simple space datasets
-$ CALL TOOLTEST tdset-1.ddl "tdset.h5"
-$ ! Test for displaying selected datasets
-$ CALL TOOLTEST tdset-2.ddl "-"""H""" -d dset1 -d /dset2 --dataset=dset3 tdset.h5"
-$ ! Test for displaying attributes
-$ CALL TOOLTEST tattr-1.ddl "tattr.h5"
-$ ! Test for displaying the selected attributes of string type and scalar space
-$ CALL TOOLTEST tattr-2.ddl "-a /attr1 --attribute /attr4 --attribute=/attr5 tattr.h5"
-$ ! Test for header and error messages
-$ CALL TOOLTEST tattr-3.ddl "--header -a /attr2 --attribute=/attr tattr.h5"
-$ ! Test for displaying attributes in shared datatype (also in group and dataset)
-$ CALL TOOLTEST tnamed_dtype_attr.ddl "tnamed_dtype_attr.h5"
-$
-$ ! Test for displaying soft links
-$ CALL TOOLTEST tslink-1.ddl "tslink.h5"
-$ ! Test for displaying the selected link
-$ CALL TOOLTEST tslink-2.ddl "-l slink2 tslink.h5"
-$
-$ ! Tests for hard links
-$ CALL TOOLTEST thlink-1.ddl "thlink.h5"
-$ CALL TOOLTEST thlink-2.ddl "-d /g1/dset2 --dataset /dset1 --dataset=/g1/g1.1/dset3 thlink.h5"
-$ CALL TOOLTEST thlink-3.ddl "-d /g1/g1.1/dset3 --dataset /g1/dset2 --dataset=/dset1 thlink.h5"
-$ CALL TOOLTEST thlink-4.ddl "-g /g1 thlink.h5"
-$ CALL TOOLTEST thlink-5.ddl "-d /dset1 -g /g2 -d /g1/dset2 thlink.h5"
-$
-$ ! Tests for compound data types
-$ CALL TOOLTEST tcomp-1.ddl "tcompound.h5"
-$ ! test for named data types
-$ CALL TOOLTEST tcomp-2.ddl "-t /type1 --datatype /type2 --datatype=/group1/type3 tcompound.h5"
-$ ! Test for unamed type
-$ CALL TOOLTEST tcomp-3.ddl "-t /#6632 -g /group2 tcompound.h5"
-$ ! Test complicated compound datatype
-$ CALL TOOLTEST tcomp-4.ddl "tcompound_complex.h5"
-$
-$ ! Test for the nested compound type
-$ CALL TOOLTEST tnestcomp-1.ddl "tnestedcomp.h5"
-$
-$ ! test for options
-$ CALL TOOLTEST tall-1.ddl "tall.h5"
-$ CALL TOOLTEST tall-2.ddl "--header -g /g1/g1.1 -a attr2 tall.h5"
-$ CALL TOOLTEST tall-3.ddl "-d /g2/dset2.1 -l /g1/g1.2/g1.2.1/slink tall.h5"
-$
-$ ! Test for loop detection
-$ CALL TOOLTEST tloop-1.ddl "tloop.h5"
-$
-$ ! Test for string
-$ CALL TOOLTEST tstr-1.ddl "tstr.h5"
-$ CALL TOOLTEST tstr-2.ddl "tstr2.h5"
-$
-$ ! Test for file created by Lib SAF team
-$ CALL TOOLTEST tsaf.ddl "tsaf.h5"
-$
-$ ! Test for file with variable length data
-$ CALL TOOLTEST tvldtypes1.ddl "tvldtypes1.h5"
-$ CALL TOOLTEST tvldtypes2.ddl "tvldtypes2.h5"
-$ CALL TOOLTEST tvldtypes3.ddl "tvldtypes3.h5"
-$ CALL TOOLTEST tvldtypes4.ddl "tvldtypes4.h5"
-$ CALL TOOLTEST tvldtypes5.ddl "tvldtypes5.h5"
-$
-$ ! Test for file with variable length string data
-$ CALL TOOLTEST tvlstr.ddl "tvlstr.h5"
-$
-$ ! Test for files with array data
-$ CALL TOOLTEST tarray1.ddl "tarray1.h5"
-$ CALL TOOLTEST tarray2.ddl "tarray2.h5"
-$ CALL TOOLTEST tarray3.ddl "tarray3.h5"
-$ CALL TOOLTEST tarray4.ddl "tarray4.h5"
-$ CALL TOOLTEST tarray5.ddl "tarray5.h5"
-$ CALL TOOLTEST tarray6.ddl "tarray6.h5"
-$ CALL TOOLTEST tarray7.ddl "tarray7.h5"
-$
-$ ! Test for files with empty data
-$ CALL TOOLTEST tempty.ddl "tempty.h5"
-$
-$ ! Test for files with groups that have comments
-$ CALL TOOLTEST tgrp_comments.ddl "tgrp_comments.h5"
-$
-$ ! Test the --filedriver flag
-$ CALL TOOLTEST tsplit_file.ddl "--filedriver=split tsplit_file"
-$ CALL TOOLTEST tfamily.ddl "--filedriver=family tfamily%05d.h5"
-$ CALL TOOLTEST tmulti.ddl "--filedriver=multi tmulti"
-$
-$ ! Test for files with group names which reach > 1024 bytes in size
-$ CALL TOOLTEST tlarge_objname.ddl "-w157 tlarge_objname.h5"
-$
-$ ! Test '-A' to suppress data but print attr's
-$ CALL TOOLTEST tall-2A.ddl "-"""A""" tall.h5"
-$
-$ ! Test '-r' to print attributes in ASCII instead of decimal
-$ CALL TOOLTEST tall-2B.ddl "-"""A""" -r tall.h5"
-$
-$ ! Test Subsetting
-$ CALL TOOLTEST tall-4s.ddl "--dataset=/g1/g1.1/dset1.1.1 --start=1,1 --stride=2,3 --count=3,2 --block=1,1 tall.h5"
-$ CALL TOOLTEST tall-5s.ddl "-d /g1/g1.1/dset1.1.2[0;2;10;] tall.h5"
-$ CALL TOOLTEST tdset-3s.ddl "-d /dset1[1,1;;;] tdset.h5"
-$! CALL TOOLTEST tdset-3s.ddl "-d """/"dset"1[;3,2;4,4;1,4]""" tdset2.h5"
-$
-$ ! Test printing characters in ASCII instead of decimal
-$ CALL TOOLTEST tchar1.ddl "-r tchar.h5"
-$
-$ ! Test failure handling
-$ ! Missing file name
-$ CALL TOOLTEST "tnofilename.ddl"
-$
-$ ! rev. 2004
-$
-$ ! Tests for super block
-$ CALL TOOLTEST tboot1.ddl "-"""H""" -"""B""" -d dset tfcontents1.h5"
-$ CALL TOOLTEST tboot2.ddl "-"""B""" tfcontents2.h5"
-$
-$ ! Test -p with a non existing dataset
-$ CALL TOOLTEST tperror.ddl "-p -d bogus tfcontents1.h5"
-$
-$ ! Test for file contents
-$ CALL TOOLTEST tcontents.ddl "-n tfcontents1.h5"
-$
-$ ! Tests for storage layout
-$ ! Compact
-$ CALL TOOLTEST tcompact.ddl "-"""H""" -p -d compact tfilters.h5"
-$ ! Contiguous
-$ CALL TOOLTEST tcontiguos.ddl "-"""H""" -p -d contiguous tfilters.h5"
-$ ! Chunked
-$ CALL TOOLTEST tchunked.ddl "-"""H""" -p -d chunked tfilters.h5"
-$ ! External
-$ CALL TOOLTEST texternal.ddl "-"""H""" -p -d external tfilters.h5"
-$
-$ ! Fill values
-$ CALL TOOLTEST tfill.ddl "-p tfvalues.h5"
-$
-$ ! Several datatype, with references , print path
-$ CALL TOOLTEST treference.ddl "tattr2.h5"
-$
-$ ! Escape/not escape non printable characters
-$ CALL TOOLTEST tstringe.ddl "-e tstr3.h5"
-$ CALL TOOLTEST tstring.ddl "tstr3.h5"
-$ ! Char data as ASCII with non escape
-$ CALL TOOLTEST tstring2.ddl "-r -d str4 tstr3.h5"
-$
-$ ! Array indices print/not print
-$ CALL TOOLTEST tindicesyes.ddl "taindices.h5"
-$ CALL TOOLTEST tindicesno.ddl "-y taindices.h5"
-$ ! User defined
-$ CALL TOOLTEST tuserfilter.ddl "-"""H""" -p -d myfilter tfilters.h5"
-$
-$ ! Test for displaying dataset and attribute of null space
-$ CALL TOOLTEST tnullspace.ddl "tnullspace.h5"
-$
-$ ! Test for displaying objects with very long names
-$ !CALL TOOLTEST tlonglinks.ddl "tlonglinks.h5"
-$
-$ ! Test for long double (some systems do not have long double)
-$ ! CALL TOOLTEST tldouble.ddl "tldouble.h5"
-$
-$ ! Test for vms
-$ CALL TOOLTEST tvms.ddl "tvms.h5"
-$
-$ !test for binary output
-$ CALL TOOLTEST1 tbin1.ddl "-d integer -o out1.bin -b """LE""" tbinary.h5"
-$ CALL TOOLTEST1 tbin2.ddl "-d float -o out2.bin -b """BE""" tbinary.h5"
-$ CALL TOOLTEST1 tbin4.ddl "-d double -o out4.bin -b """FILE""" tbinary.h5"
-$
-$ ! Test for dataset region references
-$ CALL TOOLTEST tdatareg.ddl "tdatareg.h5"
-$
-$ ! tests for group creation order "1" tracked, "2" name, root tracked
-$ CALL TOOLTEST tordergr1.ddl "--group=1 --sort_by=creation_order --sort_order=ascending tordergr.h5"
-$ CALL TOOLTEST tordergr2.ddl "--group=1 --sort_by=creation_order --sort_order=descending tordergr.h5"
-$ CALL TOOLTEST tordergr3.ddl "-g 2 -q name -z ascending tordergr.h5"
-$ CALL TOOLTEST tordergr4.ddl "-g 2 -q name -z descending tordergr.h5"
-$ CALL TOOLTEST tordergr5.ddl "-q creation_order tordergr.h5"
-$
-$ ! Tests for attribute order
-$ CALL TOOLTEST torderattr1.ddl "-"""H""" --sort_by=name --sort_order=ascending torderattr.h5"
-$ CALL TOOLTEST torderattr2.ddl "-"""H""" --sort_by=name --sort_order=descending torderattr.h5"
-$ CALL TOOLTEST torderattr3.ddl "-"""H""" --sort_by=creation_order --sort_order=ascending torderattr.h5"
-$ CALL TOOLTEST torderattr4.ddl "-"""H""" --sort_by=creation_order --sort_order=descending torderattr.h5"
-$ !
-$TOOLTEST: SUBROUTINE
-$
-$ len = F$LENGTH(P1)
-$ base = F$EXTRACT(0,len-3,P1)
-$ actual = base + "h5dumpout"
-$ actual_err = base + "h5dumperr"
-$
-$ begin = "Testing h5dump "
-$ !
-$ ! Run the test and save output in the 'actual' file
-$ !
-$
-$ define/nolog sys$output 'actual'
-$ define/nolog sys$error 'actual_err'
-$ write sys$output "#############################"
-$ write sys$output "Expected output for 'h5dump ''P2''"
-$ write sys$output "#############################"
-$ ON ERROR THEN CONTINUE
-$ h5dump 'P2
-$ deassign sys$output
-$ deassign sys$error
-$ if F$SEARCH(actual_err) .NES. ""
-$ then
-$ set message/notext/nofacility/noidentification/noseverity
-$ append 'actual_err' 'actual'
-$ set message/text/facility/identification/severity
-$ endif
-$ !
-$ ! Compare the results
-$ !
-$ diff/output=h5dump_temp/ignore=(spacing,trailing_spaces,blank_lines) 'actual' 'P1'
-$ open/read temp_out h5dump_temp.dif
-$ read temp_out record1
-$ close temp_out
-$ !
-$ ! Extract error code and format output line
-$ !
-$ len = F$LENGTH(record1)
-$ err_code = F$EXTRACT(len-1,1,record1)
-$ if err_code .eqs. "0"
-$ then
-$ result = "PASSED"
-$ line = F$FAO("!15AS !50AS !70AS", begin, P2, result)
-$ else
-$ result = "*FAILED*"
-$ line = F$FAO("!15AS !49AS !69AS", begin, P2, result)
-$ endif
-$ !
-$ ! Print test result
-$ !
-$ write sys$output line
-$ !
-$ ! Append the result to the log file
-$ !
-$ append/new_version h5dump_temp.dif h5dump.log
-$ append/new_version 'actual' h5dump_output.txt
-$ !
-$ ! Delete temporary files
-$ !
-$ if F$SEARCH(actual_err) .NES. ""
-$ then
-$ del *.h5dumperr;*
-$ endif
-$ del *.h5dumpout;*
-$ del h5dump_temp.dif;*
-$ !
-$ENDSUBROUTINE
-$
-$TOOLTEST1: SUBROUTINE
-$
-$ len = F$LENGTH(P1)
-$ base = F$EXTRACT(0,len-3,P1)
-$ actual = base + "h5dumpout"
-$ actual_err = base + "h5dumperr"
-$
-$ begin = "Testing h5dump "
-$ !
-$ ! Run the test and save output in the 'actual' file
-$ !
-$ define/nolog sys$output 'actual'
-$ define/nolog sys$error 'actual_err'
-$ ON ERROR THEN CONTINUE
-$ h5dump 'P2
-$ deassign sys$output
-$ deassign sys$error
-$ if F$SEARCH(actual_err) .NES. ""
-$ then
-$ set message/notext/nofacility/noidentification/noseverity
-$ append 'actual_err' 'actual'
-$ set message/text/facility/identification/severity
-$ endif
-$ !
-$ ! Compare the results
-$ !
-$ diff/output=h5dump_temp/ignore=(spacing,trailing_spaces,blank_lines) 'actual' 'P1'
-$ open/read temp_out h5dump_temp.dif
-$ read temp_out record1
-$ close temp_out
-$ !
-$ ! Extract error code and format output line
-$ !
-$ len = F$LENGTH(record1)
-$ err_code = F$EXTRACT(len-1,1,record1)
-$ if err_code .eqs. "0"
-$ then
-$ result = "PASSED"
-$ line = F$FAO("!15AS !50AS !70AS", begin, P2, result)
-$ else
-$ result = "*FAILED*"
-$ line = F$FAO("!15AS !49AS !69AS", begin, P2, result)
-$ endif
-$ !
-$ ! Print test result
-$ !
-$ write sys$output line
-$ !
-$ ! Append the result to the log file
-$ !
-$ append/new_version h5dump_temp.dif h5dump.log
-$ append/new_version 'actual' h5dump_output.txt
-$ !
-$ ! Delete temporary files
-$ !
-$ if F$SEARCH(actual_err) .NES. ""
-$ then
-$ del *.h5dumperr;*
-$ endif
-$ del *.h5dumpout;*
-$ del h5dump_temp.dif;*
-$ !
-$ENDSUBROUTINE
-
diff --git a/vms/tools/h5dump/make.com b/vms/tools/h5dump/make.com
deleted file mode 100644
index 612b524..0000000
--- a/vms/tools/h5dump/make.com
+++ /dev/null
@@ -1,41 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make h5dump tool
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/include=zlib_dir"
-$
-$ ccc := cc 'ccopt /include=([-.-.src], [-.lib])
-$ cobj= "h5dump.c, h5dumpgentest.c "
-$ ccc 'cobj
-$ type sys$input
- Creating h5dumpgentest ...
-$ link h5dumpgentest, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Finished h5dumpgentest
-$ type sys$input
- Creating h5dump ...
-$ link h5dump, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Finished h5dump
-$!
-$ exit
diff --git a/vms/tools/h5import/check_h5import.com b/vms/tools/h5import/check_h5import.com
deleted file mode 100644
index 96c2d07..0000000
--- a/vms/tools/h5import/check_h5import.com
+++ /dev/null
@@ -1,227 +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.
-$!#
-$ !
-$ ! This command file tests h5import utility. The command file has to
-$ ! run in the [hdf5-top.tools.h5import.testfiles] directory.
-$ !
-$ !
-$ type sys$input
-
-===================================
- Testing h5import utiltity
-===================================
-
-$ ! Define symbols
-$ !
-$
-$ current_dir = F$DIRECTRY()
-$ len = F$LENGTH(current_dir)
-$ temp = F$EXTRACT(0, len-19, current_dir)
-$ h5dump_dir = temp + "H5DUMP]"
-$ h5dump :== $sys$disk:'h5dump_dir'h5dump.exe
-$ h5import_dir = temp + "H5IMPORT]"
-$ h5import :== $sys$disk:'h5import_dir'h5import.exe
-$ h5importtest :== $sys$disk:'h5import_dir'h5importtest.exe
-$ !
-$ ! Define output for diff command that compares expected and actual
-$ ! outputs of h5dump
-$ !
-$ create h5import.log
-$ !
-$ ! h5import tests
-$ !
-$ ! Run h5importtest to create input files
-$ !
-$ run [.-]h5importtest
-$ !
-$ type sys$input
- Testing ASCII I32 rank 3 - Output BE
-$ CALL TOOLTEST "txtin16.txt -c txtin32.conf -o" txtin32.h5
-$ !
-$ type sys$input
- Testing ASCII I16 rank 3 - Output LE - CHUNKED - extended
-$ CALL TOOLTEST "txtin16.txt -c txtin16.conf -o" txtin16.h5
-$ !
-$ type sys$input
- Testing ASCII I8 - rank 3 - Output I8 LE-Chunked+Extended+Compressed
-$ CALL TOOLTEST "txtin16.txt -c txtin8.conf -o" txtin8.h5
-$ !
-$ type sys$input
- Testing ASCII UI32 - rank 3 - Output BE
-$ CALL TOOLTEST "txtuin32.txt -c txtuin32.conf -o" txtuin32.h5
-$ !
-$ type sys$input
- Testing ASCII UI16 - rank 2 - Output LE+Chunked+Compressed
-$ CALL TOOLTEST "txtuin32.txt -c txtuin16.conf -o" txtuin16.h5
-$ !
-$ type sys$input
- Testing ASCII F32 - rank 3 - Output LE
-$ CALL TOOLTEST "txtfp32.txt -c txtfp32.conf -o" txtfp32.h5
-$ !
-$ type sys$input
- Testing ASCII F64 - rank 3 - Output BE + CHUNKED+Extended+Compressed
-$ CALL TOOLTEST "txtfp64.txt -c txtfp64.conf -o" txtfp64.h5
-$ !
-$ type sys$input
- Testing BINARY F64 - rank 3 - Output LE+CHUNKED+Extended+Compressed
-$ CALL TOOLTEST "binfp64.bin -c binfp64.conf -o" binfp64.h5
-$ !
-$ type sys$input
- Testing BINARY I16 - rank 3 - Output order LE + CHUNKED + extended
-$ CALL TOOLTEST "binin16.bin -c binin16.conf -o" binin16.h5
-$ !
-$ type sys$input
- Testing BINARY I8 - rank 3 - Output I16LE + Chunked+Extended+Compressed
-$ CALL TOOLTEST "binin8.bin -c binin8.conf -o" binin8.h5
-$ !
-$ type sys$input
-
- Testing BINARY I32 - rank 3 - Output BE + CHUNKED
-$ CALL TOOLTEST "binin32.bin -c binin32.conf -o" binin32.h5
-$ !
-$ type sys$input
- Testing BINARY UI16 - rank 3 - Output byte BE + CHUNKED
-$ CALL TOOLTEST "binuin16.bin -c binuin16.conf -o" binuin16.h5
-$ !
-$ type sys$input
- Testing BINARY UI32 - rank 3 - Output LE + CHUNKED
-$ CALL TOOLTEST "binuin32.bin -c binuin32.conf -o" binuin32.h5
-$ !
-$ type sys$input
- Testing STR
-$ CALL TOOLTEST "txtstr.txt -c txtstr.conf -o" txtstr.h5
-$ !
-$ type sys$input
- Testing BINARY I8 CR LF EOF
-$ CALL TOOLTEST "binin8w.bin -c binin8w.conf -o" binin8w.h5
-$ !
-$ type sys$input
- Testing ASCII F64 - rank 1 - INPUT-CLASS TEXTFPE
-$ CALL TOOLTEST "in64.txt -c textpfe.conf -o" test15.h5
-$
-$
-$ ! Delete temporary files
-$ del *_out.h5;*
-$ del *.h5importtxt;*
-$ del b*.h5;*
-$ del txti*.h5;*
-$ del *.dif;*
-$ !
-$
-$TOOLTEST: SUBROUTINE
-$
-$ len = F$LENGTH(P2)
-$ base = F$EXTRACT(0,len-3,P2)
-$ actual = base + "_out.h5"
-$ actual_dump = base + "out.h5importtxt"
-$ actual_dump_err = base + "out.h5importerr"
-$ expected_dump = base + ".h5importtxt"
-$ expected_dump_err = base + ".h5importerr"
-$
-$ begin = "Testing"
-$ !
-$ ! Run h5import with output in the 'actual' file
-$ !
-$ ON ERROR THEN CONTINUE
-$ h5import 'P1 'actual'
-$ define/nolog sys$output 'actual_dump'
-$ define/nolog sys$error 'actual_dump_err'
-$ !
-$ ! Dump the atual and expected files
-$ !
-$ h5dump 'actual'
-$ deassign sys$output
-$ deassign sys$error
-$ if F$SEARCH(actual_dump_err) .NES. ""
-$ then
-$ set message/notext/nofacility/noidentification/noseverity
-$ append 'actual_dump_err' 'actual_dump'
-$ set message/text/facility/identification/severity
-$ endif
-$ define/nolog sys$output 'expected_dump'
-$ define/nolog sys$error 'expected_dump_err'
-$ h5dump 'P2
-$ deassign sys$output
-$ deassign sys$error
-$ if F$SEARCH(expected_dump_err) .NES. ""
-$ then
-$ set message/notex/nofacility/noidentification/noseverity
-$ append 'expected_dump_err' 'expected_dump'
-$ set message/ntext/facility/identification/severity
-$ endif
-$ !
-$ ! Compare the results
-$ !
-$ diff/output=h5dump_temp/ignore=(spacing,trailing_spaces,blank_lines)-
- 'actual_dump' -
- 'expected_dump'
-$ open/read temp_out h5dump_temp.dif
-$ !
-$READ_DATA:
-$ read/end_of_file=end_read temp_out record1
-$ !
-$ ! Skip blank lines
-$ !
-$ if record1 .EQS. "" then goto READ_DATA
-$ !
-$ ! Find record with "Number" and exit the loop
-$ !
-$ len = F$LENGTH(record1)
-$ pos = F$LOCATE("Number", record1)
-$ !
-$ if pos .EQ. 0
-$ then
-$ err_code = F$EXTRACT(len-1,1,record1)
-$ goto END_READ
-$ endif
-$ !
-$ goto READ_DATA
-$
-$ !
-$END_READ:
-$ close temp_out
-$ !
-$ ! File names are different, so we allow only one difference
-$ ! in h5dump
-$ if err_code .eqs. "1"
-$ then
-$ result = "PASSED"
-$ line = F$FAO("!8AS !62AS !80AS", begin, P1, result)
-$ else
-$ result = "*FAILED*"
-$ line = F$FAO("!8AS !61AS !79AS", begin, P1, result)
-$ endif
-$ !
-$ ! Print test result
-$ !
-$ write sys$output line
-$ !
-$ ! Append the result to the log file
-$ !
-$ append h5dump_temp.dif h5import.log
-$ !
-$ !
-$ !
-$ ! Delete temporary files
-$ !
-$ if F$SEARCH(actual_dump_err) .NES. ""
-$ then
-$ del *out.h5importerr;*
-$ endif
-$ if F$SEARCH(expected_dump_err) .NES. ""
-$ then
-$ del *.h5importerr;*
-$ endif
-$ENDSUBROUTINE
diff --git a/vms/tools/h5import/make.com b/vms/tools/h5import/make.com
deleted file mode 100644
index 6afbd70..0000000
--- a/vms/tools/h5import/make.com
+++ /dev/null
@@ -1,46 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make h5import tool
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/include=zlib_dir"
-$ ccc := cc 'ccopt /include=([-.-.src], [-.lib])
-$ type sys$input
- Creating h5import ...
-$!
-$ cobj= "h5import, h5importtest "
-
-$!
-$ ccc 'cobj
-$ link h5import,-
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Finished h5import
-
-$!
-$ type sys$input
- Creating h5importtest ...
-$ link h5importtest, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Finished h5importtest
-
-$!
-$ exit
diff --git a/vms/tools/h5jam/check_h5jam.com b/vms/tools/h5jam/check_h5jam.com
deleted file mode 100644
index 50be903..0000000
--- a/vms/tools/h5jam/check_h5jam.com
+++ /dev/null
@@ -1,159 +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.
-$!#
-$ !
-$ ! This command file tests h5jam and h5unjam utilities. The command file has to
-$ ! run in the [hdf5-top.tools.testfiles] directory.
-$ !
-$ type sys$input
-
-===================================
- Testing h5jam utiltity
-===================================
-
-$ !
-$ ! Define h5jam, h5unjam and h5dump symbols
-$ !
-$! set message/notext/nofacility/noidentification/noseverity
-$ current_dir = F$DIRECTRY()
-$ len = F$LENGTH(current_dir)
-$ temp = F$EXTRACT(0, len-16, current_dir)
-$ h5dump_dir = temp + "H5DUMP]"
-$ h5dump :== $sys$disk:'h5dump_dir'h5dump.exe
-$ temp2 = F$EXTRACT(0, len-11, current_dir)
-$ h5jam_dir = temp2 + "]"
-$ h5jam :== $sys$disk:'h5jam_dir'h5jam.exe
-$ !
-$ ! Define output for diff command that compares expected and actual
-$ ! outputs of h5dump
-$ !
-$ create h5dump.log
-$ !
-$ ! h5jam and h5unjam tests
-$ !
-$
-$ CALL H5JAMTEST "-u u10.txt -i" tall.h5 ta2.h5
-$ CALL H5JAMTEST "-u u511.txt -i" tall.h5 ta3.h5
-$ CALL H5JAMTEST "-u u512.txt -i" tall.h5 ta4.h5
-$ CALL H5JAMTEST "-u u513.txt -i" tall.h5 ta5.h5
-$
-$
-$H5JAMTEST: SUBROUTINE
-$
-$ len_org = F$LENGTH(P2)
-$ base_org = F$EXTRACT(0,len_org-2,P2)
-$ len = F$LENGTH(P3)
-$ base = F$EXTRACT(0,len-2,P3)
-$ actual = base + "out"
-$ actual_org = base_org + "org"
-$ actual_err = base + "err"
-$ actual_err_org = base_org + "err"
-$
-$ ON ERROR THEN CONTINUE
-$ begin = "Testing h5jam"
-$ !
-$ ! Run the test
-$ !
-$ h5jam 'P1 'P2 -o 'P3
-$ !
-$ ! Dump the original and result file
-$ !
-$ define/nolog sys$output 'actual'
-$ define/nolog sys$error 'actual_err'
-$ h5dump 'P3
-$ deassign sys$output
-$ deassign sys$error
-$ if F$SEARCH(actual_err) .NES. ""
-$ then
-$ set message/notext/nofacility/noidentification/noseverity
-$ append 'actual_err' 'actual'
-$ set message/ntext/facility/identification/severity
-$ endif
-$ define/nolog sys$output 'actual_org'
-$ define/nolog sys$error 'actual_err_org'
-$ h5dump 'P2
-$ deassign sys$output
-$ deassign sys$error
-$ if F$SEARCH(actual_err_org) .NES. ""
-$ then
-$ set message/notext/nofacility/noidentification/noseverity
-$ append 'actual_err_org' 'actual_org'
-$ set message/ntext/facility/identification/severity
-$ endif
-$ !
-$ ! Compare the results
-$ !
-$ diff/output=h5dump_temp/ignore=(spacing,trailing_spaces,blank_lines) 'actual_org' -
- 'actual'
-$ !
-$ ! Delete output file 'P3
-$ !
-$ del 'P3;*
-$ open/read temp_out h5dump_temp.dif
-$READ_DATA:
-$ read/end_of_file=end_read temp_out record1
-$ !
-$ ! Skip blank lines
-$ !
-$ if record1 .EQS. "" then goto READ_DATA
-$ !
-$ ! Find record with "Number" and exit the loop
-$ !
-$ len = F$LENGTH(record1)
-$ pos = F$LOCATE("Number", record1)
-$ !
-$ if pos .EQ. 0
-$ then
-$ err_code = F$EXTRACT(len-1,1,record1)
-$ goto END_READ
-$ endif
-$ !
-$ goto READ_DATA
-$
-$ !
-$END_READ:
-$ close temp_out
-$
-$ !
-$ ! Extract error code and format output line
-$ !
-$ len = F$LENGTH(record1)
-$ err_code = F$EXTRACT(len-1,1,record1)
-$ if err_code .eqs. "1"
-$ then
-$ result = "PASSED"
-$ line = F$FAO("!14AS !14AS !7AS !2AS !25AS !100AS", begin, P1, P2, -
- "-o", P3, result)
-$ else
-$ result = "*FAILED*"
-$ line = F$FAO("!14AS !14AS !7AS !2AS !25AS !99AS", begin, P1, P2, -
- "-o", P3, result)
-$ endif
-$ !
-$ ! Print test result
-$ !
-$ write sys$output line
-$ !
-$ ! Append the result to the log file
-$ !
-$ append h5dump_temp.dif h5dump.log
-$ !
-$ ! Delete temporary files
-$ !
-$! del *.out;*
-$! del *.org;*
-$! del *.dif;*
-$ !
-$ENDSUBROUTINE
-
diff --git a/vms/tools/h5jam/make.com b/vms/tools/h5jam/make.com
deleted file mode 100644
index d57b5e9..0000000
--- a/vms/tools/h5jam/make.com
+++ /dev/null
@@ -1,67 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make h5ls tool
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/include=zlib_dir"
-$ ccc := cc 'ccopt /include=([-.-.src], [-.lib])
-$ type sys$input
- Creating h5jam
-$!
-$ cobj= "h5jam, h5unjam, tellub, getub, h5jamgentest"
-
-$!
-$ ccc 'cobj
-$ type sys$input
- Creating tellub
-$ link tellub -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created tellub
-$ type sys$input
- Creating getub
-$ link getub -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created getub
-$!
-$!
-$ type sys$input
- Creating h5jamgentest
-$ link h5jamgentest, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5jamgentest
-$!
-$ type sys$input
- Creating h5jam
-$ link h5jam, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5jam
-$!
-$ type sys$input
- Creating h5junam
-$ link h5unjam, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5unjam
-$!
-$ exit
diff --git a/vms/tools/h5ls/check.com b/vms/tools/h5ls/check.com
deleted file mode 100644
index b44dedc..0000000
--- a/vms/tools/h5ls/check.com
+++ /dev/null
@@ -1,70 +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.
-$!#
-$!
-$! h5ls testing script
-$!
-$ define sys$output h5ls.out
-$ define sys$error h5ls.err
-$ h5ls :== $sys$sysusers:[pourmale.hdf5.tools.h5ls]h5ls.exe
-
-$ h5ls -w80 -h
-$ h5ls -w80 -help
-$ h5ls -w80 -?
-
-$! test simple command
-$ h5ls -w80 tall.h5
-$ h5ls -w80 -r -d tall.h5
-$ h5ls -w80 tgroup.h5
-
-$! test for displaying groups
-$ h5ls -w80 -r -g tgroup.h5
-
-$! test for displaying simple space datasets
-$ h5ls -w80 -r -d tdset.h5
-
-$! test for displaying soft links
-$ h5ls -w80 -r tslink.h5
-
-$! tests for hard links
-$ h5ls -w80 thlink.h5
-
-$! tests for compound data types
-$ h5ls -w80 -r -d tcompound.h5
-
-$!test for the nested compound type
-$ h5ls -w80 -r -d tnestedcomp.h5
-
-$! test for loop detection
-$ h5ls -w80 -r -d tloop.h5
-
-$! test for string
-$ h5ls -w80 -r -d tstr.h5
-
-$! test test file created from lib SAF team
-$ h5ls -w80 -r -d tsaf.h5
-
-$! test for variable length data types
-$ h5ls -w80 -r -d tvldtypes1.h5
-
-$! test for array data types
-$ h5ls -w80 -r -d tarray1.h5
-
-$! test for empty data
-$ h5ls -w80 -d tempty.h5
-
-$! test for all dataset types written to attributes
-$! enable -S for avoiding printing NATIVE types
-$ h5ls -w80 -v -S tattr2.h5
-
diff --git a/vms/tools/h5ls/check_h5ls.com b/vms/tools/h5ls/check_h5ls.com
deleted file mode 100644
index e155afa..0000000
--- a/vms/tools/h5ls/check_h5ls.com
+++ /dev/null
@@ -1,165 +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.
-$!#
-$!
-$ !
-$ ! This command file tests h5ls utility. The command file has to
-$ ! run in the [hdf5-top.tools.testfiles] directory.
-$ !
-$ type sys$input
-
-===================================
- Testing h5ls utiltity
-===================================
-
-$
-$ !
-$ ! Define h5ls symbol
-$ !
-$! set message/notext/nofacility/noidentification/noseverity
-$ current_dir = F$DIRECTRY()
-$ len = F$LENGTH(current_dir)
-$ temp = F$EXTRACT(0, len-10, current_dir)
-$ h5ls_dir = temp + "H5LS]"
-$ h5ls :== $sys$disk:'h5ls_dir'h5ls.exe
-$ !
-$ ! Define output for diff command that compares expected and actual
-$ ! outputs of h5ls
-$ !
-$ create h5ls.log
-$ !
-$ ! h5ls tests
-$ !
-$
-$ CALL TOOLTEST help-1.ls "-w80 -h"
-$ CALL TOOLTEST help-2.ls "-w80 -help"
-$ CALL TOOLTEST help-3.ls "-w80 -?"
-
-$! test simple command
-$ CALL TOOLTEST tall-1.ls "-w80 tall.h5"
-$ CALL TOOLTEST tall-2.ls "-w80 -r -d tall.h5"
-$ CALL TOOLTEST tgroup.ls "-w80 tgroup.h5"
-
-$! test for displaying groups
-$ CALL TOOLTEST tgroup-1.ls "-w80 -r -g tgroup.h5"
-
-$! test for displaying simple space datasets
-$ CALL TOOLTEST tdset-1.ls "-w80 -r -d tdset.h5"
-
-$! test for displaying soft links
-$ CALL TOOLTEST tslink-1.ls "-w80 -r tslink.h5"
-
-$! tests for hard links
-$ CALL TOOLTEST thlink-1.ls "-w80 thlink.h5"
-
-$! tests for compound data types
-$ CALL TOOLTEST tcomp-1.ls "-w80 -r -d tcompound.h5"
-
-$!test for the nested compound type
-$ CALL TOOLTEST tnestcomp-1.ls "-w80 -r -d tnestedcomp.h5"
-
-$! test for loop detection
-$ CALL TOOLTEST tloop-1.ls "-w80 -r -d tloop.h5"
-
-$! test for string
-$ CALL TOOLTEST tstr-1.ls "-w80 -r -d tstr.h5"
-
-$! test test file created from lib SAF team
-$ CALL TOOLTEST tsaf.ls "-w80 -r -d tsaf.h5"
-
-$! test for variable length data types
-$ CALL TOOLTEST tvldtypes1.ls "-w80 -r -d tvldtypes1.h5"
-
-$! test for array data types
-$ CALL TOOLTEST tarray1.ls "-w80 -r -d tarray1.h5"
-
-$! test for empty data
-$ CALL TOOLTEST tempty.ls "-w80 -d tempty.h5"
-
-$! test for all dataset types written to attributes
-$! enable -S for avoiding printing NATIVE types
-$! This test will report failure for line 311 of the tattr2.ls file
-$! contains
-$! Modified: XXXX-XX-XX XX:XX:XX XXX
-$! instead of
-$! Modified: 2004-07-06 19:36:17 CST
-$! UNIX shell script does replacement on the fly in the actual output
-$! file; I do not know what can I do on VMS EIP 07/27/06
-$ CALL TOOLTEST tattr2.ls "-w80 -v -"""S""" tattr2.h5"
-
-$
-$
-$TOOLTEST: SUBROUTINE
-$
-$ len = F$LENGTH(P1)
-$ base = F$EXTRACT(0,len-2,P1)
-$ actual = base + "h5lsout"
-$ actual_err = base + "h5lserr"
-$
-$ begin = "Testing h5ls "
-$ !
-$ ! Run the test and save output in the 'actual' file
-$ !
-$ define/nolog sys$output 'actual'
-$ define/nolog sys$error 'actual_err'
-$ write sys$output "#############################"
-$ write sys$output " output for 'h5ls ''P2''"
-$ write sys$output "#############################"
-$ ON ERROR THEN CONTINUE
-$ h5ls 'P2
-$ deassign sys$output
-$ deassign sys$error
-$ if F$SEARCH(actual_err) .NES. ""
-$ then
-$ set message/notext/nofacility/noidentification/noseverity
-$ append 'actual_err' 'actual'
-$ set message/text/facility/identification/severity
-$ endif
-$ !
-$ ! Compare the results
-$ !
-$ diff/output=h5ls_temp/ignore=(spacing,trailing_spaces,blank_lines) 'actual' 'P1'
-$ open/read temp_out h5ls_temp.dif
-$ read temp_out record1
-$ close temp_out
-$ !
-$ ! Extract error code and format output line
-$ !
-$ len = F$LENGTH(record1)
-$ err_code = F$EXTRACT(len-1,1,record1)
-$ if err_code .eqs. "0"
-$ then
-$ result = "PASSED"
-$ line = F$FAO("!15AS !50AS !70AS", begin, P2, result)
-$ else
-$ result = "*FAILED*"
-$ line = F$FAO("!15AS !49AS !69AS", begin, P2, result)
-$ endif
-$ !
-$ ! Print test result
-$ !
-$ write sys$output line
-$ !
-$ ! Append the result to the log file
-$ !
-$ append h5ls_temp.dif h5ls.log
-$ !
-$ ! Delete temporary files
-$ !
-$ if F$SEARCH("*.h5lserr;*") then del *.h5lserr;*
-$ if F$SEARCH("*.h5lsout;*") then del *.h5lsout;*
-$ if F$SEARCH("*.dif;*") then del *.dif;*
-$ !
-$ENDSUBROUTINE
-
diff --git a/vms/tools/h5ls/make.com b/vms/tools/h5ls/make.com
deleted file mode 100644
index 51d57c6..0000000
--- a/vms/tools/h5ls/make.com
+++ /dev/null
@@ -1,39 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make h5ls tool
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/include=zlib_dir"
-$ ccc := cc 'ccopt /include=([-.-.src], [-.lib])
-$ type sys$input
- Creating h5ls
-$!
-$ cobj= "h5ls.c "
-
-$!
-$ ccc 'cobj
-$ type sys$input
- Creating h5ls
-$ link h5ls, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5ls
-$!
-$ exit
diff --git a/vms/tools/h5repack/check_h5repack.com b/vms/tools/h5repack/check_h5repack.com
deleted file mode 100644
index 34c122c..0000000
--- a/vms/tools/h5repack/check_h5repack.com
+++ /dev/null
@@ -1,197 +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.
-$!#
-$!
-$ !
-$ ! This command file tests h5repack utility. The command file has to
-$ ! run in the [hdf5-top.tools.h5repack.testfiles] directory.
-$ !
-$ !
-$ type sys$input
-
-===================================
- Testing h5repack utiltity
-===================================
-
-$ ! Define h5repack and h5diff symbols
-$ !
-$! set message/notext/nofacility/noidentification/noseverity
-$ current_dir = F$DIRECTRY()
-$ len = F$LENGTH(current_dir)
-$ temp = F$EXTRACT(0, len-11, current_dir)
-$ temp1 = F$EXTRACT(0, len-19, current_dir)
-$ h5diff_dir = temp1 + "H5DIFF]"
-$ h5diff :== $sys$disk:'h5diff_dir'h5diff.exe
-$ h5repack_dir = temp + "]"
-$ h5repack :== $sys$disk:'h5repack_dir'h5repack.exe
-$ !
-$ !
-$ ! h5repack tests
-$ !
-$
-
-$!# copy files (these files have no filters)
-$ CALL TOOLTEST "" h5repack_fill.h5
-$ CALL TOOLTEST "" h5repack_objs.h5
-$ CALL TOOLTEST "" h5repack_attr.h5
-$ CALL TOOLTEST "" h5repack_hlink.h5
-$ CALL TOOLTEST "" h5repack_layout.h5
-$ CALL TOOLTEST "" h5repack_early.h5
-
-$! Check repacking file with committed datatypes in odd configurations
-$ CALL TOOLTEST "" h5repack_named_dtypes.h5
-$
-$! # use h5repack_layout.h5 to write some filters (this file has no filters)
-$
-$! # gzip with individual object
-$ CALL TOOLTEST "-f dset1:"""GZIP"""=1 -l dset1:"""CHUNK"""=20x10" h5repack_layout.h5
-$!
-$
-$! # gzip for all
-$ CALL TOOLTEST "-f """GZIP"""=1" h5repack_layout.h5
-$!
-$! # shuffle with individual object
-$ CALL TOOLTEST "-f dset2:"""SHUF""" -l dset2:"""CHUNK"""=20x10" h5repack_layout.h5
-$
-$!
-$!
-$! # shuffle for all
-$ CALL TOOLTEST "-f """SHUF"""" h5repack_layout.h5
-$!
-$! # fletcher32 with individual object
-$ CALL TOOLTEST "-f dset2:"""FLET""" -l dset2:"""CHUNK"""=20x10" h5repack_layout.h5
-$!
-$! # fletcher32 for all
-$ CALL TOOLTEST "-f """FLET"""" h5repack_layout.h5
-$
-$! ###########################################################
-$! # the following tests assume the input files have filters
-$! ###########################################################
-$!
-$! # deflate copy
-$ CALL TOOLTEST "" h5repack_deflate.h5
-$!
-$! # deflate remove
-$ CALL TOOLTEST "-f dset_deflate:"""NONE"""" h5repack_deflate.h5
-$!
-$! # shuffle copy
-$ CALL TOOLTEST "" h5repack_shuffle.h5
-$!
-$! # shuffle remove
-$ CALL TOOLTEST "-f dset_shuffle:"""NONE"""" h5repack_shuffle.h5
-$!
-$! # fletcher32 copy
-$ CALL TOOLTEST "" h5repack_fletcher.h5
-$!
-$! # fletcher32 remove
-$ CALL TOOLTEST "-f dset_fletcher32:"""NONE"""" h5repack_fletcher.h5
-$!
-$! # nbit copy
-$ CALL TOOLTEST "" h5repack_nbit.h5
-$!
-$! # nbit remove
-$ CALL TOOLTEST "-f dset_nbit:"""NONE"""" h5repack_nbit.h5
-$!
-$! # nbit add
-$ CALL TOOLTEST "-f dset_int31:"""NBIT"""" h5repack_nbit.h5
-$!
-$! # scaleoffset add
-$! CALL TOOLTEST "-f dset_none:"""S+O"""=31" h5repack_scaleoffset.h5
-$!
-$! # scaleoffset copy
-$! CALL TOOLTEST "" h5repack_scaleoffset.h5
-$!
-$! # scaleoffset remove
-$! CALL TOOLTEST "-f dset_scaleoffset:"""NONE"""" h5repack_scaleoffset.h5
-$!
-$! #limit
-$ CALL TOOLTEST "-f """GZIP"""=1 -m 1024" h5repack_layout.h5
-$!
-$!
-$!
-$! #########################################################
-$! # layout options (these files have no filters)
-$! #########################################################
-$!
-$ CALL TOOLTEST "-l dset2:"""CHUNK"""=20x10" h5repack_layout.h5
-$ CALL TOOLTEST "-l """CHUNK"""=20x10" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset2:"""CONTI"""" h5repack_layout.h5
-$ CALL TOOLTEST "-l """CONTI"""" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset2:"""COMPA"""" h5repack_layout.h5
-$ CALL TOOLTEST "-l """COMPA"""" h5repack_layout.h5
-$!
-$!
-$! ################################################################
-$! # layout conversions (file has no filters)
-$! ###############################################################
-$!
-$ CALL TOOLTEST "-l dset_compact:"""CONTI"""" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset_compact:"""CHUNK"""=2x5" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset_compact:"""COMPA"""" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset_contiguous:"""COMPA"""" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset_contiguous:"""CHUNK"""=3x6" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset_contiguous:"""CONTI"""" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset_chunk:"""COMPA"""" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset_chunk:"""CONTI"""" h5repack_layout.h5
-$ CALL TOOLTEST "-l dset_chunk:"""CHUNK"""=18x13" h5repack_layout.h5
-$!
-$!
-$!
-$TOOLTEST: SUBROUTINE
-
-$ len = F$LENGTH(P2)
-$ base = F$EXTRACT(0,len-3,P2)
-$ output_file = base + "_out.h5"
-$ output_err = base + ".h5repackerr"
-$ output_out = base + ".h5repackout"
-$
-$ begin = "Testing h5repack"
-$ !
-$ ! Run the test and save output in the 'actual' file
-$ !
-$ define/nolog sys$error 'output_err'
-$ define/nolog sys$output 'output_out'
-$
-$ ON ERROR THEN CONTINUE
-$ h5repack 'P1 'P2 'output_file'
-$ h5diff 'P2 'output_file'
-$ deassign sys$error
-$ deassign sys$output
-$ if F$SEARCH(output_err) .EQS. ""
-$ then
-$ result = "PASSED"
-$ line = F$FAO("!16AS !40AS !22AS !67AS", begin, P1, P2, result)
-$ else
-$ result = "*FAILED*"
-$ line = F$FAO("!16AS !40AS !22AS !66AS", begin, P1, P2, result)
-$ endif
-
-$ !
-$ ! Print test result
-$ !
-$ write sys$output line
-$ !
-$ !
-$ !
-$ ! Cleanup temporary files
-$ !
-$ if F$SEARCH(output_err) .NES. ""
-$ then
-$ del *.h5repackerr;*
-$ endif
-$ del *.h5repackout;*
-$ del *_out.h5;*
-$ENDSUBROUTINE
-
-
diff --git a/vms/tools/h5repack/make.com b/vms/tools/h5repack/make.com
deleted file mode 100644
index 0de0e2b..0000000
--- a/vms/tools/h5repack/make.com
+++ /dev/null
@@ -1,55 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make h5repack tool
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/include=zlib_dir"
-$ ccc := cc 'ccopt /include=([-.-.src], [-.lib], [-.-.test])
-$ type sys$input
- Creating h5repack ...
-$!
-$ cobj= " h5repack_main, h5repack, h5repack_copy, h5repack_refs," +-
- "h5repack_filters, h5repack_opttable, h5repack_parse, " +-
- "h5repack_verify, h5repacktst"
-
-$!
-$ ccc 'cobj
-$ link/exe=h5repack.exe -
- h5repack_main, h5repack, h5repack_copy, h5repack_refs, h5repack_filters, -
- h5repack_opttable, h5repack_parse, -
- h5repack_verify, -
- [-.lib]libh5tools.olb/lib, -
- [-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Finished h5repack
-
-$ type sys$input
- Creating h5repacktst ...
-$ link/exe=h5repacktst.exe -
- h5repacktst, -
- h5repack, h5repack_copy, h5repack_refs, h5repack_filters, -
- h5repack_opttable, h5repack_parse, -
- h5repack_verify, -
- [-.lib]libh5tools.olb/lib,[-.-.test]libh5test.olb/lib, -
- [-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Finished h5repacktst
-$!
-$ exit
diff --git a/vms/tools/h5stat/make.com b/vms/tools/h5stat/make.com
deleted file mode 100644
index a822aaa..0000000
--- a/vms/tools/h5stat/make.com
+++ /dev/null
@@ -1,39 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make h5stat tool
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/include=zlib_dir"
-$ ccc := cc 'ccopt /include=([-.-.src], [-.lib], [-.-.test])
-$ type sys$input
- Creating h5stat
-$!
-$ cobj= " h5stat "
-$!
-$ ccc 'cobj
-$ type sys$input
-$ link/exe=h5stat.exe -
- h5stat, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5stat
-$!
-$!
-$ exit
diff --git a/vms/tools/lib/make.com b/vms/tools/lib/make.com
deleted file mode 100644
index 8e9ff47..0000000
--- a/vms/tools/lib/make.com
+++ /dev/null
@@ -1,34 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make HDF5 tools library
-$!
-$! ccopt = "/float=ieee_float"
-$ ccc := cc 'ccopt /include=([-.-.src])
-$!
-$ type sys$input
- Creating HDF5 Tools library
-$!
-$ cobj="h5tools, h5tools_str, h5tools_utils, h5diff, h5diff_array, "+-
- "h5diff_attr, h5diff_dset, h5diff_util, h5trav,"+-
- "h5tools_filters, h5tools_ref, h5tools_type"
-$!
-$ ccc 'cobj
-$ library/create []libh5tools 'cobj
-$ type sys$input
- Created HDF5 tools library
-$!
-$ exit
diff --git a/vms/tools/misc/make.com b/vms/tools/misc/make.com
deleted file mode 100644
index ed2d061..0000000
--- a/vms/tools/misc/make.com
+++ /dev/null
@@ -1,90 +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.
-$!#
-$! Makefile for VMS systems.
-$!
-$! Make miscellaneous tools
-$!
-$! The next two lines should be uncommented only when building by hand in the
-$! current directory. Use build.com in the vms directory to build
-$! the distribution. Make sure that location of the zlib library is correct.
-$! define zlib_dir sys$sysusers:[pourmal.zlib-1_2_3]
-$! ccopt = "/float=ieee_float/define=H5_VMS/include=zlib_dir"
-$ ccc := cc 'ccopt /include=([-.-.src], [-.lib], [-.-.test])
-$ type sys$input
- Creating h5debug
-$!
-$ cobj= " h5debug "
-$!
-$ ccc 'cobj
-$ type sys$input
-$ link/exe=h5debug.exe -
- h5debug, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5debug
-$!
-$ type sys$input
- Creating h5mkgrp
-$!
-$ cobj= " h5mkgrp "
-$!
-$ ccc 'cobj
-$ type sys$input
-$ link/exe=h5mkgrp.exe -
- h5mkgrp, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5mkgrp
-$!
-$ type sys$input
- Creating h5repart
-$!
-$ cobj= " h5repart "
-$!
-$ ccc 'cobj
-$ type sys$input
-$ link/exe=h5repart.exe -
- h5repart, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5repart
-$!
-$ cobj= " h5repart_gentest "
-$!
-$ ccc 'cobj
-$ type sys$input
-$ link/exe=h5repart_gentest.exe -
- h5repart_gentest, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created h5repart_gentest
-$!
-$ type sys$input
- Creating repart_test
-$!
-$ cobj= " repart_test "
-$!
-$ ccc 'cobj
-$ type sys$input
-$ link/exe=repart_test.exe -
- repart_test, -
- [-.lib]libh5tools.olb/lib,[-.-.src]hdf5.olb/lib,zlib_dir:libz.olb/lib
-$ type sys$input
- Created repart_test
-$!
-$ type sys$input
- Done with misc tools compilation
-$!
-$ exit
diff --git a/vms/tools/testfiles/tattr-3.ddl b/vms/tools/testfiles/tattr-3.ddl
deleted file mode 100644
index 8907843..0000000
--- a/vms/tools/testfiles/tattr-3.ddl
+++ /dev/null
@@ -1,13 +0,0 @@
-
-#############################
-Expected output for 'h5dump --header -a /attr2 --attribute=/attr tattr.h5'
-#############################
-HDF5 "tattr.h5" {
-ATTRIBUTE "/attr2" {
- DATATYPE H5T_STD_I32BE
- DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
-}
-ATTRIBUTE "/attr" {
-}
-}
-h5dump error: unable to open attribute "/"
diff --git a/vms/tools/testfiles/tdset-2.ddl b/vms/tools/testfiles/tdset-2.ddl
deleted file mode 100644
index e6439ae..0000000
--- a/vms/tools/testfiles/tdset-2.ddl
+++ /dev/null
@@ -1,17 +0,0 @@
-
-#############################
-Expected output for 'h5dump -H -d dset1 -d /dset2 --dataset=dset3 tdset.h5'
-#############################
-HDF5 "tdset.h5" {
-DATASET "dset1" {
- DATATYPE H5T_STD_I32BE
- DATASPACE SIMPLE { ( 10, 20 ) / ( 10, 20 ) }
-}
-DATASET "/dset2" {
- DATATYPE H5T_IEEE_F64BE
- DATASPACE SIMPLE { ( 30, 20 ) / ( 30, 20 ) }
-}
-DATASET "dset3" {
-}
-}
-h5dump error: unable to open dataset "dset3"
diff --git a/vms/tools/testfiles/tgroup-2.ddl b/vms/tools/testfiles/tgroup-2.ddl
deleted file mode 100644
index 120ef2d..0000000
--- a/vms/tools/testfiles/tgroup-2.ddl
+++ /dev/null
@@ -1,47 +0,0 @@
-
-#############################
-Expected output for 'h5dump --group=/g2 --group / -g /y tgroup.h5'
-#############################
-HDF5 "tgroup.h5" {
-GROUP "/g2" {
- GROUP "g2.1" {
- GROUP "g2.1.1" {
- }
- GROUP "g2.1.2" {
- }
- GROUP "g2.1.3" {
- }
- }
-}
-GROUP "/" {
- GROUP "g1" {
- GROUP "g1.1" {
- }
- GROUP "g1.2" {
- }
- }
- GROUP "g2" {
- GROUP "g2.1" {
- GROUP "g2.1.1" {
- }
- GROUP "g2.1.2" {
- }
- GROUP "g2.1.3" {
- }
- }
- }
- GROUP "g3" {
- GROUP "g3.1" {
- }
- GROUP "g3.2" {
- }
- GROUP "g3.3" {
- }
- GROUP "g3.4" {
- }
- }
-}
-GROUP "/y" {
-}
-}
-h5dump error: unable to open group "/y"
diff --git a/vms/tools/testfiles/tperror.ddl b/vms/tools/testfiles/tperror.ddl
deleted file mode 100644
index 7275907..0000000
--- a/vms/tools/testfiles/tperror.ddl
+++ /dev/null
@@ -1,9 +0,0 @@
-
-#############################
-Expected output for 'h5dump -p -d bogus tfcontents1.h5'
-#############################
-HDF5 "tfcontents1.h5" {
-DATASET "bogus" {
-}
-}
-h5dump error: unable to open dataset "bogus"