summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbin/cmakehdf559
-rw-r--r--release_docs/INSTALL_parallel50
-rw-r--r--tools/h5ls/h5ls.c6
3 files changed, 58 insertions, 57 deletions
diff --git a/bin/cmakehdf5 b/bin/cmakehdf5
index 4842f45..715d6d7 100755
--- a/bin/cmakehdf5
+++ b/bin/cmakehdf5
@@ -52,6 +52,7 @@ build_testing=-DBUILD_TESTING:BOOL=ON # Build tests default on
build_tools=-DHDF5_BUILD_TOOLS:BOOL=ON # Build tools default on
with_zlib=-DHDF5_ENABLE_Z_LIB_SUPPORT=ON # enable zlib filter default on
with_szlib=-DHDF5_ENABLE_SZIP_SUPPORT=OFF # enables zlib filter default off
+shared_lib=-DBUILD_SHARED_LIBS:BOOL=ON # enables shared lib; default on
#=============
@@ -81,16 +82,14 @@ Usage: $progname [<options>]
enable or disable c++ API. Default is off.
--enable-hl | --disable-hl:
enable or disable high level API. Default is on.
+ --enable-shared | --disable-shared:
+ enable or disable shared lib. Default is on.
--enable-tools | --disable-tools:
enable or disable building tools. Default is on.
--enable-testing | --disable-testing:
enable or disable building tests. Default is on.
- --with-zlib=INC,LIB | --without-zlib:
+ --with-zlib | --without-zlib:
Use zlib library for external deflate I/O filter. Default is on.
- INC and LIB are the include and lib directories.
- --with-szlib=INC,LIB| --without-szlib:
- Use szip library for external szip library I/O filter. Default is off.
- INC and LIB are the include and lib directories.
--help: shows details help page
EOF
}
@@ -126,6 +125,40 @@ STEP()
}
+# Install the generated installation image file. Different platform uses
+# different image files.
+# Linux: HDF5-<version>-Linux.sh file
+# Mac OS X: Not implemented yet
+# Others: Not implemented yet
+INSTALL_HDF5()
+{
+ myos="`uname -s`"
+ case "$myos" in
+ Linux)
+ install_file=./HDF5-${version}-Linux.sh
+ $install_file --skip-license $*
+ ;;
+ Darwin) # Mac OSX DMG file
+ install_file=HDF5-${version}-Darwin.dmg
+ test -d hdf5 || mkdir hdf5
+ basename=`basename $install_file .dmg`
+ # mount the DMG file as /Volumes/$basename
+ # echo 'Y' as yes for license.
+ echo Y | hdiutil mount $install_file
+ # copy the contents to the install location
+ cp -R "/Volumes/$basename/HDF_Group" hdf5
+ # unmount the DMG file
+ hdiutil unmount /Volumes/$basename
+ ;;
+ *) # unknown/unsupported OS.
+ echo "INSTALL_HDF5: Error--unknown/unsupported OS($myos)"
+ return 1
+ ;;
+ esac
+ return 0
+}
+
+
#==========
# main
#==========
@@ -167,6 +200,12 @@ while [ $# -gt 0 ]; do
--disable-hl)
build_hl_lib=-DHDF5_BUILD_HL_LIB:BOOL=OFF
;;
+ --enable-shared)
+ shared_lib=-DBUILD_SHARED_LIBS:BOOL=ON
+ ;;
+ --disable-shared)
+ shared_lib=-DBUILD_SHARED_LIBS:BOOL=OFF
+ ;;
--enable-tools)
build_tools=-DHDF5_BUILD_TOOLS:BOOL=ON
;;
@@ -179,6 +218,12 @@ while [ $# -gt 0 ]; do
--disable-testing)
build_testing=-DBUILD_TESTING:BOOL=OFF
;;
+ --with-zlib)
+ with_zlib=-DHDF5_ENABLE_Z_LIB_SUPPORT:BOOL=ON
+ ;;
+ --without-zlib)
+ with_zlib=-DHDF5_ENABLE_Z_LIB_SUPPORT:BOOL=OFF
+ ;;
--help)
# print the detail help page and exit
HELP
@@ -222,6 +267,7 @@ STEP "Configure..." "cmake \
$build_fortran \
$enable_f2003 \
$build_hl_lib \
+ $shared_lib \
$build_testing \
$build_tools \
$with_zlib \
@@ -239,7 +285,8 @@ STEP "Test the library and tools..." "ctest . -C Release" $testlog
STEP "Create an install image..." "cpack -C Release CPackConfig.cmake" $packlog
# 8. Install with this command:
-STEP "Install..." "./HDF5-${version}-Linux.sh --skip-license" $installlog
+#STEP "Install..." "./HDF5-${version}-Linux.sh --skip-license" $installlog
+STEP "Install..." "INSTALL_HDF5" $installlog
# save the last exit code
exit_code=$?
diff --git a/release_docs/INSTALL_parallel b/release_docs/INSTALL_parallel
index e4570b7..e4c540c 100644
--- a/release_docs/INSTALL_parallel
+++ b/release_docs/INSTALL_parallel
@@ -57,45 +57,7 @@ parallel HDF5 with one of the above, just set CC as it and configure.
$ make install
-2.2. IBM SP
------------
-During the build stage, the H5detect is compiled and executed to generate
-the source file H5Tinit.c which is compiled as part of the HDF5 library. In
-parallel mode, make sure your environment variables are set correctly to
-execute a single process mpi application. Otherwise, multiple processes
-attempt to write to the same H5Tinit.c file, resulting in a scrambled
-source file. Unfortunately, the setting varies from machine to machine.
-E.g., the following works for the IBM SP machine at LLNL.
-
- setenv MP_PROCS 1
- setenv MP_NODES 1
- setenv MP_LABELIO no
- setenv MP_RMPOOL 0
- setenv LLNL_COMPILE_SINGLE_THREADED TRUE # for LLNL site only
-
-The shared library configuration is problematic. So, only static library
-is supported.
-
-Then do the following steps:
-
- $ ./configure --enable-parallel --disable-shared --prefix=<install-directory>
- $ make # build the library
- $ make check # verify the correctness
- # Read the Details section about parallel tests.
- $ make install
-
-We also suggest that you add "-qxlf90=autodealloc" to FCFLAGS when building
-parallel with fortran enabled. This can be done by invoking:
-
- setenv FCFLAGS -qxlf90=autodealloc # 32 bit build
-or
- setenv FCFLAGS "-q64 -qxlf90=autodealloc" # 64 bit build
-
-prior to running configure. Recall that the "-q64" is necessary for 64
-bit builds.
-
-
-2.3. Linux 2.4 and greater
+2.2. Linux 2.4 and greater
--------------------------
Be sure that your installation of MPICH was configured with the following
configuration command-line option:
@@ -106,7 +68,7 @@ This allows for >2GB sized files on Linux systems and is only available with
Linux kernels 2.4 and greater.
-2.4. Hopper (Cray XE6) (for v1.8 and later)
+2.3. Hopper (Cray XE6) (for v1.8 and later)
-------------------------
The following steps are for building HDF5 for the Hopper compute
@@ -178,14 +140,6 @@ For examples,
$ CC=mpcc_r ./configure --enable-parallel
$ CC=/usr/local/mpi/bin/mpicc ./configure --enable-parallel
-If no such a compiler command is available then you must use your normal
-C compiler along with the location(s) of MPI/MPI-IO files to be used.
-For example,
-
- $ CPPFLAGS=-I/usr/local/mpi/include \
- LDFLAGS=-L/usr/local/mpi/lib/LINUX/ch_p4 \
- ./configure --enable-parallel=mpich
-
If a parallel library is being built then configure attempts to determine how
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
diff --git a/tools/h5ls/h5ls.c b/tools/h5ls/h5ls.c
index d0dd216..96bd8d0 100644
--- a/tools/h5ls/h5ls.c
+++ b/tools/h5ls/h5ls.c
@@ -1855,17 +1855,17 @@ dataset_list2(hid_t dset, const char UNUSED *name)
for (i=0, total=0; i<nf; i++) {
if (H5Pget_external(dcpl, (unsigned)i, sizeof(f_name), f_name, &f_offset, &f_size)<0) {
h5tools_str_append(&buffer,
- " #%03d %10"HSIZE_T_FORMAT"u %10s %10s ***ERROR*** %s\n",
+ " #%03d %10"H5_PRINTF_LL_WIDTH"u %10s %10s ***ERROR*** %s\n",
i, total, "", "",
i+1<nf?"Following addresses are incorrect":"");
}
else if (H5S_UNLIMITED==f_size) {
- h5tools_str_append(&buffer, " #%03d %10"HSIZE_T_FORMAT"u %10"HSIZE_T_FORMAT"u %10s ",
+ h5tools_str_append(&buffer, " #%03d %10"H5_PRINTF_LL_WIDTH"u %10"H5_PRINTF_LL_WIDTH"u %10s ",
i, total, (hsize_t)f_offset, "INF");
print_string(&buffer, f_name, TRUE);
}
else {
- h5tools_str_append(&buffer, " #%03d %10"HSIZE_T_FORMAT"u %10"HSIZE_T_FORMAT"u %10"HSIZE_T_FORMAT"u ",
+ h5tools_str_append(&buffer, " #%03d %10"H5_PRINTF_LL_WIDTH"u %10"H5_PRINTF_LL_WIDTH"u %10"H5_PRINTF_LL_WIDTH"u ",
i, total, (hsize_t)f_offset, f_size);
print_string(&buffer, f_name, TRUE);
}