diff options
author | Allen Byrne <byrn@hdfgroup.org> | 2020-02-29 20:03:20 (GMT) |
---|---|---|
committer | Allen Byrne <byrn@hdfgroup.org> | 2020-02-29 20:03:20 (GMT) |
commit | 2804716f648c42d6bd85e1d4a942f7df204c93f2 (patch) | |
tree | 664c6fbe21af3050a28ac998924d8766bf490caf /release_docs | |
parent | 3f4c3bd5ed61e604c5005f0322ae394dc2609cc4 (diff) | |
download | hdf5-2804716f648c42d6bd85e1d4a942f7df204c93f2.zip hdf5-2804716f648c42d6bd85e1d4a942f7df204c93f2.tar.gz hdf5-2804716f648c42d6bd85e1d4a942f7df204c93f2.tar.bz2 |
Merge changes from other branches
Diffstat (limited to 'release_docs')
-rw-r--r-- | release_docs/INSTALL_Cygwin.txt | 164 | ||||
-rw-r--r-- | release_docs/INSTALL_parallel | 12 | ||||
-rw-r--r-- | release_docs/RELEASE.txt | 20 | ||||
-rw-r--r-- | release_docs/USING_CMake_Examples.txt | 2 | ||||
-rw-r--r-- | release_docs/USING_HDF5_CMake.txt | 4 |
5 files changed, 108 insertions, 94 deletions
diff --git a/release_docs/INSTALL_Cygwin.txt b/release_docs/INSTALL_Cygwin.txt index 5ebb503..41762ec 100644 --- a/release_docs/INSTALL_Cygwin.txt +++ b/release_docs/INSTALL_Cygwin.txt @@ -2,8 +2,8 @@ HDF5 Build and Install Instructions for Cygwin ************************************************************************ -This document is a instruction on how to build, test and install HDF5 libary on -Cygwin. See detailed information in hdf5/INSTALL. +This document is a instruction on how to build, test and install HDF5 libary on +Cygwin. See detailed information in hdf5/INSTALL. NOTE: hdf5 can be built with CMake, see the INSTALL_CMake.txt file for more guidance. @@ -12,16 +12,16 @@ Preconditions: 1. Installed Cygwin 1.7.25 or higher - To install the Cygwin net release, go to http://www.cygwin.com and + To install the Cygwin net release, go to http://www.cygwin.com and click on "setup-x86.exe" (32-bit installation) under the heading - "Current Cygwin DLL version". This will download a GUI - installer called setup-x86.exe which can be run to download a complete - Cygwin installation via the internet. Then follow the instructions + "Current Cygwin DLL version". This will download a GUI + installer called setup-x86.exe which can be run to download a complete + Cygwin installation via the internet. Then follow the instructions on each screen to install Cygwin. - Cygwin uses packages to manage installing various software. Users can + Cygwin uses packages to manage installing various software. Users can choose to install or uninstall certain packages by running setup.exe. - http://www.cygwin.com/packages/ provides detailed information about + http://www.cygwin.com/packages/ provides detailed information about Cygwin packages. Most required dependencies can be satisfied by installing all packages in @@ -31,32 +31,32 @@ Preconditions: 2. Compilers, Libraries and Utilities Installed 2.1 Compilers Supported - + The following compilers are supported by HDF5 and included in the Cygwin package system: gcc (4.7.3 and 4.9.2), which includes: gcc4-core : C compiler gcc4-g++ : C++ compiler gcc4-fortran : fortran compiler - + 2.1.1 Using Compilers Not Supported - + By default the current configuration uses vendor compilers; to use another compiler run the following commands before running - configure: - + configure: + setenv CC "foo -flags" setenv FC "fffoo -flags" - For example, if users want to use pgf90 as fortran compiler, then + For example, if users want to use pgf90 as fortran compiler, then setenv FC pgf90 See the configure help page (configure --help) for a list of environment variables that have an affect on building the library. - + 2.2 HDF5 External Library Dependencies 2.2.1 Zlib @@ -66,38 +66,38 @@ Preconditions: 2.2.2 Szip The HDF5 library has a predefined compression filter that uses the extended-Rice lossless compression algorithm for chunked - datatsets. For more information on Szip compression, license terms, + datatsets. For more information on Szip compression, license terms, and obtaining the Szip source code, see: https://portal.hdfgroup.org/display/HDF5/Szip+Compression+in+HDF+Products - - + + 2.3 Additional Utilities - + The following standard utilities are also required to build and test HDF5: - + bison : yacc implementation flex : flex utility make : make utility - + 2.4 Alternate Build Process - - Download the CMake package and follow the notes in the "INSTALL_CMake.txt" + + Download the CMake package and follow the notes in the "INSTALL_CMake.txt" file to build HDF5 with the CMake utilities. - - - + + + Build, Test and Install HDF5 on Cygwin -------------------------------------- 1. Get HDF5 source code package Users can download HDF5 source code package from HDF website - (http://hdfgroup.org). - + (http://hdfgroup.org). + 2. Unpacking the distribution The HDF5 source code is distributed in a variety of formats which - can be unpacked with the following commands, each of which creates + can be unpacked with the following commands, each of which creates an `hdf5-1.8.x' directory. 2.1 Non-compressed tar archive (*.tar) @@ -110,118 +110,118 @@ Build, Test and Install HDF5 on Cygwin 2.3 Bzip'd tar archive (*.tar.bz2) - $ bunzip2 < hdf5-1.8.x.tar.bz2 | tar xf - + $ bunzip2 < hdf5-1.8.x.tar.bz2 | tar xf - 2. Setup Environment In Cygwin, most compilers and setting are automatically detected during - the configure script. However, if you are building Fortran we recommend - that you explicitly set the "FC" variable in your environment to use the + the configure script. However, if you are building Fortran we recommend + that you explicitly set the "FC" variable in your environment to use the gfortran compiler. For example, issue the command: - + $ export FC=gfortran - -4. Configuring - - Notes: See detailed information in hdf5/release_docs/INSTALL, - part 5. Full installation instructions for source + +4. Configuring + + Notes: See detailed information in hdf5/release_docs/INSTALL, + part 5. Full installation instructions for source distributions - The host configuration file for cygwin i686-pc-cygwin is located - in the `config' directory and are based on architecture name, - vendor name, and operating system which are displayed near the + The host configuration file for cygwin i686-pc-cygwin is located + in the `config' directory and are based on architecture name, + vendor name, and operating system which are displayed near the beginning of the `configure' output. The host config file influences - the behavior of configure by setting or augmenting shell variables. - + the behavior of configure by setting or augmenting shell variables. + In short, To configure HDF5 C Library, using $ ./configure - + To configure HDF5 C/C++ Library, using $ ./configure --enable-cxx - + To configure HDF5 C/Fortran Library, using $ ./configure --enable-fortran - + To configure HDF5 C with Szip library, using $ ./configure --with-szlib="path to szlib" - - For example, if szip library was installed in the directory + + For example, if szip library was installed in the directory /cygdrive/c/szip, which is parent directory of "include" and - "lib", then the following command will configure HDF5 C library + "lib", then the following command will configure HDF5 C library with szip enabled: - + $ ./configure --with-szlib=/cygdrive/c/szip - + To configure HDF5 C without Zlib, - + To disable zlib, using $ ./configure --without-zlib - + Two ways to configure HDF5 C with specified Zlib - + Using $ ./configure --with-zlib=INCDIR,LIBDIR For example, if the zlib library is installed in /cygdrive/c/usr, which is the parent directory of directories - "include" and "lib", + "include" and "lib", $ ./configure --with-zlib=/cygdrive/c/usr/include,/cygdrive/c/usr/lib Through the CPPFLAGS and LDFLAGS Variables - - For example, if zlib was installed in the directory - /cygdrive/c/usr then using the following command to configure + + For example, if zlib was installed in the directory + /cygdrive/c/usr then using the following command to configure HDF5 with zib $ CPPFLAGS=-I/cygdrive/c/usr/include \ $ LDFLAGS=-L/cygdrive/c/usr/lib \ $ ./configure - To specify the installation directories, using + To specify the installation directories, using $ ./configure --prefix="path for installation" - - By default, HDF5 library, header files, examples, and + + By default, HDF5 library, header files, examples, and support programs will be installed in /usr/local/lib, /usr/local/include, /usr/local/doc/hdf5/examples, and - /usr/local/bin. To use a path other than /usr/local specify + /usr/local/bin. To use a path other than /usr/local specify the path with the `--prefix=PATH' switch as in the above command. - Combination of Switches + Combination of Switches - All of the above switches can be combined together. For - example, if users want to configure HDF5 C/C++/Fortran - library with szip library enabled, with zlib library at - /cygdrive/c/usr/, and install HDF5 into directory + All of the above switches can be combined together. For + example, if users want to configure HDF5 C/C++/Fortran + library with szip library enabled, with zlib library at + /cygdrive/c/usr/, and install HDF5 into directory /cygdrive/c/hdf5 using gcc/g++ as C/C++ compiler and gfortran as fortran compiler - + $ ./configure --with-szlib=/cygdrive/c/szip --with-zlib=/cygdrive/c/usr/include,/cygdrive/c/usr/lib --prefix=/cygdrive/c/hdf5 --enable-cxx - --enable-fortran + --enable-fortran <"If no more switches, then hit Enter"> Notes: The command format above is for readilibity. In practice, please type in the command above with at least one - space between each line, No "Enter" until users finish - the switches and want to run the configure. + space between each line, No "Enter" until users finish + the switches and want to run the configure. + - or do it through CPPFLAGS and LDFLAGS variables: - + $ CPPFLAGS=-I/cygdrive/c/usr/include \ $ LDFLAGS=-L/cygdrive/c/usr/lib \ @@ -229,32 +229,32 @@ Build, Test and Install HDF5 on Cygwin --with-szlib=/cygdrive/c/szip --prefix=/cygdrive/c/hdf5 --enable-cxx - --enable-fortran + --enable-fortran <"If no more switches, then hit Enter"> - + 5. Make and Make Check After configuration is done successfully, run the following series of commands to build, test and install HDF5 - + $ make > "output file name" $ make check > "output file name" - + Before run "make install", check output file for "make check", there should be no failures at all. 6. Make Install $ make install > "output file name" - - + + 7. Check installed HDF5 library - After step 6, go to your installation directory, there should be + After step 6, go to your installation directory, there should be three subdirectories: "bin" "include" and "lib". -8. Known Problems - +8. Known Problems + dt_arith tests may fail due to the use of fork. This is a known issue with cygwin on Windows. diff --git a/release_docs/INSTALL_parallel b/release_docs/INSTALL_parallel index bf14b2e..d3d7830 100644 --- a/release_docs/INSTALL_parallel +++ b/release_docs/INSTALL_parallel @@ -4,7 +4,7 @@ 0. Use Build Scripts -------------------- The HDF Group is accumulating build scripts to handle building parallel HDF5 -on various platforms (Cray, IBM, SGI, etc...). These scripts are being +on various platforms (Cray, IBM, SGI, etc...). These scripts are being maintained and updated continuously for current and future systems. The reader is strongly encouraged to consult the repository at, @@ -102,7 +102,7 @@ qsub -I -q debug -l mppwidth=8 - 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 - RUNSERIAL and RUNPARALLEL tells the library how it should launch programs that are part of the build procedure. + RUNSERIAL and RUNPARALLEL tell the library how it should launch programs that are part of the build procedure. - Compile HDF5: gmake @@ -155,12 +155,16 @@ to run a parallel application on one processor and on many processors. If the compiler is `mpicc' and the user hasn't specified values for RUNSERIAL and RUNPARALLEL then configure chooses `mpiexec' from the same directory as `mpicc': - RUNSERIAL: /usr/local/mpi/bin/mpiexec -np 1 - RUNPARALLEL: /usr/local/mpi/bin/mpiexec -np $${NPROCS:=6} + RUNSERIAL: mpiexec -n 1 + RUNPARALLEL: mpiexec -n $${NPROCS:=6} The `$${NPROCS:=6}' will be substituted with the value of the NPROCS environment variable at the time `make check' is run (or the value 6). +Note that some MPI implementations (e.g. OpenMPI 4.0) disallow oversubscribing +nodes by default so you'll have to either set NPROCS equal to the number of +processors available (or fewer) or redefine RUNPARALLEL with appropriate +flag(s) (--oversubscribe in OpenMPI). 4. Parallel test suite ---------------------- diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 7e0214d..5df9ad7 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -56,6 +56,20 @@ New Features Configuration ------------- + - Update CMake minimum version to 3.12 + + Updated CMake minimum version to 3.12 and added version checks + for Windows features. + + (ADB - 2020/02/05, TRILABS-142) + + - Fixed CMake include properties for Fortran libraries + + Corrected the library properties for Fortran to use the + correct path for the Fortran module files. + + (ADB - 2020/02/04, HDFFV-11012) + - Added common warnings files for gnu and intel Added warnings files to use one common set of flags @@ -413,12 +427,8 @@ They are built with the configure process unless specified otherwise. (emu) Sun Fortran 95 8.6 SunOS_sparc Sun C++ 5.12 SunOS_sparc - Windows 7 Visual Studio 2015 w/ Intel Fortran 18 (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) + Visual Studio 2015 w/ MSMPI 10 (cmake) Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 18 (cmake) Visual Studio 2017 w/ Intel Fortran 19 (cmake) diff --git a/release_docs/USING_CMake_Examples.txt b/release_docs/USING_CMake_Examples.txt index f89f3ea..41bdc21 100644 --- a/release_docs/USING_CMake_Examples.txt +++ b/release_docs/USING_CMake_Examples.txt @@ -22,7 +22,7 @@ I. Preconditions 1. We suggest you obtain the latest CMake for windows from the Kitware web site. The HDF5 1.8.x product requires a minimum CMake version - of 3.10.2. If you are using VS2019, the minimum version is 3.15. + of 3.12. 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 diff --git a/release_docs/USING_HDF5_CMake.txt b/release_docs/USING_HDF5_CMake.txt index 8da33de..cf1ade1 100644 --- a/release_docs/USING_HDF5_CMake.txt +++ b/release_docs/USING_HDF5_CMake.txt @@ -37,7 +37,7 @@ I. Preconditions 1. We suggest you obtain the latest CMake for windows from the Kitware web site. The HDF5 1.8.x product requires a minimum CMake version - of 3.10.1. + of 3.12. 2. You have installed the HDF5 library built with CMake, by executing the HDF Install Utility (the *.msi file in the binary package for @@ -180,7 +180,7 @@ Given the preconditions in section I, create a CMakeLists.txt file at the source root. Include the following text in the file: ########################################################## -cmake_minimum_required (VERSION 3.10) +cmake_minimum_required (VERSION 3.12) project (HDF5MyApp C CXX) set (LIB_TYPE STATIC) # or SHARED |