Merge pull request #2048 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'efe234c832581d16d3da41fe71b50ef71fd44acc': Minor correction Update list of tested platforms Add VS2019 support
This commit is contained in:
@@ -119,8 +119,12 @@ set(CTEST_CONFIGURE_TOOLSET "")
|
||||
if(CMAKE_GENERATOR_TOOLSET)
|
||||
set(CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}")
|
||||
endif()
|
||||
set(CTEST_CONFIGURE_ARCHITECTURE "")
|
||||
if(CMAKE_GENERATOR_ARCHITECTURE)
|
||||
set(CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}")
|
||||
endif()
|
||||
set (CTEST_CONFIGURE_COMMAND
|
||||
"${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_CONFIGURE_TOOLSET}\" \"${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_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\""
|
||||
)
|
||||
#-----------------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -20,6 +20,9 @@ set(CTEST_CMAKE_GENERATOR "@CMAKE_GENERATOR@")
|
||||
if("@CMAKE_GENERATOR_TOOLSET@")
|
||||
set(CMAKE_GENERATOR_TOOLSET "@CMAKE_GENERATOR_TOOLSET@")
|
||||
endif()
|
||||
if("@CMAKE_GENERATOR_ARCHITECTURE@")
|
||||
set(CMAKE_GENERATOR_ARCHITECTURE "@CMAKE_GENERATOR_ARCHITECTURE@")
|
||||
endif()
|
||||
set(CTEST_DASHBOARD_ROOT ${CTEST_SCRIPT_DIRECTORY})
|
||||
|
||||
# handle input parameters to script.
|
||||
|
||||
@@ -46,6 +46,7 @@ set (${HDF5_PACKAGE_NAME}_BUILD_SHARED_LIBS @H5_ENABLE_SHARED_LIB@)
|
||||
set (${HDF5_PACKAGE_NAME}_BUILD_STATIC_LIBS @H5_ENABLE_STATIC_LIB@)
|
||||
set (${HDF5_PACKAGE_NAME}_PACKAGE_EXTLIBS @HDF5_PACKAGE_EXTLIBS@)
|
||||
set (${HDF5_PACKAGE_NAME}_EXPORT_LIBRARIES @HDF5_LIBRARIES_TO_EXPORT@)
|
||||
set (${HDF5_PACKAGE_NAME}_ARCHITECTURE "@CMAKE_GENERATOR_ARCHITECTURE@")
|
||||
set (${HDF5_PACKAGE_NAME}_TOOLSET "@CMAKE_GENERATOR_TOOLSET@")
|
||||
set (${HDF5_PACKAGE_NAME}_DEFAULT_API_VERSION "@DEFAULT_API_VERSION@")
|
||||
set (${HDF5_PACKAGE_NAME}_PARALLEL_FILTERED_WRITES "@PARALLEL_FILTERED_WRITES@")
|
||||
|
||||
@@ -195,20 +195,28 @@ if (CMAKE_GENERATOR_TOOLSET)
|
||||
else ()
|
||||
set (CTEST_CONFIGURE_TOOLSET "")
|
||||
endif()
|
||||
if (CMAKE_GENERATOR_ARCHITECTURE)
|
||||
set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}")
|
||||
else ()
|
||||
set (CTEST_CONFIGURE_ARCHITECTURE "")
|
||||
endif()
|
||||
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_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${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_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${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_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${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_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\""
|
||||
)
|
||||
endif ()
|
||||
|
||||
set(CTEST_USE_LAUNCHERS 1)
|
||||
set(ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
## -- set output to english
|
||||
set ($ENV{LC_MESSAGES} "en_EN")
|
||||
|
||||
@@ -22,6 +22,8 @@ cmake_minimum_required (VERSION 3.10)
|
||||
# where valid options for OPTION are:
|
||||
# BUILD_GENERATOR - The cmake build generator:
|
||||
# Unix * Unix Makefiles
|
||||
# VS2019 * Visual Studio 16 2019
|
||||
# VS201964 * Visual Studio 16 2019
|
||||
# VS2017 * Visual Studio 15 2017
|
||||
# VS201764 * Visual Studio 15 2017 Win64
|
||||
# VS2015 * Visual Studio 14 2015
|
||||
@@ -106,8 +108,20 @@ if (NOT DEFINED HPC)
|
||||
endif ()
|
||||
if (WIN32 AND NOT MINGW)
|
||||
set (SITE_OS_NAME "Windows")
|
||||
set (SITE_OS_VERSION "WIN7")
|
||||
if (BUILD_GENERATOR STREQUAL "VS201764")
|
||||
set (SITE_OS_VERSION "WIN10")
|
||||
if (BUILD_GENERATOR STREQUAL "VS201964")
|
||||
set (CTEST_CMAKE_GENERATOR "Visual Studio 16 2019")
|
||||
set (CMAKE_GENERATOR_ARCHITECTURE "x64")
|
||||
set (SITE_OS_BITS "64")
|
||||
set (SITE_COMPILER_NAME "vs2019")
|
||||
set (SITE_COMPILER_VERSION "16")
|
||||
elseif (BUILD_GENERATOR STREQUAL "VS2019")
|
||||
set (CTEST_CMAKE_GENERATOR "Visual Studio 16 2019")
|
||||
set (CMAKE_GENERATOR_ARCHITECTURE "Win32")
|
||||
set (SITE_OS_BITS "32")
|
||||
set (SITE_COMPILER_NAME "vs2019")
|
||||
set (SITE_COMPILER_VERSION "16")
|
||||
elseif (BUILD_GENERATOR STREQUAL "VS201764")
|
||||
set (CTEST_CMAKE_GENERATOR "Visual Studio 15 2017 Win64")
|
||||
set (SITE_OS_BITS "64")
|
||||
set (SITE_COMPILER_NAME "vs2017")
|
||||
|
||||
@@ -261,6 +261,10 @@ macro (HDF_README_PROPERTIES target_fortran)
|
||||
set (BINARY_PLATFORM "${BINARY_PLATFORM} Intel")
|
||||
if (${CMAKE_C_COMPILER_VERSION} MATCHES "^17.*")
|
||||
set (BINARY_PLATFORM "${BINARY_PLATFORM}, using Intel 17")
|
||||
elseif (${CMAKE_C_COMPILER_VERSION} MATCHES "^18.*")
|
||||
set (BINARY_PLATFORM "${BINARY_PLATFORM}, using Intel 18")
|
||||
elseif (${CMAKE_C_COMPILER_VERSION} MATCHES "^19.*")
|
||||
set (BINARY_PLATFORM "${BINARY_PLATFORM}, using Intel 19")
|
||||
else ()
|
||||
set (BINARY_PLATFORM "${BINARY_PLATFORM}, using Intel ${CMAKE_C_COMPILER_VERSION}")
|
||||
endif ()
|
||||
@@ -277,8 +281,10 @@ macro (HDF_README_PROPERTIES target_fortran)
|
||||
elseif (${CMAKE_C_COMPILER_VERSION} MATCHES "^19.*")
|
||||
if (${CMAKE_C_COMPILER_VERSION} MATCHES "^19.0.*")
|
||||
set (BINARY_PLATFORM "${BINARY_PLATFORM}, using VISUAL STUDIO 2015")
|
||||
else ()
|
||||
elseif (${CMAKE_C_COMPILER_VERSION} MATCHES "^19.16.*")
|
||||
set (BINARY_PLATFORM "${BINARY_PLATFORM}, using VISUAL STUDIO 2017")
|
||||
else () #19.23
|
||||
set (BINARY_PLATFORM "${BINARY_PLATFORM}, using VISUAL STUDIO 2019")
|
||||
endif ()
|
||||
else ()
|
||||
set (BINARY_PLATFORM "${BINARY_PLATFORM}, using VISUAL STUDIO ${CMAKE_C_COMPILER_VERSION}")
|
||||
|
||||
@@ -192,7 +192,7 @@ CHECK_FORTRAN_FEATURE(iso_c_binding
|
||||
#-----------------------------------------------------------------------------
|
||||
if (CMAKE_Fortran_COMPILER MATCHES ifort)
|
||||
if (WIN32 AND NOT MINGW)
|
||||
set (CMAKE_Fortran_FLAGS_DEBUG "/debug:full /dbglibs " CACHE "flags" STRING FORCE)
|
||||
set (CMAKE_EXE_LINKER_FLAGS_DEBUG "/DEBUG" CACHE "flags" STRING FORCE)
|
||||
set (CMAKE_Fortran_FLAGS_DEBUG "/debug:full /dbglibs " CACHE STRING "flags" FORCE)
|
||||
set (CMAKE_EXE_LINKER_FLAGS_DEBUG "/DEBUG" CACHE STRING "flags" FORCE)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
@@ -13,8 +13,8 @@ find_program(
|
||||
DOC "Path to clang-tidy executable"
|
||||
)
|
||||
|
||||
set(CMAKE_C_CLANG_TIDY "${CLANG_TIDY_EXE}" -checks=*,clang-analyzer-*)
|
||||
set(CMAKE_CXX_CLANG_TIDY "${CLANG_TIDY_EXE}" -checks=*,clang-analyzer-*)
|
||||
set(CMAKE_C_CLANG_TIDY "${CLANG_TIDY_EXE}" -checks=*,clang-analyzer-*,-clang-analyzer-cplusplus*,-readability-*,-google*)
|
||||
set(CMAKE_CXX_CLANG_TIDY "${CLANG_TIDY_EXE}" -checks=*,clang-analyzer-*,-clang-analyzer-cplusplus*,-readability-*,-google*)
|
||||
|
||||
#find_program(
|
||||
# CLANG_FORMAT_EXE
|
||||
|
||||
@@ -31,7 +31,8 @@ Obtaining HDF5 source code
|
||||
CMake version
|
||||
1. We suggest you obtain the latest CMake from the Kitware web site.
|
||||
The HDF5 1.10."X" product requires a minimum CMake version 3.10,
|
||||
where "X" is the current HDF5 release version.
|
||||
where "X" is the current HDF5 release version. If you are using
|
||||
VS2019, the minimum version is 3.15.
|
||||
|
||||
Note:
|
||||
To change the install prefix from the platform defaults initialize
|
||||
@@ -90,6 +91,10 @@ To build HDF5 with the SZIP and ZLIB external libraries you will need to:
|
||||
5. From the "myhdfstuff" directory execute the CTest Script with the
|
||||
following options:
|
||||
|
||||
On 32-bit Windows with Visual Studio 2019, execute:
|
||||
ctest -S HDF5config.cmake,BUILD_GENERATOR=VS2019 -C Release -VV -O hdf5.log
|
||||
On 64-bit Windows with Visual Studio 2019, execute:
|
||||
ctest -S HDF5config.cmake,BUILD_GENERATOR=VS201964 -C Release -VV -O hdf5.log
|
||||
On 32-bit Windows with Visual Studio 2017, execute:
|
||||
ctest -S HDF5config.cmake,BUILD_GENERATOR=VS2017 -C Release -VV -O hdf5.log
|
||||
On 64-bit Windows with Visual Studio 2017, execute:
|
||||
@@ -439,12 +444,11 @@ These five steps are described in detail below.
|
||||
* MinGW Makefiles
|
||||
* NMake Makefiles
|
||||
* Unix Makefiles
|
||||
* Visual Studio 11 2012
|
||||
* Visual Studio 11 2012 Win64
|
||||
* Visual Studio 12 2013
|
||||
* Visual Studio 12 2013 Win64
|
||||
* Visual Studio 14 2015
|
||||
* Visual Studio 14 2015 Win64
|
||||
* Visual Studio 15 2017
|
||||
* Visual Studio 15 2017 Win64
|
||||
* Visual Studio 16 2019
|
||||
|
||||
<options> is:
|
||||
* SZIP_INCLUDE_DIR:PATH=<path to szip includes directory>
|
||||
|
||||
@@ -48,6 +48,14 @@ New Features
|
||||
|
||||
Configuration:
|
||||
-------------
|
||||
- Update CMake for VS2019 support
|
||||
|
||||
CMake added support for VS2019 in version 3.15. Changes to the CMake
|
||||
generator setting required changes to scripts. Also updated version
|
||||
references in CMake files as necessary.
|
||||
|
||||
(ADB - 2019/11/18, HDFFV-10962)
|
||||
|
||||
- Update CMake tests to use FIXTURES
|
||||
|
||||
CMake test fixtures allow setup/cleanup tests and other dependency
|
||||
@@ -991,17 +999,16 @@ Supported Platforms
|
||||
(emu) Sun Fortran 95 8.6 SunOS_sparc
|
||||
Sun C++ 5.12 SunOS_sparc
|
||||
|
||||
Windows 7 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
|
||||
Windows 7 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
|
||||
|
||||
Windows 7 x64 Visual Studio 2013
|
||||
Visual Studio 2015 w/ Intel Fortran 16 (cmake)
|
||||
Visual Studio 2015 w/ Intel C, Fortran 2018 (cmake)
|
||||
Windows 7 x64 Visual Studio 2015 w/ Intel C, Fortran 2018 (cmake)
|
||||
Visual Studio 2015 w/ MSMPI 8 (cmake)
|
||||
|
||||
Windows 10 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
|
||||
|
||||
Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
|
||||
Visual Studio 2017 w/ Intel Fortran 18 (cmake)
|
||||
Visual Studio 2017 w/ Intel Fortran 19 (cmake)
|
||||
Visual Studio 2019 w/ Intel Fortran 19 (cmake)
|
||||
|
||||
Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.1 from Xcode 7.0
|
||||
64-bit gfortran GNU Fortran (GCC) 4.9.2
|
||||
@@ -1109,24 +1116,10 @@ The following platforms are not supported but have been tested for this release.
|
||||
#1 SMP ppc64 GNU/Linux IBM XL C/C++ for Linux, V13.1
|
||||
(ostrich) and IBM XL Fortran for Linux, V15.1
|
||||
|
||||
Debian 8.4 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1 x86_64 GNU/Linux
|
||||
gcc, g++ (Debian 4.9.2-10) 4.9.2
|
||||
GNU Fortran (Debian 4.9.2-10) 4.9.2
|
||||
(cmake and autotools)
|
||||
|
||||
Fedora 24 4.7.2-201.fc24.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
|
||||
gcc, g++ (GCC) 6.1.1 20160621
|
||||
(Red Hat 6.1.1-3)
|
||||
GNU Fortran (GCC) 6.1.1 20160621
|
||||
(Red Hat 6.1.1-3)
|
||||
(cmake and autotools)
|
||||
|
||||
Ubuntu 16.04.1 4.4.0-38-generic #57-Ubuntu SMP x86_64 GNU/Linux
|
||||
gcc, g++ (Ubuntu 5.4.0-6ubuntu1~16.04.2)
|
||||
5.4.0 20160609
|
||||
GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2)
|
||||
5.4.0 20160609
|
||||
(cmake and autotools)
|
||||
Fedora30 5.3.11-200.fc30.x86_64
|
||||
#1 SMP x86_64 GNU/Linux GNU gcc (GCC) 9.2.1 20190827 (Red Hat 9.2.1 20190827)
|
||||
GNU Fortran (GCC) 9.2.1 20190827 (Red Hat 9.2.1 20190827)
|
||||
(cmake and autotools)
|
||||
|
||||
|
||||
Known Problems
|
||||
|
||||
@@ -22,7 +22,7 @@ I. Preconditions
|
||||
|
||||
1. We suggest you obtain the latest CMake for windows from the Kitware
|
||||
web site. The HDF5 1.10.x product requires a minimum CMake version
|
||||
of 3.10.2.
|
||||
of 3.10.2. If you are using VS2019, the minimum version is 3.15.
|
||||
|
||||
2. You have installed the HDF5 library built with CMake, by executing
|
||||
the HDF Install Utility (the *.msi file in the binary package for
|
||||
|
||||
Reference in New Issue
Block a user