summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xconfig/cmake/scripts/CTestScript.cmake44
-rwxr-xr-xconfig/cmake/scripts/HDF518config.cmake27
-rw-r--r--release_docs/RELEASE.txt124
3 files changed, 141 insertions, 54 deletions
diff --git a/config/cmake/scripts/CTestScript.cmake b/config/cmake/scripts/CTestScript.cmake
index a056cfb..75e61ee 100755
--- a/config/cmake/scripts/CTestScript.cmake
+++ b/config/cmake/scripts/CTestScript.cmake
@@ -41,7 +41,7 @@ else(NOT SITE_OS_NAME)
set(CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}")
endif()
if(SITE_BUILDNAME_SUFFIX)
- set(CTEST_BUILD_NAME ${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX})
+ set(CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}")
endif()
set(BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}")
endif(NOT SITE_OS_NAME)
@@ -98,15 +98,15 @@ else(CTEST_USE_TAR_SOURCE)
set(NEED_REPOSITORY_CHECKOUT 1)
endif()
- if(${NEED_REPOSITORY_CHECKOUT})
+ if(${NEED_REPOSITORY_CHECKOUT})
if(REPOSITORY_BRANCH)
- set(GITUpdateOptions "clone \"${REPOSITORY_URL}\" --branch \"${REPOSITORY_BRANCH}\" \"${CTEST_SOURCE_DIRECTORY}\" --recurse-submodules")
+ set(CTEST_GIT_options "clone \"${REPOSITORY_URL}\" --branch \"${REPOSITORY_BRANCH}\" --single-branch \"${CTEST_SOURCE_DIRECTORY}\" --recurse-submodules")
else()
- set(GITUpdateOptions "clone \"${REPOSITORY_URL}\" \"${CTEST_SOURCE_DIRECTORY}\" --recurse-submodules")
+ set(CTEST_GIT_options "clone \"${REPOSITORY_URL}\" \"${CTEST_SOURCE_DIRECTORY}\" --recurse-submodules")
endif()
- set(CTEST_CHECKOUT_COMMAND "${CTEST_GIT_COMMAND} ${GITUpdateOptions}")
+ set(CTEST_CHECKOUT_COMMAND "${CTEST_GIT_COMMAND} ${CTEST_GIT_options}")
else()
- set(GITUpdateOptions "pull")
+ set(CTEST_GIT_options "pull")
endif()
set(CTEST_UPDATE_COMMAND "${CTEST_GIT_COMMAND}")
else(CTEST_USE_GIT_SOURCE)
@@ -134,12 +134,12 @@ else(CTEST_USE_TAR_SOURCE)
endif()
if(${NEED_REPOSITORY_CHECKOUT})
set(CTEST_CHECKOUT_COMMAND
- "${CTEST_SVN_COMMAND} co ${REPOSITORY_URL} \"${CTEST_SOURCE_DIRECTORY}\" -r ${CTEST_REPO_VERSION}")
- else(${NEED_REPOSITORY_CHECKOUT})
+ "\"${CTEST_SVN_COMMAND}\" co ${REPOSITORY_URL} \"${CTEST_SOURCE_DIRECTORY}\" -r ${CTEST_REPO_VERSION}")
+ else()
if(CTEST_REPO_VERSION)
set(CTEST_SVN_UPDATE_OPTIONS "-r ${CTEST_REPO_VERSION}")
endif()
- endif(${NEED_REPOSITORY_CHECKOUT})
+ endif()
endif(CTEST_USE_GIT_SOURCE)
endif(LOCAL_UPDATE)
endif(CTEST_USE_TAR_SOURCE)
@@ -191,14 +191,14 @@ endforeach(req)
if(LOCAL_MEMCHECK_TEST)
find_program(CTEST_MEMORYCHECK_COMMAND NAMES valgrind)
set (CTEST_CONFIGURE_COMMAND
- "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/mccacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_BUILD_CONFIGURATION} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_SOURCE_DIRECTORY}\""
+ "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/mccacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_SOURCE_DIRECTORY}\""
)
else()
if(LOCAL_COVERAGE_TEST)
find_program(CTEST_COVERAGE_COMMAND NAMES gcov)
endif()
set (CTEST_CONFIGURE_COMMAND
- "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_BUILD_CONFIGURATION} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_SOURCE_DIRECTORY}\""
+ "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_SOURCE_DIRECTORY}\""
)
endif()
@@ -240,20 +240,20 @@ message(STATUS "Dashboard script configuration:\n${vars}\n")
configure_file(${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake)
ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}")
ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res)
- if(${res} LESS 0 OR ${res} GREATER 0)
- message(FATAL_ERROR "Failed configure: ${res}\n")
- endif()
if(LOCAL_SUBMIT)
ctest_submit (PARTS Update Configure Notes)
endif()
+ if(${res} LESS 0 OR ${res} GREATER 0)
+ file(APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Configure: ${res}\n")
+ endif()
ctest_build (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND RETURN_VALUE res NUMBER_ERRORS errval)
- if(${res} LESS 0 OR ${res} GREATER 0 OR ${errval} GREATER 0)
- message(FATAL_ERROR "Failed build: ${res} with Errors=${errval}\n")
- endif()
if(LOCAL_SUBMIT)
ctest_submit (PARTS Build)
endif()
+ if(${res} LESS 0 OR ${res} GREATER 0 OR ${errval} GREATER 0)
+ file(APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n")
+ endif()
if(NOT LOCAL_SKIP_TEST)
if(NOT LOCAL_MEMCHECK_TEST)
@@ -262,13 +262,13 @@ message(STATUS "Dashboard script configuration:\n${vars}\n")
ctest_submit (PARTS Test)
endif()
if(${res} LESS 0 OR ${res} GREATER 0)
- message(FATAL_ERROR "Failed tests: ${res}\n")
+ file(APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n")
endif()
else()
ctest_memcheck (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args})
if(LOCAL_SUBMIT)
ctest_submit (PARTS MemCheck)
- endif(LOCAL_SUBMIT)
+ endif()
endif()
if(LOCAL_COVERAGE_TEST)
ctest_coverage (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND)
@@ -278,7 +278,7 @@ message(STATUS "Dashboard script configuration:\n${vars}\n")
endif()
endif(NOT LOCAL_SKIP_TEST)
- if(NOT LOCAL_MEMCHECK_TEST AND NOT LOCAL_NO_PACKAGE)
+ if(NOT LOCAL_MEMCHECK_TEST AND NOT LOCAL_NO_PACKAGE AND NOT LOCAL_SKIP_BUILD)
##-----------------------------------------------
## Package the product
##-----------------------------------------------
@@ -290,7 +290,7 @@ message(STATUS "Dashboard script configuration:\n${vars}\n")
)
file(WRITE ${CTEST_BINARY_DIRECTORY}/cpack.log "${cpackLog.err}" "${cpackLog}")
if(cpackResult GREATER 0)
- message (FATAL_ERROR "Failed packaging: ${cpackResult}\n")
+ file(APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed packaging: ${cpackResult}:${cpackLog.err} \n")
endif()
- endif(NOT LOCAL_MEMCHECK_TEST AND NOT LOCAL_NO_PACKAGE)
+ endif()
#-----------------------------------------------------------------------------
diff --git a/config/cmake/scripts/HDF518config.cmake b/config/cmake/scripts/HDF518config.cmake
index 5cc73cf..55e4667 100755
--- a/config/cmake/scripts/HDF518config.cmake
+++ b/config/cmake/scripts/HDF518config.cmake
@@ -19,21 +19,21 @@ cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
# VS201264 * Visual Studio 11 2012 Win64
#
# INSTALLDIR - root folder where hdf5 is installed
-# CTEST_BUILD_CONFIGURATION - Release, Debug, etc
+# CTEST_CONFIGURATION_TYPE - Release, Debug, etc
# CTEST_SOURCE_NAME - source folder
# STATIC_LIBRARIES - Build/use static libraries
# FORTRAN_LIBRARIES - Build/use fortran libraries
# NO_MAC_FORTRAN - Yes to be SHARED on a Mac
##############################################################################
-set(CTEST_SOURCE_VERSION 1.8.16)
+set(CTEST_SOURCE_VERSION 1.8.18)
set(CTEST_SOURCE_VERSEXT "")
##############################################################################
# handle input parameters to script.
#BUILD_GENERATOR - which CMake generator to use, required
#INSTALLDIR - HDF5-1.8 root folder
-#CTEST_BUILD_CONFIGURATION - Release, Debug, RelWithDebInfo
+#CTEST_CONFIGURATION_TYPE - Release, Debug, RelWithDebInfo
#CTEST_SOURCE_NAME - name of source folder; HDF5-1.8.16
#STATIC_LIBRARIES - Default is YES
#FORTRAN_LIBRARIES - Default is NO
@@ -52,7 +52,7 @@ endif()
# build generator must be defined
if(NOT DEFINED BUILD_GENERATOR)
- message(FATAL_ERROR "BUILD_GENERATOR must be defined - Unix, VS2013, VS201364, VS2012, or VS201264")
+ message(FATAL_ERROR "BUILD_GENERATOR must be defined - Unix, VS2015, VS201564, VS2013, VS201364, VS2012, or VS201264")
else()
if(${BUILD_GENERATOR} STREQUAL "Unix")
set(CTEST_CMAKE_GENERATOR "Unix Makefiles")
@@ -69,28 +69,32 @@ else()
elseif(${BUILD_GENERATOR} STREQUAL "VS201264")
set(CTEST_CMAKE_GENERATOR "Visual Studio 11 2012 Win64")
else()
- message(FATAL_ERROR "Invalid BUILD_GENERATOR must be - Unix, VS2013, VS201364, VS2012, or VS201264")
+ message(FATAL_ERROR "Invalid BUILD_GENERATOR must be - Unix, VS2015, VS201564, VS2013, VS201364, VS2012, or VS201264")
endif()
endif()
if(NOT DEFINED INSTALLDIR)
if(WIN32)
- set(INSTALLDIR "C:\\Program\ Files\\myhdf5")
+ set(INSTALLDIR "C:\\Program\ Files\\HDF_Group\\HDF5\\${CTEST_SOURCE_VERSION}")
else()
- set(INSTALLDIR "/usr/local/myhdf5")
+ set(INSTALLDIR "${CTEST_SCRIPT_DIRECTORY}/HDF_Group/HDF5/${CTEST_SOURCE_VERSION}")
endif()
endif()
-if(NOT DEFINED CTEST_BUILD_CONFIGURATION)
- set(CTEST_BUILD_CONFIGURATION "Release")
+if(NOT DEFINED CTEST_CONFIGURATION_TYPE)
+ set(CTEST_CONFIGURATION_TYPE "Release")
endif()
if(NOT DEFINED CTEST_SOURCE_NAME)
set(CTEST_SOURCE_NAME "hdf5-${CTEST_SOURCE_VERSION}${CTEST_SOURCE_VERSEXT}")
endif()
if(NOT DEFINED STATIC_LIBRARIES)
set(STATICLIBRARIES "YES")
+else()
+ set(STATICLIBRARIES "NO")
endif()
if(NOT DEFINED FORTRAN_LIBRARIES)
set(FORTRANLIBRARIES "NO")
+else()
+ set(FORTRANLIBRARIES "YES")
endif()
set(CTEST_BINARY_NAME "build")
@@ -162,7 +166,7 @@ set(MODEL "Experimental")
#set(LOCAL_NO_PACKAGE "TRUE")
##### Following controls source update #####
#set(LOCAL_UPDATE "TRUE")
-set(REPOSITORY_URL "http://svn.hdfgroup.uiuc.edu/hdf5/branches/hdf5_1_8_16")
+set(REPOSITORY_URL "http://svn.hdfgroup.uiuc.edu/hdf5/branches/hdf5_1_8_18")
#uncomment to use a compressed source file: *.tar on linux or mac *.zip on windows
#set(CTEST_USE_TAR_SOURCE "${CTEST_SOURCE_VERSION}")
###################################################################
@@ -214,7 +218,8 @@ endif()
set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_PACKAGE_EXTLIBS:BOOL=ON")
### change install prefix
-set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DCMAKE_INSTALL_PREFIX:PATH=${INSTALLDIR}")
+set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DCMAKE_INSTALL_PREFIX:PATH='${INSTALLDIR}'")
+set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DCTEST_CONFIGURATION_TYPE:STRING=$ENV{CMAKE_CONFIG_TYPE}")
###################################################################
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt
index 6a33c90..b67c77b 100644
--- a/release_docs/RELEASE.txt
+++ b/release_docs/RELEASE.txt
@@ -5,8 +5,8 @@ INTRODUCTION
============
This document describes the differences between HDF5-1.8.17 and
-HDF5-1.8.18-*, and contains information on the platforms tested and
-known problems in HDF5-1.8.18-*.
+HDF5-1.8.18, and contains information on the platforms tested and
+known problems in HDF5-1.8.18.
For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
@@ -33,7 +33,7 @@ All new and modified APIs are listed in detail in the "HDF5 Software Changes
from Release to Release" document, in the section "Release 1.8.18 (current
release) versus Release 1.8.17
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
+ http://www.hdfgroup.org/HDF5/doc1.8/ADGuide/Changes.html
If you have any questions or comments, please send them to the HDF Help Desk:
@@ -57,23 +57,30 @@ New Features
Configuration
-------------
- - CMake
- Added NAMESPACE hdf5:: to package configuration files
- - CMake: change CTEST_BUILD_CONFIGURATION to CTEST_CONFIGURATION_TYPE, which is
- recommended by CMake documentation.
- HDFFV-9971 (ADB 2016/8/22)
+ - CMake: Added NAMESPACE hdf5:: to package configuration files to allow
+ projects using installed HDF5 binaries built with CMake to link with
+ them without specifying the HDF5 library location via IMPORTED_LOCATION.
+
+ (ABD, 2016/10/17, HDFFV-10003)
+
+
+ - CMake: Changed the CTEST_BUILD_CONFIGURATION option to
+ CTEST_CONFIGURATION_TYPE as recommended by the CMake documentation.
+
+ (ABD, 2016/10/17, HDFFV-9971)
Library
-------
- -None
+ - None
Parallel Library
----------------
- None
+
Tools
-----
- None
@@ -81,9 +88,6 @@ New Features
High-Level APIs
---------------
-
- C Packet Table API
- ------------------
- None
@@ -107,29 +111,95 @@ Bug Fixes since HDF5-1.8.17
Configuration
-------------
- - None
+
+ - Fixed a problem preventing HDF5 to be built on 32-bit CYGWIN by
+ condensing cygwin configuration files into a single file and
+ removing outdated compiler settings.
+
+ (ABD, 2016/07/12, HDFFV-9946)
+
+
+ - CMake: Fixed a command length overflow error by converting custom
+ commands inside CMakeTest.cmake files into regular dependencies and
+ targets.
+
+ (ABD, 2016/07/12, HDFFV-9939)
+
+
+ - CMake: Fixed a timeout error that would occasionally occur when running
+ the virtual file driver tests simultaneously due to test directory and file
+ name collisions.
+
+ (ABD, 2016/09/19, HDFFV-9431)
Library
-------
- - Fixed a bug that could occur when using H5Pset_alignment.
+
+ - Fixed a memory leak that would occur when the library allocated memory
+ for an external file prefix (H5Pset_efile_prefix) and failed to free it.
+
+ (DER, 2016/04/29)
+
+
+ - Fixed an error that would occur when calling H5Adelete on an attribute
+ which is attached to an externally linked object in the target file and
+ whose datatype is a committed datatype in the main file.
+
+ (VC, 2016-07-04, HDFFV-9940)
+
+
+ - Fixed a problem where a plugin compiled into a DLL in the default plugin
+ directory could not be found by the HDF5 library at runtime on Windows
+ when the HDF5_PLUGIN_PATH environment variable was not set.
+
+ (ABD, 2016/08/01, HDFFV-9706)
+
+
+ - Fixed an issue where H5Pset_alignment could result in misaligned blocks
+ with some input combinations, causing an assertion failure in debug mode.
(NAF, 2016/08/11, HDFFV-9948)
- - Fixed a memory bug that could occur when a message was improperly marked
- as sharable on disk.
- (NAF, 2016/07/01, HDFFV-9950)
+ - A number of issues were fixed when reading/writing from/to corrupted
+ files to ensure that the library fails gracefully in these cases:
+
+ * Writing to a corrupted file that has an object message which is
+ incorrectly marked as sharable on disk results in a buffer overflow /
+ invalid write instead of a clean error message.
+
+ * Decoding data from a corrupted file with a dataset encoded with the
+ H5Z_NBIT decoding can result in a code execution vulnerability under
+ the context of the application using the HDF5 library.
+
+ * When decoding an array datatype from a corrupted file, the HDF5 library
+ fails to return an error in production if the number of dimensions
+ decoded is greater than the maximum rank.
+
+ * When decoding an "old style" array datatype from a corrupted file, the
+ HDF5 library fails to return an error in production if the number of
+ dimensions decoded is greater than the maximum rank.
+
+ (NAF, 2016/10/06, HDFFV-9950, HDFFV-9951, HDFFV-9992, HDFFV-9993)
+
+
+ - Fixed an error that would occur when copying an object with an attribute
+ which is a compound datatype consisting of a variable length string.
+
+ (VC, 2016-10-17, HDFFV-7991)
Parallel Library
----------------
+
- Fixed a bug that could occur when allocating a chunked dataset in parallel
with an alignment set and an alignment threshold greater than the chunk
size but less than or equal to the raw data aggregator size.
(NAF, 2016/08/11, HDFFV-9969)
+
Performance
-------------
- None
@@ -137,6 +207,15 @@ Bug Fixes since HDF5-1.8.17
Tools
-----
+
+ - Fixed an error in the compiler wrapper scripts (h5cc, h5fc, et al.)
+ in which they would erroneously drop the file argument specified via
+ the -o flag when the -o flag was specified before the -c flag on the
+ command line, resulting in a failure to compile.
+
+ (LRK, 2016/06/08, HDFFV-9938, HDFFV-9530)
+
+
- h5repack User Defined (UD) filter parameters were not parsed correctly.
The UD filter parameters were not being parsed correctly. Reworked coding
@@ -147,6 +226,7 @@ Bug Fixes since HDF5-1.8.17
Fortran API
-----------
+
- Fortran library fails to compile and fails tests with NAG compiler.
* Removed the non-standard assumption that KIND=SIZEOF, in the HDF5
@@ -158,6 +238,7 @@ Bug Fixes since HDF5-1.8.17
(MSB, 2016/9/22, HDFFV-9973)
+
- Fortran segfaults for F03 tests with NAG compiler
* Removed INTENT(OUT) from 'fillvalue' in F2003 interface
@@ -168,18 +249,18 @@ Bug Fixes since HDF5-1.8.17
C++ API
-------
- - The macros H5_NO_NAMESPACE is deprecated from the HDF5 C++ API library.
+
+ - The macro H5_NO_NAMESPACE is deprecated from the HDF5 C++ API library.
In future releases, the macros H5_NO_STD and OLD_HEADER_FILENAME may
also be removed.
+
(BMR, 2016/10/27, HDFFV-9532)
High-Level APIs:
---------------
- Packet Table APIs:
- ------------------
- - The high-level API Packet Table (PT) did not write data correctly when
+ - The high-level Packet Table (PT) API did not write data correctly when
the datatype is a compound type that has string type as one of the
members. This problem started in 1.8.15, after the fix of HDFFV-9042
was applied, which caused the Packet Table to use native type to access
@@ -191,6 +272,7 @@ Bug Fixes since HDF5-1.8.17
data, then the application will request that. However, the Packet Table
doesn't provide a way to specify memory datatype in this release.
Please refer to the Known Problems section for a work-around.
+
(BMR, 2016/10/27, HDFFV-9758)