diff options
author | Dana Robinson <derobins@hdfgroup.org> | 2014-04-04 20:51:30 (GMT) |
---|---|---|
committer | Dana Robinson <derobins@hdfgroup.org> | 2014-04-04 20:51:30 (GMT) |
commit | b17ef126a75779f00ee4fef70a2b590b2c19fb4e (patch) | |
tree | 846887128b92979fd6e1c3cd84bb6a5c445e1068 /CMakeLists.txt | |
parent | 79a891c2417859de411a36e25203499f1f0d4280 (diff) | |
download | hdf5-b17ef126a75779f00ee4fef70a2b590b2c19fb4e.zip hdf5-b17ef126a75779f00ee4fef70a2b590b2c19fb4e.tar.gz hdf5-b17ef126a75779f00ee4fef70a2b590b2c19fb4e.tar.bz2 |
[svn-r24961] Updates to Win32 thread-local storage cleanup when the thread-safe library is built on Windows. Previously, thread-local storage was not cleaned up, causing resource leaks.
Fixes HDFFV-8518, HDFFV-8699
As a part of these changes, the thread-safe + static library options are declared unsupported since the solution relies on DllMain. A solution for the static library is probably doable, but requires much more complicated surgery and has been deferred to HDF5 1.8.14.
Tested on:
64-bit Windows 7 using VS 2012 (changes only affect Windows)
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index efa9ba6..106c59c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -730,14 +730,17 @@ if (WIN32) option (HDF5_ENABLE_THREADSAFE "Enable thread-safety" OFF) if (HDF5_ENABLE_THREADSAFE) # check for unsupported options + if (H5_BUILT_AS_STATIC_LIB) + message (FATAL_ERROR " **** thread-safety option not supported with static library **** ") + endif (H5_BUILT_AS_STATIC_LIB) if (HDF5_ENABLE_PARALLEL) - message (FATAL_ERROR " **** parallel and thread-safety options are mutually exclusive **** ") + message (FATAL_ERROR " **** parallel and thread-safety options are not supported **** ") endif (HDF5_ENABLE_PARALLEL) if (HDF5_BUILD_FORTRAN) - message (FATAL_ERROR " **** Fortran and thread-safety options are mutually exclusive **** ") + message (FATAL_ERROR " **** Fortran and thread-safety options are not supported **** ") endif (HDF5_BUILD_FORTRAN) if (HDF5_BUILD_CPP_LIB) - message (FATAL_ERROR " **** C++ and thread-safety options are mutually exclusive **** ") + message (FATAL_ERROR " **** C++ and thread-safety options are not supported **** ") endif (HDF5_BUILD_CPP_LIB) set (H5_HAVE_THREADSAFE 1) if (H5_HAVE_IOEO) |