[SCM] hdf5 branch, upstream, updated. upstream/1.8.4-patch1-79-gbfcb1ff

Francesco Paolo Lovergine frankie at debian.org
Wed Nov 16 10:34:03 UTC 2011


The following commit has been merged in the upstream branch:
commit c7b9ef9adc79120e1cd8a3b362bf5f9eac29d2f4
Author: Francesco Paolo Lovergine <frankie at debian.org>
Date:   Wed Apr 9 12:18:27 2008 +0000

    First round for 1.6.7

diff --git a/COPYING b/COPYING
index 2f24b20..1bc39c1 100644
--- a/COPYING
+++ b/COPYING
@@ -4,7 +4,7 @@ HDF5 (Hierarchical Data Format 5) Software Library and Utilities
 -----------------------------------------------------------------------------
 
 HDF5 (Hierarchical Data Format 5) Software Library and Utilities
-Copyright 2006-2007 by The HDF Group (THG).
+Copyright 2006-2008 by The HDF Group (THG).
 
 NCSA HDF5 (Hierarchical Data Format 5) Software Library and Utilities
 Copyright 1998-2006 by the Board of Trustees of the University of Illinois.
diff --git a/MANIFEST b/MANIFEST
index db43edc..a715e8f 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -707,11 +707,14 @@
 
 ./doc/html/ed_libs/Dependencies
 ./doc/html/ed_libs/Footer.lbi
+./doc/html/ed_libs/Footer_Null.lbi        _DO_NOT_DISTRIBUTE_
 ./doc/html/ed_libs/Makefile.in
 ./doc/html/ed_libs/NavBar_ADevG.lbi
+./doc/html/ed_libs/NavBar_ADevG_Null.lbi  _DO_NOT_DISTRIBUTE_
 ./doc/html/ed_libs/NavBar_Common.lbi
 ./doc/html/ed_libs/NavBar_Intro.lbi
 ./doc/html/ed_libs/NavBar_RM.lbi
+./doc/html/ed_libs/NavBar_RM_Null.lbi     _DO_NOT_DISTRIBUTE_
 ./doc/html/ed_libs/NavBar_TechN.lbi
 ./doc/html/ed_libs/NavBar_UG.lbi
 ./doc/html/ed_libs/copyright-html.lbi
@@ -1195,8 +1198,6 @@
 ./src/H5FDsrb.h
 ./src/H5FDstdio.c
 ./src/H5FDstdio.h
-./src/H5FDstream.c
-./src/H5FDstream.h
 ./src/H5FL.c
 ./src/H5FLprivate.h
 ./src/H5FO.c
@@ -1387,12 +1388,13 @@
 ./test/srb_read.c
 ./test/srb_write.c
 ./test/stab.c
-./test/stream_test.c
 ./test/tarray.c
 ./test/tarrold.h5
 ./test/tattr.c
+./test/tbad_msg_count.h5
 ./test/tbogus.h5
 ./test/tconfig.c
+./test/tcoords.c
 ./test/testframe.c
 ./test/testhdf5.c
 ./test/testhdf5.h
diff --git a/README.txt b/README.txt
index 397697b..9529185 100644
--- a/README.txt
+++ b/README.txt
@@ -1,6 +1,7 @@
-HDF5 version 1.6.6 released on Thu Aug 16 11:17:10 CDT 2007
+HDF5 version 1.6.7 released on Thu Jan 31 21:09:10 CST 2008
 Please refer to the release_docs/INSTALL file for installation instructions.
 ------------------------------------------------------------------------------
+January 28, 2007
 
 This release is fully functional for the entire API defined in the
 documentation.  
@@ -16,22 +17,23 @@ descriptive names.
 
 Documentation for this release can be found in the doc/html/ directory;
 start with the file "index.html" in that directory.  Online documentation
-for the current release is available at http:/hdfgroup.org/HDF5/doc/.
+for the current release of the 1.6.x release series is available at: 
+    http:/hdfgroup.org/HDF5/doc1.6/
 
 Several mailing lists are currently set up for use with the HDF5 library:
 
-   news         - For announcements of HDF5 related developments,
+    news        - For announcements of HDF5 related developments,
                   not a discussion list.
 
-   hdf-forum    - For general discussion of the HDF5 library with
+    hdf-forum   - For general discussion of the HDF5 library with
                   other users.
 
-   hdf5dev      - For discussion of HDF5 library development
+    hdf5dev     - For discussion of HDF5 library development
                   with developers and other interested parties.
 
 To subscribe to a list, send mail to "<list>-subscribe at hdfgroup.org".
-where <list> is the name of the list.  E.g., 
-    mail hdf5-subscribe at hdfgroup.org
+where <list> is the name of the list.  For example:
+    mail news-subscribe at hdfgroup.org
 
 Messages to be sent to the list should be sent to "<list>@hdfgroup.org".
 
@@ -40,6 +42,7 @@ Periodic code snapshots are provided at the following URL:
 Please read the README.txt file in that directory before working with a 
 library snapshot.
 
-The HDF5 website is located at http://hdfgroup.org/HDF5/
+The HDF5 website is located at http://hdfgroup.org/products/hdf5/.
 
 Bugs should be reported to help at hdfgroup.org.
+
diff --git a/aclocal.m4 b/aclocal.m4
index 06922b4..07b0c2d 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,7 +1,7 @@
-# generated automatically by aclocal 1.9.6 -*- Autoconf -*-
+# generated automatically by aclocal 1.10.1 -*- Autoconf -*-
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005  Free Software Foundation, Inc.
+# 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -13,7 +13,7 @@
 
 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
 
-# serial 51 Debian 1.5.24-1 AC_PROG_LIBTOOL
+# serial 52 Debian 1.5.26-2 AC_PROG_LIBTOOL
 
 
 # AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
@@ -101,7 +101,6 @@ AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
 AC_REQUIRE([AC_OBJEXT])dnl
 AC_REQUIRE([AC_EXEEXT])dnl
 dnl
-
 AC_LIBTOOL_SYS_MAX_CMD_LEN
 AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
 AC_LIBTOOL_OBJDIR
@@ -203,6 +202,8 @@ file_magic*)
   ;;
 esac
 
+_LT_REQUIRED_DARWIN_CHECKS
+
 AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
 AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
 enable_win32_dll=yes, enable_win32_dll=no)
@@ -282,9 +283,80 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 ])# _LT_LINKER_BOILERPLATE
 
+# _LT_REQUIRED_DARWIN_CHECKS
+# --------------------------
+# Check for some things on darwin
+AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS],[
+  case $host_os in
+    rhapsody* | darwin*)
+    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
+    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
+
+    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
+      [lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+   # By default we will add the -single_module flag. You can override
+   # by either setting the environment variable LT_MULTI_MODULE
+   # non-empty at configure time, or by adding -multi_module to the
+   # link flags.
+   echo "int foo(void){return 1;}" > conftest.c
+   $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+     -dynamiclib ${wl}-single_module conftest.c
+   if test -f libconftest.dylib; then
+     lt_cv_apple_cc_single_mod=yes
+     rm -rf libconftest.dylib*
+   fi
+   rm conftest.c
+      fi])
+    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
+      [lt_cv_ld_exported_symbols_list],
+      [lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+   [lt_cv_ld_exported_symbols_list=yes],
+   [lt_cv_ld_exported_symbols_list=no])
+   LDFLAGS="$save_LDFLAGS"
+    ])
+    case $host_os in
+    rhapsody* | darwin1.[[0123]])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+     _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*)
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+   10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
+     _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+   10.[[012]]*)
+     _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+   10.*)
+     _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms="~$NMEDIT -s \$output_objdir/\${libname}-symbols.expsym \${lib}"
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil="~$DSYMUTIL \$lib || :"
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+])
 
 # _LT_AC_SYS_LIBPATH_AIX
 # ----------------------
@@ -609,7 +681,11 @@ sparc*-*solaris*)
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+        if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -702,7 +778,7 @@ AC_CACHE_CHECK([$1], [$2],
        $2=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 ])
 
@@ -973,7 +1049,7 @@ else
     AC_CHECK_FUNC([shl_load],
 	  [lt_cv_dlopen="shl_load"],
       [AC_CHECK_LIB([dld], [shl_load],
-	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
+	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
 	[AC_CHECK_FUNC([dlopen],
 	      [lt_cv_dlopen="dlopen"],
 	  [AC_CHECK_LIB([dl], [dlopen],
@@ -981,7 +1057,7 @@ else
 	    [AC_CHECK_LIB([svld], [dlopen],
 		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
 	      [AC_CHECK_LIB([dld], [dld_link],
-		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
+		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
 	      ])
 	    ])
 	  ])
@@ -1298,7 +1374,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[[4-9]]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -1831,6 +1907,13 @@ esac
 AC_MSG_RESULT([$dynamic_linker])
 test "$dynamic_linker" = no && can_build_shared=no
 
+AC_CACHE_VAL([lt_cv_sys_lib_search_path_spec],
+[lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"])
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+AC_CACHE_VAL([lt_cv_sys_lib_dlsearch_path_spec],
+[lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"])
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -2330,7 +2413,7 @@ lt_cv_deplibs_check_method='unknown'
 # whether `pass_all' will *always* work, you probably want this one.
 
 case $host_os in
-aix4* | aix5*)
+aix[[4-9]]*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
@@ -2766,7 +2849,7 @@ aix3*)
   fi
   ;;
 
-aix4* | aix5*)
+aix[[4-9]]*)
   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
     test "$enable_shared" = yes && enable_static=no
   fi
@@ -2823,6 +2906,7 @@ _LT_AC_TAGVAR(postdep_objects, $1)=
 _LT_AC_TAGVAR(predeps, $1)=
 _LT_AC_TAGVAR(postdeps, $1)=
 _LT_AC_TAGVAR(compiler_lib_search_path, $1)=
+_LT_AC_TAGVAR(compiler_lib_search_dirs, $1)=
 
 # Source file extension for C++ test sources.
 ac_ext=cpp
@@ -2932,7 +3016,7 @@ case $host_os in
     # FIXME: insert proper C++ library support
     _LT_AC_TAGVAR(ld_shlibs, $1)=no
     ;;
-  aix4* | aix5*)
+  aix[[4-9]]*)
     if test "$host_cpu" = ia64; then
       # On IA64, the linker does run time linking by default, so we don't
       # have to do anything special.
@@ -2945,7 +3029,7 @@ case $host_os in
       # Test if we are trying to use run time linking or normal
       # AIX style linking. If -brtl is somewhere in LDFLAGS, we
       # need to do runtime linking.
-      case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
+      case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
 	for ld_flag in $LDFLAGS; do
 	  case $ld_flag in
 	  *-brtl*)
@@ -3091,51 +3175,23 @@ case $host_os in
     fi
   ;;
       darwin* | rhapsody*)
-        case $host_os in
-        rhapsody* | darwin1.[[012]])
-         _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
-         ;;
-       *) # Darwin 1.3 on
-         if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
-           _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-         else
-           case ${MACOSX_DEPLOYMENT_TARGET} in
-             10.[[012]])
-               _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-               ;;
-             10.*)
-               _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
-               ;;
-           esac
-         fi
-         ;;
-        esac
       _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
       _LT_AC_TAGVAR(hardcode_direct, $1)=no
       _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
       _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
       _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=''
       _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
-
-    if test "$GXX" = yes ; then
-      lt_int_apple_cc_single_mod=no
+      _LT_AC_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
+      if test "$GXX" = yes ; then
       output_verbose_link_cmd='echo'
-      if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then
-       lt_int_apple_cc_single_mod=yes
+      _LT_AC_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+      _LT_AC_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+      _LT_AC_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+      _LT_AC_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+      if test "$lt_cv_apple_cc_single_mod" != "yes"; then
+        _LT_AC_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
+        _LT_AC_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
       fi
-      if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
-       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      else
-          _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-        fi
-        _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-        # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-          if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
-            _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-          else
-            _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-          fi
-            _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
       else
       case $cc_basename in
         xlc*)
@@ -3386,7 +3442,7 @@ case $host_os in
 	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
 	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
 	;;
-      pgCC*)
+      pgCC* | pgcpp*)
         # Portland Group C++ compiler
 	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
   	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
@@ -3821,7 +3877,8 @@ lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
 # compiler output when linking a shared library.
 # Parse the compiler output and extract the necessary
 # objects, libraries and library flags.
-AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[
+AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
 dnl we can't use the lt_simple_compile_test_code here,
 dnl because it contains code intended for an executable,
 dnl not a library.  It's possible we should let each
@@ -3946,6 +4003,11 @@ fi
 
 $rm -f confest.$objext
 
+_LT_AC_TAGVAR(compiler_lib_search_dirs, $1)=
+if test -n "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then
+  _LT_AC_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_AC_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+fi
+
 # PORTME: override above test on systems where it is broken
 ifelse([$1],[CXX],
 [case $host_os in
@@ -4002,7 +4064,6 @@ solaris*)
   ;;
 esac
 ])
-
 case " $_LT_AC_TAGVAR(postdeps, $1) " in
 *" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
 esac
@@ -4087,7 +4148,7 @@ aix3*)
     postinstall_cmds='$RANLIB $lib'
   fi
   ;;
-aix4* | aix5*)
+aix[[4-9]]*)
   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
     test "$enable_shared" = yes && enable_static=no
   fi
@@ -4264,6 +4325,7 @@ if test -f "$ltmain"; then
     _LT_AC_TAGVAR(predeps, $1) \
     _LT_AC_TAGVAR(postdeps, $1) \
     _LT_AC_TAGVAR(compiler_lib_search_path, $1) \
+    _LT_AC_TAGVAR(compiler_lib_search_dirs, $1) \
     _LT_AC_TAGVAR(archive_cmds, $1) \
     _LT_AC_TAGVAR(archive_expsym_cmds, $1) \
     _LT_AC_TAGVAR(postinstall_cmds, $1) \
@@ -4326,7 +4388,7 @@ ifelse([$1], [],
 # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
 # Free Software Foundation, Inc.
 #
 # This file is part of GNU Libtool:
@@ -4563,6 +4625,10 @@ predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1)
 # shared library.
 postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1)
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_dirs, $1)
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
@@ -4912,7 +4978,7 @@ EOF
     echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -4969,7 +5035,8 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
       # (--disable-auto-import) libraries
-      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
+      m4_if([$1], [GCJ], [],
+	[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
       ;;
     darwin* | rhapsody*)
       # PIC is the default on this platform
@@ -5006,7 +5073,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
     esac
   else
     case $host_os in
-      aix4* | aix5*)
+      aix[[4-9]]*)
 	# All AIX code is PIC.
 	if test "$host_cpu" = ia64; then
 	  # AIX 5 now supports IA64 processor
@@ -5102,7 +5169,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
 	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
 	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
 	    ;;
-	  pgCC*)
+	  pgCC* | pgcpp*)
 	    # Portland Group C++ compiler.
 	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
 	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
@@ -5253,7 +5320,8 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
       # (--disable-auto-import) libraries
-      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
+      m4_if([$1], [GCJ], [],
+	[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
       ;;
 
     darwin* | rhapsody*)
@@ -5323,7 +5391,8 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
     mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
-      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
+      m4_if([$1], [GCJ], [],
+	[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
       ;;
 
     hpux9* | hpux10* | hpux11*)
@@ -5460,7 +5529,7 @@ AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)])
 #
 if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then
   AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works],
-    _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1),
+    _LT_AC_TAGVAR(lt_cv_prog_compiler_pic_works, $1),
     [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [],
     [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in
      "" | " "*) ;;
@@ -5484,7 +5553,7 @@ esac
 #
 wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_AC_TAGVAR(lt_prog_compiler_static, $1)\"
 AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
-  _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
+  _LT_AC_TAGVAR(lt_cv_prog_compiler_static_works, $1),
   $lt_tmp_static_flag,
   [],
   [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
@@ -5500,7 +5569,7 @@ AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
 ifelse([$1],[CXX],[
   _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   case $host_os in
-  aix4* | aix5*)
+  aix[[4-9]]*)
     # If we're using GNU nm, then we don't want the "-C" option.
     # -C means demangle to AIX nm, but means don't demangle with GNU nm
     if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
@@ -5522,6 +5591,7 @@ ifelse([$1],[CXX],[
     _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
   esac
+  _LT_AC_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
 ],[
   runpath_var=
   _LT_AC_TAGVAR(allow_undefined_flag, $1)=
@@ -5552,12 +5622,14 @@ ifelse([$1],[CXX],[
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_"
+  _LT_AC_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
+dnl Note also adjust exclude_expsyms for C++ above.
   extract_expsyms_cmds=
   # Just being paranoid about ensuring that cc_basename is set.
   _LT_CC_BASENAME([$compiler])
@@ -5607,7 +5679,7 @@ ifelse([$1],[CXX],[
 
     # See if GNU ld supports shared libraries.
     case $host_os in
-    aix3* | aix4* | aix5*)
+    aix[[3-9]]*)
       # On AIX/PPC, the GNU linker is very broken
       if test "$host_cpu" != ia64; then
 	_LT_AC_TAGVAR(ld_shlibs, $1)=no
@@ -5827,7 +5899,7 @@ _LT_EOF
       fi
       ;;
 
-    aix4* | aix5*)
+    aix[[4-9]]*)
       if test "$host_cpu" = ia64; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
@@ -5847,7 +5919,7 @@ _LT_EOF
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
 	# need to do runtime linking.
-	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
+	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
 	  for ld_flag in $LDFLAGS; do
   	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
   	    aix_use_runtimelinking=yes
@@ -6007,11 +6079,10 @@ _LT_EOF
       _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
     if test "$GCC" = yes ; then
     	output_verbose_link_cmd='echo'
-        _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+        _LT_AC_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+        _LT_AC_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+        _LT_AC_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+        _LT_AC_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
     else
       case $cc_basename in
         xlc*)
diff --git a/bin/buildhdf5 b/bin/buildhdf5
index fe39b0a..f0dd938 100755
--- a/bin/buildhdf5
+++ b/bin/buildhdf5
@@ -1,5 +1,5 @@
 #!/bin/sh
-##
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -12,7 +12,7 @@
 # is linked from the top-level documents page.  It can also be found at
 # http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
 # access to either file, you may request a copy from help at hdfgroup.org.
-##
+#
 # Build HDF5 library by doing configure, make, and tests.
 # Usage: See USAGE()
 # Programmer: Albert Cheng
@@ -28,14 +28,17 @@ can continue from a previous build.
 
 Command Syntax
 ==============
-buildhdf5 [-config] [-gass] [-srcdir dir] config-arguments ...
+buildhdf5 [-config] [-szlib] [-help] [-n] [-srcdir dir] [-fortran] [-cxx] [-pp] config-arguments ...
    -config:	run configure only. [default to do build too]
-   -gass:	configure for the GASS driver
+   -szlib:      configure in the szlib option
    -help:	show this help page
    -n:   	no execution, just show commands
    -srcdir:	use dir as the source directory
              	   [Note: this is different from --srcdir
              	    which will be passed to configure]
+   -fortran:	add --enable-fortran
+   -cxx:	add --enable-cxx
+   -pp:		add --enable-parallel
    all other arguments are passed to configure
 
 
@@ -48,10 +51,10 @@ does the build in place.  If it finds ../hdf5/configure, it
 does the --srcdir (that is separated source) build.  Therefore,
 if you have the following structure setup, you can run multiple
 hosts building simultantously using a common source code.
-     hdf5_1.4/hdf5        # holds the source
-	  .../arabica     # for SunOS 2.7
-	  .../arabicapp   # for SunOS 2.7 parallel
-	  .../burrwhite   # for Linux 2.4
+     hdf5_v1.7/hdf5       # holds the source
+	  .../sunbox      # for SunOS
+	  .../linux       # for Linux
+	  .../linuxpp     # for Linux parallel
 EOF
 }
 
@@ -89,135 +92,124 @@ STEP()
 }
 
 
-# Try locate the HDF4 library
-# This is a hack because there is no consistent place to find
-# the valid HDF library.
-LOCATE_HDF4()
+# Try locate the SZLIB.
+# This is a hack because there is no consistent szlib pathname.
+LOCATE_SZLIB()
 {
-    OS=`uname -s`
-    echo OS=$OS
-    case "$OS" in
-	HP-UX)
-	    h4paths="/afs/ncsa/packages/hdf/HPUX_10.20"
-	    ;;
-	IRIX)
-	    h4paths="/afs/ncsa/packages/hdf/4.1r3_irix"
-	    ;;
-	IRIX64)
-	    case "$CC" in
-	    *-n32)
-		h4paths="/afs/ncsa/packages/hdf/IRIX64-n32_6.5"
-		;;
-	    *)
-		h4paths="/afs/ncsa/packages/hdf/IRIX64_6.5"
-		;;
+    # Try to guess what domain I am in.
+    if [ -d /usr/hdf/bin ]; then
+	# I am in an THG host.
+	mydomain=thg
+    elif [ -d /afs/ncsa/projects/hdf/packages ]; then
+	# I am in an NCSA host that has AFS.
+	mydomain=ncsa
+    else
+	mydomain=unknown
+    fi
+    
+    case $mydomain in
+	thg)
+	    # THG hosts
+	    OS=`uname -s`
+	    echo OS=$OS
+	    case "$OS" in
+		Linux)
+		    case `uname -m` in
+		    i686)	# 32 bits
+			szlibpaths="/home/packages/szip/static/encoder/Linux2.6-gcc"
+			;;
+		    x86_64)	# 64 bits
+			szlibpaths="/home/packages/szip/static/encoder/Linux2.6-x86_64-gcc"
+			;;
+		    *)
+			# Don't know.  Give a shot at standard places.
+			szlibpaths="/usr/hdf /usr/local"
+			;;
+		    esac
+		    ;;
+		SunOS)
+		    szlibpaths="/home/packages/szip/static/encoder/SunOS-5.10"
+		    ;;
+		FreeBSD)
+		    case `uname -m` in
+		    i386)	# 32 bits
+			szlibpaths="/home/packages/szip/static/encoder/FreeBSD"
+			;;
+		    amd64)	# 64 bits
+			szlibpaths="/home/packages/szip/static/encoder/FreeBSD-64"
+			;;
+		    *)
+			# Don't know.  Give a shot at standard places.
+			szlibpaths="/usr/hdf /usr/local"
+			;;
+		    esac
+		    ;;
+		*)
+		    # Don't know.  Give a shot at standard places.
+		    szlibpaths="/usr/hdf /usr/local"
+		    ;;
 	    esac
-	    ;;
-	Linux)
-	    h4paths="/afs/ncsa/packages/hdf/linux"
-	    ;;
-	OSF1)
-	    h4paths="/afs/ncsa/packages/hdf/OSF1_V4.0"
-	    ;;
-	*)
-	    h4paths="/usr/ncsa /usr/sdt"
-	    ;;
-    esac
-    echo $h4paths
-    for h4 in $h4paths; do
-	if [ -f $h4/lib/libdf.a -a -f $h4/include/hdf.h ]; then
-	    WITH_H4="--with-hdf4=$h4/include,$h4/lib"
-	    break
-	fi
-    done
-    echo WITH_H4="$WITH_H4"
-}
-
-
-# Try locate the Fortran compiler
-# This is a hack because there is no consistent fortran compiler name
-LOCATE_FORTRAN()
-{
-    OS=`uname -s`
-    echo OS=$OS
-    case "$OS" in
-	IRIX64)
-	    case "$CC" in
-	    *-n32)
-		gasspaths=/usr/local/globus-install-1.1.1/development/mips-sgi-irix6.5-n32_nothreads_standard_debug
-		sslpaths=/usr/local/ssl-n32
-		;;
-	    *)
-		gasspaths=/usr/local/globus-install-1.1.1/development/mips-sgi-irix6.5-64_nothreads_standard_debug
-		sslpaths=/usr/local/ssl
-		;;
+	    ;;	# end of case thg
+	ncsa)
+	    # ncsa hosts
+	    OS=`uname -s`
+	    echo OS=$OS
+	    case "$OS" in
+		HP-UX)
+		    szlibpaths="/afs/ncsa/projects/hdf/packages/szip_new/HPUX-11.00"
+		    ;;
+		IRIX)
+		    szlibpaths="/afs/ncsa/projects/hdf/packages/szip_new/IRIX64-6.5-32bit"
+		    ;;
+		IRIX64)
+		    case "$CC" in
+		    *-n32)
+			szlibpaths="/afs/ncsa/projects/hdf/packages/szip_new/IRIX64-6.5-32bit"
+			;;
+		    *)
+			szlibpaths="/afs/ncsa/projects/hdf/packages/szip_new/IRIX64-6.5"
+			;;
+		    esac
+		    ;;
+		Linux)
+		    case `uname -m` in
+		    i686)
+			szlibpaths="/afs/ncsa/projects/hdf/packages/szip_new/Linux2.4"
+			;;
+		    *)
+			# Don't know.  Give a shot at standard places.
+			szlibpaths="/usr/ncsa /usr/sdt"
+			;;
+		    esac
+		    ;;
+		SunOS)
+		    szlibpaths="/afs/ncsa/projects/hdf/packages/szip_new/SunOS_5.8"
+		    ;;
+		*)
+		    # Don't know.  Give a shot at standard places.
+		    szlibpaths="/usr/ncsa /usr/sdt"
+		    ;;
 	    esac
+	    ;;	# end of case ncsa
+	unknown)
+	    # Unknow domain. Give a shot at the some standard places.
+	    szlibpaths="/usr/local"
 	    ;;
-	*)
-	    ;;
-    esac
-    echo gasspaths=$gasspaths
-    echo $sslpaths=$sslpaths
-    for x in $gasspaths dummy; do
-	if [ $x != dummy -a -f $x/lib/libglobus_gass_cache.a ]; then
-	   WITH_GASS="--with-gass=$x/include,$x/lib"
-	   break
-	fi
-    done
-    for x in $sslpaths dummy; do
-	if [ $x != dummy -a -f $x/lib/libssl.a ]; then
-	   WITH_SSL="--with-ssl=$x/lib"
-	   break
-	fi
-    done
+    esac	# end of case $mydomain
 
-    echo WITH_GASS="$WITH_GASS"
-    echo WITH_SSL="$WITH_SSL"
 
-}
 
 
-# Try locate the GASS software library
-# This is a hack because there is no consistent place to find
-# the valid HDF library.
-LOCATE_GASS()
-{
-    OS=`uname -s`
-    echo OS=$OS
-    case "$OS" in
-	IRIX64)
-	    case "$CC" in
-	    *-n32)
-		gasspaths=/usr/local/globus-install-1.1.1/development/mips-sgi-irix6.5-n32_nothreads_standard_debug
-		sslpaths=/usr/local/ssl-n32
-		;;
-	    *)
-		gasspaths=/usr/local/globus-install-1.1.1/development/mips-sgi-irix6.5-64_nothreads_standard_debug
-		sslpaths=/usr/local/ssl
-		;;
-	    esac
-	    ;;
-	*)
-	    ;;
-    esac
-    echo gasspaths=$gasspaths
-    echo $sslpaths=$sslpaths
-    for x in $gasspaths dummy; do
-	if [ $x != dummy -a -f $x/lib/libglobus_gass_cache.a ]; then
-	   WITH_GASS="--with-gass=$x/include,$x/lib"
-	   break
-	fi
-    done
-    for x in $sslpaths dummy; do
-	if [ $x != dummy -a -f $x/lib/libssl.a ]; then
-	   WITH_SSL="--with-ssl=$x/lib"
+
+    echo szlibpaths=$szlibpaths
+    for x in $szlibpaths dummy; do
+	if [ $x != dummy -a -f $x/include/szlib.h -a -f $x/lib/libsz.a ]; then
+	   WITH_SZLIB="--with-szlib=$x"
 	   break
 	fi
     done
 
-    echo WITH_GASS="$WITH_GASS"
-    echo WITH_SSL="$WITH_SSL"
-
+    echo WITH_SZLIB="$WITH_SZLIB"
 }
 
 
@@ -243,6 +235,7 @@ trap QUIT 0
 MAKE=${MAKE:-'gmake'}
 export MAKE
 CONFIGURE="CONFIG"
+CONFIG_OP=		# configure options
 CONFIG_ONLY=no		# default is configure and build
 NOEXEC=			# default to execute commands
 SRCDIRLIST=". ../hdf5"  # places to look for configure
@@ -255,8 +248,8 @@ while [ $# -gt 0 ]; do
 	    # do configure only
 	    CONFIG_ONLY=yes
 	    ;;
-	-gass)
-	    LOCATE_GASS
+	-szlib)
+	    LOCATE_SZLIB
 	    ;;
 	-help)
 	    USAGE
@@ -269,6 +262,15 @@ while [ $# -gt 0 ]; do
 	    shift
 	    SRCDIRLIST="$1"
 	    ;;
+	-cxx)
+	    CONFIG_CXX="--enable-cxx"
+	    ;;
+	-fortran)
+	    CONFIG_FORTRAN="--enable-fortran"
+	    ;;
+	-pp)
+	    CONFIG_PARALLEL="--enable-parallel"
+	    ;;
 	*)	# Quit parsing
 	    break
 	    ;;
@@ -294,11 +296,14 @@ if [ x-$SRCDIR = x-dummy ]; then
     exit 1
 fi
 
+# Setup Configure options
+CONFIG_OP="$WITH_SZLIB $CONFIG_FORTRAN $CONFIG_CXX $CONFIG_PARALLEL"
+
 # Configure
 # no configure if already done.
 if [ ! -f config.status ]; then
-    CONFIGURE="$CONFIGURE $WITH_SSL $WITH_GASS"
-    STEP "Configure HDF5..." "$CONFIGURE $*" "#config"
+    CONFIGURE="$CONFIGURE $CONFIG_OP $*"
+    STEP "Configure HDF5..." "$CONFIGURE" "#config"
 else
     STEP "Confiugre Skipped" "echo Confiugre Skipped" "#config"
 fi
@@ -311,8 +316,11 @@ fi
 # Compile
 STEP "Make HDF5..." "$MAKE" "#make"
 
-# Tests
-STEP "Testing HDF5..." "$MAKE check" "#test"
+# Serial tests 
+STEP "Testing HDF5 serial parts..." "$MAKE check-s" "#test-s"
+
+# Parallel tests
+STEP "Testing HDF5 parallel parts..." "$MAKE check-p" "#test-p"
 
 # all done
 echo "No Errors encountered"
diff --git a/bin/config.guess b/bin/config.guess
index 278f9e9..f32079a 100755
--- a/bin/config.guess
+++ b/bin/config.guess
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
-#   Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+#   Free Software Foundation, Inc.
 
-timestamp='2007-07-22'
+timestamp='2008-01-23'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -56,8 +56,8 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -532,7 +532,7 @@ EOF
 		echo rs6000-ibm-aix3.2
 	fi
 	exit ;;
-    *:AIX:*:[45])
+    *:AIX:*:[456])
 	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
 	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
 		IBM_ARCH=rs6000
@@ -799,6 +799,9 @@ EOF
 	    EM64T | authenticamd)
 		echo x86_64-unknown-interix${UNAME_RELEASE}
 		exit ;;
+	    IA64)
+		echo ia64-unknown-interix${UNAME_RELEASE}
+		exit ;;
 	esac ;;
     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
 	echo i${UNAME_MACHINE}-pc-mks
@@ -833,7 +836,14 @@ EOF
 	echo ${UNAME_MACHINE}-pc-minix
 	exit ;;
     arm*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	eval $set_cc_for_build
+	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
+	    | grep -q __ARM_EABI__
+	then
+	    echo ${UNAME_MACHINE}-unknown-linux-gnu
+	else
+	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+	fi
 	exit ;;
     avr32*:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-gnu
@@ -954,8 +964,8 @@ EOF
     x86_64:Linux:*:*)
 	echo x86_64-unknown-linux-gnu
 	exit ;;
-    xtensa:Linux:*:*)
-    	echo xtensa-unknown-linux-gnu
+    xtensa*:Linux:*:*)
+    	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     i*86:Linux:*:*)
 	# The BFD linker knows what the default object file format is, so
@@ -1474,9 +1484,9 @@ This script, last modified $timestamp, has failed to recognize
 the operating system you are using. It is advised that you
 download the most up to date version of the config scripts from
 
-  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
 and
-  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
 
 If the version you run ($0) is already up to date, please
 send the following data and any information you think might be
diff --git a/bin/config.sub b/bin/config.sub
index 1761d8b..6759825 100755
--- a/bin/config.sub
+++ b/bin/config.sub
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
-#   Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+#   Free Software Foundation, Inc.
 
-timestamp='2007-06-28'
+timestamp='2008-01-16'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -72,8 +72,8 @@ Report bugs and patches to <config-patches at gnu.org>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -369,10 +369,14 @@ case $basic_machine in
 	| v850-* | v850e-* | vax-* \
 	| we32k-* \
 	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
-	| xstormy16-* | xtensa-* \
+	| xstormy16-* | xtensa*-* \
 	| ymp-* \
 	| z8k-*)
 		;;
+	# Recognize the basic CPU types without company name, with glob match.
+	xtensa*)
+		basic_machine=$basic_machine-unknown
+		;;
 	# Recognize the various machine names and aliases which stand
 	# for a CPU type and a company and sometimes even an OS.
 	386bsd)
@@ -443,6 +447,14 @@ case $basic_machine in
 		basic_machine=ns32k-sequent
 		os=-dynix
 		;;
+	blackfin)
+		basic_machine=bfin-unknown
+		os=-linux
+		;;
+	blackfin-*)
+		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
+		os=-linux
+		;;
 	c90)
 		basic_machine=c90-cray
 		os=-unicos
@@ -668,6 +680,14 @@ case $basic_machine in
 		basic_machine=m68k-isi
 		os=-sysv
 		;;
+	m68knommu)
+		basic_machine=m68k-unknown
+		os=-linux
+		;;
+	m68knommu-*)
+		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
+		os=-linux
+		;;
 	m88k-omron*)
 		basic_machine=m88k-omron
 		;;
@@ -813,6 +833,14 @@ case $basic_machine in
 		basic_machine=i860-intel
 		os=-osf
 		;;
+	parisc)
+		basic_machine=hppa-unknown
+		os=-linux
+		;;
+	parisc-*)
+		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
+		os=-linux
+		;;
 	pbd)
 		basic_machine=sparc-tti
 		;;
@@ -1021,6 +1049,10 @@ case $basic_machine in
 		basic_machine=tic6x-unknown
 		os=-coff
 		;;
+	tile*)
+		basic_machine=tile-unknown
+		os=-linux-gnu
+		;;
 	tx39)
 		basic_machine=mipstx39-unknown
 		;;
diff --git a/bin/ltmain.sh b/bin/ltmain.sh
index f924d30..b2f25d9 100644
--- a/bin/ltmain.sh
+++ b/bin/ltmain.sh
@@ -2,7 +2,7 @@
 # NOTE: Changing this file will not affect anything until you rerun configure.
 #
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
-# 2007  Free Software Foundation, Inc.
+# 2007, 2008  Free Software Foundation, Inc.
 # Originally by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
 #
 # This program is free software; you can redistribute it and/or modify
@@ -43,8 +43,8 @@ EXIT_FAILURE=1
 
 PROGRAM=ltmain.sh
 PACKAGE=libtool
-VERSION="1.5.24 Debian 1.5.24-1"
-TIMESTAMP=" (1.1220.2.456 2007/06/24 02:25:32)"
+VERSION="1.5.26 Debian 1.5.26-2"
+TIMESTAMP=" (1.1220.2.493 2008/02/01 16:58:18)"
 
 # Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
@@ -113,15 +113,21 @@ esac
 # These must not be set unconditionally because not all systems understand
 # e.g. LANG=C (notably SCO).
 # We save the old values to restore during execute mode.
-for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+lt_env=
+for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
 do
   eval "if test \"\${$lt_var+set}\" = set; then
 	  save_$lt_var=\$$lt_var
+	  lt_env=\"$lt_var=\$$lt_var \$lt_env\"
 	  $lt_var=C
 	  export $lt_var
 	fi"
 done
 
+if test -n "$lt_env"; then
+  lt_env="env $lt_env"
+fi
+
 # Make sure IFS has a sensible default
 lt_nl='
 '
@@ -485,7 +491,7 @@ do
     echo "\
 $PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP
 
-Copyright (C) 2007  Free Software Foundation, Inc.
+Copyright (C) 2008  Free Software Foundation, Inc.
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
     exit $?
@@ -788,6 +794,7 @@ if test -z "$show_help"; then
     *.for) xform=for ;;
     *.java) xform=java ;;
     *.obj) xform=obj ;;
+    *.sx) xform=sx ;;
     esac
 
     libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
@@ -956,7 +963,7 @@ EOF
       $run $rm "$lobj" "$output_obj"
 
       $show "$command"
-      if $run eval "$command"; then :
+      if $run eval $lt_env "$command"; then :
       else
 	test -n "$output_obj" && $run $rm $removelist
 	exit $EXIT_FAILURE
@@ -1028,7 +1035,7 @@ EOF
       command="$command$suppress_output"
       $run $rm "$obj" "$output_obj"
       $show "$command"
-      if $run eval "$command"; then :
+      if $run eval $lt_env "$command"; then :
       else
 	$run $rm $removelist
 	exit $EXIT_FAILURE
@@ -1161,6 +1168,7 @@ EOF
     thread_safe=no
     vinfo=
     vinfo_number=no
+    single_module="${wl}-single_module"
 
     func_infer_tag $base_compile
 
@@ -1646,6 +1654,11 @@ EOF
 	continue
 	;;
 
+      -multi_module)
+	single_module="${wl}-multi_module"
+	continue
+	;;
+
       -module)
 	module=yes
 	continue
@@ -2152,7 +2165,12 @@ EOF
 	    continue
 	  fi
 	  name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
-	  for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
+	  if test "$linkmode" = lib; then
+	    searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
+	  else
+	    searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
+	  fi
+	  for searchdir in $searchdirs; do
 	    for search_ext in .la $std_shrext .so .a; do
 	      # Search the libtool library
 	      lib="$searchdir/lib${name}${search_ext}"
@@ -2948,12 +2966,18 @@ EOF
 		  # we do not want to link against static libs,
 		  # but need to link against shared
 		  eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
+		  eval deplibdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
 		  if test -n "$deplibrary_names" ; then
 		    for tmp in $deplibrary_names ; do
 		      depdepl=$tmp
 		    done
-		    if test -f "$path/$depdepl" ; then
+		    if test -f "$deplibdir/$depdepl" ; then
+		      depdepl="$deplibdir/$depdepl"
+	      	    elif test -f "$path/$depdepl" ; then
 		      depdepl="$path/$depdepl"
+		    else
+		      # Can't find it, oh well...
+		      depdepl=
 		    fi
 		    # do not add paths which are already there
 		    case " $newlib_search_path " in
@@ -3101,9 +3125,10 @@ EOF
 
     case $linkmode in
     oldlib)
-      if test -n "$deplibs"; then
-	$echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2
-      fi
+      case " $deplibs" in
+      *\ -l* | *\ -L*)
+	$echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 ;;
+      esac
 
       if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
 	$echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
@@ -4245,9 +4270,10 @@ EOF
       ;;
 
     obj)
-      if test -n "$deplibs"; then
-	$echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
-      fi
+      case " $deplibs" in
+      *\ -l* | *\ -L*)
+	$echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 ;;
+      esac
 
       if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
 	$echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2
@@ -6486,7 +6512,7 @@ relink_command=\"$relink_command\""
       fi
 
       # Restore saved environment variables
-      for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+      for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
       do
 	eval "if test \"\${save_$lt_var+set}\" = set; then
 		$lt_var=\$save_$lt_var; export $lt_var
diff --git a/c++/aclocal.m4 b/c++/aclocal.m4
index 06922b4..07b0c2d 100644
--- a/c++/aclocal.m4
+++ b/c++/aclocal.m4
@@ -1,7 +1,7 @@
-# generated automatically by aclocal 1.9.6 -*- Autoconf -*-
+# generated automatically by aclocal 1.10.1 -*- Autoconf -*-
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005  Free Software Foundation, Inc.
+# 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -13,7 +13,7 @@
 
 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
 
-# serial 51 Debian 1.5.24-1 AC_PROG_LIBTOOL
+# serial 52 Debian 1.5.26-2 AC_PROG_LIBTOOL
 
 
 # AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
@@ -101,7 +101,6 @@ AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
 AC_REQUIRE([AC_OBJEXT])dnl
 AC_REQUIRE([AC_EXEEXT])dnl
 dnl
-
 AC_LIBTOOL_SYS_MAX_CMD_LEN
 AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
 AC_LIBTOOL_OBJDIR
@@ -203,6 +202,8 @@ file_magic*)
   ;;
 esac
 
+_LT_REQUIRED_DARWIN_CHECKS
+
 AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
 AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
 enable_win32_dll=yes, enable_win32_dll=no)
@@ -282,9 +283,80 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 ])# _LT_LINKER_BOILERPLATE
 
+# _LT_REQUIRED_DARWIN_CHECKS
+# --------------------------
+# Check for some things on darwin
+AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS],[
+  case $host_os in
+    rhapsody* | darwin*)
+    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
+    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
+
+    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
+      [lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+   # By default we will add the -single_module flag. You can override
+   # by either setting the environment variable LT_MULTI_MODULE
+   # non-empty at configure time, or by adding -multi_module to the
+   # link flags.
+   echo "int foo(void){return 1;}" > conftest.c
+   $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+     -dynamiclib ${wl}-single_module conftest.c
+   if test -f libconftest.dylib; then
+     lt_cv_apple_cc_single_mod=yes
+     rm -rf libconftest.dylib*
+   fi
+   rm conftest.c
+      fi])
+    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
+      [lt_cv_ld_exported_symbols_list],
+      [lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
+   [lt_cv_ld_exported_symbols_list=yes],
+   [lt_cv_ld_exported_symbols_list=no])
+   LDFLAGS="$save_LDFLAGS"
+    ])
+    case $host_os in
+    rhapsody* | darwin1.[[0123]])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+     _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*)
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+   10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
+     _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+   10.[[012]]*)
+     _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+   10.*)
+     _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms="~$NMEDIT -s \$output_objdir/\${libname}-symbols.expsym \${lib}"
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil="~$DSYMUTIL \$lib || :"
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+])
 
 # _LT_AC_SYS_LIBPATH_AIX
 # ----------------------
@@ -609,7 +681,11 @@ sparc*-*solaris*)
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+        if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -702,7 +778,7 @@ AC_CACHE_CHECK([$1], [$2],
        $2=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 ])
 
@@ -973,7 +1049,7 @@ else
     AC_CHECK_FUNC([shl_load],
 	  [lt_cv_dlopen="shl_load"],
       [AC_CHECK_LIB([dld], [shl_load],
-	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
+	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
 	[AC_CHECK_FUNC([dlopen],
 	      [lt_cv_dlopen="dlopen"],
 	  [AC_CHECK_LIB([dl], [dlopen],
@@ -981,7 +1057,7 @@ else
 	    [AC_CHECK_LIB([svld], [dlopen],
 		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
 	      [AC_CHECK_LIB([dld], [dld_link],
-		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
+		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
 	      ])
 	    ])
 	  ])
@@ -1298,7 +1374,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[[4-9]]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -1831,6 +1907,13 @@ esac
 AC_MSG_RESULT([$dynamic_linker])
 test "$dynamic_linker" = no && can_build_shared=no
 
+AC_CACHE_VAL([lt_cv_sys_lib_search_path_spec],
+[lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"])
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+AC_CACHE_VAL([lt_cv_sys_lib_dlsearch_path_spec],
+[lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"])
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -2330,7 +2413,7 @@ lt_cv_deplibs_check_method='unknown'
 # whether `pass_all' will *always* work, you probably want this one.
 
 case $host_os in
-aix4* | aix5*)
+aix[[4-9]]*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
@@ -2766,7 +2849,7 @@ aix3*)
   fi
   ;;
 
-aix4* | aix5*)
+aix[[4-9]]*)
   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
     test "$enable_shared" = yes && enable_static=no
   fi
@@ -2823,6 +2906,7 @@ _LT_AC_TAGVAR(postdep_objects, $1)=
 _LT_AC_TAGVAR(predeps, $1)=
 _LT_AC_TAGVAR(postdeps, $1)=
 _LT_AC_TAGVAR(compiler_lib_search_path, $1)=
+_LT_AC_TAGVAR(compiler_lib_search_dirs, $1)=
 
 # Source file extension for C++ test sources.
 ac_ext=cpp
@@ -2932,7 +3016,7 @@ case $host_os in
     # FIXME: insert proper C++ library support
     _LT_AC_TAGVAR(ld_shlibs, $1)=no
     ;;
-  aix4* | aix5*)
+  aix[[4-9]]*)
     if test "$host_cpu" = ia64; then
       # On IA64, the linker does run time linking by default, so we don't
       # have to do anything special.
@@ -2945,7 +3029,7 @@ case $host_os in
       # Test if we are trying to use run time linking or normal
       # AIX style linking. If -brtl is somewhere in LDFLAGS, we
       # need to do runtime linking.
-      case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
+      case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
 	for ld_flag in $LDFLAGS; do
 	  case $ld_flag in
 	  *-brtl*)
@@ -3091,51 +3175,23 @@ case $host_os in
     fi
   ;;
       darwin* | rhapsody*)
-        case $host_os in
-        rhapsody* | darwin1.[[012]])
-         _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
-         ;;
-       *) # Darwin 1.3 on
-         if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
-           _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-         else
-           case ${MACOSX_DEPLOYMENT_TARGET} in
-             10.[[012]])
-               _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-               ;;
-             10.*)
-               _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
-               ;;
-           esac
-         fi
-         ;;
-        esac
       _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
       _LT_AC_TAGVAR(hardcode_direct, $1)=no
       _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
       _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
       _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=''
       _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
-
-    if test "$GXX" = yes ; then
-      lt_int_apple_cc_single_mod=no
+      _LT_AC_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
+      if test "$GXX" = yes ; then
       output_verbose_link_cmd='echo'
-      if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then
-       lt_int_apple_cc_single_mod=yes
+      _LT_AC_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+      _LT_AC_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+      _LT_AC_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+      _LT_AC_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+      if test "$lt_cv_apple_cc_single_mod" != "yes"; then
+        _LT_AC_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
+        _LT_AC_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
       fi
-      if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
-       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      else
-          _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-        fi
-        _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-        # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-          if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
-            _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-          else
-            _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-          fi
-            _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
       else
       case $cc_basename in
         xlc*)
@@ -3386,7 +3442,7 @@ case $host_os in
 	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
 	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
 	;;
-      pgCC*)
+      pgCC* | pgcpp*)
         # Portland Group C++ compiler
 	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
   	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
@@ -3821,7 +3877,8 @@ lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
 # compiler output when linking a shared library.
 # Parse the compiler output and extract the necessary
 # objects, libraries and library flags.
-AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[
+AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
 dnl we can't use the lt_simple_compile_test_code here,
 dnl because it contains code intended for an executable,
 dnl not a library.  It's possible we should let each
@@ -3946,6 +4003,11 @@ fi
 
 $rm -f confest.$objext
 
+_LT_AC_TAGVAR(compiler_lib_search_dirs, $1)=
+if test -n "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then
+  _LT_AC_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_AC_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+fi
+
 # PORTME: override above test on systems where it is broken
 ifelse([$1],[CXX],
 [case $host_os in
@@ -4002,7 +4064,6 @@ solaris*)
   ;;
 esac
 ])
-
 case " $_LT_AC_TAGVAR(postdeps, $1) " in
 *" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
 esac
@@ -4087,7 +4148,7 @@ aix3*)
     postinstall_cmds='$RANLIB $lib'
   fi
   ;;
-aix4* | aix5*)
+aix[[4-9]]*)
   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
     test "$enable_shared" = yes && enable_static=no
   fi
@@ -4264,6 +4325,7 @@ if test -f "$ltmain"; then
     _LT_AC_TAGVAR(predeps, $1) \
     _LT_AC_TAGVAR(postdeps, $1) \
     _LT_AC_TAGVAR(compiler_lib_search_path, $1) \
+    _LT_AC_TAGVAR(compiler_lib_search_dirs, $1) \
     _LT_AC_TAGVAR(archive_cmds, $1) \
     _LT_AC_TAGVAR(archive_expsym_cmds, $1) \
     _LT_AC_TAGVAR(postinstall_cmds, $1) \
@@ -4326,7 +4388,7 @@ ifelse([$1], [],
 # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
 # Free Software Foundation, Inc.
 #
 # This file is part of GNU Libtool:
@@ -4563,6 +4625,10 @@ predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1)
 # shared library.
 postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1)
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_dirs, $1)
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
@@ -4912,7 +4978,7 @@ EOF
     echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -4969,7 +5035,8 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
       # (--disable-auto-import) libraries
-      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
+      m4_if([$1], [GCJ], [],
+	[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
       ;;
     darwin* | rhapsody*)
       # PIC is the default on this platform
@@ -5006,7 +5073,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
     esac
   else
     case $host_os in
-      aix4* | aix5*)
+      aix[[4-9]]*)
 	# All AIX code is PIC.
 	if test "$host_cpu" = ia64; then
 	  # AIX 5 now supports IA64 processor
@@ -5102,7 +5169,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
 	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
 	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
 	    ;;
-	  pgCC*)
+	  pgCC* | pgcpp*)
 	    # Portland Group C++ compiler.
 	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
 	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
@@ -5253,7 +5320,8 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
       # (--disable-auto-import) libraries
-      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
+      m4_if([$1], [GCJ], [],
+	[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
       ;;
 
     darwin* | rhapsody*)
@@ -5323,7 +5391,8 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])
     mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
-      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
+      m4_if([$1], [GCJ], [],
+	[_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
       ;;
 
     hpux9* | hpux10* | hpux11*)
@@ -5460,7 +5529,7 @@ AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)])
 #
 if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then
   AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works],
-    _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1),
+    _LT_AC_TAGVAR(lt_cv_prog_compiler_pic_works, $1),
     [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [],
     [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in
      "" | " "*) ;;
@@ -5484,7 +5553,7 @@ esac
 #
 wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_AC_TAGVAR(lt_prog_compiler_static, $1)\"
 AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
-  _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
+  _LT_AC_TAGVAR(lt_cv_prog_compiler_static_works, $1),
   $lt_tmp_static_flag,
   [],
   [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
@@ -5500,7 +5569,7 @@ AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
 ifelse([$1],[CXX],[
   _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   case $host_os in
-  aix4* | aix5*)
+  aix[[4-9]]*)
     # If we're using GNU nm, then we don't want the "-C" option.
     # -C means demangle to AIX nm, but means don't demangle with GNU nm
     if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
@@ -5522,6 +5591,7 @@ ifelse([$1],[CXX],[
     _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
   esac
+  _LT_AC_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
 ],[
   runpath_var=
   _LT_AC_TAGVAR(allow_undefined_flag, $1)=
@@ -5552,12 +5622,14 @@ ifelse([$1],[CXX],[
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_"
+  _LT_AC_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
+dnl Note also adjust exclude_expsyms for C++ above.
   extract_expsyms_cmds=
   # Just being paranoid about ensuring that cc_basename is set.
   _LT_CC_BASENAME([$compiler])
@@ -5607,7 +5679,7 @@ ifelse([$1],[CXX],[
 
     # See if GNU ld supports shared libraries.
     case $host_os in
-    aix3* | aix4* | aix5*)
+    aix[[3-9]]*)
       # On AIX/PPC, the GNU linker is very broken
       if test "$host_cpu" != ia64; then
 	_LT_AC_TAGVAR(ld_shlibs, $1)=no
@@ -5827,7 +5899,7 @@ _LT_EOF
       fi
       ;;
 
-    aix4* | aix5*)
+    aix[[4-9]]*)
       if test "$host_cpu" = ia64; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
@@ -5847,7 +5919,7 @@ _LT_EOF
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
 	# need to do runtime linking.
-	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
+	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
 	  for ld_flag in $LDFLAGS; do
   	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
   	    aix_use_runtimelinking=yes
@@ -6007,11 +6079,10 @@ _LT_EOF
       _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
     if test "$GCC" = yes ; then
     	output_verbose_link_cmd='echo'
-        _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+        _LT_AC_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+        _LT_AC_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+        _LT_AC_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+        _LT_AC_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
     else
       case $cc_basename in
         xlc*)
diff --git a/c++/configure b/c++/configure
index 0c2ae5f..b2856ce 100755
--- a/c++/configure
+++ b/c++/configure
@@ -1,7 +1,7 @@
 #! /bin/sh
-# From configure.in Id: configure.in 14030 2007-07-31 03:04:21Z epourmal .
+# From configure.in Id: configure.in 14461 2008-01-28 19:59:31Z epourmal .
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for HDF5 C++ 1.6.6.
+# Generated by GNU Autoconf 2.61 for HDF5 C++ 1.6.7.
 #
 # Report bugs to <help at hdfgroup.org>.
 #
@@ -729,8 +729,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
 # Identity of this package.
 PACKAGE_NAME='HDF5 C++'
 PACKAGE_TARNAME='hdf5-c--'
-PACKAGE_VERSION='1.6.6'
-PACKAGE_STRING='HDF5 C++ 1.6.6'
+PACKAGE_VERSION='1.6.7'
+PACKAGE_STRING='HDF5 C++ 1.6.7'
 PACKAGE_BUGREPORT='help at hdfgroup.org'
 
 ac_unique_file="src/H5Library.cpp"
@@ -843,6 +843,8 @@ ECHO
 AR
 RANLIB
 STRIP
+DSYMUTIL
+NMEDIT
 CPP
 F77
 FFLAGS
@@ -1376,7 +1378,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures HDF5 C++ 1.6.6 to adapt to many kinds of systems.
+\`configure' configures HDF5 C++ 1.6.7 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1441,7 +1443,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of HDF5 C++ 1.6.6:";;
+     short | recursive ) echo "Configuration of HDF5 C++ 1.6.7:";;
    esac
   cat <<\_ACEOF
 
@@ -1458,7 +1460,6 @@ Optional Features:
                           [default=no]
   --enable-linux-lfs      Enable support for large (64-bit) files on Linux.
                           [default=check]
-  --enable-stream-vfd     Build the Stream Virtual File Driver [default=no]
   --enable-hl             Enable the high level library [default=yes]
 
 Optional Packages:
@@ -1552,7 +1553,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-HDF5 C++ configure 1.6.6
+HDF5 C++ configure 1.6.7
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1566,7 +1567,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by HDF5 C++ $as_me 1.6.6, which was
+It was created by HDF5 C++ $as_me 1.6.7, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -4264,7 +4265,7 @@ lt_cv_deplibs_check_method='unknown'
 # whether `pass_all' will *always* work, you probably want this one.
 
 case $host_os in
-aix4* | aix5*)
+aix[4-9]*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
@@ -4480,7 +4481,7 @@ ia64-*-hpux*)
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 4483 "configure"' > conftest.$ac_ext
+  echo '#line 4484 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -4652,7 +4653,11 @@ sparc*-*solaris*)
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+        if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -5782,7 +5787,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
 # Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
-
 # find the maximum length of command line arguments
 { echo "$as_me:$LINENO: checking the maximum length of command line arguments" >&5
 echo $ECHO_N "checking the maximum length of command line arguments... $ECHO_C" >&6; }
@@ -6097,7 +6101,7 @@ EOF
     echo "$progname: failed program was:" >&5
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -6657,6 +6661,318 @@ fi
   ;;
 esac
 
+
+  case $host_os in
+    rhapsody* | darwin*)
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$DSYMUTIL"; then
+  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+  { echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+echo "${ECHO_T}$DSYMUTIL" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+  ac_ct_DSYMUTIL=$DSYMUTIL
+  # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_DSYMUTIL"; then
+  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+  { echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+echo "${ECHO_T}$ac_ct_DSYMUTIL" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+  if test "x$ac_ct_DSYMUTIL" = x; then
+    DSYMUTIL=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&5
+echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&2;}
+ac_tool_warned=yes ;;
+esac
+    DSYMUTIL=$ac_ct_DSYMUTIL
+  fi
+else
+  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NMEDIT"; then
+  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+  { echo "$as_me:$LINENO: result: $NMEDIT" >&5
+echo "${ECHO_T}$NMEDIT" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+  ac_ct_NMEDIT=$NMEDIT
+  # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NMEDIT"; then
+  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_ac_ct_NMEDIT="nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+  { echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+echo "${ECHO_T}$ac_ct_NMEDIT" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+  if test "x$ac_ct_NMEDIT" = x; then
+    NMEDIT=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&5
+echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&2;}
+ac_tool_warned=yes ;;
+esac
+    NMEDIT=$ac_ct_NMEDIT
+  fi
+else
+  NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+
+    { echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+echo $ECHO_N "checking for -single_module linker flag... $ECHO_C" >&6; }
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+   # By default we will add the -single_module flag. You can override
+   # by either setting the environment variable LT_MULTI_MODULE
+   # non-empty at configure time, or by adding -multi_module to the
+   # link flags.
+   echo "int foo(void){return 1;}" > conftest.c
+   $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+     -dynamiclib ${wl}-single_module conftest.c
+   if test -f libconftest.dylib; then
+     lt_cv_apple_cc_single_mod=yes
+     rm -rf libconftest.dylib*
+   fi
+   rm conftest.c
+      fi
+fi
+{ echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+echo "${ECHO_T}$lt_cv_apple_cc_single_mod" >&6; }
+    { echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+echo $ECHO_N "checking for -exported_symbols_list linker flag... $ECHO_C" >&6; }
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest$ac_exeext &&
+       $as_test_x conftest$ac_exeext; then
+  lt_cv_ld_exported_symbols_list=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	lt_cv_ld_exported_symbols_list=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+      conftest$ac_exeext conftest.$ac_ext
+   LDFLAGS="$save_LDFLAGS"
+
+fi
+{ echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+echo "${ECHO_T}$lt_cv_ld_exported_symbols_list" >&6; }
+    case $host_os in
+    rhapsody* | darwin1.[0123])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+     _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*)
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+   10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+     _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+   10.[012]*)
+     _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+   10.*)
+     _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms="~$NMEDIT -s \$output_objdir/\${libname}-symbols.expsym \${lib}"
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil="~$DSYMUTIL \$lib || :"
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+
+
 enable_dlopen=no
 enable_win32_dll=no
 
@@ -6722,7 +7038,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 
@@ -6750,11 +7066,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:6753: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7069: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:6757: \$? = $ac_status" >&5
+   echo "$as_me:7073: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7024,10 +7340,10 @@ if test -n "$lt_prog_compiler_pic"; then
 
 { echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_pic_works+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works=no
+  lt_cv_prog_compiler_pic_works=no
   ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
@@ -7040,27 +7356,27 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7043: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7359: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7047: \$? = $ac_status" >&5
+   echo "$as_me:7363: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works=yes
+       lt_cv_prog_compiler_pic_works=yes
      fi
    fi
    $rm conftest*
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works" >&6; }
 
-if test x"$lt_prog_compiler_pic_works" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -7087,10 +7403,10 @@ esac
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
 { echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_static_works+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works=no
+  lt_cv_prog_compiler_static_works=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -7103,20 +7419,20 @@ else
        $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works=yes
+         lt_cv_prog_compiler_static_works=yes
        fi
      else
-       lt_prog_compiler_static_works=yes
+       lt_cv_prog_compiler_static_works=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works" >&6; }
 
-if test x"$lt_prog_compiler_static_works" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
     :
 else
     lt_prog_compiler_static=
@@ -7144,11 +7460,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7147: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7463: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7151: \$? = $ac_status" >&5
+   echo "$as_me:7467: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7228,12 +7544,13 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
   # Just being paranoid about ensuring that cc_basename is set.
   for cc_temp in $compiler""; do
@@ -7292,7 +7609,7 @@ cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 
     # See if GNU ld supports shared libraries.
     case $host_os in
-    aix3* | aix4* | aix5*)
+    aix[3-9]*)
       # On AIX/PPC, the GNU linker is very broken
       if test "$host_cpu" != ia64; then
 	ld_shlibs=no
@@ -7512,7 +7829,7 @@ _LT_EOF
       fi
       ;;
 
-    aix4* | aix5*)
+    aix[4-9]*)
       if test "$host_cpu" = ia64; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
@@ -7532,7 +7849,7 @@ _LT_EOF
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
 	# need to do runtime linking.
-	case $host_os in aix4.[23]|aix4.[23].*|aix5*)
+	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
 	  for ld_flag in $LDFLAGS; do
   	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
   	    aix_use_runtimelinking=yes
@@ -7804,11 +8121,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
       link_all_deplibs=yes
     if test "$GCC" = yes ; then
     	output_verbose_link_cmd='echo'
-        archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-      archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      module_expsym_cmds='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+        archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+        module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+        archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+        module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
     else
       case $cc_basename in
         xlc*)
@@ -8328,7 +8644,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -8862,6 +9178,21 @@ esac
 echo "${ECHO_T}$dynamic_linker" >&6; }
 test "$dynamic_linker" = no && can_build_shared=no
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"
+fi
+
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"
+fi
+
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -9181,7 +9512,7 @@ fi
 { echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6; }
 if test $ac_cv_lib_dld_shl_load = yes; then
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
 else
   { echo "$as_me:$LINENO: checking for dlopen" >&5
 echo $ECHO_N "checking for dlopen... $ECHO_C" >&6; }
@@ -9457,7 +9788,7 @@ fi
 { echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6; }
 if test $ac_cv_lib_dld_dld_link = yes; then
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
 fi
 
 
@@ -9506,7 +9837,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 9509 "configure"
+#line 9840 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -9606,7 +9937,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 9609 "configure"
+#line 9940 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -9733,7 +10064,7 @@ aix3*)
   fi
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
     test "$enable_shared" = yes && enable_static=no
   fi
@@ -9789,6 +10120,7 @@ if test -f "$ltmain"; then
     predeps \
     postdeps \
     compiler_lib_search_path \
+    compiler_lib_search_dirs \
     archive_cmds \
     archive_expsym_cmds \
     postinstall_cmds \
@@ -9849,7 +10181,7 @@ echo "$as_me: creating $ofile" >&6;}
 # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
 # Free Software Foundation, Inc.
 #
 # This file is part of GNU Libtool:
@@ -10085,6 +10417,10 @@ predeps=$lt_predeps
 # shared library.
 postdeps=$lt_postdeps
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path
@@ -10333,6 +10669,7 @@ postdep_objects_CXX=
 predeps_CXX=
 postdeps_CXX=
 compiler_lib_search_path_CXX=
+compiler_lib_search_dirs_CXX=
 
 # Source file extension for C++ test sources.
 ac_ext=cpp
@@ -10370,7 +10707,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 # Allow CC to be a program name with arguments.
@@ -10577,7 +10914,7 @@ case $host_os in
     # FIXME: insert proper C++ library support
     ld_shlibs_CXX=no
     ;;
-  aix4* | aix5*)
+  aix[4-9]*)
     if test "$host_cpu" = ia64; then
       # On IA64, the linker does run time linking by default, so we don't
       # have to do anything special.
@@ -10590,7 +10927,7 @@ case $host_os in
       # Test if we are trying to use run time linking or normal
       # AIX style linking. If -brtl is somewhere in LDFLAGS, we
       # need to do runtime linking.
-      case $host_os in aix4.[23]|aix4.[23].*|aix5*)
+      case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
 	for ld_flag in $LDFLAGS; do
 	  case $ld_flag in
 	  *-brtl*)
@@ -10848,51 +11185,23 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
     fi
   ;;
       darwin* | rhapsody*)
-        case $host_os in
-        rhapsody* | darwin1.[012])
-         allow_undefined_flag_CXX='${wl}-undefined ${wl}suppress'
-         ;;
-       *) # Darwin 1.3 on
-         if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
-           allow_undefined_flag_CXX='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-         else
-           case ${MACOSX_DEPLOYMENT_TARGET} in
-             10.[012])
-               allow_undefined_flag_CXX='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-               ;;
-             10.*)
-               allow_undefined_flag_CXX='${wl}-undefined ${wl}dynamic_lookup'
-               ;;
-           esac
-         fi
-         ;;
-        esac
       archive_cmds_need_lc_CXX=no
       hardcode_direct_CXX=no
       hardcode_automatic_CXX=yes
       hardcode_shlibpath_var_CXX=unsupported
       whole_archive_flag_spec_CXX=''
       link_all_deplibs_CXX=yes
-
-    if test "$GXX" = yes ; then
-      lt_int_apple_cc_single_mod=no
+      allow_undefined_flag_CXX="$_lt_dar_allow_undefined"
+      if test "$GXX" = yes ; then
       output_verbose_link_cmd='echo'
-      if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then
-       lt_int_apple_cc_single_mod=yes
+      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+      if test "$lt_cv_apple_cc_single_mod" != "yes"; then
+        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
+        archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
       fi
-      if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
-       archive_cmds_CXX='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      else
-          archive_cmds_CXX='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-        fi
-        module_cmds_CXX='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-        # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-          if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
-            archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-          else
-            archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-          fi
-            module_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
       else
       case $cc_basename in
         xlc*)
@@ -11143,7 +11452,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
 	export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
 	whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
 	;;
-      pgCC*)
+      pgCC* | pgcpp*)
         # Portland Group C++ compiler
 	archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
   	archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
@@ -11550,7 +11859,6 @@ test "$ld_shlibs_CXX" = no && can_build_shared=no
 GCC_CXX="$GXX"
 LD_CXX="$LD"
 
-
 cat > conftest.$ac_ext <<EOF
 class Foo
 {
@@ -11652,6 +11960,11 @@ fi
 
 $rm -f confest.$objext
 
+compiler_lib_search_dirs_CXX=
+if test -n "$compiler_lib_search_path_CXX"; then
+  compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+fi
+
 # PORTME: override above test on systems where it is broken
 case $host_os in
 interix[3-9]*)
@@ -11707,7 +12020,6 @@ solaris*)
   ;;
 esac
 
-
 case " $postdeps_CXX " in
 *" -lc "*) archive_cmds_need_lc_CXX=no ;;
 esac
@@ -11783,7 +12095,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; }
     esac
   else
     case $host_os in
-      aix4* | aix5*)
+      aix[4-9]*)
 	# All AIX code is PIC.
 	if test "$host_cpu" = ia64; then
 	  # AIX 5 now supports IA64 processor
@@ -11879,7 +12191,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; }
 	    lt_prog_compiler_pic_CXX='-KPIC'
 	    lt_prog_compiler_static_CXX='-static'
 	    ;;
-	  pgCC*)
+	  pgCC* | pgcpp*)
 	    # Portland Group C++ compiler.
 	    lt_prog_compiler_wl_CXX='-Wl,'
 	    lt_prog_compiler_pic_CXX='-fpic'
@@ -12010,10 +12322,10 @@ if test -n "$lt_prog_compiler_pic_CXX"; then
 
 { echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_pic_works_CXX+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works_CXX+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works_CXX=no
+  lt_cv_prog_compiler_pic_works_CXX=no
   ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC"
@@ -12026,27 +12338,27 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12029: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12341: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:12033: \$? = $ac_status" >&5
+   echo "$as_me:12345: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works_CXX=yes
+       lt_cv_prog_compiler_pic_works_CXX=yes
      fi
    fi
    $rm conftest*
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_CXX" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works_CXX" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works_CXX" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works_CXX" >&6; }
 
-if test x"$lt_prog_compiler_pic_works_CXX" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works_CXX" = xyes; then
     case $lt_prog_compiler_pic_CXX in
      "" | " "*) ;;
      *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;
@@ -12073,10 +12385,10 @@ esac
 wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"
 { echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_static_works_CXX+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works_CXX+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works_CXX=no
+  lt_cv_prog_compiler_static_works_CXX=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -12089,20 +12401,20 @@ else
        $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works_CXX=yes
+         lt_cv_prog_compiler_static_works_CXX=yes
        fi
      else
-       lt_prog_compiler_static_works_CXX=yes
+       lt_cv_prog_compiler_static_works_CXX=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_CXX" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works_CXX" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works_CXX" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works_CXX" >&6; }
 
-if test x"$lt_prog_compiler_static_works_CXX" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works_CXX" = xyes; then
     :
 else
     lt_prog_compiler_static_CXX=
@@ -12130,11 +12442,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12133: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12445: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:12137: \$? = $ac_status" >&5
+   echo "$as_me:12449: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -12187,7 +12499,7 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
 
   export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   case $host_os in
-  aix4* | aix5*)
+  aix[4-9]*)
     # If we're using GNU nm, then we don't want the "-C" option.
     # -C means demangle to AIX nm, but means don't demangle with GNU nm
     if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
@@ -12209,6 +12521,7 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
     export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
   esac
+  exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
 
 { echo "$as_me:$LINENO: result: $ld_shlibs_CXX" >&5
 echo "${ECHO_T}$ld_shlibs_CXX" >&6; }
@@ -12310,7 +12623,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -12843,6 +13156,21 @@ esac
 echo "${ECHO_T}$dynamic_linker" >&6; }
 test "$dynamic_linker" = no && can_build_shared=no
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"
+fi
+
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"
+fi
+
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -12926,6 +13254,7 @@ if test -f "$ltmain"; then
     predeps_CXX \
     postdeps_CXX \
     compiler_lib_search_path_CXX \
+    compiler_lib_search_dirs_CXX \
     archive_cmds_CXX \
     archive_expsym_cmds_CXX \
     postinstall_cmds_CXX \
@@ -13174,6 +13503,10 @@ predeps=$lt_predeps_CXX
 # shared library.
 postdeps=$lt_postdeps_CXX
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
@@ -13388,7 +13721,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 # Allow CC to be a program name with arguments.
@@ -13426,7 +13759,7 @@ aix3*)
     postinstall_cmds='$RANLIB $lib'
   fi
   ;;
-aix4* | aix5*)
+aix[4-9]*)
   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
     test "$enable_shared" = yes && enable_static=no
   fi
@@ -13691,10 +14024,10 @@ if test -n "$lt_prog_compiler_pic_F77"; then
 
 { echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_pic_works_F77+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works_F77+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works_F77=no
+  lt_cv_prog_compiler_pic_works_F77=no
   ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic_F77"
@@ -13707,27 +14040,27 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:13710: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:14043: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:13714: \$? = $ac_status" >&5
+   echo "$as_me:14047: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works_F77=yes
+       lt_cv_prog_compiler_pic_works_F77=yes
      fi
    fi
    $rm conftest*
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_F77" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works_F77" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works_F77" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works_F77" >&6; }
 
-if test x"$lt_prog_compiler_pic_works_F77" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works_F77" = xyes; then
     case $lt_prog_compiler_pic_F77 in
      "" | " "*) ;;
      *) lt_prog_compiler_pic_F77=" $lt_prog_compiler_pic_F77" ;;
@@ -13754,10 +14087,10 @@ esac
 wl=$lt_prog_compiler_wl_F77 eval lt_tmp_static_flag=\"$lt_prog_compiler_static_F77\"
 { echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_static_works_F77+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works_F77+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works_F77=no
+  lt_cv_prog_compiler_static_works_F77=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -13770,20 +14103,20 @@ else
        $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works_F77=yes
+         lt_cv_prog_compiler_static_works_F77=yes
        fi
      else
-       lt_prog_compiler_static_works_F77=yes
+       lt_cv_prog_compiler_static_works_F77=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_F77" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works_F77" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works_F77" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works_F77" >&6; }
 
-if test x"$lt_prog_compiler_static_works_F77" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works_F77" = xyes; then
     :
 else
     lt_prog_compiler_static_F77=
@@ -13811,11 +14144,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:13814: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:14147: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:13818: \$? = $ac_status" >&5
+   echo "$as_me:14151: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -13895,12 +14228,13 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms_F77="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms_F77='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
   # Just being paranoid about ensuring that cc_basename is set.
   for cc_temp in $compiler""; do
@@ -13959,7 +14293,7 @@ cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 
     # See if GNU ld supports shared libraries.
     case $host_os in
-    aix3* | aix4* | aix5*)
+    aix[3-9]*)
       # On AIX/PPC, the GNU linker is very broken
       if test "$host_cpu" != ia64; then
 	ld_shlibs_F77=no
@@ -14179,7 +14513,7 @@ _LT_EOF
       fi
       ;;
 
-    aix4* | aix5*)
+    aix[4-9]*)
       if test "$host_cpu" = ia64; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
@@ -14199,7 +14533,7 @@ _LT_EOF
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
 	# need to do runtime linking.
-	case $host_os in aix4.[23]|aix4.[23].*|aix5*)
+	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
 	  for ld_flag in $LDFLAGS; do
   	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
   	    aix_use_runtimelinking=yes
@@ -14451,11 +14785,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
       link_all_deplibs_F77=yes
     if test "$GCC" = yes ; then
     	output_verbose_link_cmd='echo'
-        archive_cmds_F77='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      module_cmds_F77='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-      archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+        archive_cmds_F77="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+        module_cmds_F77="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+        archive_expsym_cmds_F77="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+        module_expsym_cmds_F77="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
     else
       case $cc_basename in
         xlc*)
@@ -14924,7 +15257,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -15457,6 +15790,21 @@ esac
 echo "${ECHO_T}$dynamic_linker" >&6; }
 test "$dynamic_linker" = no && can_build_shared=no
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"
+fi
+
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"
+fi
+
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -15540,6 +15888,7 @@ if test -f "$ltmain"; then
     predeps_F77 \
     postdeps_F77 \
     compiler_lib_search_path_F77 \
+    compiler_lib_search_dirs_F77 \
     archive_cmds_F77 \
     archive_expsym_cmds_F77 \
     postinstall_cmds_F77 \
@@ -15788,6 +16137,10 @@ predeps=$lt_predeps_F77
 # shared library.
 postdeps=$lt_postdeps_F77
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_F77
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path_F77
@@ -15962,7 +16315,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 # Allow CC to be a program name with arguments.
@@ -16011,11 +16364,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16014: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16367: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16018: \$? = $ac_status" >&5
+   echo "$as_me:16371: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -16075,7 +16428,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; }
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
       # (--disable-auto-import) libraries
-      lt_prog_compiler_pic_GCJ='-DDLL_EXPORT'
+
       ;;
 
     darwin* | rhapsody*)
@@ -16145,7 +16498,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; }
     mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
-      lt_prog_compiler_pic_GCJ='-DDLL_EXPORT'
+
       ;;
 
     hpux9* | hpux10* | hpux11*)
@@ -16285,10 +16638,10 @@ if test -n "$lt_prog_compiler_pic_GCJ"; then
 
 { echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_pic_works_GCJ+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works_GCJ+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works_GCJ=no
+  lt_cv_prog_compiler_pic_works_GCJ=no
   ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic_GCJ"
@@ -16301,27 +16654,27 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16304: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16657: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16308: \$? = $ac_status" >&5
+   echo "$as_me:16661: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works_GCJ=yes
+       lt_cv_prog_compiler_pic_works_GCJ=yes
      fi
    fi
    $rm conftest*
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_GCJ" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works_GCJ" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works_GCJ" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works_GCJ" >&6; }
 
-if test x"$lt_prog_compiler_pic_works_GCJ" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works_GCJ" = xyes; then
     case $lt_prog_compiler_pic_GCJ in
      "" | " "*) ;;
      *) lt_prog_compiler_pic_GCJ=" $lt_prog_compiler_pic_GCJ" ;;
@@ -16348,10 +16701,10 @@ esac
 wl=$lt_prog_compiler_wl_GCJ eval lt_tmp_static_flag=\"$lt_prog_compiler_static_GCJ\"
 { echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_static_works_GCJ+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works_GCJ+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works_GCJ=no
+  lt_cv_prog_compiler_static_works_GCJ=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -16364,20 +16717,20 @@ else
        $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works_GCJ=yes
+         lt_cv_prog_compiler_static_works_GCJ=yes
        fi
      else
-       lt_prog_compiler_static_works_GCJ=yes
+       lt_cv_prog_compiler_static_works_GCJ=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_GCJ" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works_GCJ" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works_GCJ" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works_GCJ" >&6; }
 
-if test x"$lt_prog_compiler_static_works_GCJ" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works_GCJ" = xyes; then
     :
 else
     lt_prog_compiler_static_GCJ=
@@ -16405,11 +16758,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16408: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16761: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:16412: \$? = $ac_status" >&5
+   echo "$as_me:16765: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -16489,12 +16842,13 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms_GCJ="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms_GCJ='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
   # Just being paranoid about ensuring that cc_basename is set.
   for cc_temp in $compiler""; do
@@ -16553,7 +16907,7 @@ cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 
     # See if GNU ld supports shared libraries.
     case $host_os in
-    aix3* | aix4* | aix5*)
+    aix[3-9]*)
       # On AIX/PPC, the GNU linker is very broken
       if test "$host_cpu" != ia64; then
 	ld_shlibs_GCJ=no
@@ -16773,7 +17127,7 @@ _LT_EOF
       fi
       ;;
 
-    aix4* | aix5*)
+    aix[4-9]*)
       if test "$host_cpu" = ia64; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
@@ -16793,7 +17147,7 @@ _LT_EOF
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
 	# need to do runtime linking.
-	case $host_os in aix4.[23]|aix4.[23].*|aix5*)
+	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
 	  for ld_flag in $LDFLAGS; do
   	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
   	    aix_use_runtimelinking=yes
@@ -17065,11 +17419,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
       link_all_deplibs_GCJ=yes
     if test "$GCC" = yes ; then
     	output_verbose_link_cmd='echo'
-        archive_cmds_GCJ='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      module_cmds_GCJ='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-      archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      module_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+        archive_cmds_GCJ="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+        module_cmds_GCJ="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+        archive_expsym_cmds_GCJ="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+        module_expsym_cmds_GCJ="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
     else
       case $cc_basename in
         xlc*)
@@ -17538,7 +17891,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -18071,6 +18424,21 @@ esac
 echo "${ECHO_T}$dynamic_linker" >&6; }
 test "$dynamic_linker" = no && can_build_shared=no
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"
+fi
+
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"
+fi
+
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -18154,6 +18522,7 @@ if test -f "$ltmain"; then
     predeps_GCJ \
     postdeps_GCJ \
     compiler_lib_search_path_GCJ \
+    compiler_lib_search_dirs_GCJ \
     archive_cmds_GCJ \
     archive_expsym_cmds_GCJ \
     postinstall_cmds_GCJ \
@@ -18402,6 +18771,10 @@ predeps=$lt_predeps_GCJ
 # shared library.
 postdeps=$lt_postdeps_GCJ
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_GCJ
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path_GCJ
@@ -18575,7 +18948,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 # Allow CC to be a program name with arguments.
@@ -18635,6 +19008,7 @@ if test -f "$ltmain"; then
     predeps_RC \
     postdeps_RC \
     compiler_lib_search_path_RC \
+    compiler_lib_search_dirs_RC \
     archive_cmds_RC \
     archive_expsym_cmds_RC \
     postinstall_cmds_RC \
@@ -18883,6 +19257,10 @@ predeps=$lt_predeps_RC
 # shared library.
 postdeps=$lt_postdeps_RC
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_RC
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path_RC
@@ -21156,237 +21534,6 @@ _ACEOF
 
 fi
 
-{ echo "$as_me:$LINENO: checking for Stream Virtual File Driver support" >&5
-echo $ECHO_N "checking for Stream Virtual File Driver support... $ECHO_C" >&6; }
-# Check whether --enable-stream-vfd was given.
-if test "${enable_stream_vfd+set}" = set; then
-  enableval=$enable_stream_vfd; STREAM_VFD=$enableval
-fi
-
-
-if test "$STREAM_VFD" = "yes"; then
-  { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-
-
-for ac_header in netinet/tcp.h sys/filio.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_cxx_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## -------------------------------- ##
-## Report this to help at hdfgroup.org ##
-## -------------------------------- ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_STREAM 1
-_ACEOF
-
-
-    { echo "$as_me:$LINENO: checking if socklen_t is defined" >&5
-echo $ECHO_N "checking if socklen_t is defined... $ECHO_C" >&6; }
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-int
-main ()
-{
-socklen_t foo; return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_cxx_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_SOCKLEN_T 1
-_ACEOF
-
-    { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	{ echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
-  { echo "$as_me:$LINENO: result: not configured" >&5
-echo "${ECHO_T}not configured" >&6; }
-fi
-
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -21969,7 +22116,7 @@ exec 6>&1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by HDF5 C++ $as_me 1.6.6, which was
+This file was extended by HDF5 C++ $as_me 1.6.7, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -22022,7 +22169,7 @@ Report bugs to <bug-autoconf at gnu.org>."
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-HDF5 C++ config.status 1.6.6
+HDF5 C++ config.status 1.6.7
 configured by $0, generated by GNU Autoconf 2.61,
   with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
@@ -22290,6 +22437,8 @@ ECHO!$ECHO$ac_delim
 AR!$AR$ac_delim
 RANLIB!$RANLIB$ac_delim
 STRIP!$STRIP$ac_delim
+DSYMUTIL!$DSYMUTIL$ac_delim
+NMEDIT!$NMEDIT$ac_delim
 CPP!$CPP$ac_delim
 F77!$F77$ac_delim
 FFLAGS!$FFLAGS$ac_delim
@@ -22305,7 +22454,7 @@ LIBOBJS!$LIBOBJS$ac_delim
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 86; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 88; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
@@ -22324,7 +22473,7 @@ fi
 
 cat >>$CONFIG_STATUS <<_ACEOF
 cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
 /^[	 ]*@DEPEND@[	 ]*$/{
 r $DEPEND
 d
@@ -22349,8 +22498,6 @@ N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n
 ' >>$CONFIG_STATUS <conf$$subs.sed
 rm -f conf$$subs.sed
 cat >>$CONFIG_STATUS <<_ACEOF
-:end
-s/|#_!!_#|//g
 CEOF$ac_eof
 _ACEOF
 
@@ -22598,7 +22745,7 @@ s&@abs_builddir@&$ac_abs_builddir&;t t
 s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
 s&@INSTALL@&$ac_INSTALL&;t t
 $ac_datarootdir_hack
-" $ac_file_inputs | sed -f "$tmp/subs-1.sed" >$tmp/out
+" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed 's/|#_!!_#|//g' >$tmp/out
 
 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
   { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
diff --git a/c++/configure.in b/c++/configure.in
index cdc3732..6924452 100644
--- a/c++/configure.in
+++ b/c++/configure.in
@@ -19,7 +19,7 @@ dnl ----------------------------------------------------------------------
 dnl ----------------------------------------------------------------------
 dnl Initialize configure.
 dnl
-AC_REVISION($Id: configure.in 14030 2007-07-31 03:04:21Z epourmal $)
+AC_REVISION($Id: configure.in 14461 2008-01-28 19:59:31Z epourmal $)
 
 dnl AC_INIT takes the name of the package, the version number, and an
 dnl email address to report bugs. AC_CONFIG_SRCDIR takes a unique file
@@ -28,7 +28,7 @@ dnl
 dnl NOTE: Don't forget to change the version number here when we do a
 dnl release!!!
 dnl
-AC_INIT([HDF5 C++],[1.6.6],[help at hdfgroup.org])
+AC_INIT([HDF5 C++],[1.6.7],[help at hdfgroup.org])
 AC_CONFIG_SRCDIR([src/H5Library.cpp])
 AC_CONFIG_HEADER([src/H5cxx_config.h])
 
@@ -664,43 +664,6 @@ if test "x$HAVE_SZLIB" = "xyes" -a "x$HAVE_SZLIB_H" = "xyes"; then
 fi
 
 dnl ----------------------------------------------------------------------
-dnl Should the Stream Virtual File Driver be compiled in ?
-dnl
-AC_MSG_CHECKING([for Stream Virtual File Driver support])
-AC_ARG_ENABLE([stream-vfd],
-              [AS_HELP_STRING([--enable-stream-vfd],[Build the Stream Virtual File Driver
-                               [default=no]])],
-              [STREAM_VFD=$enableval])
-
-if test "$STREAM_VFD" = "yes"; then
-  AC_MSG_RESULT([yes])
-  AC_CHECK_HEADERS([netinet/tcp.h sys/filio.h])
-  AC_DEFINE([HAVE_STREAM], [1],
-            [Define if the stream virtual file driver should be compiled])
-
-  dnl Check if 'socklen_t' available
-  AC_MSG_CHECKING([if socklen_t is defined])
-  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-  ]], [[socklen_t foo; return 0;]])],[AC_DEFINE(HAVE_SOCKLEN_T, 1,
-              Define if \`socklen_t' is defined)
-    AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)
-  ])
-else
-  AC_MSG_RESULT([not configured])
-fi
-
-dnl ----------------------------------------------------------------------
 dnl Checks for header files.
 dnl
 
diff --git a/c++/examples/Dependencies b/c++/examples/Dependencies
index 60ea981..def8825 100644
--- a/c++/examples/Dependencies
+++ b/c++/examples/Dependencies
@@ -2,16 +2,15 @@
 ## This file is machine generated on GNU systems.
 ## Only temporary changes may be made here.
 ##
-# Copyright by The HDF Group.
-# Copyright by the Board of Trustees of the University of Illinois.
-# All rights reserved.
-#
-# This file is part of HDF5.  The full HDF5 copyright notice, including
-# terms governing use, modification, and redistribution, is contained in
-# the files COPYING and Copyright.html.  COPYING can be found at the root
-# of the source code distribution tree; Copyright.html can be found at the
-# root level of an installed copy of the electronic HDF5 document set and
-# is linked from the top-level documents page.  It can also be found at
-# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
-# access to either file, you may request a copy from help at hdfgroup.org.
+## Copyright by the Board of Trustees of the University of Illinois.
+## All rights reserved.
+##
+## This file is part of HDF5.  The full HDF5 copyright notice, including
+## terms governing use, modification, and redistribution, is contained in
+## the files COPYING and Copyright.html.  COPYING can be found at the root
+## of the source code distribution tree; Copyright.html can be found at the
+## root level of an installed copy of the electronic HDF5 document set and
+## is linked from the top-level documents page.  It can also be found at
+## http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html.  If you do not have
+## access to either file, you may request a copy from hdfhelp at ncsa.uiuc.edu.
 
diff --git a/c++/examples/writedata.cpp b/c++/examples/writedata.cpp
index 2b1feae..e7fbf3c 100644
--- a/c++/examples/writedata.cpp
+++ b/c++/examples/writedata.cpp
@@ -171,7 +171,7 @@ int main (void)
       coord[2][0] = 3; coord[2][1] = 5;
       coord[3][0] = 5; coord[3][1] = 6;
 
-      fspace.selectElements( H5S_SELECT_SET, NPOINTS, (const hsize_t **)coord);
+      fspace.selectElements( H5S_SELECT_SET, NPOINTS, (const hsize_t *)coord);
 
       /*
        * Write new selection of points to the dataset.
diff --git a/c++/src/Dependencies b/c++/src/Dependencies
index 60ea981..def8825 100644
--- a/c++/src/Dependencies
+++ b/c++/src/Dependencies
@@ -2,16 +2,15 @@
 ## This file is machine generated on GNU systems.
 ## Only temporary changes may be made here.
 ##
-# Copyright by The HDF Group.
-# Copyright by the Board of Trustees of the University of Illinois.
-# All rights reserved.
-#
-# This file is part of HDF5.  The full HDF5 copyright notice, including
-# terms governing use, modification, and redistribution, is contained in
-# the files COPYING and Copyright.html.  COPYING can be found at the root
-# of the source code distribution tree; Copyright.html can be found at the
-# root level of an installed copy of the electronic HDF5 document set and
-# is linked from the top-level documents page.  It can also be found at
-# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
-# access to either file, you may request a copy from help at hdfgroup.org.
+## Copyright by the Board of Trustees of the University of Illinois.
+## All rights reserved.
+##
+## This file is part of HDF5.  The full HDF5 copyright notice, including
+## terms governing use, modification, and redistribution, is contained in
+## the files COPYING and Copyright.html.  COPYING can be found at the root
+## of the source code distribution tree; Copyright.html can be found at the
+## root level of an installed copy of the electronic HDF5 document set and
+## is linked from the top-level documents page.  It can also be found at
+## http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html.  If you do not have
+## access to either file, you may request a copy from hdfhelp at ncsa.uiuc.edu.
 
diff --git a/c++/src/H5DataSpace.cpp b/c++/src/H5DataSpace.cpp
index 9cdd74c..e5ef816 100644
--- a/c++/src/H5DataSpace.cpp
+++ b/c++/src/H5DataSpace.cpp
@@ -454,7 +454,7 @@ void DataSpace::getSelectBounds ( hsize_t* start, hsize_t* end ) const
 /// <A HREF="../RM_H5S.html#Dataspace-SelectElements">../RM_H5S.html#Dataspace-SelectElements</A>
 // Programmer	Binh-Minh Ribler - 2000
 //--------------------------------------------------------------------------
-void DataSpace::selectElements ( H5S_seloper_t op, const size_t num_elements, const hsize_t *coord[ ] ) const
+void DataSpace::selectElements ( H5S_seloper_t op, const size_t num_elements, const hsize_t *coord) const
 {
    herr_t ret_value;
    ret_value = H5Sselect_elements( id, op, num_elements, coord );
diff --git a/c++/src/H5DataSpace.h b/c++/src/H5DataSpace.h
index a46f486..e1c5ba4 100644
--- a/c++/src/H5DataSpace.h
+++ b/c++/src/H5DataSpace.h
@@ -86,7 +86,7 @@ class H5_DLLCPP DataSpace : public IdComponent {
 
 	// Selects array elements to be included in the selection for
 	// this dataspace.
-	void selectElements( H5S_seloper_t op, const size_t num_elements, const hsize_t *coord[ ] ) const;
+	void selectElements( H5S_seloper_t op, const size_t num_elements, const hsize_t *coord) const;
 
 	// Selects a hyperslab region to add to the current selected region.
 	void selectHyperslab( H5S_seloper_t op, const hsize_t *count, const hsize_t *start, const hsize_t *stride = NULL, const hsize_t *block = NULL ) const;
diff --git a/c++/src/H5FaccProp.cpp b/c++/src/H5FaccProp.cpp
index 9dd115c..7c9b33a 100644
--- a/c++/src/H5FaccProp.cpp
+++ b/c++/src/H5FaccProp.cpp
@@ -292,48 +292,6 @@ void FileAccPropList::setSplit( FileAccPropList& meta_plist, FileAccPropList& ra
    setSplit( meta_plist, raw_plist, meta_ext.c_str(), raw_ext.c_str() );
 }
 
-#ifdef H5_HAVE_STREAM // for Stream Virtual File Driver
-//--------------------------------------------------------------------------
-// Function:	FileAccPropList::getStream
-///\brief	Retrieves the streaming I/O driver settings
-///\return	The streaming I/O file access property list structure
-///		For detail on this structure, please refer to
-/// <A HREF="../RM_H5P.html#Property-SetFaplStream">../RM_H5P.html#Property-SetFaplStream</A>
-///\exception	H5::PropListIException
-// Programmer:  Binh-Minh Ribler - April, 2004
-//--------------------------------------------------------------------------
-H5FD_stream_fapl_t FileAccPropList::getStream() const
-{
-   H5FD_stream_fapl_t fapl;
-   herr_t ret_value = H5Pget_fapl_stream(id, &fapl);
-   if( ret_value < 0 )
-   {
-      throw PropListIException("FileAccPropList::getStream", "H5Pget_fapl_stream failed");
-   }
-   return(fapl);
-}
-
-//--------------------------------------------------------------------------
-// Function:	FileAccPropList::setStream
-///\brief	Modifies this file access property list to use the Stream
-///		driver.
-///\param	fapl - IN: The streaming I/O file access property list
-///\exception	H5::PropListIException
-///\par Description
-///		For detail on \a fapl, please refer to
-/// <A HREF="../RM_H5P.html#Property-SetFaplStream">../RM_H5P.html#Property-SetFaplStream</A>
-// Programmer:  Binh-Minh Ribler - April, 2004
-//--------------------------------------------------------------------------
-void FileAccPropList::setStream(H5FD_stream_fapl_t &fapl) const
-{
-   herr_t ret_value = H5Pset_fapl_stream (id, &fapl);
-   if( ret_value < 0 )
-   {
-      throw PropListIException("FileAccPropList::setStream", "H5Pset_fapl_stream failed");
-   }
-}
-#endif // Stream Virtual File Driver
-
 //--------------------------------------------------------------------------
 // Function:	FileAccPropList::getSieveBufSize
 ///\brief	Returns the current settings for the data sieve buffer size
diff --git a/c++/src/H5FaccProp.h b/c++/src/H5FaccProp.h
index 7f133bb..5a0a14f 100644
--- a/c++/src/H5FaccProp.h
+++ b/c++/src/H5FaccProp.h
@@ -67,14 +67,6 @@ class H5_DLLCPP FileAccPropList : public PropList {
 	void setSplit( FileAccPropList& meta_plist, FileAccPropList& raw_plist,
 	     const H5std_string& meta_ext, const H5std_string& raw_ext ) const;
 
-#ifdef H5_HAVE_STREAM // for Stream Virtual File Driver
-	// Modifies this file access property list to use the Stream driver.
-	void setStream(H5FD_stream_fapl_t &fapl) const;
-
-	// Retrieves the streaming I/O driver settings
-	H5FD_stream_fapl_t getStream() const;
-#endif
-
 	// Sets the maximum size of the data sieve buffer.
 	void setSieveBufSize(size_t bufsize) const;
 
diff --git a/c++/src/H5cxx_config.h.in b/c++/src/H5cxx_config.h.in
index 38d38f1..2f6d509 100644
--- a/c++/src/H5cxx_config.h.in
+++ b/c++/src/H5cxx_config.h.in
@@ -1,5 +1,79 @@
-/* src/H5cxx_config.h.in Created manually. */
+/* src/H5cxx_config.h.in.  Generated from configure.in by autoheader.  */
 
-/* Define if offsetof extension is present */
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
+/* Define if support for deflate filter is enabled */
+#undef HAVE_FILTER_DEFLATE
+
+/* Define if support for szip filter is enabled */
+#undef HAVE_FILTER_SZIP
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define to 1 if you have the `m' library (-lm). */
+#undef HAVE_LIBM
+
+/* Define to 1 if you have the `nsl' library (-lnsl). */
+#undef HAVE_LIBNSL
+
+/* Define to 1 if you have the `socket' library (-lsocket). */
+#undef HAVE_LIBSOCKET
+
+/* Define to 1 if you have the `sz' library (-lsz). */
+#undef HAVE_LIBSZ
+
+/* Define to 1 if you have the `z' library (-lz). */
+#undef HAVE_LIBZ
+
+/* Define to 1 if you have the <memory.h> header file. */
+#undef HAVE_MEMORY_H
+
+/* Define if the offsetof extension is present */
 #undef HAVE_OFFSETOF
 
+/* Define to 1 if you have the <stdint.h> header file. */
+#undef HAVE_STDINT_H
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#undef HAVE_STDLIB_H
+
+/* Define to 1 if you have the <strings.h> header file. */
+#undef HAVE_STRINGS_H
+
+/* Define to 1 if you have the <string.h> header file. */
+#undef HAVE_STRING_H
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#undef HAVE_SYS_STAT_H
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#undef HAVE_SYS_TYPES_H
+
+/* Define to 1 if you have the <szlib.h> header file. */
+#undef HAVE_SZLIB_H
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#undef HAVE_UNISTD_H
+
+/* Define to 1 if you have the <zlib.h> header file. */
+#undef HAVE_ZLIB_H
+
+/* Define to the address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#undef PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#undef PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#undef PACKAGE_TARNAME
+
+/* Define to the version of this package. */
+#undef PACKAGE_VERSION
+
+/* Define to 1 if you have the ANSI C header files. */
+#undef STDC_HEADERS
diff --git a/c++/test/Dependencies b/c++/test/Dependencies
index 60ea981..def8825 100644
--- a/c++/test/Dependencies
+++ b/c++/test/Dependencies
@@ -2,16 +2,15 @@
 ## This file is machine generated on GNU systems.
 ## Only temporary changes may be made here.
 ##
-# Copyright by The HDF Group.
-# Copyright by the Board of Trustees of the University of Illinois.
-# All rights reserved.
-#
-# This file is part of HDF5.  The full HDF5 copyright notice, including
-# terms governing use, modification, and redistribution, is contained in
-# the files COPYING and Copyright.html.  COPYING can be found at the root
-# of the source code distribution tree; Copyright.html can be found at the
-# root level of an installed copy of the electronic HDF5 document set and
-# is linked from the top-level documents page.  It can also be found at
-# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
-# access to either file, you may request a copy from help at hdfgroup.org.
+## Copyright by the Board of Trustees of the University of Illinois.
+## All rights reserved.
+##
+## This file is part of HDF5.  The full HDF5 copyright notice, including
+## terms governing use, modification, and redistribution, is contained in
+## the files COPYING and Copyright.html.  COPYING can be found at the root
+## of the source code distribution tree; Copyright.html can be found at the
+## root level of an installed copy of the electronic HDF5 document set and
+## is linked from the top-level documents page.  It can also be found at
+## http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html.  If you do not have
+## access to either file, you may request a copy from hdfhelp at ncsa.uiuc.edu.
 
diff --git a/config/depend1.in b/config/depend1.in
index 745ca57..b5e2abb 100644
--- a/config/depend1.in
+++ b/config/depend1.in
@@ -37,21 +37,22 @@
 $(srcdir)/Dependencies: .depend
 	@if test "$(srcdir)" != "."; then					\
 	  (									\
-	    echo '##'; 								\
-	    echo '## This file is machine generated on GNU systems.';		\
-	    echo '## Only temporary changes may be made here.';			\
-	    echo '##'; 								\
-	    echo '## Copyright by the Board of Trustees of the University of Illinois.'; \
-	    echo '## All rights reserved.'; 					\
-	    echo '##'; 								\
-	    echo '## This file is part of HDF5.  The full HDF5 copyright notice, including'; \
-	    echo '## terms governing use, modification, and redistribution, is contained in'; \
-	    echo '## the files COPYING and Copyright.html.  COPYING can be found at the root'; \
-	    echo '## of the source code distribution tree; Copyright.html can be found at the'; \
-	    echo '## root level of an installed copy of the electronic HDF5 document set and'; \
-	    echo '## is linked from the top-level documents page.  It can also be found at'; \
-	    echo '## http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html.  If you do not have'; \
-	    echo '## access to either file, you may request a copy from hdfhelp at ncsa.uiuc.edu.'; \
+	    echo '#'; 								\
+	    echo '# This file is machine generated on GNU systems.';		\
+	    echo '# Only temporary changes may be made here.';			\
+	    echo '#'; 								\
+            echo '# Copyright by The HDF Group.';				\
+            echo '# Copyright by the Board of Trustees of the University of Illinois.'; \
+            echo '# All rights reserved.';					\
+            echo '#';								\
+            echo '# This file is part of HDF5.  The full HDF5 copyright notice, including'; \
+            echo '# terms governing use, modification, and redistribution, is contained in'; \
+            echo '# the files COPYING and Copyright.html.  COPYING can be found at the root'; \
+            echo '# of the source code distribution tree; Copyright.html can be found at the'; \
+            echo '# root level of an installed copy of the electronic HDF5 document set and'; \
+            echo '# is linked from the top-level documents page.  It can also be found at'; \
+            echo '# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have'; \
+            echo '# access to either file, you may request a copy from help at hdfgroup.org.'; \
 	    echo;								\
 	  ) >$@;								\
 	  $(PERL) -p $(top_srcdir)/bin/distdep .depend >>$@;			\
diff --git a/config/ia64-linux-gnu b/config/ia64-linux-gnu
index 44ec960..e06f066 100644
--- a/config/ia64-linux-gnu
+++ b/config/ia64-linux-gnu
@@ -18,10 +18,16 @@
 # after configure starts and defines, among other things, flags for
 # the various compile modes.
 
-# Use Intel C compiler by default (if it's available).
-if test "X$CC" = "X" && which icc > /dev/null; then
-  CC=icc
-  CC_BASENAME=icc
+# Use Intel C compiler by default (if it is available).
+# Use mpicc for parallel by default (if it is available).
+if test "X$CC" = "X"; then
+    if test "X-$enable_parallel" = "X-yes" && which mpicc > /dev/null; then
+        CC=mpicc
+        CC_BASENAME=mpicc
+    elif which icc > /dev/null; then
+        CC=icc
+        CC_BASENAME=icc
+    fi
 fi
 
 #----------------------------------------------------------------------------
diff --git a/configure b/configure
index 82b481e..45b95e5 100755
--- a/configure
+++ b/configure
@@ -1,7 +1,7 @@
 #! /bin/sh
-# From configure.in Id: configure.in 14063 2007-08-09 20:51:55Z mcgreevy .
+# From configure.in Id: configure.in 14461 2008-01-28 19:59:31Z epourmal .
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for HDF5 1.6.6.
+# Generated by GNU Autoconf 2.61 for HDF5 1.6.7.
 #
 # Report bugs to <help at hdfgroup.org>.
 #
@@ -729,8 +729,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
 # Identity of this package.
 PACKAGE_NAME='HDF5'
 PACKAGE_TARNAME='hdf5'
-PACKAGE_VERSION='1.6.6'
-PACKAGE_STRING='HDF5 1.6.6'
+PACKAGE_VERSION='1.6.7'
+PACKAGE_STRING='HDF5 1.6.7'
 PACKAGE_BUGREPORT='help at hdfgroup.org'
 
 ac_unique_file="src/H5.c"
@@ -849,6 +849,8 @@ LN_S
 ECHO
 RANLIB
 STRIP
+DSYMUTIL
+NMEDIT
 CPP
 CXX
 CXXFLAGS
@@ -885,6 +887,7 @@ CC_VERSION
 ROOT
 DYNAMIC_DIRS
 HL
+STRICT_FORMAT_CHECKS
 SEARCH
 SETX
 LIBOBJS
@@ -1409,7 +1412,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures HDF5 1.6.6 to adapt to many kinds of systems.
+\`configure' configures HDF5 1.6.7 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1474,7 +1477,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of HDF5 1.6.6:";;
+     short | recursive ) echo "Configuration of HDF5 1.6.7:";;
    esac
   cat <<\_ACEOF
 
@@ -1518,11 +1521,13 @@ Optional Features:
                           disabling this function, the library will replace it
                           with stat to get the correct file size.
                           [default=yes]
-  --enable-stream-vfd     Build the Stream Virtual File Driver [default=yes]
   --enable-filters=all    Turn on all internal I/O filters. One may also
                           specify a comma-separated list of filters or the
                           word no. The default is all internal I/O filters.
   --enable-hl             Enable the high level library [default=yes]
+  --enable-strict-format-checks
+                          Enable strict file format checks, default=yes if
+                          debug flag is enabled, no otherwise
 
 Optional Packages:
   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
@@ -1630,7 +1635,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-HDF5 configure 1.6.6
+HDF5 configure 1.6.7
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1644,7 +1649,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by HDF5 $as_me 1.6.6, which was
+It was created by HDF5 $as_me 1.6.7, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -4061,7 +4066,7 @@ lt_cv_deplibs_check_method='unknown'
 # whether `pass_all' will *always* work, you probably want this one.
 
 case $host_os in
-aix4* | aix5*)
+aix[4-9]*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
@@ -4277,7 +4282,7 @@ ia64-*-hpux*)
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 4280 "configure"' > conftest.$ac_ext
+  echo '#line 4285 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -4449,7 +4454,11 @@ sparc*-*solaris*)
     *64-bit*)
       case $lt_cv_prog_gnu_ld in
       yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)    LD="${LD-ld} -64" ;;
+      *)
+        if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
+	  LD="${LD-ld} -64"
+	fi
+	;;
       esac
       ;;
     esac
@@ -5943,7 +5952,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
 # Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
-
 # find the maximum length of command line arguments
 { echo "$as_me:$LINENO: checking the maximum length of command line arguments" >&5
 echo $ECHO_N "checking the maximum length of command line arguments... $ECHO_C" >&6; }
@@ -6258,7 +6266,7 @@ EOF
     echo "$progname: failed program was:" >&5
     cat conftest.$ac_ext >&5
   fi
-  rm -f conftest* conftst*
+  rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
   if test "$pipe_works" = yes; then
@@ -6818,6 +6826,318 @@ fi
   ;;
 esac
 
+
+  case $host_os in
+    rhapsody* | darwin*)
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$DSYMUTIL"; then
+  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+DSYMUTIL=$ac_cv_prog_DSYMUTIL
+if test -n "$DSYMUTIL"; then
+  { echo "$as_me:$LINENO: result: $DSYMUTIL" >&5
+echo "${ECHO_T}$DSYMUTIL" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_DSYMUTIL"; then
+  ac_ct_DSYMUTIL=$DSYMUTIL
+  # Extract the first word of "dsymutil", so it can be a program name with args.
+set dummy dsymutil; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_DSYMUTIL"; then
+  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
+if test -n "$ac_ct_DSYMUTIL"; then
+  { echo "$as_me:$LINENO: result: $ac_ct_DSYMUTIL" >&5
+echo "${ECHO_T}$ac_ct_DSYMUTIL" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+  if test "x$ac_ct_DSYMUTIL" = x; then
+    DSYMUTIL=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&5
+echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&2;}
+ac_tool_warned=yes ;;
+esac
+    DSYMUTIL=$ac_ct_DSYMUTIL
+  fi
+else
+  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
+set dummy ${ac_tool_prefix}nmedit; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NMEDIT"; then
+  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+NMEDIT=$ac_cv_prog_NMEDIT
+if test -n "$NMEDIT"; then
+  { echo "$as_me:$LINENO: result: $NMEDIT" >&5
+echo "${ECHO_T}$NMEDIT" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_NMEDIT"; then
+  ac_ct_NMEDIT=$NMEDIT
+  # Extract the first word of "nmedit", so it can be a program name with args.
+set dummy nmedit; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NMEDIT"; then
+  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+    ac_cv_prog_ac_ct_NMEDIT="nmedit"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
+if test -n "$ac_ct_NMEDIT"; then
+  { echo "$as_me:$LINENO: result: $ac_ct_NMEDIT" >&5
+echo "${ECHO_T}$ac_ct_NMEDIT" >&6; }
+else
+  { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+  if test "x$ac_ct_NMEDIT" = x; then
+    NMEDIT=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&5
+echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet.  If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&2;}
+ac_tool_warned=yes ;;
+esac
+    NMEDIT=$ac_ct_NMEDIT
+  fi
+else
+  NMEDIT="$ac_cv_prog_NMEDIT"
+fi
+
+
+    { echo "$as_me:$LINENO: checking for -single_module linker flag" >&5
+echo $ECHO_N "checking for -single_module linker flag... $ECHO_C" >&6; }
+if test "${lt_cv_apple_cc_single_mod+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+   # By default we will add the -single_module flag. You can override
+   # by either setting the environment variable LT_MULTI_MODULE
+   # non-empty at configure time, or by adding -multi_module to the
+   # link flags.
+   echo "int foo(void){return 1;}" > conftest.c
+   $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+     -dynamiclib ${wl}-single_module conftest.c
+   if test -f libconftest.dylib; then
+     lt_cv_apple_cc_single_mod=yes
+     rm -rf libconftest.dylib*
+   fi
+   rm conftest.c
+      fi
+fi
+{ echo "$as_me:$LINENO: result: $lt_cv_apple_cc_single_mod" >&5
+echo "${ECHO_T}$lt_cv_apple_cc_single_mod" >&6; }
+    { echo "$as_me:$LINENO: checking for -exported_symbols_list linker flag" >&5
+echo $ECHO_N "checking for -exported_symbols_list linker flag... $ECHO_C" >&6; }
+if test "${lt_cv_ld_exported_symbols_list+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest$ac_exeext &&
+       $as_test_x conftest$ac_exeext; then
+  lt_cv_ld_exported_symbols_list=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	lt_cv_ld_exported_symbols_list=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+      conftest$ac_exeext conftest.$ac_ext
+   LDFLAGS="$save_LDFLAGS"
+
+fi
+{ echo "$as_me:$LINENO: result: $lt_cv_ld_exported_symbols_list" >&5
+echo "${ECHO_T}$lt_cv_ld_exported_symbols_list" >&6; }
+    case $host_os in
+    rhapsody* | darwin1.[0123])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+     _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*)
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+   10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+     _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+   10.[012]*)
+     _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+   10.*)
+     _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms="~$NMEDIT -s \$output_objdir/\${libname}-symbols.expsym \${lib}"
+    fi
+    if test "$DSYMUTIL" != ":"; then
+      _lt_dsymutil="~$DSYMUTIL \$lib || :"
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+
+
 enable_dlopen=yes
 enable_win32_dll=no
 
@@ -6883,7 +7203,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 
@@ -6911,11 +7231,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:6914: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7234: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:6918: \$? = $ac_status" >&5
+   echo "$as_me:7238: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7185,10 +7505,10 @@ if test -n "$lt_prog_compiler_pic"; then
 
 { echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_pic_works+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works=no
+  lt_cv_prog_compiler_pic_works=no
   ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
@@ -7201,27 +7521,27 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7204: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7524: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7208: \$? = $ac_status" >&5
+   echo "$as_me:7528: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works=yes
+       lt_cv_prog_compiler_pic_works=yes
      fi
    fi
    $rm conftest*
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works" >&6; }
 
-if test x"$lt_prog_compiler_pic_works" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -7248,10 +7568,10 @@ esac
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
 { echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_static_works+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works=no
+  lt_cv_prog_compiler_static_works=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -7264,20 +7584,20 @@ else
        $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works=yes
+         lt_cv_prog_compiler_static_works=yes
        fi
      else
-       lt_prog_compiler_static_works=yes
+       lt_cv_prog_compiler_static_works=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works" >&6; }
 
-if test x"$lt_prog_compiler_static_works" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works" = xyes; then
     :
 else
     lt_prog_compiler_static=
@@ -7305,11 +7625,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7308: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7628: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7312: \$? = $ac_status" >&5
+   echo "$as_me:7632: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7389,12 +7709,13 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
   # Just being paranoid about ensuring that cc_basename is set.
   for cc_temp in $compiler""; do
@@ -7453,7 +7774,7 @@ cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 
     # See if GNU ld supports shared libraries.
     case $host_os in
-    aix3* | aix4* | aix5*)
+    aix[3-9]*)
       # On AIX/PPC, the GNU linker is very broken
       if test "$host_cpu" != ia64; then
 	ld_shlibs=no
@@ -7673,7 +7994,7 @@ _LT_EOF
       fi
       ;;
 
-    aix4* | aix5*)
+    aix[4-9]*)
       if test "$host_cpu" = ia64; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
@@ -7693,7 +8014,7 @@ _LT_EOF
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
 	# need to do runtime linking.
-	case $host_os in aix4.[23]|aix4.[23].*|aix5*)
+	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
 	  for ld_flag in $LDFLAGS; do
   	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
   	    aix_use_runtimelinking=yes
@@ -7965,11 +8286,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
       link_all_deplibs=yes
     if test "$GCC" = yes ; then
     	output_verbose_link_cmd='echo'
-        archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-      archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      module_expsym_cmds='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+        archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+        module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+        archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+        module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
     else
       case $cc_basename in
         xlc*)
@@ -8489,7 +8809,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -9023,6 +9343,21 @@ esac
 echo "${ECHO_T}$dynamic_linker" >&6; }
 test "$dynamic_linker" = no && can_build_shared=no
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"
+fi
+
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"
+fi
+
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -9342,7 +9677,7 @@ fi
 { echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6; }
 if test $ac_cv_lib_dld_shl_load = yes; then
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
 else
   { echo "$as_me:$LINENO: checking for dlopen" >&5
 echo $ECHO_N "checking for dlopen... $ECHO_C" >&6; }
@@ -9618,7 +9953,7 @@ fi
 { echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5
 echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6; }
 if test $ac_cv_lib_dld_dld_link = yes; then
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
+  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
 fi
 
 
@@ -9667,7 +10002,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 9670 "configure"
+#line 10005 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -9767,7 +10102,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 9770 "configure"
+#line 10105 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -9894,7 +10229,7 @@ aix3*)
   fi
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
     test "$enable_shared" = yes && enable_static=no
   fi
@@ -9950,6 +10285,7 @@ if test -f "$ltmain"; then
     predeps \
     postdeps \
     compiler_lib_search_path \
+    compiler_lib_search_dirs \
     archive_cmds \
     archive_expsym_cmds \
     postinstall_cmds \
@@ -10010,7 +10346,7 @@ echo "$as_me: creating $ofile" >&6;}
 # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
 # Free Software Foundation, Inc.
 #
 # This file is part of GNU Libtool:
@@ -10246,6 +10582,10 @@ predeps=$lt_predeps
 # shared library.
 postdeps=$lt_postdeps
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path
@@ -10494,6 +10834,7 @@ postdep_objects_CXX=
 predeps_CXX=
 postdeps_CXX=
 compiler_lib_search_path_CXX=
+compiler_lib_search_dirs_CXX=
 
 # Source file extension for C++ test sources.
 ac_ext=cpp
@@ -10531,7 +10872,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 # Allow CC to be a program name with arguments.
@@ -10738,7 +11079,7 @@ case $host_os in
     # FIXME: insert proper C++ library support
     ld_shlibs_CXX=no
     ;;
-  aix4* | aix5*)
+  aix[4-9]*)
     if test "$host_cpu" = ia64; then
       # On IA64, the linker does run time linking by default, so we don't
       # have to do anything special.
@@ -10751,7 +11092,7 @@ case $host_os in
       # Test if we are trying to use run time linking or normal
       # AIX style linking. If -brtl is somewhere in LDFLAGS, we
       # need to do runtime linking.
-      case $host_os in aix4.[23]|aix4.[23].*|aix5*)
+      case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
 	for ld_flag in $LDFLAGS; do
 	  case $ld_flag in
 	  *-brtl*)
@@ -11009,51 +11350,23 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
     fi
   ;;
       darwin* | rhapsody*)
-        case $host_os in
-        rhapsody* | darwin1.[012])
-         allow_undefined_flag_CXX='${wl}-undefined ${wl}suppress'
-         ;;
-       *) # Darwin 1.3 on
-         if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
-           allow_undefined_flag_CXX='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-         else
-           case ${MACOSX_DEPLOYMENT_TARGET} in
-             10.[012])
-               allow_undefined_flag_CXX='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
-               ;;
-             10.*)
-               allow_undefined_flag_CXX='${wl}-undefined ${wl}dynamic_lookup'
-               ;;
-           esac
-         fi
-         ;;
-        esac
       archive_cmds_need_lc_CXX=no
       hardcode_direct_CXX=no
       hardcode_automatic_CXX=yes
       hardcode_shlibpath_var_CXX=unsupported
       whole_archive_flag_spec_CXX=''
       link_all_deplibs_CXX=yes
-
-    if test "$GXX" = yes ; then
-      lt_int_apple_cc_single_mod=no
+      allow_undefined_flag_CXX="$_lt_dar_allow_undefined"
+      if test "$GXX" = yes ; then
       output_verbose_link_cmd='echo'
-      if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then
-       lt_int_apple_cc_single_mod=yes
+      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+      if test "$lt_cv_apple_cc_single_mod" != "yes"; then
+        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
+        archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
       fi
-      if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
-       archive_cmds_CXX='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      else
-          archive_cmds_CXX='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-        fi
-        module_cmds_CXX='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-        # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-          if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
-            archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-          else
-            archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-          fi
-            module_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
       else
       case $cc_basename in
         xlc*)
@@ -11304,7 +11617,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
 	export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
 	whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
 	;;
-      pgCC*)
+      pgCC* | pgcpp*)
         # Portland Group C++ compiler
 	archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
   	archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
@@ -11711,7 +12024,6 @@ test "$ld_shlibs_CXX" = no && can_build_shared=no
 GCC_CXX="$GXX"
 LD_CXX="$LD"
 
-
 cat > conftest.$ac_ext <<EOF
 class Foo
 {
@@ -11813,6 +12125,11 @@ fi
 
 $rm -f confest.$objext
 
+compiler_lib_search_dirs_CXX=
+if test -n "$compiler_lib_search_path_CXX"; then
+  compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+fi
+
 # PORTME: override above test on systems where it is broken
 case $host_os in
 interix[3-9]*)
@@ -11868,7 +12185,6 @@ solaris*)
   ;;
 esac
 
-
 case " $postdeps_CXX " in
 *" -lc "*) archive_cmds_need_lc_CXX=no ;;
 esac
@@ -11944,7 +12260,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; }
     esac
   else
     case $host_os in
-      aix4* | aix5*)
+      aix[4-9]*)
 	# All AIX code is PIC.
 	if test "$host_cpu" = ia64; then
 	  # AIX 5 now supports IA64 processor
@@ -12040,7 +12356,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; }
 	    lt_prog_compiler_pic_CXX='-KPIC'
 	    lt_prog_compiler_static_CXX='-static'
 	    ;;
-	  pgCC*)
+	  pgCC* | pgcpp*)
 	    # Portland Group C++ compiler.
 	    lt_prog_compiler_wl_CXX='-Wl,'
 	    lt_prog_compiler_pic_CXX='-fpic'
@@ -12171,10 +12487,10 @@ if test -n "$lt_prog_compiler_pic_CXX"; then
 
 { echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_pic_works_CXX+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works_CXX+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works_CXX=no
+  lt_cv_prog_compiler_pic_works_CXX=no
   ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC"
@@ -12187,27 +12503,27 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12190: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12506: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:12194: \$? = $ac_status" >&5
+   echo "$as_me:12510: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works_CXX=yes
+       lt_cv_prog_compiler_pic_works_CXX=yes
      fi
    fi
    $rm conftest*
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_CXX" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works_CXX" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works_CXX" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works_CXX" >&6; }
 
-if test x"$lt_prog_compiler_pic_works_CXX" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works_CXX" = xyes; then
     case $lt_prog_compiler_pic_CXX in
      "" | " "*) ;;
      *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;
@@ -12234,10 +12550,10 @@ esac
 wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"
 { echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_static_works_CXX+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works_CXX+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works_CXX=no
+  lt_cv_prog_compiler_static_works_CXX=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -12250,20 +12566,20 @@ else
        $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works_CXX=yes
+         lt_cv_prog_compiler_static_works_CXX=yes
        fi
      else
-       lt_prog_compiler_static_works_CXX=yes
+       lt_cv_prog_compiler_static_works_CXX=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_CXX" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works_CXX" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works_CXX" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works_CXX" >&6; }
 
-if test x"$lt_prog_compiler_static_works_CXX" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works_CXX" = xyes; then
     :
 else
     lt_prog_compiler_static_CXX=
@@ -12291,11 +12607,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12294: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12610: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:12298: \$? = $ac_status" >&5
+   echo "$as_me:12614: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -12348,7 +12664,7 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
 
   export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   case $host_os in
-  aix4* | aix5*)
+  aix[4-9]*)
     # If we're using GNU nm, then we don't want the "-C" option.
     # -C means demangle to AIX nm, but means don't demangle with GNU nm
     if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
@@ -12370,6 +12686,7 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
     export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
   esac
+  exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
 
 { echo "$as_me:$LINENO: result: $ld_shlibs_CXX" >&5
 echo "${ECHO_T}$ld_shlibs_CXX" >&6; }
@@ -12471,7 +12788,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -13004,6 +13321,21 @@ esac
 echo "${ECHO_T}$dynamic_linker" >&6; }
 test "$dynamic_linker" = no && can_build_shared=no
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"
+fi
+
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"
+fi
+
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -13087,6 +13419,7 @@ if test -f "$ltmain"; then
     predeps_CXX \
     postdeps_CXX \
     compiler_lib_search_path_CXX \
+    compiler_lib_search_dirs_CXX \
     archive_cmds_CXX \
     archive_expsym_cmds_CXX \
     postinstall_cmds_CXX \
@@ -13335,6 +13668,10 @@ predeps=$lt_predeps_CXX
 # shared library.
 postdeps=$lt_postdeps_CXX
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
@@ -13549,7 +13886,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 # Allow CC to be a program name with arguments.
@@ -13587,7 +13924,7 @@ aix3*)
     postinstall_cmds='$RANLIB $lib'
   fi
   ;;
-aix4* | aix5*)
+aix[4-9]*)
   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
     test "$enable_shared" = yes && enable_static=no
   fi
@@ -13852,10 +14189,10 @@ if test -n "$lt_prog_compiler_pic_F77"; then
 
 { echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_pic_works_F77+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works_F77+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works_F77=no
+  lt_cv_prog_compiler_pic_works_F77=no
   ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic_F77"
@@ -13868,27 +14205,27 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:13871: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:14208: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:13875: \$? = $ac_status" >&5
+   echo "$as_me:14212: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works_F77=yes
+       lt_cv_prog_compiler_pic_works_F77=yes
      fi
    fi
    $rm conftest*
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_F77" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works_F77" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works_F77" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works_F77" >&6; }
 
-if test x"$lt_prog_compiler_pic_works_F77" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works_F77" = xyes; then
     case $lt_prog_compiler_pic_F77 in
      "" | " "*) ;;
      *) lt_prog_compiler_pic_F77=" $lt_prog_compiler_pic_F77" ;;
@@ -13915,10 +14252,10 @@ esac
 wl=$lt_prog_compiler_wl_F77 eval lt_tmp_static_flag=\"$lt_prog_compiler_static_F77\"
 { echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_static_works_F77+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works_F77+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works_F77=no
+  lt_cv_prog_compiler_static_works_F77=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -13931,20 +14268,20 @@ else
        $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works_F77=yes
+         lt_cv_prog_compiler_static_works_F77=yes
        fi
      else
-       lt_prog_compiler_static_works_F77=yes
+       lt_cv_prog_compiler_static_works_F77=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_F77" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works_F77" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works_F77" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works_F77" >&6; }
 
-if test x"$lt_prog_compiler_static_works_F77" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works_F77" = xyes; then
     :
 else
     lt_prog_compiler_static_F77=
@@ -13972,11 +14309,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:13975: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:14312: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:13979: \$? = $ac_status" >&5
+   echo "$as_me:14316: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -14056,12 +14393,13 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms_F77="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms_F77='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
   # Just being paranoid about ensuring that cc_basename is set.
   for cc_temp in $compiler""; do
@@ -14120,7 +14458,7 @@ cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 
     # See if GNU ld supports shared libraries.
     case $host_os in
-    aix3* | aix4* | aix5*)
+    aix[3-9]*)
       # On AIX/PPC, the GNU linker is very broken
       if test "$host_cpu" != ia64; then
 	ld_shlibs_F77=no
@@ -14340,7 +14678,7 @@ _LT_EOF
       fi
       ;;
 
-    aix4* | aix5*)
+    aix[4-9]*)
       if test "$host_cpu" = ia64; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
@@ -14360,7 +14698,7 @@ _LT_EOF
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
 	# need to do runtime linking.
-	case $host_os in aix4.[23]|aix4.[23].*|aix5*)
+	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
 	  for ld_flag in $LDFLAGS; do
   	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
   	    aix_use_runtimelinking=yes
@@ -14612,11 +14950,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
       link_all_deplibs_F77=yes
     if test "$GCC" = yes ; then
     	output_verbose_link_cmd='echo'
-        archive_cmds_F77='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      module_cmds_F77='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-      archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+        archive_cmds_F77="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+        module_cmds_F77="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+        archive_expsym_cmds_F77="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+        module_expsym_cmds_F77="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
     else
       case $cc_basename in
         xlc*)
@@ -15085,7 +15422,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -15618,6 +15955,21 @@ esac
 echo "${ECHO_T}$dynamic_linker" >&6; }
 test "$dynamic_linker" = no && can_build_shared=no
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"
+fi
+
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"
+fi
+
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -15701,6 +16053,7 @@ if test -f "$ltmain"; then
     predeps_F77 \
     postdeps_F77 \
     compiler_lib_search_path_F77 \
+    compiler_lib_search_dirs_F77 \
     archive_cmds_F77 \
     archive_expsym_cmds_F77 \
     postinstall_cmds_F77 \
@@ -15949,6 +16302,10 @@ predeps=$lt_predeps_F77
 # shared library.
 postdeps=$lt_postdeps_F77
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_F77
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path_F77
@@ -16123,7 +16480,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 # Allow CC to be a program name with arguments.
@@ -16172,11 +16529,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16175: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16532: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16179: \$? = $ac_status" >&5
+   echo "$as_me:16536: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -16236,7 +16593,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; }
       # built for inclusion in a dll (and should export symbols for example).
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
       # (--disable-auto-import) libraries
-      lt_prog_compiler_pic_GCJ='-DDLL_EXPORT'
+
       ;;
 
     darwin* | rhapsody*)
@@ -16306,7 +16663,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; }
     mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
-      lt_prog_compiler_pic_GCJ='-DDLL_EXPORT'
+
       ;;
 
     hpux9* | hpux10* | hpux11*)
@@ -16446,10 +16803,10 @@ if test -n "$lt_prog_compiler_pic_GCJ"; then
 
 { echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works" >&5
 echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_pic_works_GCJ+set}" = set; then
+if test "${lt_cv_prog_compiler_pic_works_GCJ+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_pic_works_GCJ=no
+  lt_cv_prog_compiler_pic_works_GCJ=no
   ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic_GCJ"
@@ -16462,27 +16819,27 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16465: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16822: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16469: \$? = $ac_status" >&5
+   echo "$as_me:16826: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_prog_compiler_pic_works_GCJ=yes
+       lt_cv_prog_compiler_pic_works_GCJ=yes
      fi
    fi
    $rm conftest*
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_GCJ" >&5
-echo "${ECHO_T}$lt_prog_compiler_pic_works_GCJ" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_pic_works_GCJ" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_pic_works_GCJ" >&6; }
 
-if test x"$lt_prog_compiler_pic_works_GCJ" = xyes; then
+if test x"$lt_cv_prog_compiler_pic_works_GCJ" = xyes; then
     case $lt_prog_compiler_pic_GCJ in
      "" | " "*) ;;
      *) lt_prog_compiler_pic_GCJ=" $lt_prog_compiler_pic_GCJ" ;;
@@ -16509,10 +16866,10 @@ esac
 wl=$lt_prog_compiler_wl_GCJ eval lt_tmp_static_flag=\"$lt_prog_compiler_static_GCJ\"
 { echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5
 echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; }
-if test "${lt_prog_compiler_static_works_GCJ+set}" = set; then
+if test "${lt_cv_prog_compiler_static_works_GCJ+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  lt_prog_compiler_static_works_GCJ=no
+  lt_cv_prog_compiler_static_works_GCJ=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
@@ -16525,20 +16882,20 @@ else
        $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
        if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_prog_compiler_static_works_GCJ=yes
+         lt_cv_prog_compiler_static_works_GCJ=yes
        fi
      else
-       lt_prog_compiler_static_works_GCJ=yes
+       lt_cv_prog_compiler_static_works_GCJ=yes
      fi
    fi
-   $rm conftest*
+   $rm -r conftest*
    LDFLAGS="$save_LDFLAGS"
 
 fi
-{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_GCJ" >&5
-echo "${ECHO_T}$lt_prog_compiler_static_works_GCJ" >&6; }
+{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_static_works_GCJ" >&5
+echo "${ECHO_T}$lt_cv_prog_compiler_static_works_GCJ" >&6; }
 
-if test x"$lt_prog_compiler_static_works_GCJ" = xyes; then
+if test x"$lt_cv_prog_compiler_static_works_GCJ" = xyes; then
     :
 else
     lt_prog_compiler_static_GCJ=
@@ -16566,11 +16923,11 @@ else
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16569: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16926: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:16573: \$? = $ac_status" >&5
+   echo "$as_me:16930: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -16650,12 +17007,13 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar
   # it will be wrapped by ` (' and `)$', so one must not match beginning or
   # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
   # as well as any symbol that contains `d'.
-  exclude_expsyms_GCJ="_GLOBAL_OFFSET_TABLE_"
+  exclude_expsyms_GCJ='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
   # the symbol is explicitly referenced.  Since portable code cannot
   # rely on this symbol name, it's probably fine to never include it in
   # preloaded symbol tables.
+  # Exclude shared library initialization/finalization symbols.
   extract_expsyms_cmds=
   # Just being paranoid about ensuring that cc_basename is set.
   for cc_temp in $compiler""; do
@@ -16714,7 +17072,7 @@ cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 
     # See if GNU ld supports shared libraries.
     case $host_os in
-    aix3* | aix4* | aix5*)
+    aix[3-9]*)
       # On AIX/PPC, the GNU linker is very broken
       if test "$host_cpu" != ia64; then
 	ld_shlibs_GCJ=no
@@ -16934,7 +17292,7 @@ _LT_EOF
       fi
       ;;
 
-    aix4* | aix5*)
+    aix[4-9]*)
       if test "$host_cpu" = ia64; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
@@ -16954,7 +17312,7 @@ _LT_EOF
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
 	# need to do runtime linking.
-	case $host_os in aix4.[23]|aix4.[23].*|aix5*)
+	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
 	  for ld_flag in $LDFLAGS; do
   	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
   	    aix_use_runtimelinking=yes
@@ -17226,11 +17584,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
       link_all_deplibs_GCJ=yes
     if test "$GCC" = yes ; then
     	output_verbose_link_cmd='echo'
-        archive_cmds_GCJ='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
-      module_cmds_GCJ='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
-      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-      archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
-      module_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+        archive_cmds_GCJ="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
+        module_cmds_GCJ="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
+        archive_expsym_cmds_GCJ="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
+        module_expsym_cmds_GCJ="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
     else
       case $cc_basename in
         xlc*)
@@ -17699,7 +18056,7 @@ aix3*)
   soname_spec='${libname}${release}${shared_ext}$major'
   ;;
 
-aix4* | aix5*)
+aix[4-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -18232,6 +18589,21 @@ esac
 echo "${ECHO_T}$dynamic_linker" >&6; }
 test "$dynamic_linker" = no && can_build_shared=no
 
+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_search_path_spec="$sys_lib_search_path_spec"
+fi
+
+sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec"
+fi
+
+sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
 if test "$GCC" = yes; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
@@ -18315,6 +18687,7 @@ if test -f "$ltmain"; then
     predeps_GCJ \
     postdeps_GCJ \
     compiler_lib_search_path_GCJ \
+    compiler_lib_search_dirs_GCJ \
     archive_cmds_GCJ \
     archive_expsym_cmds_GCJ \
     postinstall_cmds_GCJ \
@@ -18563,6 +18936,10 @@ predeps=$lt_predeps_GCJ
 # shared library.
 postdeps=$lt_postdeps_GCJ
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_GCJ
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path_GCJ
@@ -18736,7 +19113,7 @@ ac_outfile=conftest.$ac_objext
 echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
-$rm conftest*
+$rm -r conftest*
 
 
 # Allow CC to be a program name with arguments.
@@ -18796,6 +19173,7 @@ if test -f "$ltmain"; then
     predeps_RC \
     postdeps_RC \
     compiler_lib_search_path_RC \
+    compiler_lib_search_dirs_RC \
     archive_cmds_RC \
     archive_expsym_cmds_RC \
     postinstall_cmds_RC \
@@ -19044,6 +19422,10 @@ predeps=$lt_predeps_RC
 # shared library.
 postdeps=$lt_postdeps_RC
 
+# The directories searched by this compiler when creating a shared
+# library
+compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_RC
+
 # The library search path used internally by the compiler when linking
 # a shared library.
 compiler_lib_search_path=$lt_compiler_lib_search_path_RC
@@ -46801,457 +47183,6 @@ echo "${ECHO_T}no" >&6; }
 fi
 fi
 
-{ echo "$as_me:$LINENO: checking for Stream Virtual File Driver support" >&5
-echo $ECHO_N "checking for Stream Virtual File Driver support... $ECHO_C" >&6; }
-# Check whether --enable-stream-vfd was given.
-if test "${enable_stream_vfd+set}" = set; then
-  enableval=$enable_stream_vfd; STREAM_VFD=$enableval
-else
-  STREAM_VFD=yes
-fi
-
-
-if test "$STREAM_VFD" != "yes"; then
-  { echo "$as_me:$LINENO: result: not configured" >&5
-echo "${ECHO_T}not configured" >&6; }
-fi
-
-if test "$STREAM_VFD" = "yes" -a "X${enable_parallel}" = "Xyes"; then
-    { echo "$as_me:$LINENO: result: not supported in parallel" >&5
-echo "${ECHO_T}not supported in parallel" >&6; }
-    echo "    warning! Stream-VFD is not supported in parallel"
-    STREAM_VFD=no
-fi
-if test "$STREAM_VFD" = "yes" -a "X${PARALLEL}" != "X"; then
-    { echo "$as_me:$LINENO: result: not supported in parallel" >&5
-echo "${ECHO_T}not supported in parallel" >&6; }
-    echo "    warning! Stream-VFD is not supported when a parallel compiler is being used"
-    STREAM_VFD=no
-fi
-
-if test "$STREAM_VFD" = "yes"; then
-  { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-
-for ac_header in netinet/in.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## -------------------------------- ##
-## Report this to help at hdfgroup.org ##
-## -------------------------------- ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-for ac_header in netinet/tcp.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <netinet/in.h>
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  eval "$as_ac_Header=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_Header=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-for ac_header in sys/filio.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## -------------------------------- ##
-## Report this to help at hdfgroup.org ##
-## -------------------------------- ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_STREAM 1
-_ACEOF
-
-
-    { echo "$as_me:$LINENO: checking if socklen_t is defined" >&5
-echo $ECHO_N "checking if socklen_t is defined... $ECHO_C" >&6; }
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-int
-main ()
-{
-socklen_t foo; return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_SOCKLEN_T 1
-_ACEOF
-
-    { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	{ echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-
 
  USE_FILTER_SHUFFLE="no"
  USE_FILTER_FLETCHER32="no"
@@ -47455,6 +47386,43 @@ else
  echo "no"
 fi
 
+
+
+{ echo "$as_me:$LINENO: checking Whether to perform strict file format checks" >&5
+echo $ECHO_N "checking Whether to perform strict file format checks... $ECHO_C" >&6; };
+# Check whether --enable-strict-format-checks was given.
+if test "${enable_strict_format_checks+set}" = set; then
+  enableval=$enable_strict_format_checks; STRICT_CHECKS=$enableval
+fi
+
+
+if test "X-$STRICT_CHECKS" = X- ; then
+  if test -z "$DEBUG_PKG" ; then
+    STRICT_CHECKS=no
+  else
+    STRICT_CHECKS=yes
+  fi
+fi
+
+case "X-$STRICT_CHECKS" in
+  X-yes)
+    { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+    STRICT_FORMAT_CHECKS=yes
+
+cat >>confdefs.h <<\_ACEOF
+#define STRICT_FORMAT_CHECKS 1
+_ACEOF
+
+    ;;
+  X-no|*)
+    { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+    STRICT_FORMAT_CHECKS=no
+    ;;
+esac
+
+
  COMMENCE=config/commence
  CONCLUDE=config/conclude
 
@@ -47901,7 +47869,7 @@ exec 6>&1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by HDF5 $as_me 1.6.6, which was
+This file was extended by HDF5 $as_me 1.6.7, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -47954,7 +47922,7 @@ Report bugs to <bug-autoconf at gnu.org>."
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-HDF5 config.status 1.6.6
+HDF5 config.status 1.6.7
 configured by $0, generated by GNU Autoconf 2.61,
   with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
@@ -48259,6 +48227,8 @@ LN_S!$LN_S$ac_delim
 ECHO!$ECHO$ac_delim
 RANLIB!$RANLIB$ac_delim
 STRIP!$STRIP$ac_delim
+DSYMUTIL!$DSYMUTIL$ac_delim
+NMEDIT!$NMEDIT$ac_delim
 CPP!$CPP$ac_delim
 CXX!$CXX$ac_delim
 CXXFLAGS!$CXXFLAGS$ac_delim
@@ -48267,8 +48237,6 @@ CXXCPP!$CXXCPP$ac_delim
 F77!$F77$ac_delim
 FFLAGS!$FFLAGS$ac_delim
 ac_ct_F77!$ac_ct_F77$ac_delim
-LIBTOOL!$LIBTOOL$ac_delim
-USE_FILTER_DEFLATE!$USE_FILTER_DEFLATE$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 88; then
@@ -48322,6 +48290,8 @@ _ACEOF
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
+LIBTOOL!$LIBTOOL$ac_delim
+USE_FILTER_DEFLATE!$USE_FILTER_DEFLATE$ac_delim
 USE_FILTER_SZIP!$USE_FILTER_SZIP$ac_delim
 SSL!$SSL$ac_delim
 GASS!$GASS$ac_delim
@@ -48348,13 +48318,14 @@ CC_VERSION!$CC_VERSION$ac_delim
 ROOT!$ROOT$ac_delim
 DYNAMIC_DIRS!$DYNAMIC_DIRS$ac_delim
 HL!$HL$ac_delim
+STRICT_FORMAT_CHECKS!$STRICT_FORMAT_CHECKS$ac_delim
 SEARCH!$SEARCH$ac_delim
 SETX!$SETX$ac_delim
 LIBOBJS!$LIBOBJS$ac_delim
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 30; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 33; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
@@ -49147,6 +49118,9 @@ IF_YES_NO "$GASS"
 PRINT_N "                           GPFS"
 IF_YES_NO "$GPFS"
 
+PRINT_N "      Strict File Format Checks"
+IF_ENABLED_DISABLED "$STRICT_FORMAT_CHECKS"
+
 PRINT_N "        HDF5 v1.4 Compatibility"
 IF_YES_NO "$HDF5_V1_4_COMPAT"
 
@@ -49179,9 +49153,6 @@ fi
 PRINT_N "                            SRB"
 IF_YES_NO "$SRB"
 
-PRINT_N "                     Stream VFD"
-IF_ENABLED_DISABLED "$STREAM_VFD"
-
 PRINT_N "                   Threadsafety"
 IF_ENABLED_DISABLED "$THREADSAFE"
 
diff --git a/configure.in b/configure.in
index 571c2e2..acf0e19 100644
--- a/configure.in
+++ b/configure.in
@@ -16,7 +16,7 @@ dnl access to either file, you may request a copy from help at hdfgroup.org.
 dnl ----------------------------------------------------------------------
 dnl Initialize configure.
 dnl
-AC_REVISION($Id: configure.in 14063 2007-08-09 20:51:55Z mcgreevy $)
+AC_REVISION($Id: configure.in 14461 2008-01-28 19:59:31Z epourmal $)
 
 dnl AC_INIT takes the name of the package, the version number, and an
 dnl email address to report bugs. AC_CONFIG_SRCDIR takes a unique file
@@ -25,7 +25,7 @@ dnl
 dnl NOTE: Don't forget to change the version number here when we do a
 dnl release!!!
 dnl
-AC_INIT([HDF5],[1.6.6],[help at hdfgroup.org])
+AC_INIT([HDF5],[1.6.7],[help at hdfgroup.org])
 AC_CONFIG_SRCDIR([src/H5.c])
 AC_CONFIG_HEADER([src/H5config.h])
 
@@ -2089,64 +2089,6 @@ fi
 fi
 
 dnl ----------------------------------------------------------------------
-dnl Should the Stream Virtual File Driver be compiled in ?
-dnl
-AC_MSG_CHECKING([for Stream Virtual File Driver support])
-AC_ARG_ENABLE([stream-vfd],
-              [AS_HELP_STRING([--enable-stream-vfd],[Build the Stream Virtual File Driver
-                               [default=yes]])],
-              [STREAM_VFD=$enableval],
-              [STREAM_VFD=yes])
-
-dnl If the user explicitly disabled Stream VFD, say so.
-if test "$STREAM_VFD" != "yes"; then
-  AC_MSG_RESULT([not configured])
-fi
-
-dnl If the stream VFD is being used with parallel, disable it.
-dnl Using both stream VFD and parallel is a weird case and seems to cause errors on some
-dnl platforms.
-if test "$STREAM_VFD" = "yes" -a "X${enable_parallel}" = "Xyes"; then
-    AC_MSG_RESULT([not supported in parallel])
-    echo "    warning! Stream-VFD is not supported in parallel"
-    STREAM_VFD=no
-fi
-if test "$STREAM_VFD" = "yes" -a "X${PARALLEL}" != "X"; then
-    AC_MSG_RESULT([not supported in parallel])
-    echo "    warning! Stream-VFD is not supported when a parallel compiler is being used"
-    STREAM_VFD=no
-fi  
-    
-dnl Otherwise, use Stream VFD.
-if test "$STREAM_VFD" = "yes"; then
-  AC_MSG_RESULT([yes])
-  AC_CHECK_HEADERS([netinet/in.h])
-  AC_CHECK_HEADERS([netinet/tcp.h], , , [#include <netinet/in.h>])
-  AC_CHECK_HEADERS([sys/filio.h])
-  AC_DEFINE([HAVE_STREAM], [1],
-            [Define if the stream virtual file driver should be compiled])
-
-  dnl Check if 'socklen_t' available
-  AC_MSG_CHECKING([if socklen_t is defined])
-  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-  ]], [[socklen_t foo; return 0;]])],[AC_DEFINE(HAVE_SOCKLEN_T, 1, Define if `socklen_t' is defined)
-    AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)
-  ])
-fi
-
-
-dnl ----------------------------------------------------------------------
 dnl Turn on internal I/O filters by setting macros in header files
 dnl Internal I/O filters are contained entirely within the library and do
 dnl not depend on external headers or libraries.  The shuffle filter is
@@ -2387,6 +2329,40 @@ else
  echo "no"
 fi
 
+
+dnl ----------------------------------------------------------------------
+dnl Enable strict file format checks
+dnl
+AC_SUBST([STRICT_FORMAT_CHECKS])
+AC_MSG_CHECKING([Whether to perform strict file format checks]);
+AC_ARG_ENABLE([strict-format-checks],
+              [AS_HELP_STRING([--enable-strict-format-checks],[Enable strict file format checks, default=yes if
+                        debug flag is enabled, no otherwise])],
+             [STRICT_CHECKS=$enableval])
+
+dnl Default to yes if debug is enabled
+if test "X-$STRICT_CHECKS" = X- ; then
+  if test -z "$DEBUG_PKG" ; then
+    STRICT_CHECKS=no
+  else
+    STRICT_CHECKS=yes
+  fi
+fi
+
+case "X-$STRICT_CHECKS" in
+  X-yes)
+    AC_MSG_RESULT([yes])
+    STRICT_FORMAT_CHECKS=yes
+    AC_DEFINE([STRICT_FORMAT_CHECKS], [1],
+              [Define if strict file format checks are enabled])
+    ;;
+  X-no|*)
+    AC_MSG_RESULT([no])
+    STRICT_FORMAT_CHECKS=no
+    ;;
+esac
+
+
 dnl ----------------------------------------------------------------------
 dnl Build the Makefiles.  Almost every Makefile.in will begin with the line
 dnl `@COMMENCE@' and end with the line `@CONCLUDE@'.  These lines insert
@@ -2669,6 +2645,9 @@ IF_YES_NO "$GASS"
 PRINT_N "                           GPFS"
 IF_YES_NO "$GPFS"
 
+PRINT_N "      Strict File Format Checks"
+IF_ENABLED_DISABLED "$STRICT_FORMAT_CHECKS"
+
 PRINT_N "        HDF5 v1.4 Compatibility"
 IF_YES_NO "$HDF5_V1_4_COMPAT"
 
@@ -2701,9 +2680,6 @@ fi
 PRINT_N "                            SRB"
 IF_YES_NO "$SRB"
 
-PRINT_N "                     Stream VFD"
-IF_ENABLED_DISABLED "$STREAM_VFD"
-
 PRINT_N "                   Threadsafety"
 IF_ENABLED_DISABLED "$THREADSAFE"
 
diff --git a/debian/changelog b/debian/changelog
index 66d130b..51c8357 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+hdf5 (1.6.7-1) unstable; urgency=low
+
+  * New upstream release. This is a bug fix release, but for removing of the
+    virtual stream I/O library, which is now stripped out of the main library.
+    I know Cactus uses that I/O driver, but it is not packaged.
+  * Manually run "autoupdate; libtoolize --force --copy; aclocal; autoheader;
+    autoconf" in the base directory, and "autoupdate; libtoolize --force
+    --copy; aclocal; autoconf" in the c++/ directory.
+
+ -- Francesco Paolo Lovergine <frankie at debian.org>  Wed, 09 Apr 2008 13:49:53 +0200
+
 hdf5 (1.6.6-4) unstable; urgency=low
 
   * Previous fix had typos. Also now it controls archs in control.in by debian/rules. 
diff --git a/debian/control b/debian/control
index ccf4052..1108d64 100644
--- a/debian/control
+++ b/debian/control
@@ -10,12 +10,12 @@ Homepage: http://hdf.ncsa.uiuc.edu/HDF5/
 Vcs-Browser: http://svn.debian.org/viewsvn/pkg-grass/packages/hdf5/trunk/
 Vcs-Svn: svn://svn.debian.org/svn/pkg-grass/packages/hdf5/trunk
 
-Package: libhdf5-serial-1.6.6-0
+Package: libhdf5-serial-1.6.7-0
 Section: libs
 Architecture: any
 Depends: ${shlibs:Depends}
-Conflicts: libhdf5-1.6.6-0
-Provides: libhdf5-1.6.6-0
+Conflicts: libhdf5-1.6.7-0
+Provides: libhdf5-1.6.7-0
 Description: Hierarchical Data Format 5 (HDF5) - runtime files - serial version
  HDF5 is a file format and library for storing scientific data. 
  HDF5 was designed and implemented to address the deficiencies of
@@ -27,7 +27,7 @@ Description: Hierarchical Data Format 5 (HDF5) - runtime files - serial version
 Package: libhdf5-serial-dev
 Section: libdevel
 Architecture: any
-Depends: libhdf5-serial-1.6.6-0 (= ${binary:Version}), libc6-dev, zlib1g-dev, libjpeg62-dev
+Depends: libhdf5-serial-1.6.7-0 (= ${binary:Version}), libc6-dev, zlib1g-dev, libjpeg62-dev
 Conflicts: libhdf5-dev
 Provides: libhdf5-dev
 Suggests: libhdf5-doc
@@ -39,13 +39,13 @@ Description: Hierarchical Data Format 5 (HDF5) - development files - serial vers
  .
  This package contains development files for serial platforms.
 
-Package: libhdf5-lam-1.6.6-0
+Package: libhdf5-lam-1.6.7-0
 Section: libs
 Priority: extra
 Architecture: any
 Depends: ${shlibs:Depends}
-Conflicts: libhdf5-1.6.6-0
-Provides: libhdf5-1.6.6-0
+Conflicts: libhdf5-1.6.7-0
+Provides: libhdf5-1.6.7-0
 Description: Hierarchical Data Format 5 (HDF5) - runtime files - LAM version
  HDF5 is a file format and library for storing scientific data. 
  HDF5 was designed and implemented to address the deficiencies of
@@ -58,7 +58,7 @@ Package: libhdf5-lam-dev
 Section: libdevel
 Priority: extra
 Architecture: any
-Depends: libhdf5-lam-1.6.6-0 (= ${binary:Version}), libc6-dev, zlib1g-dev, libjpeg62-dev, lam4-dev
+Depends: libhdf5-lam-1.6.7-0 (= ${binary:Version}), libc6-dev, zlib1g-dev, libjpeg62-dev, lam4-dev
 Conflicts: libhdf5-dev
 Provides: libhdf5-dev
 Suggests: libhdf5-doc
@@ -70,13 +70,13 @@ Description: Hierarchical Data Format 5 (HDF5) - development files - LAM version
  .
  This package contains development files for use with LAM.
 
-Package: libhdf5-openmpi-1.6.6-0
+Package: libhdf5-openmpi-1.6.7-0
 Section: libs
 Priority: extra
 Architecture: alpha amd64 i386 ia64 powerpc sparc kfreebsd-i386 kfreebsd-amd64
 Depends: ${shlibs:Depends}
-Conflicts: libhdf5-1.6.6-0
-Provides: libhdf5-1.6.6-0
+Conflicts: libhdf5-1.6.7-0
+Provides: libhdf5-1.6.7-0
 Description: Hierarchical Data Format 5 (HDF5) - runtime files - OpenMPI version
  HDF5 is a file format and library for storing scientific data. 
  HDF5 was designed and implemented to address the deficiencies of
@@ -89,7 +89,7 @@ Package: libhdf5-openmpi-dev
 Section: libdevel
 Priority: extra
 Architecture: alpha amd64 i386 ia64 powerpc sparc kfreebsd-i386 kfreebsd-amd64
-Depends: libhdf5-openmpi-1.6.6-0 (= ${binary:Version}), libc6-dev, zlib1g-dev, libjpeg62-dev, libopenmpi-dev
+Depends: libhdf5-openmpi-1.6.7-0 (= ${binary:Version}), libc6-dev, zlib1g-dev, libjpeg62-dev, libopenmpi-dev
 Conflicts: libhdf5-dev
 Provides: libhdf5-dev
 Suggests: libhdf5-doc
@@ -101,13 +101,13 @@ Description: Hierarchical Data Format 5 (HDF5) - development files - OpenMPI ver
  .
  This package contains development files for use with OpenMPI.
 
-Package: libhdf5-mpich-1.6.6-0
+Package: libhdf5-mpich-1.6.7-0
 Section: libs
 Priority: extra
 Architecture: any
 Depends: ${shlibs:Depends}
-Conflicts: libhdf5-1.6.6-0
-Provides: libhdf5-1.6.6-0
+Conflicts: libhdf5-1.6.7-0
+Provides: libhdf5-1.6.7-0
 Description: Hierarchical Data Format 5 (HDF5) - runtime files - MPICH version
  HDF5 is a file format and library for storing scientific data. 
  HDF5 was designed and implemented to address the deficiencies of
@@ -121,7 +121,7 @@ Package: libhdf5-mpich-dev
 Section: libdevel
 Priority: extra
 Architecture: any
-Depends: libhdf5-mpich-1.6.6-0 (= ${binary:Version}), libc6-dev, zlib1g-dev, libjpeg62-dev, libmpich1.0-dev
+Depends: libhdf5-mpich-1.6.7-0 (= ${binary:Version}), libc6-dev, zlib1g-dev, libjpeg62-dev, libmpich1.0-dev
 Conflicts: libhdf5-dev
 Provides: libhdf5-dev
 Suggests: libhdf5-doc
diff --git a/doc/html/ADGuide.html b/doc/html/ADGuide.html
index 6481e3a..5d40734 100644
--- a/doc/html/ADGuide.html
+++ b/doc/html/ADGuide.html
@@ -29,6 +29,7 @@
   
   
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -47,6 +48,8 @@
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>HDF5 Application Developer's Guide</h1>
 </center>
@@ -85,15 +88,17 @@
       <tr><td colspan=3> </td></tr>
 
       <tr><td valign=top width=35%>
-          <a href="http://www.hdfgroup.org/HDF5/doc_resource/Supported_Configs/SuppConfigFeats-R166.html" 
-          target="External">Supported Configuration</a>
+          <a href="http://www.hdfgroup.org/HDF5/release/SuppConfigFeats.html">Supported Configuration</a>
           <br>   
-          <a href="http://www.hdfgroup.org/HDF5/doc_resource/Supported_Configs/SuppConfigFeats-R166.html" 
-          target="External">Features Summary</a>
+          <a href="http://www.hdfgroup.org/HDF5/release/SuppConfigFeats.html">Features Summary</a>
         </td><td></td><td valign=top>A summary of configuration features
           supported in this release
             
           <em>(external link)</em>
+          <br>
+          <a href="http://www.hdfgroup.uiuc.edu/HDF5/doc_resource/Supported_Configs/">Archive</a>
+            
+          <em>(external link)</em>
         </td></tr>
 
       <tr><td colspan=3> </td></tr>
@@ -231,6 +236,7 @@
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -249,19 +255,24 @@
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><address>
 <table width=100% border=0>
 <tr><td align=left valign=top> 
 
 <!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem -->
  
-Last modified:  3 July 2003
+Last modified:  13 November 2007
 
 </td>
 <td align=right valign=top>
diff --git a/doc/html/ADGuide/Changes.html b/doc/html/ADGuide/Changes.html
index 08bbb8a..4fad5a1 100755
--- a/doc/html/ADGuide/Changes.html
+++ b/doc/html/ADGuide/Changes.html
@@ -27,6 +27,7 @@
   
   
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -45,6 +46,8 @@
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>HDF5 Software Changes from Release to Release</h1>
 </center>
@@ -55,10 +58,41 @@ This document is intended to assist application developers who must keep
 an application synchronized with the HDF5 library or related software.
 
 
+<h2>Release 1.6.7 (current release) versus Release 1.6.6</h2> 
 
+<dir>
 
+This section lists the API-level changes that have been made in the 
+transition from the HDF5 Release 1.6.6 to Release 1.6.7.
+As this is primarily a bug-fix release, 
+the only interface changes are related to the removal of the 
+stream I/O driver, as outlined below.
 
-<h2>Release 1.6.6 (current release) versus Release 1.6.5</h2> 
+    <h3>Stream I/O Driver Removed</h3>
+    
+    The stream I/O driver, <code>H5FD_STREAM</code>, has been 
+    removd from and is no longer distributed with the HDF5 Library.
+    The following APIs have therefore been removed from this release.
+    <br>
+        <code>H5Pset_fapl_stream</code>
+    <br>
+        <code>H5Pget_fapl_stream</code>
+    <br>
+    The stream driver <small>ENUM</small> value <code>H5FD_STREAM</code>
+    has also been removed.
+
+    <p>
+    While the stream driver is no longer distributed by The HDF Group, 
+    it will be made available as a source code distribution from
+    <a href="http://hdf5-addons.origo.ethz.ch/">
+    <code>http://hdf5-addons.origo.ethz.ch/</code></a>.
+    An integration mechanism will be developed and 
+    instructions for using the driver with HDF5 
+    will be posted on that site.
+
+</dir>
+
+<h2>Release 1.6.7 versus Release 1.6.5</h2> 
 
 <dir>
 
@@ -2716,6 +2750,7 @@ V1.4.0
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -2734,15 +2769,20 @@ V1.4.0
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="../Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><!-- Created: Spring 1999 -->
 <!-- hhmts start -->
-Last modified: 13 August 2007
+Last modified: 31 January 2008
 <!-- hhmts end -->
 
 </body>
diff --git a/doc/html/ADGuide/HISTORY.txt b/doc/html/ADGuide/HISTORY.txt
index 1327827..50d52fe 100644
--- a/doc/html/ADGuide/HISTORY.txt
+++ b/doc/html/ADGuide/HISTORY.txt
@@ -4,6 +4,7 @@ This file contains history of the HDF5 libraries releases
 
 CONTENTS
 
+20.     Release Information for hdf5-1.6.6
 19.     Release Information for hdf5-1.6.5
 18.     Release Information for hdf5-1.6.4
 17.     Release Information for hdf5-1.6.3
@@ -27,6 +28,611 @@ CONTENTS
 
 [Search on the string '%%%%' for per-release section breaks.]
 
+%%%%1.6.6%%%%   Release Information for hdf5-1.6.6 (16/August/07)
+
+
+HDF5 version 1.6.6 released on Thu Aug 16 11:17:10 CDT 2007
+================================================================================
+
+INTRODUCTION
+============
+This document describes the differences between HDF5-1.6.5 and
+HDF5-1.6.6  It contains information on the platforms tested and
+known problems in HDF5-1.6.6. For more details, check the HISTORY.txt
+file in the HDF5 source.
+
+HDF5 documentation can be found in the distributed release source 
+code in the subdirectory doc/html/ or on the THG (The HDF Group) 
+ftp server (ftp.hdfgroup.org) in the directory:
+
+     /HDF5/docs/
+
+Documentation for the current release is also on the HDF web site:
+
+     http://hdfgroup.org/HDF5/doc/
+
+For more information, see the HDF5 home page at:
+
+    http://hdfgroup.org/HDF5/
+
+If you have any questions or comments, please send them to:
+
+    help at hdfgroup.org
+
+
+CONTENTS
+========
+- New Features
+- Support for New Platforms, Languages and Compilers
+- Bug Fixes since HDF5-1.6.5
+- Documentation
+- Platforms Tested
+- Supported Configuration Features Summary
+- Known Problems
+
+
+New Features
+============
+    Configuration:
+    -------------------------
+        - HDF5 now uses autoconf 2.61 to generate configure. MAM - 2007/7/25.
+
+    Source code distribution
+    ========================
+    Library:
+    --------
+        - None
+
+    Parallel Library:
+    -----------------
+        - None
+      
+    Tools:
+    ------
+        - h52gif and gif2h5: Both these tools were revised to include High
+            Level Image API support.  Tests were added to /hl/tools/gif2h5.
+            PVN - 2007/04/13
+        - h5dump: Added support for double long type H5T_NATIVE_LDOUBLE. 
+            PVN - 2007/03/13
+        - h5dump: Added support for binary output; see usage. PVN 2007/03/13
+        - h5repack: Added support for reading and writing by hyperslabs for
+            large files. PVN - 2007/03/01
+        - h5repack: A new option allows the copy to use the source file type
+            (default) instead of the previous conversion to native type. 
+            PVN - 2007/03/01
+        - h5repack: Added output of the percentage of compression achieved. 
+            PVN - 2007/03/01
+        - h5diff: Added support for comparing dataset regions. PVN - 2007/02/20
+        - h5diff: Added support for reading and comparing by hyperslabs for 
+            large files.  PVN - 2007/02/20
+        - h5diff: Added printing of dataset dimensions along with dataset name. 
+            PVN - 2007/02/19
+
+    F90 API:
+    --------
+        - None
+
+    C++ API:
+    --------
+        - Added support for Szip: DSetCreatPropList::setSzip - BMR 2007/01/24
+
+
+Support for New Platforms, Languages and Compilers
+==================================================
+        - Added support for MAC Intel (Darwin 8.8.2)  (gcc 4.0.1 and g95 0.91)
+                                EIP - 2007/02/13
+        - Added support for GNU C compiler version 4.2.1 for FreeBSD 6.2 
+          (32- and 64-bit)
+
+
+Bug Fixes since HDF5-1.6.5 Release
+==================================
+
+    Library
+    -------
+        - Fixed several bugs with writing fill values for datasets that have
+            a variable-length datatype or component datatype.  QAK - 2007/06/19
+        - STDIO driver didn't support files bigger than 2GB because the OFFSET
+            parameter of fseek is of type LONG INT, not big enough for big 
+            files.  Use fseeko instead for big files if it's available on the 
+            system.  SLU - 2007/4/5
+        - Relaxed restrictions on attribute operations to allow a file ID to
+            be used as the "location ID".  If a file ID is used, the attribute
+            operation will occur on the root group of the file.
+            QAK - 2007/02/09
+        - Fixed a bug in H5Sselect_valid() that caused an incorrect value to
+            be returned (0) instead of FAIL on error conditions such as the
+            selection or extent not being defined. CMC - 2007/01/05
+        - Fixed potential file corruption bug which could overwrite a portion
+            of an object's header when an attribute was renamed.  If the new
+            name for the attribute was longer than the old name, it was possible
+            that the attribute would grow enough to overwrite another message
+            in the object's header.  QAK - 2007/01/02
+        - Fixed file corruption bug which could write an incorrect number of
+            messages to an object's header under certain circumstances.
+            Generally, the sequence of actions to generate this bug looks
+            like this:
+                - Create an object.
+                - Close the file.
+                - Re-open the file.
+                - Add 2 (or more) attributes to the object.
+                - Close the file.
+                - Re-open the file.
+                - Delete one of the attributes on the object.
+                - Add a smaller attribute to the object.
+                - Delete the smaller atttribute on the object.
+                - Add a larger attribute on the object.
+
+            After this, the number of header messages stored for the object
+            will be off by one.  Other sequences of modifying attributes on an
+            object could also trigger this bug.  If you are opening an
+            object and the bottom few messages of the HDF5 error stack
+            resembles the following, the object has been affected by this bug:
+
+              #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry(): unable to load entry
+                major(08): Meta data cache layer
+                minor(40): Unable to load metadata into cache
+              #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load(): corrupt object header - too few messages
+                major(12): Object header layer
+                minor(40): Unable to load metadata into cache
+
+            Specifically, "corrupt object header" is the best string to search
+            for in the HDF5 error stack output.
+
+            If your files have been affected by this bug, or you are concerned
+            that your files might have been, please contact the HDF Helpdesk
+            at help at hdfgroup.org for a tool to detect and repair files
+            affected by this problem.  QAK - 2006/6/16
+
+        - Fixed various problems with retrieving names of objects, especially
+            with mounted files.  QAK - 2005/12/25
+
+    Configuration
+    -------------
+        - Changed to default to --disable-shared if parallel is enabled. 
+            AKC - 2007/5/12
+        - Corrected a coding error in configure when it tries to locate the
+          needed MPI and MPI-IO library for the fortran interface. 
+            AKC - 007/5/9.
+        - Changed default fortran compiler to g95 when gcc is used. 
+            AKC - 007/2/17.
+        - Configure can now use any tr command.  No more need for
+            defining the variable TR, nor is it supported.  AKC - 2006/05/20
+
+    Performance
+    -------------
+        - None
+   
+    Tools
+    -----
+        - Fixed a bug in h5dump regarding the display of named datatypes
+            attributes. PVN - 2007/03/13
+        - Fixed a bug in h5dump regarding the display of group comments. 
+            PVN - 2007/03/13
+        - Fixed a bug in h5dump regarding the display of hardlinks pointing 
+            to the root group.  PVN - 2007/03/13
+        - Fixed a bug in the h5diff percentage option -p.  PVN - 2007/03/05
+        - Fixed a bug in h5dump that caused array indices greater than 2^32-1
+            not to be printed correctly.  PVN - 2007/2/19
+
+    Documentation 
+    ------------- 
+        - Corrected errors and extended the descriptions in Reference Manual 
+            entries for several functions.  
+
+    F90 API
+    -------
+        - None
+                                
+    C++ API
+    -------
+          - Changed
+                  StrType::StrType(const size_t& size);
+            to
+                  StrType::StrType(const int dummy, const size_t& size);
+            because the first one clashed with
+                  StrType::StrType(const hid_t existing_id); - BMR 2007/05/03
+          - Wrappers of H5Rcreate had incorrect prototypes.  Added these
+            overloaded functions:
+                  IdComponent::reference(void* ref, const char* name, DataSpace&
+                          dataspace, H5R_type_t ref_type = H5R_DATASET_REGION)
+                  IdComponent::void reference(void* ref, const char* name)
+                  IdComponent::reference(void* ref, const H5std_string& name)
+            and will remove these incorrect member functions:
+                  DataSet::Reference
+                  DataType::Reference
+                  Group::Reference
+                  H5File::Reference
+          - Added wrappers for H5Rdereference as constructors:
+                  DataSet(IdComponent& obj, void* ref);
+                  Group(IdComponent& obj, void* ref);
+                  DataType(IdComponent& obj, void* ref);
+
+
+Documentation
+=============
+
+    HDF5 documentation can be found in the distributed release source 
+    code in the subdirectory doc/html/ (start with index.html) or on the 
+    THG (The HDF Group) ftp server (ftp.hdfgroup.org) in the directory:
+
+         /HDF5/docs/
+
+    Online documentation for the current release can be found on the THG 
+    web site:
+
+         http://hdfgroup.org/HDF5/doc/
+
+
+Platforms Tested
+================
+
+    AIX 5.2 (32/64 bit)           xlc 6.0.0.8
+    (datastar)                    xlC 6.0.0.9
+                                  xlf 8.1.1.7
+                                  mpcc_r 6.0.0.8
+                                  mpxlf_r 8.1.1.7
+
+    AIX 5.3 (32/64 bit)           xlc 7.0.0.0
+    (copper)                      xlC 7.0.
+                                  xlf 9.1.0.3
+
+    FreeBSD 6.2 (32- and 64-bit)  gcc  and g++3.4.6
+    (duty and liberty)            gcc and g++ 4.2.1
+
+    HP-UX B.11.23                 HP aC++/ANSI C B3910B A.06.02
+    (sirius)                      HP F90 v3.1 (32-bit only)
+                                  HP aC++/ANSI C B3910B A.06.02
+
+    IRIX64 6.5                    MIPSpro cc 7.4.4m
+    (ucar mop1 64 & n32)          F90 MIPSpro 7.4.4m (64 only)
+                                  C++ MIPSpro cc 7.4.4m
+
+    Linux 2.4.21-47.ELsmp #1 SMP  gcc 3.2.3
+        i686 i386 GNU/Linux
+    (osage)
+
+    Linux 2.6.9-42.0.10.ELsmp #1  gcc (GCC) 3.4.6
+        SMP i686 i386             G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
+    (kagiso)                      PGI C, Fortran, C++ 6.2-5 32-bit 
+                                  icc (ICC) 9.1 
+                                  Intel(R) C++ Compiler for 32-bit 
+                                      applications, Version 9.1
+                                  Intel(R) Fortran Compiler for 32-bit 
+                                      applications, Version 9.1 
+                                  Absoft 32-bit Fortran 95 10.0.4
+                                  MPICH mpich2-1.0.4p1 compiled with  
+                                  gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.91!) 
+
+    Linux 2.6.16.46-0.12-debug #1 
+        SMP ia64 GNU/Linux        Intel(R) C++ Version 10.0.025
+    (ucar hir1)                   Intel(R) Fortran Itanium(R) Version 10.0.025
+
+    Linux 2.6.16.46-0.14-smp #1   Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037
+        SMP x86_64 GNU/Linux      Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031
+    (smirom)                      PGI C, Fortran, C++ Version 6.2-5
+                                         for 64-bit target on x86-64
+                                  tested for both 32- and 64-bit binaries
+
+    Linux 2.6.5-7.283-rtgfx Altix 
+        SMP ia64                  Intel(R) C++ Version 9.0
+    (cobalt)                      Intel(R) Fortran Itanium(R) Version 9.0
+                                  SGI MPI
+
+    OSF1 V5.1 (QSC)               Compaq C V6.5-011 
+    (See "Known Problems.")       HP Fortran V5.5A-3548
+                                  Compaq C++ V6.5-036  
+                                  MPIX200_64_r13.4
+
+    SunOS 5.8 32- and 64-bit      Sun WorkShop 6 update 2 C 5.3
+    (sol)                         Sun WorkShop 6 update 2 Fortran 95 6.2
+                                  Sun WorkShop 6 update 2 C++ 5.3
+
+    SunOS 5.10 32- and 64-bit     Sun WorkShop 6 update 2 C 5.8
+    (linew)                       Sun WorkShop 6 update 2 Fortran 95 8.2
+                                  Sun WorkShop 6 update 2 C++ 5.8
+                                  Patch 121019-06 
+
+    Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
+    (tungsten)                    Intel(R) C++ Version 9.0
+                                  Intel(R) Fortran Compiler Version 9.0
+                                  PGI C Version 6.0
+                                  PGI C++ Version 6.0
+                                  PGI Fortran Version 6.0
+                                  gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5)
+
+    Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
+    (abe)                         Intel(R) C++ Version 10.0
+                                  Intel(R) Fortran Compiler Version 10.0
+                                  Open MPI 1.2.2
+
+    IA-64 Linux 2.4.21.SuSE_292.til1
+        ia64                      gcc (GCC) 3.2.2
+    (NCSA tg-login)               Intel(R) C++ Version 8.0
+                                  Intel(R) Fortran Compiler Version 8.0
+                                  mpich-gm-1.2.5..10-intel-r2
+
+    Windows XP                    Visual Studio 6.0
+                                  Visual Studio .NET (with Intel Fortran 9.0)
+                                  Visual Studio 2005 (with Intel Fortran 9.0)
+                                  cygwin (gcc 3.4.4)
+
+    MAC OS X Intel                Darwin 8.10.1
+                                  i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
+                                  g95 0.91
+
+
+Supported Configuration Features Summary
+========================================
+
+Key:   y   = Tested and supported
+       n   = Not supported or not tested in this release
+       C   = Cluster
+       W   = Workstation
+       ( ) = Footnote appears below second table
+
+Platform                              C        F90  F90      C++  zlib  SZIP
+                                      parallel      parallel
+Solaris2.8 32- and 64-bit             n        y    n        y    y     y
+Solaris2.10 32- and 64-bit            n        y    n        y    y     y
+IRIX64_6.5 32-bit                     n        n    n        n    y     y
+IRIX64_6.5 64-bit                     n        y    n        n    y     y
+HPUX11.23-32bit                       n        y    n        y    y     y
+HPUX11.23-64bit                       n        n    n        y    y     y
+WinXP Visual Studio 6.0               n        n    n        y    y     y
+WinXP CYGWIN                          n        n    n        y    y     y
+WinXP 2005                            n        y    n        y    y     y
+WinXP .Net                            n        y    n        y    y     y
+Mac OS X 10.4.10                      n        y    n        y    y     y
+AIX-5.2 & 5.3 32- and 64-bit          y        y    y        y    y     y
+FreeBSD 6.2 32- and 64-bit            n        n    n        y    y     y
+RedHat Linux 2.4.21              W    n        n    n        y    y     y
+SuSE Linux 2.6.9-42 i686 GNU (1) W    y        y    y        y    y     y
+SuSE Linux 2.6.9-42 i686 Intel   W    n        y    n        y    y     y
+SuSE Linux 2.6.9-42 i686 PGI     W    n        y    n        y    y     y
+SuSE Linux 2.6.16 x86_64 GNU (1) W    y        y    y        y    y     y
+SuSE Linux 2.6.16 x86_64 Intel   W    n        y    n        y    y     y
+SuSE Linux 2.6.16 x86_64 PGI     W    n        y    n        y    y     y
+RHEL 4 Linux 2.6.9 Xeon Lustre   C    y        y    y        y    y     y
+RedHat Linux 2.4 Xeon Lustre     C    n        y    n        y    y     y
+SuSE Linux 2.4 ia64              C    y        y    y        y    y     y
+SuSe Linux 2.6.16 SGI Altix ia64      n        y    n        y    y     y
+SuSe Linux 2.6.5 SGI Altix ia64       n        y    n        y    y     y
+OSF1 v5.1                             y        y    y        y    y     n
+
+
+Platform                              Shared        static-  Thread-  STREAM-
+                                      libraries(4)  exec     safe     VFD
+Solaris2.8 32- and 64-bit             y             n        y        y
+Solaris2.10 32- and 64-bit            y             n        y        y
+IRIX64_6.5 32-bit                     y             n        y        y
+IRIX64_6.5 64-bit                     y             n        y        y
+HPUX11.23-32bit                       y (3)         n        n        y
+HPUX11.23-64bit                       y (3)         n        n        y
+WinXP Visual Studio 6.0               y             n        n        n
+WinXP CYGWIN                          y             n        n        n
+WinXP 2005                            y             n        n        n
+WinXP .Net                            y             n        n        n
+Mac OS X 10.4.10                      y             n        n        y
+AIX-5.2 & 5.3 32- and 64-bit          n             n        n        y
+FreeBSD 6.2 32- and 64-bit            y             n        n        y
+RedHat Linux 2.4.21              W    y             n        n        y
+SuSE Linux 2.6.9-42 i686 GNU (1) W    y             n        y        y
+SuSE Linux 2.6.9-42 i686 Intel   W    y             n        n        y
+SuSE Linux 2.6.9-42 i686 PGI     W    n             n        n        y
+SuSE Linux 2.6.16 x86_64 GNU (1) W    y             n        n        y
+SuSE Linux 2.6.16 x86_64 Intel   W    y             n        n        y
+SuSE Linux 2.6.16 x86_64 PGI     W    n             n        n        y
+RHEL 4 Linux 2.6.9 Xeon Lustre   C    y             n        n        y
+RedHat Linux 2.4 Xeon Lustre     C    y             n        n        y
+SuSE Linux 2.4 ia64              C    y             n        n        y
+SuSe Linux 2.6.16 SGI Altix ia64      n             n        n        y
+SuSe Linux 2.6.5 SGI Altix ia64       n             n        n        y
+OSF1 v5.1                             n             n        n        y
+
+Compiler versions for each platform are listed in the "Platforms Tested" 
+table found elsewhere in this file (RELEASE.txt).  Unless otherwise noted, 
+compilers used are the system compilers.
+
+Footnotes:
+(1) Fortran compiled with g95.
+(2) In most cases, shared libraries are provided only for the C library, 
+    except on Windows where they are provided for C, C++, and Fortran.
+(3) C++ works only with static libraries.
+
+
+Known Problems
+==============
+* QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It
+  does not include the -lmpi properly.  This will be fixed in the next
+  release.  AKC - 2007/08/07.
+
+* On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared
+  library, especially for h5repacktst and h52gifgentst, the following (or
+  similar) error message may appear:
+  "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname
+  'libh5test.so.1' under any of the filenames .......(bunch of directories)
+  "
+  And the testing will fail. 
+  We believe this is a libtool problem. One way to get rid of this is to
+  add the paths of libh5test.so.1 and libh5.so.1 to the shared library path.
+
+  For 32-bit:
+  You may do this, under csh:
+  setenv LD_LIBRARYN32_PATH .......(existing pathes):[full path of HDF5
+  directory/test/.libs]:[full path of HDF5 directory/src/.libs]
+
+  For 64-bit:
+  setenv LD_LIBRARY64_PATH ......(existing pathes):[full path of HDF5
+  directory/test/.libs]:[full path of HDF5 directory/src/.libs]
+
+  NOTE: This problem ONLY affects the testing of the HDF5 library when you 
+  build from source. It won't affect any applications that would like to link 
+  with the HDF5 shared library since the shared library path needs to be set 
+  anyway.  KY - 2007/8/2
+
+* QSC (an HP alpha-based OSF1 cluster) failed the testpar/testphdf5 sub-test
+  "calloc".  All other tests passed.  This indicates that a dataset using 
+  chunked storage created by serial HDF5 may not work properly with parallel 
+  HDF5.  The calloc test can be skipped by running "prun ... testphdf5 -x 
+  calloc".  AKC - 2007/7/12.
+
+* The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has
+  an optimization error in the datax types conversion code.  Before running
+  configure, edit the file config/intel-flags by changing the setting of
+  PROD_CFLAGS from -O3 to -O0.  Then run configure.  AKC - 2005/11/10.
+
+* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 on IRIX
+  6.5, set the environment variable MPI_TYPE_MAX to be a bigger number, for 
+  example 120000, in order to pass the complicated collective IO tests inside 
+  the parallel HDF5 library. This is not a problem inside the parallel HDF5 
+  library. You can always set a bigger number on your system.  KY - 2005/10/6
+
+* A contiguous or chunked dataset created by a sequential version of HDF5 
+  might not be able to be modified with a parallel version of the library. 
+  Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the 
+  dataset creation property list to avoid the problem.  EIP - 2005/09/09
+
+* The dataset created or rewritten with the v1.6.3 library or after can't 
+  be read with the v1.6.2 library or before when Fletcher32 EDC (a filter) is 
+  enabled.  There was a bug in the calculating code of the Fletcher32 
+  checksum in the library before v1.6.3.  The checksum value wasn't consistent 
+  between big-endian and little-endian systems.  This bug was fixed in 
+  Release 1.6.3.  However, after fixing the bug, the checksum value is no 
+  longer the same as before on little-endian system.  The library release 
+  after 1.6.4 can still read the dataset created or rewritten with the library
+  of v1.6.2 or before.  SLU - 2005/7/8
+
+* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
+  processor, there's a bug in the compiler for optimization(-O2).  The library
+  failed in several tests, all related to the multi driver.  The problem has 
+  been reported to the vendor.  
+
+* test/big fails sometimes with the message "Possible overlap with another
+  region."  The test selects regions randomly, and this error occurs when
+  two regions overlap each other; it is a bug in the test and not in
+  HDF5.  Since the error is triggered by a random situation, it will
+  usually disappear if the test is re-run.
+
+* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but 
+  have a "guard" statement in stdint.h that will #error and skip the rest
+  of the header file if the C99 option is not used explicitly.  Hardsetting
+  $CC to c99 will resolve the problem. AKC - 2004/12/13
+
+* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
+  messages like "INFO: 0031-XXX ...".  This is from the command poe.
+  Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
+  and run the tests again.
+
+  The tests may also fail with messages like "The socket name is already
+  in use".  HDF5 does not use sockets (except for stream-VFD).  This is
+  due to problems of the poe command trying to set up the debug socket.
+  Check whether there are many old /tmp/s.pedb.* files staying around.  These 
+  are sockets used by the poe command and left behind due to failed commands.
+  Ask your system administrator to clean them out.  Lastly, request IBM
+  to provide a means to run poe without the debug socket.
+
+* The h5dump tests may fail to match the expected output on some platforms
+  (e.g. parallel jobs, Windows) where the error messages directed to
+  "stderr" do not appear in the "right order" with output from stdout.
+  This is not an error.
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+  application is already using that port address, the test will hang
+  indefinitely and has to be terminated by the kill command. To try the
+  test again, change the port address in test/stream_test.c to one not
+  being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+  platforms. This is due to the fact that not all of the system
+  libraries on Solaris are available in a static format.
+
+  The --enable-static-exec configure flag also fails to correctly compile
+  on the IBM SP2 platform for the serial mode. The parallel mode works fine
+  with this option.
+
+  The --enable-static-exec configure flag also fails to correctly compile
+  on the HPUX 11.00.
+  
+  It is suggested that you don't use this option on these platforms
+  during configuration.
+
+* The Stream VFD is not supported under Windows.
+
+* Use the --disable-shared configure flag if building with Absoft Fortran
+  compiler.
+
+* Information about building with PGI and Intel compilers is available in
+  INSTALL file sections 5.7 and 5.8.
+
+* In LANL QSC, the new cc compiler has problems converting small values of
+  long long (absolute values less than 1**-308) to double.  This triggers
+  the test/dtypes to report failure in the following test:
+      Testing random sw long double -> double conversions
+  If -ieee is used, the converted doubles spread over the range 0.0 to 
+  10**-308.  If -ieee is not used, the converted double values are mostly 
+  0.0, but occasionally appear as 10**-308.  This has been reported to the 
+  system staff.
+
+  All other tests have passed.
+
+* On at least one system, SDSC DataStar, the scheduler (in this case
+  LoadLeveler) sends job status updates to standard error when you run
+  any executable that was compiled with the parallel compilers.
+
+  This causes problems when running "make check" on parallel builds, as
+  many of the tool tests function by saving the output from test runs,
+  and comparing it to an exemplar.
+
+  The best solution is to reconfigure the target system so it no longer
+  inserts the extra text.  However, this may not be practical.
+
+  In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
+  the configure and build.  This will cause "make check" to continue after
+  detecting errors in the tool tests.  However, in the case of SDSC DataStar,
+  it also leaves you with some 150 "failed" tests to examine by hand.
+
+  A second solution is to write a script to run serial tests and filter
+  out the text added by the scheduler.  A sample script used on SDSC
+  DataStar is given below, but you will probably have to customize it
+  for your installation.
+
+  Observe that the basic idea is to insert the script as the first item
+  on the command line which executes the test.  The script then
+  executes the test and filters out the offending text before passing
+  it on.
+
+        #!/bin/csh
+
+        set STDOUT_FILE=~/bin/serial_filter.stdout
+        set STDERR_FILE=~/bin/serial_filter.stderr
+
+        rm -f $STDOUT_FILE $STDERR_FILE
+
+        ($* > $STDOUT_FILE) >& $STDERR_FILE
+
+        set RETURN_VALUE=$status
+
+        cat $STDOUT_FILE
+
+        tail +3 $STDERR_FILE
+
+        exit $RETURN_VALUE
+
+  You get the HDF5 make files and test scripts to execute your filter script
+  by setting the environment variable "RUNSERIAL" to the full path of the
+  script prior to running configure for parallel builds.  Remember to
+  "unsetenv RUNSERIAL" before running configure for a serial build.
+
+  Note that the RUNSERIAL environment variable exists so that we can
+  prefix serial runs as necessary on the target system.  On DataStar,
+  no prefix is necessary.  However, on an MPICH system, the prefix might
+  have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
+  get the serial tests to run at all.
+
+  In such cases, you will have to include the regular prefix in your
+  filter script.  JM - 2004/9/15
+
 %%%%1.6.5%%%%   Release Information for hdf5-1.6.5 (10/November/05)
 
 
diff --git a/doc/html/ADGuide/ImageSpec.html b/doc/html/ADGuide/ImageSpec.html
index 20378ea..29d1fb1 100755
--- a/doc/html/ADGuide/ImageSpec.html
+++ b/doc/html/ADGuide/ImageSpec.html
@@ -30,6 +30,7 @@
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -48,6 +49,8 @@
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>
 HDF5 Image and Palette Specification</h1></center>
@@ -1251,6 +1254,7 @@ it may or may not be correct for a given application.</p>
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -1269,12 +1273,17 @@ it may or may not be correct for a given application.</p>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="../Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><!-- Created: Spring 1999 -->
 <!-- hhmts start -->
 Last modified: 8 June 2005 
diff --git a/doc/html/ADGuide/RELEASE.txt b/doc/html/ADGuide/RELEASE.txt
index adb13a5..fd0f6b3 100644
--- a/doc/html/ADGuide/RELEASE.txt
+++ b/doc/html/ADGuide/RELEASE.txt
@@ -1,37 +1,37 @@
-HDF5 version 1.6.6 released on Thu Aug 16 11:17:10 CDT 2007
+HDF5 version 1.6.7 released on Thu Jan 31 21:09:10 CST 2008
 ================================================================================
 
 INTRODUCTION
 ============
-This document describes the differences between HDF5-1.6.5 and
-HDF5-1.6.6  It contains information on the platforms tested and
-known problems in HDF5-1.6.6. For more details, check the HISTORY.txt
-file in the HDF5 source.
+This document describes the differences between HDF5-1.6.6 and HDF5-1.6.7  
+It contains information on the platforms tested and known problems in
+HDF5-1.6.7. For more details, check the HISTORY.txt file in the HDF5 source.
 
-HDF5 documentation can be found in the distributed release source 
-code in the subdirectory doc/html/ or on the THG (The HDF Group) 
-ftp server (ftp.hdfgroup.org) in the directory:
+HDF5 documentation can be found in the distributed release source code
+in the subdirectory doc/html/ or on the THG (The HDF Group) FTP server: 
 
-     /HDF5/docs/
+     ftp://ftp.hdfgroup.org/HDF5/docs/
 
-Documentation for the current release is also on the HDF web site:
+Documentation for the current release in the HDF5 Release 1.6.x series is 
+also on the HDF web site:
 
-     http://hdfgroup.org/HDF5/doc/
+     http://hdfgroup.org/HDF5/doc1.6/
 
-For more information, see the HDF5 home page at:
+For more information, see the HDF5 home page:
 
-    http://hdfgroup.org/HDF5/
+     http://hdfgroup.org/products/hdf5/
 
-If you have any questions or comments, please send them to:
+If you have any questions or comments, please see the HDF Support page
+for a list of available resources:
 
-    help at hdfgroup.org
+     http://hdfgroup.org/services/support.html
 
 
 CONTENTS
 ========
 - New Features
 - Support for New Platforms, Languages and Compilers
-- Bug Fixes since HDF5-1.6.5
+- Bug Fixes since HDF5-1.6.6
 - Documentation
 - Platforms Tested
 - Supported Configuration Features Summary
@@ -42,215 +42,126 @@ New Features
 ============
     Configuration:
     -------------------------
-        - HDF5 now uses autoconf 2.61 to generate configure. MAM - 2007/7/25.
+    '--enable-stream-vfd' and '--disable-stream-vfd' are no longer valid 
+    configure options because the stream I/O driver has ben removed from
+    the distribution.
 
     Source code distribution
     ========================
     Library:
     --------
-        - None
+    The stream I/O driver is not included with the HDF5 Library in this
+    release.  The source code files hdf5/src/H5FDstream.c and
+    hdf5/src/H5FDstream.h and the driver ENUM value H5FD_STREAM have been 
+    removed.
 
     Parallel Library:
     -----------------
-        - None
-      
+    None      
+
     Tools:
     ------
-        - h52gif and gif2h5: Both these tools were revised to include High
-            Level Image API support.  Tests were added to /hl/tools/gif2h5.
-            PVN - 2007/04/13
-        - h5dump: Added support for double long type H5T_NATIVE_LDOUBLE. 
-            PVN - 2007/03/13
-        - h5dump: Added support for binary output; see usage. PVN 2007/03/13
-        - h5repack: Added support for reading and writing by hyperslabs for
-            large files. PVN - 2007/03/01
-        - h5repack: A new option allows the copy to use the source file type
-            (default) instead of the previous conversion to native type. 
-            PVN - 2007/03/01
-        - h5repack: Added output of the percentage of compression achieved. 
-            PVN - 2007/03/01
-        - h5diff: Added support for comparing dataset regions. PVN - 2007/02/20
-        - h5diff: Added support for reading and comparing by hyperslabs for 
-            large files.  PVN - 2007/02/20
-        - h5diff: Added printing of dataset dimensions along with dataset name. 
-            PVN - 2007/02/19
+    None
 
     F90 API:
     --------
-        - None
+    None
 
     C++ API:
     --------
-        - Added support for Szip: DSetCreatPropList::setSzip - BMR 2007/01/24
+    None
 
 
 Support for New Platforms, Languages and Compilers
 ==================================================
-        - Added support for MAC Intel (Darwin 8.8.2)  (gcc 4.0.1 and g95 0.91)
-                                EIP - 2007/02/13
-        - Added support for GNU C compiler version 4.2.1 for FreeBSD 6.2 
-          (32- and 64-bit)
+
+No new platorms, languages, or compilers are supported in this release.
 
 
-Bug Fixes since HDF5-1.6.5 Release
+Bug Fixes since HDF5-1.6.6 Release
 ==================================
 
     Library
     -------
-        - Fixed several bugs with writing fill values for datasets that have
-            a variable-length datatype or component datatype.  QAK - 2007/06/19
-        - STDIO driver didn't support files bigger than 2GB because the OFFSET
-            parameter of fseek is of type LONG INT, not big enough for big 
-            files.  Use fseeko instead for big files if it's available on the 
-            system.  SLU - 2007/4/5
-        - Relaxed restrictions on attribute operations to allow a file ID to
-            be used as the "location ID".  If a file ID is used, the attribute
-            operation will occur on the root group of the file.
-            QAK - 2007/02/09
-        - Fixed a bug in H5Sselect_valid() that caused an incorrect value to
-            be returned (0) instead of FAIL on error conditions such as the
-            selection or extent not being defined. CMC - 2007/01/05
-        - Fixed potential file corruption bug which could overwrite a portion
-            of an object's header when an attribute was renamed.  If the new
-            name for the attribute was longer than the old name, it was possible
-            that the attribute would grow enough to overwrite another message
-            in the object's header.  QAK - 2007/01/02
-        - Fixed file corruption bug which could write an incorrect number of
-            messages to an object's header under certain circumstances.
-            Generally, the sequence of actions to generate this bug looks
-            like this:
-                - Create an object.
-                - Close the file.
-                - Re-open the file.
-                - Add 2 (or more) attributes to the object.
-                - Close the file.
-                - Re-open the file.
-                - Delete one of the attributes on the object.
-                - Add a smaller attribute to the object.
-                - Delete the smaller atttribute on the object.
-                - Add a larger attribute on the object.
-
-            After this, the number of header messages stored for the object
-            will be off by one.  Other sequences of modifying attributes on an
-            object could also trigger this bug.  If you are opening an
-            object and the bottom few messages of the HDF5 error stack
-            resembles the following, the object has been affected by this bug:
-
-              #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry(): unable to load entry
-                major(08): Meta data cache layer
-                minor(40): Unable to load metadata into cache
-              #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load(): corrupt object header - too few messages
-                major(12): Object header layer
-                minor(40): Unable to load metadata into cache
-
-            Specifically, "corrupt object header" is the best string to search
-            for in the HDF5 error stack output.
-
-            If your files have been affected by this bug, or you are concerned
-            that your files might have been, please contact the HDF Helpdesk
-            at help at hdfgroup.org for a tool to detect and repair files
-            affected by this problem.  QAK - 2006/6/16
-
-        - Fixed various problems with retrieving names of objects, especially
-            with mounted files.  QAK - 2005/12/25
+        - H5Iget_name could not be used with an object identifier returned  
+            by H5Rdereference; the function would not be able to determine 
+            a valid object name.  It has been fixed.  SLU - 2008/1/30 
+        - Changed library's behavior for reading files that might have
+            corrupted object header information from a previous (buggy)
+            version of the library.  By default, the library now rebuilds the
+            correct object header information instead of issuing an error.
+            Previous "strict" file format interpretation can be enabled with
+            the "--enable-strict-format-checks" configure option.
+            QAK - 2008/01/13
+        - Fixed bug in H5Epush() which was clearing the error stack before
+            pushing new error value.  QAK - 2007/08/23
+        - Fixed bug in H5Ewalk() which was not passing back the return value
+            from error stack walking callback.  QAK - 2007/08/23
+
 
     Configuration
     -------------
-        - Changed to default to --disable-shared if parallel is enabled. 
-            AKC - 2007/5/12
-        - Corrected a coding error in configure when it tries to locate the
-          needed MPI and MPI-IO library for the fortran interface. 
-            AKC - 007/5/9.
-        - Changed default fortran compiler to g95 when gcc is used. 
-            AKC - 007/2/17.
-        - Configure can now use any tr command.  No more need for
-            defining the variable TR, nor is it supported.  AKC - 2006/05/20
+     None
+
 
     Performance
     -------------
-        - None
+     None
    
+
     Tools
     -----
-        - Fixed a bug in h5dump regarding the display of named datatypes
-            attributes. PVN - 2007/03/13
-        - Fixed a bug in h5dump regarding the display of group comments. 
-            PVN - 2007/03/13
-        - Fixed a bug in h5dump regarding the display of hardlinks pointing 
-            to the root group.  PVN - 2007/03/13
-        - Fixed a bug in the h5diff percentage option -p.  PVN - 2007/03/05
-        - Fixed a bug in h5dump that caused array indices greater than 2^32-1
-            not to be printed correctly.  PVN - 2007/2/19
+     None
+
 
     Documentation 
     ------------- 
-        - Corrected errors and extended the descriptions in Reference Manual 
-            entries for several functions.  
+     None
+
 
     F90 API
     -------
-        - None
+     None
+
                                 
     C++ API
     -------
-          - Changed
-                  StrType::StrType(const size_t& size);
-            to
-                  StrType::StrType(const int dummy, const size_t& size);
-            because the first one clashed with
-                  StrType::StrType(const hid_t existing_id); - BMR 2007/05/03
-          - Wrappers of H5Rcreate had incorrect prototypes.  Added these
-            overloaded functions:
-                  IdComponent::reference(void* ref, const char* name, DataSpace&
-                          dataspace, H5R_type_t ref_type = H5R_DATASET_REGION)
-                  IdComponent::void reference(void* ref, const char* name)
-                  IdComponent::reference(void* ref, const H5std_string& name)
-            and will remove these incorrect member functions:
-                  DataSet::Reference
-                  DataType::Reference
-                  Group::Reference
-                  H5File::Reference
-          - Added wrappers for H5Rdereference as constructors:
-                  DataSet(IdComponent& obj, void* ref);
-                  Group(IdComponent& obj, void* ref);
-                  DataType(IdComponent& obj, void* ref);
+     None
 
 
 Documentation
 =============
-
     HDF5 documentation can be found in the distributed release source 
     code in the subdirectory doc/html/ (start with index.html) or on the 
-    THG (The HDF Group) ftp server (ftp.hdfgroup.org) in the directory:
+    THG (The HDF Group) FTP server: 
+
+         ftp://ftp.hdfgroup.org/HDF5/docs/
+
+    Online documentation for the current release in the HDF5 Release 1.6.x 
+    series can be found on the THG web site:
 
-         /HDF5/docs/
+         http://hdfgroup.org/HDF5/doc1.6/
 
-    Online documentation for the current release can be found on the THG 
-    web site:
+    A listing of interface changes from release to release can be found
+    in the document "HDF5 Software Changes from Release to Release":
 
-         http://hdfgroup.org/HDF5/doc/
+         http://hdfgroup.org/HDF5/doc1.6/ADGuide/Changes.html
+ 
+    Since the stream I/O driver is not included in this release, the 
+    functions H5Pset_fapl_stream and H5Pget_fapl_stream and the stream 
+    ENUM value H5FD_STREAM have been removed from the documentation.
 
 
 Platforms Tested
 ================
 
-    AIX 5.2 (32/64 bit)           xlc 6.0.0.8
-    (datastar)                    xlC 6.0.0.9
-                                  xlf 8.1.1.7
-                                  mpcc_r 6.0.0.8
-                                  mpxlf_r 8.1.1.7
-
-    AIX 5.3 (32/64 bit)           xlc 7.0.0.0
-    (copper)                      xlC 7.0.
-                                  xlf 9.1.0.3
+    AIX 5.2 (32/64 bit)           xlc 8.0.0.11
+    (datastar)                    xlC 8.0
+                                  xlf 10.01.0000.0002
 
     FreeBSD 6.2 (32- and 64-bit)  gcc  and g++3.4.6
     (duty and liberty)            gcc and g++ 4.2.1
 
-    HP-UX B.11.23                 HP aC++/ANSI C B3910B A.06.02
-    (sirius)                      HP F90 v3.1 (32-bit only)
-                                  HP aC++/ANSI C B3910B A.06.02
-
     IRIX64 6.5                    MIPSpro cc 7.4.4m
     (ucar mop1 64 & n32)          F90 MIPSpro 7.4.4m (64 only)
                                   C++ MIPSpro cc 7.4.4m
@@ -260,36 +171,31 @@ Platforms Tested
     (osage)
 
     Linux 2.6.9-42.0.10.ELsmp #1  gcc (GCC) 3.4.6
-        SMP i686 i386             G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
-    (kagiso)                      PGI C, Fortran, C++ 6.2-5 32-bit 
-                                  icc (ICC) 9.1 
+         SMP i686 i386             G95 (GCC 4.0.3 (g95 0.91!) April 18 2007)
+    (kagiso)                      PGI C, Fortran, C++ 7.0-7 32-bit 
+                                  Intel(R) C Compiler for 32-bit 
+                                      applications, Version 9.1 
                                   Intel(R) C++ Compiler for 32-bit 
                                       applications, Version 9.1
                                   Intel(R) Fortran Compiler for 32-bit 
                                       applications, Version 9.1 
                                   Absoft 32-bit Fortran 95 10.0.4
-                                  MPICH mpich2-1.0.4p1 compiled with  
-                                  gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.91!) 
+                                  MPICH mpich2-1.0.6p1 compiled with  
+                                  gcc 4.2.1 and G95 (GCC 4.0.3 (g95 0.91!) 
 
-    Linux 2.6.16.46-0.12-debug #1 
-        SMP ia64 GNU/Linux        Intel(R) C++ Version 10.0.025
-    (ucar hir1)                   Intel(R) Fortran Itanium(R) Version 10.0.025
+    Linux 2.6.16.46-0.12-debug #1 Intel(R) C++ Version 10.0.025
+        SMP ia64 GNU/Linux        Intel(R) Fortran Itanium(R) Version 10.0.025
+    (ucar hir1)                   
 
     Linux 2.6.16.46-0.14-smp #1   Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037
         SMP x86_64 GNU/Linux      Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031
-    (smirom)                      PGI C, Fortran, C++ Version 6.2-5
+    (smirom)                      PGI C, Fortran, C++ Version 7.0-7
                                          for 64-bit target on x86-64
                                   tested for both 32- and 64-bit binaries
 
-    Linux 2.6.5-7.283-rtgfx Altix 
-        SMP ia64                  Intel(R) C++ Version 9.0
-    (cobalt)                      Intel(R) Fortran Itanium(R) Version 9.0
-                                  SGI MPI
-
-    OSF1 V5.1 (QSC)               Compaq C V6.5-011 
-    (See "Known Problems.")       HP Fortran V5.5A-3548
-                                  Compaq C++ V6.5-036  
-                                  MPIX200_64_r13.4
+    Linux 2.6.5-7.287.3-sn2 #1    Intel(R) C++ Version 9.0
+        Altix SMP ia64            Intel(R) Fortran Itanium(R) Version 9.0
+    (cobalt)                      SGI MPI
 
     SunOS 5.8 32- and 64-bit      Sun WorkShop 6 update 2 C 5.3
     (sol)                         Sun WorkShop 6 update 2 Fortran 95 6.2
@@ -303,9 +209,9 @@ Platforms Tested
     Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
     (tungsten)                    Intel(R) C++ Version 9.0
                                   Intel(R) Fortran Compiler Version 9.0
-                                  PGI C Version 6.0
-                                  PGI C++ Version 6.0
-                                  PGI Fortran Version 6.0
+                                  PGI C Version 6.0-5
+                                  PGI C++ Version 6.0-5
+                                  PGI Fortran Version 6.0-5
                                   gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5)
 
     Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
@@ -313,17 +219,18 @@ Platforms Tested
                                   Intel(R) Fortran Compiler Version 10.0
                                   Open MPI 1.2.2
 
-    IA-64 Linux 2.4.21.SuSE_292.til1
+    IA-64 Linux 2.4.21-309.tg1 #1 SMP
         ia64                      gcc (GCC) 3.2.2
-    (NCSA tg-login)               Intel(R) C++ Version 8.0
-                                  Intel(R) Fortran Compiler Version 8.0
-                                  mpich-gm-1.2.5..10-intel-r2
+    (NCSA tg-login)               Intel(R) C++ Version 8.1
+                                  Intel(R) Fortran Compiler Version 8.1
+                                  mpich-gm-1.2.6..14-intel-r2
 
     Windows XP                    Visual Studio 6.0
-                                  Visual Studio .NET (with Intel Fortran 9.0)
-                                  Visual Studio 2005 (with Intel Fortran 9.0)
+                                  Visual Studio .NET (with Intel Fortran 9.1)
+                                  Visual Studio 2005 (with Intel Fortran 9.1)
                                   cygwin (gcc 3.4.4)
 
+    Windows Vista                 Visual studio 2005
     MAC OS X Intel                Darwin 8.10.1
                                   i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
                                   g95 0.91
@@ -340,62 +247,58 @@ Key:   y   = Tested and supported
 
 Platform                              C        F90  F90      C++  zlib  SZIP
                                       parallel      parallel
-Solaris2.8 32- and 64-bit             n        y    n        y    y     y
-Solaris2.10 32- and 64-bit            n        y    n        y    y     y
+Solaris2.8 32-bit                     n        y    n        y    n     y
+Solaris2.8 64-bit                     n        y    n        n    y     y
+Solaris2.10 32-bit                    n        y    n        y    y     y
+Solaris2.10 64-bit                    n        y    n        n    y     y
 IRIX64_6.5 32-bit                     n        n    n        n    y     y
 IRIX64_6.5 64-bit                     n        y    n        n    y     y
-HPUX11.23-32bit                       n        y    n        y    y     y
-HPUX11.23-64bit                       n        n    n        y    y     y
 WinXP Visual Studio 6.0               n        n    n        y    y     y
 WinXP CYGWIN                          n        n    n        y    y     y
 WinXP 2005                            n        y    n        y    y     y
 WinXP .Net                            n        y    n        y    y     y
+WinVista 2005                         n        n    n        y    y     y
 Mac OS X 10.4.10                      n        y    n        y    y     y
 AIX-5.2 & 5.3 32- and 64-bit          y        y    y        y    y     y
 FreeBSD 6.2 32- and 64-bit            n        n    n        y    y     y
-RedHat Linux 2.4.21              W    n        n    n        y    y     y
-SuSE Linux 2.6.9-42 i686 GNU (1) W    y        y    y        y    y     y
-SuSE Linux 2.6.9-42 i686 Intel   W    n        y    n        y    y     y
-SuSE Linux 2.6.9-42 i686 PGI     W    n        y    n        y    y     y
-SuSE Linux 2.6.16 x86_64 GNU (1) W    y        y    y        y    y     y
-SuSE Linux 2.6.16 x86_64 Intel   W    n        y    n        y    y     y
-SuSE Linux 2.6.16 x86_64 PGI     W    n        y    n        y    y     y
-RHEL 4 Linux 2.6.9 Xeon Lustre   C    y        y    y        y    y     y
-RedHat Linux 2.4 Xeon Lustre     C    n        y    n        y    y     y
+RedHat Linux 2.4.21              W    n        n    n        n    y     n
+RedHat Linux 2.6.9-42 i686 GNU (1) W  y        y    y        y    y     y
+RedHat Linux 2.6.9-42 i686 Intel   W  n        y    n        y    y     n
+RedHat Linux 2.6.9-42 i686 PGI     W  n        y    n        y    y     n
+SuSE Linux 2.6.16 x86_64 GNU (1) W    y        y    n        y    y     y
+SuSE Linux 2.6.16 x86_64 Intel   W    n        y    n        y    y     n
+SuSE Linux 2.6.16 x86_64 PGI     W    n        y    n        y    y     n
+RHEL 4 Linux 2.6.9 Xeon Lustre   C    n        y    n        y    y     y
+RedHat Linux 2.4 Xeon Lustre     C    n        y    n        y    y     n
 SuSE Linux 2.4 ia64              C    y        y    y        y    y     y
-SuSe Linux 2.6.16 SGI Altix ia64      n        y    n        y    y     y
 SuSe Linux 2.6.5 SGI Altix ia64       n        y    n        y    y     y
-OSF1 v5.1                             y        y    y        y    y     n
-
-
-Platform                              Shared        static-  Thread-  STREAM-
-                                      libraries(4)  exec     safe     VFD
-Solaris2.8 32- and 64-bit             y             n        y        y
-Solaris2.10 32- and 64-bit            y             n        y        y
-IRIX64_6.5 32-bit                     y             n        y        y
-IRIX64_6.5 64-bit                     y             n        y        y
-HPUX11.23-32bit                       y (3)         n        n        y
-HPUX11.23-64bit                       y (3)         n        n        y
-WinXP Visual Studio 6.0               y             n        n        n
-WinXP CYGWIN                          y             n        n        n
-WinXP 2005                            y             n        n        n
-WinXP .Net                            y             n        n        n
-Mac OS X 10.4.10                      y             n        n        y
-AIX-5.2 & 5.3 32- and 64-bit          n             n        n        y
-FreeBSD 6.2 32- and 64-bit            y             n        n        y
-RedHat Linux 2.4.21              W    y             n        n        y
-SuSE Linux 2.6.9-42 i686 GNU (1) W    y             n        y        y
-SuSE Linux 2.6.9-42 i686 Intel   W    y             n        n        y
-SuSE Linux 2.6.9-42 i686 PGI     W    n             n        n        y
-SuSE Linux 2.6.16 x86_64 GNU (1) W    y             n        n        y
-SuSE Linux 2.6.16 x86_64 Intel   W    y             n        n        y
-SuSE Linux 2.6.16 x86_64 PGI     W    n             n        n        y
-RHEL 4 Linux 2.6.9 Xeon Lustre   C    y             n        n        y
-RedHat Linux 2.4 Xeon Lustre     C    y             n        n        y
-SuSE Linux 2.4 ia64              C    y             n        n        y
-SuSe Linux 2.6.16 SGI Altix ia64      n             n        n        y
-SuSe Linux 2.6.5 SGI Altix ia64       n             n        n        y
-OSF1 v5.1                             n             n        n        y
+
+
+Platform                              Shared        static-  Thread-  
+                                      libraries(4)  exec     safe     
+Solaris2.8 32- and 64-bit             y             n        y        
+Solaris2.10 32- and 64-bit            y             n        y        
+IRIX64_6.5 32-bit                     y             n        y        
+IRIX64_6.5 64-bit                     y             n        y        
+WinXP Visual Studio 6.0               y             n        n        
+WinXP CYGWIN                          y             n        n        
+WinXP 2005                            y             n        n        
+WinXP .Net                            y             n        n        
+WinVista 2005                         y             n        n        
+Mac OS X 10.4.10                      y             n        n        
+AIX-5.2 & 5.3 32- and 64-bit          n             n        n        
+FreeBSD 6.2 32- and 64-bit            y             n        n        
+RedHat Linux 2.4.21              W    y             n        n        
+SuSE Linux 2.6.9-42 i686 GNU (1) W    y             n        y        
+SuSE Linux 2.6.9-42 i686 Intel   W    y             n        n        
+SuSE Linux 2.6.9-42 i686 PGI     W    n             n        n        
+SuSE Linux 2.6.16 x86_64 GNU (1) W    y             n        y        
+SuSE Linux 2.6.16 x86_64 Intel   W    y             n        n        
+SuSE Linux 2.6.16 x86_64 PGI     W    n             n        n        
+RHEL 4 Linux 2.6.9 Xeon Lustre   C    y             n        n        
+RedHat Linux 2.4 Xeon Lustre     C    y             n        n        
+SuSE Linux 2.4 ia64              C    y             n        n        
+SuSe Linux 2.6.5 SGI Altix ia64       n             n        n        
 
 Compiler versions for each platform are listed in the "Platforms Tested" 
 table found elsewhere in this file (RELEASE.txt).  Unless otherwise noted, 
@@ -403,34 +306,52 @@ compilers used are the system compilers.
 
 Footnotes:
 (1) Fortran compiled with g95.
-(2) In most cases, shared libraries are provided only for the C library, 
-    except on Windows where they are provided for C, C++, and Fortran.
-(3) C++ works only with static libraries.
 
 
 Known Problems
 ==============
+* We discovered two problems when running collective IO parallel HDF5 tests
+  with chunking storage with the ChaMPIon MPI compiler on tungsten, a Linux
+  cluster at NCSA.
+  Under some complex selection cases, 
+  1) MPI_Get_element returns the wrong value.
+  2) MPI_Type_struct also generates the wrong derived datatype and corrupt 
+     data may be generated.
+  This only happens when turning on collective IO with chunking storage
+  with some complex selections. We haven't found these problems on other 
+  MPI-IO compilers. If you encounter these problems, you may use Independent 
+  IO instead.
+
+  To avoid this problem, change the following line in your code:
+  H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
+
+  to
+  H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
+ 
+  KY - 2007/08/24
+
 * QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It
   does not include the -lmpi properly.  This will be fixed in the next
   release.  AKC - 2007/08/07.
 
 * On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared
-  library, especially for h5repacktst and h52gifgentst, the following (or
+  library, especially for h5repacktst and h52gifgentst, the following (or a
   similar) error message may appear:
   "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname
   'libh5test.so.1' under any of the filenames .......(bunch of directories)
   "
   And the testing will fail. 
+
   We believe this is a libtool problem. One way to get rid of this is to
   add the paths of libh5test.so.1 and libh5.so.1 to the shared library path.
 
   For 32-bit:
   You may do this, under csh:
-  setenv LD_LIBRARYN32_PATH .......(existing pathes):[full path of HDF5
+  setenv LD_LIBRARYN32_PATH .......(existing paths):[full path of HDF5
   directory/test/.libs]:[full path of HDF5 directory/src/.libs]
 
   For 64-bit:
-  setenv LD_LIBRARY64_PATH ......(existing pathes):[full path of HDF5
+  setenv LD_LIBRARY64_PATH ......(existing paths):[full path of HDF5
   directory/test/.libs]:[full path of HDF5 directory/src/.libs]
 
   NOTE: This problem ONLY affects the testing of the HDF5 library when you 
@@ -445,7 +366,7 @@ Known Problems
   calloc".  AKC - 2007/7/12.
 
 * The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has
-  an optimization error in the datax types conversion code.  Before running
+  an optimization error in the datatypes conversion code.  Before running
   configure, edit the file config/intel-flags by changing the setting of
   PROD_CFLAGS from -O3 to -O0.  Then run configure.  AKC - 2005/11/10.
 
@@ -460,15 +381,15 @@ Known Problems
   Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the 
   dataset creation property list to avoid the problem.  EIP - 2005/09/09
 
-* The dataset created or rewritten with the v1.6.3 library or after can't 
+* A dataset created or rewritten with the v1.6.3 library or after can't 
   be read with the v1.6.2 library or before when Fletcher32 EDC (a filter) is 
   enabled.  There was a bug in the calculating code of the Fletcher32 
   checksum in the library before v1.6.3.  The checksum value wasn't consistent 
   between big-endian and little-endian systems.  This bug was fixed in 
   Release 1.6.3.  However, after fixing the bug, the checksum value is no 
-  longer the same as before on little-endian system.  The library release 
-  after 1.6.4 can still read the dataset created or rewritten with the library
-  of v1.6.2 or before.  SLU - 2005/7/8
+  longer the same as before on little-endian system.  HDF5 library releases 
+  after 1.6.4 can still read datasets created or rewritten with an HDF5 
+  library of v1.6.2 or before.  SLU - 2005/7/8
 
 * For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
   processor, there's a bug in the compiler for optimization(-O2).  The library
@@ -492,24 +413,18 @@ Known Problems
   and run the tests again.
 
   The tests may also fail with messages like "The socket name is already
-  in use".  HDF5 does not use sockets (except for stream-VFD).  This is
-  due to problems of the poe command trying to set up the debug socket.
-  Check whether there are many old /tmp/s.pedb.* files staying around.  These 
-  are sockets used by the poe command and left behind due to failed commands.
-  Ask your system administrator to clean them out.  Lastly, request IBM
-  to provide a means to run poe without the debug socket.
+  in use".  HDF5 does not use sockets.  This is due to problems of the 
+  poe command trying to set up the debug socket.  Check whether there are 
+  many old /tmp/s.pedb.* files staying around.  These are sockets used by 
+  the poe command and left behind due to failed commands.  Ask your system 
+  administrator to clean them out.  Lastly, request IBM to provide a means 
+  to run poe without the debug socket.
 
 * The h5dump tests may fail to match the expected output on some platforms
   (e.g. parallel jobs, Windows) where the error messages directed to
   "stderr" do not appear in the "right order" with output from stdout.
   This is not an error.
 
-* The stream-vfd test uses ip port 10007 for testing. If another
-  application is already using that port address, the test will hang
-  indefinitely and has to be terminated by the kill command. To try the
-  test again, change the port address in test/stream_test.c to one not
-  being used in the host.
-
 * The --enable-static-exec configure flag fails to compile for Solaris
   platforms. This is due to the fact that not all of the system
   libraries on Solaris are available in a static format.
@@ -524,9 +439,7 @@ Known Problems
   It is suggested that you don't use this option on these platforms
   during configuration.
 
-* The Stream VFD is not supported under Windows.
-
-* Use the --disable-shared configure flag if building with Absoft Fortran
+* Use the --disable-shared configure flag if building with an Absoft Fortran
   compiler.
 
 * Information about building with PGI and Intel compilers is available in
diff --git a/doc/html/Copyright.html b/doc/html/Copyright.html
index 82f4d56..a96d8c3 100644
--- a/doc/html/Copyright.html
+++ b/doc/html/Copyright.html
@@ -21,7 +21,7 @@ HDF5 (Hierarchical Data Format 5) Software Library and Utilities</h3>
 
 HDF5 (Hierarchical Data Format 5) Software Library and Utilities
 <br>
-Copyright 2006-2007 by The HDF Group (THG).
+Copyright 2006-2008 by The HDF Group (THG).
 <p>
 NCSA HDF5 (Hierarchical Data Format 5) Software Library and Utilities
 <br>
@@ -115,11 +115,14 @@ and/or accompanying materials:
 <!--    THEY ARE AUTOMATICALLY UPDATED BY DOCUMENTATION SOFTWARE.    -->
 
 <!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 28 March 2007")
diff --git a/doc/html/Dependencies b/doc/html/Dependencies
index f29a269..4875e54 100644
--- a/doc/html/Dependencies
+++ b/doc/html/Dependencies
@@ -1,3 +1,17 @@
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
+# Copyright by The HDF Group.
+# Copyright by the Board of Trustees of the University of Illinois.
+# All rights reserved.
+#
+# This file is part of HDF5.  The full HDF5 copyright notice, including
+# terms governing use, modification, and redistribution, is contained in
+# the files COPYING and Copyright.html.  COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page.  It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
+# access to either file, you may request a copy from help at hdfgroup.org.
 
diff --git a/doc/html/Glossary.html b/doc/html/Glossary.html
index 73322e5..eadc7ff 100644
--- a/doc/html/Glossary.html
+++ b/doc/html/Glossary.html
@@ -25,8 +25,10 @@ HDF5 Glossary
 
 <body>
 
+<!-- HEADER RIGHT " " -->
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -45,53 +47,76 @@ HDF5 Glossary
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>HDF5 Glossary</h1>
 </center>
 
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <center>
 <table width=90% border=0>
 <tr><td valign=top align=left width=33%>
 <dl>
     <dt><a href="#Glossary-AtomicDType">atomic datatype</a>
     <dt><a href="#Glossary-Attribute">attribute</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dt><a href="#Glossary-BasicDType">basic datatype</a>-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-LayoutChunked">chunked layout</a>
     <dt><a href="#Glossary-Chunking">chunking</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dt><a href="#Glossary-ComplexDType">complex datatype</a>-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-CompoundDType">compound datatype</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dt>compound element-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-LayoutContig">contiguous layout</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dt>conversion function-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-Dataset">dataset</a>
     <dt><a href="#Glossary-Dataspace">dataspace</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dl>-->
 <!--    <dt>dimensions-->
 <!--    <dt>selection-->
 <!--</dl>-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-Datatype">datatype</a>
     <dl>
         <dt><a href="#Glossary-AtomicDType">atomic</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--    <dt><a href="#Glossary-BasicDType">basic</a>-->
 <!--    <dt><a href="#Glossary-ComplexDType">complex</a>-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
         <dt><a href="#Glossary-CompoundDType">compound</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--    <dt>conversion function-->
 <!--    <dt><a href="#Glossary-DiskIO">disk I/O</a>-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
         <dt><a href="#Glossary-DTypeEnum">enumeration</a>
         <dt><a href="#Glossary-DTypeNamed">named</a>
         <dt><a href="#Glossary-DTypeOpaque">opaque</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--    <dt>transient-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
         <dt><a href="#Glossary-DTypeVLen">variable-length</a>
     </dl>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dt>DDL-->
 <!--<dt>dimensions-->
 <!--<dt><a href="#Glossary-DiskIO">disk I/O datatype</a>-->
 <!--<dt>element-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-DTypeEnum">enumeration datatype</a>
     <dt><a href="#Glossary-File">file</a>
     <dl>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--    <dt>compound element-->
 <!--    <dt>element-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
         <dt><a href="#Glossary-Group">group</a>
         <dt><a href="#Glossary-Path">path</a>
         <dt><a href="#Glossary-RootGroup">root group</a>
@@ -104,27 +129,35 @@ HDF5 Glossary
     <dt><a href="#Glossary-FileAccessMode">file access mode</a>
     <dt><a href="#Glossary-Group">group</a>
     <dl>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--    <dt>element-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
         <dt><a href="#Glossary-GroupMember">member</a>
         <dt><a href="#Glossary-RootGroup">root group</a>
     </dl>
     <dt><a href="#Glossary-LinkHard">hard link</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dt>HDF5-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-Hyperslab">hyperslab</a>
     <dt><a href="#Glossary-Identifier">identifier</a>
     <dt><a href="#Glossary-Link">link</a>
     <dl>
         <dt><a href="#Glossary-LinkHard">hard</a>
         <dt><a href="#Glossary-LinkSoft">soft</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--    <dt><a href="#Glossary-LinkSoftName">soft link name</a>-->
 <!--    <dt>target-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     </dl>
     <dt><a href="#Glossary-GroupMember">member</a>
     <dt><a href="#Glossary-Name">name</a>
     <dt><a href="#Glossary-DTypeNamed">named datatype</a>
     <dt><a href="#Glossary-DTypeOpaque">opaque datatype</a>
     <dt><a href="#Glossary-Path">path</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dt>parallel I/O-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-PList">property list</a>
     <dl>
         <dt><a href="#Glossary-PListDataTransfer">data transfer</a>
@@ -141,11 +174,15 @@ HDF5 Glossary
     <dt><a href="#Glossary-Selection">selection</a>
     <dl>
         <dt><a href="#Glossary-Hyperslab">hyperslab</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--    <dt>point-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     </dl>
     <dt><a href="#Glossary-Serialization">serialization</a>
     <dt><a href="#Glossary-LinkSoft">soft link</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dt><a href="#Glossary-LinkSoftName">soft link name</a>-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-StorageLayout">storage layout</a>
     <dl>
         <dt><a href="#Glossary-LayoutChunked">chunked</a>
@@ -153,14 +190,17 @@ HDF5 Glossary
         <dt><a href="#Glossary-LayoutContig">contiguous</a>
     </dl>
     <dt><a href="#Glossary-SuperBlock">super block</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 <!--<dt>target-->
 <!--<dt>threadsafe-->
 <!--<dt>transient datatype-->
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <dt><a href="#Glossary-DTypeVLen">variable-length datatype</a>
 </dl>
 </td></tr>
 </table>
 </center>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
 
 <hr>
 
@@ -236,12 +276,12 @@ HDF5 Glossary
     of the I/O, such as caching hints or collective I/O information.
 <P>
 
+<!-- HEADER RIGHT "Glossary" -->
 <DT><B><a name="Glossary-Dataset">dataset</a></B>
 <DD>A multi-dimensional array of data elements, together with 
     supporting metadata. 
 <P>
 
-<!-- NEW PAGE -->
 <DT><B><a name="Glossary-PListDSetAccess">dataset access property list</a></B>
 <DD>A property list containing information on how a dataset is to be accessed.
 <P>
@@ -335,9 +375,10 @@ HDF5 Glossary
 -->
 <P>
 
+<!-- NEW PAGE -->
 <DT><B><a name="Glossary-PListFileAccess">file access property list</a></B>
 <DD>File access property lists are used to control different methods 
-    of performing I/O on files:
+    of performing I/O on files.
 <!--
     <UL>
     <B>Unbuffered I/O:</B> Local permanent files can be accessed with the 
@@ -501,6 +542,7 @@ HDF5 Glossary
     chunked, in the HDF5 file.
 <P>
 
+<!-- NEW PAGE -->
 <DT><B><a name="Glossary-SuperBlock">super block</a></B>
 <DD>A block of data containing the information required to portably access 
     HDF5 files on multiple platforms, followed by information about the groups 
@@ -542,8 +584,11 @@ HDF5 Glossary
 
 </DL>
 
+<!-- HEADER RIGHT " " -->
+
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -562,12 +607,17 @@ HDF5 Glossary
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 18 October 1999");
diff --git a/doc/html/H5.format.html b/doc/html/H5.format.html
index 698e020..9a312dc 100644
--- a/doc/html/H5.format.html
+++ b/doc/html/H5.format.html
@@ -54,6 +54,7 @@ TABLE.list TD { border:none; }
   
   
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -72,6 +73,8 @@ TABLE.list TD { border:none; }
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center><h1>HDF5 File Format Specification Version 1.1</h1></center>
 
     <center>
@@ -6406,6 +6409,7 @@ file address with all bits set, i.e. <code>0xffff...ff</code>.
 value with all bits set, i.e. <code>0xffff...ff</code>.
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_ADevG.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -6424,18 +6428,23 @@ value with all bits set, i.e. <code>0xffff...ff</code>.
 </table>
 </center>
 <hr>
-<!-- #EndLibraryItem --><!--
+
+
+<!-- #EndLibraryItem --><P><!--
 <address>Quincey Koziol and Robb Matzke</address>
 -->
 
 
 <!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
-<!-- #EndLibraryItem --><!-- hhmts start -->
+
+
+<!-- #EndLibraryItem --><P><!-- hhmts start -->
 Last modified: 24 July 2006 
 <!-- hhmts end -->
 
diff --git a/doc/html/H5.intro.html b/doc/html/H5.intro.html
index 5887ced..6f6c13a 100644
--- a/doc/html/H5.intro.html
+++ b/doc/html/H5.intro.html
@@ -3152,11 +3152,14 @@ For the example codes, see
 <tr><td align=left valign=top>
  
 <!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem -->
  
 Last modified: 6 February 2006 
diff --git a/doc/html/Intro/IntroExamples.html b/doc/html/Intro/IntroExamples.html
index 2f10559..5a35bbb 100644
--- a/doc/html/Intro/IntroExamples.html
+++ b/doc/html/Intro/IntroExamples.html
@@ -2114,11 +2114,14 @@ main(void)
 <tr><td align=left valign=top> 
 
 <!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="../Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem -->
  
 Last modified: 3 August 2004
diff --git a/doc/html/PredefDTypes.html b/doc/html/PredefDTypes.html
index 8a69a74..5994a79 100644
--- a/doc/html/PredefDTypes.html
+++ b/doc/html/PredefDTypes.html
@@ -29,6 +29,7 @@ HDF5/Predefined Datatypes
 <!-- HEADER RIGHT " " -->
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -65,6 +66,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>HDF5 Predefined Datatypes</h1>
 </center>
@@ -157,6 +160,7 @@ The following datatypes are predefined in HDF5.
 </pre>
 
 
+<!-- HEADER RIGHT "Predefined Datatypes" -->
 <h4>C-specific datatype</h4>
     <ul>
     <li>String datatype in C (size defined in bytes rather than in bits)
@@ -465,6 +469,7 @@ The following datatypes are predefined in HDF5.
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -501,12 +506,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 12 December 2000");
diff --git a/doc/html/RM_H5.html b/doc/html/RM_H5.html
index d199394..ccdccc1 100644
--- a/doc/html/RM_H5.html
+++ b/doc/html/RM_H5.html
@@ -29,6 +29,7 @@ HDF5/H5 API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -65,6 +66,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5: General Library Functions</h1>
 </center>
@@ -662,6 +665,7 @@ SUBROUTINE
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -698,12 +702,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 16 October 2003");
diff --git a/doc/html/RM_H5A.html b/doc/html/RM_H5A.html
index f973a95..0145b76 100644
--- a/doc/html/RM_H5A.html
+++ b/doc/html/RM_H5A.html
@@ -30,6 +30,7 @@ HDF5/H5A API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5A: Attribute Interface</h1>
 </center>
@@ -489,7 +492,9 @@ END SUBROUTINE h5aget_num_attrs_f
     <dd>Gets a copy of the dataspace for an attribute.
 <dt><strong>Description:</strong>
     <dd><code>H5Aget_space</code> retrieves a copy of the dataspace 
-        for an attribute.  The dataspace identifier returned from 
+        for an attribute.  
+        <p>
+        The dataspace identifier returned from 
         this function must be released with <code>H5Sclose</code>
         or resource leaks will develop.
 <dt><strong>Parameters:</strong>
@@ -669,9 +674,11 @@ SUBROUTINE
         to the object specified with <code>loc_id</code>. 
         The location object may be either a group, dataset, or 
         named datatype, all of which may have any sort of attribute.  
+        <p>
         The attribute specified by the index, <code>idx</code>, 
         indicates the attribute to access.  
         The value of <code>idx</code> is a 0-based, non-negative integer.
+        <p>
         The attribute identifier returned from this function must be 
         released with <code>H5Aclose</code> or resource leaks will develop. 
 <dt><strong>Parameters:</strong>
@@ -725,6 +732,7 @@ END SUBROUTINE h5aopen_idx_f
          object specified with <code>loc_id</code>. 
          The location object may be either a group, dataset, or 
          named datatype, which may have any sort of attribute. 
+         <p>
          The attribute identifier returned from this function must 
          be released with <code>H5Aclose</code> or resource leaks 
          will develop. 
@@ -927,6 +935,7 @@ END SUBROUTINE h5awrite_f
 </dl>
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -963,15 +972,20 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
-document.writeln("Last modified: 11 October 2006");
+document.writeln("Last modified: 20 September 2007");
 -->
 </SCRIPT>
  
diff --git a/doc/html/RM_H5D.html b/doc/html/RM_H5D.html
index 73b89a9..78cc96c 100644
--- a/doc/html/RM_H5D.html
+++ b/doc/html/RM_H5D.html
@@ -30,6 +30,7 @@ HDF5/H5D API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5D: Datasets Interface</h1>
 </center>
@@ -327,6 +330,7 @@ END SUBROUTINE h5dclose_f
         to ensure that the setup satisfies to all required conditions.
         This problem is most likely to occur with the use of filters.
         <p>
+<!-- NEW PAGE -->
         For example, <code>H5Dcreate</code> will fail without a meaningful
         explanation if 
         <ul>
@@ -575,6 +579,7 @@ END SUBROUTINE h5dfill_f
 <dt><strong>Description:</strong>
     <dd><code>H5Dget_create_plist</code> returns an identifier for a 
         copy of the dataset creation property list for a dataset.
+        <p>
         The creation property list identifier should be released with 
         the <code>H5Pclose</code> function.
 <dt><strong>Parameters:</strong>
@@ -672,6 +677,7 @@ SUBROUTINE
 <dt><strong>Description:</strong>
     <dd><code>H5Dget_space</code> returns an identifier for a copy of the 
         dataspace for a dataset.  
+        <p>
         The dataspace identifier should be released with the 
         <code>H5Sclose</code> function.
 <dt><strong>Parameters:</strong>
@@ -857,6 +863,7 @@ END SUBROUTINE h5dget_storage_size_f
 <dt><strong>Description:</strong>
     <dd><code>H5Dget_type</code> returns an identifier for a copy of the 
         datatype for a dataset.  
+        <p>
         The datatype should be released with the <code>H5Tclose</code> function.
         <p>
         If a dataset has a named datatype, then an identifier to the 
@@ -1770,6 +1777,7 @@ END SUBROUTINE h5dwrite_vl_f
 </dl>
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -1806,15 +1814,20 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
-document.writeln("Last modified: 15 August 2007");
+document.writeln("Last modified: 20 September 2007");
 -->
 </SCRIPT>
  
diff --git a/doc/html/RM_H5E.html b/doc/html/RM_H5E.html
index 1b6b4b5..1845a9f 100644
--- a/doc/html/RM_H5E.html
+++ b/doc/html/RM_H5E.html
@@ -30,6 +30,7 @@ HDF5/H5E API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5E: Error Interface</h1>
 </center>
@@ -205,8 +208,6 @@ errors within the H5E package.
         The stack is also cleared whenever an API function is called, 
 	  with certain exceptions (for instance, <code>H5Eprint</code>).
         <p>
-        <code>H5Eclear</code> can fail if there are problems initializing 
-        the library.
 <dt><strong>Parameters:</strong>
     <ul><table>
         <tr><td valign="top">None</td></tr>
@@ -603,8 +604,6 @@ END SUBROUTINE h5eset_auto_f
             </dl>
         </dir>
         <p>
-        <code>H5Ewalk</code> can fail if there are problems initializing 
-        the library.
 <dt><strong>Parameters:</strong>
     <ul><table>
         <tr>
@@ -705,6 +704,7 @@ SUBROUTINE
 </dl>
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -741,12 +741,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 16 October 2003");
diff --git a/doc/html/RM_H5F.html b/doc/html/RM_H5F.html
index 66c8476..978ea1b 100644
--- a/doc/html/RM_H5F.html
+++ b/doc/html/RM_H5F.html
@@ -30,6 +30,7 @@ HDF5/H5F API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5F: File Interface</h1>
 </center>
@@ -1289,12 +1292,12 @@ END SUBROUTINE h5fmount_f
                 </dl>
                 <li><code>H5F_ACC_RDWR</code> and <code>H5F_ACC_RDONLY</code> 
                 are mutually exclusive; use exactly one.
+<!-- NEW PAGE -->
                 <li>An additional flag, <code>H5F_ACC_DEBUG</code>, prints 
                 debug information.  This flag is used only by HDF5 library 
                 developers; it is neither tested nor supported
                 for use in applications.
                 </ul></td></tr>
-<!-- NEW PAGE -->
         <tr>
 		    <td valign="top"><em>hid_t</em> <code>access_id    </code></td>
             <td valign="top">IN: Identifier for the file access properties list.
@@ -1454,6 +1457,7 @@ END SUBROUTINE h5funmount_f
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -1490,12 +1494,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 11 October 2006");
diff --git a/doc/html/RM_H5Front.html b/doc/html/RM_H5Front.html
index 7776113..c16be55 100644
--- a/doc/html/RM_H5Front.html
+++ b/doc/html/RM_H5Front.html
@@ -35,6 +35,7 @@ HDF5 API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -71,6 +72,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>HDF5: API Specification<br>Reference Manual</h1>
 
@@ -204,6 +207,7 @@ which are described in the following documents.
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -240,15 +244,20 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><table width=100% border=0>
 <tr><td align=left valign=top> 
 
 <!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 10 August 2007");
diff --git a/doc/html/RM_H5G.html b/doc/html/RM_H5G.html
index 0d04755..880cd79 100644
--- a/doc/html/RM_H5G.html
+++ b/doc/html/RM_H5G.html
@@ -30,6 +30,7 @@ HDF5/H5G API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5G: Group Interface</h1>
 </center>
@@ -1566,6 +1569,7 @@ END SUBROUTINE h5gunlink_f
 </dl>
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -1602,12 +1606,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 6 September 2006");
diff --git a/doc/html/RM_H5I.html b/doc/html/RM_H5I.html
index e3b3572..695285c 100644
--- a/doc/html/RM_H5I.html
+++ b/doc/html/RM_H5I.html
@@ -30,6 +30,7 @@ HDF5/H5I API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5I: Identifier Interface</h1>
 </center>
@@ -421,6 +424,7 @@ END SUBROUTINE h5iget_name_f
         <img src="Graphics/Java.gif"> 
         <img src="Graphics/C++.gif">
         -->
+<!-- NEW PAGE -->
 <dt><strong>History:</strong>
     <ul><table width="90%">
         <tr>
@@ -677,6 +681,7 @@ END SUBROUTINE h5iinc_ref_f
 </dl>
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -713,12 +718,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 12 October 2006");
diff --git a/doc/html/RM_H5P.html b/doc/html/RM_H5P.html
index a57c20f..8e67122 100644
--- a/doc/html/RM_H5P.html
+++ b/doc/html/RM_H5P.html
@@ -30,6 +30,7 @@ HDF5/H5P API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5P: Property List Interface</h1>
 </center>
@@ -137,14 +140,14 @@ which require many different parameters to be easily manipulated.
     <li><a href="#Property-SetFaplSplit">H5Pset_fapl_split</a>
     <li><a href="#Property-SetFaplSec2">H5Pset_fapl_sec2</a>
     <li><a href="#Property-SetFaplStdio">H5Pset_fapl_stdio</a>
-    <li><a href="#Property-SetFaplStream">H5Pset_fapl_stream</a>
-    <li><a href="#Property-GetFaplStream">H5Pget_fapl_stream</a>
 <!-- FOR USE WITH PRINT VERSION ---------------------------------------->
-<!--<li><a href="#Property-SetDriver">H5Pset_driver</a>                              -->
+<!--<li><a href="#Property-SetFaplStream">H5Pset_fapl_stream</a>      -->
+<!--<li><a href="#Property-GetFaplStream">H5Pget_fapl_stream</a>      -->
+<!--<li><a href="#Property-SetDriver">H5Pset_driver</a>               -->
 <!-- FOR USE WITH PRINT VERSION ----------------------------------------
     <li><a href="#Property-GetDriver">H5Pget_driver</a>
 <!-- FOR USE WITH PRINT VERSION ---------------------------------------->
-<!--<li><a href="#Property-GetDriverInfo">H5Pget_driver_info</a>                     -->
+<!--<li><a href="#Property-GetDriverInfo">H5Pget_driver_info</a>      -->
 <!-- FOR USE WITH PRINT VERSION ----------------------------------------
     <li><a href="#Property-SetMetaBlockSize">H5Pset_meta_block_size</a>
     <li><a href="#Property-GetMetaBlockSize">H5Pget_meta_block_size</a>
@@ -265,10 +268,13 @@ which require many different parameters to be easily manipulated.
 </td>
 <td valign="top" width="3%"> </td>
 <td valign="top" width="31%">
+<br> 
+<br> 
+<br> 
 <br>
-   || <i>Indicates functions<br>
-     available only in the<br>
-     parallel HDF5 library.</i>
+      || <i>Indicates functions<br>
+         available only in the<br>
+         parallel HDF5 library.</i>
 </td>
 </tr>
 </table>
@@ -364,12 +370,14 @@ which require many different parameters to be easily manipulated.
     <li><a href="#Property-SetFaplSplit">H5Pset_fapl_split</a>
     <li><a href="#Property-SetFaplSec2">H5Pset_fapl_sec2</a>
     <li><a href="#Property-SetFaplStdio">H5Pset_fapl_stdio</a>
-    <li><a href="#Property-SetFaplStream">H5Pset_fapl_stream</a>
-    <li><a href="#Property-GetFaplStream">H5Pget_fapl_stream</a>
-<!--<li><a href="#Property-SetDriver">H5Pset_driver</a>                              -->
+<!-- FOR USE WITH ELECTRONIC VERSION ----------------------------------->
+<!--<li><a href="#Property-SetFaplStream">H5Pset_fapl_stream</a>      -->
+<!--<li><a href="#Property-GetFaplStream">H5Pget_fapl_stream</a>      -->
+<!--<li><a href="#Property-SetDriver">H5Pset_driver</a>               -->
 <!-- FOR USE WITH ELECTRONIC VERSION ----------------------------------->
     <li><a href="#Property-GetDriver">H5Pget_driver</a>
-<!--<li><a href="#Property-GetDriverInfo">H5Pget_driver_info</a>                     -->
+<!-- FOR USE WITH ELECTRONIC VERSION ----------------------------------->
+<!--<li><a href="#Property-GetDriverInfo">H5Pget_driver_info</a>      -->
 <!-- FOR USE WITH ELECTRONIC VERSION ----------------------------------->
     <li><a href="#Property-SetMetaBlockSize">H5Pset_meta_block_size</a>
     <li><a href="#Property-GetMetaBlockSize">H5Pget_meta_block_size</a>
@@ -387,6 +395,7 @@ which require many different parameters to be easily manipulated.
     <li><a href="#Property-GetFaplSrb">H5Pget_fapl_srb</a>
     <li><a href="#Property-SetSmallData">H5Pset_small_data_block_size</a>
     <li><a href="#Property-GetSmallData">H5Pget_small_data_block_size</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ----------------------------------->
     <!--
     <li><a href="#Property-xxx">xxx</a>
     <li><a href="#Property-xxx">xxx</a>   ||
@@ -404,6 +413,7 @@ which require many different parameters to be easily manipulated.
     <li><a href="#Property-SetChunk">H5Pset_chunk</a>
     <li><a href="#Property-GetChunk">H5Pget_chunk</a>
     <li><a href="#Property-SetDeflate">H5Pset_deflate</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ----------------------------------->
 <!--
     <li><a href="#Property-GetDeflate">H5Pget_deflate</a>
     <li><a href="#Property-SetCompression">H5Pset_compression</a>
@@ -457,6 +467,7 @@ which require many different parameters to be easily manipulated.
 
 </td></tr>
 
+<!-- FOR USE WITH ELECTRONIC VERSION ----------------------------------->
 <!--
 <tr><td colspan=5 align=right>
 <br>
@@ -502,7 +513,7 @@ See further notes in the description of each function.
       <li><a href="#Property-GetClassName">H5Pget_class_name</a>
       <li><a href="#Property-GetClassParent">H5Pget_class_parent</a>
       <li><a href="#Property-GetDriver">H5Pget_driver</a>
-  <!--<li><a href="#Property-GetDriverInfo">H5Pget_driver_info</a>                   -->
+  <!--<li><a href="#Property-GetDriverInfo">H5Pget_driver_info</a>       -->
       <li><a href="#Property-GetDxplMpio">H5Pget_dxpl_mpio</a>   ||
       <li><a href="#Property-GetDxplMulti">H5Pget_dxpl_multi</a>
       <li><a href="#Property-GetEdcCheck">H5Pget_edc_check</a>
@@ -516,7 +527,7 @@ See further notes in the description of each function.
       <li><a href="#Property-GetFaplMpiPosix">H5Pget_fapl_mpiposix</a>   ||
       <li><a href="#Property-GetFaplMulti">H5Pget_fapl_multi</a>
       <li><a href="#Property-GetFaplSrb">H5Pget_fapl_srb</a>
-      <li><a href="#Property-GetFaplStream">H5Pget_fapl_stream</a>
+<!--  <li><a href="#Property-GetFaplStream">H5Pget_fapl_stream</a>       -->
       <li><a href="#Property-GetFcloseDegree">H5Pget_fclose_degree</a>
       <li><a href="#Property-GetFillTime">H5Pget_fill_time</a>
 	</ul>
@@ -562,7 +573,7 @@ See further notes in the description of each function.
       <li><a href="#Property-SetCache">H5Pset_cache</a>
       <li><a href="#Property-SetChunk">H5Pset_chunk</a>
       <li><a href="#Property-SetDeflate">H5Pset_deflate</a>
-<!--  <li><a href="#Property-SetDriver">H5Pset_driver</a>                              -->
+<!--  <li><a href="#Property-SetDriver">H5Pset_driver</a>                 -->
       <li><a href="#Property-SetDxplMpio">H5Pset_dxpl_mpio</a>   ||
       <li><a href="#Property-SetDxplMulti">H5Pset_dxpl_multi</a>
       <li><a href="#Property-SetEdcCheck">H5Pset_edc_check</a>
@@ -586,7 +597,7 @@ See further notes in the description of each function.
       <li><a href="#Property-SetFaplSplit">H5Pset_fapl_split</a>
       <li><a href="#Property-SetFaplSrb">H5Pset_fapl_srb</a>
       <li><a href="#Property-SetFaplStdio">H5Pset_fapl_stdio</a>
-      <li><a href="#Property-SetFaplStream">H5Pset_fapl_stream</a>
+<!--  <li><a href="#Property-SetFaplStream">H5Pset_fapl_stream</a>       -->
       <li><a href="#Property-SetFcloseDegree">H5Pset_fclose_degree</a>
       <li><a href="#Property-SetFillTime">H5Pset_fill_time</a>
       <li><a href="#Property-SetFillValue">H5Pset_fill_value</a>
@@ -2370,8 +2381,8 @@ END SUBROUTINE h5pget_class_parent_f
            H5FD_MPIO
            H5FD_MULTI
            H5FD_SEC2
-           H5FD_STDIO
-           H5FD_STREAM </pre>
+           H5FD_STDIO  <!--
+           H5FD_STREAM --></pre>
         If a user defines and registers custom drivers or 
         if additional drivers are defined in an HDF5 distribution, 
         this list will be longer.
@@ -3363,8 +3374,8 @@ SUBROUTINE
         -->
 </dl>
 
-<!-- NEW PAGE -->
 <!-- HEADER RIGHT "H5Pget_fapl_stream" -->
+<!--
 <hr>
 <dl>
   <dt><strong>Name:</strong> <a name="Property-GetFaplStream">H5Pget_fapl_stream</a>
@@ -3395,6 +3406,7 @@ SUBROUTINE
         Otherwise returns a negative value.
   <dt><strong>Fortran90 Interface:</strong>
     <dd>None.
+-->
 <!--
 	<pre>
 SUBROUTINE
@@ -3406,6 +3418,7 @@ SUBROUTINE
         <img src="Graphics/Java.gif"> 
         <img src="Graphics/C++.gif">
         -->
+<!--
   <dt><strong>History:</strong>
 	<ul><table width="90%">
         <tr>
@@ -3417,8 +3430,13 @@ SUBROUTINE
 		  <td valign="top">1.4.0</td>
           <td valign="top">
 		    Function introduced in this release.</td></tr>
+        <tr>
+		  <td valign="top">1.6.7 and 1.8.0</td>
+          <td valign="top">
+		    Function removed in these releases.</td></tr>
     </table></ul>
 </dl>
+-->
 
 <!-- NEW PAGE -->
 <!-- HEADER RIGHT "H5Pget_fclose_degree" -->
@@ -3882,9 +3900,9 @@ END SUBROUTINE h5pget_filter_f
             <td valign="top">OUT: Name of filter.</td></tr>
     </table></ul>
   <dt><strong>Returns:</strong>
+<!-- NEW PAGE -->
     <dd>Returns a non-negative value if successful;
         otherwise returns a negative value.
-<!-- NEW PAGE -->
   <dt><strong>Fortran90 Interface:</strong> h5pget_filter_by_id_f
     <dd>
 	<pre>
@@ -7743,7 +7761,7 @@ END SUBROUTINE h5pset_fapl_mpio_f
 
 
 <!-- NEW PAGE -->
-<!-- HEADER RIGHT "H5Pget_fapl_mpio" -->
+<!-- HEADER RIGHT "H5Pset_fapl_mpiposix" -->
 <hr>
 <dl>
   <dt><strong>Name:</strong> <a name="Property-SetFaplMpiPosix">H5Pset_fapl_mpiposix</a>
@@ -8325,8 +8343,8 @@ END SUBROUTINE h5pset_fapl_stdio_f
     </table></ul>
 </dl>
 
-<!-- NEW PAGE -->
 <!-- HEADER RIGHT "H5Pset_fapl_stream" -->
+<!--
 <hr>
 <dl>
   <dt><strong>Name:</strong> <a name="Property-SetFaplStream">H5Pset_fapl_stream</a>
@@ -8400,6 +8418,7 @@ END SUBROUTINE h5pset_fapl_stdio_f
         Otherwise returns a negative value.
   <dt><strong>Fortran90 Interface:</strong>
     <dd>None.
+-->
 <!--
 	<pre>
 SUBROUTINE
@@ -8412,6 +8431,7 @@ SUBROUTINE
         <img src="Graphics/Java.gif"> 
         <img src="Graphics/C++.gif">
         -->
+<!--
   <dt><strong>History:</strong>
 	<ul><table width="90%">
         <tr>
@@ -8423,8 +8443,13 @@ SUBROUTINE
 		  <td valign="top">1.4.0</td>
           <td valign="top">
 		    Function introduced in this release.</td></tr>
+        <tr>
+		  <td valign="top">1.6.7 and 1.8.0</td>
+          <td valign="top">
+		    Function removed in these releases.</td></tr>
     </table></ul>
 </dl>
+-->
 
 <!-- NEW PAGE -->
 <!-- HEADER RIGHT "H5Pset_fclose_degree" -->
@@ -8796,8 +8821,9 @@ END SUBROUTINE h5pset_fill_value_f
 	</center>
 	<p>
 	Also see <a href="#Property-SetEdcCheck">H5Pset_edc_check</a> and
-	<a href="Property-SetFilterCallback">H5Pset_filter_callback</a>.
+	<a href="#Property-SetFilterCallback">H5Pset_filter_callback</a>.
 	
+<!-- NEW PAGE -->
   <dt><strong>Notes:</strong>
     <dd>This function currently supports only the permanent filter
         pipeline; <code>plist</code> must be a dataset creation 
@@ -10739,6 +10765,7 @@ END SUBROUTINE h5punregister_f
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -10775,15 +10802,20 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
-document.writeln("Last modified: 12 October 2006");
+document.writeln("Last modified: 30 January 2008");
 -->
 </SCRIPT>
  
diff --git a/doc/html/RM_H5R.html b/doc/html/RM_H5R.html
index 39b4887..a7c0d42 100644
--- a/doc/html/RM_H5R.html
+++ b/doc/html/RM_H5R.html
@@ -30,6 +30,7 @@ HDF5/H5R API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5R: Reference Interface</h1>
 </center>
@@ -564,6 +567,7 @@ END SUBROUTINE h5rget_region_f
 </dl>
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -600,12 +604,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 25 January 2006");
diff --git a/doc/html/RM_H5S.html b/doc/html/RM_H5S.html
index 5a51698..59f7039 100644
--- a/doc/html/RM_H5S.html
+++ b/doc/html/RM_H5S.html
@@ -30,6 +30,7 @@ HDF5/H5S API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5S: Dataspace Interface</h1>
 </center>
@@ -1902,6 +1905,7 @@ END SUBROUTINE h5sset_extent_simple_f
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -1938,12 +1942,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 11 October 2006");
diff --git a/doc/html/RM_H5T.html b/doc/html/RM_H5T.html
index 57d3643..d163e98 100644
--- a/doc/html/RM_H5T.html
+++ b/doc/html/RM_H5T.html
@@ -30,6 +30,7 @@ HDF5/H5T API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -66,6 +67,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5T: Datatype Interface</h1>
 </center>
@@ -105,7 +108,9 @@ of a dataset.
     <li><a href="#Datatype-Unregister">H5Tunregister</a>
 </td><td>      </td><td valign=top>
 <i>Atomic Datatype Properties</i>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
   <table><tr><td valign=top>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <li><a href="#Datatype-SetSize">H5Tset_size</a>
     <li><a href="#Datatype-GetOrder">H5Tget_order</a>
     <li><a href="#Datatype-SetOrder">H5Tset_order</a>
@@ -117,7 +122,9 @@ of a dataset.
     <li><a href="#Datatype-SetPad">H5Tset_pad</a>
     <li><a href="#Datatype-GetSign">H5Tget_sign</a>
     <li><a href="#Datatype-SetSign">H5Tset_sign</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
   </td><td valign=top>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
     <li><a href="#Datatype-GetFields">H5Tget_fields</a>
     <li><a href="#Datatype-SetFields">H5Tset_fields</a>
     <li><a href="#Datatype-GetEbias">H5Tget_ebias</a>
@@ -130,8 +137,10 @@ of a dataset.
     <li><a href="#Datatype-SetCset">H5Tset_cset</a>
     <li><a href="#Datatype-GetStrpad">H5Tget_strpad</a>
     <li><a href="#Datatype-SetStrpad">H5Tset_strpad</a>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
   </td></tr></table>
-<br>
+<!-- FOR USE WITH ELECTRONIC VERSION ---------------------------------------->
+<br><br>
 <i>Enumeration Datatypes</i>
     <li><a href="#Datatype-EnumCreate">H5Tenum_create</a>
     <li><a href="#Datatype-EnumInsert">H5Tenum_insert</a>
@@ -351,6 +360,7 @@ as the corresponding C function.
 </table>
 
 
+<!-- NEW PAGE -->
 <p>
 The Datatype interface, H5T, provides a mechanism to describe the
       storage format of individual data points of a data set and is
@@ -4216,6 +4226,7 @@ END SUBROUTINE h5tvlen_create_f
 </dl>
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -4252,12 +4263,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified: 13 June 2006");
diff --git a/doc/html/RM_H5Z.html b/doc/html/RM_H5Z.html
index 5a5b358..f2eff12 100644
--- a/doc/html/RM_H5Z.html
+++ b/doc/html/RM_H5Z.html
@@ -31,6 +31,7 @@ HDF5/H5Z API Specification
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -67,6 +68,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>H5Z: Filter and Compression Interface</h1>
 </center>
@@ -663,6 +666,7 @@ END SUBROUTINE h5zunregister_f
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -699,12 +703,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
 document.writeln("Last modified:  13 June 2006");
diff --git a/doc/html/TechNotes.html b/doc/html/TechNotes.html
index de32c3b..2001c13 100644
--- a/doc/html/TechNotes.html
+++ b/doc/html/TechNotes.html
@@ -273,11 +273,14 @@ HDF5 Technical Notes  
 <tr><td align=left valign=top> 
 
 <!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem -->
 
 Last modified:  25 September 2003
diff --git a/doc/html/Tools.html b/doc/html/Tools.html
index c96442f..c04c6e1 100644
--- a/doc/html/Tools.html
+++ b/doc/html/Tools.html
@@ -29,6 +29,7 @@ HDF5/Tools API Specification
 <!-- HEADER RIGHT " " -->
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -65,6 +66,8 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><center>
 <h1>HDF5 Tools</h1>
 </center>
@@ -187,6 +190,7 @@ installed with HDF5.
 -->
 
 <!-- NEW PAGE -->
+<!-- NEW PAGE -->
 <!-- HEADER RIGHT "h5dump" -->
 <hr>
 <dl>
@@ -876,6 +880,7 @@ installed with HDF5.
                     <code>FLET</code> (no parameter)
                 <br>    
                     <code>GZIP=</code><deflation level> from 1-9
+<!-- NEW PAGE -->
                 <br>    
                     <code>SZIP=</code><pixels per block,coding> 
                     <br>        
@@ -2274,10 +2279,10 @@ installed with HDF5.
 
 
 <!-- NEW PAGE -->
-<!-- HEADER RIGHT "h5jam/h5unjam" -->
+<!-- HEADER RIGHT "h5jam and h5unjam" -->
 <hr>
 <dl>
-<dt><strong>Tool Name:</strong> <a name="Tools-Jam">h5jam/h5unjam</a>
+<dt><strong>Tool Name:</strong> <a name="Tools-Jam">h5jam and h5unjam</a>
 
 
 
@@ -2505,6 +2510,7 @@ This tool moves the HDF5 file through byte copies, i.e., it does not read or int
                 check your compiler's manual for more information 
                 on which options are needed.
     </dl>
+<!-- NEW PAGE -->
 <dt><strong>Environment Variables:</strong>
     <dd>When set, these environment variables override some of the built-in
         <code>h5cc</code> and <code>h5pcc</code> defaults.
@@ -2758,6 +2764,7 @@ This tool moves the HDF5 file through byte copies, i.e., it does not read or int
 
 
 <!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" -->
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -2794,12 +2801,17 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --> <br>
 <SCRIPT LANGUAGE="JAVASCRIPT">
 <!--
diff --git a/doc/html/Tutor/examples/Dependencies b/doc/html/Tutor/examples/Dependencies
index e69de29..4875e54 100644
--- a/doc/html/Tutor/examples/Dependencies
+++ b/doc/html/Tutor/examples/Dependencies
@@ -0,0 +1,17 @@
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
+# Copyright by The HDF Group.
+# Copyright by the Board of Trustees of the University of Illinois.
+# All rights reserved.
+#
+# This file is part of HDF5.  The full HDF5 copyright notice, including
+# terms governing use, modification, and redistribution, is contained in
+# the files COPYING and Copyright.html.  COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page.  It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
+# access to either file, you may request a copy from help at hdfgroup.org.
+
diff --git a/doc/html/ddl.html b/doc/html/ddl.html
index d7be90f..26543ce 100644
--- a/doc/html/ddl.html
+++ b/doc/html/ddl.html
@@ -570,11 +570,14 @@ GROUP "/" {
 </center>
 <hr>
 <!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --> 
 
 
diff --git a/doc/html/ed_libs/Footer.lbi b/doc/html/ed_libs/Footer.lbi
index 1aa64db..0de8447 100644
--- a/doc/html/ed_libs/Footer.lbi
+++ b/doc/html/ed_libs/Footer.lbi
@@ -1,6 +1,9 @@
 
+
 <address>
 THG Help Desk: <img src="../Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
diff --git a/doc/html/ed_libs/NavBar_ADevG.lbi b/doc/html/ed_libs/NavBar_ADevG.lbi
index 0d61ce2..a2ec817 100644
--- a/doc/html/ed_libs/NavBar_ADevG.lbi
+++ b/doc/html/ed_libs/NavBar_ADevG.lbi
@@ -1,4 +1,5 @@
 
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -17,3 +18,5 @@
 </table>
 </center>
 <hr>
+
+
diff --git a/doc/html/ed_libs/NavBar_RM.lbi b/doc/html/ed_libs/NavBar_RM.lbi
index 0321c63..0c6fc93 100644
--- a/doc/html/ed_libs/NavBar_RM.lbi
+++ b/doc/html/ed_libs/NavBar_RM.lbi
@@ -1,4 +1,5 @@
 
+
 <hr>
 <center>
 <table border=0 width=98%>
@@ -35,3 +36,5 @@ of complete manual formatted as print volume)   </small></i>
 </table>
 </center>
 <hr>
+
+
diff --git a/doc/html/fortran/F90Flags.html b/doc/html/fortran/F90Flags.html
index 249b27d..81c0d5b 100644
--- a/doc/html/fortran/F90Flags.html
+++ b/doc/html/fortran/F90Flags.html
@@ -322,11 +322,14 @@ The Fortran90 HDF5 flags have the same meanings as the C flags defined in the
 
 
 <!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="../Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem --> 
 
 Last modified:  3 April 2001
diff --git a/doc/html/fortran/F90UserNotes.html b/doc/html/fortran/F90UserNotes.html
index e5644e3..dfcf312 100644
--- a/doc/html/fortran/F90UserNotes.html
+++ b/doc/html/fortran/F90UserNotes.html
@@ -130,11 +130,14 @@ About the Fortran APIs
 
 
 <!-- #BeginLibraryItem "/ed_libs/Footer.lbi" -->
+
 <address>
 THG Help Desk: <img src="../Graphics/help.png" align=top height=16>
 <br>
-Describes HDF5 Release 1.6.6, August 2007 
+Describes HDF5 Release 1.6.7, January 2008 
 </address>
+
+
 <!-- #EndLibraryItem -->
  
 Last modified: 15 December 2000
diff --git a/doc/html/index.html b/doc/html/index.html
index 3c9e3e6..0664b66 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -120,7 +120,7 @@
 </td><td bgcolor="#FFFFFF" width=4%>
 </td><td bgcolor="#BBFFFF" valign=top align=left width=61%>
     <center>
-    <h3>HDF5 User Documentation<br>Release 1.6.6, August 2007</h3>
+    <h3>HDF5 User Documentation<br>Release 1.6.7, January 2008</h3>
     </center>
 <dl>
 <dt><A HREF="H5.intro.html">An Introduction to HDF5</A> 
@@ -158,7 +158,7 @@
     <li><A href="http://www.hdfgroup.org/hdf-java-html/JNI/jhi5/index.html" 
         target="ExtWin">JHI5</A>, the Java HDF5 Interface
     </ul>
-    </ul>
+    
 <dt>HDF5 and “Foreign Languages”
     <ul>
     <li>Fortran90 <A HREF="fortran/F90UserNotes.html">User's Notes</A>, 
@@ -270,11 +270,11 @@
         THG Help Desk: <img src="Graphics/help.png" align=top height=16>
         <br>
         <!-- hhmts start -->
-        Last modified: 13 August 2007
+        Last modified: 28 January 2008
         <!-- hhmts end -->
 
         <br>
-        Describes HDF5 Release 1.6.6, August 2007
+        Describes HDF5 Release 1.6.7, January 2008
 
         <br>
         Copyright by The HDF Group and
diff --git a/examples/Dependencies b/examples/Dependencies
index df09853..a68ba4d 100644
--- a/examples/Dependencies
+++ b/examples/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
diff --git a/examples/h5_select.c b/examples/h5_select.c
index 249f2ba..95117e9 100644
--- a/examples/h5_select.c
+++ b/examples/h5_select.c
@@ -170,8 +170,7 @@ main (void)
     coord[2][0] = 3; coord[2][1] = 5;
     coord[3][0] = 5; coord[3][1] = 6;
 
-    ret = H5Sselect_elements(fid, H5S_SELECT_SET, NPOINTS,
-                             (const hsize_t **)coord);
+    ret = H5Sselect_elements(fid, H5S_SELECT_SET, NPOINTS, coord);
 
     /*
      * Write new selection of points to the dataset.
diff --git a/fortran/config/ia64-linux-gnu b/fortran/config/ia64-linux-gnu
index 9fba552..b84f685 100644
--- a/fortran/config/ia64-linux-gnu
+++ b/fortran/config/ia64-linux-gnu
@@ -19,12 +19,22 @@
 # the various compile modes.
 
 # Use Intel C & Fortran compiler by default.
+# Use mpicc & mpif90 for parallel by default (if it is available).
 if test "X-" =  "X-$CC"; then
-    CC=icc
-    CC_BASENAME=icc
+    if test "X-$enable_parallel" = "X-yes" && which mpicc > /dev/null; then
+        CC=mpicc
+        CC_BASENAME=mpicc
+    elif which icc > /dev/null; then
+        CC=icc
+        CC_BASENAME=icc
+    fi
 fi
 if test "X-" =  "X-$F9X"; then
-    F9X=ifort
+    if test "X-$enable_parallel" = "X-yes" && which mpif90 > /dev/null; then
+        F9X=mpif90
+    elif which ifort > /dev/null; then
+	F9X=ifort
+    fi
 fi
 
 #----------------------------------------------------------------------------
diff --git a/fortran/configure b/fortran/configure
index 4439c3e..2caa26d 100755
--- a/fortran/configure
+++ b/fortran/configure
@@ -1,7 +1,7 @@
 #! /bin/sh
-# From fortran/configure.in Id: configure.in 14030 2007-07-31 03:04:21Z epourmal .
+# From fortran/configure.in Id: configure.in 14461 2008-01-28 19:59:31Z epourmal .
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for HDF5 Fortran 1.6.6.
+# Generated by GNU Autoconf 2.61 for HDF5 Fortran 1.6.7.
 #
 # Report bugs to <help at hdfgroup.org>.
 #
@@ -734,8 +734,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
 # Identity of this package.
 PACKAGE_NAME='HDF5 Fortran'
 PACKAGE_TARNAME='hdf5-fortran'
-PACKAGE_VERSION='1.6.6'
-PACKAGE_STRING='HDF5 Fortran 1.6.6'
+PACKAGE_VERSION='1.6.7'
+PACKAGE_STRING='HDF5 Fortran 1.6.7'
 PACKAGE_BUGREPORT='help at hdfgroup.org'
 
 ac_unique_file="src/HDF5.f90"
@@ -1395,7 +1395,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures HDF5 Fortran 1.6.6 to adapt to many kinds of systems.
+\`configure' configures HDF5 Fortran 1.6.7 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1460,7 +1460,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of HDF5 Fortran 1.6.6:";;
+     short | recursive ) echo "Configuration of HDF5 Fortran 1.6.7:";;
    esac
   cat <<\_ACEOF
 
@@ -1482,7 +1482,6 @@ Optional Features:
   --enable-parallel       Search for MPI-IO and MPI support files
   --enable-gpfs           Enable GPFS hints for the MPI/POSIX file driver.
                           [default=no]
-  --enable-stream-vfd     Build the Stream Virtual File Driver [default=no]
 
 Optional Packages:
   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
@@ -1569,7 +1568,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-HDF5 Fortran configure 1.6.6
+HDF5 Fortran configure 1.6.7
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1583,7 +1582,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by HDF5 Fortran $as_me 1.6.6, which was
+It was created by HDF5 Fortran $as_me 1.6.7, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -5016,7 +5015,7 @@ test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
 case $host in
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 5019 "configure"' > conftest.$ac_ext
+  echo '#line 5018 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -5573,7 +5572,7 @@ chmod -w .
 save_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
 compiler_c_o=no
-if { (eval echo configure:5576: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
+if { (eval echo configure:5575: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
   # The compiler can only warn and ignore the option if not recognized
   # So say no if there are warnings
   if test -s out/conftest.err; then
@@ -7448,7 +7447,7 @@ else
     lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 7451 "configure"
+#line 7450 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -7546,7 +7545,7 @@ else
     lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 7549 "configure"
+#line 7548 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -12015,265 +12014,6 @@ esac
 
 rm -f conftest core core.* *.core conftest.o conftest.c dummy.o $ac_clean_files
 
-{ echo "$as_me:$LINENO: checking for Stream Virtual File Driver support" >&5
-echo $ECHO_N "checking for Stream Virtual File Driver support... $ECHO_C" >&6; }
-# Check whether --enable-stream-vfd was given.
-if test "${enable_stream_vfd+set}" = set; then
-  enableval=$enable_stream_vfd; STREAM_VFD=$enableval
-fi
-
-
-if test "$STREAM_VFD" != "yes"; then
-  { echo "$as_me:$LINENO: result: not configured" >&5
-echo "${ECHO_T}not configured" >&6; }
-fi
-
-if test "$STREAM_VFD" = "yes" -a "X${enable_parallel}" = "Xyes"; then
-    { echo "$as_me:$LINENO: result: not supported in parallel" >&5
-echo "${ECHO_T}not supported in parallel" >&6; }
-    echo "    warning! Stream-VFD is not supported in parallel"
-    STREAM_VFD=no
-fi
-if test "$STREAM_VFD" = "yes" -a "X${PARALLEL}" != "X"; then
-    { echo "$as_me:$LINENO: result: not supported in parallel" >&5
-echo "${ECHO_T}not supported in parallel" >&6; }
-    echo "    warning! Stream-VFD is not supported when a parallel compiler is being used"
-    STREAM_VFD=no
-fi
-
-if test "$STREAM_VFD" = "yes"; then
-  { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-
-        ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-for ac_header in netinet/tcp.h sys/filio.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## -------------------------------- ##
-## Report this to help at hdfgroup.org ##
-## -------------------------------- ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_STREAM 1
-_ACEOF
-
-
-    { echo "$as_me:$LINENO: checking if socklen_t is defined" >&5
-echo $ECHO_N "checking if socklen_t is defined... $ECHO_C" >&6; }
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-int
-main ()
-{
-socklen_t foo; return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_SOCKLEN_T 1
-_ACEOF
-
-    { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	{ echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-        ac_ext=f90
-ac_compile='${F9X-f90} -c $FFLAGS conftest.$ac_ext 1>&5'
-ac_link='${F9X-f90} -o conftest${ac_exeext} $FFLAGS conftest.$ac_ext $LDFLAGS $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_f9x_cross
-
-fi
-
 
 H5_VERSION="`cut -d' ' -f3 $srcdir/../README.txt | head -1`"
 
@@ -12773,7 +12513,7 @@ exec 6>&1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by HDF5 Fortran $as_me 1.6.6, which was
+This file was extended by HDF5 Fortran $as_me 1.6.7, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -12826,7 +12566,7 @@ Report bugs to <bug-autoconf at gnu.org>."
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-HDF5 Fortran config.status 1.6.6
+HDF5 Fortran config.status 1.6.7
 configured by $0, generated by GNU Autoconf 2.61,
   with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
 
diff --git a/fortran/configure.in b/fortran/configure.in
index 7456269..cbfd549 100644
--- a/fortran/configure.in
+++ b/fortran/configure.in
@@ -16,7 +16,7 @@ dnl access to either file, you may request a copy from help at hdfgroup.org.
 dnl ----------------------------------------------------------------------
 dnl Initialize configure.
 dnl
-AC_REVISION($Id: configure.in 14030 2007-07-31 03:04:21Z epourmal $)
+AC_REVISION($Id: configure.in 14461 2008-01-28 19:59:31Z epourmal $)
 
 dnl AC_INIT takes the name of the package, the version number, and an
 dnl email address to report bugs. AC_CONFIG_SRCDIR takes a unique file
@@ -25,7 +25,7 @@ dnl
 dnl NOTE: Don't forget to change the version number here when we do a
 dnl release!!!
 dnl
-AC_INIT([HDF5 Fortran], [1.6.6], [help at hdfgroup.org])
+AC_INIT([HDF5 Fortran], [1.6.7], [help at hdfgroup.org])
 AC_CONFIG_SRCDIR([src/HDF5.f90])
 AC_CONFIG_HEADER([src/H5config_fortran.h])
 
@@ -1086,71 +1086,6 @@ dnl Some cleanup stuff
 rm -f conftest core core.* *.core conftest.o conftest.c dummy.o $ac_clean_files
 
 dnl ----------------------------------------------------------------------
-dnl Should the Stream Virtual File Driver be compiled in ?
-dnl
-AC_MSG_CHECKING([for Stream Virtual File Driver support])
-AC_ARG_ENABLE([stream-vfd],
-              [AC_HELP_STRING([--enable-stream-vfd],
-                              [Build the Stream Virtual File Driver
-                               [default=no]])],
-              [STREAM_VFD=$enableval])
-
-dnl If the Stream VFD should not be used, say so.
-if test "$STREAM_VFD" != "yes"; then
-  AC_MSG_RESULT([not configured])
-fi
-
-dnl If the stream VFD is being used with parallel, disable it.
-dnl Using both stream VFD and parallel is a weird case and seems to cause errors on some
-dnl platforms.
-if test "$STREAM_VFD" = "yes" -a "X${enable_parallel}" = "Xyes"; then
-    AC_MSG_RESULT([not supported in parallel])
-    echo "    warning! Stream-VFD is not supported in parallel"
-    STREAM_VFD=no
-fi
-if test "$STREAM_VFD" = "yes" -a "X${PARALLEL}" != "X"; then
-    AC_MSG_RESULT([not supported in parallel])
-    echo "    warning! Stream-VFD is not supported when a parallel compiler is being used"
-    STREAM_VFD=no
-fi
-
-dnl Otherwise, use Stream VFD.
-if test "$STREAM_VFD" = "yes"; then
-  AC_MSG_RESULT([yes])
-
-    dnl Change to the C language
-    AC_LANG_C
-  AC_CHECK_HEADERS([netinet/tcp.h sys/filio.h])
-  AC_DEFINE([HAVE_STREAM], [1],
-            [Define if the stream virtual file driver should be compiled])
-
-  dnl Check if 'socklen_t' available
-  AC_MSG_CHECKING([if socklen_t is defined])
-  AC_TRY_COMPILE([
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-  ],
-    [socklen_t foo; return 0;],
-    AC_DEFINE([HAVE_SOCKLEN_T], 1,
-              [Define if \`socklen_t' is defined])
-    AC_MSG_RESULT([yes]),
-    AC_MSG_RESULT([no])
-  )
-
-    dnl Change back to the Fortran 90 language
-    AC_LANG_FORTRAN9X
-fi
-
-dnl ----------------------------------------------------------------------
 dnl Set some variables for general configuration information to be saved
 dnl and installed with the libraries.
 dnl
diff --git a/fortran/examples/Dependencies b/fortran/examples/Dependencies
index 60ea981..def8825 100644
--- a/fortran/examples/Dependencies
+++ b/fortran/examples/Dependencies
@@ -2,16 +2,15 @@
 ## This file is machine generated on GNU systems.
 ## Only temporary changes may be made here.
 ##
-# Copyright by The HDF Group.
-# Copyright by the Board of Trustees of the University of Illinois.
-# All rights reserved.
-#
-# This file is part of HDF5.  The full HDF5 copyright notice, including
-# terms governing use, modification, and redistribution, is contained in
-# the files COPYING and Copyright.html.  COPYING can be found at the root
-# of the source code distribution tree; Copyright.html can be found at the
-# root level of an installed copy of the electronic HDF5 document set and
-# is linked from the top-level documents page.  It can also be found at
-# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
-# access to either file, you may request a copy from help at hdfgroup.org.
+## Copyright by the Board of Trustees of the University of Illinois.
+## All rights reserved.
+##
+## This file is part of HDF5.  The full HDF5 copyright notice, including
+## terms governing use, modification, and redistribution, is contained in
+## the files COPYING and Copyright.html.  COPYING can be found at the root
+## of the source code distribution tree; Copyright.html can be found at the
+## root level of an installed copy of the electronic HDF5 document set and
+## is linked from the top-level documents page.  It can also be found at
+## http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html.  If you do not have
+## access to either file, you may request a copy from hdfhelp at ncsa.uiuc.edu.
 
diff --git a/fortran/src/Dependencies b/fortran/src/Dependencies
index 69e9388..3c3125e 100644
--- a/fortran/src/Dependencies
+++ b/fortran/src/Dependencies
@@ -2,18 +2,17 @@
 ## This file is machine generated on GNU systems.
 ## Only temporary changes may be made here.
 ##
-# Copyright by The HDF Group.
-# Copyright by the Board of Trustees of the University of Illinois.
-# All rights reserved.
-#
-# This file is part of HDF5.  The full HDF5 copyright notice, including
-# terms governing use, modification, and redistribution, is contained in
-# the files COPYING and Copyright.html.  COPYING can be found at the root
-# of the source code distribution tree; Copyright.html can be found at the
-# root level of an installed copy of the electronic HDF5 document set and
-# is linked from the top-level documents page.  It can also be found at
-# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
-# access to either file, you may request a copy from help at hdfgroup.org.
+## Copyright by the Board of Trustees of the University of Illinois.
+## All rights reserved.
+##
+## This file is part of HDF5.  The full HDF5 copyright notice, including
+## terms governing use, modification, and redistribution, is contained in
+## the files COPYING and Copyright.html.  COPYING can be found at the root
+## of the source code distribution tree; Copyright.html can be found at the
+## root level of an installed copy of the electronic HDF5 document set and
+## is linked from the top-level documents page.  It can also be found at
+## http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html.  If you do not have
+## access to either file, you may request a copy from hdfhelp at ncsa.uiuc.edu.
 
 H5f90kit.lo: \
    $(srcdir)/H5f90kit.c \
@@ -51,7 +50,6 @@ H5f90kit.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -92,7 +90,6 @@ H5_f.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -133,7 +130,6 @@ H5Rf.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -174,12 +170,12 @@ H5Ff.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
    $(srcdir)/H5f90proto.h \
-   $(top_srcdir)/fortran/../src/H5Eprivate.h
+   $(top_srcdir)/fortran/../src/H5Eprivate.h \
+   $(top_srcdir)/fortran/../src/H5private.h
 H5Sf.lo: \
    $(srcdir)/H5Sf.c \
    $(srcdir)/H5f90.h \
@@ -216,7 +212,6 @@ H5Sf.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -257,7 +252,6 @@ H5Df.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -298,7 +292,6 @@ H5Gf.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -339,12 +332,12 @@ H5Af.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
    $(srcdir)/H5f90proto.h \
-   $(top_srcdir)/fortran/../src/H5Eprivate.h
+   $(top_srcdir)/fortran/../src/H5Eprivate.h \
+   $(top_srcdir)/fortran/../src/H5private.h
 H5Tf.lo: \
    $(srcdir)/H5Tf.c \
    $(srcdir)/H5f90.h \
@@ -381,7 +374,6 @@ H5Tf.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -422,7 +414,6 @@ H5Pf.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -463,12 +454,12 @@ H5If.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
    $(srcdir)/H5f90proto.h \
-   $(top_srcdir)/fortran/../src/H5Eprivate.h
+   $(top_srcdir)/fortran/../src/H5Eprivate.h \
+   $(top_srcdir)/fortran/../src/H5private.h
 H5Ef.lo: \
    $(srcdir)/H5Ef.c \
    $(srcdir)/H5f90.h \
@@ -505,7 +496,6 @@ H5Ef.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -546,7 +536,6 @@ H5Zf.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
@@ -587,7 +576,6 @@ H5FDmpiof.lo: \
    $(top_srcdir)/fortran/../src/H5FDsec2.h \
    $(top_srcdir)/fortran/../src/H5FDsrb.h \
    $(top_srcdir)/fortran/../src/H5FDstdio.h \
-   $(top_srcdir)/fortran/../src/H5FDstream.h \
    $(srcdir)/H5f90i.h \
    $(top_srcdir)/fortran/../src/H5private.h \
    $(top_srcdir)/fortran/../src/H5MPprivate.h \
diff --git a/fortran/src/H5Sf.c b/fortran/src/H5Sf.c
index 690d548..d1e548a 100644
--- a/fortran/src/H5Sf.c
+++ b/fortran/src/H5Sf.c
@@ -884,7 +884,7 @@ nh5sselect_elements_c ( hid_t_f *space_id , int_f *op, size_t_f *nelements,  hsi
   }
 
   c_nelements = *nelements;
-  status = H5Sselect_elements(c_space_id, c_op, c_nelements, (const hsize_t **)c_coord);
+  status = H5Sselect_elements(c_space_id, c_op, c_nelements, c_coord);
   if ( status >= 0  ) ret_value = 0;
   HDfree(c_coord);
   return ret_value;
diff --git a/fortran/src/H5_f.c b/fortran/src/H5_f.c
index 10433b8..a963f1e 100644
--- a/fortran/src/H5_f.c
+++ b/fortran/src/H5_f.c
@@ -292,7 +292,6 @@ nh5init_flags_c( int_f *h5d_flags, int_f *h5e_flags, int_f *h5f_flags,
       h5fd_hid_flags[4] = H5FD_MULTI;
       h5fd_hid_flags[5] = H5FD_SEC2;
       h5fd_hid_flags[6] = H5FD_STDIO;
-      h5fd_hid_flags[7] = H5FD_STREAM;
 
 /*
  *  H5G flags
diff --git a/fortran/src/H5f90global.f90 b/fortran/src/H5f90global.f90
index e8f4c5c..43006aa 100644
--- a/fortran/src/H5f90global.f90
+++ b/fortran/src/H5f90global.f90
@@ -315,7 +315,7 @@
 !
 ! H5FD file drivers flags declaration
 !
-      INTEGER, PARAMETER :: H5FD_HID_FLAGS_LEN = 8
+      INTEGER, PARAMETER :: H5FD_HID_FLAGS_LEN = 7
       INTEGER H5FD_hid_flags(H5FD_HID_FLAGS_LEN)
 !DEC$if defined(BUILD_HDF5_DLL)
 !DEC$ ATTRIBUTES DLLEXPORT :: /H5FD_HID_FLAGS/
@@ -329,7 +329,6 @@
       INTEGER(HID_T) :: H5FD_MULTI_F
       INTEGER(HID_T) :: H5FD_SEC2_F
       INTEGER(HID_T) :: H5FD_STDIO_F
-      INTEGER(HID_T) :: H5FD_STREAM_F
 
       EQUIVALENCE(H5FD_hid_flags(1), H5FD_CORE_F)
       EQUIVALENCE(H5FD_hid_flags(2), H5FD_FAMILY_F)
@@ -338,7 +337,6 @@
       EQUIVALENCE(H5FD_hid_flags(5), H5FD_MULTI_F)
       EQUIVALENCE(H5FD_hid_flags(6), H5FD_SEC2_F)
       EQUIVALENCE(H5FD_hid_flags(7), H5FD_STDIO_F)
-      EQUIVALENCE(H5FD_hid_flags(8), H5FD_STREAM_F)
 
       
 !
diff --git a/fortran/test/Dependencies b/fortran/test/Dependencies
index 60ea981..def8825 100644
--- a/fortran/test/Dependencies
+++ b/fortran/test/Dependencies
@@ -2,16 +2,15 @@
 ## This file is machine generated on GNU systems.
 ## Only temporary changes may be made here.
 ##
-# Copyright by The HDF Group.
-# Copyright by the Board of Trustees of the University of Illinois.
-# All rights reserved.
-#
-# This file is part of HDF5.  The full HDF5 copyright notice, including
-# terms governing use, modification, and redistribution, is contained in
-# the files COPYING and Copyright.html.  COPYING can be found at the root
-# of the source code distribution tree; Copyright.html can be found at the
-# root level of an installed copy of the electronic HDF5 document set and
-# is linked from the top-level documents page.  It can also be found at
-# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
-# access to either file, you may request a copy from help at hdfgroup.org.
+## Copyright by the Board of Trustees of the University of Illinois.
+## All rights reserved.
+##
+## This file is part of HDF5.  The full HDF5 copyright notice, including
+## terms governing use, modification, and redistribution, is contained in
+## the files COPYING and Copyright.html.  COPYING can be found at the root
+## of the source code distribution tree; Copyright.html can be found at the
+## root level of an installed copy of the electronic HDF5 document set and
+## is linked from the top-level documents page.  It can also be found at
+## http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html.  If you do not have
+## access to either file, you may request a copy from hdfhelp at ncsa.uiuc.edu.
 
diff --git a/fortran/testpar/Dependencies b/fortran/testpar/Dependencies
index 60ea981..def8825 100644
--- a/fortran/testpar/Dependencies
+++ b/fortran/testpar/Dependencies
@@ -2,16 +2,15 @@
 ## This file is machine generated on GNU systems.
 ## Only temporary changes may be made here.
 ##
-# Copyright by The HDF Group.
-# Copyright by the Board of Trustees of the University of Illinois.
-# All rights reserved.
-#
-# This file is part of HDF5.  The full HDF5 copyright notice, including
-# terms governing use, modification, and redistribution, is contained in
-# the files COPYING and Copyright.html.  COPYING can be found at the root
-# of the source code distribution tree; Copyright.html can be found at the
-# root level of an installed copy of the electronic HDF5 document set and
-# is linked from the top-level documents page.  It can also be found at
-# http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
-# access to either file, you may request a copy from help at hdfgroup.org.
+## Copyright by the Board of Trustees of the University of Illinois.
+## All rights reserved.
+##
+## This file is part of HDF5.  The full HDF5 copyright notice, including
+## terms governing use, modification, and redistribution, is contained in
+## the files COPYING and Copyright.html.  COPYING can be found at the root
+## of the source code distribution tree; Copyright.html can be found at the
+## root level of an installed copy of the electronic HDF5 document set and
+## is linked from the top-level documents page.  It can also be found at
+## http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html.  If you do not have
+## access to either file, you may request a copy from hdfhelp at ncsa.uiuc.edu.
 
diff --git a/hl/examples/Dependencies b/hl/examples/Dependencies
index 3e00cc4..b11fc60 100644
--- a/hl/examples/Dependencies
+++ b/hl/examples/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -24,3 +24,45 @@ ex_lite2.lo: \
 ex_lite3.lo: \
    $(srcdir)/ex_lite3.c \
    H5LT.h
+ex_image1.lo: \
+   $(srcdir)/ex_image1.c \
+   H5IM.h
+ex_image2.lo: \
+   $(srcdir)/ex_image2.c \
+   H5IM.h
+ex_table_01.lo: \
+   $(srcdir)/ex_table_01.c \
+   H5TA.h
+ex_table_02.lo: \
+   $(srcdir)/ex_table_02.c \
+   H5TA.h
+ex_table_03.lo: \
+   $(srcdir)/ex_table_03.c \
+   H5TA.h
+ex_table_04.lo: \
+   $(srcdir)/ex_table_04.c \
+   H5TA.h
+ex_table_05.lo: \
+   $(srcdir)/ex_table_05.c \
+   H5TA.h
+ex_table_06.lo: \
+   $(srcdir)/ex_table_06.c \
+   H5TA.h
+ex_table_07.lo: \
+   $(srcdir)/ex_table_07.c \
+   H5TA.h
+ex_table_08.lo: \
+   $(srcdir)/ex_table_08.c \
+   H5TA.h
+ex_table_09.lo: \
+   $(srcdir)/ex_table_09.c \
+   H5TA.h
+ex_table_10.lo: \
+   $(srcdir)/ex_table_10.c \
+   H5TA.h
+ex_table_11.lo: \
+   $(srcdir)/ex_table_11.c \
+   H5TA.h
+ex_table_12.lo: \
+   $(srcdir)/ex_table_12.c \
+   H5TA.h
diff --git a/hl/examples/ex_table_01.c b/hl/examples/ex_table_01.c
index 69f4fc3..147bafc 100644
--- a/hl/examples/ex_table_01.c
+++ b/hl/examples/ex_table_01.c
@@ -126,7 +126,10 @@ int main( void )
  *-------------------------------------------------------------------------
  */
  
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
 
  return 0;
diff --git a/hl/examples/ex_table_02.c b/hl/examples/ex_table_02.c
index 2a5888a..c25c775 100644
--- a/hl/examples/ex_table_02.c
+++ b/hl/examples/ex_table_02.c
@@ -120,7 +120,10 @@ int main( void )
   printf ("\n");
  }
  
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
 
  return 0;
diff --git a/hl/examples/ex_table_03.c b/hl/examples/ex_table_03.c
index eb64c01..776f986 100644
--- a/hl/examples/ex_table_03.c
+++ b/hl/examples/ex_table_03.c
@@ -125,9 +125,12 @@ int main( void )
    dst_buf[i].temperature);
   printf ("\n");
  }
+
+ /* close type */
+  H5Tclose( string_type );
  
- /* Close the file. */
- H5Fclose( file_id );
+  /* close the file */
+  H5Fclose( file_id );
 
  return 0;
 
diff --git a/hl/examples/ex_table_04.c b/hl/examples/ex_table_04.c
index 6a80b33..e2d8666 100644
--- a/hl/examples/ex_table_04.c
+++ b/hl/examples/ex_table_04.c
@@ -160,7 +160,10 @@ int main( void )
  *-------------------------------------------------------------------------
  */
  
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
 
  return 0;
diff --git a/hl/examples/ex_table_05.c b/hl/examples/ex_table_05.c
index b7970de..d3e2d50 100644
--- a/hl/examples/ex_table_05.c
+++ b/hl/examples/ex_table_05.c
@@ -160,7 +160,10 @@ int main( void )
   printf ("\n");
  }
  
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
 
  return 0;
diff --git a/hl/examples/ex_table_06.c b/hl/examples/ex_table_06.c
index daeb57c..a13810d 100644
--- a/hl/examples/ex_table_06.c
+++ b/hl/examples/ex_table_06.c
@@ -84,7 +84,10 @@ int main( void )
  /* print */
  printf ("Table has %d fields and %d records\n",(int)nfields_out,(int)nrecords_out);
   
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
 
  return 0;
diff --git a/hl/examples/ex_table_07.c b/hl/examples/ex_table_07.c
index 2c7426e..7ac0924 100644
--- a/hl/examples/ex_table_07.c
+++ b/hl/examples/ex_table_07.c
@@ -102,7 +102,10 @@ int main( void )
  /* print */
  printf ("Table has %d fields and %d records\n",(int)nfields_out,(int)nrecords_out);
  
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
  
  return 0;
diff --git a/hl/examples/ex_table_08.c b/hl/examples/ex_table_08.c
index 99a3886..f443d3c 100644
--- a/hl/examples/ex_table_08.c
+++ b/hl/examples/ex_table_08.c
@@ -133,7 +133,10 @@ int main( void )
  }
  
 
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
  
  return 0;
diff --git a/hl/examples/ex_table_09.c b/hl/examples/ex_table_09.c
index af6e5c4..bdb8232 100644
--- a/hl/examples/ex_table_09.c
+++ b/hl/examples/ex_table_09.c
@@ -134,7 +134,10 @@ int main( void )
   printf ("\n");
  }
  
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
  
  return 0;
diff --git a/hl/examples/ex_table_10.c b/hl/examples/ex_table_10.c
index b9f4c4b..0d18af9 100644
--- a/hl/examples/ex_table_10.c
+++ b/hl/examples/ex_table_10.c
@@ -126,7 +126,10 @@ int main( void )
   printf ("\n");
  }
  
- /* Close the file */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
  
  return 0;
diff --git a/hl/examples/ex_table_11.c b/hl/examples/ex_table_11.c
index db06da6..2313627 100644
--- a/hl/examples/ex_table_11.c
+++ b/hl/examples/ex_table_11.c
@@ -106,7 +106,10 @@ int main( void )
  /* print */
  printf ("Table has %d fields and %d records\n",(int)nfields_out,(int)nrecords_out);
  
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
  
  return 0;
diff --git a/hl/examples/ex_table_12.c b/hl/examples/ex_table_12.c
index 60748e9..db5eb04 100644
--- a/hl/examples/ex_table_12.c
+++ b/hl/examples/ex_table_12.c
@@ -99,7 +99,10 @@ int main( void )
  /* print */
  printf ("Table has %d fields and %d records\n",(int)nfields_out,(int)nrecords_out);
  
- /* Close the file. */
+ /* close type */
+ H5Tclose( string_type );
+ 
+ /* close the file */
  H5Fclose( file_id );
  
  return 0;
diff --git a/hl/src/Dependencies b/hl/src/Dependencies
index 8a8ed63..34100c7 100644
--- a/hl/src/Dependencies
+++ b/hl/src/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -50,8 +50,7 @@ H5LT.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 H5TA.lo: \
    $(srcdir)/H5TA.c \
    $(srcdir)/H5TA.h \
@@ -88,8 +87,7 @@ H5TA.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 H5IM.lo: \
    $(srcdir)/H5IM.c \
    $(srcdir)/H5IM.h \
@@ -126,5 +124,4 @@ H5IM.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
diff --git a/hl/test/Dependencies b/hl/test/Dependencies
index 406f8f8..2674a58 100644
--- a/hl/test/Dependencies
+++ b/hl/test/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -50,8 +50,7 @@ test_lite.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 test_image.lo: \
    $(srcdir)/test_image.c \
    $(top_srcdir)/hl/src/H5IM.h \
@@ -88,8 +87,7 @@ test_image.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 test_table.lo: \
    $(srcdir)/test_table.c \
    $(top_srcdir)/hl/src/H5TA.h \
@@ -126,5 +124,4 @@ test_table.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
diff --git a/hl/tools/gif2h5/Dependencies b/hl/tools/gif2h5/Dependencies
index 5d32d9d..ffd5954 100644
--- a/hl/tools/gif2h5/Dependencies
+++ b/hl/tools/gif2h5/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -50,8 +50,7 @@ decompress.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 gif2hdf.lo: \
    $(srcdir)/gif2hdf.c \
    $(srcdir)/gif.h \
@@ -87,8 +86,7 @@ gif2hdf.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 gif2mem.lo: \
    $(srcdir)/gif2mem.c \
    $(srcdir)/gif.h \
@@ -124,8 +122,7 @@ gif2mem.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 gifread.lo: \
    $(srcdir)/gifread.c \
    $(srcdir)/gif.h \
@@ -161,8 +158,7 @@ gifread.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 hdf2gif.lo: \
    $(srcdir)/hdf2gif.c \
    $(srcdir)/gif.h \
@@ -199,7 +195,9 @@ hdf2gif.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/hl/src/H5IM.h \
+   $(top_srcdir)/hl/src/H5LT.h \
+   $(top_srcdir)/src/hdf5.h
 hdfgifwr.lo: \
    $(srcdir)/hdfgifwr.c \
    $(srcdir)/gif.h \
@@ -235,46 +233,7 @@ hdfgifwr.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
-readhdf.lo: \
-   $(srcdir)/readhdf.c \
-   $(srcdir)/gif.h \
-   $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/tools/lib/h5tools.h
+   $(top_srcdir)/src/H5FDstdio.h
 writehdf.lo: \
    $(srcdir)/writehdf.c \
    $(srcdir)/gif.h \
@@ -311,6 +270,6 @@ writehdf.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/hl/src/H5IM.h \
-   $(top_srcdir)/hl/src/H5LT.h
+   $(top_srcdir)/hl/src/H5LT.h \
+   $(top_srcdir)/src/hdf5.h
diff --git a/perform/Dependencies b/perform/Dependencies
index c1d1d99..9300811 100644
--- a/perform/Dependencies
+++ b/perform/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -50,7 +50,6 @@ iopipe.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 chunk.lo: \
@@ -87,8 +86,7 @@ chunk.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 overhead.lo: \
    $(srcdir)/overhead.c \
    $(top_srcdir)/src/hdf5.h \
@@ -124,7 +122,6 @@ overhead.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 zip_perf.lo: \
@@ -162,10 +159,10 @@ zip_perf.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
-   $(top_srcdir)/tools/lib/h5tools_utils.h
+   $(top_srcdir)/tools/lib/h5tools_utils.h \
+   $(top_srcdir)/src/hdf5.h
 perf_meta.lo: \
    $(srcdir)/perf_meta.c \
    $(top_srcdir)/test/h5test.h \
@@ -202,7 +199,6 @@ perf_meta.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 pio_perf.lo: \
@@ -240,7 +236,15 @@ pio_perf.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/tools/lib/h5tools_utils.h \
+   $(top_srcdir)/src/hdf5.h \
+   $(srcdir)/pio_perf.h \
+   $(srcdir)/pio_timer.h \
+   $(top_srcdir)/src/H5private.h \
+   $(top_srcdir)/src/H5MPprivate.h \
+   $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/src/H5private.h
 pio_engine.lo: \
    $(srcdir)/pio_engine.c \
    $(top_srcdir)/src/hdf5.h \
@@ -276,7 +280,13 @@ pio_engine.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(srcdir)/pio_perf.h \
+   $(srcdir)/pio_timer.h \
+   $(top_srcdir)/src/H5private.h \
+   $(top_srcdir)/src/H5MPprivate.h \
+   $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/src/H5private.h
 pio_timer.lo: \
    $(srcdir)/pio_timer.c \
    $(srcdir)/pio_timer.h \
@@ -313,4 +323,9 @@ pio_timer.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(srcdir)/pio_perf.h \
+   $(top_srcdir)/src/H5private.h \
+   $(top_srcdir)/src/H5MPprivate.h \
+   $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/src/H5private.h
diff --git a/release_docs/HISTORY.txt b/release_docs/HISTORY.txt
index 1327827..50d52fe 100644
--- a/release_docs/HISTORY.txt
+++ b/release_docs/HISTORY.txt
@@ -4,6 +4,7 @@ This file contains history of the HDF5 libraries releases
 
 CONTENTS
 
+20.     Release Information for hdf5-1.6.6
 19.     Release Information for hdf5-1.6.5
 18.     Release Information for hdf5-1.6.4
 17.     Release Information for hdf5-1.6.3
@@ -27,6 +28,611 @@ CONTENTS
 
 [Search on the string '%%%%' for per-release section breaks.]
 
+%%%%1.6.6%%%%   Release Information for hdf5-1.6.6 (16/August/07)
+
+
+HDF5 version 1.6.6 released on Thu Aug 16 11:17:10 CDT 2007
+================================================================================
+
+INTRODUCTION
+============
+This document describes the differences between HDF5-1.6.5 and
+HDF5-1.6.6  It contains information on the platforms tested and
+known problems in HDF5-1.6.6. For more details, check the HISTORY.txt
+file in the HDF5 source.
+
+HDF5 documentation can be found in the distributed release source 
+code in the subdirectory doc/html/ or on the THG (The HDF Group) 
+ftp server (ftp.hdfgroup.org) in the directory:
+
+     /HDF5/docs/
+
+Documentation for the current release is also on the HDF web site:
+
+     http://hdfgroup.org/HDF5/doc/
+
+For more information, see the HDF5 home page at:
+
+    http://hdfgroup.org/HDF5/
+
+If you have any questions or comments, please send them to:
+
+    help at hdfgroup.org
+
+
+CONTENTS
+========
+- New Features
+- Support for New Platforms, Languages and Compilers
+- Bug Fixes since HDF5-1.6.5
+- Documentation
+- Platforms Tested
+- Supported Configuration Features Summary
+- Known Problems
+
+
+New Features
+============
+    Configuration:
+    -------------------------
+        - HDF5 now uses autoconf 2.61 to generate configure. MAM - 2007/7/25.
+
+    Source code distribution
+    ========================
+    Library:
+    --------
+        - None
+
+    Parallel Library:
+    -----------------
+        - None
+      
+    Tools:
+    ------
+        - h52gif and gif2h5: Both these tools were revised to include High
+            Level Image API support.  Tests were added to /hl/tools/gif2h5.
+            PVN - 2007/04/13
+        - h5dump: Added support for double long type H5T_NATIVE_LDOUBLE. 
+            PVN - 2007/03/13
+        - h5dump: Added support for binary output; see usage. PVN 2007/03/13
+        - h5repack: Added support for reading and writing by hyperslabs for
+            large files. PVN - 2007/03/01
+        - h5repack: A new option allows the copy to use the source file type
+            (default) instead of the previous conversion to native type. 
+            PVN - 2007/03/01
+        - h5repack: Added output of the percentage of compression achieved. 
+            PVN - 2007/03/01
+        - h5diff: Added support for comparing dataset regions. PVN - 2007/02/20
+        - h5diff: Added support for reading and comparing by hyperslabs for 
+            large files.  PVN - 2007/02/20
+        - h5diff: Added printing of dataset dimensions along with dataset name. 
+            PVN - 2007/02/19
+
+    F90 API:
+    --------
+        - None
+
+    C++ API:
+    --------
+        - Added support for Szip: DSetCreatPropList::setSzip - BMR 2007/01/24
+
+
+Support for New Platforms, Languages and Compilers
+==================================================
+        - Added support for MAC Intel (Darwin 8.8.2)  (gcc 4.0.1 and g95 0.91)
+                                EIP - 2007/02/13
+        - Added support for GNU C compiler version 4.2.1 for FreeBSD 6.2 
+          (32- and 64-bit)
+
+
+Bug Fixes since HDF5-1.6.5 Release
+==================================
+
+    Library
+    -------
+        - Fixed several bugs with writing fill values for datasets that have
+            a variable-length datatype or component datatype.  QAK - 2007/06/19
+        - STDIO driver didn't support files bigger than 2GB because the OFFSET
+            parameter of fseek is of type LONG INT, not big enough for big 
+            files.  Use fseeko instead for big files if it's available on the 
+            system.  SLU - 2007/4/5
+        - Relaxed restrictions on attribute operations to allow a file ID to
+            be used as the "location ID".  If a file ID is used, the attribute
+            operation will occur on the root group of the file.
+            QAK - 2007/02/09
+        - Fixed a bug in H5Sselect_valid() that caused an incorrect value to
+            be returned (0) instead of FAIL on error conditions such as the
+            selection or extent not being defined. CMC - 2007/01/05
+        - Fixed potential file corruption bug which could overwrite a portion
+            of an object's header when an attribute was renamed.  If the new
+            name for the attribute was longer than the old name, it was possible
+            that the attribute would grow enough to overwrite another message
+            in the object's header.  QAK - 2007/01/02
+        - Fixed file corruption bug which could write an incorrect number of
+            messages to an object's header under certain circumstances.
+            Generally, the sequence of actions to generate this bug looks
+            like this:
+                - Create an object.
+                - Close the file.
+                - Re-open the file.
+                - Add 2 (or more) attributes to the object.
+                - Close the file.
+                - Re-open the file.
+                - Delete one of the attributes on the object.
+                - Add a smaller attribute to the object.
+                - Delete the smaller atttribute on the object.
+                - Add a larger attribute on the object.
+
+            After this, the number of header messages stored for the object
+            will be off by one.  Other sequences of modifying attributes on an
+            object could also trigger this bug.  If you are opening an
+            object and the bottom few messages of the HDF5 error stack
+            resembles the following, the object has been affected by this bug:
+
+              #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry(): unable to load entry
+                major(08): Meta data cache layer
+                minor(40): Unable to load metadata into cache
+              #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load(): corrupt object header - too few messages
+                major(12): Object header layer
+                minor(40): Unable to load metadata into cache
+
+            Specifically, "corrupt object header" is the best string to search
+            for in the HDF5 error stack output.
+
+            If your files have been affected by this bug, or you are concerned
+            that your files might have been, please contact the HDF Helpdesk
+            at help at hdfgroup.org for a tool to detect and repair files
+            affected by this problem.  QAK - 2006/6/16
+
+        - Fixed various problems with retrieving names of objects, especially
+            with mounted files.  QAK - 2005/12/25
+
+    Configuration
+    -------------
+        - Changed to default to --disable-shared if parallel is enabled. 
+            AKC - 2007/5/12
+        - Corrected a coding error in configure when it tries to locate the
+          needed MPI and MPI-IO library for the fortran interface. 
+            AKC - 007/5/9.
+        - Changed default fortran compiler to g95 when gcc is used. 
+            AKC - 007/2/17.
+        - Configure can now use any tr command.  No more need for
+            defining the variable TR, nor is it supported.  AKC - 2006/05/20
+
+    Performance
+    -------------
+        - None
+   
+    Tools
+    -----
+        - Fixed a bug in h5dump regarding the display of named datatypes
+            attributes. PVN - 2007/03/13
+        - Fixed a bug in h5dump regarding the display of group comments. 
+            PVN - 2007/03/13
+        - Fixed a bug in h5dump regarding the display of hardlinks pointing 
+            to the root group.  PVN - 2007/03/13
+        - Fixed a bug in the h5diff percentage option -p.  PVN - 2007/03/05
+        - Fixed a bug in h5dump that caused array indices greater than 2^32-1
+            not to be printed correctly.  PVN - 2007/2/19
+
+    Documentation 
+    ------------- 
+        - Corrected errors and extended the descriptions in Reference Manual 
+            entries for several functions.  
+
+    F90 API
+    -------
+        - None
+                                
+    C++ API
+    -------
+          - Changed
+                  StrType::StrType(const size_t& size);
+            to
+                  StrType::StrType(const int dummy, const size_t& size);
+            because the first one clashed with
+                  StrType::StrType(const hid_t existing_id); - BMR 2007/05/03
+          - Wrappers of H5Rcreate had incorrect prototypes.  Added these
+            overloaded functions:
+                  IdComponent::reference(void* ref, const char* name, DataSpace&
+                          dataspace, H5R_type_t ref_type = H5R_DATASET_REGION)
+                  IdComponent::void reference(void* ref, const char* name)
+                  IdComponent::reference(void* ref, const H5std_string& name)
+            and will remove these incorrect member functions:
+                  DataSet::Reference
+                  DataType::Reference
+                  Group::Reference
+                  H5File::Reference
+          - Added wrappers for H5Rdereference as constructors:
+                  DataSet(IdComponent& obj, void* ref);
+                  Group(IdComponent& obj, void* ref);
+                  DataType(IdComponent& obj, void* ref);
+
+
+Documentation
+=============
+
+    HDF5 documentation can be found in the distributed release source 
+    code in the subdirectory doc/html/ (start with index.html) or on the 
+    THG (The HDF Group) ftp server (ftp.hdfgroup.org) in the directory:
+
+         /HDF5/docs/
+
+    Online documentation for the current release can be found on the THG 
+    web site:
+
+         http://hdfgroup.org/HDF5/doc/
+
+
+Platforms Tested
+================
+
+    AIX 5.2 (32/64 bit)           xlc 6.0.0.8
+    (datastar)                    xlC 6.0.0.9
+                                  xlf 8.1.1.7
+                                  mpcc_r 6.0.0.8
+                                  mpxlf_r 8.1.1.7
+
+    AIX 5.3 (32/64 bit)           xlc 7.0.0.0
+    (copper)                      xlC 7.0.
+                                  xlf 9.1.0.3
+
+    FreeBSD 6.2 (32- and 64-bit)  gcc  and g++3.4.6
+    (duty and liberty)            gcc and g++ 4.2.1
+
+    HP-UX B.11.23                 HP aC++/ANSI C B3910B A.06.02
+    (sirius)                      HP F90 v3.1 (32-bit only)
+                                  HP aC++/ANSI C B3910B A.06.02
+
+    IRIX64 6.5                    MIPSpro cc 7.4.4m
+    (ucar mop1 64 & n32)          F90 MIPSpro 7.4.4m (64 only)
+                                  C++ MIPSpro cc 7.4.4m
+
+    Linux 2.4.21-47.ELsmp #1 SMP  gcc 3.2.3
+        i686 i386 GNU/Linux
+    (osage)
+
+    Linux 2.6.9-42.0.10.ELsmp #1  gcc (GCC) 3.4.6
+        SMP i686 i386             G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
+    (kagiso)                      PGI C, Fortran, C++ 6.2-5 32-bit 
+                                  icc (ICC) 9.1 
+                                  Intel(R) C++ Compiler for 32-bit 
+                                      applications, Version 9.1
+                                  Intel(R) Fortran Compiler for 32-bit 
+                                      applications, Version 9.1 
+                                  Absoft 32-bit Fortran 95 10.0.4
+                                  MPICH mpich2-1.0.4p1 compiled with  
+                                  gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.91!) 
+
+    Linux 2.6.16.46-0.12-debug #1 
+        SMP ia64 GNU/Linux        Intel(R) C++ Version 10.0.025
+    (ucar hir1)                   Intel(R) Fortran Itanium(R) Version 10.0.025
+
+    Linux 2.6.16.46-0.14-smp #1   Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037
+        SMP x86_64 GNU/Linux      Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031
+    (smirom)                      PGI C, Fortran, C++ Version 6.2-5
+                                         for 64-bit target on x86-64
+                                  tested for both 32- and 64-bit binaries
+
+    Linux 2.6.5-7.283-rtgfx Altix 
+        SMP ia64                  Intel(R) C++ Version 9.0
+    (cobalt)                      Intel(R) Fortran Itanium(R) Version 9.0
+                                  SGI MPI
+
+    OSF1 V5.1 (QSC)               Compaq C V6.5-011 
+    (See "Known Problems.")       HP Fortran V5.5A-3548
+                                  Compaq C++ V6.5-036  
+                                  MPIX200_64_r13.4
+
+    SunOS 5.8 32- and 64-bit      Sun WorkShop 6 update 2 C 5.3
+    (sol)                         Sun WorkShop 6 update 2 Fortran 95 6.2
+                                  Sun WorkShop 6 update 2 C++ 5.3
+
+    SunOS 5.10 32- and 64-bit     Sun WorkShop 6 update 2 C 5.8
+    (linew)                       Sun WorkShop 6 update 2 Fortran 95 8.2
+                                  Sun WorkShop 6 update 2 C++ 5.8
+                                  Patch 121019-06 
+
+    Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
+    (tungsten)                    Intel(R) C++ Version 9.0
+                                  Intel(R) Fortran Compiler Version 9.0
+                                  PGI C Version 6.0
+                                  PGI C++ Version 6.0
+                                  PGI Fortran Version 6.0
+                                  gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5)
+
+    Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
+    (abe)                         Intel(R) C++ Version 10.0
+                                  Intel(R) Fortran Compiler Version 10.0
+                                  Open MPI 1.2.2
+
+    IA-64 Linux 2.4.21.SuSE_292.til1
+        ia64                      gcc (GCC) 3.2.2
+    (NCSA tg-login)               Intel(R) C++ Version 8.0
+                                  Intel(R) Fortran Compiler Version 8.0
+                                  mpich-gm-1.2.5..10-intel-r2
+
+    Windows XP                    Visual Studio 6.0
+                                  Visual Studio .NET (with Intel Fortran 9.0)
+                                  Visual Studio 2005 (with Intel Fortran 9.0)
+                                  cygwin (gcc 3.4.4)
+
+    MAC OS X Intel                Darwin 8.10.1
+                                  i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
+                                  g95 0.91
+
+
+Supported Configuration Features Summary
+========================================
+
+Key:   y   = Tested and supported
+       n   = Not supported or not tested in this release
+       C   = Cluster
+       W   = Workstation
+       ( ) = Footnote appears below second table
+
+Platform                              C        F90  F90      C++  zlib  SZIP
+                                      parallel      parallel
+Solaris2.8 32- and 64-bit             n        y    n        y    y     y
+Solaris2.10 32- and 64-bit            n        y    n        y    y     y
+IRIX64_6.5 32-bit                     n        n    n        n    y     y
+IRIX64_6.5 64-bit                     n        y    n        n    y     y
+HPUX11.23-32bit                       n        y    n        y    y     y
+HPUX11.23-64bit                       n        n    n        y    y     y
+WinXP Visual Studio 6.0               n        n    n        y    y     y
+WinXP CYGWIN                          n        n    n        y    y     y
+WinXP 2005                            n        y    n        y    y     y
+WinXP .Net                            n        y    n        y    y     y
+Mac OS X 10.4.10                      n        y    n        y    y     y
+AIX-5.2 & 5.3 32- and 64-bit          y        y    y        y    y     y
+FreeBSD 6.2 32- and 64-bit            n        n    n        y    y     y
+RedHat Linux 2.4.21              W    n        n    n        y    y     y
+SuSE Linux 2.6.9-42 i686 GNU (1) W    y        y    y        y    y     y
+SuSE Linux 2.6.9-42 i686 Intel   W    n        y    n        y    y     y
+SuSE Linux 2.6.9-42 i686 PGI     W    n        y    n        y    y     y
+SuSE Linux 2.6.16 x86_64 GNU (1) W    y        y    y        y    y     y
+SuSE Linux 2.6.16 x86_64 Intel   W    n        y    n        y    y     y
+SuSE Linux 2.6.16 x86_64 PGI     W    n        y    n        y    y     y
+RHEL 4 Linux 2.6.9 Xeon Lustre   C    y        y    y        y    y     y
+RedHat Linux 2.4 Xeon Lustre     C    n        y    n        y    y     y
+SuSE Linux 2.4 ia64              C    y        y    y        y    y     y
+SuSe Linux 2.6.16 SGI Altix ia64      n        y    n        y    y     y
+SuSe Linux 2.6.5 SGI Altix ia64       n        y    n        y    y     y
+OSF1 v5.1                             y        y    y        y    y     n
+
+
+Platform                              Shared        static-  Thread-  STREAM-
+                                      libraries(4)  exec     safe     VFD
+Solaris2.8 32- and 64-bit             y             n        y        y
+Solaris2.10 32- and 64-bit            y             n        y        y
+IRIX64_6.5 32-bit                     y             n        y        y
+IRIX64_6.5 64-bit                     y             n        y        y
+HPUX11.23-32bit                       y (3)         n        n        y
+HPUX11.23-64bit                       y (3)         n        n        y
+WinXP Visual Studio 6.0               y             n        n        n
+WinXP CYGWIN                          y             n        n        n
+WinXP 2005                            y             n        n        n
+WinXP .Net                            y             n        n        n
+Mac OS X 10.4.10                      y             n        n        y
+AIX-5.2 & 5.3 32- and 64-bit          n             n        n        y
+FreeBSD 6.2 32- and 64-bit            y             n        n        y
+RedHat Linux 2.4.21              W    y             n        n        y
+SuSE Linux 2.6.9-42 i686 GNU (1) W    y             n        y        y
+SuSE Linux 2.6.9-42 i686 Intel   W    y             n        n        y
+SuSE Linux 2.6.9-42 i686 PGI     W    n             n        n        y
+SuSE Linux 2.6.16 x86_64 GNU (1) W    y             n        n        y
+SuSE Linux 2.6.16 x86_64 Intel   W    y             n        n        y
+SuSE Linux 2.6.16 x86_64 PGI     W    n             n        n        y
+RHEL 4 Linux 2.6.9 Xeon Lustre   C    y             n        n        y
+RedHat Linux 2.4 Xeon Lustre     C    y             n        n        y
+SuSE Linux 2.4 ia64              C    y             n        n        y
+SuSe Linux 2.6.16 SGI Altix ia64      n             n        n        y
+SuSe Linux 2.6.5 SGI Altix ia64       n             n        n        y
+OSF1 v5.1                             n             n        n        y
+
+Compiler versions for each platform are listed in the "Platforms Tested" 
+table found elsewhere in this file (RELEASE.txt).  Unless otherwise noted, 
+compilers used are the system compilers.
+
+Footnotes:
+(1) Fortran compiled with g95.
+(2) In most cases, shared libraries are provided only for the C library, 
+    except on Windows where they are provided for C, C++, and Fortran.
+(3) C++ works only with static libraries.
+
+
+Known Problems
+==============
+* QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It
+  does not include the -lmpi properly.  This will be fixed in the next
+  release.  AKC - 2007/08/07.
+
+* On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared
+  library, especially for h5repacktst and h52gifgentst, the following (or
+  similar) error message may appear:
+  "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname
+  'libh5test.so.1' under any of the filenames .......(bunch of directories)
+  "
+  And the testing will fail. 
+  We believe this is a libtool problem. One way to get rid of this is to
+  add the paths of libh5test.so.1 and libh5.so.1 to the shared library path.
+
+  For 32-bit:
+  You may do this, under csh:
+  setenv LD_LIBRARYN32_PATH .......(existing pathes):[full path of HDF5
+  directory/test/.libs]:[full path of HDF5 directory/src/.libs]
+
+  For 64-bit:
+  setenv LD_LIBRARY64_PATH ......(existing pathes):[full path of HDF5
+  directory/test/.libs]:[full path of HDF5 directory/src/.libs]
+
+  NOTE: This problem ONLY affects the testing of the HDF5 library when you 
+  build from source. It won't affect any applications that would like to link 
+  with the HDF5 shared library since the shared library path needs to be set 
+  anyway.  KY - 2007/8/2
+
+* QSC (an HP alpha-based OSF1 cluster) failed the testpar/testphdf5 sub-test
+  "calloc".  All other tests passed.  This indicates that a dataset using 
+  chunked storage created by serial HDF5 may not work properly with parallel 
+  HDF5.  The calloc test can be skipped by running "prun ... testphdf5 -x 
+  calloc".  AKC - 2007/7/12.
+
+* The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has
+  an optimization error in the datax types conversion code.  Before running
+  configure, edit the file config/intel-flags by changing the setting of
+  PROD_CFLAGS from -O3 to -O0.  Then run configure.  AKC - 2005/11/10.
+
+* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 on IRIX
+  6.5, set the environment variable MPI_TYPE_MAX to be a bigger number, for 
+  example 120000, in order to pass the complicated collective IO tests inside 
+  the parallel HDF5 library. This is not a problem inside the parallel HDF5 
+  library. You can always set a bigger number on your system.  KY - 2005/10/6
+
+* A contiguous or chunked dataset created by a sequential version of HDF5 
+  might not be able to be modified with a parallel version of the library. 
+  Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the 
+  dataset creation property list to avoid the problem.  EIP - 2005/09/09
+
+* The dataset created or rewritten with the v1.6.3 library or after can't 
+  be read with the v1.6.2 library or before when Fletcher32 EDC (a filter) is 
+  enabled.  There was a bug in the calculating code of the Fletcher32 
+  checksum in the library before v1.6.3.  The checksum value wasn't consistent 
+  between big-endian and little-endian systems.  This bug was fixed in 
+  Release 1.6.3.  However, after fixing the bug, the checksum value is no 
+  longer the same as before on little-endian system.  The library release 
+  after 1.6.4 can still read the dataset created or rewritten with the library
+  of v1.6.2 or before.  SLU - 2005/7/8
+
+* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
+  processor, there's a bug in the compiler for optimization(-O2).  The library
+  failed in several tests, all related to the multi driver.  The problem has 
+  been reported to the vendor.  
+
+* test/big fails sometimes with the message "Possible overlap with another
+  region."  The test selects regions randomly, and this error occurs when
+  two regions overlap each other; it is a bug in the test and not in
+  HDF5.  Since the error is triggered by a random situation, it will
+  usually disappear if the test is re-run.
+
+* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but 
+  have a "guard" statement in stdint.h that will #error and skip the rest
+  of the header file if the C99 option is not used explicitly.  Hardsetting
+  $CC to c99 will resolve the problem. AKC - 2004/12/13
+
+* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
+  messages like "INFO: 0031-XXX ...".  This is from the command poe.
+  Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
+  and run the tests again.
+
+  The tests may also fail with messages like "The socket name is already
+  in use".  HDF5 does not use sockets (except for stream-VFD).  This is
+  due to problems of the poe command trying to set up the debug socket.
+  Check whether there are many old /tmp/s.pedb.* files staying around.  These 
+  are sockets used by the poe command and left behind due to failed commands.
+  Ask your system administrator to clean them out.  Lastly, request IBM
+  to provide a means to run poe without the debug socket.
+
+* The h5dump tests may fail to match the expected output on some platforms
+  (e.g. parallel jobs, Windows) where the error messages directed to
+  "stderr" do not appear in the "right order" with output from stdout.
+  This is not an error.
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+  application is already using that port address, the test will hang
+  indefinitely and has to be terminated by the kill command. To try the
+  test again, change the port address in test/stream_test.c to one not
+  being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+  platforms. This is due to the fact that not all of the system
+  libraries on Solaris are available in a static format.
+
+  The --enable-static-exec configure flag also fails to correctly compile
+  on the IBM SP2 platform for the serial mode. The parallel mode works fine
+  with this option.
+
+  The --enable-static-exec configure flag also fails to correctly compile
+  on the HPUX 11.00.
+  
+  It is suggested that you don't use this option on these platforms
+  during configuration.
+
+* The Stream VFD is not supported under Windows.
+
+* Use the --disable-shared configure flag if building with Absoft Fortran
+  compiler.
+
+* Information about building with PGI and Intel compilers is available in
+  INSTALL file sections 5.7 and 5.8.
+
+* In LANL QSC, the new cc compiler has problems converting small values of
+  long long (absolute values less than 1**-308) to double.  This triggers
+  the test/dtypes to report failure in the following test:
+      Testing random sw long double -> double conversions
+  If -ieee is used, the converted doubles spread over the range 0.0 to 
+  10**-308.  If -ieee is not used, the converted double values are mostly 
+  0.0, but occasionally appear as 10**-308.  This has been reported to the 
+  system staff.
+
+  All other tests have passed.
+
+* On at least one system, SDSC DataStar, the scheduler (in this case
+  LoadLeveler) sends job status updates to standard error when you run
+  any executable that was compiled with the parallel compilers.
+
+  This causes problems when running "make check" on parallel builds, as
+  many of the tool tests function by saving the output from test runs,
+  and comparing it to an exemplar.
+
+  The best solution is to reconfigure the target system so it no longer
+  inserts the extra text.  However, this may not be practical.
+
+  In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
+  the configure and build.  This will cause "make check" to continue after
+  detecting errors in the tool tests.  However, in the case of SDSC DataStar,
+  it also leaves you with some 150 "failed" tests to examine by hand.
+
+  A second solution is to write a script to run serial tests and filter
+  out the text added by the scheduler.  A sample script used on SDSC
+  DataStar is given below, but you will probably have to customize it
+  for your installation.
+
+  Observe that the basic idea is to insert the script as the first item
+  on the command line which executes the test.  The script then
+  executes the test and filters out the offending text before passing
+  it on.
+
+        #!/bin/csh
+
+        set STDOUT_FILE=~/bin/serial_filter.stdout
+        set STDERR_FILE=~/bin/serial_filter.stderr
+
+        rm -f $STDOUT_FILE $STDERR_FILE
+
+        ($* > $STDOUT_FILE) >& $STDERR_FILE
+
+        set RETURN_VALUE=$status
+
+        cat $STDOUT_FILE
+
+        tail +3 $STDERR_FILE
+
+        exit $RETURN_VALUE
+
+  You get the HDF5 make files and test scripts to execute your filter script
+  by setting the environment variable "RUNSERIAL" to the full path of the
+  script prior to running configure for parallel builds.  Remember to
+  "unsetenv RUNSERIAL" before running configure for a serial build.
+
+  Note that the RUNSERIAL environment variable exists so that we can
+  prefix serial runs as necessary on the target system.  On DataStar,
+  no prefix is necessary.  However, on an MPICH system, the prefix might
+  have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
+  get the serial tests to run at all.
+
+  In such cases, you will have to include the regular prefix in your
+  filter script.  JM - 2004/9/15
+
 %%%%1.6.5%%%%   Release Information for hdf5-1.6.5 (10/November/05)
 
 
diff --git a/release_docs/INSTALL b/release_docs/INSTALL
index 48b49fa..e6e29b9 100644
--- a/release_docs/INSTALL
+++ b/release_docs/INSTALL
@@ -34,7 +34,6 @@
         4.3.10. Disabling high-level C APIs 
         4.3.11. Threadsafe capability
         4.3.12. Backward compatibility with HDF5 1.4* releases
-        4.3.13. Network stream capability
         4.4. Building
         4.5. Testing
         4.6. Installing
@@ -63,7 +62,7 @@
 
 
 2. Quick installation
-        For those that don't like to read ;-) the following steps can be
+        For those who don't like to read ;-) the following steps can be
         used to configure, build, test, and install the HDF5 Library, header
         files, and support programs. The "#" symbol in "hdf5-1.6.#" below
         stands for the release number and/or the subrelease version.  (For  
@@ -71,8 +70,24 @@
 
             $ gunzip < hdf5-1.6.#.tar.gz | tar xf -
             $ cd hdf5-1.6.#
+            $ ./configure <configure_flags>
+            $ make
             $ make check
             $ make install
+            $ make check-install
+
+        The last step above verifies your installation.
+
+        <configure_flags> above refers to the configure flags appropriate
+        to your installation.  For example, to install HDF5 with the 
+        Fortran and C++ interfaces and with SZIP compression, the 
+        configure line might read as follows:
+        
+            $ ./configure --enable-fortran --enable-cxx \
+                          --with-szlib=PATH_TO_SZIP
+
+        In this case, PATH_TO_SZIP would be replaced with the path to the 
+        installed location of the SZIP library.
 
 2.1. Windows
         Users of Microsoft Windows should see one of the INSTALL_Windows files
@@ -81,16 +96,16 @@
 
 3. HDF5 dependencies
 3.1. Zlib 
-        The HDF5 Library has a predefined compression filter that uses
-        the "deflate" method for chunked datatsets. If zlib-1.1.2 or
+        The HDF5 Library includes a predefined compression filter that 
+        uses the "deflate" method for chunked datasets. If zlib-1.1.2 or
         later is found, HDF5 will use it. Otherwise, HDF5's predefined
         compression method will degenerate to a no-op; the compression
         filter will succeed but the data will not be compressed.
 
 3.2. Szip (optional)
-        The HDF5 Library has a predefined compression filter that uses
-        the extended-Rice lossless compression algorithm for chunked 
-        datatsets. For more information about Szip compression and license 
+        The HDF5 Library includes a predefined compression filter that 
+        uses the extended-Rice lossless compression algorithm for chunked 
+        datasets. For more information about Szip compression and license 
         terms, see http://hdfgroup.org/doc_resource/SZIP/index.html.
 
         Precompiled szip binaries for each supported platform and a source tar 
@@ -111,8 +126,7 @@
 3.3. MPI and MPI-IO
         The parallel version of the library is built upon the foundation
         provided by MPI and MPI-IO. If these libraries are not available
-        when HDF5 is configured, only a serial version of HDF5 can be
-        built.
+        when HDF5 is configured, only a serial version of HDF5 can be built.
 
 
 4. Full installation instructions for source distributions
@@ -239,7 +253,7 @@
                 $ ./configure --enable-fortran --enable-parallel
 
 4.3.3. Additional compilation flags
-        If addtional flags must be passed to the compilation commands,
+        If additional flags must be passed to the compilation commands,
         specify those flags with the CFLAGS variable. For instance,
         to enable symbolic debugging of a production version of HDF5 one
         might say:
@@ -253,6 +267,7 @@
 
             $ ./configure --enable-fortran
             $ ./configure --enable-cxx
+            $ ./configure --enable-fortran --enable-cxx
         
         Configure uses the Fortran compiler specified in the host configuration
         file in the fortran/config directory and the C++ compiler specified in 
@@ -292,7 +307,7 @@
         during 'make install' (described below) with a BSD-compatible
         install program detected automatically by configure. If none is
         found, the shell script bin/install-sh is used. Configure
-        does NOT check that the install program actually works, but if a
+        does NOT check that the install program actually works; if a
         bad install is detected on your system, you have two choices: 
 
             1. Copy the bin/install-sh program to your $HOME/bin
@@ -343,7 +358,7 @@
 
             $ ./configure --disable-shared
 
-        To build only statically linked executables on platforms which
+        To build only statically linked executables on platforms that
         support shared libraries, use the '--enable-static-exec' flag.
 
             $ ./configure --enable-static-exec
@@ -370,7 +385,7 @@
         switch.  (See "Debugging HDF5 Applications" for a list of package 
         names.  In the documentation distributed with this release, that
         document is in doc/html/Debugging.html.  In the HDF5 documentation 
-        at http:hdfgroup.org/HDF5/doc/, select "HDF5 User's Guide from 
+        at http://hdfgroup.org/HDF5/doc1.6/, select "HDF5 User's Guide from 
         Release 1.4.5," then select "Debugging.")
 
         Debugging can be disabled by saying '--disable-debug'. The
@@ -409,7 +424,7 @@
         (For further details, see "Thread Safe HDF5 Library Implementation" 
         in the "HDF5 Technical Notes."  This document is included in the 
         HDF5 documentation set distributed with this release and posted at
-        http:hdfgroup.org/HDF5/doc/.)
+        http://hdfgroup.org/HDF5/doc1.6/.)
 
 4.3.12. Backward compatibility with HDF5 1.4* releases
         The 1.6 version of the HDF5 Library can be configured to operate
@@ -419,12 +434,6 @@
         application source code. This flag will only be supported in the
         v1.6 branch of the library; it will not be available in v1.8+.
 
-4.3.13. Network stream capability
-        By default, the HDF5 Library is configured with a network stream file
-        driver. See the documentation on the Virtual File Layer for more 
-        details about the use of this driver. Use the '--disable-stream-vfd' 
-        configuration flag to turn it OFF.
-
 4.4. Building
         The library, confidence tests, and programs can be built by
         saying just:
@@ -461,16 +470,16 @@
 4.6. Installing
         The HDF5 Library, include files, and support programs can be
         installed in a (semi-)public place by saying 'make install'. The
-        files are installed under the directory specified with
-        '--prefix=DIR' (or 'hdf5' in the build directory) in directories 
-        named 'lib', 'include', 'doc', and 'bin'. The prefix directory DIR 
-        must exist prior to 'make install', but its subdirectories are 
-        created automatically.  An 'hdf5' directory under the build directory
-        is created automatically.
+        files are installed under the directory specified with '--prefix=DIR' 
+        (or under 'hdf5/' in the build directory) in directories named 'lib', 
+        'include', 'doc', and 'bin'. The prefix directory DIR must exist 
+        prior to 'make install', but its subdirectories are created 
+        automatically.  If no prefix is defined, an 'hdf5' directory is 
+        automatically created under the build directory.
 
         If 'make install' fails because the install command at your site
         somehow fails, you may use the install-sh script that comes with the
-        source. You need to run ./configure again.
+        source. You need to run ./configure again:
 
             $ INSTALL="$PWD/bin/install-sh -c" ./configure ...
             $ make install
diff --git a/release_docs/INSTALL_Windows.txt b/release_docs/INSTALL_Windows.txt
index 83cf6d6..ca76b4e 100644
--- a/release_docs/INSTALL_Windows.txt
+++ b/release_docs/INSTALL_Windows.txt
@@ -1,9 +1,9 @@
 ----------------------------------------------------------------------
-HDF5 Build and Install Instructions for Windows 2000/XP (Full Version)
+HDF5 Build and Install Instructions for Windows XP/VISTA 
 ----------------------------------------------------------------------
 
 The following instructions assume that the HDF5 source code package 
-from HDF website (http://hdfgroup.org) is used.
+from the HDF website (http://hdfgroup.org) is used.
 
 
 ***************************WARNINGS***********************************
@@ -47,37 +47,37 @@ Preconditions
       directory called 'hdf5-1.6.x' under MyHDFstuff which contains 
       several files and directories.  Rename "hdf5-1.6.x" to "hdf5".  
 
-   4. HDF5 provide options to do in-memory compress within HDF5
-      library.  Currently, two external compression libraries Zlib and
-      Szip can be used with HDF5.
+   4. HDF5 provides options for in-memory compression within the HDF5
+      library.  Currently, two external compression libraries, Zlib and
+      Szip, can be used with HDF5.
 
       4.1 HDF5 uses Zlib version 1.2.3 for compression and Zlib is NOT
           distributed with HDF5 library in 1.6.x release. To use Zlib
           library, you have to install your own Zlib DLL library or go
-          to ftp://ftp.hdfgroup.org/lib-external/zlib/1.2/bin 
+          to ftp://ftp.hdfgroup.org/lib-external/zlib/1.2/bin/windows 
           to download the Zlib library.
       
-      4.2 HDF5 uses Szip version 2.0 for compression and Szip
+      4.2 HDF5 uses Szip for compression and Szip
           compression software is provided with HDF5 products starting
-          from 1.6.0 release.  To use Szip 2.0 library, you can
+          from 1.6.0 release.  To use Szip 2.1 library, you can
           download Szip source codes and binaries from
-          ftp://ftp.hdfgroup.org/lib-external/szip/2.0/bin/windows
+          ftp://ftp.hdfgroup.org/lib-external/szip/2.1/bin/windows
 
           Please note that Szip is not a totally open-source free
           software.  For licensing issue of Szip, please check 
           "Licensing terms" at
           http://hdfgroup.org/doc_resource/SZIP/index.html.
 
-      Compression feature inside HDF5 is optional. 
+      Compression in HDF5 is optional. 
       
    5. Define the following environment variables: 
 
         HDF5_EXT_ZLIB
         HDF5_EXT_SZIP
       
-      In this section, Zlib and Szip compression software are assumed
+      In this section, the Zlib and Szip compression software are assumed
       to be used.  Please read section V as well as this section if you
-      do not want to use compression feature inside HDF5.
+      do not want to use compression in HDF5.
       
       To define these environment variables:
       
@@ -90,7 +90,7 @@ Preconditions
       under "User Variables" box.
       
       In the New Variable window, set "Variable name" as HDF5_EXT_ZLIB
-      and "Variable value" as zdll.lib, then click OK.
+      and "Variable value" as zlib1.lib, then click OK.
       
       Similarly, you can set:
 
@@ -101,7 +101,7 @@ Preconditions
          a. You might have to close and reopen running programs for
             the new environment variable settings to take effect. 
 
-         b. c:\zlib122\zlib1.dll and c:\szip\dll\szlibdll.dll should
+         b. c:\zlib123\zlib1.dll and c:\szip\dll\szlibdll.dll should
             be copied into the location that the application can find,
             one suggestion is to use the c:\WINNT\system or
             c:\WINDOWS\system
@@ -120,16 +120,16 @@ Preconditions
       6.1 Find the box "Show directories for", choose 
           "Include files",
           If you cannot find your Zlib and Szip header path
-          (for example, c:\zlib122\include, c:\szip\include)
+          (for example, c:\zlib123\include, c:\szip\include)
           from the directory list, add the header path
-          (c:\zlib122\include, c:\szip\include) to the 
+          (c:\zlib123\include, c:\szip\include) to the 
           included directories.
       
       6.2 Find the box "Show directories for", choose "Library files",
           If you cannot find your Zlib and Szip library path
-          (for example, c:\zlib122\lib, c:\szip\dll)
+          (for example, c:\zlib123\lib, c:\szip\dll)
           from the directory list, add the library path
-          (c:\zlib122\lib, c:\szip\dll) to the library directories.
+          (c:\zlib123\lib, c:\szip\dll) to the library directories.
       
 Notes
 
@@ -140,13 +140,13 @@ Notes
       want to know HDF5 building and installation details, please 
       read INSATLL_Windows_Short.txt.
 
-   3. For users who would like to build and test HDF5 package from the 
+   3. For users who would like to build and test the HDF5 package from the 
       command line, please read INSATLL_Windows_From_Command_Line.txt.
    
-   4. HDF4-related tools are not built and released with HDF5 library
-      packages any more. To obtain HDF4-related tools, please check
-      http://hdfgroup.org/h4toh5/ and 
-      ftp://ftp.hdfgroup.org/HDF5/h4toh5
+   4. HDF4-related tools are not built and released with HDF5.  
+      To obtain HDF4-related tools, please check the following locations:
+          http://hdfgroup.org/h4toh5/ 
+          ftp://ftp.hdfgroup.org/HDF5/h4toh5
 
    5. For DLL users, please do read and follow "DLL hints"
       at Section IV.
@@ -155,11 +155,11 @@ Notes
  
    7. For fortran users, please read section VII.
 
-   8. We no longer support compaq viusal fortran compiler. Compaq visual
+   8. We no longer support the compaq visual fortran compiler. Compaq visual
       fortran projects are still included for forward compatibility with intel
       fortran 9.1.  
 
-   9. For users who would like to build, test and use HDF5 snapshot
+   9. For users who would like to build, test and use an HDF5 snapshot
       release, please read Section VIII.
 
 ------------------------------------------------------------------------
@@ -176,7 +176,8 @@ The following sections discuss installation procedures in detail:
    Section VII : How to Build with Intel Fortran 9.1
    Section VIII: How to build and test HDF5 snapshot release
    Section IX  : How to build HDF5 Multithreaded Static Library
-   Section X   : Misc. 
+   Section X   : Build HDF5 on Windows Vista
+
 
 ---------------------------------------------------------------------
 
@@ -410,11 +411,11 @@ Section II: How to build and test HDF5 libraries and tools
       debug version
       debug dll version
 
-      We strongly suggest you to redirect your testing results into an
+      We strongly suggest that you redirect your testing results into an
       output file so that you can easily check the testing results. You
       may use either Notepad or WordPad or whatever other windows word
-      processor to check the results.  For the purpose of printing,  
-      please choose font less than 14 for better alignment of the text.
+      processor to check the results.  For printing purposes, please
+      choose a font less than 14 for better alignment of the text.
 
       DLLs listed below should be placed into the Windows system
       directory.  A batch file named install_dll.bat is included in 
@@ -510,7 +511,7 @@ Section II: How to build and test HDF5 libraries and tools
       Skip this step UNLESS you have built HDF5 C++ libraries
       and want to test them.
      
-      DLLs listed below should be placed into to the Windows system
+      DLLs listed below should be placed in the Windows system
       directory.  A batch file named install_cppdll.bat is included in 
       c:\MyHDFstuff\hdf5 directory.  Run this batch file and the 
       following HDF5 C++ DLLs will be copied to the system directory.
@@ -824,7 +825,7 @@ Section III: Building an application using the HDF5 library or DLL
        add HDF5, Zlib, and Szip header files directories.  For example:
        
           c:\MyHDFstuff\hdf5\hdf5lib\include
-          c:\zlib122\include
+          c:\zlib123\include
           c:\szip\include
 
        Then click OK.
@@ -870,8 +871,8 @@ Section III: Building an application using the HDF5 library or DLL
        
           c:\MyHDFstuff\hdf5\hdf5lib\include
           c:\MyHDFstuff\hdf5\hdf5lib\lib
-          c:\zlib122\include
-          c:\zlib122\lib
+          c:\zlib123\include
+          c:\zlib123\lib
           c:\szip\include
           c:\szip\dll
 
@@ -1052,7 +1053,7 @@ Section V: How to disable Gzip(Zlib)/Szip compression
 
           Szip library is different if you want to disable Szip 
           encoder. Download szip_noencoder binaries from
-          ftp://ftp.hdfgroup.org/lib-external/szip/2.0/bin/windows.
+          ftp://ftp.hdfgroup.org/lib-external/szip/2.1/bin/windows.
           The Szip library and header path should also be set up
           accordingly (refer to precondition 6).
    
@@ -1121,7 +1122,7 @@ Section VII: Building with Intel Fortran 9.1
      Szip source codes or binaries for Intel compiler can be downloaded
      from the following address:
 
-     ftp://ftp.hdfgroup.org/lib-external/szip/2.0/bin/windows.
+         ftp://ftp.hdfgroup.org/lib-external/szip/2.1/bin/windows
 
      b. Set up path for external libraries and headers
 
@@ -1135,9 +1136,9 @@ Section VII: Building with Intel Fortran 9.1
       menu, Go to Tools > Options > Intel(R) Fortran.
       In the right panel, make sure you "Selected Compiler" is Intel Fortran 9.1.
       Click rightmost box for "Libraries",
-      Add Zlib and Szip Library Path (c:\zlib122\lib, c:\szip\dll for example)
+      Add Zlib and Szip Library Path (c:\zlib123\lib, c:\szip\dll for example)
       Click rightmost box for "Includes",
-      Add Zlib and Szip header path (c:\zlib122\include c:\szip\include, for example).
+      Add Zlib and Szip header path (c:\zlib123\include c:\szip\include, for example).
       Then click "OK".
 
 
@@ -1472,30 +1473,33 @@ Section IX: How to build Multi-threaded version of HDF5 library
          
     5. Go back to Section II, Step 1 (4), continue to build and test HDF5 library.
 
+Section IX: How to build HDF5 on windows Vista
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Building on Windows Vista is very similar to building on Windows XP, with
+some minor changes.  Therefore, follow the build instructions above, with the
+following considerations:
 
-Section X: Misc.
-~~~~~~~~~~~~~~~~~~~
-
-    1) drivers we support
-
-    The default driver on windows we support is sec2 driver. However, 
-    stdio driver is also supported. If you want to use stdio driver 
-    in your application, you may set environment variable HDF5_DRIVER 
-    to "stdio".
-
-    On windows 2000/XP, the following steps should be followed to set
-    the environment variable,
-
-      a) Go to Control panel and find "system",
-      b) Click "system" and choose "advanced",
-      c) Choose Environment Variables
-      d) Add new variable "HDF5_DRIVER"
-      e) set the "HDF5_DRIVER" to "stdio"
+    1. Only Visual Studio 2005 is currently supported on Windows Vista.  This
+       is because Microsoft has ended their support for 6.0 and .NET.
+       
+    2. Building Fortran libraries has not been tested, and is therefore also
+       unsupported.  You may attempt to build Fortran libraries following the
+       instructions above, but they should be considered experimental and used
+       for testing only.
+       
+    3. Elevated security permissions are required to test the HDF5 libraries.
+       This is because DLLs are installed in the system directory.  To enable
+       elevated security:
+       
+            1. In the Start menu, search for "Command Prompt".  Right click on
+               the "Command Prompt" program, and select "Run as administrator."
+               
+            2. A security dialog will pop up.  Make sure you select "Continue."
+            
+            3. Test HDF5 libraries and tools as usual using "hdf5check.bat"
+               script.
+			   
 
-    Reminder: 
-    If you don't want to use stdio driver, please remember to 
-    delete the environment variable "HDF5_DRIVER" or change the 
-    variable value to "sec2".
 
 *******************************************************************
 Please send email to help at hdfgroup.org for further assistance.
diff --git a/release_docs/INSTALL_Windows_From_Command_Line.txt b/release_docs/INSTALL_Windows_From_Command_Line.txt
index 8bb1f4b..6db940c 100755
--- a/release_docs/INSTALL_Windows_From_Command_Line.txt
+++ b/release_docs/INSTALL_Windows_From_Command_Line.txt
@@ -1,5 +1,5 @@
       Instructions for Building and Testing HDF5 on Command Line
-                         for Windows XP/2000
+                         for Windows XP
 
 ************************************************************************
 Note: This instruction is written for users who would like to build HDF5
diff --git a/release_docs/INSTALL_Windows_Short_VS6.0.txt b/release_docs/INSTALL_Windows_Short_VS6.0.txt
index acb0c16..78229b4 100755
--- a/release_docs/INSTALL_Windows_Short_VS6.0.txt
+++ b/release_docs/INSTALL_Windows_Short_VS6.0.txt
@@ -1,9 +1,9 @@
-HDF5 Build and Install Instructions for Windows 2000/XP (Short Version)
+HDF5 Build and Install Instructions for Windows XP (Short Version)
 ------------------------------------------------------------------------
 Note: This short instruction is written for users who want to quickly
       build HDF5 library and tools from the HDF5 source code package
       but do not want to know HDF5 building and installation details
-      on Windows 2000/XP.  This is written for the Microsoft Visual
+      on Windows XP.  This is written for the Microsoft Visual
       Studio 6.0 compiler.
          
       For detailed HDF5 build and install information, or if you have
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt
index adb13a5..fd0f6b3 100644
--- a/release_docs/RELEASE.txt
+++ b/release_docs/RELEASE.txt
@@ -1,37 +1,37 @@
-HDF5 version 1.6.6 released on Thu Aug 16 11:17:10 CDT 2007
+HDF5 version 1.6.7 released on Thu Jan 31 21:09:10 CST 2008
 ================================================================================
 
 INTRODUCTION
 ============
-This document describes the differences between HDF5-1.6.5 and
-HDF5-1.6.6  It contains information on the platforms tested and
-known problems in HDF5-1.6.6. For more details, check the HISTORY.txt
-file in the HDF5 source.
+This document describes the differences between HDF5-1.6.6 and HDF5-1.6.7  
+It contains information on the platforms tested and known problems in
+HDF5-1.6.7. For more details, check the HISTORY.txt file in the HDF5 source.
 
-HDF5 documentation can be found in the distributed release source 
-code in the subdirectory doc/html/ or on the THG (The HDF Group) 
-ftp server (ftp.hdfgroup.org) in the directory:
+HDF5 documentation can be found in the distributed release source code
+in the subdirectory doc/html/ or on the THG (The HDF Group) FTP server: 
 
-     /HDF5/docs/
+     ftp://ftp.hdfgroup.org/HDF5/docs/
 
-Documentation for the current release is also on the HDF web site:
+Documentation for the current release in the HDF5 Release 1.6.x series is 
+also on the HDF web site:
 
-     http://hdfgroup.org/HDF5/doc/
+     http://hdfgroup.org/HDF5/doc1.6/
 
-For more information, see the HDF5 home page at:
+For more information, see the HDF5 home page:
 
-    http://hdfgroup.org/HDF5/
+     http://hdfgroup.org/products/hdf5/
 
-If you have any questions or comments, please send them to:
+If you have any questions or comments, please see the HDF Support page
+for a list of available resources:
 
-    help at hdfgroup.org
+     http://hdfgroup.org/services/support.html
 
 
 CONTENTS
 ========
 - New Features
 - Support for New Platforms, Languages and Compilers
-- Bug Fixes since HDF5-1.6.5
+- Bug Fixes since HDF5-1.6.6
 - Documentation
 - Platforms Tested
 - Supported Configuration Features Summary
@@ -42,215 +42,126 @@ New Features
 ============
     Configuration:
     -------------------------
-        - HDF5 now uses autoconf 2.61 to generate configure. MAM - 2007/7/25.
+    '--enable-stream-vfd' and '--disable-stream-vfd' are no longer valid 
+    configure options because the stream I/O driver has ben removed from
+    the distribution.
 
     Source code distribution
     ========================
     Library:
     --------
-        - None
+    The stream I/O driver is not included with the HDF5 Library in this
+    release.  The source code files hdf5/src/H5FDstream.c and
+    hdf5/src/H5FDstream.h and the driver ENUM value H5FD_STREAM have been 
+    removed.
 
     Parallel Library:
     -----------------
-        - None
-      
+    None      
+
     Tools:
     ------
-        - h52gif and gif2h5: Both these tools were revised to include High
-            Level Image API support.  Tests were added to /hl/tools/gif2h5.
-            PVN - 2007/04/13
-        - h5dump: Added support for double long type H5T_NATIVE_LDOUBLE. 
-            PVN - 2007/03/13
-        - h5dump: Added support for binary output; see usage. PVN 2007/03/13
-        - h5repack: Added support for reading and writing by hyperslabs for
-            large files. PVN - 2007/03/01
-        - h5repack: A new option allows the copy to use the source file type
-            (default) instead of the previous conversion to native type. 
-            PVN - 2007/03/01
-        - h5repack: Added output of the percentage of compression achieved. 
-            PVN - 2007/03/01
-        - h5diff: Added support for comparing dataset regions. PVN - 2007/02/20
-        - h5diff: Added support for reading and comparing by hyperslabs for 
-            large files.  PVN - 2007/02/20
-        - h5diff: Added printing of dataset dimensions along with dataset name. 
-            PVN - 2007/02/19
+    None
 
     F90 API:
     --------
-        - None
+    None
 
     C++ API:
     --------
-        - Added support for Szip: DSetCreatPropList::setSzip - BMR 2007/01/24
+    None
 
 
 Support for New Platforms, Languages and Compilers
 ==================================================
-        - Added support for MAC Intel (Darwin 8.8.2)  (gcc 4.0.1 and g95 0.91)
-                                EIP - 2007/02/13
-        - Added support for GNU C compiler version 4.2.1 for FreeBSD 6.2 
-          (32- and 64-bit)
+
+No new platorms, languages, or compilers are supported in this release.
 
 
-Bug Fixes since HDF5-1.6.5 Release
+Bug Fixes since HDF5-1.6.6 Release
 ==================================
 
     Library
     -------
-        - Fixed several bugs with writing fill values for datasets that have
-            a variable-length datatype or component datatype.  QAK - 2007/06/19
-        - STDIO driver didn't support files bigger than 2GB because the OFFSET
-            parameter of fseek is of type LONG INT, not big enough for big 
-            files.  Use fseeko instead for big files if it's available on the 
-            system.  SLU - 2007/4/5
-        - Relaxed restrictions on attribute operations to allow a file ID to
-            be used as the "location ID".  If a file ID is used, the attribute
-            operation will occur on the root group of the file.
-            QAK - 2007/02/09
-        - Fixed a bug in H5Sselect_valid() that caused an incorrect value to
-            be returned (0) instead of FAIL on error conditions such as the
-            selection or extent not being defined. CMC - 2007/01/05
-        - Fixed potential file corruption bug which could overwrite a portion
-            of an object's header when an attribute was renamed.  If the new
-            name for the attribute was longer than the old name, it was possible
-            that the attribute would grow enough to overwrite another message
-            in the object's header.  QAK - 2007/01/02
-        - Fixed file corruption bug which could write an incorrect number of
-            messages to an object's header under certain circumstances.
-            Generally, the sequence of actions to generate this bug looks
-            like this:
-                - Create an object.
-                - Close the file.
-                - Re-open the file.
-                - Add 2 (or more) attributes to the object.
-                - Close the file.
-                - Re-open the file.
-                - Delete one of the attributes on the object.
-                - Add a smaller attribute to the object.
-                - Delete the smaller atttribute on the object.
-                - Add a larger attribute on the object.
-
-            After this, the number of header messages stored for the object
-            will be off by one.  Other sequences of modifying attributes on an
-            object could also trigger this bug.  If you are opening an
-            object and the bottom few messages of the HDF5 error stack
-            resembles the following, the object has been affected by this bug:
-
-              #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry(): unable to load entry
-                major(08): Meta data cache layer
-                minor(40): Unable to load metadata into cache
-              #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load(): corrupt object header - too few messages
-                major(12): Object header layer
-                minor(40): Unable to load metadata into cache
-
-            Specifically, "corrupt object header" is the best string to search
-            for in the HDF5 error stack output.
-
-            If your files have been affected by this bug, or you are concerned
-            that your files might have been, please contact the HDF Helpdesk
-            at help at hdfgroup.org for a tool to detect and repair files
-            affected by this problem.  QAK - 2006/6/16
-
-        - Fixed various problems with retrieving names of objects, especially
-            with mounted files.  QAK - 2005/12/25
+        - H5Iget_name could not be used with an object identifier returned  
+            by H5Rdereference; the function would not be able to determine 
+            a valid object name.  It has been fixed.  SLU - 2008/1/30 
+        - Changed library's behavior for reading files that might have
+            corrupted object header information from a previous (buggy)
+            version of the library.  By default, the library now rebuilds the
+            correct object header information instead of issuing an error.
+            Previous "strict" file format interpretation can be enabled with
+            the "--enable-strict-format-checks" configure option.
+            QAK - 2008/01/13
+        - Fixed bug in H5Epush() which was clearing the error stack before
+            pushing new error value.  QAK - 2007/08/23
+        - Fixed bug in H5Ewalk() which was not passing back the return value
+            from error stack walking callback.  QAK - 2007/08/23
+
 
     Configuration
     -------------
-        - Changed to default to --disable-shared if parallel is enabled. 
-            AKC - 2007/5/12
-        - Corrected a coding error in configure when it tries to locate the
-          needed MPI and MPI-IO library for the fortran interface. 
-            AKC - 007/5/9.
-        - Changed default fortran compiler to g95 when gcc is used. 
-            AKC - 007/2/17.
-        - Configure can now use any tr command.  No more need for
-            defining the variable TR, nor is it supported.  AKC - 2006/05/20
+     None
+
 
     Performance
     -------------
-        - None
+     None
    
+
     Tools
     -----
-        - Fixed a bug in h5dump regarding the display of named datatypes
-            attributes. PVN - 2007/03/13
-        - Fixed a bug in h5dump regarding the display of group comments. 
-            PVN - 2007/03/13
-        - Fixed a bug in h5dump regarding the display of hardlinks pointing 
-            to the root group.  PVN - 2007/03/13
-        - Fixed a bug in the h5diff percentage option -p.  PVN - 2007/03/05
-        - Fixed a bug in h5dump that caused array indices greater than 2^32-1
-            not to be printed correctly.  PVN - 2007/2/19
+     None
+
 
     Documentation 
     ------------- 
-        - Corrected errors and extended the descriptions in Reference Manual 
-            entries for several functions.  
+     None
+
 
     F90 API
     -------
-        - None
+     None
+
                                 
     C++ API
     -------
-          - Changed
-                  StrType::StrType(const size_t& size);
-            to
-                  StrType::StrType(const int dummy, const size_t& size);
-            because the first one clashed with
-                  StrType::StrType(const hid_t existing_id); - BMR 2007/05/03
-          - Wrappers of H5Rcreate had incorrect prototypes.  Added these
-            overloaded functions:
-                  IdComponent::reference(void* ref, const char* name, DataSpace&
-                          dataspace, H5R_type_t ref_type = H5R_DATASET_REGION)
-                  IdComponent::void reference(void* ref, const char* name)
-                  IdComponent::reference(void* ref, const H5std_string& name)
-            and will remove these incorrect member functions:
-                  DataSet::Reference
-                  DataType::Reference
-                  Group::Reference
-                  H5File::Reference
-          - Added wrappers for H5Rdereference as constructors:
-                  DataSet(IdComponent& obj, void* ref);
-                  Group(IdComponent& obj, void* ref);
-                  DataType(IdComponent& obj, void* ref);
+     None
 
 
 Documentation
 =============
-
     HDF5 documentation can be found in the distributed release source 
     code in the subdirectory doc/html/ (start with index.html) or on the 
-    THG (The HDF Group) ftp server (ftp.hdfgroup.org) in the directory:
+    THG (The HDF Group) FTP server: 
+
+         ftp://ftp.hdfgroup.org/HDF5/docs/
+
+    Online documentation for the current release in the HDF5 Release 1.6.x 
+    series can be found on the THG web site:
 
-         /HDF5/docs/
+         http://hdfgroup.org/HDF5/doc1.6/
 
-    Online documentation for the current release can be found on the THG 
-    web site:
+    A listing of interface changes from release to release can be found
+    in the document "HDF5 Software Changes from Release to Release":
 
-         http://hdfgroup.org/HDF5/doc/
+         http://hdfgroup.org/HDF5/doc1.6/ADGuide/Changes.html
+ 
+    Since the stream I/O driver is not included in this release, the 
+    functions H5Pset_fapl_stream and H5Pget_fapl_stream and the stream 
+    ENUM value H5FD_STREAM have been removed from the documentation.
 
 
 Platforms Tested
 ================
 
-    AIX 5.2 (32/64 bit)           xlc 6.0.0.8
-    (datastar)                    xlC 6.0.0.9
-                                  xlf 8.1.1.7
-                                  mpcc_r 6.0.0.8
-                                  mpxlf_r 8.1.1.7
-
-    AIX 5.3 (32/64 bit)           xlc 7.0.0.0
-    (copper)                      xlC 7.0.
-                                  xlf 9.1.0.3
+    AIX 5.2 (32/64 bit)           xlc 8.0.0.11
+    (datastar)                    xlC 8.0
+                                  xlf 10.01.0000.0002
 
     FreeBSD 6.2 (32- and 64-bit)  gcc  and g++3.4.6
     (duty and liberty)            gcc and g++ 4.2.1
 
-    HP-UX B.11.23                 HP aC++/ANSI C B3910B A.06.02
-    (sirius)                      HP F90 v3.1 (32-bit only)
-                                  HP aC++/ANSI C B3910B A.06.02
-
     IRIX64 6.5                    MIPSpro cc 7.4.4m
     (ucar mop1 64 & n32)          F90 MIPSpro 7.4.4m (64 only)
                                   C++ MIPSpro cc 7.4.4m
@@ -260,36 +171,31 @@ Platforms Tested
     (osage)
 
     Linux 2.6.9-42.0.10.ELsmp #1  gcc (GCC) 3.4.6
-        SMP i686 i386             G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
-    (kagiso)                      PGI C, Fortran, C++ 6.2-5 32-bit 
-                                  icc (ICC) 9.1 
+         SMP i686 i386             G95 (GCC 4.0.3 (g95 0.91!) April 18 2007)
+    (kagiso)                      PGI C, Fortran, C++ 7.0-7 32-bit 
+                                  Intel(R) C Compiler for 32-bit 
+                                      applications, Version 9.1 
                                   Intel(R) C++ Compiler for 32-bit 
                                       applications, Version 9.1
                                   Intel(R) Fortran Compiler for 32-bit 
                                       applications, Version 9.1 
                                   Absoft 32-bit Fortran 95 10.0.4
-                                  MPICH mpich2-1.0.4p1 compiled with  
-                                  gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.91!) 
+                                  MPICH mpich2-1.0.6p1 compiled with  
+                                  gcc 4.2.1 and G95 (GCC 4.0.3 (g95 0.91!) 
 
-    Linux 2.6.16.46-0.12-debug #1 
-        SMP ia64 GNU/Linux        Intel(R) C++ Version 10.0.025
-    (ucar hir1)                   Intel(R) Fortran Itanium(R) Version 10.0.025
+    Linux 2.6.16.46-0.12-debug #1 Intel(R) C++ Version 10.0.025
+        SMP ia64 GNU/Linux        Intel(R) Fortran Itanium(R) Version 10.0.025
+    (ucar hir1)                   
 
     Linux 2.6.16.46-0.14-smp #1   Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037
         SMP x86_64 GNU/Linux      Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031
-    (smirom)                      PGI C, Fortran, C++ Version 6.2-5
+    (smirom)                      PGI C, Fortran, C++ Version 7.0-7
                                          for 64-bit target on x86-64
                                   tested for both 32- and 64-bit binaries
 
-    Linux 2.6.5-7.283-rtgfx Altix 
-        SMP ia64                  Intel(R) C++ Version 9.0
-    (cobalt)                      Intel(R) Fortran Itanium(R) Version 9.0
-                                  SGI MPI
-
-    OSF1 V5.1 (QSC)               Compaq C V6.5-011 
-    (See "Known Problems.")       HP Fortran V5.5A-3548
-                                  Compaq C++ V6.5-036  
-                                  MPIX200_64_r13.4
+    Linux 2.6.5-7.287.3-sn2 #1    Intel(R) C++ Version 9.0
+        Altix SMP ia64            Intel(R) Fortran Itanium(R) Version 9.0
+    (cobalt)                      SGI MPI
 
     SunOS 5.8 32- and 64-bit      Sun WorkShop 6 update 2 C 5.3
     (sol)                         Sun WorkShop 6 update 2 Fortran 95 6.2
@@ -303,9 +209,9 @@ Platforms Tested
     Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
     (tungsten)                    Intel(R) C++ Version 9.0
                                   Intel(R) Fortran Compiler Version 9.0
-                                  PGI C Version 6.0
-                                  PGI C++ Version 6.0
-                                  PGI Fortran Version 6.0
+                                  PGI C Version 6.0-5
+                                  PGI C++ Version 6.0-5
+                                  PGI Fortran Version 6.0-5
                                   gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5)
 
     Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
@@ -313,17 +219,18 @@ Platforms Tested
                                   Intel(R) Fortran Compiler Version 10.0
                                   Open MPI 1.2.2
 
-    IA-64 Linux 2.4.21.SuSE_292.til1
+    IA-64 Linux 2.4.21-309.tg1 #1 SMP
         ia64                      gcc (GCC) 3.2.2
-    (NCSA tg-login)               Intel(R) C++ Version 8.0
-                                  Intel(R) Fortran Compiler Version 8.0
-                                  mpich-gm-1.2.5..10-intel-r2
+    (NCSA tg-login)               Intel(R) C++ Version 8.1
+                                  Intel(R) Fortran Compiler Version 8.1
+                                  mpich-gm-1.2.6..14-intel-r2
 
     Windows XP                    Visual Studio 6.0
-                                  Visual Studio .NET (with Intel Fortran 9.0)
-                                  Visual Studio 2005 (with Intel Fortran 9.0)
+                                  Visual Studio .NET (with Intel Fortran 9.1)
+                                  Visual Studio 2005 (with Intel Fortran 9.1)
                                   cygwin (gcc 3.4.4)
 
+    Windows Vista                 Visual studio 2005
     MAC OS X Intel                Darwin 8.10.1
                                   i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
                                   g95 0.91
@@ -340,62 +247,58 @@ Key:   y   = Tested and supported
 
 Platform                              C        F90  F90      C++  zlib  SZIP
                                       parallel      parallel
-Solaris2.8 32- and 64-bit             n        y    n        y    y     y
-Solaris2.10 32- and 64-bit            n        y    n        y    y     y
+Solaris2.8 32-bit                     n        y    n        y    n     y
+Solaris2.8 64-bit                     n        y    n        n    y     y
+Solaris2.10 32-bit                    n        y    n        y    y     y
+Solaris2.10 64-bit                    n        y    n        n    y     y
 IRIX64_6.5 32-bit                     n        n    n        n    y     y
 IRIX64_6.5 64-bit                     n        y    n        n    y     y
-HPUX11.23-32bit                       n        y    n        y    y     y
-HPUX11.23-64bit                       n        n    n        y    y     y
 WinXP Visual Studio 6.0               n        n    n        y    y     y
 WinXP CYGWIN                          n        n    n        y    y     y
 WinXP 2005                            n        y    n        y    y     y
 WinXP .Net                            n        y    n        y    y     y
+WinVista 2005                         n        n    n        y    y     y
 Mac OS X 10.4.10                      n        y    n        y    y     y
 AIX-5.2 & 5.3 32- and 64-bit          y        y    y        y    y     y
 FreeBSD 6.2 32- and 64-bit            n        n    n        y    y     y
-RedHat Linux 2.4.21              W    n        n    n        y    y     y
-SuSE Linux 2.6.9-42 i686 GNU (1) W    y        y    y        y    y     y
-SuSE Linux 2.6.9-42 i686 Intel   W    n        y    n        y    y     y
-SuSE Linux 2.6.9-42 i686 PGI     W    n        y    n        y    y     y
-SuSE Linux 2.6.16 x86_64 GNU (1) W    y        y    y        y    y     y
-SuSE Linux 2.6.16 x86_64 Intel   W    n        y    n        y    y     y
-SuSE Linux 2.6.16 x86_64 PGI     W    n        y    n        y    y     y
-RHEL 4 Linux 2.6.9 Xeon Lustre   C    y        y    y        y    y     y
-RedHat Linux 2.4 Xeon Lustre     C    n        y    n        y    y     y
+RedHat Linux 2.4.21              W    n        n    n        n    y     n
+RedHat Linux 2.6.9-42 i686 GNU (1) W  y        y    y        y    y     y
+RedHat Linux 2.6.9-42 i686 Intel   W  n        y    n        y    y     n
+RedHat Linux 2.6.9-42 i686 PGI     W  n        y    n        y    y     n
+SuSE Linux 2.6.16 x86_64 GNU (1) W    y        y    n        y    y     y
+SuSE Linux 2.6.16 x86_64 Intel   W    n        y    n        y    y     n
+SuSE Linux 2.6.16 x86_64 PGI     W    n        y    n        y    y     n
+RHEL 4 Linux 2.6.9 Xeon Lustre   C    n        y    n        y    y     y
+RedHat Linux 2.4 Xeon Lustre     C    n        y    n        y    y     n
 SuSE Linux 2.4 ia64              C    y        y    y        y    y     y
-SuSe Linux 2.6.16 SGI Altix ia64      n        y    n        y    y     y
 SuSe Linux 2.6.5 SGI Altix ia64       n        y    n        y    y     y
-OSF1 v5.1                             y        y    y        y    y     n
-
-
-Platform                              Shared        static-  Thread-  STREAM-
-                                      libraries(4)  exec     safe     VFD
-Solaris2.8 32- and 64-bit             y             n        y        y
-Solaris2.10 32- and 64-bit            y             n        y        y
-IRIX64_6.5 32-bit                     y             n        y        y
-IRIX64_6.5 64-bit                     y             n        y        y
-HPUX11.23-32bit                       y (3)         n        n        y
-HPUX11.23-64bit                       y (3)         n        n        y
-WinXP Visual Studio 6.0               y             n        n        n
-WinXP CYGWIN                          y             n        n        n
-WinXP 2005                            y             n        n        n
-WinXP .Net                            y             n        n        n
-Mac OS X 10.4.10                      y             n        n        y
-AIX-5.2 & 5.3 32- and 64-bit          n             n        n        y
-FreeBSD 6.2 32- and 64-bit            y             n        n        y
-RedHat Linux 2.4.21              W    y             n        n        y
-SuSE Linux 2.6.9-42 i686 GNU (1) W    y             n        y        y
-SuSE Linux 2.6.9-42 i686 Intel   W    y             n        n        y
-SuSE Linux 2.6.9-42 i686 PGI     W    n             n        n        y
-SuSE Linux 2.6.16 x86_64 GNU (1) W    y             n        n        y
-SuSE Linux 2.6.16 x86_64 Intel   W    y             n        n        y
-SuSE Linux 2.6.16 x86_64 PGI     W    n             n        n        y
-RHEL 4 Linux 2.6.9 Xeon Lustre   C    y             n        n        y
-RedHat Linux 2.4 Xeon Lustre     C    y             n        n        y
-SuSE Linux 2.4 ia64              C    y             n        n        y
-SuSe Linux 2.6.16 SGI Altix ia64      n             n        n        y
-SuSe Linux 2.6.5 SGI Altix ia64       n             n        n        y
-OSF1 v5.1                             n             n        n        y
+
+
+Platform                              Shared        static-  Thread-  
+                                      libraries(4)  exec     safe     
+Solaris2.8 32- and 64-bit             y             n        y        
+Solaris2.10 32- and 64-bit            y             n        y        
+IRIX64_6.5 32-bit                     y             n        y        
+IRIX64_6.5 64-bit                     y             n        y        
+WinXP Visual Studio 6.0               y             n        n        
+WinXP CYGWIN                          y             n        n        
+WinXP 2005                            y             n        n        
+WinXP .Net                            y             n        n        
+WinVista 2005                         y             n        n        
+Mac OS X 10.4.10                      y             n        n        
+AIX-5.2 & 5.3 32- and 64-bit          n             n        n        
+FreeBSD 6.2 32- and 64-bit            y             n        n        
+RedHat Linux 2.4.21              W    y             n        n        
+SuSE Linux 2.6.9-42 i686 GNU (1) W    y             n        y        
+SuSE Linux 2.6.9-42 i686 Intel   W    y             n        n        
+SuSE Linux 2.6.9-42 i686 PGI     W    n             n        n        
+SuSE Linux 2.6.16 x86_64 GNU (1) W    y             n        y        
+SuSE Linux 2.6.16 x86_64 Intel   W    y             n        n        
+SuSE Linux 2.6.16 x86_64 PGI     W    n             n        n        
+RHEL 4 Linux 2.6.9 Xeon Lustre   C    y             n        n        
+RedHat Linux 2.4 Xeon Lustre     C    y             n        n        
+SuSE Linux 2.4 ia64              C    y             n        n        
+SuSe Linux 2.6.5 SGI Altix ia64       n             n        n        
 
 Compiler versions for each platform are listed in the "Platforms Tested" 
 table found elsewhere in this file (RELEASE.txt).  Unless otherwise noted, 
@@ -403,34 +306,52 @@ compilers used are the system compilers.
 
 Footnotes:
 (1) Fortran compiled with g95.
-(2) In most cases, shared libraries are provided only for the C library, 
-    except on Windows where they are provided for C, C++, and Fortran.
-(3) C++ works only with static libraries.
 
 
 Known Problems
 ==============
+* We discovered two problems when running collective IO parallel HDF5 tests
+  with chunking storage with the ChaMPIon MPI compiler on tungsten, a Linux
+  cluster at NCSA.
+  Under some complex selection cases, 
+  1) MPI_Get_element returns the wrong value.
+  2) MPI_Type_struct also generates the wrong derived datatype and corrupt 
+     data may be generated.
+  This only happens when turning on collective IO with chunking storage
+  with some complex selections. We haven't found these problems on other 
+  MPI-IO compilers. If you encounter these problems, you may use Independent 
+  IO instead.
+
+  To avoid this problem, change the following line in your code:
+  H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
+
+  to
+  H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
+ 
+  KY - 2007/08/24
+
 * QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It
   does not include the -lmpi properly.  This will be fixed in the next
   release.  AKC - 2007/08/07.
 
 * On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared
-  library, especially for h5repacktst and h52gifgentst, the following (or
+  library, especially for h5repacktst and h52gifgentst, the following (or a
   similar) error message may appear:
   "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname
   'libh5test.so.1' under any of the filenames .......(bunch of directories)
   "
   And the testing will fail. 
+
   We believe this is a libtool problem. One way to get rid of this is to
   add the paths of libh5test.so.1 and libh5.so.1 to the shared library path.
 
   For 32-bit:
   You may do this, under csh:
-  setenv LD_LIBRARYN32_PATH .......(existing pathes):[full path of HDF5
+  setenv LD_LIBRARYN32_PATH .......(existing paths):[full path of HDF5
   directory/test/.libs]:[full path of HDF5 directory/src/.libs]
 
   For 64-bit:
-  setenv LD_LIBRARY64_PATH ......(existing pathes):[full path of HDF5
+  setenv LD_LIBRARY64_PATH ......(existing paths):[full path of HDF5
   directory/test/.libs]:[full path of HDF5 directory/src/.libs]
 
   NOTE: This problem ONLY affects the testing of the HDF5 library when you 
@@ -445,7 +366,7 @@ Known Problems
   calloc".  AKC - 2007/7/12.
 
 * The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has
-  an optimization error in the datax types conversion code.  Before running
+  an optimization error in the datatypes conversion code.  Before running
   configure, edit the file config/intel-flags by changing the setting of
   PROD_CFLAGS from -O3 to -O0.  Then run configure.  AKC - 2005/11/10.
 
@@ -460,15 +381,15 @@ Known Problems
   Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the 
   dataset creation property list to avoid the problem.  EIP - 2005/09/09
 
-* The dataset created or rewritten with the v1.6.3 library or after can't 
+* A dataset created or rewritten with the v1.6.3 library or after can't 
   be read with the v1.6.2 library or before when Fletcher32 EDC (a filter) is 
   enabled.  There was a bug in the calculating code of the Fletcher32 
   checksum in the library before v1.6.3.  The checksum value wasn't consistent 
   between big-endian and little-endian systems.  This bug was fixed in 
   Release 1.6.3.  However, after fixing the bug, the checksum value is no 
-  longer the same as before on little-endian system.  The library release 
-  after 1.6.4 can still read the dataset created or rewritten with the library
-  of v1.6.2 or before.  SLU - 2005/7/8
+  longer the same as before on little-endian system.  HDF5 library releases 
+  after 1.6.4 can still read datasets created or rewritten with an HDF5 
+  library of v1.6.2 or before.  SLU - 2005/7/8
 
 * For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
   processor, there's a bug in the compiler for optimization(-O2).  The library
@@ -492,24 +413,18 @@ Known Problems
   and run the tests again.
 
   The tests may also fail with messages like "The socket name is already
-  in use".  HDF5 does not use sockets (except for stream-VFD).  This is
-  due to problems of the poe command trying to set up the debug socket.
-  Check whether there are many old /tmp/s.pedb.* files staying around.  These 
-  are sockets used by the poe command and left behind due to failed commands.
-  Ask your system administrator to clean them out.  Lastly, request IBM
-  to provide a means to run poe without the debug socket.
+  in use".  HDF5 does not use sockets.  This is due to problems of the 
+  poe command trying to set up the debug socket.  Check whether there are 
+  many old /tmp/s.pedb.* files staying around.  These are sockets used by 
+  the poe command and left behind due to failed commands.  Ask your system 
+  administrator to clean them out.  Lastly, request IBM to provide a means 
+  to run poe without the debug socket.
 
 * The h5dump tests may fail to match the expected output on some platforms
   (e.g. parallel jobs, Windows) where the error messages directed to
   "stderr" do not appear in the "right order" with output from stdout.
   This is not an error.
 
-* The stream-vfd test uses ip port 10007 for testing. If another
-  application is already using that port address, the test will hang
-  indefinitely and has to be terminated by the kill command. To try the
-  test again, change the port address in test/stream_test.c to one not
-  being used in the host.
-
 * The --enable-static-exec configure flag fails to compile for Solaris
   platforms. This is due to the fact that not all of the system
   libraries on Solaris are available in a static format.
@@ -524,9 +439,7 @@ Known Problems
   It is suggested that you don't use this option on these platforms
   during configuration.
 
-* The Stream VFD is not supported under Windows.
-
-* Use the --disable-shared configure flag if building with Absoft Fortran
+* Use the --disable-shared configure flag if building with an Absoft Fortran
   compiler.
 
 * Information about building with PGI and Intel compilers is available in
diff --git a/src/Dependencies b/src/Dependencies
index d9c53dc..65bdde1 100644
--- a/src/Dependencies
+++ b/src/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -19,7 +19,7 @@ H5.lo: \
    $(srcdir)/H5.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Bprivate.h \
@@ -53,19 +53,19 @@ H5.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Ipkg.h \
    $(srcdir)/H5Iprivate.h \
-   $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
-   $(srcdir)/H5Sprivate.h
+   $(srcdir)/H5MMprivate.h
 H5A.lo: \
    $(srcdir)/H5A.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Apkg.h \
@@ -89,12 +89,7 @@ H5A.lo: \
    $(srcdir)/H5RSprivate.h \
    $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Spublic.h \
-   $(srcdir)/H5Dprivate.h \
    $(srcdir)/H5Dpublic.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
    $(srcdir)/H5Oprivate.h \
    $(srcdir)/H5Tprivate.h \
    $(srcdir)/H5Tpublic.h \
@@ -105,6 +100,11 @@ H5A.lo: \
    $(srcdir)/H5Zpublic.h \
    $(srcdir)/H5Pprivate.h \
    $(srcdir)/H5Ppublic.h \
+   $(srcdir)/H5Dprivate.h \
+   $(srcdir)/H5FDprivate.h \
+   $(srcdir)/H5FDmpi.h \
+   $(srcdir)/H5FDmpio.h \
+   $(srcdir)/H5FDmpiposix.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Iprivate.h \
@@ -113,7 +113,7 @@ H5AC.lo: \
    $(srcdir)/H5AC.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5ACprivate.h \
@@ -147,19 +147,20 @@ H5AC.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Fpkg.h \
    $(srcdir)/H5FOprivate.h \
    $(srcdir)/H5SLprivate.h \
-   $(srcdir)/H5Iprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h
+   $(srcdir)/H5Iprivate.h
 H5B.lo: \
    $(srcdir)/H5B.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5ACprivate.h \
@@ -194,6 +195,9 @@ H5B.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Fpkg.h \
@@ -201,14 +205,12 @@ H5B.lo: \
    $(srcdir)/H5SLprivate.h \
    $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5MFprivate.h \
-   $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h
+   $(srcdir)/H5MMprivate.h
 H5Bcache.lo: \
    $(srcdir)/H5Bcache.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Bpkg.h \
@@ -230,7 +232,7 @@ H5C.lo: \
    $(srcdir)/H5C.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Cprivate.h \
@@ -264,20 +266,21 @@ H5C.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Fpkg.h \
    $(srcdir)/H5FOprivate.h \
    $(srcdir)/H5SLprivate.h \
    $(srcdir)/H5Iprivate.h \
-   $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h
+   $(srcdir)/H5MMprivate.h
 H5D.lo: \
    $(srcdir)/H5D.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dpkg.h \
@@ -328,7 +331,7 @@ H5Dcontig.lo: \
    $(srcdir)/H5Dcontig.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dpkg.h \
@@ -368,13 +371,14 @@ H5Dcontig.lo: \
    $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
+   $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5MFprivate.h \
    $(srcdir)/H5Vprivate.h
 H5Dcompact.lo: \
    $(srcdir)/H5Dcompact.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dpkg.h \
@@ -414,12 +418,13 @@ H5Dcompact.lo: \
    $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
+   $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5Vprivate.h
 H5Defl.lo: \
    $(srcdir)/H5Defl.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dpkg.h \
@@ -463,7 +468,7 @@ H5Dio.lo: \
    $(srcdir)/H5Dio.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dpkg.h \
@@ -511,7 +516,7 @@ H5Distore.lo: \
    $(srcdir)/H5Distore.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Bpkg.h \
@@ -560,7 +565,7 @@ H5Dmpio.lo: \
    $(srcdir)/H5Dmpio.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dpkg.h \
@@ -604,7 +609,7 @@ H5Dselect.lo: \
    $(srcdir)/H5Dselect.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dpkg.h \
@@ -648,7 +653,7 @@ H5Dtest.lo: \
    $(srcdir)/H5Dtest.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dpkg.h \
@@ -693,7 +698,7 @@ H5E.lo: \
    $(srcdir)/H5E.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Iprivate.h \
@@ -706,7 +711,7 @@ H5F.lo: \
    $(srcdir)/H5F.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Aprivate.h \
@@ -742,6 +747,9 @@ H5F.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Fpkg.h \
@@ -749,8 +757,6 @@ H5F.lo: \
    $(srcdir)/H5SLprivate.h \
    $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5FDcore.h \
    $(srcdir)/H5FDfamily.h \
    $(srcdir)/H5FDgass.h \
@@ -758,13 +764,12 @@ H5F.lo: \
    $(srcdir)/H5FDmulti.h \
    $(srcdir)/H5FDsec2.h \
    $(srcdir)/H5FDsrb.h \
-   $(srcdir)/H5FDstdio.h \
-   $(srcdir)/H5FDstream.h
+   $(srcdir)/H5FDstdio.h
 H5Fdbg.lo: \
    $(srcdir)/H5Fdbg.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -805,7 +810,7 @@ H5Fmount.lo: \
    $(srcdir)/H5Fmount.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -847,7 +852,7 @@ H5Fsfile.lo: \
    $(srcdir)/H5Fsfile.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -879,7 +884,7 @@ H5Fsuper.lo: \
    $(srcdir)/H5Fsuper.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -924,7 +929,7 @@ H5FD.lo: \
    $(srcdir)/H5FD.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -958,6 +963,9 @@ H5FD.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Fpkg.h \
@@ -968,19 +976,16 @@ H5FD.lo: \
    $(srcdir)/H5FDgass.h \
    $(srcdir)/H5FDlog.h \
    $(srcdir)/H5FDmulti.h \
-   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5FDsec2.h \
    $(srcdir)/H5FDsrb.h \
    $(srcdir)/H5FDstdio.h \
-   $(srcdir)/H5FDstream.h \
    $(srcdir)/H5Iprivate.h \
-   $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Pprivate.h
+   $(srcdir)/H5MMprivate.h
 H5FDcore.lo: \
    $(srcdir)/H5FDcore.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1024,7 +1029,7 @@ H5FDfamily.lo: \
    $(srcdir)/H5FDfamily.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1068,7 +1073,7 @@ H5FDgass.lo: \
    $(srcdir)/H5FDgass.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1112,7 +1117,7 @@ H5FDlog.lo: \
    $(srcdir)/H5FDlog.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1156,7 +1161,7 @@ H5FDmpi.lo: \
    $(srcdir)/H5FDmpi.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1197,7 +1202,7 @@ H5FDmpio.lo: \
    $(srcdir)/H5FDmpio.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5ACprivate.h \
@@ -1231,17 +1236,18 @@ H5FDmpio.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Iprivate.h \
-   $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h
+   $(srcdir)/H5MMprivate.h
 H5FDmpiposix.lo: \
    $(srcdir)/H5FDmpiposix.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5ACprivate.h \
@@ -1284,7 +1290,7 @@ H5FDmulti.lo: \
    $(srcdir)/H5FDmulti.c \
    $(srcdir)/hdf5.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5Apublic.h \
    $(srcdir)/H5Ipublic.h \
@@ -1314,13 +1320,12 @@ H5FDmulti.lo: \
    $(srcdir)/H5FDmulti.h \
    $(srcdir)/H5FDsec2.h \
    $(srcdir)/H5FDsrb.h \
-   $(srcdir)/H5FDstdio.h \
-   $(srcdir)/H5FDstream.h
+   $(srcdir)/H5FDstdio.h
 H5FDsec2.lo: \
    $(srcdir)/H5FDsec2.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1364,7 +1369,7 @@ H5FDsrb.lo: \
    $(srcdir)/H5FDsrb.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1408,7 +1413,7 @@ H5FDstdio.lo: \
    $(srcdir)/H5FDstdio.c \
    $(srcdir)/hdf5.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5Apublic.h \
    $(srcdir)/H5Ipublic.h \
@@ -1438,57 +1443,12 @@ H5FDstdio.lo: \
    $(srcdir)/H5FDmulti.h \
    $(srcdir)/H5FDsec2.h \
    $(srcdir)/H5FDsrb.h \
-   $(srcdir)/H5FDstdio.h \
-   $(srcdir)/H5FDstream.h
-H5FDstream.lo: \
-   $(srcdir)/H5FDstream.c \
-   $(srcdir)/H5private.h \
-   $(srcdir)/H5public.h \
-   H5pubconf.h \
-   $(srcdir)/H5api_adpt.h \
-   $(srcdir)/H5MPprivate.h \
-   $(srcdir)/H5Eprivate.h \
-   $(srcdir)/H5Epublic.h \
-   $(srcdir)/H5Ipublic.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDpublic.h \
-   $(srcdir)/H5Fpublic.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
-   $(srcdir)/H5FDstream.h \
-   $(srcdir)/H5Iprivate.h \
-   $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5MMpublic.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
-   $(srcdir)/H5Dpublic.h \
-   $(srcdir)/H5Zpublic.h \
-   $(srcdir)/H5Oprivate.h \
-   $(srcdir)/H5Opublic.h \
-   $(srcdir)/H5Spublic.h \
-   $(srcdir)/H5Tprivate.h \
-   $(srcdir)/H5Tpublic.h \
-   $(srcdir)/H5Gprivate.h \
-   $(srcdir)/H5Gpublic.h \
-   $(srcdir)/H5Bprivate.h \
-   $(srcdir)/H5Bpublic.h \
-   $(srcdir)/H5ACprivate.h \
-   $(srcdir)/H5ACpublic.h \
-   $(srcdir)/H5Fprivate.h \
-   $(srcdir)/H5Cprivate.h \
-   $(srcdir)/H5Cpublic.h \
-   $(srcdir)/H5FLprivate.h \
-   $(srcdir)/H5RCprivate.h \
-   $(srcdir)/H5RSprivate.h \
-   $(srcdir)/H5Rprivate.h \
-   $(srcdir)/H5Rpublic.h \
-   $(srcdir)/H5Zprivate.h
+   $(srcdir)/H5FDstdio.h
 H5FL.lo: \
    $(srcdir)/H5FL.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1502,7 +1462,7 @@ H5FO.lo: \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5Ipublic.h \
    $(srcdir)/H5private.h \
@@ -1539,7 +1499,7 @@ H5FS.lo: \
    $(srcdir)/H5FS.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5FSprivate.h
@@ -1547,7 +1507,7 @@ H5G.lo: \
    $(srcdir)/H5G.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Aprivate.h \
@@ -1583,6 +1543,9 @@ H5G.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Fpkg.h \
@@ -1597,7 +1560,7 @@ H5Gent.lo: \
    $(srcdir)/H5Gent.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1638,7 +1601,7 @@ H5Gname.lo: \
    $(srcdir)/H5Gname.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -1672,6 +1635,9 @@ H5Gname.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Fpkg.h \
@@ -1683,7 +1649,7 @@ H5Gnode.lo: \
    $(srcdir)/H5Gnode.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1730,7 +1696,7 @@ H5Gstab.lo: \
    $(srcdir)/H5Gstab.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1772,7 +1738,7 @@ H5Gtest.lo: \
    $(srcdir)/H5Gtest.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -1806,6 +1772,9 @@ H5Gtest.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Gpkg.h \
@@ -1816,7 +1785,7 @@ H5Gtraverse.lo: \
    $(srcdir)/H5Gtraverse.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1858,7 +1827,7 @@ H5HG.lo: \
    $(srcdir)/H5HG.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5ACprivate.h \
@@ -1896,7 +1865,7 @@ H5HGdbg.lo: \
    $(srcdir)/H5HGdbg.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5ACprivate.h \
@@ -1917,7 +1886,7 @@ H5HL.lo: \
    $(srcdir)/H5HL.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5ACprivate.h \
@@ -1953,7 +1922,7 @@ H5HLdbg.lo: \
    $(srcdir)/H5HLdbg.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5ACprivate.h \
@@ -1976,7 +1945,7 @@ H5HP.lo: \
    $(srcdir)/H5HP.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -1988,7 +1957,7 @@ H5I.lo: \
    $(srcdir)/H5I.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2017,7 +1986,7 @@ H5MF.lo: \
    $(srcdir)/H5MF.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2050,7 +2019,7 @@ H5MM.lo: \
    $(srcdir)/H5MM.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2062,7 +2031,7 @@ H5O.lo: \
    $(srcdir)/H5O.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5ACprivate.h \
@@ -2110,7 +2079,7 @@ H5Oattr.lo: \
    $(srcdir)/H5Oattr.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Apkg.h \
@@ -2134,12 +2103,7 @@ H5Oattr.lo: \
    $(srcdir)/H5RSprivate.h \
    $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Spublic.h \
-   $(srcdir)/H5Dprivate.h \
    $(srcdir)/H5Dpublic.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
    $(srcdir)/H5Oprivate.h \
    $(srcdir)/H5Tprivate.h \
    $(srcdir)/H5Tpublic.h \
@@ -2159,7 +2123,7 @@ H5Obogus.lo: \
    $(srcdir)/H5Obogus.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2196,7 +2160,7 @@ H5Ocache.lo: \
    $(srcdir)/H5Ocache.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2237,7 +2201,7 @@ H5Ocont.lo: \
    $(srcdir)/H5Ocont.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2278,7 +2242,7 @@ H5Odtype.lo: \
    $(srcdir)/H5Odtype.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2316,7 +2280,7 @@ H5Oefl.lo: \
    $(srcdir)/H5Oefl.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2355,23 +2319,24 @@ H5Ofill.lo: \
    $(srcdir)/H5Ofill.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
-   $(srcdir)/H5Eprivate.h \
-   $(srcdir)/H5Epublic.h \
+   $(srcdir)/H5Dprivate.h \
+   $(srcdir)/H5Dpublic.h \
    $(srcdir)/H5Ipublic.h \
-   $(srcdir)/H5FLprivate.h \
-   $(srcdir)/H5Iprivate.h \
-   $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5MMpublic.h \
-   $(srcdir)/H5Opkg.h \
+   $(srcdir)/H5FDprivate.h \
+   $(srcdir)/H5FDpublic.h \
+   $(srcdir)/H5Fpublic.h \
+   $(srcdir)/H5FDmpi.h \
+   $(srcdir)/H5FDmpio.h \
+   $(srcdir)/H5FDmpiposix.h \
    $(srcdir)/H5Oprivate.h \
    $(srcdir)/H5Opublic.h \
-   $(srcdir)/H5Dpublic.h \
    $(srcdir)/H5Spublic.h \
    $(srcdir)/H5Tprivate.h \
    $(srcdir)/H5Tpublic.h \
+   $(srcdir)/H5MMpublic.h \
    $(srcdir)/H5Gprivate.h \
    $(srcdir)/H5Gpublic.h \
    $(srcdir)/H5Bprivate.h \
@@ -2379,23 +2344,28 @@ H5Ofill.lo: \
    $(srcdir)/H5ACprivate.h \
    $(srcdir)/H5ACpublic.h \
    $(srcdir)/H5Fprivate.h \
-   $(srcdir)/H5Fpublic.h \
-   $(srcdir)/H5FDpublic.h \
    $(srcdir)/H5Cprivate.h \
    $(srcdir)/H5Cpublic.h \
+   $(srcdir)/H5FLprivate.h \
    $(srcdir)/H5RCprivate.h \
    $(srcdir)/H5RSprivate.h \
    $(srcdir)/H5Rprivate.h \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h
+   $(srcdir)/H5Ppublic.h \
+   $(srcdir)/H5Eprivate.h \
+   $(srcdir)/H5Epublic.h \
+   $(srcdir)/H5Iprivate.h \
+   $(srcdir)/H5MMprivate.h \
+   $(srcdir)/H5Opkg.h
 H5Olayout.lo: \
    $(srcdir)/H5Olayout.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -2429,6 +2399,9 @@ H5Olayout.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5MFprivate.h \
@@ -2438,7 +2411,7 @@ H5Omtime.lo: \
    $(srcdir)/H5Omtime.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2475,7 +2448,7 @@ H5Oname.lo: \
    $(srcdir)/H5Oname.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2512,7 +2485,7 @@ H5Onull.lo: \
    $(srcdir)/H5Onull.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Opkg.h \
@@ -2546,7 +2519,7 @@ H5Opline.lo: \
    $(srcdir)/H5Opline.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2583,7 +2556,7 @@ H5Osdspace.lo: \
    $(srcdir)/H5Osdspace.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2618,18 +2591,13 @@ H5Osdspace.lo: \
    $(srcdir)/H5Zpublic.h \
    $(srcdir)/H5Spkg.h \
    $(srcdir)/H5Sprivate.h \
-   $(srcdir)/H5Dprivate.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
    $(srcdir)/H5Pprivate.h \
    $(srcdir)/H5Ppublic.h
 H5Oshared.lo: \
    $(srcdir)/H5Oshared.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2669,7 +2637,7 @@ H5Ostab.lo: \
    $(srcdir)/H5Ostab.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2706,7 +2674,7 @@ H5P.lo: \
    $(srcdir)/H5P.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -2740,19 +2708,20 @@ H5P.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5MMprivate.h \
    $(srcdir)/H5Ppkg.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5SLprivate.h
 H5Pdcpl.lo: \
    $(srcdir)/H5Pdcpl.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -2786,19 +2755,20 @@ H5Pdcpl.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5MMprivate.h \
    $(srcdir)/H5Ppkg.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5SLprivate.h
 H5Pdxpl.lo: \
    $(srcdir)/H5Pdxpl.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -2832,17 +2802,18 @@ H5Pdxpl.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Ppkg.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5SLprivate.h
 H5Pfapl.lo: \
    $(srcdir)/H5Pfapl.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -2876,19 +2847,20 @@ H5Pfapl.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5Ppkg.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5SLprivate.h \
    $(srcdir)/H5FDsec2.h
 H5Pfcpl.lo: \
    $(srcdir)/H5Pfcpl.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Bprivate.h \
@@ -2927,7 +2899,7 @@ H5Ptest.lo: \
    $(srcdir)/H5Ptest.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -2967,7 +2939,7 @@ H5R.lo: \
    $(srcdir)/H5R.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Iprivate.h \
@@ -3002,6 +2974,9 @@ H5R.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Fpkg.h \
@@ -3009,16 +2984,13 @@ H5R.lo: \
    $(srcdir)/H5SLprivate.h \
    $(srcdir)/H5HGprivate.h \
    $(srcdir)/H5HGpublic.h \
-   $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Sprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h
+   $(srcdir)/H5MMprivate.h
 H5RC.lo: \
    $(srcdir)/H5RC.c \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5Ipublic.h \
    $(srcdir)/H5private.h \
@@ -3030,7 +3002,7 @@ H5RS.lo: \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5Ipublic.h \
    $(srcdir)/H5private.h \
@@ -3041,7 +3013,7 @@ H5S.lo: \
    $(srcdir)/H5S.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3076,18 +3048,13 @@ H5S.lo: \
    $(srcdir)/H5Zpublic.h \
    $(srcdir)/H5Spkg.h \
    $(srcdir)/H5Sprivate.h \
-   $(srcdir)/H5Dprivate.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
    $(srcdir)/H5Pprivate.h \
    $(srcdir)/H5Ppublic.h
 H5Sall.lo: \
    $(srcdir)/H5Sall.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3097,31 +3064,26 @@ H5Sall.lo: \
    $(srcdir)/H5Spkg.h \
    $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Spublic.h \
-   $(srcdir)/H5Dprivate.h \
    $(srcdir)/H5Dpublic.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDpublic.h \
+   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Fpublic.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
-   $(srcdir)/H5Oprivate.h \
-   $(srcdir)/H5Opublic.h \
-   $(srcdir)/H5Tprivate.h \
-   $(srcdir)/H5Tpublic.h \
-   $(srcdir)/H5MMpublic.h \
+   $(srcdir)/H5FDpublic.h \
    $(srcdir)/H5Gprivate.h \
    $(srcdir)/H5Gpublic.h \
+   $(srcdir)/H5Opublic.h \
    $(srcdir)/H5Bprivate.h \
    $(srcdir)/H5Bpublic.h \
    $(srcdir)/H5ACprivate.h \
    $(srcdir)/H5ACpublic.h \
-   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Cprivate.h \
    $(srcdir)/H5Cpublic.h \
    $(srcdir)/H5FLprivate.h \
    $(srcdir)/H5RCprivate.h \
    $(srcdir)/H5RSprivate.h \
+   $(srcdir)/H5Oprivate.h \
+   $(srcdir)/H5Tprivate.h \
+   $(srcdir)/H5Tpublic.h \
+   $(srcdir)/H5MMpublic.h \
    $(srcdir)/H5Rprivate.h \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
@@ -3133,7 +3095,7 @@ H5Shyper.lo: \
    $(srcdir)/H5Shyper.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3144,30 +3106,25 @@ H5Shyper.lo: \
    $(srcdir)/H5Spkg.h \
    $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Spublic.h \
-   $(srcdir)/H5Dprivate.h \
    $(srcdir)/H5Dpublic.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDpublic.h \
+   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Fpublic.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
-   $(srcdir)/H5Oprivate.h \
-   $(srcdir)/H5Opublic.h \
-   $(srcdir)/H5Tprivate.h \
-   $(srcdir)/H5Tpublic.h \
-   $(srcdir)/H5MMpublic.h \
+   $(srcdir)/H5FDpublic.h \
    $(srcdir)/H5Gprivate.h \
    $(srcdir)/H5Gpublic.h \
+   $(srcdir)/H5Opublic.h \
    $(srcdir)/H5Bprivate.h \
    $(srcdir)/H5Bpublic.h \
    $(srcdir)/H5ACprivate.h \
    $(srcdir)/H5ACpublic.h \
-   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Cprivate.h \
    $(srcdir)/H5Cpublic.h \
    $(srcdir)/H5RCprivate.h \
    $(srcdir)/H5RSprivate.h \
+   $(srcdir)/H5Oprivate.h \
+   $(srcdir)/H5Tprivate.h \
+   $(srcdir)/H5Tpublic.h \
+   $(srcdir)/H5MMpublic.h \
    $(srcdir)/H5Rprivate.h \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
@@ -3179,7 +3136,7 @@ H5Smpio.lo: \
    $(srcdir)/H5Smpio.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -3213,18 +3170,18 @@ H5Smpio.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Iprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
-   $(srcdir)/H5Spkg.h \
-   $(srcdir)/H5Sprivate.h
+   $(srcdir)/H5Spkg.h
 H5Snone.lo: \
    $(srcdir)/H5Snone.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3234,43 +3191,43 @@ H5Snone.lo: \
    $(srcdir)/H5Spkg.h \
    $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Spublic.h \
-   $(srcdir)/H5Dprivate.h \
    $(srcdir)/H5Dpublic.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDpublic.h \
+   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Fpublic.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
-   $(srcdir)/H5Oprivate.h \
-   $(srcdir)/H5Opublic.h \
-   $(srcdir)/H5Tprivate.h \
-   $(srcdir)/H5Tpublic.h \
-   $(srcdir)/H5MMpublic.h \
+   $(srcdir)/H5FDpublic.h \
    $(srcdir)/H5Gprivate.h \
    $(srcdir)/H5Gpublic.h \
+   $(srcdir)/H5Opublic.h \
    $(srcdir)/H5Bprivate.h \
    $(srcdir)/H5Bpublic.h \
    $(srcdir)/H5ACprivate.h \
    $(srcdir)/H5ACpublic.h \
-   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Cprivate.h \
    $(srcdir)/H5Cpublic.h \
    $(srcdir)/H5FLprivate.h \
    $(srcdir)/H5RCprivate.h \
    $(srcdir)/H5RSprivate.h \
+   $(srcdir)/H5Oprivate.h \
+   $(srcdir)/H5Tprivate.h \
+   $(srcdir)/H5Tpublic.h \
+   $(srcdir)/H5MMpublic.h \
    $(srcdir)/H5Rprivate.h \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
    $(srcdir)/H5Pprivate.h \
    $(srcdir)/H5Ppublic.h \
-   $(srcdir)/H5Vprivate.h
+   $(srcdir)/H5Vprivate.h \
+   $(srcdir)/H5Dprivate.h \
+   $(srcdir)/H5FDprivate.h \
+   $(srcdir)/H5FDmpi.h \
+   $(srcdir)/H5FDmpio.h \
+   $(srcdir)/H5FDmpiposix.h
 H5Spoint.lo: \
    $(srcdir)/H5Spoint.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3283,29 +3240,24 @@ H5Spoint.lo: \
    $(srcdir)/H5Spkg.h \
    $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Spublic.h \
-   $(srcdir)/H5Dprivate.h \
    $(srcdir)/H5Dpublic.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDpublic.h \
+   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Fpublic.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
-   $(srcdir)/H5Oprivate.h \
-   $(srcdir)/H5Opublic.h \
-   $(srcdir)/H5Tprivate.h \
-   $(srcdir)/H5Tpublic.h \
+   $(srcdir)/H5FDpublic.h \
    $(srcdir)/H5Gprivate.h \
    $(srcdir)/H5Gpublic.h \
+   $(srcdir)/H5Opublic.h \
    $(srcdir)/H5Bprivate.h \
    $(srcdir)/H5Bpublic.h \
    $(srcdir)/H5ACprivate.h \
    $(srcdir)/H5ACpublic.h \
-   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Cprivate.h \
    $(srcdir)/H5Cpublic.h \
    $(srcdir)/H5RCprivate.h \
    $(srcdir)/H5RSprivate.h \
+   $(srcdir)/H5Oprivate.h \
+   $(srcdir)/H5Tprivate.h \
+   $(srcdir)/H5Tpublic.h \
    $(srcdir)/H5Rprivate.h \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
@@ -3317,19 +3269,12 @@ H5Sselect.lo: \
    $(srcdir)/H5Sselect.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
-   $(srcdir)/H5Eprivate.h \
-   $(srcdir)/H5Epublic.h \
-   $(srcdir)/H5Ipublic.h \
-   $(srcdir)/H5FLprivate.h \
-   $(srcdir)/H5Iprivate.h \
-   $(srcdir)/H5Spkg.h \
-   $(srcdir)/H5Sprivate.h \
-   $(srcdir)/H5Spublic.h \
    $(srcdir)/H5Dprivate.h \
    $(srcdir)/H5Dpublic.h \
+   $(srcdir)/H5Ipublic.h \
    $(srcdir)/H5FDprivate.h \
    $(srcdir)/H5FDpublic.h \
    $(srcdir)/H5Fpublic.h \
@@ -3338,6 +3283,7 @@ H5Sselect.lo: \
    $(srcdir)/H5FDmpiposix.h \
    $(srcdir)/H5Oprivate.h \
    $(srcdir)/H5Opublic.h \
+   $(srcdir)/H5Spublic.h \
    $(srcdir)/H5Tprivate.h \
    $(srcdir)/H5Tpublic.h \
    $(srcdir)/H5MMpublic.h \
@@ -3350,20 +3296,26 @@ H5Sselect.lo: \
    $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Cprivate.h \
    $(srcdir)/H5Cpublic.h \
+   $(srcdir)/H5FLprivate.h \
    $(srcdir)/H5RCprivate.h \
    $(srcdir)/H5RSprivate.h \
    $(srcdir)/H5Rprivate.h \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Pprivate.h \
    $(srcdir)/H5Ppublic.h \
+   $(srcdir)/H5Eprivate.h \
+   $(srcdir)/H5Epublic.h \
+   $(srcdir)/H5Iprivate.h \
+   $(srcdir)/H5Spkg.h \
    $(srcdir)/H5Vprivate.h
 H5Stest.lo: \
    $(srcdir)/H5Stest.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3373,31 +3325,26 @@ H5Stest.lo: \
    $(srcdir)/H5Spkg.h \
    $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Spublic.h \
-   $(srcdir)/H5Dprivate.h \
    $(srcdir)/H5Dpublic.h \
-   $(srcdir)/H5FDprivate.h \
-   $(srcdir)/H5FDpublic.h \
+   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Fpublic.h \
-   $(srcdir)/H5FDmpi.h \
-   $(srcdir)/H5FDmpio.h \
-   $(srcdir)/H5FDmpiposix.h \
-   $(srcdir)/H5Oprivate.h \
-   $(srcdir)/H5Opublic.h \
-   $(srcdir)/H5Tprivate.h \
-   $(srcdir)/H5Tpublic.h \
-   $(srcdir)/H5MMpublic.h \
+   $(srcdir)/H5FDpublic.h \
    $(srcdir)/H5Gprivate.h \
    $(srcdir)/H5Gpublic.h \
+   $(srcdir)/H5Opublic.h \
    $(srcdir)/H5Bprivate.h \
    $(srcdir)/H5Bpublic.h \
    $(srcdir)/H5ACprivate.h \
    $(srcdir)/H5ACpublic.h \
-   $(srcdir)/H5Fprivate.h \
    $(srcdir)/H5Cprivate.h \
    $(srcdir)/H5Cpublic.h \
    $(srcdir)/H5FLprivate.h \
    $(srcdir)/H5RCprivate.h \
    $(srcdir)/H5RSprivate.h \
+   $(srcdir)/H5Oprivate.h \
+   $(srcdir)/H5Tprivate.h \
+   $(srcdir)/H5Tpublic.h \
+   $(srcdir)/H5MMpublic.h \
    $(srcdir)/H5Rprivate.h \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
@@ -3408,7 +3355,7 @@ H5SL.lo: \
    $(srcdir)/H5SL.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3421,7 +3368,7 @@ H5ST.lo: \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5Ipublic.h \
    $(srcdir)/H5private.h \
@@ -3432,7 +3379,7 @@ H5T.lo: \
    $(srcdir)/H5T.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -3466,20 +3413,21 @@ H5T.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5FOprivate.h \
    $(srcdir)/H5SLprivate.h \
    $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Tpkg.h
 H5Tarray.lo: \
    $(srcdir)/H5Tarray.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3512,7 +3460,7 @@ H5Tbit.lo: \
    $(srcdir)/H5Tbit.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3545,7 +3493,7 @@ H5Tcommit.lo: \
    $(srcdir)/H5Tcommit.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3584,7 +3532,7 @@ H5Tcompound.lo: \
    $(srcdir)/H5Tcompound.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3618,7 +3566,7 @@ H5Tconv.lo: \
    $(srcdir)/H5Tconv.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3660,7 +3608,7 @@ H5Tcset.lo: \
    $(srcdir)/H5Tcset.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3693,7 +3641,7 @@ H5Tenum.lo: \
    $(srcdir)/H5Tenum.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3727,7 +3675,7 @@ H5Tfields.lo: \
    $(srcdir)/H5Tfields.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3761,7 +3709,7 @@ H5Tfixed.lo: \
    $(srcdir)/H5Tfixed.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3794,7 +3742,7 @@ H5Tfloat.lo: \
    $(srcdir)/H5Tfloat.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3827,11 +3775,12 @@ H5Tinit.lo: \
    H5Tinit.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5Ipublic.h \
+   $(srcdir)/H5private.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5FLprivate.h \
@@ -3851,6 +3800,7 @@ H5Tinit.lo: \
    $(srcdir)/H5FDpublic.h \
    $(srcdir)/H5Cprivate.h \
    $(srcdir)/H5Cpublic.h \
+   $(srcdir)/H5FLprivate.h \
    $(srcdir)/H5RCprivate.h \
    $(srcdir)/H5RSprivate.h \
    $(srcdir)/H5Rprivate.h \
@@ -3860,7 +3810,7 @@ H5Tnative.lo: \
    $(srcdir)/H5Tnative.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3900,7 +3850,7 @@ H5Toffset.lo: \
    $(srcdir)/H5Toffset.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3933,7 +3883,7 @@ H5Topaque.lo: \
    $(srcdir)/H5Topaque.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -3967,7 +3917,7 @@ H5Torder.lo: \
    $(srcdir)/H5Torder.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -4000,7 +3950,7 @@ H5Tpad.lo: \
    $(srcdir)/H5Tpad.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -4033,7 +3983,7 @@ H5Tprecis.lo: \
    $(srcdir)/H5Tprecis.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -4066,7 +4016,7 @@ H5Tstrpad.lo: \
    $(srcdir)/H5Tstrpad.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -4099,7 +4049,7 @@ H5Tvlen.lo: \
    $(srcdir)/H5Tvlen.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -4133,20 +4083,21 @@ H5Tvlen.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5HGprivate.h \
    $(srcdir)/H5HGpublic.h \
    $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Tpkg.h
 H5TS.lo: \
    $(srcdir)/H5TS.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -4158,7 +4109,7 @@ H5V.lo: \
    $(srcdir)/H5V.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -4194,7 +4145,7 @@ H5Z.lo: \
    $(srcdir)/H5Z.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Dprivate.h \
@@ -4228,19 +4179,19 @@ H5Z.lo: \
    $(srcdir)/H5Rpublic.h \
    $(srcdir)/H5Zprivate.h \
    $(srcdir)/H5Zpublic.h \
+   $(srcdir)/H5Sprivate.h \
+   $(srcdir)/H5Pprivate.h \
+   $(srcdir)/H5Ppublic.h \
    $(srcdir)/H5Eprivate.h \
    $(srcdir)/H5Epublic.h \
    $(srcdir)/H5Iprivate.h \
    $(srcdir)/H5MMprivate.h \
-   $(srcdir)/H5Pprivate.h \
-   $(srcdir)/H5Ppublic.h \
-   $(srcdir)/H5Sprivate.h \
    $(srcdir)/H5Zpkg.h
 H5Zdeflate.lo: \
    $(srcdir)/H5Zdeflate.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -4255,7 +4206,7 @@ H5Zfletcher32.lo: \
    $(srcdir)/H5Zfletcher32.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -4273,7 +4224,7 @@ H5Zshuffle.lo: \
    $(srcdir)/H5Zshuffle.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
@@ -4293,7 +4244,7 @@ H5Zszip.lo: \
    $(srcdir)/H5Zszip.c \
    $(srcdir)/H5private.h \
    $(srcdir)/H5public.h \
-   H5pubconf.h \
+   ./H5pubconf.h \
    $(srcdir)/H5api_adpt.h \
    $(srcdir)/H5MPprivate.h \
    $(srcdir)/H5Eprivate.h \
diff --git a/src/H5D.c b/src/H5D.c
index 5735c06..687b292 100644
--- a/src/H5D.c
+++ b/src/H5D.c
@@ -3677,7 +3677,7 @@ H5D_vlen_get_buf_size(void UNUSED *elem, hid_t type_id, unsigned UNUSED ndim, co
         HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, FAIL, "can't resize tbuf")
 
     /* Select point to read in */
-    if(H5Sselect_elements(vlen_bufsize->fspace_id, H5S_SELECT_SET, 1, (const hsize_t **)point)<0)
+    if(H5Sselect_elements(vlen_bufsize->fspace_id, H5S_SELECT_SET, 1, point)<0)
         HGOTO_ERROR(H5E_DATASPACE, H5E_CANTCREATE, FAIL, "can't select point")
 
     /* Read in the point (with the custom VL memory allocator) */
diff --git a/src/H5Dio.c b/src/H5Dio.c
index b00452b..6bf8dd1 100644
--- a/src/H5Dio.c
+++ b/src/H5Dio.c
@@ -551,6 +551,7 @@ H5Dread(hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id,
     H5D_t		   *dset = NULL;
     const H5S_t		   *mem_space = NULL;
     const H5S_t		   *file_space = NULL;
+    char                    fake_char;
     herr_t                  ret_value=SUCCEED;  /* Return value */
 
     FUNC_ENTER_API(H5Dread, FAIL)
@@ -588,6 +589,13 @@ H5Dread(hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id,
     if (!buf && H5S_GET_SELECT_NPOINTS(file_space)!=0)
 	HGOTO_ERROR(H5E_ARGS, H5E_BADVALUE, FAIL, "no output buffer")
 
+    /* If the buffer is nil, and 0 element is selected, make a fake buffer.
+     * This is for some MPI package like ChaMPIon on NCSA's tungsten which 
+     * doesn't support this feature. 
+     */ 
+    if (!buf)
+        buf = &fake_char;
+
     /* read raw data */
     if (H5D_read(dset, mem_type_id, mem_space, file_space, plist_id, buf/*out*/) < 0)
 	HGOTO_ERROR(H5E_DATASET, H5E_READERROR, FAIL, "can't read data")
@@ -639,6 +647,7 @@ H5Dwrite(hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id,
     H5D_t		   *dset = NULL;
     const H5S_t		   *mem_space = NULL;
     const H5S_t		   *file_space = NULL;
+    char                    fake_char;
     herr_t                  ret_value=SUCCEED;  /* Return value */
 
     FUNC_ENTER_API(H5Dwrite, FAIL)
@@ -676,6 +685,13 @@ H5Dwrite(hid_t dset_id, hid_t mem_type_id, hid_t mem_space_id,
     if (!buf && H5S_GET_SELECT_NPOINTS(file_space)!=0)
 	HGOTO_ERROR(H5E_ARGS, H5E_BADVALUE, FAIL, "no output buffer")
 
+    /* If the buffer is nil, and 0 element is selected, make a fake buffer.
+     * This is for some MPI package like ChaMPIon on NCSA's tungsten which 
+     * doesn't support this feature. 
+     */ 
+    if (!buf)
+        buf = &fake_char;
+
     /* write raw data */
     if (H5D_write(dset, mem_type_id, mem_space, file_space, plist_id, buf) < 0)
 	HGOTO_ERROR(H5E_DATASET, H5E_WRITEERROR, FAIL, "can't write data")
@@ -1128,6 +1144,8 @@ H5D_contig_read(H5D_io_info_t *io_info, hsize_t nelmts,
 
     FUNC_ENTER_NOAPI_NOINIT(H5D_contig_read)
 
+    assert(buf);
+
     /* Initialize storage info for this dataset */
     if (dataset->shared->efl.nused>0)
         HDmemcpy(&store.efl,&(dataset->shared->efl),sizeof(H5O_efl_t));
@@ -1383,6 +1401,8 @@ H5D_contig_write(H5D_io_info_t *io_info, hsize_t nelmts,
 
     FUNC_ENTER_NOAPI_NOINIT(H5D_contig_write)
 
+    assert(buf);
+
     /* Initialize storage info for this dataset */
     if (dataset->shared->efl.nused>0)
         HDmemcpy(&store.efl,&(dataset->shared->efl),sizeof(H5O_efl_t));
@@ -1638,6 +1658,8 @@ H5D_chunk_read(H5D_io_info_t *io_info, hsize_t nelmts,
 
     FUNC_ENTER_NOAPI_NOINIT(H5D_chunk_read)
 
+    assert(buf);
+
     /* Map elements between file and memory for each chunk*/
     if(H5D_create_chunk_map(dataset, mem_type, file_space, mem_space, &fm)<0)
         HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "can't build chunk mapping")
@@ -2003,6 +2025,8 @@ H5D_chunk_write(H5D_io_info_t *io_info, hsize_t nelmts,
 
     FUNC_ENTER_NOAPI_NOINIT(H5D_chunk_write)
 
+    assert(buf);
+
     /* Map elements between file and memory for each chunk*/
     if(H5D_create_chunk_map(dataset, mem_type, file_space, mem_space, &fm)<0)
         HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "can't build chunk mapping")
@@ -3036,7 +3060,7 @@ H5D_chunk_file_cb(void UNUSED *elem, hid_t UNUSED type_id, unsigned ndims, const
         coords_in_chunk[u]=coords[u]%fm->layout->u.chunk.dim[u];
 
     /* Add point to file selection for chunk */
-    if(H5S_select_elements(chunk_info->fspace,H5S_SELECT_APPEND,1,(const hsize_t **)coords_in_chunk)<0)
+    if(H5S_select_elements(chunk_info->fspace,H5S_SELECT_APPEND,1,coords_in_chunk)<0)
         HGOTO_ERROR (H5E_DATASPACE, H5E_CANTSELECT, FAIL, "unable to select element")
 
     /* Increment the number of elemented selected in chunk */
@@ -3113,7 +3137,7 @@ H5D_chunk_mem_cb(void UNUSED *elem, hid_t UNUSED type_id, unsigned ndims, const
 
     /* Add point to memory selection for chunk */
     if(fm->msel_type==H5S_SEL_POINTS) {
-        if(H5S_select_elements(chunk_info->mspace,H5S_SELECT_APPEND,1,(const hsize_t **)coords_in_mem)<0)
+        if(H5S_select_elements(chunk_info->mspace,H5S_SELECT_APPEND,1,coords_in_mem)<0)
             HGOTO_ERROR (H5E_DATASPACE, H5E_CANTSELECT, FAIL, "unable to select element")
     } /* end if */
     else {
diff --git a/src/H5E.c b/src/H5E.c
index 79f4135..e2a0532 100644
--- a/src/H5E.c
+++ b/src/H5E.c
@@ -770,7 +770,8 @@ H5Epush(const char *file, const char *func, unsigned line, H5E_major_t maj,
 {
     herr_t	ret_value;
 
-    FUNC_ENTER_API(H5Epush, FAIL)
+    /* Don't clear the error stack! */
+    FUNC_ENTER_API_NOCLEAR(H5Epush, FAIL)
     H5TRACE6("e","ssIuEjEns",file,func,line,maj,min,str);
 
     ret_value = H5E_push(maj, min, func, file, line, str);
@@ -836,35 +837,31 @@ done:
  *-------------------------------------------------------------------------
  */
 static herr_t
-H5E_walk (H5E_direction_t direction, H5E_walk_t func, void *client_data)
+H5E_walk(H5E_direction_t direction, H5E_walk_t func, void *client_data)
 {
-    H5E_t	*estack = H5E_get_my_stack ();
+    H5E_t	*estack = H5E_get_my_stack();
     int		i;
-    herr_t	status;
-    herr_t ret_value=SUCCEED;   /* Return value */
+    herr_t      ret_value = SUCCEED;   /* Return value */
 
     FUNC_ENTER_NOAPI(H5E_walk, FAIL)
 
     /* check args, but rather than failing use some default value */
-    if (direction!=H5E_WALK_UPWARD && direction!=H5E_WALK_DOWNWARD) {
+    if(direction != H5E_WALK_UPWARD && direction != H5E_WALK_DOWNWARD)
 	direction = H5E_WALK_UPWARD;
-    }
 
     /* walk the stack */
-    assert (estack);
-    if (func && H5E_WALK_UPWARD==direction) {
-	for (i=0, status=SUCCEED; i<estack->nused && status>=0; i++) {
-	    status = (func)(i, estack->slot+i, client_data);
-	}
-    } else if (func && H5E_WALK_DOWNWARD==direction) {
-	for (i=estack->nused-1, status=SUCCEED; i>=0 && status>=0; --i) {
-	    status = (func)(estack->nused-(i+1), estack->slot+i, client_data);
-	}
+    assert(estack);
+    if(func && H5E_WALK_UPWARD==direction) {
+	for(i = 0; i < estack->nused && ret_value >= 0; i++)
+	    ret_value = (func)(i, estack->slot + i, client_data);
+    } else if(func && H5E_WALK_DOWNWARD == direction) {
+	for(i = estack->nused-1; i >= 0 && ret_value >= 0; --i)
+	    ret_value = (func)(estack->nused - (i + 1), estack->slot + i, client_data);
     }
 
 done:
     FUNC_LEAVE_NOAPI(ret_value)
-}
+} /* end H5E_walk() */
 
 
 /*-------------------------------------------------------------------------
diff --git a/src/H5F.c b/src/H5F.c
index 5fde395..4a7caa6 100644
--- a/src/H5F.c
+++ b/src/H5F.c
@@ -44,7 +44,6 @@
 #include "H5FDsec2.h"		/*Posix unbuffered I/O			*/
 #include "H5FDsrb.h"            /*SRB I/O                               */
 #include "H5FDstdio.h"		/* Standard C buffered I/O		*/
-#include "H5FDstream.h"         /*in-memory files streamed via sockets  */
 
 /* Struct only used by functions H5F_get_objects and H5F_get_objects_cb */
 typedef struct H5F_olist_t {
diff --git a/src/H5FD.c b/src/H5FD.c
index c3705f2..9b2c21f 100644
--- a/src/H5FD.c
+++ b/src/H5FD.c
@@ -45,7 +45,6 @@
 #include "H5FDsec2.h"		/* POSIX unbuffered file I/O		*/
 #include "H5FDsrb.h"        	/* Remote access using SRB              */
 #include "H5FDstdio.h"		/* Standard C buffered I/O		*/
-#include "H5FDstream.h"     	/* In-memory files streamed via sockets */
 #include "H5FLprivate.h"	/* Free lists                           */
 #include "H5Iprivate.h"		/* IDs			  		*/
 #include "H5MMprivate.h"	/* Memory management			*/
@@ -176,9 +175,6 @@ H5FD_term_interface(void)
                 H5FD_mpio_term();
                 H5FD_mpiposix_term();
 #endif /* H5_HAVE_PARALLEL */
-#ifdef H5_HAVE_STREAM
-                H5FD_stream_term();
-#endif
             } /* end if */
 	} else {
 	    H5I_destroy_group(H5I_VFL);
diff --git a/src/H5FDstream.c b/src/H5FDstream.c
deleted file mode 100644
index 1e0fa42..0000000
--- a/src/H5FDstream.c
+++ /dev/null
@@ -1,1154 +0,0 @@
-/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- * Copyright by The HDF Group.                                               *
- * Copyright by the Board of Trustees of the University of Illinois.         *
- * All rights reserved.                                                      *
- *                                                                           *
- * This file is part of HDF5.  The full HDF5 copyright notice, including     *
- * terms governing use, modification, and redistribution, is contained in    *
- * the files COPYING and Copyright.html.  COPYING can be found at the root   *
- * of the source code distribution tree; Copyright.html can be found at the  *
- * root level of an installed copy of the electronic HDF5 document set and   *
- * is linked from the top-level documents page.  It can also be found at     *
- * http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have          *
- * access to either file, you may request a copy from help at hdfgroup.org.     *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-
-/*
- * Copyright © 2000 The author.
- * The author prefers this code not be used for military purposes.
- *
- *
- * Author:  Thomas Radke <tradke at aei-potsdam.mpg.de>
- *          Tuesday, September 12, 2000
- *
- * Purpose: This code provides the Stream Virtual File Driver.
- *          It is very much based on the core VFD which keeps an
- *          entire HDF5 data file to be processed in main memory.
- *          In addition to that, the memory image of the file is
- *          read from/written to a socket during an open/flush operation.
- *
- * Modifications:
- *          Thomas Radke, Thursday, October 26, 2000
- *          Added support for Windows.
- *          Catch SIGPIPE on an open socket.
- *
- */
-
-/* Interface initialization */
-#define H5_INTERFACE_INIT_FUNC	H5FD_stream_init_interface
-
-
-#include "H5private.h"		/* Generic Functions			*/
-#include "H5Eprivate.h"		/* Error handling		  	*/
-#include "H5FDprivate.h"	/* File drivers				*/
-#include "H5FDstream.h"		/* Stream file driver			*/
-#include "H5Iprivate.h"		/* IDs			  		*/
-#include "H5MMprivate.h"	/* Memory management			*/
-#include "H5Pprivate.h"		/* Property lists			*/
-
-/* Only build this driver if it was configured with --with-Stream-VFD */
-#ifdef H5_HAVE_STREAM
-
-#ifdef H5FD_STREAM_HAVE_UNIX_SOCKETS
-#ifdef H5_HAVE_SYS_TYPES_H
-#include <sys/types.h>                /* socket stuff                        */
-#endif
-#ifdef H5_HAVE_SYS_SOCKET_H
-#include <sys/socket.h>               /* socket stuff                        */
-#endif
-#include <netdb.h>                    /* gethostbyname                       */
-#include <netinet/in.h>               /* socket stuff                        */
-#ifdef H5_HAVE_NETINET_TCP_H
-#include <netinet/tcp.h>              /* socket stuff                        */
-#endif
-#ifdef H5_HAVE_SYS_FILIO_H
-#include <sys/filio.h>                /* socket stuff                        */
-#endif
-#endif
-
-#ifndef H5_HAVE_SOCKLEN_T
-typedef int socklen_t;
-#endif
-
-/* Some useful macros */
-#ifdef  MIN
-#undef  MIN
-#endif
-#ifdef  MAX
-#undef  MAX
-#endif
-#define MIN(x,y)        ((x) < (y) ? (x) : (y))
-#define MAX(x,y)        ((x) > (y) ? (x) : (y))
-
-/* Uncomment this to switch on debugging output */
-/* #define DEBUG 1 */
-
-/* Define some socket stuff which is different for UNIX and Windows */
-#ifdef H5FD_STREAM_HAVE_UNIX_SOCKETS
-#define H5FD_STREAM_CLOSE_SOCKET(a)          close(a)
-#define H5FD_STREAM_IOCTL_SOCKET(a, b, c)    ioctl(a, b, c)
-#define H5FD_STREAM_ERROR_CHECK(rc)          ((rc) < 0)
-#else
-#define H5FD_STREAM_CLOSE_SOCKET(a)          closesocket (a)
-#define H5FD_STREAM_IOCTL_SOCKET(a, b, c)    ioctlsocket (a, b, (u_long *) (c))
-#define H5FD_STREAM_ERROR_CHECK(rc)          ((rc) == (SOCKET) (SOCKET_ERROR))
-#endif
-
-
-/* The driver identification number, initialized at runtime */
-static hid_t H5FD_STREAM_g = 0;
-
-/*
- * The description of a file belonging to this driver. The `eoa' and `eof'
- * determine the amount of hdf5 address space in use and the high-water mark
- * of the file (the current size of the underlying memory).
- */
-typedef struct H5FD_stream_t
-{
-  H5FD_t             pub;             /* public stuff, must be first         */
-  H5FD_stream_fapl_t fapl;            /* file access property list           */
-  unsigned char     *mem;             /* the underlying memory               */
-  haddr_t            eoa;             /* end of allocated region             */
-  haddr_t            eof;             /* current allocated size              */
-  H5FD_STREAM_SOCKET_TYPE socket;     /* socket to write / read from         */
-  hbool_t            dirty;           /* flag indicating unflushed data      */
-  hbool_t            internal_socket; /* flag indicating an internal socket  */
-} H5FD_stream_t;
-
-/* Allocate memory in multiples of this size (in bytes) by default */
-#define H5FD_STREAM_INCREMENT         8192
-
-/* default backlog argument for listen call */
-#define H5FD_STREAM_BACKLOG           1
-
-/* number of successive ports to hunt for until bind(2) succeeds
-   (default 0 means no port hunting - only try the one given in the filename) */
-#define H5FD_STREAM_MAXHUNT           0
-
-/* default file access property list */
-static const H5FD_stream_fapl_t default_fapl =
-{
-  H5FD_STREAM_INCREMENT,              /* address space allocation blocksize */
-  H5FD_STREAM_INVALID_SOCKET,         /* no external socket descriptor      */
-  TRUE,                               /* enable I/O on socket               */
-  H5FD_STREAM_BACKLOG,                /* default backlog for listen(2)      */
-  NULL,                               /* do not broadcast received files    */
-  NULL,                               /* argument to READ broadcast routine */
-  H5FD_STREAM_MAXHUNT,                /* default number of ports to hunt    */
-  0                                   /* unknown port for unbound socket    */
-};
-
-/*
- * These macros check for overflow of various quantities.  These macros
- * assume that file_offset_t is signed and haddr_t and size_t are unsigned.
- *
- * ADDR_OVERFLOW:        Checks whether a file address of type `haddr_t'
- *                        is too large to be represented by the second argument
- *                        of the file seek function.
- *
- * SIZE_OVERFLOW:        Checks whether a buffer size of type `hsize_t' is too
- *                        large to be represented by the `size_t' type.
- *
- * REGION_OVERFLOW:      Checks whether an address and size pair describe data
- *                        which can be addressed entirely in memory.
- */
-#ifdef H5_HAVE_LSEEK64
-#   define file_offset_t        off64_t
-#else
-#   define file_offset_t        off_t
-#endif
-#define MAXADDR                 (((haddr_t)1<<(8*sizeof(file_offset_t)-1))-1)
-#define ADDR_OVERFLOW(A)        (HADDR_UNDEF==(A) ||                          \
-                                 ((A) & ~(haddr_t)MAXADDR))
-#define SIZE_OVERFLOW(Z)        ((Z) & ~(hsize_t)MAXADDR)
-#define REGION_OVERFLOW(A,Z)    (ADDR_OVERFLOW(A) || SIZE_OVERFLOW(Z) ||      \
-                                 HADDR_UNDEF==(A)+(Z) ||                      \
-                                 (size_t)((A)+(Z))<(size_t)(A))
-
-/* Function prototypes */
-static void   *H5FD_stream_fapl_get (H5FD_t *_stream);
-static H5FD_t *H5FD_stream_open (const char *name, unsigned flags,
-                                 hid_t fapl_id, haddr_t maxaddr);
-static herr_t  H5FD_stream_flush (H5FD_t *_stream, hid_t dxpl_id, unsigned closing);
-static herr_t  H5FD_stream_close (H5FD_t *_stream);
-static herr_t H5FD_stream_query(const H5FD_t *_f1, unsigned long *flags);
-static haddr_t H5FD_stream_get_eoa (H5FD_t *_stream);
-static herr_t  H5FD_stream_set_eoa (H5FD_t *_stream, haddr_t addr);
-static haddr_t H5FD_stream_get_eof (H5FD_t *_stream);
-static herr_t  H5FD_stream_get_handle(H5FD_t *_file, hid_t fapl, void** file_handle);
-static herr_t  H5FD_stream_read (H5FD_t *_stream, H5FD_mem_t type,
-                                 hid_t fapl_id, haddr_t addr,
-                                 size_t size, void *buf);
-static herr_t  H5FD_stream_write (H5FD_t *_stream, H5FD_mem_t type,
-                                  hid_t fapl_id, haddr_t addr,
-                                  size_t size, const void *buf);
-
-/* The Stream VFD's class information structure */
-static const H5FD_class_t H5FD_stream_g = {
-    "stream",                                   /*name                  */
-    MAXADDR,                                    /*maxaddr               */
-    H5F_CLOSE_WEAK,                             /*fc_degree             */
-    NULL,                                       /*sb_size               */
-    NULL,                                       /*sb_encode             */
-    NULL,                                       /*sb_decode             */
-    sizeof (H5FD_stream_fapl_t),                /*fapl_size             */
-    H5FD_stream_fapl_get,                       /*fapl_get              */
-    NULL,                                       /*fapl_copy             */
-    NULL,                                       /*fapl_free             */
-    0,                                          /*dxpl_size             */
-    NULL,                                       /*dxpl_copy             */
-    NULL,                                       /*dxpl_free             */
-    H5FD_stream_open,                           /*open                  */
-    H5FD_stream_close,                          /*close                 */
-    NULL,                                       /*cmp                   */
-    H5FD_stream_query,                          /*query                 */
-    NULL,                                       /*alloc                 */
-    NULL,                                       /*free                  */
-    H5FD_stream_get_eoa,                        /*get_eoa               */
-    H5FD_stream_set_eoa,                        /*set_eoa               */
-    H5FD_stream_get_eof,                        /*get_eof               */
-    H5FD_stream_get_handle,                     /*get_handle            */
-    H5FD_stream_read,                           /*read                  */
-    H5FD_stream_write,                          /*write                 */
-    H5FD_stream_flush,                          /*flush                 */
-    NULL,                                       /*lock                  */
-    NULL,                                       /*unlock                */
-    H5FD_FLMAP_SINGLE                           /*fl_map                */
-};
-
-
-/*--------------------------------------------------------------------------
-NAME
-   H5FD_stream_init_interface -- Initialize interface-specific information
-USAGE
-    herr_t H5FD_stream_init_interface()
-
-RETURNS
-    Non-negative on success/Negative on failure
-DESCRIPTION
-    Initializes any interface-specific data or routines.  (Just calls
-    H5FD_stream_init currently).
-
---------------------------------------------------------------------------*/
-static herr_t
-H5FD_stream_init_interface(void)
-{
-    FUNC_ENTER_NOAPI_NOINIT_NOFUNC(H5FD_stream_init_interface)
-
-    FUNC_LEAVE_NOAPI(H5FD_stream_init())
-} /* H5FD_stream_init_interface() */
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_init
- *
- * Purpose:       Initialize this driver by registering it with the library.
- *
- * Return:        Success:        The driver ID for the Stream driver.
- *                Failure:        Negative.
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-hid_t H5FD_stream_init (void)
-{
-  hid_t ret_value=H5FD_STREAM_g;        /* Return value */
-
-  FUNC_ENTER_NOAPI(H5FD_stream_init, FAIL)
-
-  if (H5I_VFL != H5Iget_type (H5FD_STREAM_g)) {
-    H5FD_STREAM_g = H5FD_register (&H5FD_stream_g,sizeof(H5FD_class_t));
-
-    /* set the process signal mask to ignore SIGPIPE signals */
-    /* NOTE: Windows doesn't know SIGPIPE signals that's why the #ifdef */
-#ifdef SIGPIPE
-    if (signal (SIGPIPE, SIG_IGN) == SIG_ERR)
-      fprintf (stderr, "Stream VFD warning: failed to set the process signal "
-                       "mask to ignore SIGPIPE signals\n");
-#endif
-  }
-
-    /* Set return value */
-    ret_value=H5FD_STREAM_g;
-
-done:
-    FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*---------------------------------------------------------------------------
- * Function:	H5FD_stream_term
- *
- * Purpose:	Shut down the VFD
- *
- * Return:	<none>
- *
- * Programmer:  Quincey Koziol
- *              Friday, Jan 30, 2004
- *
- * Modification:
- *
- *---------------------------------------------------------------------------
- */
-void
-H5FD_stream_term(void)
-{
-    FUNC_ENTER_NOAPI_NOINIT_NOFUNC(H5FD_stream_term)
-
-    /* Reset VFL ID */
-    H5FD_STREAM_g=0;
-
-    FUNC_LEAVE_NOAPI_VOID
-} /* end H5FD_stream_term() */
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5Pset_fapl_stream
- *
- * Purpose:       Modify the file access property list to use the Stream
- *                driver defined in this source file.  The INCREMENT specifies
- *                how much to grow the memory each time we need more.
- *                If a valid socket argument is given this will be used
- *                by the driver instead of parsing the 'hostname:port' filename
- *                and opening a socket internally.
- *
- * Return:        Success:        Non-negative
- *                Failure:        Negative
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-herr_t H5Pset_fapl_stream (hid_t fapl_id, H5FD_stream_fapl_t *fapl)
-{
-  H5FD_stream_fapl_t user_fapl;
-  H5P_genplist_t *plist;      /* Property list pointer */
-    herr_t      ret_value=SUCCEED;       /* Return value */
-
-  FUNC_ENTER_API(H5Pset_fapl_stream, FAIL)
-  H5TRACE2 ("e", "ix", fapl_id, fapl);
-
-  if(NULL == (plist = H5P_object_verify(fapl_id,H5P_FILE_ACCESS)))
-    HGOTO_ERROR (H5E_PLIST, H5E_BADTYPE, FAIL, "not a fapl")
-
-  if (fapl) {
-    if (! fapl->do_socket_io && fapl->broadcast_fn == NULL)
-      HGOTO_ERROR (H5E_ARGS, H5E_BADVALUE, FAIL, "read broadcast function pointer is NULL")
-
-    user_fapl = *fapl;
-    if (fapl->increment == 0)
-      user_fapl.increment = H5FD_STREAM_INCREMENT;
-    user_fapl.port = 0;
-    ret_value = H5P_set_driver (plist, H5FD_STREAM, &user_fapl);
-  }
-  else
-    ret_value = H5P_set_driver (plist, H5FD_STREAM, &default_fapl);
-
-done:
-    FUNC_LEAVE_API(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5Pget_fapl_stream
- *
- * Purpose:       Queries properties set by the H5Pset_fapl_stream() function.
- *
- * Return:        Success:        Non-negative
- *                Failure:        Negative
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-herr_t H5Pget_fapl_stream(hid_t fapl_id, H5FD_stream_fapl_t *fapl /* out */)
-{
-  H5FD_stream_fapl_t *this_fapl;
-  H5P_genplist_t *plist;      /* Property list pointer */
-    herr_t      ret_value=SUCCEED;       /* Return value */
-
-  FUNC_ENTER_API(H5Pget_fapl_stream, FAIL)
-  H5TRACE2("e","ix",fapl_id,fapl);
-
-  if(NULL == (plist = H5P_object_verify(fapl_id,H5P_FILE_ACCESS)))
-    HGOTO_ERROR (H5E_PLIST, H5E_BADTYPE, FAIL, "not a fapl")
-  if (H5FD_STREAM != H5P_get_driver (plist))
-    HGOTO_ERROR (H5E_PLIST, H5E_BADVALUE, FAIL, "incorrect VFL driver")
-  if (NULL == (this_fapl = H5P_get_driver_info (plist)))
-    HGOTO_ERROR (H5E_PLIST, H5E_BADVALUE, FAIL, "bad VFL driver info")
-
-  if (fapl)
-    *fapl = *this_fapl;
-
-done:
-  FUNC_LEAVE_API(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_fapl_get
- *
- * Purpose:       Returns a copy of the file access properties
- *
- * Return:        Success:        Ptr to new file access properties
- *                Failure:        NULL
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static void *
-H5FD_stream_fapl_get (H5FD_t *_stream)
-{
-  H5FD_stream_t      *stream = (H5FD_stream_t *) _stream;
-  H5FD_stream_fapl_t *fapl;
-  void      *ret_value;
-
-  FUNC_ENTER_NOAPI(H5FD_stream_fapl_get, NULL)
-
-  if ((fapl = H5MM_calloc (sizeof (H5FD_stream_fapl_t))) == NULL)
-    HGOTO_ERROR (H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed")
-
-  *fapl = stream->fapl;
-
-    /* Set return value */
-    ret_value=fapl;
-
-done:
-    FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-static H5FD_STREAM_SOCKET_TYPE
-H5FD_stream_open_socket (const char *filename, int o_flags,
-                        H5FD_stream_fapl_t *fapl)
-{
-  struct sockaddr_in server;
-  struct hostent *he;
-  H5FD_STREAM_SOCKET_TYPE sock=H5FD_STREAM_INVALID_SOCKET;
-  char *hostname=NULL;
-  unsigned short int first_port;
-  const char *separator, *tmp;
-  int on = 1;
-  H5FD_STREAM_SOCKET_TYPE ret_value=H5FD_STREAM_INVALID_SOCKET;
-
-  FUNC_ENTER_NOAPI_NOINIT(H5FD_stream_open_socket)
-
-  /* Parse "hostname:port" from filename argument */
-  for (separator = filename; *separator != ':' && *separator; separator++)
-      ;
-  if (separator == filename || !*separator) {
-    HGOTO_ERROR(H5E_ARGS,H5E_BADVALUE,H5FD_STREAM_INVALID_SOCKET,"invalid host address")
-  } else {
-    tmp = separator;
-    if (! tmp[1])
-        HGOTO_ERROR(H5E_ARGS,H5E_BADVALUE,H5FD_STREAM_INVALID_SOCKET,"no port number")
-    while (*++tmp) {
-      if (! isdigit (*tmp))
-        HGOTO_ERROR(H5E_ARGS,H5E_BADVALUE,H5FD_STREAM_INVALID_SOCKET,"invalid port number")
-    }
-  }
-
-  hostname = (char *) H5MM_malloc ((size_t)(separator - filename + 1));
-
-  /* Return if out of memory */
-  if (hostname == NULL)
-    HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,H5FD_STREAM_INVALID_SOCKET,"memory allocation failed")
-
-  HDstrncpy (hostname, filename, (size_t)(separator - filename));
-  hostname[separator - filename] = 0;
-  fapl->port = atoi (separator + 1);
-
-  HDmemset (&server, 0, sizeof (server));
-  server.sin_family = AF_INET;
-  server.sin_port = htons (fapl->port);
-
-  if (! (he = gethostbyname (hostname))) {
-    HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,H5FD_STREAM_INVALID_SOCKET,"unable to get host address")
-  } else if (H5FD_STREAM_ERROR_CHECK (sock = socket (AF_INET, SOCK_STREAM, 0)))
-    HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,H5FD_STREAM_INVALID_SOCKET,"unable to open socket")
-
-    if (O_RDONLY == o_flags) {
-      HDmemcpy (&server.sin_addr, he->h_addr, (size_t)he->h_length);
-#ifdef DEBUG
-      fprintf (stderr, "Stream VFD: connecting to host '%s' port %d\n",
-               hostname, fapl->port);
-#endif
-      if (connect (sock, (struct sockaddr *) &server, sizeof (server)) < 0)
-        HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,H5FD_STREAM_INVALID_SOCKET,"unable to connect")
-    }
-    else {
-      server.sin_addr.s_addr = INADDR_ANY;
-      if (H5FD_STREAM_IOCTL_SOCKET (sock, FIONBIO, &on) < 0) {
-        HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,H5FD_STREAM_INVALID_SOCKET,"unable to set non-blocking mode for socket")
-      } else if (setsockopt (sock, IPPROTO_TCP, TCP_NODELAY, (const char *) &on,
-                           sizeof(on)) < 0) {
-        HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,H5FD_STREAM_INVALID_SOCKET,"unable to set socket option TCP_NODELAY")
-      } else if (setsockopt (sock, SOL_SOCKET, SO_REUSEADDR, (const char *) &on,
-                           sizeof(on)) < 0) {
-        HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,H5FD_STREAM_INVALID_SOCKET,"unable to set socket option SO_REUSEADDR")
-      } else {
-        /* Try to bind the socket to the given port.
-           If maxhunt is given try some successive ports also. */
-        first_port = fapl->port;
-        while (fapl->port <= first_port + fapl->maxhunt) {
-#ifdef DEBUG
-          fprintf (stderr, "Stream VFD: binding to port %d\n", fapl->port);
-#endif
-          server.sin_port = htons (fapl->port);
-          if (bind (sock, (struct sockaddr *) &server, sizeof (server)) < 0)
-            fapl->port++;
-          else
-            break;
-        }
-        if (fapl->port > first_port + fapl->maxhunt) {
-          fapl->port = 0;
-          HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,H5FD_STREAM_INVALID_SOCKET,"unable to bind socket")
-        }
-        else if (listen (sock, fapl->backlog) < 0)
-          HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,H5FD_STREAM_INVALID_SOCKET,"unable to listen on socket")
-      }
-    }
-
-    /* Set return value for success */
-    ret_value=sock;
-
-done:
-    /* Cleanup variables */
-    if(hostname!=NULL)
-        hostname=H5MM_xfree(hostname);
-
-    /* Clean up on error */
-    if(ret_value==H5FD_STREAM_INVALID_SOCKET) {
-        if (!H5FD_STREAM_ERROR_CHECK(sock))
-          H5FD_STREAM_CLOSE_SOCKET(sock);
-    } /* end if */
-
-    FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-static herr_t
-H5FD_stream_read_from_socket (H5FD_stream_t *stream)
-{
-  int size;
-  size_t max_size = 0;
-  unsigned char *ptr=NULL;
-  herr_t ret_value=SUCCEED;
-
-  FUNC_ENTER_NOAPI_NOINIT(H5FD_stream_read_from_socket)
-
-  stream->eof = 0;
-  stream->mem = NULL;
-
-  while (1) {
-    if (max_size <= 0) {
-      /*
-       * Allocate initial buffer as increment + 1
-       * to prevent unnecessary reallocation
-       * if increment is exactly a multiple of the filesize
-       */
-      max_size = stream->fapl.increment;
-      if (! stream->mem)
-        max_size++;
-      ptr = H5MM_realloc (stream->mem, (size_t) (stream->eof + max_size));
-      if (! ptr)
-        HGOTO_ERROR(H5E_RESOURCE,H5E_NOSPACE,FAIL,"unable to allocate file space buffer")
-      stream->mem = ptr;
-      ptr += stream->eof;
-    }
-
-    /* now receive the next chunk of data */
-    size = recv (stream->socket, ptr, max_size, 0);
-
-    if (size < 0 && (EINTR == errno || EAGAIN == errno || EWOULDBLOCK))
-      continue;
-    if (size < 0)
-      HGOTO_ERROR(H5E_IO,H5E_READERROR,FAIL,"error reading from file from socket")
-    if (! size)
-      break;
-    max_size -= (size_t) size;
-    stream->eof += (haddr_t) size;
-    ptr += size;
-#ifdef DEBUG
-    fprintf (stderr, "Stream VFD: read %d bytes (%d total) from socket\n",
-             size, (int) stream->eof);
-#endif
-  }
-
-#ifdef DEBUG
-  fprintf (stderr, "Stream VFD: read total of %d bytes from socket\n",
-           (int) stream->eof);
-#endif
-done:
-    FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_open
- *
- * Purpose:       Opens an HDF5 file in memory.
- *
- * Return:        Success:        A pointer to a new file data structure. The
- *                                public fields will be initialized by the
- *                                caller, which is always H5FD_open().
- *                Failure:        NULL
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static H5FD_t *
-H5FD_stream_open (const char *filename,
-                     unsigned flags,
-                     hid_t fapl_id,
-                     haddr_t maxaddr)
-{
-  H5FD_stream_t             *stream=NULL;
-  const H5FD_stream_fapl_t *fapl;
-  int                       o_flags;
-#ifdef WIN32
-  WSADATA wsadata;
-#endif
-  H5P_genplist_t *plist=NULL;        /* Property list pointer */
-  H5FD_t *ret_value;       /* Function return value */
-
-  FUNC_ENTER_NOAPI(H5FD_stream_open, NULL)
-
-  /* Check arguments */
-  if (filename == NULL|| *filename == '\0')
-    HGOTO_ERROR (H5E_ARGS, H5E_BADVALUE, NULL,"invalid file name")
-  if (maxaddr == 0 || HADDR_UNDEF == maxaddr)
-    HGOTO_ERROR (H5E_ARGS, H5E_BADRANGE, NULL, "bogus maxaddr")
-  if (ADDR_OVERFLOW (maxaddr))
-    HGOTO_ERROR (H5E_ARGS, H5E_OVERFLOW, NULL, "maxaddr overflow")
-
-  /* Build the open flags */
-  o_flags = (H5F_ACC_RDWR & flags) ? O_RDWR : O_RDONLY;
-  if (H5F_ACC_TRUNC & flags) o_flags |= O_TRUNC;
-  if (H5F_ACC_CREAT & flags) o_flags |= O_CREAT;
-  if (H5F_ACC_EXCL & flags)  o_flags |= O_EXCL;
-
-  if ((O_RDWR & o_flags) && ! (O_CREAT & o_flags))
-    HGOTO_ERROR (H5E_ARGS, H5E_UNSUPPORTED, NULL, "open stream for read/write not supported")
-
-#ifdef WIN32
-  if (WSAStartup (MAKEWORD (2, 0), &wsadata))
-    HGOTO_ERROR (H5E_IO, H5E_CANTINIT, NULL, "Couldn't start Win32 socket layer")
-#endif
-
-  fapl = NULL;
-  if (H5P_FILE_ACCESS_DEFAULT != fapl_id) {
-    if(NULL == (plist = H5P_object_verify(fapl_id,H5P_FILE_ACCESS)))
-        HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, NULL, "not a file access property list")
-    fapl = H5P_get_driver_info (plist);
-  }
-  if (fapl == NULL)
-    fapl = &default_fapl;
-
-    /* Create the new file struct */
-    stream = (H5FD_stream_t *) H5MM_calloc (sizeof (H5FD_stream_t));
-    if (stream == NULL)
-        HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "unable to allocate file struct")
-    stream->fapl = *fapl;
-    stream->socket = H5FD_STREAM_INVALID_SOCKET;
-
-  /* if an external socket is provided with the file access property list
-     we use that, otherwise the filename argument is parsed and a socket
-     is opened internally */
-  if (fapl->do_socket_io) {
-    if (! H5FD_STREAM_ERROR_CHECK (fapl->socket)) {
-      stream->internal_socket = FALSE;
-      stream->socket = fapl->socket;
-    }
-    else {
-      stream->internal_socket = TRUE;
-      stream->socket = H5FD_stream_open_socket (filename, o_flags, &stream->fapl);
-      if (stream->socket != H5FD_STREAM_INVALID_SOCKET) {
-        /* update the port ID in the file access property
-           so that it can be queried via H5P_get_fapl_stream() later on */
-        H5P_set_driver (plist, H5FD_STREAM, &stream->fapl);
-      }
-      else
-        HGOTO_ERROR(H5E_IO, H5E_CANTOPENFILE, NULL, "can't open internal socket")
-    }
-  }
-
-  /* read the data from socket into memory */
-  if (O_RDONLY == o_flags) {
-    if (fapl->do_socket_io) {
-#ifdef DEBUG
-      fprintf (stderr, "Stream VFD: reading file from socket\n");
-#endif
-      if(H5FD_stream_read_from_socket (stream)<0)
-        HGOTO_ERROR(H5E_IO, H5E_READERROR, NULL, "can't read file from socket")
-    }
-
-    /* Now call the user's broadcast routine if given */
-    if (fapl->broadcast_fn) {
-      if ((fapl->broadcast_fn) (&stream->mem, &stream->eof,
-                                fapl->broadcast_arg) < 0)
-        HGOTO_ERROR(H5E_IO, H5E_READERROR, NULL, "broadcast error")
-
-      /* check for filesize of zero bytes */
-      if (stream->eof == 0)
-        HGOTO_ERROR(H5E_IO, H5E_READERROR, NULL, "zero filesize")
-    }
-
-    /* For files which are read from a socket:
-       the opened socket is not needed anymore */
-      if (stream->internal_socket && ! H5FD_STREAM_ERROR_CHECK (stream->socket))
-        H5FD_STREAM_CLOSE_SOCKET (stream->socket);
-      stream->socket = H5FD_STREAM_INVALID_SOCKET;
-  }
-
-    /* Set return value on success */
-    ret_value=(H5FD_t*)stream;
-
-done:
-    if(ret_value==NULL) {
-        if(stream!=NULL) {
-            if (stream->mem)
-                H5MM_xfree (stream->mem);
-            if (stream->internal_socket && ! H5FD_STREAM_ERROR_CHECK (stream->socket))
-                H5FD_STREAM_CLOSE_SOCKET (stream->socket);
-            H5MM_xfree(stream);
-        } /* end if */
-    }
-
-  FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_flush
- *
- * Purpose:       Flushes the file via sockets to any connected clients
- *                if its dirty flag is set.
- *
- * Return:        Success:        0
- *                Failure:        -1
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static herr_t
-H5FD_stream_flush (H5FD_t *_stream, hid_t UNUSED dxpl_id, unsigned UNUSED closing)
-{
-  H5FD_stream_t *stream = (H5FD_stream_t *) _stream;
-  size_t size;
-  ssize_t bytes_send;
-  int on = 1;
-  unsigned char *ptr;
-  struct sockaddr from;
-  socklen_t fromlen;
-  H5FD_STREAM_SOCKET_TYPE sock;
-    herr_t ret_value=SUCCEED;   /* Return value */
-
-  FUNC_ENTER_NOAPI(H5FD_stream_flush, FAIL)
-
-  /* Write to backing store */
-  if (stream->dirty && ! H5FD_STREAM_ERROR_CHECK (stream->socket)) {
-#ifdef DEBUG
-    fprintf (stderr, "Stream VFD: accepting client connections\n");
-#endif
-    fromlen = sizeof (from);
-    while (! H5FD_STREAM_ERROR_CHECK (sock = accept (stream->socket,
-                                                     &from, &fromlen))) {
-      if (H5FD_STREAM_IOCTL_SOCKET (sock, FIONBIO, &on) < 0) {
-        H5FD_STREAM_CLOSE_SOCKET (sock);
-        continue;           /* continue the loop for other clients to connect */
-      }
-
-      size = stream->eof;
-      ptr = stream->mem;
-
-      while (size) {
-        bytes_send = send (sock, ptr, size, 0);
-        if (bytes_send < 0) {
-          if (EINTR == errno || EAGAIN == errno || EWOULDBLOCK == errno)
-            continue;
-
-          /* continue the outermost loop for other clients to connect */
-          break;
-        }
-        ptr += bytes_send;
-        size -= bytes_send;
-#ifdef DEBUG
-        fprintf (stderr, "Stream VFD: wrote %d bytes to socket, %d in total, "
-                 "%d left\n", bytes_send, (int) (ptr - stream->mem), size);
-#endif
-      }
-      H5FD_STREAM_CLOSE_SOCKET (sock);
-    }
-    stream->dirty = FALSE;
-  }
-
-done:
-  FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_close
- *
- * Purpose:       Closes the file.
- *
- * Return:        Success:        0
- *                Failure:        -1
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static herr_t
-H5FD_stream_close (H5FD_t *_stream)
-{
-  H5FD_stream_t *stream = (H5FD_stream_t *) _stream;
-    herr_t      ret_value=SUCCEED;       /* Return value */
-
-  FUNC_ENTER_NOAPI(H5FD_stream_close, FAIL)
-
-  /* Release resources */
-  if (! H5FD_STREAM_ERROR_CHECK (stream->socket) && stream->internal_socket)
-    H5FD_STREAM_CLOSE_SOCKET (stream->socket);
-  if (stream->mem)
-    H5MM_xfree (stream->mem);
-  HDmemset (stream, 0, sizeof (H5FD_stream_t));
-  H5MM_xfree (stream);
-
-done:
-  FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_query
- *
- * Purpose:       Set the flags that this VFL driver is capable of supporting.
- *                 (listed in H5FDpublic.h)
- *
- * Return:        Success:        non-negative
- *
- *                Failure:        negative
- *
- * Programmer:    Quincey Koziol
- *                Tuesday, September 26, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static herr_t
-H5FD_stream_query(const H5FD_t UNUSED * _f,
-                  unsigned long *flags/*out*/)
-{
-    herr_t ret_value=SUCCEED;   /* Return value */
-
-    FUNC_ENTER_NOAPI(H5FD_stream_query, SUCCEED)
-
-    /* Set the VFL feature flags that this driver supports */
-    if (flags) {
-        *flags = 0;
-        /* OK to perform data sieving for faster raw data reads & writes */
-        *flags |= H5FD_FEAT_DATA_SIEVE;
-        *flags|=H5FD_FEAT_AGGREGATE_SMALLDATA; /* OK to aggregate "small" raw data allocations */
-    }
-
-done:
-    FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_get_eoa
- *
- * Purpose:       Gets the end-of-address marker for the file. The EOA marker
- *                is the first address past the last byte allocated in the
- *                format address space.
- *
- * Return:        Success:        The end-of-address marker.
- *                Failure:        HADDR_UNDEF
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static haddr_t
-H5FD_stream_get_eoa (H5FD_t *_stream)
-{
-  H5FD_stream_t *stream = (H5FD_stream_t *) _stream;
-  haddr_t ret_value;            /* Return value */
-
-  FUNC_ENTER_NOAPI(H5FD_stream_get_eoa, HADDR_UNDEF)
-
-    /* Set return value */
-    ret_value=stream->eoa;
-
-done:
-  FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_set_eoa
- *
- * Purpose:       Set the end-of-address marker for the file. This function is
- *                called shortly after an existing HDF5 file is opened in order
- *                to tell the driver where the end of the HDF5 data is located.
- *
- * Return:        Success:        0
- *                Failure:        -1
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static herr_t
-H5FD_stream_set_eoa (H5FD_t *_stream, haddr_t addr)
-{
-  H5FD_stream_t        *stream = (H5FD_stream_t *) _stream;
-    herr_t      ret_value=SUCCEED;       /* Return value */
-
-  FUNC_ENTER_NOAPI(H5FD_stream_set_eoa, FAIL)
-
-  if (ADDR_OVERFLOW (addr))
-    HGOTO_ERROR (H5E_ARGS, H5E_OVERFLOW, FAIL, "address overflow")
-
-  stream->eoa = addr;
-
-done:
-  FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_get_eof
- *
- * Purpose:       Returns the end-of-file marker, which is the greater of
- *                either the size of the underlying memory or the HDF5
- *                end-of-address markers.
- *
- * Return:        Success:        End of file address, the first address past
- *                                the end of the "file", either the memory
- *                                or the HDF5 file.
- *                Failure:        HADDR_UNDEF
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static haddr_t
-H5FD_stream_get_eof (H5FD_t *_stream)
-{
-  H5FD_stream_t        *stream = (H5FD_stream_t *) _stream;
-  haddr_t ret_value;    /* Return value */
-
-  FUNC_ENTER_NOAPI(H5FD_stream_get_eof, HADDR_UNDEF)
-
-    /* Set return value */
-    ret_value= MAX (stream->eof, stream->eoa);
-
-done:
-  FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:       H5FD_stream_get_handle
- *
- * Purpose:        Returns the file handle of stream file driver.
- *
- * Returns:        Non-negative if succeed or negative if fails.
- *
- * Programmer:     Raymond Lu
- *                 Sept. 16, 2002
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static herr_t
-H5FD_stream_get_handle(H5FD_t *_file, hid_t UNUSED fapl, void** file_handle)
-{
-    H5FD_stream_t       *file = (H5FD_stream_t *)_file;
-    herr_t              ret_value = SUCCEED;
-
-    FUNC_ENTER_NOAPI(H5FD_stream_get_handle, FAIL)
-
-    if(!file_handle)
-        HGOTO_ERROR(H5E_ARGS, H5E_BADVALUE, FAIL, "file handle not valid")
-
-    *file_handle = &(file->socket);
-
-done:
-    FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_read
- *
- * Purpose:       Reads SIZE bytes of data from FILE beginning at address ADDR
- *                into buffer BUF according to data transfer properties in
- *                DXPL_ID.
- *
- * Return:        Success:        0
- *                                Result is stored in caller-supplied buffer BUF
- *                Failure:        -1
- *                                Contents of buffer BUF are undefined
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static herr_t
-H5FD_stream_read (H5FD_t *_stream,
-                    H5FD_mem_t UNUSED type,
-                    hid_t UNUSED dxpl_id,
-                    haddr_t addr,
-                    size_t size,
-                    void *buf /*out*/)
-{
-  H5FD_stream_t *stream = (H5FD_stream_t *) _stream;
-  size_t        nbytes;
-    herr_t      ret_value=SUCCEED;       /* Return value */
-
-  FUNC_ENTER_NOAPI(H5FD_stream_read, FAIL)
-
-  assert (stream && stream->pub.cls);
-  assert (buf);
-
-  /* Check for overflow conditions */
-  if (HADDR_UNDEF == addr)
-    HGOTO_ERROR (H5E_IO, H5E_OVERFLOW, FAIL, "file address overflowed")
-  if (REGION_OVERFLOW (addr, size))
-    HGOTO_ERROR (H5E_IO, H5E_OVERFLOW, FAIL, "file address overflowed")
-  if (addr + size > stream->eoa)
-    HGOTO_ERROR (H5E_IO, H5E_OVERFLOW, FAIL, "file address overflowed")
-
-  /* Read the part which is before the EOF marker */
-  if (addr < stream->eof) {
-    nbytes = MIN (size, stream->eof - addr);
-    HDmemcpy (buf, stream->mem + addr, nbytes);
-    size -= nbytes;
-    addr += nbytes;
-    buf = (char *) buf + nbytes;
-  }
-
-  /* Read zeros for the part which is after the EOF markers */
-  if (size > 0)
-    HDmemset (buf, 0, size);
-
-done:
-  FUNC_LEAVE_NOAPI(ret_value)
-}
-
-
-/*-------------------------------------------------------------------------
- * Function:      H5FD_stream_write
- *
- * Purpose:       Writes SIZE bytes of data to FILE beginning at address ADDR
- *                from buffer BUF according to data transfer properties in
- *                DXPL_ID.
- *
- * Return:        Success:        Zero
- *                Failure:        -1
- *
- * Programmer:    Thomas Radke
- *                Tuesday, September 12, 2000
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static herr_t
-H5FD_stream_write (H5FD_t *_stream,
-                     H5FD_mem_t UNUSED type,
-                     hid_t UNUSED dxpl_id,
-                     haddr_t addr,
-                     size_t size,
-                     const void *buf)
-{
-  H5FD_stream_t                *stream = (H5FD_stream_t *) _stream;
-    herr_t      ret_value=SUCCEED;       /* Return value */
-
-  FUNC_ENTER_NOAPI(H5FD_stream_write, FAIL)
-
-  assert (stream && stream->pub.cls);
-  assert (buf);
-
-  /* Check for overflow conditions */
-  if (REGION_OVERFLOW (addr, size))
-    HGOTO_ERROR (H5E_IO, H5E_OVERFLOW, FAIL, "file address overflowed")
-  if (addr + size > stream->eoa)
-    HGOTO_ERROR (H5E_IO, H5E_OVERFLOW, FAIL, "file address overflowed")
-
-  /*
-   * Allocate more memory if necessary, careful of overflow. Also, if the
-   * allocation fails then the file should remain in a usable state.  Be
-   * careful of non-Posix realloc() that doesn't understand what to do when
-   * the first argument is null.
-   */
-  if (addr + size > stream->eof) {
-    unsigned char *x;
-    haddr_t new_eof = stream->fapl.increment *
-                      ((addr+size) / stream->fapl.increment);
-
-    if ((addr+size) % stream->fapl.increment)
-      new_eof += stream->fapl.increment;
-    if (stream->mem == NULL)
-      x = H5MM_malloc ((size_t) new_eof);
-    else
-      x = H5MM_realloc (stream->mem, (size_t) new_eof);
-    if (x == NULL)
-      HGOTO_ERROR (H5E_RESOURCE, H5E_NOSPACE, FAIL, "unable to allocate memory block")
-    stream->mem = x;
-    stream->eof = new_eof;
-  }
-
-  /* Write from BUF to memory */
-  HDmemcpy (stream->mem + addr, buf, size);
-  stream->dirty = TRUE;
-
-done:
-  FUNC_LEAVE_NOAPI(ret_value)
-}
-
-#endif /* H5_HAVE_STREAM */
diff --git a/src/H5FDstream.h b/src/H5FDstream.h
deleted file mode 100644
index 00eea12..0000000
--- a/src/H5FDstream.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- * Copyright by The HDF Group.                                               *
- * Copyright by the Board of Trustees of the University of Illinois.         *
- * All rights reserved.                                                      *
- *                                                                           *
- * This file is part of HDF5.  The full HDF5 copyright notice, including     *
- * terms governing use, modification, and redistribution, is contained in    *
- * the files COPYING and Copyright.html.  COPYING can be found at the root   *
- * of the source code distribution tree; Copyright.html can be found at the  *
- * root level of an installed copy of the electronic HDF5 document set and   *
- * is linked from the top-level documents page.  It can also be found at     *
- * http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have          *
- * access to either file, you may request a copy from help at hdfgroup.org.     *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-
-/*
- * Copyright © 2000 The author.
- * The author prefers this code not be used for military purposes.
- *
- *
- * Author:  Thomas Radke <tradke at aei-potsdam.mpg.de>
- *          Tuesday, September 12, 2000
- *
- * Purpose:	The public header file for the Stream Virtual File Driver.
- *
- * Modifications:
- *          Thomas Radke, Thursday, October 26, 2000
- *          Added support for Windows.
- *
- */
-#ifndef H5FDstream_H
-#define H5FDstream_H
-
-#ifdef H5_HAVE_STREAM
-#   define H5FD_STREAM  (H5FD_stream_init())
-#else
-#   define H5FD_STREAM (-1)
-#endif /*H5_HAVE_STREAM */
-
-#ifdef H5_HAVE_STREAM
-
-/* check what sockets type we have (Unix or Windows sockets)
-   Note that only MS compilers require to use Windows sockets
-   but gcc under Windows does not. */
-#if ! defined(H5_HAVE_WINSOCK_H) || defined(__GNUC__)
-#define H5FD_STREAM_HAVE_UNIX_SOCKETS  1
-#endif
-
-/* define the data type for socket descriptors
-   and the constant indicating an invalid descriptor */
-#ifdef H5FD_STREAM_HAVE_UNIX_SOCKETS
-
-#define H5FD_STREAM_SOCKET_TYPE            int
-#define H5FD_STREAM_INVALID_SOCKET         -1
-
-#else
-#include <winsock.h>
-
-#define H5FD_STREAM_SOCKET_TYPE            SOCKET
-#define H5FD_STREAM_INVALID_SOCKET         INVALID_SOCKET
-
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* prototype for read broadcast callback routine */
-typedef int (*H5FD_stream_broadcast_t) (unsigned char **file,
-                                        haddr_t *len,
-                                        void *arg);
-
-/* driver-specific file access properties */
-typedef struct H5FD_stream_fapl_t
-{
-  size_t       increment;            /* how much to grow memory in reallocs  */
-  H5FD_STREAM_SOCKET_TYPE socket;    /* externally provided socket descriptor*/
-  hbool_t      do_socket_io;         /* do I/O on socket                     */
-  int          backlog;              /* backlog argument for listen call     */
-  H5FD_stream_broadcast_t broadcast_fn; /* READ broadcast callback           */
-  void        *broadcast_arg;        /* READ broadcast callback user argument*/
-  unsigned int maxhunt;              /* how many more ports to try to bind to*/
-  unsigned short int port;           /* port a socket was bound/connected to */
-} H5FD_stream_fapl_t;
-
-
-/* prototypes of exported functions */
-H5_DLL hid_t  H5FD_stream_init (void);
-H5_DLL void H5FD_stream_term(void);
-H5_DLL herr_t H5Pset_fapl_stream (hid_t fapl_id,
-                                   H5FD_stream_fapl_t *fapl);
-H5_DLL herr_t H5Pget_fapl_stream (hid_t fapl_id,
-                                   H5FD_stream_fapl_t *fapl /*out*/ );
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* H5_HAVE_STREAM */
-
-#endif /* H5FDstream_H */
diff --git a/src/H5Gname.c b/src/H5Gname.c
index 443da48..78c1ea0 100644
--- a/src/H5Gname.c
+++ b/src/H5Gname.c
@@ -35,6 +35,7 @@
 #include "H5FLprivate.h"	/* Free Lists                           */
 #include "H5Gpkg.h"		/* Groups		  		*/
 #include "H5Iprivate.h"		/* IDs			  		*/
+#include "H5MMprivate.h"        /* Memory wrappers                      */
 
 /* Private typedefs */
 
@@ -47,6 +48,19 @@ typedef struct H5G_names_t {
     H5RS_str_t  *dst_name;              /* Name of object relative to destination location */
 } H5G_names_t;
 
+/* Info to pass to the iteration function when building name */
+typedef struct H5G_gnba_iter_t {
+    /* In */
+    hid_t file;                 /* File ID */
+    const H5G_entry_t *loc;     /* The location of the object we're looking for */
+    hid_t dxpl_id;              /* DXPL for operations */
+
+    /* In/Out */
+    H5SL_t *grp_table;          /* Skip list for tracking visited nodes */
+
+    /* Out */
+    char *path;                 /* Name of the object */
+} H5G_gnba_iter_t;
 
 /* Private macros */
 
@@ -55,6 +69,9 @@ typedef struct H5G_names_t {
 /* Declare extern the PQ free list for the wrapped strings */
 H5FL_BLK_EXTERN(str_buf);
 
+/* Declare the free list to manage haddr_t's */
+H5FL_DEFINE_STATIC(haddr_t);
+
 /* PRIVATE PROTOTYPES */
 static htri_t H5G_common_path(const H5RS_str_t *fullpath_r, const H5RS_str_t *prefix_r);
 static H5RS_str_t *H5G_build_fullpath(const char *prefix, const char *name);
@@ -63,6 +80,10 @@ static H5RS_str_t *H5G_build_fullpath_refstr_str(H5RS_str_t *path_r, const char
 static herr_t H5G_name_move_path(H5RS_str_t **path_r_ptr,
     const char *full_suffix, const char *src_path, const char *dst_path);
 static int H5G_name_replace_cb(void *obj_ptr, hid_t obj_id, void *key);
+static herr_t H5G_free_grp_table_node(void *item, void *key, void *operator_data/*in,out*/);
+static char* H5G_string_append(char *dst, const char *src);
+static char* H5G_string_unappend(char *dst, const char *src);
+static herr_t H5G_get_name_by_addr_cb(hid_t gid, const char *path, void *_udata);
 
 
 /*-------------------------------------------------------------------------
@@ -351,33 +372,57 @@ done:
  * Programmer:	Quincey Koziol
  *              Tuesday, December 13, 2005
  *
+ * Modifications: Raymond Lu
+ * 		  15 Jan 2008
+ * 		  Added functionality to get the name for a reference data.
+ *                Borrowed most of the code from v1.8.
  *-------------------------------------------------------------------------
  */
 ssize_t
 H5G_get_name(hid_t id, char *name/*out*/, size_t size)
 {
     H5G_entry_t   *ent;       /*symbol table entry */
-    size_t        len = 0;
-    ssize_t       ret_value;
+    ssize_t       ret_value = FAIL;
 
-    FUNC_ENTER_NOAPI_NOFUNC(H5G_get_name)
+    FUNC_ENTER_NOAPI(H5G_get_name, FAIL)
 
     /* get symbol table entry */
     if(NULL != (ent = H5G_loc(id))) {
+        ssize_t        len = 0;
+
+        /* If the user path is available and it's not "hidden", use it */
         if (ent->user_path_r != NULL && ent->obj_hidden == 0) {
             len = H5RS_len(ent->user_path_r);
 
             if(name) {
-                HDstrncpy(name, H5RS_get_str(ent->user_path_r), MIN(len + 1, size));
-                if(len >= size)
+                HDstrncpy(name, H5RS_get_str(ent->user_path_r), MIN((size_t)len + 1, size));
+                if((size_t)len >= size)
                     name[size-1] = '\0';
             } /* end if */
         } /* end if */
-    } /* end if */
+	else if(!ent->obj_hidden) {
+	    hid_t	  file;
+
+            /* Retrieve file ID for name search */
+	    if((file = H5I_get_file_id(id)) < 0)
+		HGOTO_ERROR(H5E_SYM, H5E_CANTGET, FAIL, "can't retrieve file ID")
 
-    /* Set return value */
-    ret_value=(ssize_t)len;
+            /* Search for name of object */
+	    if((len = H5G_get_name_by_addr(file, H5AC_ind_dxpl_id, ent, name, size)) < 0) {
+                H5I_dec_ref(file);
+		HGOTO_ERROR(H5E_SYM, H5E_CANTGET, FAIL, "can't determine name")
+            } /* end if */
+	
+            /* Close file ID used for search */
+	    if(H5I_dec_ref(file) < 0)
+		HGOTO_ERROR(H5E_SYM, H5E_CANTCLOSEFILE, FAIL, "can't determine name")
+	} /* end else */
+
+        /* Set return value */
+        ret_value = len;
+    } /* end if */
 
+done:
     FUNC_LEAVE_NOAPI(ret_value)
 } /* end H5G_get_name() */
 
@@ -891,3 +936,328 @@ done:
     FUNC_LEAVE_NOAPI(ret_value)
 } /* end H5G_name_replace() */
 
+
+/*-------------------------------------------------------------------------
+ * Function:    H5G_free_grp_table_node
+ *
+ * Purpose:     Free the key for a group table node
+ *
+ * Return:      Non-negative on success, negative on failure
+ *
+ * Programmer:  Quincey Koziol
+ *
+ * Modifications:
+ *              Raymond Lu
+ *              22 January 2008
+ *              Borrowed this function from v1.8.
+ *-------------------------------------------------------------------------
+ */
+static herr_t
+H5G_free_grp_table_node(void *item, void UNUSED *key, void UNUSED *operator_data/*in,out*/)
+{
+    FUNC_ENTER_NOAPI_NOINIT_NOFUNC(H5G_free_grp_table_node)
+
+    H5FL_FREE(haddr_t, item);
+
+    FUNC_LEAVE_NOAPI(SUCCEED)
+} /* end H5G_free_grp_table_node() */
+
+
+/*-------------------------------------------------------------------------
+ * Function:    H5G_string_append
+ *
+ * Purpose:     Private function to append a path name.
+ *
+ * Return:      Pointer to the string being appended.
+ *              NULL on failure.
+ *
+ * Programmer:  Raymond Lu
+ *              30 January 2008
+ *-------------------------------------------------------------------------
+ */
+static char*
+H5G_string_append(char *dst, const char *src)
+{
+    size_t src_len, dst_len;
+    size_t len_needed;              /* Length of path string needed */
+    char *ret_value = NULL;    /* Return value */
+
+    FUNC_ENTER_NOAPI_NOINIT(H5G_string_append)
+
+    if(!dst)
+        dst_len = 0;
+    else
+        dst_len = strlen(dst);
+
+    if(!src)
+        src_len = 0;
+    else
+        src_len = strlen(src);
+
+    if(src_len) {
+        if(dst_len) {
+            len_needed = dst_len + src_len + 2;
+            if((dst = H5MM_realloc(dst, len_needed)) == NULL)
+                HGOTO_ERROR(H5E_SYM, H5E_NOSPACE, NULL, "can't allocate space")
+        
+            dst = strcat(dst, "/");
+            dst = strcat(dst, src);
+        } else {
+            len_needed = src_len + 1;
+            if((dst = H5MM_malloc(len_needed)) == NULL)
+                HGOTO_ERROR(H5E_SYM, H5E_NOSPACE, NULL, "can't allocate space")
+         
+            dst = strncpy(dst, src, src_len);
+            dst[len_needed-1] = '\0';
+        }
+    }
+
+    ret_value = dst;
+
+done:
+    FUNC_LEAVE_NOAPI(ret_value)
+} /* H5G_string_append */
+
+
+/*-------------------------------------------------------------------------
+ * Function:    H5G_string_unappend
+ *
+ * Purpose:     Private function to unappend a path name.
+ *
+ * Return:      Pointer to the string being unappended.
+ *              NULL on failure.
+ *
+ * Programmer:  Raymond Lu
+ *              30 January 2008
+ *-------------------------------------------------------------------------
+ */
+static char*
+H5G_string_unappend(char *dst, const char *src)
+{
+    size_t src_len, dst_len;
+    size_t len_needed;              /* Length of path string needed */
+    char *ret_value = NULL;         /* Return value */
+
+    FUNC_ENTER_NOAPI_NOINIT(H5G_string_unappend)
+
+    if(!dst)
+        dst_len = 0;
+    else
+        dst_len = strlen(dst);
+
+    if(!src)
+        src_len = 0;
+    else
+        src_len = strlen(src);
+
+    if(dst_len >= (src_len + 1))
+        len_needed = dst_len - (src_len + 1) + 1;
+    else
+        len_needed = 1;
+
+    if((dst = H5MM_realloc(dst, len_needed)) == NULL)
+        HGOTO_ERROR(H5E_SYM, H5E_NOSPACE, NULL, "can't reallocate space")
+
+    dst[len_needed - 1] = '\0';
+    ret_value = dst;
+
+done:
+    FUNC_LEAVE_NOAPI(ret_value)
+} /* H5G_string_unappend */
+
+
+/*-------------------------------------------------------------------------
+ * Function:    H5G_get_name_by_addr_cb
+ *
+ * Purpose:     Callback for retrieving object's name by address
+ *
+ * Return:      Positive if path is for object desired
+ *              0 if not correct object
+ *              negative on failure.
+ *
+ * Programmer:  Quincey Koziol
+ *              November 4 2007
+ *
+ * Modifications: 
+ *              Raymond Lu
+ *              15 Jan 2008
+ *              This function was borrowed from v1.8 with some modifications.
+ *              It's written by Quincey.
+ *-------------------------------------------------------------------------
+ */
+static herr_t
+H5G_get_name_by_addr_cb(hid_t gid, const char *path, void *_udata)
+{
+    H5G_gnba_iter_t *udata = (H5G_gnba_iter_t *)_udata; /* User data for iteration */
+    H5G_entry_t *group_ent, object_ent;
+    H5G_stat_t obj_stat;
+    int idx = 0;
+    haddr_t *new_node;                  /* New group node for table */
+    int status;                 /* Status from iteration */
+    herr_t ret_value = H5_ITER_CONT;    /* Return value */
+
+    FUNC_ENTER_NOAPI_NOINIT(H5G_get_name_by_addr_cb)
+
+    /* Sanity check */
+    HDassert(path);
+    HDassert(udata->loc);
+
+    if((group_ent = H5G_loc(gid)) == NULL)
+        HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, H5_ITER_ERROR, "bad group location")
+
+    /* To handle dangling symbolic link, return continue instead of failure */
+    if(H5G_find(group_ent, path, &object_ent, udata->dxpl_id) < 0)
+        HGOTO_DONE(H5_ITER_CONT)
+
+    /* Check for object in same file (handles mounted files) */
+    if(object_ent.header == udata->loc->header && object_ent.file == udata->loc->file) {
+        if((udata->path = H5G_string_append(udata->path, path)) == NULL)
+            HGOTO_ERROR(H5E_SYM, H5E_NOSPACE, H5_ITER_ERROR, "can't append path space")
+
+        /* Free the ID to name buffer */
+        H5G_name_free(&object_ent);
+
+        /* We found a match so we return immediately */
+        HGOTO_DONE(H5_ITER_STOP)
+    } /* end if */
+
+    /* Free the ID to name buffer */
+    H5G_name_free(&object_ent);
+
+    /* Check if we've seen this object before */
+    if(H5SL_search(udata->grp_table, &object_ent.header))
+        HGOTO_DONE(H5_ITER_CONT)
+
+    /* Allocate new path node */
+    if((new_node = H5FL_MALLOC(haddr_t)) == NULL)
+        HGOTO_ERROR(H5E_SYM, H5E_NOSPACE, H5_ITER_ERROR, "can't allocate group node")
+
+    /* Set node information */
+    *new_node = object_ent.header;
+
+    /* Insert this object into skip list */
+    if(H5SL_insert(udata->grp_table, new_node, new_node) < 0)
+        HGOTO_ERROR(H5E_SYM, H5E_CANTINSERT, H5_ITER_ERROR, "can't insert path node into table")
+
+    if(H5G_get_objinfo(group_ent, path, FALSE, &obj_stat, udata->dxpl_id) < 0)
+	HGOTO_ERROR(H5E_SYM, H5E_CANTGET, H5_ITER_ERROR, "can't get object's stat")
+
+    /* Recursively search the groups */
+    if(H5G_GROUP == obj_stat.type) {
+        /* Append the path name of the current group */
+        if((udata->path = H5G_string_append(udata->path, path)) == NULL)
+            HGOTO_ERROR(H5E_SYM, H5E_NOSPACE, H5_ITER_ERROR, "can't append path space")
+
+        /* Iterate all the links */
+        if((status = H5Giterate(gid, path, &idx, H5G_get_name_by_addr_cb, udata)) < 0)
+            HGOTO_ERROR(H5E_SYM, H5E_BADITER, FAIL, "group iteration failed while looking for object name")
+        else if(status > 0)
+            /* If the object is found */
+            HGOTO_DONE(H5_ITER_STOP)
+        else {
+            /* Chop off the path name of the current group if object isn't found */
+            if((udata->path = H5G_string_unappend(udata->path, path)) == NULL )
+                HGOTO_ERROR(H5E_SYM, H5E_NOSPACE, H5_ITER_ERROR, "can't unappend path name")
+        }
+    }
+
+done:
+    FUNC_LEAVE_NOAPI(ret_value)
+} /* end H5G_get_name_by_addr_cb() */
+
+
+/*-------------------------------------------------------------------------
+ * Function:    H5G_get_name_by_addr
+ *
+ * Purpose:     Tries to figure out the path to an object from it's address
+ *
+ * Return:      returns size of path name, and copies it into buffer
+ * 		pointed to by name if that buffer is big enough.
+ * 		0 if it cannot find the path 
+ *              negative on failure.
+ *
+ * Programmer:	Quincey Koziol
+ *		November 4 2007
+ *
+ * Modifications: 
+ *              Raymond Lu
+ *              15 Jan 2008
+ *              This function was borrowed from v1.8 with some modifications,
+ *              primarily changing H5G_visit to H5Giterate.  It's written 
+ *              by Quincey.
+ *-------------------------------------------------------------------------
+ */
+ssize_t
+H5G_get_name_by_addr(hid_t file, hid_t dxpl_id, const H5G_entry_t *loc,
+    char *name, size_t size)
+{
+    H5G_gnba_iter_t udata;      /* User data for iteration */
+    H5G_entry_t *root_loc;      /* Root group's location */
+    hbool_t found_obj = FALSE;  /* If we found the object */
+    int idx = 0;
+    int status;                 /* Status from iteration */
+    ssize_t ret_value;          /* Return value */
+
+    FUNC_ENTER_NOAPI(H5G_get_name_by_addr, FAIL)
+
+    HDmemset(&udata, 0, sizeof(H5G_gnba_iter_t));
+
+    /* Construct the link info for the file's root group */
+    if((root_loc = H5G_loc(file)) == NULL)
+	HGOTO_ERROR(H5E_SYM, H5E_CANTGET, FAIL, "can't get root group's location")
+
+    /* Check for root group being the object looked for */
+    if(root_loc->header == loc->header && root_loc->file == loc->file) {
+        udata.path = H5MM_strdup("");
+        found_obj = TRUE;
+    } /* end if */
+    else {
+        /* Set up user data for iterator */
+        udata.file = file;
+        udata.loc = loc;
+        udata.dxpl_id = dxpl_id;
+        udata.path = NULL;
+
+        /* Create skip list to keep track of visited group nodes */
+        if((udata.grp_table = H5SL_create(H5SL_TYPE_HADDR, 0.5, (size_t)16)) == NULL)
+            HGOTO_ERROR(H5E_SYM, H5E_CANTCREATE, FAIL, "can't create skip list for group nodes")
+        
+        /* Iterate all the links in the file */
+        if((status = H5Giterate(file, "/", &idx, H5G_get_name_by_addr_cb, &udata)) < 0)
+            HGOTO_ERROR(H5E_SYM, H5E_BADITER, FAIL, "group iteration failed while looking for object name")
+        else if(status > 0)
+            found_obj = TRUE;
+    } /* end else */
+
+    /* Check for finding the object */
+    if(found_obj) {
+        size_t full_path_len = HDstrlen(udata.path) + 1;        /* Length of path + 1 (for "/") */
+
+        /* Set the length of the full path */
+        ret_value = full_path_len;
+
+        /* If there's a buffer provided, copy into it, up to the limit of its size */
+        if(name) {
+            /* Copy the initial path separator */
+            HDstrcpy(name, "/");
+
+            /* Append the rest of the path */
+            /* (less one character, for the initial path separator) */
+            HDstrncat(name, udata.path, (size - 1));
+            if((size_t)ret_value >= size)
+                name[size - 1] = '\0';
+        } /* end if */
+    } /* end if */
+    else
+        ret_value = 0;
+
+done:    
+    /* Release resources */
+    H5MM_xfree(udata.path);
+
+    if(udata.grp_table)
+        H5SL_destroy(udata.grp_table, H5G_free_grp_table_node, NULL);
+
+    FUNC_LEAVE_NOAPI(ret_value)
+} /* end H5G_get_name_by_addr() */
+
diff --git a/src/H5Gprivate.h b/src/H5Gprivate.h
index 6fe4e17..75328a3 100644
--- a/src/H5Gprivate.h
+++ b/src/H5Gprivate.h
@@ -177,6 +177,8 @@ H5_DLL herr_t H5G_name_free(H5G_entry_t *ent);
 H5_DLL  herr_t H5G_name_replace(int type, H5G_entry_t *loc,
         H5RS_str_t *dst_name, H5G_entry_t *dst_loc, H5G_names_op_t op);
 H5_DLL ssize_t H5G_get_name(hid_t id, char *name/*out*/, size_t size);
+H5_DLL ssize_t H5G_get_name_by_addr(hid_t file, hid_t dxpl_id, const H5G_entry_t *loc,
+        char *name, size_t size);
 
 #endif
 
diff --git a/src/H5Gtraverse.c b/src/H5Gtraverse.c
index d421f3b..ccd2a52 100644
--- a/src/H5Gtraverse.c
+++ b/src/H5Gtraverse.c
@@ -335,13 +335,15 @@ H5G_namei(const H5G_entry_t *loc_ent, const char *name, const char **rest/*out*/
     H5G_ent_reset(grp_ent);
 
     /* Check for needing a larger buffer for the individual path name components */
-    if(HDstrlen(name) + 1 > H5G_comp_alloc_g) {
-        H5G_comp_alloc_g = MAX3(1024, 2 * H5G_comp_alloc_g, HDstrlen(name) + 1);
-        H5G_comp_g = H5MM_realloc(H5G_comp_g, H5G_comp_alloc_g);
-        if(!H5G_comp_g) {
-            H5G_comp_alloc_g = 0;
+    if((HDstrlen(name) + 1) > H5G_comp_alloc_g) {
+        char *new_comp;                 /* New component buffer */
+        size_t new_alloc;               /* New component buffer size */
+
+        new_alloc = MAX3(1024, (2 * H5G_comp_alloc_g), (HDstrlen(name) + 1));
+        if(NULL == (new_comp = H5MM_realloc(H5G_comp_g, new_alloc)))
             HGOTO_ERROR(H5E_SYM, H5E_NOSPACE, FAIL, "unable to allocate component buffer")
-        } /* end if */
+        H5G_comp_g = new_comp;
+        H5G_comp_alloc_g = new_alloc;
     } /* end if */
 
     /* traverse the name */
diff --git a/src/H5HL.c b/src/H5HL.c
index 41a361f..76775f5 100644
--- a/src/H5HL.c
+++ b/src/H5HL.c
@@ -284,9 +284,12 @@ H5HL_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, const void UNUSED * udata1,
 	if (!heap->freelist) heap->freelist = fl;
 
 	p = heap->chunk + sizeof_hdr + free_block;
+
 	H5F_DECODE_LENGTH(f, p, free_block);
-	H5F_DECODE_LENGTH(f, p, fl->size);
+	if(free_block == 0)
+	    HGOTO_ERROR(H5E_HEAP, H5E_CANTLOAD, NULL, "free block size is zero?");
 
+	H5F_DECODE_LENGTH(f, p, fl->size);
 	if (fl->offset + fl->size > heap->disk_alloc)
 	    HGOTO_ERROR(H5E_HEAP, H5E_CANTLOAD, NULL, "bad heap free list");
     }
diff --git a/src/H5I.c b/src/H5I.c
index fb59165..4b59a3b 100644
--- a/src/H5I.c
+++ b/src/H5I.c
@@ -114,7 +114,6 @@ H5FL_DEFINE_STATIC(H5I_id_info_t);
 
 /*--------------------- Local function prototypes ---------------------------*/
 static H5I_id_info_t *H5I_find_id(hid_t id);
-static hid_t H5I_get_file_id(hid_t obj_id);
 #ifdef H5I_DEBUG_OUTPUT
 static herr_t H5I_debug(H5I_type_t grp);
 #endif /* H5I_DEBUG_OUTPUT */
@@ -1464,7 +1463,7 @@ done:
  *
  *-------------------------------------------------------------------------
  */
-static hid_t
+hid_t
 H5I_get_file_id(hid_t obj_id)
 {
     H5G_entry_t         *ent;
diff --git a/src/H5Iprivate.h b/src/H5Iprivate.h
index f477570..810c893 100644
--- a/src/H5Iprivate.h
+++ b/src/H5Iprivate.h
@@ -64,6 +64,7 @@ H5_DLL herr_t H5I_destroy_group(H5I_type_t grp);
 H5_DLL hid_t H5I_register(H5I_type_t grp, void *object);
 H5_DLL void *H5I_object(hid_t id);
 H5_DLL void *H5I_object_verify(hid_t id, H5I_type_t id_type);
+H5_DLL hid_t H5I_get_file_id(hid_t);
 H5_DLL H5I_type_t H5I_get_type(hid_t id);
 H5_DLL void *H5I_remove(hid_t id);
 H5_DLL void *H5I_search(H5I_type_t grp, H5I_search_func_t func, void *key);
diff --git a/src/H5O.c b/src/H5O.c
index 764f2c4..b02ebbb 100644
--- a/src/H5O.c
+++ b/src/H5O.c
@@ -2175,7 +2175,7 @@ done:
  *
  *-------------------------------------------------------------------------
  */
-static herr_t
+herr_t
 H5O_alloc_msgs(H5O_t *oh, size_t min_alloc)
 {
     size_t old_alloc;                   /* Old number of messages allocated */
@@ -2183,7 +2183,7 @@ H5O_alloc_msgs(H5O_t *oh, size_t min_alloc)
     H5O_mesg_t *new_mesg;               /* Pointer to new message array */
     herr_t ret_value = SUCCEED; 	/* Return value */
 
-    FUNC_ENTER_NOAPI_NOINIT(H5O_alloc_msgs)
+    FUNC_ENTER_NOAPI(H5O_alloc_msgs, FAIL)
         
     /* check args */
     HDassert(oh);
diff --git a/src/H5Ocache.c b/src/H5Ocache.c
index 5e12fdc..c507a6a 100644
--- a/src/H5Ocache.c
+++ b/src/H5Ocache.c
@@ -312,9 +312,10 @@ H5O_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, const void UNUSED * _udata1,
 		oh->mesg[mesgno].dirty = TRUE;
                 merged_null_msgs++;
 	    } else {
-		/* new message */
-		if (oh->nmesgs >= nmesgs)
-		    HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, NULL, "corrupt object header - too many messages");
+		/* Check if we need to extend message table to hold the new message */
+		if(oh->nmesgs >= oh->alloc_nmesgs)
+                    if(H5O_alloc_msgs(oh, (size_t)1) < 0)
+                        HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "can't allocate more space for messages")
 		mesgno = oh->nmesgs++;
 		oh->mesg[mesgno].type = H5O_msg_class_g[id];
 		oh->mesg[mesgno].dirty = FALSE;
@@ -346,9 +347,23 @@ H5O_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, const void UNUSED * _udata1,
     if(merged_null_msgs)
 	oh->cache_info.is_dirty = TRUE;
 
+/* Don't check for the incorrect # of object header messages bug unless we've
+ * enabled strict format checking.  This allows for older files, created with
+ * a version of the library that had a bug in tracking the correct # of header
+ * messages to be read in without the library fussing about things. -QAK
+ */
+#ifdef H5_STRICT_FORMAT_CHECKS
     /* Sanity check for the correct # of messages in object header */
     if((oh->nmesgs + skipped_msgs + merged_null_msgs) != nmesgs)
         HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, NULL, "corrupt object header - too few messages")
+#else /* H5_STRICT_FORMAT_CHECKS */
+    /* Check for incorrect # of messages in object header and if we have write
+     * access on the file, flag the object header as dirty, so it gets fixed. 
+     */
+    if((oh->nmesgs + skipped_msgs + merged_null_msgs) != nmesgs &&
+            (H5F_get_intent(f) & H5F_ACC_RDWR))
+	oh->cache_info.is_dirty = TRUE;
+#endif /* H5_STRICT_FORMAT_CHECKS */
 
     /* Set return value */
     ret_value = oh;
diff --git a/src/H5Opkg.h b/src/H5Opkg.h
index 80bf320..43b06a7 100644
--- a/src/H5Opkg.h
+++ b/src/H5Opkg.h
@@ -204,6 +204,7 @@ H5_DLL herr_t H5O_free_mesg(H5O_mesg_t *mesg);
 H5_DLL void * H5O_read_real(const H5G_entry_t *ent, const H5O_msg_class_t *type,
         int sequence, void *mesg, hid_t dxpl_id);
 H5_DLL void * H5O_free_real(const H5O_msg_class_t *type, void *mesg);
+H5_DLL herr_t H5O_alloc_msgs(H5O_t *oh, size_t min_alloc);
 
 /* Shared object operators */
 H5_DLL void * H5O_shared_read(H5F_t *f, hid_t dxpl_id, H5O_shared_t *shared,
diff --git a/src/H5Shyper.c b/src/H5Shyper.c
index 81b9d1c..9aa1748 100644
--- a/src/H5Shyper.c
+++ b/src/H5Shyper.c
@@ -267,9 +267,13 @@ H5S_hyper_iter_init(H5S_sel_iter_t *iter, const H5S_t *space)
         if(iter->elmt_size>0) {
             /* Check for any "contiguous" blocks that can be flattened */
             for(u=rank-1; u>0; u--) {
-                if(tdiminfo[u].count==1 && tdiminfo[u].block==mem_size[u])
+                if(tdiminfo[u].count==1 && tdiminfo[u].block==mem_size[u]) {
                     cont_dim++;
+                    iter->u.hyp.flattened[u] = TRUE;
+                } else 
+                    iter->u.hyp.flattened[u] = FALSE;
             } /* end for */
+            iter->u.hyp.flattened[0] = FALSE;
         } /* end if */
 
         /* Check if the regular selection can be "flattened" */
@@ -402,7 +406,9 @@ H5S_hyper_iter_init(H5S_sel_iter_t *iter, const H5S_t *space)
  *              Tuesday, April 22, 2003
  *
  * Modifications:
- *
+ *              Raymond Lu
+ *              9 January 2008
+ *              Modified the algorithm to cover general cases.
  *-------------------------------------------------------------------------
  */
 static herr_t
@@ -419,23 +425,59 @@ H5S_hyper_iter_coords (const H5S_sel_iter_t *iter, hsize_t *coords)
     /* Check for a single "regular" hyperslab */
     if(iter->u.hyp.diminfo_valid) {
         /* Check if this is a "flattened" regular hyperslab selection */
-        if(iter->u.hyp.iter_rank!=0 && iter->u.hyp.iter_rank<iter->rank) {
-            unsigned flat_dim;  /* The rank of the flattened dimension */
+        if(iter->u.hyp.iter_rank != 0 && iter->u.hyp.iter_rank < iter->rank) {
+            int u, v;           /* Dimension indices */
+
+            /* Set the starting rank of both the "natural" & "flattened" dimensions */
+            u = iter->rank - 1;
+            v = iter->u.hyp.iter_rank - 1;
+
+            /* Construct the "natural" dimensions from a set of flattened coordinates */
+            while(u >= 0) {
+                if(iter->u.hyp.flattened[u]) {
+                    int begin = u;      /* The rank of the first flattened dimension */
+
+                    /* Walk up through as many flattened dimensions as possible */
+                    do {
+                        u--;
+                    } while(u >= 0 && iter->u.hyp.flattened[u]);
 
-            /* Get the rank of the flattened dimension */
-            flat_dim=iter->u.hyp.iter_rank-1;
+                    /* Compensate for possibly overshooting dim 0 */
+                    if(u < 0)
+                        u = 0;
 
-            /* Copy the coordinates up to where things got flattened */
-            HDmemcpy(coords,iter->u.hyp.off,sizeof(hsize_t)*flat_dim);
+                    /* Sanity check */
+                    HDassert(v >= 0);
 
-            /* Compute the coordinates for the flattened dimensions */
-            H5V_array_calc(iter->u.hyp.off[flat_dim],iter->rank-flat_dim,&(iter->dims[flat_dim]),&(coords[flat_dim]));
+                    /* Compute the coords for the flattened dimensions */
+                    H5V_array_calc(iter->u.hyp.off[v], (unsigned)((begin - u) + 1), &(iter->dims[u]), &(coords[u]));
+
+                    /* Continue to faster dimension in both indices */
+                    u--;
+                    v--;
+                } /* end if */
+                else {
+                    /* Walk up through as many non-flattened dimensions as possible */
+                    while(u >= 0 && !iter->u.hyp.flattened[u]) {
+                        /* Sanity check */
+                        HDassert(v >= 0);
+
+                        /* Copy the coordinate */
+                        coords[u] = iter->u.hyp.off[v];
+
+                        /* Continue to faster dimension in both indices */
+                        u--;
+                        v--;
+                    } /* end while */
+                } /* end else */
+            } /* end while */
+            HDassert(v < 0);
         } /* end if */
         else
-            HDmemcpy(coords,iter->u.hyp.off,sizeof(hsize_t)*iter->rank);
+            HDmemcpy(coords, iter->u.hyp.off, sizeof(hsize_t) * iter->rank);
     } /* end if */
     else
-        HDmemcpy(coords,iter->u.hyp.off,sizeof(hsize_t)*iter->rank);
+        HDmemcpy(coords, iter->u.hyp.off, sizeof(hsize_t) * iter->rank);
 
     FUNC_LEAVE_NOAPI(SUCCEED);
 }   /* H5S_hyper_iter_coords() */
diff --git a/src/H5Spoint.c b/src/H5Spoint.c
index dd644d8..d62b5a6 100644
--- a/src/H5Spoint.c
+++ b/src/H5Spoint.c
@@ -378,10 +378,9 @@ H5S_point_iter_release (H5S_sel_iter_t UNUSED * iter)
  REVISION LOG
 --------------------------------------------------------------------------*/
 static herr_t
-H5S_point_add (H5S_t *space, H5S_seloper_t op, size_t num_elem, const hsize_t **_coord)
+H5S_point_add (H5S_t *space, H5S_seloper_t op, size_t num_elem, const hsize_t *coord)
 {
     H5S_pnt_node_t *top, *curr, *new_node; /* Point selection nodes */
-    const hsize_t *coord=(const hsize_t *)_coord;     /* Pointer to the actual coordinates */
     unsigned i;                 /* Counter */
     herr_t      ret_value=SUCCEED;       /* Return value */
 
@@ -503,7 +502,7 @@ H5S_point_release (H5S_t *space)
         hid_t dsid;             IN: Dataspace ID of selection to modify
         H5S_seloper_t op;       IN: Operation to perform on current selection
         size_t num_elem;        IN: Number of elements in COORD array.
-        const hsize_t **coord; IN: The location of each element selected
+        const hsize_t *coord;   IN: The location of each element selected
  RETURNS
     Non-negative on success/Negative on failure
  DESCRIPTION
@@ -525,7 +524,7 @@ H5S_point_release (H5S_t *space)
 --------------------------------------------------------------------------*/
 herr_t
 H5S_select_elements (H5S_t *space, H5S_seloper_t op, size_t num_elem,
-    const hsize_t **coord)
+    const hsize_t *coord)
 {
     herr_t ret_value=SUCCEED;  /* return value */
 
@@ -1204,7 +1203,7 @@ H5S_point_is_regular(const H5S_t *space)
         hid_t dsid;             IN: Dataspace ID of selection to modify
         H5S_seloper_t op;       IN: Operation to perform on current selection
         size_t num_elem;        IN: Number of elements in COORD array.
-        const hsize_t **coord; IN: The location of each element selected
+        const hsize_t *coord;   IN: The location of each element selected
  RETURNS
     Non-negative on success/Negative on failure
  DESCRIPTION
@@ -1226,13 +1225,13 @@ H5S_point_is_regular(const H5S_t *space)
 --------------------------------------------------------------------------*/
 herr_t
 H5Sselect_elements(hid_t spaceid, H5S_seloper_t op, size_t num_elem,
-    const hsize_t **coord)
+    const hsize_t *coord)
 {
     H5S_t	*space = NULL;  /* Dataspace to modify selection of */
     herr_t ret_value;  /* return value */
 
     FUNC_ENTER_API(H5Sselect_elements, FAIL);
-    H5TRACE4("e","iSsz**h",spaceid,op,num_elem,coord);
+    H5TRACE4("e","iSsz*h",spaceid,op,num_elem,coord);
 
     /* Check args */
     if (NULL == (space=H5I_object_verify(spaceid, H5I_DATASPACE)))
diff --git a/src/H5Sprivate.h b/src/H5Sprivate.h
index 779bd56..2c3670b 100644
--- a/src/H5Sprivate.h
+++ b/src/H5Sprivate.h
@@ -78,6 +78,7 @@ typedef struct {
     H5S_hyper_dim_t diminfo[H5S_MAX_RANK];   /* "Flattened" regular selection information */
     hsize_t size[H5S_MAX_RANK];          /* "Flattened" dataspace extent information */
     hssize_t sel_off[H5S_MAX_RANK];      /* "Flattened" selection offset information */
+    hbool_t flattened[H5S_MAX_RANK];    /* Whether this dimension has been flattened */
 
     /* Irregular hyperslab selection fields */
     H5S_hyper_span_info_t *spans;  /* Pointer to copy of the span tree */
@@ -246,7 +247,7 @@ H5_DLL herr_t H5S_select_none(H5S_t *space);
 
 /* Operations on point selections */
 H5_DLL herr_t H5S_select_elements (H5S_t *space, H5S_seloper_t op,
-    size_t num_elem, const hsize_t **coord);
+    size_t num_elem, const hsize_t *coord);
 
 /* Operations on hyperslab selections */
 H5_DLL herr_t H5S_select_hyperslab (H5S_t *space, H5S_seloper_t op, const hsize_t start[],
diff --git a/src/H5Spublic.h b/src/H5Spublic.h
index b7d23ed..c992064 100644
--- a/src/H5Spublic.h
+++ b/src/H5Spublic.h
@@ -112,8 +112,7 @@ H5_DLL herr_t H5Sselect_hyperslab(hid_t space_id, H5S_seloper_t op,
 				   const hsize_t count[],
 				   const hsize_t _block[]);
 H5_DLL herr_t H5Sselect_elements(hid_t space_id, H5S_seloper_t op,
-				  size_t num_elemn,
-				  const hsize_t **coord);
+    size_t num_elem, const hsize_t *coord);
 H5_DLL H5S_class_t H5Sget_simple_extent_type(hid_t space_id);
 H5_DLL herr_t H5Sset_extent_none(hid_t space_id);
 H5_DLL herr_t H5Sextent_copy(hid_t dst_id,hid_t src_id);
diff --git a/src/H5Zdeflate.c b/src/H5Zdeflate.c
index eaec787..646ce53 100644
--- a/src/H5Zdeflate.c
+++ b/src/H5Zdeflate.c
@@ -115,18 +115,21 @@ H5Z_filter_deflate (unsigned flags, size_t cd_nelmts,
 	    }
             else {
                 /* If we're not done and just ran out of buffer space, get more */
-                if (0==z_strm.avail_out) {
+                if(0 == z_strm.avail_out) {
+                    void	*new_outbuf;         /* Pointer to new output buffer */
+
                     /* Allocate a buffer twice as big */
                     nalloc *= 2;
-                    if (NULL==(outbuf = H5MM_realloc(outbuf, nalloc))) {
+                    if(NULL == (new_outbuf = H5MM_realloc(outbuf, nalloc))) {
                         (void)inflateEnd(&z_strm);
                         HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, 0, "memory allocation failed for deflate uncompression")
-                    }
+                    } /* end if */
+                    outbuf = new_outbuf;
 
                     /* Update pointers to buffer for next set of uncompressed data */
                     z_strm.next_out = (unsigned char*)outbuf + z_strm.total_out;
                     z_strm.avail_out = (uInt)(nalloc - z_strm.total_out);
-                }
+                } /* end if */
             } /* end else */
 	} while(status==Z_OK);
 
diff --git a/src/H5config.h.in b/src/H5config.h.in
index c34a7c0..85456f5 100644
--- a/src/H5config.h.in
+++ b/src/H5config.h.in
@@ -222,12 +222,6 @@
 /* Define if MPI_File_get_size works correctly */
 #undef HAVE_MPI_GET_SIZE
 
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#undef HAVE_NETINET_IN_H
-
-/* Define to 1 if you have the <netinet/tcp.h> header file. */
-#undef HAVE_NETINET_TCP_H
-
 /* Define if we have parallel support */
 #undef HAVE_PARALLEL
 
@@ -249,9 +243,6 @@
 /* Define to 1 if you have the `snprintf' function. */
 #undef HAVE_SNPRINTF
 
-/* Define if `socklen_t' is defined */
-#undef HAVE_SOCKLEN_T
-
 /* Define if the SRB is defined */
 #undef HAVE_SRB
 
@@ -273,9 +264,6 @@
 /* Define to 1 if you have the `strdup' function. */
 #undef HAVE_STRDUP
 
-/* Define if the stream virtual file driver should be compiled */
-#undef HAVE_STREAM
-
 /* Define to 1 if you have the <strings.h> header file. */
 #undef HAVE_STRINGS_H
 
@@ -297,9 +285,6 @@
 /* Define to 1 if you have the `system' function. */
 #undef HAVE_SYSTEM
 
-/* Define to 1 if you have the <sys/filio.h> header file. */
-#undef HAVE_SYS_FILIO_H
-
 /* Define to 1 if you have the <sys/fpu.h> header file. */
 #undef HAVE_SYS_FPU_H
 
@@ -520,6 +505,9 @@
 /* Define to 1 if you have the ANSI C header files. */
 #undef STDC_HEADERS
 
+/* Define if strict file format checks are enabled */
+#undef STRICT_FORMAT_CHECKS
+
 /* Define if your system supports pthread_attr_setscope(&attribute,
    PTHREAD_SCOPE_SYSTEM) call. */
 #undef SYSTEM_SCOPE_THREADS
diff --git a/src/H5public.h b/src/H5public.h
index 0364221..8209de6 100644
--- a/src/H5public.h
+++ b/src/H5public.h
@@ -75,10 +75,10 @@ extern "C" {
 /* Version numbers */
 #define H5_VERS_MAJOR	1	/* For major interface/format changes  	     */
 #define H5_VERS_MINOR	6	/* For minor interface/format changes  	     */
-#define H5_VERS_RELEASE	6	/* For tweaks, bug-fixes, or development     */
+#define H5_VERS_RELEASE	7	/* For tweaks, bug-fixes, or development     */
 #define H5_VERS_SUBRELEASE ""	/* For pre-releases like snap0       */
 				/* Empty string for real releases.           */
-#define H5_VERS_INFO    "HDF5 library version: 1.6.6"      /* Full version string */
+#define H5_VERS_INFO    "HDF5 library version: 1.6.7"      /* Full version string */
 
 #define H5check()	H5check_version(H5_VERS_MAJOR,H5_VERS_MINOR,	      \
 				        H5_VERS_RELEASE)
@@ -211,6 +211,14 @@ typedef ssize_t			hssize_t;
 #endif
 #define HADDR_MAX		(HADDR_UNDEF-1)
 
+/* Iteration callback values */
+/* (Actually, any postive value will cause the iterator to stop and pass back
+ *      that positive value to the function that called the iterator)
+ */
+#define H5_ITER_ERROR   (-1)
+#define H5_ITER_CONT    (0)
+#define H5_ITER_STOP    (1)
+
 /* Functions in H5.c */
 H5_DLL herr_t H5open(void);
 H5_DLL herr_t H5close(void);
diff --git a/src/Makefile.in b/src/Makefile.in
index 4d9b78d..fdeb98f 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -37,7 +37,7 @@ LIB_SRC=H5.c H5A.c H5AC.c H5B.c H5Bcache.c H5C.c H5D.c H5Dcontig.c \
         H5Fdbg.c H5Fmount.c H5Fsfile.c H5Fsuper.c H5FD.c \
         H5FDcore.c H5FDfamily.c H5FDgass.c H5FDlog.c H5FDmpi.c H5FDmpio.c     \
         H5FDmpiposix.c H5FDmulti.c H5FDsec2.c H5FDsrb.c H5FDstdio.c           \
-        H5FDstream.c H5FL.c H5FO.c H5FS.c H5G.c H5Gent.c H5Gname.c \
+        H5FL.c H5FO.c H5FS.c H5G.c H5Gent.c H5Gname.c \
         H5Gnode.c H5Gstab.c  \
         H5Gtest.c H5Gtraverse.c \
         H5HG.c H5HGdbg.c H5HL.c H5HLdbg.c H5HP.c H5I.c H5MF.c H5MM.c H5O.c    \
@@ -63,7 +63,7 @@ PUB_HDR=H5public.h H5Apublic.h H5ACpublic.h H5Bpublic.h H5Cpublic.h           \
         H5Dpublic.h \
         H5Epublic.h H5Fpublic.h H5FDpublic.h H5FDcore.h H5FDfamily.h          \
         H5FDgass.h H5FDlog.h H5FDmpi.h H5FDmpio.h H5FDmpiposix.h              \
-        H5FDmulti.h H5FDsec2.h H5FDsrb.h H5FDstdio.h H5FDstream.h             \
+        H5FDmulti.h H5FDsec2.h H5FDsrb.h H5FDstdio.h \
         H5Gpublic.h H5HGpublic.h H5HLpublic.h H5Ipublic.h                     \
         H5MMpublic.h H5Opublic.h H5Ppublic.h H5Rpublic.h H5Spublic.h          \
         H5Tpublic.h H5Zpublic.h H5pubconf.h hdf5.h H5api_adpt.h
diff --git a/src/hdf5.h b/src/hdf5.h
index 29df6c2..8757022 100644
--- a/src/hdf5.h
+++ b/src/hdf5.h
@@ -51,6 +51,5 @@
 #include "H5FDsec2.h"		/* POSIX unbuffered file I/O		*/
 #include "H5FDsrb.h"        	/* Remote access using SRB              */
 #include "H5FDstdio.h"		/* Standard C buffered I/O		*/
-#include "H5FDstream.h"     	/* In-memory files streamed via sockets */
 
 #endif
diff --git a/test/Dependencies b/test/Dependencies
index af96baf..bbe3463 100644
--- a/test/Dependencies
+++ b/test/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -51,7 +51,6 @@ h5test.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 testframe.lo: \
@@ -65,6 +64,7 @@ testframe.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -93,8 +93,7 @@ testframe.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 big.lo: \
    $(srcdir)/big.c \
    $(srcdir)/h5test.h \
@@ -131,7 +130,6 @@ big.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 bittests.lo: \
@@ -170,11 +168,11 @@ bittests.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Tpkg.h \
    $(top_srcdir)/src/H5Tprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Gprivate.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
@@ -221,10 +219,10 @@ cache.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Iprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5SLprivate.h \
    $(top_srcdir)/src/H5Cprivate.h \
    $(top_srcdir)/src/H5Cpublic.h \
@@ -279,7 +277,7 @@ cmpd_dset.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5private.h
 dsets.lo: \
    $(srcdir)/dsets.c \
    $(srcdir)/h5test.h \
@@ -316,7 +314,6 @@ dsets.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Zpkg.h \
@@ -357,11 +354,11 @@ dtypes.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Tpkg.h \
    $(top_srcdir)/src/H5Tprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Gprivate.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
@@ -408,7 +405,6 @@ extend.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 external.lo: \
@@ -447,7 +443,6 @@ external.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 fillval.lo: \
@@ -486,7 +481,6 @@ fillval.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 flush1.lo: \
@@ -525,7 +519,6 @@ flush1.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 flush2.lo: \
@@ -564,7 +557,6 @@ flush2.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 gheap.lo: \
@@ -603,14 +595,15 @@ gheap.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Fprivate.h \
    $(top_srcdir)/src/H5Gprivate.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
+   $(top_srcdir)/src/H5Fprivate.h \
    $(top_srcdir)/src/H5Cprivate.h \
    $(top_srcdir)/src/H5Cpublic.h \
    $(top_srcdir)/src/H5FLprivate.h \
@@ -621,6 +614,7 @@ gheap.lo: \
    $(top_srcdir)/src/H5Pprivate.h \
    $(top_srcdir)/src/H5Oprivate.h \
    $(top_srcdir)/src/H5Tprivate.h \
+   $(top_srcdir)/src/H5Gprivate.h \
    $(top_srcdir)/src/H5Rprivate.h \
    $(top_srcdir)/src/H5Zprivate.h
 hyperslab.lo: \
@@ -659,10 +653,10 @@ hyperslab.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Vprivate.h
 istore.lo: \
    $(srcdir)/istore.c \
@@ -700,13 +694,13 @@ istore.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Dprivate.h \
    $(top_srcdir)/src/H5FDprivate.h \
    $(top_srcdir)/src/H5Oprivate.h \
    $(top_srcdir)/src/H5Tprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Gprivate.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
@@ -718,12 +712,16 @@ istore.lo: \
    $(top_srcdir)/src/H5RSprivate.h \
    $(top_srcdir)/src/H5Rprivate.h \
    $(top_srcdir)/src/H5Zprivate.h \
+   $(top_srcdir)/src/H5Sprivate.h \
+   $(top_srcdir)/src/H5Pprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Iprivate.h \
    $(top_srcdir)/src/H5Pprivate.h \
    $(top_srcdir)/src/H5Fpkg.h \
    $(top_srcdir)/src/H5FOprivate.h \
    $(top_srcdir)/src/H5SLprivate.h \
+   $(top_srcdir)/src/H5Gprivate.h \
+   $(top_srcdir)/src/H5Oprivate.h \
    $(top_srcdir)/src/H5Vprivate.h
 lheap.lo: \
    $(srcdir)/lheap.c \
@@ -761,10 +759,10 @@ lheap.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5HLprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Fprivate.h \
    $(top_srcdir)/src/H5Iprivate.h
 links.lo: \
@@ -803,10 +801,10 @@ links.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Gprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
    $(top_srcdir)/src/H5Fprivate.h \
@@ -851,11 +849,11 @@ mount.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Fprivate.h \
-   $(top_srcdir)/src/H5Iprivate.h
+   $(top_srcdir)/src/H5Iprivate.h \
+   $(top_srcdir)/src/H5private.h
 mtime.lo: \
    $(srcdir)/mtime.c \
    $(srcdir)/h5test.h \
@@ -892,7 +890,6 @@ mtime.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 ohdr.lo: \
@@ -931,10 +928,10 @@ ohdr.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Iprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Opkg.h \
    $(top_srcdir)/src/H5Oprivate.h \
    $(top_srcdir)/src/H5Tprivate.h \
@@ -986,11 +983,11 @@ stab.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Gpkg.h \
    $(top_srcdir)/src/H5Gprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
    $(top_srcdir)/src/H5Fprivate.h \
@@ -1014,6 +1011,7 @@ tarray.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1042,8 +1040,7 @@ tarray.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 tattr.lo: \
    $(srcdir)/tattr.c \
    $(srcdir)/testhdf5.h \
@@ -1055,6 +1052,7 @@ tattr.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1083,8 +1081,7 @@ tattr.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 tconfig.lo: \
    $(srcdir)/tconfig.c \
    $(top_srcdir)/src/hdf5.h \
@@ -1120,11 +1117,11 @@ tconfig.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/testhdf5.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h
 testhdf5.lo: \
    $(srcdir)/testhdf5.c \
@@ -1137,6 +1134,7 @@ testhdf5.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1165,8 +1163,7 @@ testhdf5.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 testmeta.lo: \
    $(srcdir)/testmeta.c \
    $(top_srcdir)/src/hdf5.h \
@@ -1201,8 +1198,7 @@ testmeta.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 tfile.lo: \
    $(srcdir)/tfile.c \
    $(top_srcdir)/src/hdf5.h \
@@ -1238,11 +1234,11 @@ tfile.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/testhdf5.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
@@ -1255,6 +1251,7 @@ tfile.lo: \
    $(top_srcdir)/src/H5Oprivate.h \
    $(top_srcdir)/src/H5Tprivate.h \
    $(top_srcdir)/src/H5Gprivate.h \
+   $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5RSprivate.h \
    $(top_srcdir)/src/H5Rprivate.h \
    $(top_srcdir)/src/H5Zprivate.h
@@ -1269,6 +1266,7 @@ tgenprop.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1298,7 +1296,6 @@ tgenprop.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5Dprivate.h \
    $(top_srcdir)/src/H5FDprivate.h \
    $(top_srcdir)/src/H5Oprivate.h \
@@ -1314,8 +1311,9 @@ tgenprop.lo: \
    $(top_srcdir)/src/H5RSprivate.h \
    $(top_srcdir)/src/H5Rprivate.h \
    $(top_srcdir)/src/H5Zprivate.h \
-   $(top_srcdir)/src/H5Ppkg.h \
+   $(top_srcdir)/src/H5Sprivate.h \
    $(top_srcdir)/src/H5Pprivate.h \
+   $(top_srcdir)/src/H5Ppkg.h \
    $(top_srcdir)/src/H5SLprivate.h
 th5s.lo: \
    $(srcdir)/th5s.c \
@@ -1328,6 +1326,7 @@ th5s.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1357,7 +1356,6 @@ th5s.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
    $(top_srcdir)/src/H5Fprivate.h \
@@ -1366,14 +1364,14 @@ th5s.lo: \
    $(top_srcdir)/src/H5FLprivate.h \
    $(top_srcdir)/src/H5RCprivate.h \
    $(top_srcdir)/src/H5Sprivate.h \
-   $(top_srcdir)/src/H5Dprivate.h \
-   $(top_srcdir)/src/H5FDprivate.h \
-   $(top_srcdir)/src/H5Oprivate.h \
-   $(top_srcdir)/src/H5Tprivate.h \
    $(top_srcdir)/src/H5Gprivate.h \
+   $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5RSprivate.h \
+   $(top_srcdir)/src/H5Oprivate.h \
+   $(top_srcdir)/src/H5Tprivate.h \
    $(top_srcdir)/src/H5Rprivate.h \
    $(top_srcdir)/src/H5Zprivate.h \
+   $(top_srcdir)/src/H5Pprivate.h \
    $(top_srcdir)/src/H5Pprivate.h
 theap.lo: \
    $(srcdir)/theap.c \
@@ -1386,6 +1384,7 @@ theap.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1415,7 +1414,6 @@ theap.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5HPprivate.h
 titerate.lo: \
    $(srcdir)/titerate.c \
@@ -1428,6 +1426,7 @@ titerate.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1456,8 +1455,7 @@ titerate.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 tmeta.lo: \
    $(srcdir)/tmeta.c \
    $(srcdir)/testhdf5.h \
@@ -1469,6 +1467,7 @@ tmeta.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1498,7 +1497,6 @@ tmeta.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5Fprivate.h
 tmisc.lo: \
    $(srcdir)/tmisc.c \
@@ -1535,11 +1533,11 @@ tmisc.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/testhdf5.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/H5Dpkg.h \
    $(top_srcdir)/src/H5Dprivate.h \
@@ -1570,6 +1568,7 @@ trefer.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1598,8 +1597,7 @@ trefer.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 trefstr.lo: \
    $(srcdir)/trefstr.c \
    $(srcdir)/testhdf5.h \
@@ -1611,6 +1609,7 @@ trefstr.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1640,7 +1639,6 @@ trefstr.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5FLprivate.h \
    $(top_srcdir)/src/H5RSprivate.h
 tselect.lo: \
@@ -1654,6 +1652,7 @@ tselect.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1683,22 +1682,19 @@ tselect.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5Spkg.h \
    $(top_srcdir)/src/H5Sprivate.h \
-   $(top_srcdir)/src/H5Dprivate.h \
-   $(top_srcdir)/src/H5FDprivate.h \
-   $(top_srcdir)/src/H5Oprivate.h \
-   $(top_srcdir)/src/H5Tprivate.h \
+   $(top_srcdir)/src/H5Fprivate.h \
    $(top_srcdir)/src/H5Gprivate.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
-   $(top_srcdir)/src/H5Fprivate.h \
    $(top_srcdir)/src/H5Cprivate.h \
    $(top_srcdir)/src/H5Cpublic.h \
    $(top_srcdir)/src/H5FLprivate.h \
    $(top_srcdir)/src/H5RCprivate.h \
    $(top_srcdir)/src/H5RSprivate.h \
+   $(top_srcdir)/src/H5Oprivate.h \
+   $(top_srcdir)/src/H5Tprivate.h \
    $(top_srcdir)/src/H5Rprivate.h \
    $(top_srcdir)/src/H5Zprivate.h \
    $(top_srcdir)/src/H5Pprivate.h
@@ -1713,6 +1709,7 @@ tskiplist.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1742,7 +1739,6 @@ tskiplist.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5SLprivate.h
 ttime.lo: \
    $(srcdir)/ttime.c \
@@ -1755,6 +1751,7 @@ ttime.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1783,8 +1780,7 @@ ttime.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 ttst.lo: \
    $(srcdir)/ttst.c \
    $(srcdir)/testhdf5.h \
@@ -1796,6 +1792,7 @@ ttst.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1825,7 +1822,6 @@ ttst.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5STprivate.h
 tvltypes.lo: \
    $(srcdir)/tvltypes.c \
@@ -1838,6 +1834,7 @@ tvltypes.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1867,7 +1864,23 @@ tvltypes.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5Dprivate.h \
+   $(top_srcdir)/src/H5FDprivate.h \
+   $(top_srcdir)/src/H5Oprivate.h \
+   $(top_srcdir)/src/H5Tprivate.h \
+   $(top_srcdir)/src/H5Gprivate.h \
+   $(top_srcdir)/src/H5Bprivate.h \
+   $(top_srcdir)/src/H5ACprivate.h \
+   $(top_srcdir)/src/H5Fprivate.h \
+   $(top_srcdir)/src/H5Cprivate.h \
+   $(top_srcdir)/src/H5Cpublic.h \
+   $(top_srcdir)/src/H5FLprivate.h \
+   $(top_srcdir)/src/H5RCprivate.h \
+   $(top_srcdir)/src/H5RSprivate.h \
+   $(top_srcdir)/src/H5Rprivate.h \
+   $(top_srcdir)/src/H5Zprivate.h \
+   $(top_srcdir)/src/H5Sprivate.h \
+   $(top_srcdir)/src/H5Pprivate.h
 tvlstr.lo: \
    $(srcdir)/tvlstr.c \
    $(srcdir)/testhdf5.h \
@@ -1879,6 +1892,7 @@ tvlstr.lo: \
    $(top_srcdir)/src/H5Eprivate.h \
    $(top_srcdir)/src/H5Epublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
@@ -1907,8 +1921,7 @@ tvlstr.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 unlink.lo: \
    $(srcdir)/unlink.c \
    $(srcdir)/h5test.h \
@@ -1945,7 +1958,6 @@ unlink.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 enum.lo: \
@@ -1984,7 +1996,6 @@ enum.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 ttsafe.lo: \
@@ -2023,11 +2034,11 @@ ttsafe.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(srcdir)/ttsafe.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/testhdf5.h
 ttsafe_dcreate.lo: \
    $(srcdir)/ttsafe_dcreate.c \
@@ -2065,10 +2076,10 @@ ttsafe_dcreate.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/testhdf5.h \
    $(srcdir)/h5test.h
 ttsafe_error.lo: \
@@ -2107,10 +2118,10 @@ ttsafe_error.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/testhdf5.h \
    $(srcdir)/h5test.h
 ttsafe_cancel.lo: \
@@ -2149,10 +2160,10 @@ ttsafe_cancel.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/testhdf5.h \
    $(srcdir)/h5test.h
 ttsafe_acreate.lo: \
@@ -2191,10 +2202,10 @@ ttsafe_acreate.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Eprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/testhdf5.h \
    $(srcdir)/h5test.h
 gass_write.lo: \
@@ -2233,7 +2244,6 @@ gass_write.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 gass_read.lo: \
@@ -2272,7 +2282,6 @@ gass_read.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 gass_append.lo: \
@@ -2311,7 +2320,6 @@ gass_append.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 srb_read.lo: \
@@ -2350,7 +2358,6 @@ srb_read.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 srb_write.lo: \
@@ -2389,7 +2396,6 @@ srb_write.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 srb_append.lo: \
@@ -2428,45 +2434,8 @@ srb_append.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
-stream_test.lo: \
-   $(srcdir)/stream_test.c \
-   $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
 set_extent.lo: \
    $(srcdir)/set_extent.c \
    $(top_srcdir)/src/hdf5.h \
@@ -2502,7 +2471,6 @@ set_extent.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/h5test.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
@@ -2542,11 +2510,11 @@ getname.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Gpkg.h \
    $(top_srcdir)/src/H5Gprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
    $(top_srcdir)/src/H5Fprivate.h \
@@ -2595,7 +2563,6 @@ file_handle.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 ntypes.lo: \
@@ -2634,7 +2601,6 @@ ntypes.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 dangle.lo: \
@@ -2673,7 +2639,6 @@ dangle.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 reserved.lo: \
@@ -2712,6 +2677,5 @@ reserved.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
diff --git a/test/Makefile.in b/test/Makefile.in
index 297d06b..9189ce4 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -28,7 +28,7 @@ CPPFLAGS=-I. -I$(srcdir) -I../src -I$(top_srcdir)/src @CPPFLAGS@
 TEST_PROGS=testhdf5 lheap ohdr stab gheap cache hyperslab istore bittests    \
     dtypes dsets cmpd_dset extend external links unlink big mtime fillval    \
     mount flush1 flush2 enum gass_write gass_read gass_append set_extent     \
-    srb_write srb_append srb_read ttsafe stream_test getname file_handle     \
+    srb_write srb_append srb_read ttsafe getname file_handle     \
     ntypes dangle reserved
 
 TIMINGS=testmeta
@@ -51,7 +51,7 @@ MOSTLYCLEAN=cmpd_dset.h5 compact_dataset.h5 dataset.h5 extend.h5 istore.h5   \
             tfile[1-3].h5 th5s1.h5 th5s3.h5 lheap.h5 ohdr.h5 stab[1-2].h5 \
             extern_[1-3].h5 extern_[1-4][ab].raw gheap[0-4].h5      \
             links.h5 links[1-3].h5 big.data big[0-9][0-9][0-9][0-9][0-9].h5  \
-            sec2.h5 stdio.h5 dtypes[1-7].h5 tattr.h5          \
+            sec2.h5 stdio.h5 dtypes[1-7].h5 tattr.h5 coord.h5         \
             tselect.h5 mtime.h5 unlink.h5 fillval_[0-9].h5 fillval.raw       \
             mount_[0-9].h5 testmeta.h5 ttime.h5 trefer[1-3].h5 tvltypes.h5   \
             tvlstr.h5 tvlstr2.h5 flush.h5 enum1.h5 titerate.h5 ttsafe.h5     \
@@ -74,12 +74,12 @@ CLEAN=$(TIMINGS)
 TEST_SRC=big.c bittests.c cache.c cmpd_dset.c dsets.c dtypes.c extend.c      \
     external.c fillval.c flush1.c flush2.c gheap.c h5test.c hyperslab.c      \
     istore.c lheap.c links.c mount.c mtime.c ohdr.c stab.c tarray.c          \
-    tattr.c tconfig.c testhdf5.c testmeta.c tfile.c                          \
+    tattr.c tconfig.c tcoords.c testhdf5.c testmeta.c tfile.c                \
     tgenprop.c th5s.c theap.c titerate.c tmeta.c tmisc.c trefer.c trefstr.c  \
     tselect.c tskiplist.c ttime.c ttst.c tvltypes.c tvlstr.c                 \
     unlink.c enum.c ttsafe.c ttsafe_dcreate.c ttsafe_error.c                 \
     ttsafe_cancel.c ttsafe_acreate.c gass_write.c gass_read.c                \
-    gass_append.c srb_read.c srb_write.c srb_append.c stream_test.c          \
+    gass_append.c srb_read.c srb_write.c srb_append.c \
     set_extent.c getname.c file_handle.c ntypes.c dangle.c reserved.c
 
 TEST_OBJ=$(TEST_SRC:.c=.lo)
@@ -107,7 +107,7 @@ check test _test: $(TEST_PROGS)
 $(TEST_PROGS): $(LIB) $(LIBHDF5)
 
 TESTHDF5_OBJ=testhdf5.lo tarray.lo tattr.lo tconfig.lo tfile.lo               \
-    tgenprop.lo th5s.lo theap.lo titerate.lo tmeta.lo tmisc.lo                \
+    tgenprop.lo th5s.lo tcoords.lo theap.lo titerate.lo tmeta.lo tmisc.lo     \
     trefer.lo trefstr.lo tselect.lo tskiplist.lo ttime.lo ttst.lo             \
     tvltypes.lo tvlstr.lo
 
@@ -207,9 +207,6 @@ srb_write: srb_write.lo
 srb_append: srb_append.lo
 	@$(LT_LINK_EXE) $(CFLAGS) -o $@ srb_append.lo $(LIB) $(LIBHDF5) $(LDFLAGS) $(LIBS)
 
-stream_test: stream_test.lo
-	@$(LT_LINK_EXE) $(CFLAGS) -o $@ stream_test.lo $(LIB) $(LIBHDF5) $(LDFLAGS) $(LIBS)
-
 testmeta: testmeta.lo
 	@$(LT_LINK_EXE) $(CFLAGS) -o $@ testmeta.lo $(LIB) $(LIBHDF5) $(LDFLAGS) $(LIBS)
 
diff --git a/test/dsets.c b/test/dsets.c
index d7f2de2..0f98845 100644
--- a/test/dsets.c
+++ b/test/dsets.c
@@ -3956,7 +3956,7 @@ test_random_chunks(void)
     if ((m = H5Screate_simple(1, msize, NULL))<0) TEST_ERROR;
 
     /* Select the random points for writing */
-    if (H5Sselect_elements (s, H5S_SELECT_SET, NPOINTS, (const hsize_t **)coord)<0) TEST_ERROR;
+    if (H5Sselect_elements (s, H5S_SELECT_SET, NPOINTS, coord)<0) TEST_ERROR;
 
     /* Write into dataset */
     if (H5Dwrite(d, H5T_NATIVE_INT, m, s, H5P_DEFAULT, wbuf)<0) TEST_ERROR;
@@ -3981,7 +3981,7 @@ test_random_chunks(void)
     if ((m = H5Screate_simple(1, msize, NULL))<0) TEST_ERROR;
 
     /* Select the random points for reading */
-    if (H5Sselect_elements (s, H5S_SELECT_SET, NPOINTS, (const hsize_t **)coord)<0) TEST_ERROR;
+    if (H5Sselect_elements (s, H5S_SELECT_SET, NPOINTS, coord)<0) TEST_ERROR;
 
     /* Read from dataset */
     if (H5Dread(d, H5T_NATIVE_INT, m, s, H5P_DEFAULT, rbuf)<0) TEST_ERROR;
@@ -4048,7 +4048,7 @@ test_random_chunks(void)
     if ((m = H5Screate_simple(1, msize, NULL))<0) TEST_ERROR;
 
     /* Select the random points for writing */
-    if (H5Sselect_elements (s, H5S_SELECT_SET, NPOINTS, (const hsize_t **)coord)<0) TEST_ERROR;
+    if (H5Sselect_elements (s, H5S_SELECT_SET, NPOINTS, coord)<0) TEST_ERROR;
 
     /* Write into dataset */
     if (H5Dwrite(d, H5T_NATIVE_INT, m, s, H5P_DEFAULT, wbuf)<0) TEST_ERROR;
@@ -4073,7 +4073,7 @@ test_random_chunks(void)
     if ((m = H5Screate_simple(1, msize, NULL))<0) TEST_ERROR;
 
     /* Select the random points for reading */
-    if (H5Sselect_elements (s, H5S_SELECT_SET, NPOINTS, (const hsize_t **)coord)<0) TEST_ERROR;
+    if (H5Sselect_elements (s, H5S_SELECT_SET, NPOINTS, coord)<0) TEST_ERROR;
 
     /* Read from dataset */
     if (H5Dread(d, H5T_NATIVE_INT, m, s, H5P_DEFAULT, rbuf)<0) TEST_ERROR;
diff --git a/test/getname.c b/test/getname.c
index 2e8f112..72930f0 100644
--- a/test/getname.c
+++ b/test/getname.c
@@ -41,6 +41,9 @@ const char *FILENAME[] = {
     "getname1",
     "getname2",
     "getname3",
+    "getname4",
+    "getname5",
+    "getname6",
     NULL
 };
 
@@ -48,9 +51,30 @@ const char *FILENAME[] = {
 #define NX 4
 #define NY 5
 
+/* Object reference macros */
+#define SPACE1_RANK     1
+#define SPACE1_DIM1     8
+
+/* Dataset region reference macros */
+#define REFREG_DSETNAMEV "MATRIX"
+#define REFREG_DSETNAMER "REGION_REFERENCES"
+
 #define NAME_BUF_SIZE   64
 #define SMALL_NAME_BUF_SIZE   2
 
+/*-------------------------------------------------------------------------
+ * Function:	check_name
+ *
+ * Purpose:	Private function to test H5Iget_name and H5G_user_path_test. 
+ *
+ * Return:	Success:	0
+ *		Failure:	-1
+ *
+ * Programmer:  Pedro Vicente <pvn at ncsa.uiuc.edu>
+ *              April 12, 2002
+ *
+ *-------------------------------------------------------------------------
+ */
 static int
 check_name(hid_t id, const char *chk_name, const char *chk_user_path)
 {
@@ -84,27 +108,43 @@ error:
     return -1;
 }
 
-int main( void )
+
+/*-------------------------------------------------------------------------
+ * Function:	test_main
+ *
+ * Purpose:	Tests the "ID to name" functionality.  Test H5Iget_name 
+ *              for some major cases, like group, file mounting, named 
+ *              datatype.
+ *
+ * Return:	Success:	0
+ *		Failure:	-1
+ *
+ * Programmer:  Pedro Vicente <pvn at ncsa.uiuc.edu>
+ *              April 12, 2002
+ *
+ * Modifications:
+ *              Added test for groups with cycle.
+ *              Raymond Lu
+ *              30 January 2008
+ *-------------------------------------------------------------------------
+ */
+static int test_main(hid_t fapl )
 {
  char filename0[1024];
  char filename1[1024];
  char filename2[1024];
  char filename3[1024];
- hid_t   fapl;
  hid_t   file_id, file1_id, file2_id, file3_id;
  hid_t   group_id, group2_id, group3_id, group4_id, group5_id, group6_id, group7_id;
  hid_t   dataset_id, dataset2_id;
  hid_t   space_id;
  hid_t   type_id, type2_id;
  hsize_t dims[1] = { 5 };
+ size_t  shint = 0;
 
  /* Name length */
  size_t  name_len;
 
- /* Reset the library and get the file access property list */
- h5_reset();
- fapl = h5_fileaccess();
-
  /* Initialize the file names */
  h5_fixname(FILENAME[0], fapl, filename0, sizeof filename0);
  h5_fixname(FILENAME[1], fapl, filename1, sizeof filename1);
@@ -114,7 +154,6 @@ int main( void )
  /* Create a new file_id using default properties. */
  if ((file_id = H5Fcreate( filename0, H5F_ACC_TRUNC, H5P_DEFAULT, fapl ))<0) TEST_ERROR;
 
-
 /*-------------------------------------------------------------------------
  * Test H5Iget_name with H5Gcreate, one group
  *-------------------------------------------------------------------------
@@ -123,7 +162,7 @@ int main( void )
  TESTING("H5Iget_name with H5Gcreate, one group");
 
  /* Create group "g0" in the root group using absolute name */
- if ((group_id = H5Gcreate( file_id, "/g0", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g0", shint ))<0) TEST_ERROR;
 
  /* Verify */
  if(check_name(group_id, "/g0", "/g0") < 0) TEST_ERROR;
@@ -143,10 +182,10 @@ int main( void )
  TESTING("H5Iget_name with H5Gcreate, more than one group");
 
  /* Create group "g1" in the root group using absolute name */
- if ((group_id = H5Gcreate( file_id, "/g1", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g1", shint ))<0) TEST_ERROR;
 
  /* Create group "g2" in group "g1" using absolute name */
- if ((group2_id = H5Gcreate( file_id, "/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Verify */
  if(check_name(group_id, "/g1", "/g1") < 0) TEST_ERROR;
@@ -268,9 +307,9 @@ int main( void )
  TESTING("H5Iget_name with a long path");
 
  /* Create group "g2/bar/baz" */
- if ((group_id = H5Gcreate( file_id, "g2", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "g2/bar", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "g2/bar/baz", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "g2", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "g2/bar", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "g2/bar/baz", shint ))<0) TEST_ERROR;
 
  /* Create a dataset */
  if ((space_id = H5Screate_simple( 1, dims, NULL ))<0) TEST_ERROR;
@@ -419,10 +458,10 @@ int main( void )
  TESTING("H5Iget_name with H5Gmove and relative names");
 
  /* Create group "/g3" */
- if ((group_id = H5Gcreate( file_id, "/g3", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g3", shint ))<0) TEST_ERROR;
 
  /* Create group "/g3/foo" using absolute name */
- if ((group2_id = H5Gcreate( file_id, "/g3/foo1", 0 ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g3/foo1", shint ))<0) TEST_ERROR;
 
  /* Open group "/g3/foo" again */
  if ((group3_id = H5Gopen( file_id, "/g3/foo1"))<0) TEST_ERROR;
@@ -469,13 +508,13 @@ int main( void )
  TESTING("H5Iget_name with H5Gmove and a long path");
 
  /* Create group "g4/A/B" */
- if ((group_id = H5Gcreate( file_id, "g4", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "g4/A", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "g4/A/B", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "g4", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "g4/A", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "g4/A/B", shint ))<0) TEST_ERROR;
 
  /* Create group "g5/C" */
- if ((group4_id = H5Gcreate( file_id, "g5", 0 ))<0) TEST_ERROR;
- if ((group5_id = H5Gcreate( file_id, "g5/C", 0 ))<0) TEST_ERROR;
+ if ((group4_id = H5Gcreate( file_id, "g5", shint ))<0) TEST_ERROR;
+ if ((group5_id = H5Gcreate( file_id, "g5/C", shint ))<0) TEST_ERROR;
 
  /* Verify */
  if(check_name(group3_id, "/g4/A/B", "/g4/A/B") < 0) TEST_ERROR;
@@ -519,10 +558,10 @@ int main( void )
  TESTING("H5Iget_name with H5Gmove and a long path #2");
 
  /* Create group "g6/A/B" and "g7" */
- if ((group_id = H5Gcreate( file_id, "g6", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "g6/A", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "g6/A/B", 0 ))<0) TEST_ERROR;
- if ((group4_id = H5Gcreate( file_id, "g7", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "g6", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "g6/A", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "g6/A/B", shint ))<0) TEST_ERROR;
+ if ((group4_id = H5Gcreate( file_id, "g7", shint ))<0) TEST_ERROR;
 
  /* Verify */
  if(check_name(group3_id, "/g6/A/B", "/g6/A/B") < 0) TEST_ERROR;
@@ -552,7 +591,7 @@ int main( void )
  TESTING("H5Iget_name with H5Gunlink");
 
   /* Create a new group. */
- if ((group_id = H5Gcreate( file_id, "/g8", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g8", shint ))<0) TEST_ERROR;
 
  /* Delete */
  if (H5Gunlink( file_id, "/g8")<0) TEST_ERROR;
@@ -573,9 +612,9 @@ int main( void )
  TESTING("H5Iget_name with H5Gunlink and a long path");
 
  /* Create group "g9/a/b" */
- if ((group_id = H5Gcreate( file_id, "g9", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "g9/a", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "g9/a/b", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "g9", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "g9/a", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "g9/a/b", shint ))<0) TEST_ERROR;
 
  /* Delete */
  if (H5Gunlink( file_id, "/g9/a")<0) TEST_ERROR;
@@ -591,8 +630,8 @@ int main( void )
  H5Gclose( group3_id );
 
  /* Recreate groups */
- if ((group2_id = H5Gcreate( group_id, "a", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( group_id, "a/b", 0 ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( group_id, "a", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( group_id, "a/b", shint ))<0) TEST_ERROR;
 
  /* Delete, using relative path */
  if (H5Gunlink( group_id, "a")<0) TEST_ERROR;
@@ -611,9 +650,9 @@ int main( void )
  H5Gclose( group_id );
 
  /* Create group "g10/a/b" */
- if ((group_id = H5Gcreate( file_id, "g10", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "g10/a", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "g10/a/b", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "g10", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "g10/a", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "g10/a/b", shint ))<0) TEST_ERROR;
 
  /* Delete */
  if (H5Gunlink( file_id, "/g10/a/b")<0) TEST_ERROR;
@@ -625,7 +664,7 @@ int main( void )
  H5Gclose( group3_id );
 
  /* Recreate group */
- if ((group3_id = H5Gcreate( group_id, "a/b", 0 ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( group_id, "a/b", shint ))<0) TEST_ERROR;
 
  /* Delete, using relative path */
  if (H5Gunlink( group_id, "a/b")<0) TEST_ERROR;
@@ -651,8 +690,8 @@ int main( void )
 
 
   /* Create group "g11/g" */
- if ((group_id = H5Gcreate( file_id, "g11", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "g11/g", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "g11", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "g11/g", shint ))<0) TEST_ERROR;
 
  /* Create two datasets "g11/d" and "g11/g/d"*/
  if ((space_id = H5Screate_simple( 1, dims, NULL ))<0) TEST_ERROR;
@@ -686,7 +725,7 @@ int main( void )
  TESTING("H5Iget_name with H5Fmount; with IDs on the list");
 
  /* Create a group "g12" in the first file */
- if ((group_id = H5Gcreate( file_id, "/g12", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g12", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -731,9 +770,9 @@ int main( void )
  TESTING("H5Iget_name with H5Fmount; long name");
 
  /* Create a group "g13/g1/g2" in the first file */
- if ((group_id = H5Gcreate( file_id, "/g13", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g13/g1", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "/g13/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g13", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g13/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "/g13/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -743,9 +782,9 @@ int main( void )
  /* Create second file and group "g" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file1_id, "/g14", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g14/g3", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file1_id, "/g14/g3/g4", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g14", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g14/g3", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file1_id, "/g14/g3/g4", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -765,7 +804,7 @@ int main( void )
 
 
  /* Verify */
- if(check_name(group_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group_id, "/g14/g3/g4", "") < 0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -790,7 +829,7 @@ int main( void )
  if (H5Funmount(group2_id, "g1")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group_id, "/g14/g3/g4", "") < 0) TEST_ERROR
  if(check_name(group3_id, "/g14/g3/g4", "/g14/g3/g4") < 0) TEST_ERROR;
 
  /* Close */
@@ -814,8 +853,8 @@ int main( void )
  if (H5Funmount(group2_id, ".")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group_id, "", "") < 0) TEST_ERROR;
- if(check_name(group2_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group_id, "/g14/g3/g4", "") < 0) TEST_ERROR
+ if(check_name(group2_id, "/", "") < 0) TEST_ERROR
 
  /* Close */
  H5Gclose( group_id );
@@ -857,7 +896,7 @@ int main( void )
  if (H5Funmount(group2_id, ".")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group2_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group2_id, "/", "") < 0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group2_id );
@@ -899,7 +938,7 @@ int main( void )
  if (H5Funmount(group2_id, ".")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group2_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group2_id, "/", "") < 0) TEST_ERROR;
  if(check_name(group3_id, "/g13/g1", "/g13/g1") < 0) TEST_ERROR;
 
  /* Close */
@@ -920,10 +959,10 @@ int main( void )
  TESTING("H5Iget_name with H5Funmount");
 
  /* Create a group "g15/g1/g2" in the first file */
- if ((group_id = H5Gcreate( file_id, "/g15", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g15/g1", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "/g15/g1/g2", 0 ))<0) TEST_ERROR;
- if ((group4_id = H5Gcreate( file_id, "/g15/g1/g2/g3", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g15", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g15/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "/g15/g1/g2", shint ))<0) TEST_ERROR;
+ if ((group4_id = H5Gcreate( file_id, "/g15/g1/g2/g3", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -934,9 +973,9 @@ int main( void )
  /* Create second file and group "g" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file1_id, "/g16", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g16/g4", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file1_id, "/g16/g4/g5", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g16", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g16/g4", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file1_id, "/g16/g4/g5", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -964,7 +1003,7 @@ int main( void )
  if(check_name(group_id, "/g15/g1/g2/g3", "/g15/g1/g2/g3") < 0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group2_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group2_id, "/g16/g4/g5", "") < 0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -991,7 +1030,7 @@ int main( void )
  if (H5Tinsert (type_id, "c", HOFFSET(s1_t,c), H5T_NATIVE_FLOAT)<0) TEST_ERROR;
 
   /* Create group "g17" */
- if ((group_id = H5Gcreate( file_id, "g17", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "g17", shint ))<0) TEST_ERROR;
 
  /* Save datatype for later */
  if (H5Tcommit (group_id, "t", type_id)<0) TEST_ERROR;
@@ -1025,7 +1064,7 @@ int main( void )
  if((type_id=H5Dget_type(dataset_id))<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(type_id, "", "") < 0) TEST_ERROR;
+ if(check_name(type_id, "/g17/t", "") < 0) TEST_ERROR;
 
  /* Close */
  H5Dclose( dataset_id );
@@ -1259,8 +1298,8 @@ PASSED();
  TESTING("H5Iget_name with added names with mounting");
 
  /* Create a group "g18/g2" in the first file */
- if ((group_id = H5Gcreate( file_id, "/g18", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g18/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g18", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g18/g2", shint ))<0) TEST_ERROR;
 
  /* Also create a dataset and a datatype */
  if ((space_id = H5Screate_simple( 1, dims, NULL ))<0) TEST_ERROR;
@@ -1272,9 +1311,9 @@ PASSED();
 
  /* Create second file and group "/g3/g4/g5" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
- if ((group3_id = H5Gcreate( file1_id, "/g3", 0 ))<0) TEST_ERROR;
- if ((group4_id = H5Gcreate( file1_id, "/g3/g4", 0 ))<0) TEST_ERROR;
- if ((group5_id = H5Gcreate( file1_id, "/g3/g4/g5", 0 ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file1_id, "/g3", shint ))<0) TEST_ERROR;
+ if ((group4_id = H5Gcreate( file1_id, "/g3/g4", shint ))<0) TEST_ERROR;
+ if ((group5_id = H5Gcreate( file1_id, "/g3/g4/g5", shint ))<0) TEST_ERROR;
 
  /* Mount first file at "g3/g4" in the second file */
  if (H5Fmount(file1_id, "/g3/g4", file_id, H5P_DEFAULT)<0) TEST_ERROR;
@@ -1312,9 +1351,9 @@ PASSED();
  if(check_name(type_id, "/g18/t2", "/g18/t2") < 0) TEST_ERROR;
 
  /* Get name for the IDs of the second file, should be "" */
- if(check_name(group6_id, "", "") < 0) TEST_ERROR;
- if(check_name(dataset2_id, "", "") < 0) TEST_ERROR;
- if(check_name(type2_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group6_id, "/g18/g2", "") < 0) TEST_ERROR;
+ if(check_name(dataset2_id, "/g18/d2", "") < 0) TEST_ERROR;
+ if(check_name(type2_id, "/g18/t2", "") < 0) TEST_ERROR;
 
  H5Tclose( type_id );
  H5Tclose( type2_id );
@@ -1340,8 +1379,8 @@ PASSED();
 
  /* Create a file and group "/g1/g2" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
- if ((group_id = H5Gcreate( file1_id, "/g1", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g1", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Verify */
  if(check_name(group2_id, "/g1/g2", "/g1/g2") < 0) TEST_ERROR;
@@ -1368,13 +1407,13 @@ PASSED();
 
  /* Create a file and group "/g1/g2" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
- if ((group_id = H5Gcreate( file1_id, "/g1", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g1", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Create a new file and group "/g3/g4" in it */
  if ((file2_id = H5Fcreate( filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file2_id, "/g3", 0 ))<0) TEST_ERROR;
- if ((group4_id = H5Gcreate( file2_id, "/g3/g4", 0 ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file2_id, "/g3", shint ))<0) TEST_ERROR;
+ if ((group4_id = H5Gcreate( file2_id, "/g3/g4", shint ))<0) TEST_ERROR;
 
  /* Mount first file at "/g3/g4" in the second file */
  if(H5Fmount(file2_id, "/g3/g4", file1_id, H5P_DEFAULT)<0) TEST_ERROR;
@@ -1416,13 +1455,13 @@ PASSED();
 
  /* Create a file and group "/g1/g2" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
- if ((group_id = H5Gcreate( file1_id, "/g1", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g1", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Create a new file and group "/g3/g4" in it */
  if ((file2_id = H5Fcreate( filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file2_id, "/g3", 0 ))<0) TEST_ERROR;
- if ((group4_id = H5Gcreate( file2_id, "/g3/g4", 0 ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file2_id, "/g3", shint ))<0) TEST_ERROR;
+ if ((group4_id = H5Gcreate( file2_id, "/g3/g4", shint ))<0) TEST_ERROR;
 
  /* Mount first file at "g3/g4" in the second file */
  if(H5Fmount(file2_id, "/g3/g4", file1_id, H5P_DEFAULT)<0) TEST_ERROR;
@@ -1514,8 +1553,8 @@ PASSED();
  TESTING("H5Iget_name with H5Glink hard");
 
  /* Create group "g19/g1" */
- if ((group_id = H5Gcreate( file_id, "/g19", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g19/g1", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g19", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g19/g1", shint ))<0) TEST_ERROR;
 
   /* Create hard link to "g19/g1/ group */
  if (H5Glink(file_id, H5G_LINK_HARD, "/g19/g1", "/g19/g2")<0) TEST_ERROR;
@@ -1556,7 +1595,7 @@ PASSED();
  if (H5Gunlink( file_id, "/g19/g3")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group4_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group4_id, "/g19/g1", "") < 0) TEST_ERROR;
  if(check_name(group2_id, "/g19/g1", "/g19/g1") < 0) TEST_ERROR;
  if(check_name(group3_id, "/g19/g2", "/g19/g2") < 0) TEST_ERROR;
 
@@ -1576,7 +1615,7 @@ PASSED();
  if (H5Gunlink( group_id, "g3")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group4_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group4_id, "/g19/g1", "") < 0) TEST_ERROR;
  if(check_name(group2_id, "/g19/g1", "/g19/g1") < 0) TEST_ERROR;
  if(check_name(group3_id, "/g19/g2", "/g19/g2") < 0) TEST_ERROR;
 
@@ -1600,8 +1639,8 @@ PASSED();
  TESTING("H5Iget_name with H5Glink symbolic");
 
  /* Create group "g20/g1" */
- if ((group_id = H5Gcreate( file_id, "/g20", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g20/g1", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g20", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g20/g1", shint ))<0) TEST_ERROR;
 
   /* Create symbolic link to "g20/g1/ group */
  if (H5Glink(file_id, H5G_LINK_SOFT, "/g20/g1", "/g20/g2")<0) TEST_ERROR;
@@ -1631,8 +1670,8 @@ PASSED();
  TESTING("H5Iget_name with H5Glink symbolic and move target");
 
  /* Create group "g21/g1" */
- if ((group_id = H5Gcreate( file_id, "/g21", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g21/g1", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g21", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g21/g1", shint ))<0) TEST_ERROR;
 
  /* Create symbolic link to "g21/g1/ group */
  if (H5Glink(file_id, H5G_LINK_SOFT, "/g21/g1", "/g21/g2")<0) TEST_ERROR;
@@ -1666,8 +1705,8 @@ PASSED();
  TESTING("H5Iget_name with H5Glink symbolic and move source");
 
  /* Create group "g22/g1" */
- if ((group_id = H5Gcreate( file_id, "/g22", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g22/g1", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g22", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g22/g1", shint ))<0) TEST_ERROR;
 
  /* Create symbolic link to "g22/g1/ group */
  if (H5Glink(file_id, H5G_LINK_SOFT, "/g22/g1", "/g22/g2")<0) TEST_ERROR;
@@ -1699,8 +1738,6 @@ PASSED();
 
  PASSED();
 
-
-
 /*-------------------------------------------------------------------------
  * Test H5Iget_name with H5Glink symbolic and unlink target
  *-------------------------------------------------------------------------
@@ -1709,8 +1746,8 @@ PASSED();
  TESTING("H5Iget_name with H5Glink symbolic and unlink target");
 
  /* Create group "g23/g1" */
- if ((group_id = H5Gcreate( file_id, "/g23", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g23/g1", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g23", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g23/g1", shint ))<0) TEST_ERROR;
 
  /* Create symbolic link to "g23/g1/ group */
  if (H5Glink(file_id, H5G_LINK_SOFT, "/g23/g1", "/g23/g2")<0) TEST_ERROR;
@@ -1742,8 +1779,8 @@ PASSED();
  TESTING("H5Iget_name with H5Glink symbolic and unlink source");
 
  /* Create group "g24/g1" */
- if ((group_id = H5Gcreate( file_id, "/g24", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g24/g1", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g24", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g24/g1", shint ))<0) TEST_ERROR;
 
  /* Create symbolic link to "g24/g1/ group */
  if (H5Glink(file_id, H5G_LINK_SOFT, "/g24/g1", "/g24/g2")<0) TEST_ERROR;
@@ -1758,7 +1795,7 @@ PASSED();
  if (H5Gunlink( file_id, "/g24/g2")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group3_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group3_id, "/g24/g1", "") < 0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -1775,9 +1812,9 @@ PASSED();
  TESTING("H5Iget_name with several nested mounted files");
 
  /* Create a group "g25/g1/g2" in the first file */
- if ((group_id = H5Gcreate( file_id, "/g25", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g25/g1", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "/g25/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g25", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g25/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "/g25/g1/g2", shint))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -1787,9 +1824,9 @@ PASSED();
  /* Create second file and group "/g26/g3/g4" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file1_id, "/g26", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g26/g3", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file1_id, "/g26/g3/g4", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g26", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g26/g3", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file1_id, "/g26/g3/g4", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -1799,9 +1836,9 @@ PASSED();
  /* Create third file and group "/g27/g5/g6" in it */
  file2_id = H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file2_id, "/g27", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file2_id, "/g27/g5", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file2_id, "/g27/g5/g6", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file2_id, "/g27", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file2_id, "/g27/g5", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file2_id, "/g27/g5/g6", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -1811,9 +1848,9 @@ PASSED();
  /* Create fourth file and group "/g28/g5/g6" in it */
  file3_id = H5Fcreate(filename3, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file3_id, "/g28", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file3_id, "/g28/g7", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file3_id, "/g28/g7/g8", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file3_id, "/g28", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file3_id, "/g28/g7", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file3_id, "/g28/g7/g8", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -1865,7 +1902,7 @@ PASSED();
  if (H5Funmount(file_id, "/g25/g1/g26/g3/g27/g5")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group4_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group4_id, "/g28/g7/g8", "") < 0) TEST_ERROR;
  if(check_name(group3_id, "/g25/g1/g26/g3/g27/g5/g6", "/g25/g1/g26/g3/g27/g5/g6") < 0) TEST_ERROR;
  if(check_name(group2_id, "", "/g25/g1/g26/g3/g4") < 0) TEST_ERROR;
  if(check_name(group_id, "", "/g25/g1/g2") < 0) TEST_ERROR;
@@ -1877,7 +1914,7 @@ PASSED();
  if (H5Funmount(file_id, "/g25/g1/g26/g3")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group3_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group3_id, "/g27/g5/g6", "") < 0) TEST_ERROR;
  if(check_name(group2_id, "/g25/g1/g26/g3/g4", "/g25/g1/g26/g3/g4") < 0) TEST_ERROR;
  if(check_name(group_id, "", "/g25/g1/g2") < 0) TEST_ERROR;
 
@@ -1888,7 +1925,7 @@ PASSED();
  if (H5Funmount(file_id, "/g25/g1")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group2_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group2_id, "/g26/g3/g4", "") < 0) TEST_ERROR;
  if(check_name(group_id, "/g25/g1/g2", "/g25/g1/g2") < 0) TEST_ERROR;
 
  /* Close */
@@ -1899,7 +1936,6 @@ PASSED();
 
  PASSED();
 
-
 /*-------------------------------------------------------------------------
  * Test H5Iget_name and H5Gmove with repeated path components
  *-------------------------------------------------------------------------
@@ -1908,11 +1944,11 @@ PASSED();
  TESTING("H5Iget_name and H5Gmove with repeated path components");
 
  /* Create a group "g29/g1/g2/g1/g2" in a file */
- if ((group_id = H5Gcreate( file_id, "/g29", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g29/g1", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "/g29/g1/g2", 0 ))<0) TEST_ERROR;
- if ((group4_id = H5Gcreate( file_id, "/g29/g1/g2/g1", 0 ))<0) TEST_ERROR;
- if ((group5_id = H5Gcreate( file_id, "/g29/g1/g2/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g29", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g29/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "/g29/g1/g2", shint ))<0) TEST_ERROR;
+ if ((group4_id = H5Gcreate( file_id, "/g29/g1/g2/g1", shint ))<0) TEST_ERROR;
+ if ((group5_id = H5Gcreate( file_id, "/g29/g1/g2/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Rename group */
  if (H5Gmove( file_id, "/g29/g1/g2/g1/g2", "/g29/g1/g2/g1/g3" )<0)  TEST_ERROR;
@@ -1952,9 +1988,9 @@ PASSED();
  TESTING("H5Iget_name with higher mounted file");
 
  /* Create a group "/g30/g1/g2" in the first file */
- if ((group_id = H5Gcreate( file_id, "/g30", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g30/g1", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "/g30/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g30", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g30/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "/g30/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -1964,9 +2000,9 @@ PASSED();
  /* Create second file and group "/g31/g3/g4" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file1_id, "/g31", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g31/g3", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file1_id, "/g31/g3/g4", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g31", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g31/g3", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file1_id, "/g31/g3/g4", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -1976,9 +2012,9 @@ PASSED();
  /* Create third file and group "/g32/g5/g6" in it */
  file2_id = H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file2_id, "/g32", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file2_id, "/g32/g5", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file2_id, "/g32/g5/g6", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file2_id, "/g32", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file2_id, "/g32/g5", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file2_id, "/g32/g5/g6", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -1988,9 +2024,9 @@ PASSED();
  /* Create fourth file and group "/g33/g5/g6" in it */
  file3_id = H5Fcreate(filename3, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file3_id, "/g33", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file3_id, "/g33/g7", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file3_id, "/g33/g7/g8", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file3_id, "/g33", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file3_id, "/g33/g7", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file3_id, "/g33/g7/g8", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2043,7 +2079,7 @@ PASSED();
  if (H5Funmount(file_id, "/g30")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group4_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group4_id, "/g33/g7/g8", "") < 0) TEST_ERROR;
  if(check_name(group3_id, "/g30/g1/g31/g3/g32/g5/g6", "/g30/g1/g31/g3/g32/g5/g6") < 0) TEST_ERROR;
  if(check_name(group2_id, "", "/g30/g1/g31/g3/g4") < 0) TEST_ERROR;
  if(check_name(group_id, "", "/g30/g1/g2") < 0) TEST_ERROR;
@@ -2052,8 +2088,8 @@ PASSED();
  if (H5Funmount(file_id, "/g30/g1/g31/g3")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group4_id, "", "") < 0) TEST_ERROR;
- if(check_name(group3_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group4_id, "/g33/g7/g8", "") < 0) TEST_ERROR;
+ if(check_name(group3_id, "/g32/g5/g6", "") < 0) TEST_ERROR;
  if(check_name(group2_id, "/g30/g1/g31/g3/g4", "/g30/g1/g31/g3/g4") < 0) TEST_ERROR;
  if(check_name(group_id, "", "/g30/g1/g2") < 0) TEST_ERROR;
 
@@ -2061,9 +2097,9 @@ PASSED();
  if (H5Funmount(file_id, "/g30/g1")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group4_id, "", "") < 0) TEST_ERROR;
- if(check_name(group3_id, "", "") < 0) TEST_ERROR;
- if(check_name(group2_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group4_id, "/g33/g7/g8", "") < 0) TEST_ERROR;
+ if(check_name(group3_id, "/g32/g5/g6", "") < 0) TEST_ERROR;
+ if(check_name(group2_id, "/g31/g3/g4", "") < 0) TEST_ERROR;
  if(check_name(group_id, "/g30/g1/g2", "/g30/g1/g2") < 0) TEST_ERROR;
 
  /* Close groups */
@@ -2090,9 +2126,9 @@ PASSED();
  /* Create second file and group "/g35/g3/g4" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file1_id, "/g35", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g35/g3", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file1_id, "/g35/g3/g4", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g35", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g35/g3", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file1_id, "/g35/g3/g4", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2100,9 +2136,9 @@ PASSED();
  H5Gclose( group3_id );
 
  /* Create group "/g34/g1/g2" in first file */
- if ((group_id = H5Gcreate( file_id, "/g34", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g34/g1", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "/g34/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g34", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g34/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "/g34/g1/g2", shint ))<0) TEST_ERROR;
 
   /* Create hard link to "/g34/g1/g2 group */
  if (H5Glink(file_id, H5G_LINK_HARD, "/g34/g1/g2", "/g34/g2a")<0) TEST_ERROR;
@@ -2140,7 +2176,6 @@ PASSED();
  PASSED();
 
 
-
 /*-------------------------------------------------------------------------
  * Test H5Iget_name with mounted files and unlinking
  *-------------------------------------------------------------------------
@@ -2149,9 +2184,9 @@ PASSED();
  TESTING("H5Iget_name with mounted files and unlinking");
 
  /* Create group "/g36/g1/g2" in first file */
- if ((group_id = H5Gcreate( file_id, "/g36", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file_id, "/g36/g1", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file_id, "/g36/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file_id, "/g36", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g36/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "/g36/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2238,9 +2273,9 @@ PASSED();
  /* Create file and group "/g38/g1/g2" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file1_id, "/g38", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g38/g1", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file1_id, "/g38/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g38", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g38/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file1_id, "/g38/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2250,9 +2285,9 @@ PASSED();
  /* Create second file and group "/g39/g1/g2" in it */
  file2_id = H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file2_id, "/g39", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file2_id, "/g39/g3", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file2_id, "/g39/g3/g4", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file2_id, "/g39", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file2_id, "/g39/g3", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file2_id, "/g39/g3/g4", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2262,9 +2297,9 @@ PASSED();
  /* Create third file and group "/g40/g5/g6" in it */
  file3_id = H5Fcreate(filename3, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file3_id, "/g40", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file3_id, "/g40/g5", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file3_id, "/g40/g5/g6", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file3_id, "/g40", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file3_id, "/g40/g5", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file3_id, "/g40/g5/g6", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2299,7 +2334,7 @@ PASSED();
  if (H5Funmount(file1_id, "/g38/g1")<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group_id, "/g39/g3/g4", "") < 0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2320,9 +2355,9 @@ PASSED();
  /* Create file and group "/g39/g1/g2" in it */
  file1_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file1_id, "/g41", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file1_id, "/g41/g1", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file1_id, "/g41/g1/g2", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file1_id, "/g41", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file1_id, "/g41/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file1_id, "/g41/g1/g2", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2332,9 +2367,9 @@ PASSED();
  /* Create second file and group "/g42/g1/g2" in it */
  file2_id = H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
 
- if ((group_id = H5Gcreate( file2_id, "/g42", 0 ))<0) TEST_ERROR;
- if ((group2_id = H5Gcreate( file2_id, "/g42/g3", 0 ))<0) TEST_ERROR;
- if ((group3_id = H5Gcreate( file2_id, "/g42/g3/g4", 0 ))<0) TEST_ERROR;
+ if ((group_id = H5Gcreate( file2_id, "/g42", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file2_id, "/g42/g3", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file2_id, "/g42/g3/g4", shint ))<0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2355,7 +2390,7 @@ PASSED();
  if ((group2_id = H5Gopen( group_id, "g4" ))<0) TEST_ERROR;
 
  /* Verify */
- if(check_name(group2_id, "", "") < 0) TEST_ERROR;
+ if(check_name(group2_id, "/g42/g3/g4", "") < 0) TEST_ERROR;
 
  /* Close */
  H5Gclose( group_id );
@@ -2366,20 +2401,536 @@ PASSED();
  PASSED();
 
 /*-------------------------------------------------------------------------
- * end tests
+ * Test H5Iget_name with looped groups for both hard and soft links.
  *-------------------------------------------------------------------------
  */
 
+TESTING("H5Iget_name with looped groups for hard and soft links");
+
+ /* Create group "g43/g1/g2/g3" */
+ if ((group_id = H5Gcreate( file_id, "/g43", shint ))<0) TEST_ERROR;
+ if ((group2_id = H5Gcreate( file_id, "/g43/g1", shint ))<0) TEST_ERROR;
+ if ((group3_id = H5Gcreate( file_id, "/g43/g1/g2", shint ))<0) TEST_ERROR;
+ if ((group4_id = H5Gcreate( file_id, "/g43/g1/g2/g3", shint ))<0) TEST_ERROR;
+
+ /* Create hard link to make a loop */
+ if (H5Glink2(group_id,".",H5G_LINK_HARD,group4_id,"g43")<0) TEST_ERROR;
+
+ /* Open the group */
+ if ((group5_id = H5Gopen( file_id, "/g43/g1/g2/g3/g43" ))<0) TEST_ERROR;
+
+ /* Verify */
+ if(check_name(group5_id, "/g43/g1/g2/g3/g43", "/g43/g1/g2/g3/g43") < 0) TEST_ERROR;
+
+ /* Create a second hard link to make a loop */
+ if (H5Glink2(group_id,".",H5G_LINK_HARD,group4_id,"g4")<0) TEST_ERROR;
+
+ /* Open the group */
+ if ((group6_id = H5Gopen( file_id, "/g43/g1/g2/g3/g4" ))<0) TEST_ERROR;
+
+ /* Verify */
+ if(check_name(group6_id, "/g43/g1/g2/g3/g4", "/g43/g1/g2/g3/g4") < 0) TEST_ERROR;
+
+ /* Create a soft link to make a loop */
+ if (H5Glink2(group_id,".",H5G_LINK_SOFT,group4_id,"gsoft")<0) TEST_ERROR;
+
+ /* Open the group */
+ if ((group7_id = H5Gopen( file_id, "/g43/g1/g2/g3/gsoft" ))<0) TEST_ERROR;
+
+ /* Verify */
+ if(check_name(group7_id, "/g43/g1/g2/g3/gsoft", "/g43/g1/g2/g3/gsoft") < 0) TEST_ERROR;
+
+ /* Close */
+ H5Gclose( group_id );
+ H5Gclose( group2_id );
+ H5Gclose( group3_id );
+ H5Gclose( group4_id );
+ H5Gclose( group5_id );
+ H5Gclose( group6_id );
+ H5Gclose( group7_id );
+
+PASSED();
 
  /* Close file */
  H5Fclose( file_id );
- puts("All getname tests passed.");
- h5_cleanup(FILENAME, fapl);
- return 0;
+
+ return(0);
 
 error:
- H5Fclose( file_id );
- H5_FAILED();
- return 1;
+ return(1);
+}
+
+
+/*-------------------------------------------------------------------------
+ * Function:	test_obj_ref
+ *
+ * Purpose:	Test H5Iget_name for object references.
+ *
+ * Return:	Success:	0
+ *		Failure:	-1
+ *
+ * Programmer:  Leon Arber
+ *              Nov. 1, 2006
+ *
+ * Modifications:
+ *              Raymond Lu
+ *              30 January 2008
+ *              This function was borrowed from v1.8, which was probably
+ *              written by Leon Arber.
+ *-------------------------------------------------------------------------
+ */
+static int
+test_obj_ref(hid_t fapl)
+{
+    char filename1[1024];
+    char filename2[1024];
+    hid_t       fid1, fid2;             /* HDF5 File IDs                */
+    hid_t       dataset, dataset2;      /* Dataset ID                   */
+    hid_t       group, group2;          /* Group ID                     */
+    hid_t       sid1;                   /* Dataspace ID                 */
+    hid_t       tid1;                   /* Datatype ID                  */
+    hsize_t     dims1[] = {SPACE1_DIM1};
+    hobj_ref_t  wbuf[SPACE1_DIM1];      /* Buffer to write to disk */
+    int         tu32[SPACE1_DIM1];      /* Int data */
+    int         i;                      /* counting variables */
+    char buf[100];
+    size_t      size_hint = 0;
+
+    /* Initialize the file names */
+    h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
+    h5_fixname(FILENAME[4], fapl, filename2, sizeof filename2);
+
+    /* Create files */
+    if((fid1 = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0)
+        TEST_ERROR
+    if((fid2 = H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0)
+        TEST_ERROR
+
+    /* Create dataspace for datasets */
+    if((sid1 = H5Screate_simple(SPACE1_RANK, dims1, NULL)) < 0)
+        TEST_ERROR
+
+    /* Create a group */
+    if((group = H5Gcreate(fid1, "Group1", size_hint)) < 0) TEST_ERROR
+
+    /* Create a single dataset inside the second file, which will be mounted
+     * and used to mask objects in the first file */
+    if((dataset = H5Dcreate(fid2, "Dataset1", H5T_STD_U32LE, sid1, H5P_DEFAULT)) < 0)
+        TEST_ERROR
+    if(H5Dclose(dataset) < 0)
+        TEST_ERROR
+
+    /* Create a dataset(inside Group1) */
+    if((dataset = H5Dcreate(group, "Dataset1", H5T_STD_U32LE, sid1, H5P_DEFAULT)) < 0)
+        TEST_ERROR
+
+    /* Initialize data buffer */
+    for(i = 0; i < SPACE1_DIM1; i++)
+        tu32[i] = i * 3;
+
+    /* Write selection to disk */
+    if(H5Dwrite(dataset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, tu32) < 0)
+        TEST_ERROR
+
+    /* Close Dataset */
+    if(H5Dclose(dataset) < 0)
+        TEST_ERROR
+
+    /* Create another dataset(inside Group1) */
+    if((dataset = H5Dcreate(group, "Dataset2", H5T_NATIVE_UCHAR, sid1, H5P_DEFAULT)) < 0)
+        TEST_ERROR
+
+    /* Close Dataset */
+    if(H5Dclose(dataset) < 0)
+        TEST_ERROR
+
+    /* Create a datatype to refer to */
+    if((tid1 = H5Tcreate(H5T_COMPOUND, sizeof(s1_t))) < 0)
+        TEST_ERROR
+
+    /* Insert fields */
+    if(H5Tinsert(tid1, "a", HOFFSET(s1_t, a), H5T_NATIVE_UINT) < 0)
+        TEST_ERROR
+    if(H5Tinsert(tid1, "b", HOFFSET(s1_t, b), H5T_NATIVE_UINT) < 0)
+        TEST_ERROR
+    if(H5Tinsert(tid1, "c", HOFFSET(s1_t, c), H5T_NATIVE_FLOAT) < 0)
+        TEST_ERROR
+
+    /* Save datatype for later */
+    if(H5Tcommit(group, "Datatype1", tid1) < 0)
+        TEST_ERROR
+
+    /* Close datatype */
+    if(H5Tclose(tid1) < 0)
+        TEST_ERROR
+
+    /* Create a new group in group1 */
+    if((group2 = H5Gcreate(group, "Group2", size_hint)) < 0) TEST_ERROR
+
+    /* Create a hard link to group1 in group2 */
+    if (H5Glink2(fid1,"/Group1",H5G_LINK_HARD,fid1,"/Group1/Group2/Link")<0) TEST_ERROR;
+
+    /* Create dataset in that group */
+    if((dataset = H5Dcreate(group2, "Dataset4", H5T_NATIVE_UCHAR, sid1, H5P_DEFAULT)) < 0)
+        TEST_ERROR
+
+    /* Close Dataset */
+    if(H5Dclose(dataset) < 0)
+        TEST_ERROR
+
+    /* Close group */
+    if(H5Gclose(group) < 0)
+        TEST_ERROR
+    if(H5Gclose(group2) < 0)
+        TEST_ERROR
+
+    /* Open up that hard link and make a new dataset there */
+    if((group = H5Gopen(fid1, "/Group1/Group2/Link")) < 0)
+        TEST_ERROR
+
+    if((dataset = H5Dcreate(group, "Dataset5", H5T_NATIVE_UCHAR, sid1, H5P_DEFAULT)) < 0)
+        TEST_ERROR
+
+    if(H5Dclose(dataset) < 0)
+        TEST_ERROR
+    if(H5Gclose(group) < 0)
+        TEST_ERROR
+
+    /* Create a dataset to store references */
+    if((dataset = H5Dcreate(fid1, "Dataset3", H5T_STD_REF_OBJ, sid1, H5P_DEFAULT)) < 0)
+        TEST_ERROR
+
+    /* Create reference to dataset */
+    if(H5Rcreate(&wbuf[0], fid1, "/Dataset3", H5R_OBJECT, -1) < 0)
+        TEST_ERROR
+
+    /* Create reference to dataset */
+    if(H5Rcreate(&wbuf[1], fid1, "/Group1/Dataset2", H5R_OBJECT, -1) < 0)
+        TEST_ERROR
+
+    /* Create reference to group */
+    if(H5Rcreate(&wbuf[2], fid1, "/Group1", H5R_OBJECT, -1) < 0)
+        TEST_ERROR
+
+    /* Create reference to named datatype */
+    if(H5Rcreate(&wbuf[3], fid1, "/Group1/Datatype1", H5R_OBJECT, -1) < 0)
+        TEST_ERROR
+
+    if(H5Rcreate(&wbuf[4], fid1, "/Group1/Group2/Dataset4", H5R_OBJECT, -1) < 0)
+        TEST_ERROR
+    if(H5Rcreate(&wbuf[5], fid1, "/Group1/Group2", H5R_OBJECT, -1) < 0)
+        TEST_ERROR
+    if(H5Rcreate(&wbuf[6], fid1, "/Group1/Group2/Link/Dataset5", H5R_OBJECT, -1) < 0)
+        TEST_ERROR
+
+    /* Create reference to root group */
+    if(H5Rcreate(&wbuf[7], fid1, "/", H5R_OBJECT, -1) < 0)
+        TEST_ERROR
+
+    /* Write selection to disk */
+    if(H5Dwrite(dataset, H5T_STD_REF_OBJ, H5S_ALL, H5S_ALL, H5P_DEFAULT, wbuf) < 0)
+        TEST_ERROR
+
+    TESTING("getting path to normal dataset in root group");
+    if((dataset2 = H5Rdereference(dataset, H5R_OBJECT, &wbuf[0])) < 0) TEST_ERROR
+    i = H5Iget_name(dataset2,(char*)buf, sizeof(buf));
+    if(H5Dclose(dataset2) < 0) TEST_ERROR
+    if(!((HDstrcmp(buf, "/Dataset3") == 0) &&(i == 9))) TEST_ERROR
+    PASSED()
+
+    HDmemset(buf, 0, sizeof(buf));
+    TESTING("getting path to dataset in /Group1");
+    if((dataset2 = H5Rdereference(dataset, H5R_OBJECT, &wbuf[1])) < 0) TEST_ERROR
+    i = H5Iget_name(dataset2,(char*)buf, sizeof(buf));
+    if(H5Dclose(dataset2) < 0) TEST_ERROR
+    if(!((HDstrcmp(buf, "/Group1/Dataset2") == 0) &&(i == 16))) TEST_ERROR
+    PASSED()
+
+    HDmemset(buf, 0, sizeof(buf));
+    TESTING("getting path to /Group1");
+    if((group = H5Rdereference(dataset, H5R_OBJECT, &wbuf[2])) < 0) TEST_ERROR
+    i = H5Iget_name(group,(char*)buf, sizeof(buf));
+    if(H5Gclose(group) < 0) TEST_ERROR
+    if(!((HDstrcmp(buf, "/Group1") == 0) &&(i == 7))) TEST_ERROR
+    PASSED()
+
+    HDmemset(buf, 0, sizeof(buf));
+    TESTING("getting path to datatype in /Group1");
+    if((tid1 = H5Rdereference(dataset, H5R_OBJECT, &wbuf[3])) < 0) TEST_ERROR
+    i = H5Iget_name(tid1,(char*)buf, sizeof(buf));
+    if(H5Tclose(tid1) < 0) TEST_ERROR
+    if(!((HDstrcmp(buf, "/Group1/Datatype1") == 0) &&(i == 17))) TEST_ERROR
+    PASSED()
+
+    HDmemset(buf, 0, sizeof(buf));
+    TESTING("getting path to dataset in nested group");
+    if((dataset2 = H5Rdereference(dataset, H5R_OBJECT, &wbuf[4])) < 0) TEST_ERROR
+    i = H5Iget_name(dataset2,(char*)buf, sizeof(buf));
+    if(H5Dclose(dataset2) < 0) TEST_ERROR
+    if(!((HDstrcmp(buf, "/Group1/Group2/Dataset4") == 0) &&(i == 23))) TEST_ERROR
+    PASSED()
+
+    HDmemset(buf, 0, sizeof(buf));
+    TESTING("getting path to nested group");
+    if((group = H5Rdereference(dataset, H5R_OBJECT, &wbuf[5])) < 0) TEST_ERROR
+    i = H5Iget_name(group,(char*)buf, sizeof(buf));
+    if(H5Gclose(group) < 0) TEST_ERROR
+    if(!((HDstrcmp(buf, "/Group1/Group2") == 0) &&(i == 14))) TEST_ERROR
+    PASSED()
+
+    HDmemset(buf, 0, sizeof(buf));
+    TESTING("getting path to dataset created via hard link");
+    if((dataset2 = H5Rdereference(dataset, H5R_OBJECT, &wbuf[6])) < 0) TEST_ERROR
+    i = H5Iget_name(dataset2,(char*)buf, sizeof(buf));
+    if(H5Dclose(dataset2) < 0) TEST_ERROR
+    if(!((HDstrcmp(buf, "/Group1/Dataset5") == 0) &&(i == 16))) TEST_ERROR
+    PASSED()
+
+    HDmemset(buf, 0, sizeof(buf));
+    TESTING("getting path to root group");
+    if((group = H5Rdereference(dataset, H5R_OBJECT, &wbuf[7])) < 0) TEST_ERROR
+    i = H5Iget_name(group,(char*)buf, sizeof(buf));
+    if(H5Gclose(group) < 0) TEST_ERROR
+    if(!((HDstrcmp(buf, "/") == 0) &&(i == 1))) TEST_ERROR
+    PASSED()
+
+    /* Now we mount fid2 at /Group2 and look for dataset4.  It shouldn't be found */
+    if(H5Fmount(fid1, "/Group1/Group2", fid2, H5P_DEFAULT) < 0)
+        TEST_ERROR
+
+    TESTING("getting path to dataset hidden by a mounted file");
+    if((dataset2 = H5Rdereference(dataset, H5R_OBJECT, &wbuf[4])) < 0) TEST_ERROR
+    i = H5Iget_name(dataset2, (char*)buf, sizeof(buf));
+    if(H5Dclose(dataset2) < 0) TEST_ERROR
+    if(i != 0) TEST_ERROR
+    PASSED()
+
+    /* Now we try unlinking dataset2 from the file and searching for it.  It shouldn't be found */
+    if((dataset2 = H5Rdereference(dataset, H5R_OBJECT, &wbuf[1])) < 0)
+        TEST_ERROR
+    if(H5Gunlink(fid1, "/Group1/Dataset2") < 0)
+        TEST_ERROR
+
+    TESTING("getting path to dataset that has been unlinked");
+    i = H5Iget_name(dataset2, (char*)buf, sizeof(buf));
+    if(H5Dclose(dataset2) < 0) TEST_ERROR
+    if(i != 0) TEST_ERROR
+    PASSED()
+
+    /* Close disk dataspace */
+    if(H5Sclose(sid1) < 0)
+        TEST_ERROR
+
+    /* Close Dataset */
+    if(H5Dclose(dataset) < 0)
+        TEST_ERROR
+
+    /* Close file */
+    if(H5Fclose(fid1) < 0)
+        TEST_ERROR
+    if(H5Fclose(fid2) < 0)
+        TEST_ERROR
+
+    return 0;
+
+error:
+    return 1;
+}
+
+
+/*-------------------------------------------------------------------------
+ * Function:	test_reg_ref
+ *
+ * Purpose:	Test H5Iget_name for region references.
+ *
+ * Return:	Success:	0
+ *		Failure:	-1
+ *
+ * Programmer:  Leon Arber
+ *              Nov. 1, 2006
+ *
+ * Modifications:
+ *              Raymond Lu
+ *              30 January 2008
+ *              This function was borrowed from v1.8, which was probably
+ *              written by Leon Arber.
+ *-------------------------------------------------------------------------
+ */
+static int
+test_reg_ref(hid_t fapl)
+{
+    char filename1[1024];
+    hid_t       file_id;        /* file identifier */
+    hid_t       dsetv_id;       /*dataset identifiers*/
+    hid_t       dsetr_id;
+    hid_t       space_id, spacer_id;
+    hsize_t     dims[2] = {2,9};
+    hsize_t     dimsr[1] = {2};
+    int         rank = 2;
+    int         rankr = 1;
+    herr_t      status;
+    hdset_reg_ref_t ref[2];
+    hdset_reg_ref_t ref_out[2];
+    int         data[2][9] = {{1,1,2,3,3,4,5,5,6},{1,2,2,3,4,4,5,6,6}};
+    hsize_t     start[2];
+    hsize_t     count[2];
+    hsize_t     coord[2][3] = {{0, 0, 1}, {6, 0, 8}};
+    unsigned    num_points = 3;
+    size_t      name_size1, name_size2;
+    char        buf1[NAME_BUF_SIZE], buf2[NAME_BUF_SIZE];
+
+    /* Initialize the file name */
+    h5_fixname(FILENAME[5], fapl, filename1, sizeof filename1);
+
+    /* Create file with default file create property but vfd access property. */
+    if((file_id = H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0)
+        TEST_ERROR
+
+    /* Create dataspace for datasets */
+    if((space_id = H5Screate_simple(rank, dims, NULL)) < 0)
+        TEST_ERROR
+    if((spacer_id = H5Screate_simple(rankr, dimsr, NULL)) < 0)
+        TEST_ERROR
+
+    /* Create integer dataset */
+    if((dsetv_id = H5Dcreate(file_id, REFREG_DSETNAMEV, H5T_NATIVE_INT, space_id, H5P_DEFAULT)) < 0)
+        TEST_ERROR
+
+     /* Write data to the dataset */
+    if((status = H5Dwrite(dsetv_id, H5T_NATIVE_INT, H5S_ALL , H5S_ALL, H5P_DEFAULT,data)) < 0)
+        TEST_ERROR
+    if((status = H5Dclose(dsetv_id)) < 0)
+        TEST_ERROR
+
+    /* Dataset with references */
+    if((dsetr_id = H5Dcreate(file_id, REFREG_DSETNAMER, H5T_STD_REF_DSETREG, spacer_id, H5P_DEFAULT)) < 0)
+        TEST_ERROR
+
+    /*
+     * Create a reference to the hyperslab.
+     */
+    start[0] = 0;
+    start[1] = 3;
+    count[0] = 2;
+    count[1] = 3;
+    if((status = H5Sselect_hyperslab(space_id,H5S_SELECT_SET,start,NULL,count,NULL)) < 0)
+        TEST_ERROR
+    if((status = H5Rcreate(&ref[0], file_id, REFREG_DSETNAMEV, H5R_DATASET_REGION, space_id)) < 0)
+        TEST_ERROR
+
+    /* Create a reference to elements selection */
+    if((status = H5Sselect_none(space_id)) < 0)
+        TEST_ERROR
+    if((status = H5Sselect_elements(space_id, H5S_SELECT_SET, num_points,(const hsize_t **)coord)) < 0)
+        TEST_ERROR
+    if((status = H5Rcreate(&ref[1], file_id, REFREG_DSETNAMEV, H5R_DATASET_REGION, space_id)) < 0)
+        TEST_ERROR
+
+    /* Write dataset with the references */
+    if((status = H5Dwrite(dsetr_id, H5T_STD_REF_DSETREG, H5S_ALL, H5S_ALL, H5P_DEFAULT,ref)) < 0)
+        TEST_ERROR
+
+    /* Close all objects */
+    if((status = H5Sclose(space_id)) < 0)
+        TEST_ERROR
+    if((status = H5Sclose(spacer_id)) < 0)
+        TEST_ERROR
+    if((status = H5Dclose(dsetr_id)) < 0)
+        TEST_ERROR
+    if((status = H5Fclose(file_id)) < 0)
+        TEST_ERROR
+
+    /* Reopen the file to read selections back */
+    if((file_id = H5Fopen(filename1, H5F_ACC_RDWR, fapl)) < 0)
+        TEST_ERROR
+
+    /* Reopen the dataset with object references and read references to the buffer */
+    if((dsetr_id = H5Dopen(file_id, REFREG_DSETNAMER)) < 0)
+        TEST_ERROR
+
+    if((status = H5Dread(dsetr_id, H5T_STD_REF_DSETREG, H5S_ALL, H5S_ALL, H5P_DEFAULT, ref_out)) < 0)
+        TEST_ERROR
+
+    TESTING("H5Iget_name to get name from region reference(hyperslab)");
+
+    /* Dereference the first reference */
+    dsetv_id = H5Rdereference(dsetr_id, H5R_DATASET_REGION, &ref_out[0]);
+
+    /* Get name of the dataset the first region reference points using H5Iget_name */
+    name_size2 = H5Iget_name(dsetv_id,(char*)buf2, NAME_BUF_SIZE);
+    if(!((HDstrcmp(buf2, "/MATRIX") == 0) &&(name_size2 == 7))) TEST_ERROR
+
+    if((status = H5Dclose(dsetv_id)) < 0) TEST_ERROR
+
+    PASSED()
+
+    TESTING("H5Iget_name to get name from region reference(pnt selec)");
+
+    /* Dereference the second reference */
+    if((dsetv_id = H5Rdereference(dsetr_id, H5R_DATASET_REGION, &ref_out[1])) < 0) TEST_ERROR
+
+    /* Get name of the dataset the first region reference points using H5Iget_name */
+    name_size2 = H5Iget_name(dsetv_id,(char*)buf2, NAME_BUF_SIZE);
+    if(!((HDstrcmp(buf2, "/MATRIX") == 0) &&(name_size2 == 7))) TEST_ERROR
+
+    if((status = H5Dclose(dsetv_id)) < 0) TEST_ERROR
+
+    PASSED()
+
+    if((status = H5Dclose(dsetr_id)) < 0)
+        TEST_ERROR
+    if((status = H5Fclose(file_id)) < 0)
+        TEST_ERROR
+
+    return 0;
+
+error:
+    return 1;
 }
 
+/*-------------------------------------------------------------------------
+ * Function:	main
+ *
+ * Purpose:	Tests the "ID to name" functionality.
+ *
+ * Return:	Success:	1
+ *		Failure:	0
+ *
+ * Programmer:  Pedro Vicente <pvn at ncsa.uiuc.edu>
+ *              April 12, 2002
+ *
+ * Modifications:
+ *              Raymond Lu
+ *              30 January 2008
+ *              Added some tests for object reference and region reference.
+ *              The code was borrowed from v1.8, which was probably written
+ *              by Leon Arber.
+ *-------------------------------------------------------------------------
+ */
+main(void)
+{
+    int nerrors = 0;
+    hid_t fapl;
+
+    /* Reset the library and get the file access property list */
+    h5_reset();
+    fapl = h5_fileaccess();
+
+    /* Call "main" test routine */
+    nerrors += test_main(fapl);
+    nerrors += test_obj_ref(fapl);
+    nerrors += test_reg_ref(fapl);
+
+    if(nerrors)
+        goto error;
+    puts("All getname tests passed.");
+
+    h5_cleanup(FILENAME, fapl);
+
+    return 0;
+
+error:
+    puts("***** GET NAME TESTS FAILED *****");
+
+    return 1;
+}
diff --git a/test/mount.c b/test/mount.c
index 01658c6..4a62a05 100644
--- a/test/mount.c
+++ b/test/mount.c
@@ -1440,7 +1440,7 @@ test_mount_after_unmount(hid_t fapl)
     *objname = '\0';
     if(H5Iget_name( gidAMXMY, objname, (size_t)NAME_BUF_SIZE ) < 0)
         TEST_ERROR
-    if(HDstrcmp(objname, ""))
+    if(HDstrcmp(objname, "/X/M/Y"))
         TEST_ERROR
 
     /* Rename object in file #3 that is "disconnected" from name hiearchy */
@@ -1460,7 +1460,7 @@ test_mount_after_unmount(hid_t fapl)
     *objname = '\0';
     if(H5Iget_name( gidAMXMY, objname, (size_t)NAME_BUF_SIZE ) < 0)
 	TEST_ERROR
-    if(HDstrcmp(objname, ""))
+    if(HDstrcmp(objname, "/X/M/Z"))
 	TEST_ERROR
 
     /* Mount fourth file */
@@ -3171,7 +3171,7 @@ test_close_parent(hid_t fapl)
     /* Check the name of "M" is not defined any longer */
     if((name_len = H5Iget_name(gidM, name, (size_t)NAME_BUF_SIZE )) < 0)
         TEST_ERROR
-    if(name_len != 0)
+    if(name_len == 0 || HDstrcmp(name, "/M"))
         TEST_ERROR
 
     /* Just file #2's underlying shared file should be open still */
diff --git a/test/stream_test.c b/test/stream_test.c
deleted file mode 100644
index 3051d3b..0000000
--- a/test/stream_test.c
+++ /dev/null
@@ -1,494 +0,0 @@
-/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- * Copyright by The HDF Group.                                               *
- * Copyright by the Board of Trustees of the University of Illinois.         *
- * All rights reserved.                                                      *
- *                                                                           *
- * This file is part of HDF5.  The full HDF5 copyright notice, including     *
- * terms governing use, modification, and redistribution, is contained in    *
- * the files COPYING and Copyright.html.  COPYING can be found at the root   *
- * of the source code distribution tree; Copyright.html can be found at the  *
- * root level of an installed copy of the electronic HDF5 document set and   *
- * is linked from the top-level documents page.  It can also be found at     *
- * http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have          *
- * access to either file, you may request a copy from help at hdfgroup.org.     *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-
-/*
- * Copyright © 2000 The author.
- * The author prefers this code not be used for military purposes.
- *
- *
- * Author:  Thomas Radke <tradke at aei-potsdam.mpg.de>
- *          Tuesday, September 12, 2000
- *
- * Modifications:
- *          Thomas Radke, Thursday, October 26, 2000
- *          Made it compiling under Windows.
- *
- */
-
-/*
- *  This program tests the functionality of the Stream Virtual File Driver.
- *    1. It spawns two new processes, a sender and a receiver.
- *    2. The sender opens an HDF5 file for writing using the Stream driver.
- *       It will use a reserved port which should fail to be bound.
- *       Then it will try a couple of successive ports until bind succeeds.
- *       This final "hostname:port" information is written into a temporary
- *       file as a single line of text.
- *       The sender then writes a sample dataset to the HDF5 file.
- *       On closing the file the Stream VFD would send the file
- *       contents to any connected client.
- *    3. The receiver serves as a client attempting to open an
- *       HDF5 file for reading. On opening the file the Stream VFD
- *       would establish a socket connection to the sender process,
- *       identified by its hostname and a port number (which is obtained
- *       from the temporary text file the sender should have created),
- *       and read the file contents via this socket.
- *       Aftwerwards the dataset is read from the file into memory
- *       and verified.
- *    4. The main program waits for termination of its two child
- *       processes and returns their exit code.
- */
-
-#include <stdio.h>
-#include "hdf5.h"
-
-#ifndef H5_HAVE_STREAM
-
-int main (void)
-{
-  printf ("Test skipped because Stream Virtual File Driver not available\n");
-  return (0);
-}
-
-#elif ! defined (H5_HAVE_FORK) || ! defined (H5_HAVE_WAITPID)
-
-int main (void)
-{
-  printf ("Test skipped because this architecture doesn't provide "
-          "fork(2) and waitpid(2)\n");
-  return (0);
-}
-
-#else
-
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/wait.h>
-
-
-#define SLEEPTIME     10                  /* sleeping time in seconds    */
-#define RANK          2                   /* sample dataset rank         */
-#define DIMS          50                  /* sample dataset dimensions   */
-#define DATASETNAME   "IntArray"          /* sample dataset name         */
-#define HOSTNAME      "localhost"         /* hostname of this machine    */
-#define PORT          "5678"              /* default port to use         */
-#define MAXHUNT       500                 /* max number of ports to hunt */
-#define HDF5_FILENAME HOSTNAME ":" PORT   /* name of the streamed file   */
-#define TEMPFILENAME  "stream_test.tmp"   /* temporary filename          */
-
-
-static int sender (void)
-{
-  int     i;
-  hsize_t dims[RANK];
-  int     *data;
-  herr_t  status;
-  hid_t   fapl, file;
-  hid_t   dataspace, dataset;
-  H5FD_stream_fapl_t stream_fapl;
-  FILE    *tempfile;
-
-
-  /*
-   * Create access property list and set it to use the Stream driver.
-   */
-  fapl = H5Pcreate (H5P_FILE_ACCESS);
-  if (fapl < 0)
-  {
-    fprintf (stderr, "sender: couldn't create file access property list\n");
-    return (-1);
-  }
-
-  /*
-   * Setup file access property list and select Stream VFD.
-   *
-   *   - block increment for realloc() should be chosen by the driver
-   *   - no external socket is provided (should be created internally)
-   *   - do I/O on this processor on this socket
-   *   - only one client is allowed to connect at a time
-   *   - no READ broadcast function is provided (since we only send data)
-   *   - if bind to default port (given in the filename argument) fails
-   *     do port hunting on the following MAXHUNT ports
-   */
-  stream_fapl.increment = 0;
-  stream_fapl.socket = H5FD_STREAM_INVALID_SOCKET;
-  stream_fapl.do_socket_io = 1;
-  stream_fapl.backlog = 1;
-  stream_fapl.broadcast_fn  = NULL;
-  stream_fapl.broadcast_arg = NULL;
-  stream_fapl.maxhunt = MAXHUNT;
-
-  status = H5Pset_fapl_stream (fapl, &stream_fapl);
-  if (status < 0)
-  {
-    fprintf (stderr, "sender: couldn't set file access property list "
-                     "for Stream VFD\n");
-    H5Pclose (fapl);
-    return (-2);
-  }
-
-  /*
-   * Create the data space for fixed size dataset.
-   */
-  for (i = 0; i < RANK; i++)
-  {
-    dims[i] = DIMS;
-  }
-  dataspace = H5Screate_simple (RANK, dims, NULL);
-  if (dataspace < 0)
-  {
-    fprintf (stderr, "sender: couldn't create dataspace\n");
-    H5Pclose (fapl);
-    return (-3);
-  }
-
-  /*
-   * Data buffer initialization.
-   */
-  i = (int) H5Sget_simple_extent_npoints (dataspace);
-  data = (int *) malloc (i * sizeof (int));
-  if (data == NULL)
-  {
-    fprintf (stderr, "sender: cannot allocate buffer for dataset with "
-                     "%d integers\n", i);
-    H5Sclose (dataspace);
-    H5Pclose (fapl);
-    return (-4);
-  }
-  while (--i >= 0)
-  {
-    data[i] = i;
-  }
-
-  /*
-   * Create a new file using H5F_ACC_TRUNC access,
-   * default file creation properties, and STREAM file
-   * access properties.
-   */
-  printf ("  sender: opening file on host '%s' port %s for writing...\n",
-          HOSTNAME, PORT);
-  file = H5Fcreate (HDF5_FILENAME, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
-  if (file < 0)
-  {
-    fprintf (stderr, "sender: couldn't create file on '%s' using port %s and "
-            "following %d\n", HOSTNAME, PORT, MAXHUNT);
-    free (data);
-    H5Sclose (dataspace);
-    H5Pclose (fapl);
-    return (-5);
-  }
-
-  /*
-   * Get the file access property list to find out what port is actually used.
-   */
-  status = H5Pget_fapl_stream (fapl, &stream_fapl);
-  if (status < 0)
-  {
-    fprintf (stderr, "sender: couldn't get file access property list "
-                     "for Stream VFD\n");
-    free (data);
-    H5Sclose (dataspace);
-    H5Pclose (fapl);
-    return (-6);
-  }
-  printf ("  sender: using port %d...\n", (int) stream_fapl.port);
-
-  /*
-   * Write the "hostname:port" information to a temporary file
-   * which can be read by the receiver process.
-   */
-  tempfile = fopen (TEMPFILENAME, "w");
-  if (tempfile == NULL)
-  {
-    fprintf (stderr, "sender: couldn't open temporary file to write "
-                     "\"hostname:port\" information\n");
-    free (data);
-    H5Sclose (dataspace);
-    H5Pclose (fapl);
-    return (-7);
-  }
-  fprintf (tempfile, "%s:%d", HOSTNAME, (int) stream_fapl.port);
-  fclose (tempfile);
-
-  /*
-   * Create a new dataset within the file using defined dataspace and
-   * default dataset creation properties.
-   */
-  dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, dataspace,
-                       H5P_DEFAULT);
-  if (dataset < 0)
-  {
-    fprintf (stderr, "sender: couldn't create dataset '%s'\n", DATASETNAME);
-    free (data);
-    H5Fclose (file);
-    H5Sclose (dataspace);
-    H5Pclose (fapl);
-    return (-8);
-  }
-
-  /*
-   * Write the data to the dataset using default transfer properties.
-   */
-  printf ("  sender: writing dataset '%s' of type INTEGER to file '%s:%d'...\n",
-          DATASETNAME, HOSTNAME, (int) stream_fapl.port);
-  status = H5Dwrite (dataset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT,
-                     data);
-  if (status < 0)
-  {
-    free (data);
-    H5Fclose (file);
-    H5Dclose (dataset);
-    H5Sclose (dataspace);
-    H5Pclose (fapl);
-    fprintf (stderr, "sender: couldn't write dataset\n");
-    return (-9);
-  }
-
-  /*
-   * Now give the receiver some time to connect before closing the file
-   * and releasing resources.
-   */
-  printf ("  sender: sleeping for %d seconds...\n", SLEEPTIME);
-  sleep (SLEEPTIME);
-  printf ("  sender: closing file '%s:%d'\n", HOSTNAME, (int) stream_fapl.port);
-  H5Sclose (dataspace);
-  H5Dclose (dataset);
-  H5Fclose (file);
-  H5Pclose (fapl);
-  free (data);
-
-  return (0);
-}
-
-
-static int receiver (void)
-{
-  int i;                      /* looper */
-  hid_t fapl;                 /* file access property list */
-  hid_t file;                 /* file handle */
-  hid_t dataset;              /* dataset handle */
-  hid_t datatype;             /* datatype handle */
-  hid_t dataspace;            /* dataspace handle */
-  hsize_t nelems;             /* total number of elements in the dataset */
-  hsize_t *dims;              /* dataset dimensions */
-  int rank;                   /* dataset rank */
-  int *data;                  /* read buffer */
-  int nerrors;                /* total number of errors during verify */
-  int status;                 /* return code of HDF5 routines */
-  char filename[50];          /* filename of the streamed HDF5 file */
-  FILE    *tempfile;          /* descriptor for temporary file */
-
-
-  /*
-   * Create access property list and set it to use the Stream driver.
-   */
-  fapl = H5Pcreate (H5P_FILE_ACCESS);
-  if (fapl < 0)
-  {
-    fprintf (stderr, "receiver: couldn't create file access property list\n");
-    return (-1);
-  }
-
-  status = H5Pset_fapl_stream (fapl, NULL);
-  if (status < 0)
-  {
-    fprintf (stderr, "receiver: couldn't set file access property list "
-                     "for Stream VFD\n");
-    H5Pclose (fapl);
-    return (-2);
-  }
-
-  /*
-   * Now give the sender some time to open the file and accepting connections.
-   */
-  printf ("  receiver: sleeping for %d seconds...\n", SLEEPTIME / 2);
-  sleep (SLEEPTIME / 2);
-
-  /*
-   * Read the "hostname:port" information from the temporary file
-   * the sender should have created.
-   */
-  tempfile = fopen (TEMPFILENAME, "r");
-  if (tempfile == NULL)
-  {
-    fprintf (stderr, "receiver: couldn't open temporary file to read "
-                     "\"hostname:port\" information\n");
-    H5Pclose (fapl);
-    return (-3);
-  }
-  fgets (filename, sizeof (filename) - 1, tempfile);
-  fclose (tempfile);
-  unlink (TEMPFILENAME);
-
-  /*
-   * Open the streamed HDF5 file for reading.
-   */
-  printf ("  receiver: opening file '%s' for reading...\n", filename);
-  file = H5Fopen (filename, H5F_ACC_RDONLY, fapl);
-  H5Pclose (fapl);
-  if (file < 0)
-  {
-    fprintf (stderr, "receiver: couldn't open file from '%s'\n", filename);
-    return (-4);
-  }
-
-  /*
-   * Open the file and the dataset.
-   */
-  printf ("  receiver: reading dataset '%s'...\n", DATASETNAME);
-  dataset = H5Dopen (file, DATASETNAME);
-  if (dataset < 0)
-  {
-    fprintf (stderr, "receiver: couldn't open dataset '%s'\n", DATASETNAME);
-    return (-5);
-  }
-
-  /*
-   * Get dataset class, order, and size information
-   */
-  datatype = H5Dget_type (dataset);
-  if (H5Tget_class (datatype) == H5T_INTEGER)
-  {
-    printf ("  receiver: dataset is of type INTEGER\n");
-  }
-  printf ("  receiver: datatype size is %d bytes\n",
-          (int) H5Tget_size (datatype));
-  printf ("  receiver: byte ordering is %s endian\n",
-          H5Tget_order (datatype) == H5T_ORDER_LE ? "little" : "big");
-  H5Tclose(datatype);
-
-  /*
-   * Get dataset dimensions
-   */
-  dataspace = H5Dget_space (dataset);
-  rank      = H5Sget_simple_extent_ndims (dataspace);
-  dims      = (hsize_t *) malloc (rank * sizeof (hsize_t));
-  H5Sget_simple_extent_dims (dataspace, dims, NULL);
-  H5Sclose (dataspace);
-
-  printf ("  receiver: rank %d, dimensions %u", rank, (unsigned int) dims[0]);
-  nelems = dims[0];
-  for (i = 1; i < rank; i++)
-  {
-    printf (" x %u", (unsigned int) dims[i]);
-    nelems *= dims[i];
-  }
-  printf ("\n  receiver: total number of elements: %d\n", (int) nelems);
-  free (dims);
-
-  /*
-   * Read dataset from file into memory.
-   */
-  data = (int *) malloc ((size_t) nelems * sizeof (int));
-  status = H5Dread (dataset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT,
-                    data);
-  H5Dclose (dataset);
-
-  /*
-   * Close the file.
-   */
-  printf ("  receiver: closing file '%s'...\n", filename);
-  H5Fclose (file);
-
-  /*
-   * Verify the dataset contents
-   */
-  printf ("  receiver: verifying contents of dataset '%s'...\n", DATASETNAME);
-  for (i = nerrors = 0; i < (int) nelems; i++)
-  {
-    if (data[i] != i)
-    {
-      fprintf (stderr, "receiver: data error at offset %d: "
-                       "expected %d got %d\n", i, i, data[i]);
-      nerrors++;
-    }
-  }
-  printf ("  receiver: dataset verified, %d errors found\n", nerrors);
-
-  free (data);
-
-  return (-nerrors);
-}
-
-
-int main (void)
-{
-  int main_status, sender_status, receiver_status;
-  pid_t sender_pid, receiver_pid;
-
-
-  sender_pid = receiver_pid = 0;
-
-  /* main's return code for success */
-  main_status = 0;
-
-  /* spawn off the sender and the receiver process */
-  printf ("main: starting sender process...\n");
-  sender_pid = fork ();
-  if (sender_pid == 0)
-  {
-    return (sender ());
-  }
-  else if (sender_pid < 0)
-  {
-    perror ("Failed to spawn sender");
-    main_status = -1;
-  }
-  else
-  {
-    printf ("main: starting receiver process...\n");
-    receiver_pid = fork ();
-    if (receiver_pid == 0)
-    {
-      return (receiver ());
-    }
-    else if (sender_pid < 0)
-    {
-      perror ("Failed to spawn receiver");
-      main_status = -1;
-    }
-  }
-
-  /* wait for the termination of sender and receiver and check their status */
-  printf ("main: waiting for termination of sender and receiver process...\n");
-  if (sender_pid > 0 &&
-      waitpid (sender_pid, &sender_status, 0) != sender_pid)
-  {
-    perror ("Failed to wait for termination of sender");
-    main_status = -1;
-  }
-  else
-  {
-    main_status |= sender_status;
-  }
-  if (receiver_pid > 0 &&
-      waitpid (receiver_pid, &receiver_status, 0) != receiver_pid)
-  {
-    perror ("Failed to wait for termination of receiver");
-    main_status = -1;
-  }
-  else
-  {
-    main_status |= receiver_status;
-  }
-
-  printf (main_status == 0 ?
-          "Stream Virtual File Driver test passed.\n" :
-          "*** Stream Virtual File Driver TEST FAILED ***\n");
-
-  return (main_status);
-}
-
-#endif /* H5_HAVE_STREAM */
diff --git a/tools/testfiles/tmulti-s.h5 b/test/tbad_msg_count.h5
similarity index 56%
copy from tools/testfiles/tmulti-s.h5
copy to test/tbad_msg_count.h5
index 5b4ef20..ca5eb65 100644
Binary files a/tools/testfiles/tmulti-s.h5 and b/test/tbad_msg_count.h5 differ
diff --git a/test/tcoords.c b/test/tcoords.c
new file mode 100644
index 0000000..880c3f4
--- /dev/null
+++ b/test/tcoords.c
@@ -0,0 +1,507 @@
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group.                                               *
+ * Copyright by the Board of Trustees of the University of Illinois.         *
+ * All rights reserved.                                                      *
+ *                                                                           *
+ * This file is part of HDF5.  The full HDF5 copyright notice, including     *
+ * terms governing use, modification, and redistribution, is contained in    *
+ * the files COPYING and Copyright.html.  COPYING can be found at the root   *
+ * of the source code distribution tree; Copyright.html can be found at the  *
+ * root level of an installed copy of the electronic HDF5 document set and   *
+ * is linked from the top-level documents page.  It can also be found at     *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have          *
+ * access to either file, you may request a copy from help at hdfgroup.org.     *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+/***********************************************************
+*
+* Test program:	 tcoords
+*
+* Test the element coordinates for dataspace selection.  For
+* chunked dataset, when the hyperslab selection of some 
+* dimensions is full, the library optimize it by "flattenning"
+* the fully selected dimensions.  This program tests if the
+* coordinates of selected elements are correctly calculated.
+*
+*************************************************************/
+
+#include "testhdf5.h"
+
+#define FILENAME   "coord.h5"
+
+/***********************************************************
+**
+** test_single_end(): Test full hyperslab selection of only 
+** one block.
+** 
+*************************************************************/
+static void test_single_end(hid_t file)
+{
+    hid_t sid, plid, did, msid;
+    herr_t ret;                 /* Generic error return */
+    int i, j, k;
+    hsize_t da_dims[4] = { 2, 3, 6, 2 };
+    hsize_t da_chunksize[4] = { 1, 3, 3, 2 };
+    int da_buffer[2][3][6][2];
+
+    /* For testing the full selection in the fastest-growing end */
+    int mem1_buffer[1][1][6][2];
+    hsize_t mem1_dims[4] = { 1, 1, 6, 2 };
+    hsize_t da_elmts1[12][4] = { {0, 0, 0, 0},
+                                 {0, 0, 0, 1},
+                                 {0, 0, 1, 0},
+                                 {0, 0, 1, 1},
+                                 {0, 0, 2, 0},
+                                 {0, 0, 2, 1},
+                                 {0, 0, 3, 0},
+                                 {0, 0, 3, 1},
+                                 {0, 0, 4, 0},
+                                 {0, 0, 4, 1},
+                                 {0, 0, 5, 0},
+                                 {0, 0, 5, 1} };
+
+    /* For testing the full selection in the slowest-growing end */
+    int mem2_buffer[2][3][1][1];
+    hsize_t mem2_dims[4] = { 2, 3, 1, 1 };
+    hsize_t da_elmts2[6][4] = { {0, 0, 0, 0},
+                                {0, 1, 0, 0},
+                                {0, 2, 0, 0},
+                                {1, 0, 0, 0},
+                                {1, 1, 0, 0},
+                                {1, 2, 0, 0} };
+
+    /* For testing the full selection in the middle dimensions */
+    int mem3_buffer[1][3][6][1];
+    hsize_t mem3_dims[4] = { 1, 3, 6, 1 };
+    hsize_t mem3_start[4] = { 0, 0, 0, 0 };
+    hsize_t mem3_count[4] = { 1, 1, 1, 1 };
+    hsize_t mem3_stride[4] = { 1, 1, 1, 1 };
+    hsize_t mem3_block[4] = { 1, 3, 6, 1 };
+
+    /* Create and write the dataset */
+    sid = H5Screate_simple(4, da_dims, da_dims);
+    CHECK(sid, FAIL, "H5Screate_simple");
+
+    plid = H5Pcreate(H5P_DATASET_CREATE);
+    CHECK(plid, FAIL, "H5Pcreate");
+
+    ret = H5Pset_chunk(plid, 4, da_chunksize);
+    CHECK(ret, FAIL, "H5Pset_chunk");
+
+    did = H5Dcreate(file, "single_end", H5T_NATIVE_INT, sid, plid);
+    CHECK(did, FAIL, "H5Dcreate");
+
+    for(i=0; i<2; i++) {
+        for(j=0; j<3; j++) {
+            for(k=0; k<6; k++) {
+                da_buffer[i][j][k][0] = i*100 + j*10 + k;
+                da_buffer[i][j][k][0] = i*100 + j*10 + k + 1;
+            }
+        }
+    }
+
+    ret = H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, da_buffer);
+    CHECK(ret, FAIL, "H5Dwrite");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+  
+    /* ****** Case 1: ******
+     * Testing the full selection in the fastest-growing end */
+    did = H5Dopen(file, "single_end");
+    CHECK(did, FAIL, "H5Dopen");
+
+    /* Select the elements in the dataset */
+    ret = H5Sselect_elements(sid, H5S_SELECT_SET, (const size_t)12, da_elmts1);
+    CHECK(ret, FAIL, "H5Sselect_elements");
+
+    msid = H5Screate_simple(4, mem1_dims, mem1_dims);
+    CHECK(msid, FAIL, "H5Screate_simple");
+
+    ret = H5Sselect_all(msid);
+    CHECK(ret, FAIL, "H5Sselect_all");
+
+    ret = H5Dread(did, H5T_NATIVE_INT, msid, sid, H5P_DEFAULT, mem1_buffer);
+    CHECK(ret, FAIL, "H5Dread");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+    ret = H5Sclose(msid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    for(i=0; i<6; i++)
+        for(j=0; j<2; j++)
+            if(da_buffer[0][0][i][j] != mem1_buffer[0][0][i][j]) {
+                TestErrPrintf("Read different values than written at index 0,0,%d,%d\n", i, j);
+            }
+
+    /* ****** Case 2: ******
+     * Testing the full selection in the slowest-growing end */
+    did = H5Dopen(file, "single_end");
+    CHECK(did, FAIL, "H5Dopen");
+
+    /* Select the elements in the dataset */
+    ret = H5Sselect_elements(sid, H5S_SELECT_SET, (const size_t)6, da_elmts2);
+    CHECK(ret, FAIL, "H5Sselect_elements");
+
+    msid = H5Screate_simple(4, mem2_dims, mem2_dims);
+    CHECK(msid, FAIL, "H5Screate_simple");
+
+    ret = H5Sselect_all(msid);
+    CHECK(ret, FAIL, "H5Sselect_all");
+
+    ret = H5Dread(did, H5T_NATIVE_INT, msid, sid, H5P_DEFAULT, mem2_buffer);
+    CHECK(ret, FAIL, "H5Dread");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+    ret = H5Sclose(msid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    for(i=0; i<2; i++)
+        for(j=0; j<3; j++)
+            if(da_buffer[i][j][0][0] != mem2_buffer[i][j][0][0]) {
+                TestErrPrintf("Read different values than written at index %d,%d,0,0\n", i, j);
+            }
+
+    /* ****** Case 3: ******
+     * Testing the full selection in the middle dimensions */
+    did = H5Dopen(file, "single_end");
+    CHECK(did, FAIL, "H5Dopen");
+
+    /* Select the elements in the dataset */
+    ret = H5Sselect_hyperslab(sid, H5S_SELECT_SET, mem3_start, mem3_stride, mem3_count, mem3_block);
+    CHECK(ret, FAIL, "H5Sselect_hyperslab");
+
+    msid = H5Screate_simple(4, mem3_dims, mem3_dims);
+    CHECK(msid, FAIL, "H5Screate_simple");
+
+    ret = H5Sselect_all(msid);
+    CHECK(ret, FAIL, "H5Sselect_all");
+
+    ret = H5Dread(did, H5T_NATIVE_INT, msid, sid, H5P_DEFAULT, mem3_buffer);
+    CHECK(ret, FAIL, "H5Dread");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+    ret = H5Sclose(msid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    for(i=0; i<3; i++)
+        for(j=0; j<6; j++)
+            if(da_buffer[0][i][j][0] != mem3_buffer[0][i][j][0]) {
+                TestErrPrintf("Read different values than written at index 0,%d,%d,0\n", i, j);
+            }
+
+
+    ret = H5Sclose(sid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    ret = H5Pclose(plid);
+    CHECK(ret, FAIL, "H5Pclose");
+}
+
+
+/***********************************************************
+**
+** test_multiple_end(): Test full hyperslab selection of 
+** multiple blocks.
+** 
+*************************************************************/
+static void test_multiple_ends(hid_t file)
+{
+    hid_t sid, plid, did, msid;
+    herr_t ret;                 /* Generic error return */
+    int i, j, k, l, m, n, p;
+    hsize_t da_dims[8] = { 4, 5, 3, 4, 2, 3, 6, 2 };
+    hsize_t da_chunksize[8] = { 1, 5, 3, 2, 2, 3, 3, 2 };
+    int da_buffer[4][5][3][4][2][3][6][2];
+
+    /* For testing the full selections in the fastest-growing end and in the middle dimensions */
+    int mem1_buffer[1][1][1][4][2][1][6][2];
+    hsize_t mem1_dims[8] = { 1, 1, 1, 4, 2, 1, 6, 2 };
+    hsize_t mem1_start[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
+    hsize_t mem1_count[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem1_stride[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem1_block[8] = { 1, 1, 1, 4, 2, 1, 6, 2 };
+
+    /* For testing the full selections in the slowest-growing end and in the middle dimensions */
+    int mem2_buffer[4][5][1][4][2][1][1][1];
+    hsize_t mem2_dims[8] = { 4, 5, 1, 4, 2, 1, 1, 1 };
+    hsize_t mem2_start[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
+    hsize_t mem2_count[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem2_stride[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem2_block[8] = { 4, 5, 1, 4, 2, 1, 1, 1 };
+
+    /* For testing two unadjacent full selections in the middle dimensions */
+    int mem3_buffer[1][5][3][1][1][3][6][1];
+    hsize_t mem3_dims[8] = { 1, 5, 3, 1, 1, 3, 6, 1 };
+    hsize_t mem3_start[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
+    hsize_t mem3_count[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem3_stride[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem3_block[8] = { 1, 5, 3, 1, 1, 3, 6, 1 };
+
+    /* For testing the full selections in the fastest-growing end and the slowest-growing end */
+    int mem4_buffer[4][5][1][1][1][1][6][2];
+    hsize_t mem4_dims[8] = { 4, 5, 1, 1, 1, 1, 6, 2 };
+    hsize_t mem4_start[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
+    hsize_t mem4_count[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem4_stride[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem4_block[8] = { 4, 5, 1, 1, 1, 1, 6, 2 };
+
+    /* For testing the full selections in the fastest-growing end and slowest-growing end,
+     * also in the middle dimensions */
+    int mem5_buffer[4][5][1][4][2][1][6][2];
+    hsize_t mem5_dims[8] = { 4, 5, 1, 4, 2, 1, 6, 2 };
+    hsize_t mem5_start[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
+    hsize_t mem5_count[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem5_stride[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
+    hsize_t mem5_block[8] = { 4, 5, 1, 4, 2, 1, 6, 2 };
+
+    /* Create and write the dataset */
+    sid = H5Screate_simple(8, da_dims, da_dims);
+    CHECK(sid, FAIL, "H5Screate_simple");
+
+    plid = H5Pcreate(H5P_DATASET_CREATE);
+    CHECK(plid, FAIL, "H5Pcreate");
+
+    ret = H5Pset_chunk(plid, 8, da_chunksize);
+    CHECK(ret, FAIL, "H5Pset_chunk");
+
+    did = H5Dcreate(file, "multiple_ends", H5T_NATIVE_INT, sid, plid);
+    CHECK(did, FAIL, "H5Dcreate");
+
+    for(i=0; i<4; i++)
+        for(j=0; j<5; j++)
+            for(k=0; k<3; k++)
+                for(l=0; l<4; l++)
+                    for(m=0; m<2; m++)
+                        for(n=0; n<3; n++)
+                            for(p=0; p<6; p++) {                
+                                da_buffer[i][j][k][l][m][n][p][0] = i*1000000 + j*100000 + k*10000 + l*1000 + m*100 + n*10 + p;
+                                da_buffer[i][j][k][l][m][n][p][1] = i*1000000 + j*100000 + k*10000 + l*1000 + m*100 + n*10 + p + 1;
+                            }
+
+    ret = H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, da_buffer);
+    CHECK(ret, FAIL, "H5Dwrite");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+    /* ****** Case 1: ******
+     * Testing the full selections in the fastest-growing end and in the middle dimensions*/
+    did = H5Dopen(file, "multiple_ends");
+    CHECK(did, FAIL, "H5Dopen");
+
+    /* Select the elements in the dataset */
+    ret = H5Sselect_hyperslab(sid, H5S_SELECT_SET, mem1_start, mem1_stride, mem1_count, mem1_block);
+    CHECK(ret, FAIL, "H5Sselect_hyperslab");
+
+    msid = H5Screate_simple(8, mem1_dims, mem1_dims);
+    CHECK(msid, FAIL, "H5Screate_simple");
+
+    ret = H5Sselect_all(msid);
+    CHECK(ret, FAIL, "H5Sselect_all");
+
+    ret = H5Dread(did, H5T_NATIVE_INT, msid, sid, H5P_DEFAULT, mem1_buffer);
+    CHECK(ret, FAIL, "H5Dread");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+    ret = H5Sclose(msid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    for(i=0; i<4; i++)
+        for(j=0; j<2; j++)
+            for(k=0; k<6; k++)
+                for(l=0; l<2; l++)
+                    if(da_buffer[0][0][0][i][j][0][k][l] != mem1_buffer[0][0][0][i][j][0][k][l]) {
+                        TestErrPrintf("Read different values than written at index 0,0,0,%d,%d,0,%d,%d\n", i, j, k, l);
+                    }
+
+    /* ****** Case 2: ******
+     * Testing the full selections in the slowest-growing end and in the middle dimensions*/
+    did = H5Dopen(file, "multiple_ends");
+    CHECK(did, FAIL, "H5Dopen");
+
+    /* Select the elements in the dataset */
+    ret = H5Sselect_hyperslab(sid, H5S_SELECT_SET, mem2_start, mem2_stride, mem2_count, mem2_block);
+    CHECK(ret, FAIL, "H5Sselect_hyperslab");
+
+    msid = H5Screate_simple(8, mem2_dims, mem2_dims);
+    CHECK(msid, FAIL, "H5Screate_simple");
+
+    ret = H5Sselect_all(msid);
+    CHECK(ret, FAIL, "H5Sselect_all");
+
+    ret = H5Dread(did, H5T_NATIVE_INT, msid, sid, H5P_DEFAULT, mem2_buffer);
+    CHECK(ret, FAIL, "H5Dread");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+    ret = H5Sclose(msid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    for(i=0; i<4; i++)
+        for(j=0; j<5; j++)
+            for(k=0; k<4; k++)
+                for(l=0; l<2; l++)
+                    if(da_buffer[i][j][0][k][l][0][0][0] != mem2_buffer[i][j][0][k][l][0][0][0]) {
+                        TestErrPrintf("Read different values than written at index %d,%d,0,%d,%d,0,0,0\n", i, j, k, l);
+                    }
+
+    /* ****** Case 3: ******
+     * Testing two unadjacent full selections in the middle dimensions */
+    did = H5Dopen(file, "multiple_ends");
+    CHECK(did, FAIL, "H5Dopen");
+
+    /* Select the elements in the dataset */
+    ret = H5Sselect_hyperslab(sid, H5S_SELECT_SET, mem3_start, mem3_stride, mem3_count, mem3_block);
+    CHECK(ret, FAIL, "H5Sselect_hyperslab");
+
+    msid = H5Screate_simple(8, mem3_dims, mem3_dims);
+    CHECK(msid, FAIL, "H5Screate_simple");
+
+    ret = H5Sselect_all(msid);
+    CHECK(ret, FAIL, "H5Sselect_all");
+
+    ret = H5Dread(did, H5T_NATIVE_INT, msid, sid, H5P_DEFAULT, mem3_buffer);
+    CHECK(ret, FAIL, "H5Dread");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+    ret = H5Sclose(msid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    for(i=0; i<5; i++)
+        for(j=0; j<3; j++)
+            for(k=0; k<3; k++)
+                for(l=0; l<6; l++)
+                    if(da_buffer[0][i][j][0][0][k][l][0] != mem3_buffer[0][i][j][0][0][k][l][0]) {
+                        TestErrPrintf("Read different values than written at index 0,%d,%d,0,0,%d,%d,0\n", i, j, k, l);
+                    }
+
+    /* ****** Case 4: ******
+     * Testing the full selections in the fastest-growing end and the slowest-growing end */
+    did = H5Dopen(file, "multiple_ends");
+    CHECK(did, FAIL, "H5Dopen");
+
+    /* Select the elements in the dataset */
+    ret = H5Sselect_hyperslab(sid, H5S_SELECT_SET, mem4_start, mem4_stride, mem4_count, mem4_block);
+    CHECK(ret, FAIL, "H5Sselect_hyperslab");
+
+    msid = H5Screate_simple(8, mem4_dims, mem4_dims);
+    CHECK(msid, FAIL, "H5Screate_simple");
+
+    ret = H5Sselect_all(msid);
+    CHECK(ret, FAIL, "H5Sselect_all");
+
+    ret = H5Dread(did, H5T_NATIVE_INT, msid, sid, H5P_DEFAULT, mem4_buffer);
+    CHECK(ret, FAIL, "H5Dread");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+    ret = H5Sclose(msid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    for(i=0; i<4; i++)
+        for(j=0; j<5; j++)
+            for(k=0; k<6; k++)
+                for(l=0; l<2; l++)
+                    if(da_buffer[i][j][0][0][0][0][k][l] != mem4_buffer[i][j][0][0][0][0][k][l]) {
+                        TestErrPrintf("Read different values than written at index %d,%d,0,0,0,0,%d,%d\n", i, j, k, l);
+                    }
+
+
+    /* ****** Case 5: ******
+     * Testing the full selections in the fastest-growing end and the slowest-growing end, 
+     * and also in the middle dimensions */
+    did = H5Dopen(file, "multiple_ends");
+    CHECK(did, FAIL, "H5Dopen");
+
+    /* Select the elements in the dataset */
+    ret = H5Sselect_hyperslab(sid, H5S_SELECT_SET, mem5_start, mem5_stride, mem5_count, mem5_block);
+    CHECK(ret, FAIL, "H5Sselect_hyperslab");
+
+    msid = H5Screate_simple(8, mem5_dims, mem5_dims);
+    CHECK(msid, FAIL, "H5Screate_simple");
+
+    ret = H5Sselect_all(msid);
+    CHECK(ret, FAIL, "H5Sselect_all");
+
+    ret = H5Dread(did, H5T_NATIVE_INT, msid, sid, H5P_DEFAULT, mem5_buffer);
+    CHECK(ret, FAIL, "H5Dread");
+
+    ret = H5Dclose(did);
+    CHECK(ret, FAIL, "H5Dclose");
+
+    ret = H5Sclose(msid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    for(i=0; i<4; i++)
+        for(j=0; j<5; j++)
+            for(k=0; k<4; k++)
+                for(l=0; l<2; l++)
+                    for(m=0; m<6; m++)
+                        for(n=0; n<2; n++)
+                            if(da_buffer[i][j][0][k][l][0][m][n] != mem5_buffer[i][j][0][k][l][0][m][n]) {
+                                TestErrPrintf("Read different values than written at index %d,%d,0,%d,%d,0,%d,%d\n", i, j, k, l, m, n);
+                            }
+
+
+    ret = H5Sclose(sid);
+    CHECK(ret, FAIL, "H5Sclose");
+
+    ret = H5Pclose(plid);
+    CHECK(ret, FAIL, "H5Pclose");
+}
+
+
+/****************************************************************
+**
+**  test_coords(): Main testing routine.
+**
+****************************************************************/
+void test_coords(void)
+{
+    hid_t fid;
+    herr_t ret;                 /* Generic error return */
+
+    fid = H5Fcreate(FILENAME, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
+    CHECK(fid, FAIL, "H5Fcreate");
+
+    test_single_end(fid);
+    test_multiple_ends(fid);
+
+    ret = H5Fclose(fid);
+    CHECK(ret, FAIL, "H5Fclose");
+}
+
+
+/*-------------------------------------------------------------------------
+ * Function:	cleanup_coords
+ *
+ * Purpose:	Cleanup temporary test files
+ *
+ * Return:	none
+ *
+ * Programmer:	Raymond Lu
+ *              20 Dec. 2007
+ *
+ * Modifications:
+ *
+ *-------------------------------------------------------------------------
+ */
+void
+cleanup_coords(void)
+{
+    remove(FILENAME);
+}
diff --git a/test/testhdf5.c b/test/testhdf5.c
index 9d85b08..6065d64 100644
--- a/test/testhdf5.c
+++ b/test/testhdf5.c
@@ -52,6 +52,7 @@ main(int argc, char *argv[])
     AddTest("refstr", test_refstr, NULL,  "Reference Counted Strings", NULL);
     AddTest("file", test_file, cleanup_file, "Low-Level File I/O", NULL);
     AddTest("h5s",  test_h5s,  cleanup_h5s,  "Dataspaces", NULL);
+    AddTest("coords",  test_coords,  cleanup_coords,  "Dataspace coordinates", NULL);
     AddTest("attr", test_attr, cleanup_attr,  "Attributes", NULL);
     AddTest("select", test_select, cleanup_select,  "Selections", NULL);
     AddTest("time", test_time, cleanup_time,  "Time Datatypes", NULL);
diff --git a/test/testhdf5.h b/test/testhdf5.h
index 0bc00d7..777ec1d 100644
--- a/test/testhdf5.h
+++ b/test/testhdf5.h
@@ -130,6 +130,7 @@ void                    test_refstr(void);
 void                    test_file(void);
 void                    test_h5t(void);
 void                    test_h5s(void);
+void                    test_coords(void);
 void                    test_h5d(void);
 void                    test_attr(void);
 void                    test_select(void);
@@ -148,6 +149,7 @@ void			test_skiplist(void);
 void                    cleanup_metadata(void);
 void                    cleanup_file(void);
 void                    cleanup_h5s(void);
+void                    cleanup_coords(void);
 void                    cleanup_attr(void);
 void                    cleanup_select(void);
 void                    cleanup_time(void);
diff --git a/test/tmisc.c b/test/tmisc.c
index 88c9ea2..3e38b8f 100644
--- a/test/tmisc.c
+++ b/test/tmisc.c
@@ -279,6 +279,13 @@ unsigned m13_rdata[MISC13_DIM1][MISC13_DIM2];          /* Data read from dataset
 #define MISC25B_FILE            "mergemsg.h5"
 #define MISC25B_GROUP           "grp1"
 
+/* Definitions for misc. test #27 */
+/* (Note that this test file is generated by the "gen_bad_ohdr.c" code in
+ *	the 1.8 branch/trunk)
+ */
+#define MISC27_FILE             "tbad_msg_count.h5"
+#define MISC27_GROUP            "Group"
+
 /****************************************************************
 **
 **  test_misc1(): test unlinking a dataset from a group and immediately
@@ -4186,6 +4193,60 @@ test_misc25b(void)
     CHECK(ret, FAIL, "H5Fclose");
 } /* end test_misc25a() */
 
+
+/****************************************************************
+**
+**  test_misc27(): Ensure that objects with incorrect # of object
+**                      header messages are handled appropriately.
+**
+** (Note that this test file is generated by the "gen_bad_ohdr.c" code,
+**	in the 1.8 branch/trunk)
+**
+****************************************************************/
+static void
+test_misc27(void)
+{
+    hid_t fid;          /* File ID */
+    hid_t gid;          /* Group ID */
+    char testfile[512]="";          /* Character buffer for corrected test file name */
+    char *srcdir = HDgetenv("srcdir");    /* Pointer to the directory the source code is located within */
+    herr_t ret;         /* Generic return value */
+
+    /* Output message about test being performed */
+    MESSAGE(5, ("Corrupt object header handling\n"));
+
+    /* Generate the correct name for the test file, by prepending the source path */
+    if(srcdir && ((HDstrlen(srcdir) + HDstrlen(MISC27_FILE) + 1) < sizeof(testfile))) {
+        HDstrcpy(testfile, srcdir);
+        HDstrcat(testfile, "/");
+    }
+    HDstrcat(testfile, MISC27_FILE);
+
+    /* Open the file */
+    fid = H5Fopen(testfile, H5F_ACC_RDONLY, H5P_DEFAULT);
+    CHECK(fid, FAIL, "H5Fopen");
+
+#ifdef H5_STRICT_FORMAT_CHECKS
+    /* Open group with incorrect # of object header messages (should fail) */
+    H5E_BEGIN_TRY {
+        gid = H5Gopen(fid, MISC27_GROUP);
+    } H5E_END_TRY;
+    VERIFY(gid, FAIL, "H5Gopen");
+#else /* H5_STRICT_FORMAT_CHECKS */
+    /* Open group with incorrect # of object header messages */
+    gid = H5Gopen(fid, MISC27_GROUP);
+    CHECK(gid, FAIL, "H5Gopen");
+
+    /* Close group */
+    ret = H5Gclose(gid);
+    CHECK(ret, FAIL, "H5Gclose");
+#endif /* H5_STRICT_FORMAT_CHECKS */
+
+    /* Close file */
+    ret = H5Fclose(fid);
+    CHECK(ret, FAIL, "H5Fclose");
+} /* end test_misc27() */
+
 /****************************************************************
 **
 **  test_misc(): Main misc. test routine.
@@ -4225,6 +4286,8 @@ test_misc(void)
     test_misc24();      /* Test inappropriate API opens of objects */
     test_misc25a();     /* Exercise null object header message merge bug */
     test_misc25b();     /* Exercise null object header message merge bug on existing file */
+    /* misc. test #26 only in 1.8 branch/trunk */
+    test_misc27();      /* Test opening file with object that has bad # of object header messages */
 
 } /* test_misc() */
 
diff --git a/test/trefer.c b/test/trefer.c
index 8c01526..c538701 100644
--- a/test/trefer.c
+++ b/test/trefer.c
@@ -423,7 +423,7 @@ test_reference_region(void)
     coord1[7][0]=9; coord1[7][1]=0;
     coord1[8][0]=7; coord1[8][1]=1;
     coord1[9][0]=3; coord1[9][1]=3;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord1);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,coord1);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     ret = (int)H5Sget_select_npoints(sid2);
@@ -695,7 +695,7 @@ test_reference_region_1D(void)
     coord1[7][0]=89;
     coord1[8][0]=97;
     coord1[9][0]=03;
-    ret = H5Sselect_elements(sid3,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord1);
+    ret = H5Sselect_elements(sid3,H5S_SELECT_SET,POINT1_NPOINTS,coord1);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     ret = (int)H5Sget_select_npoints(sid3);
diff --git a/test/tselect.c b/test/tselect.c
index 5b6c0c5..3483526 100644
--- a/test/tselect.c
+++ b/test/tselect.c
@@ -423,7 +423,7 @@ test_select_point(hid_t xfer_plist)
     coord1[7][0]=1; coord1[7][1]= 0; coord1[7][2]= 4;
     coord1[8][0]=2; coord1[8][1]= 1; coord1[8][2]= 6;
     coord1[9][0]=0; coord1[9][1]= 3; coord1[9][2]= 8;
-    ret = H5Sselect_elements(sid1,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord1);
+    ret = H5Sselect_elements(sid1,H5S_SELECT_SET,POINT1_NPOINTS,coord1);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Verify correct elements selected */
@@ -448,7 +448,7 @@ test_select_point(hid_t xfer_plist)
     coord1[7][0]=1; coord1[7][1]=14; coord1[7][2]= 6;
     coord1[8][0]=2; coord1[8][1]= 2; coord1[8][2]= 5;
     coord1[9][0]=0; coord1[9][1]= 6; coord1[9][2]=13;
-    ret = H5Sselect_elements(sid1,H5S_SELECT_APPEND,POINT1_NPOINTS,(const hsize_t **)coord1);
+    ret = H5Sselect_elements(sid1,H5S_SELECT_APPEND,POINT1_NPOINTS,coord1);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Verify correct elements selected */
@@ -473,7 +473,7 @@ test_select_point(hid_t xfer_plist)
     coord2[7][0]=29; coord2[7][1]= 4;
     coord2[8][0]= 8; coord2[8][1]= 8;
     coord2[9][0]=19; coord2[9][1]=17;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord2);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,coord2);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Verify correct elements selected */
@@ -502,7 +502,7 @@ test_select_point(hid_t xfer_plist)
     coord2[7][0]=12; coord2[7][1]= 2;
     coord2[8][0]=21; coord2[8][1]=12;
     coord2[9][0]= 9; coord2[9][1]=18;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_PREPEND,POINT1_NPOINTS,(const hsize_t **)coord2);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_PREPEND,POINT1_NPOINTS,coord2);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Verify correct elements selected */
@@ -544,7 +544,7 @@ test_select_point(hid_t xfer_plist)
     coord3[7][0]= 1; coord3[7][1]=22;
     coord3[8][0]=12; coord3[8][1]=21;
     coord3[9][0]=11; coord3[9][1]= 6;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord3);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,coord3);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Verify correct elements selected */
@@ -568,7 +568,7 @@ test_select_point(hid_t xfer_plist)
     coord3[7][0]= 9; coord3[7][1]=16;
     coord3[8][0]=12; coord3[8][1]=22;
     coord3[9][0]=13; coord3[9][1]= 9;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_APPEND,POINT1_NPOINTS,(const hsize_t **)coord3);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_APPEND,POINT1_NPOINTS,coord3);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Verify correct elements selected */
@@ -921,7 +921,7 @@ test_select_combo(void)
     coord1[7][0]=1; coord1[7][1]= 0; coord1[7][2]= 4;
     coord1[8][0]=2; coord1[8][1]= 1; coord1[8][2]= 6;
     coord1[9][0]=0; coord1[9][1]= 3; coord1[9][2]= 8;
-    ret = H5Sselect_elements(sid1,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord1);
+    ret = H5Sselect_elements(sid1,H5S_SELECT_SET,POINT1_NPOINTS,coord1);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Select 1x10 hyperslab for writing memory dataset */
@@ -1756,7 +1756,7 @@ test_select_point_copy(void)
     coord1[7][0]=1; coord1[7][1]= 0; coord1[7][2]= 4;
     coord1[8][0]=2; coord1[8][1]= 1; coord1[8][2]= 6;
     coord1[9][0]=0; coord1[9][1]= 3; coord1[9][2]= 8;
-    ret = H5Sselect_elements(sid1,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord1);
+    ret = H5Sselect_elements(sid1,H5S_SELECT_SET,POINT1_NPOINTS,coord1);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Select sequence of ten points for write dataset */
@@ -1770,7 +1770,7 @@ test_select_point_copy(void)
     coord2[7][0]=29; coord2[7][1]= 4;
     coord2[8][0]= 8; coord2[8][1]= 8;
     coord2[9][0]=19; coord2[9][1]=17;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord2);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,coord2);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Make a copy of the dataspace to write */
@@ -1814,7 +1814,7 @@ test_select_point_copy(void)
     coord3[7][0]= 1; coord3[7][1]=22;
     coord3[8][0]=12; coord3[8][1]=21;
     coord3[9][0]=11; coord3[9][1]= 6;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord3);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,coord3);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Make a copy of the dataspace to read */
@@ -2203,7 +2203,7 @@ test_select_point_offset(void)
     coord1[7][0]=1; coord1[7][1]= 0; coord1[7][2]= 4;
     coord1[8][0]=2; coord1[8][1]= 1; coord1[8][2]= 6;
     coord1[9][0]=0; coord1[9][1]= 3; coord1[9][2]= 8;
-    ret = H5Sselect_elements(sid1,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord1);
+    ret = H5Sselect_elements(sid1,H5S_SELECT_SET,POINT1_NPOINTS,coord1);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Check a valid offset */
@@ -2238,7 +2238,7 @@ test_select_point_offset(void)
     coord2[7][0]=23; coord2[7][1]= 4;
     coord2[8][0]= 8; coord2[8][1]= 8;
     coord2[9][0]=19; coord2[9][1]=17;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord2);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,coord2);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Choose a valid offset for the memory dataspace */
@@ -2274,7 +2274,7 @@ test_select_point_offset(void)
     coord3[7][0]= 1; coord3[7][1]=22;
     coord3[8][0]=12; coord3[8][1]=21;
     coord3[9][0]=11; coord3[9][1]= 6;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord3);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,coord3);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Read selection from disk */
@@ -3873,7 +3873,7 @@ test_select_point_chunk(void)
     points[6][1]=1;
     points[7][0]=6;    /* In same chunk as point #3, but "earlier" in chunk */
     points[7][1]=6;
-    ret = H5Sselect_elements(pnt1_space,H5S_SELECT_SET,SPACE7_NPOINTS,(const hsize_t **)points);
+    ret = H5Sselect_elements(pnt1_space,H5S_SELECT_SET,SPACE7_NPOINTS,points);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Create 1st hyperslab selection */
@@ -3909,7 +3909,7 @@ test_select_point_chunk(void)
     points[6][1]=2;
     points[7][0]=7;    /* In same chunk as point #3, but "earlier" in chunk */
     points[7][1]=7;
-    ret = H5Sselect_elements(pnt2_space,H5S_SELECT_SET,SPACE7_NPOINTS,(const hsize_t **)points);
+    ret = H5Sselect_elements(pnt2_space,H5S_SELECT_SET,SPACE7_NPOINTS,points);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Create 2nd hyperslab selection */
@@ -4664,7 +4664,7 @@ test_select_fill_point(hssize_t *offset)
     CHECK(sid1, FAIL, "H5Screate_simple");
 
     /* Select "point" selection */
-    ret = H5Sselect_elements(sid1, H5S_SELECT_SET,num_points,(const hsize_t **)points);
+    ret = H5Sselect_elements(sid1, H5S_SELECT_SET,num_points,points);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     if(offset!=NULL) {
@@ -5202,7 +5202,7 @@ test_scalar_select(void)
 
     /* Select one element in memory with a point selection */
     coord1[0]=0; coord1[1]= 2;
-    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,1,(const hsize_t **)&coord1);
+    ret = H5Sselect_elements(sid2,H5S_SELECT_SET,1,&coord1);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Write single point to disk */
@@ -5321,7 +5321,7 @@ test_scalar_select2(void)
     /* Select one element in memory with a point selection */
     coord1[0]=0;
     H5E_BEGIN_TRY {
-    	ret = H5Sselect_elements(sid,H5S_SELECT_SET,1,(const hsize_t **)&coord1);
+    	ret = H5Sselect_elements(sid,H5S_SELECT_SET,1,&coord1);
     } H5E_END_TRY;
     VERIFY(ret, FAIL, "H5Sselect_elements");
 
@@ -5408,7 +5408,7 @@ test_shape_same(void)
 
     /* Select sequence of ten points for multiple point selection */
     coord1[0][0]=2; coord1[0][1]=2;
-    ret = H5Sselect_elements(single_pt_sid,H5S_SELECT_SET,1,(const hsize_t **)coord1);
+    ret = H5Sselect_elements(single_pt_sid,H5S_SELECT_SET,1,coord1);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Create dataspace for multiple point selection */
@@ -5426,7 +5426,7 @@ test_shape_same(void)
     coord2[7][0]=1; coord2[7][1]=0;
     coord2[8][0]=5; coord2[8][1]=1;
     coord2[9][0]=9; coord2[9][1]=3;
-    ret = H5Sselect_elements(mult_pt_sid,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord2);
+    ret = H5Sselect_elements(mult_pt_sid,H5S_SELECT_SET,POINT1_NPOINTS,coord2);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Create dataspace for single hyperslab selection */
@@ -5783,7 +5783,7 @@ test_shape_same(void)
                 for(v=1; v<(SPACE9_DIM2-1); v++) {
                     coord2[v-1][0]=u; coord2[v-1][1]=v;
                 } /* end for */
-                ret = H5Sselect_elements(tmp_sid,H5S_SELECT_APPEND,(SPACE9_DIM2-2),(const hsize_t **)coord2);
+                ret = H5Sselect_elements(tmp_sid,H5S_SELECT_APPEND,(SPACE9_DIM2-2),coord2);
                 CHECK(ret, FAIL, "H5Sselect_elements");
             } /* end for */
 
@@ -5889,7 +5889,7 @@ test_shape_same(void)
                 for(v=0; v<SPACE9_DIM2; v++) {
                     coord2[v][0]=u; coord2[v][1]=v;
                 } /* end for */
-                ret = H5Sselect_elements(tmp_sid,H5S_SELECT_APPEND,SPACE9_DIM2,(const hsize_t **)coord2);
+                ret = H5Sselect_elements(tmp_sid,H5S_SELECT_APPEND,SPACE9_DIM2,coord2);
                 CHECK(ret, FAIL, "H5Sselect_elements");
             } /* end for */
 
@@ -6039,7 +6039,7 @@ test_shape_same(void)
                 for(v=0; v<2; v++) {
                     coord2[v][0]=u; coord2[v][1]=(v*2)+2;
                 } /* end for */
-                ret = H5Sselect_elements(tmp_sid,H5S_SELECT_APPEND,2,(const hsize_t **)coord2);
+                ret = H5Sselect_elements(tmp_sid,H5S_SELECT_APPEND,2,coord2);
                 CHECK(ret, FAIL, "H5Sselect_elements");
             } /* end for */
 
@@ -6586,7 +6586,7 @@ test_select_bounds(void)
     coord[1][0]=  3; coord[1][1]= 96;
     coord[2][0]= 96; coord[2][1]=  3;
     coord[3][0]= 96; coord[3][1]= 96;
-    ret = H5Sselect_elements(sid,H5S_SELECT_SET,SPACE11_NPOINTS,(const hsize_t **)coord);
+    ret = H5Sselect_elements(sid,H5S_SELECT_SET,SPACE11_NPOINTS,coord);
     CHECK(ret, FAIL, "H5Sselect_elements");
 
     /* Get bounds for point selection */
diff --git a/testpar/Dependencies b/testpar/Dependencies
index 10100a5..379c7c8 100644
--- a/testpar/Dependencies
+++ b/testpar/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -52,7 +52,6 @@ t_mpi.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 testphdf5.lo: \
@@ -92,7 +91,6 @@ testphdf5.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 t_dset.lo: \
@@ -132,7 +130,6 @@ t_dset.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 t_file.lo: \
@@ -172,7 +169,6 @@ t_file.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 t_mdset.lo: \
@@ -212,7 +208,6 @@ t_mdset.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 t_ph5basic.lo: \
@@ -252,7 +247,6 @@ t_ph5basic.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 t_coll_chunk.lo: \
@@ -292,24 +286,26 @@ t_coll_chunk.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Dprivate.h \
    $(top_srcdir)/src/H5FDprivate.h \
    $(top_srcdir)/src/H5Oprivate.h \
-   $(top_srcdir)/src/H5HGprivate.h \
-   $(top_srcdir)/src/H5Fprivate.h \
    $(top_srcdir)/src/H5Tprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5Gprivate.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5ACprivate.h \
+   $(top_srcdir)/src/H5Fprivate.h \
    $(top_srcdir)/src/H5Cprivate.h \
    $(top_srcdir)/src/H5Cpublic.h \
+   $(top_srcdir)/src/H5FLprivate.h \
    $(top_srcdir)/src/H5RCprivate.h \
    $(top_srcdir)/src/H5RSprivate.h \
    $(top_srcdir)/src/H5Rprivate.h \
-   $(top_srcdir)/src/H5Zprivate.h
+   $(top_srcdir)/src/H5Zprivate.h \
+   $(top_srcdir)/src/H5Sprivate.h \
+   $(top_srcdir)/src/H5Pprivate.h
 t_span_tree.lo: \
    $(srcdir)/t_span_tree.c \
    $(top_srcdir)/src/hdf5.h \
@@ -345,8 +341,87 @@ t_span_tree.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(srcdir)/testphdf5.h \
-   $(top_srcdir)/test/h5test.h
+   $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/src/H5private.h
+t_chunk_alloc.lo: \
+   $(srcdir)/t_chunk_alloc.c \
+   $(srcdir)/testphdf5.h \
+   $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/src/H5public.h \
+   $(top_builddir)/src/H5pubconf.h \
+   $(top_srcdir)/src/H5api_adpt.h \
+   $(top_srcdir)/src/H5Apublic.h \
+   $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5ACpublic.h \
+   $(top_srcdir)/src/H5Bpublic.h \
+   $(top_srcdir)/src/H5Dpublic.h \
+   $(top_srcdir)/src/H5Epublic.h \
+   $(top_srcdir)/src/H5Fpublic.h \
+   $(top_srcdir)/src/H5FDpublic.h \
+   $(top_srcdir)/src/H5Gpublic.h \
+   $(top_srcdir)/src/H5Opublic.h \
+   $(top_srcdir)/src/H5HGpublic.h \
+   $(top_srcdir)/src/H5HLpublic.h \
+   $(top_srcdir)/src/H5MMpublic.h \
+   $(top_srcdir)/src/H5Ppublic.h \
+   $(top_srcdir)/src/H5Zpublic.h \
+   $(top_srcdir)/src/H5Rpublic.h \
+   $(top_srcdir)/src/H5Spublic.h \
+   $(top_srcdir)/src/H5Tpublic.h \
+   $(top_srcdir)/src/H5FDcore.h \
+   $(top_srcdir)/src/H5FDfamily.h \
+   $(top_srcdir)/src/H5FDgass.h \
+   $(top_srcdir)/src/H5FDlog.h \
+   $(top_srcdir)/src/H5FDmpi.h \
+   $(top_srcdir)/src/H5FDmpio.h \
+   $(top_srcdir)/src/H5FDmpiposix.h \
+   $(top_srcdir)/src/H5FDmulti.h \
+   $(top_srcdir)/src/H5FDsec2.h \
+   $(top_srcdir)/src/H5FDsrb.h \
+   $(top_srcdir)/src/H5FDstdio.h \
+   $(top_srcdir)/src/H5private.h \
+   $(top_srcdir)/src/H5MPprivate.h
+t_filter_read.lo: \
+   $(srcdir)/t_filter_read.c \
+   $(srcdir)/testphdf5.h \
+   $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/src/H5public.h \
+   $(top_builddir)/src/H5pubconf.h \
+   $(top_srcdir)/src/H5api_adpt.h \
+   $(top_srcdir)/src/H5Apublic.h \
+   $(top_srcdir)/src/H5Ipublic.h \
+   $(top_srcdir)/src/H5ACpublic.h \
+   $(top_srcdir)/src/H5Bpublic.h \
+   $(top_srcdir)/src/H5Dpublic.h \
+   $(top_srcdir)/src/H5Epublic.h \
+   $(top_srcdir)/src/H5Fpublic.h \
+   $(top_srcdir)/src/H5FDpublic.h \
+   $(top_srcdir)/src/H5Gpublic.h \
+   $(top_srcdir)/src/H5Opublic.h \
+   $(top_srcdir)/src/H5HGpublic.h \
+   $(top_srcdir)/src/H5HLpublic.h \
+   $(top_srcdir)/src/H5MMpublic.h \
+   $(top_srcdir)/src/H5Ppublic.h \
+   $(top_srcdir)/src/H5Zpublic.h \
+   $(top_srcdir)/src/H5Rpublic.h \
+   $(top_srcdir)/src/H5Spublic.h \
+   $(top_srcdir)/src/H5Tpublic.h \
+   $(top_srcdir)/src/H5FDcore.h \
+   $(top_srcdir)/src/H5FDfamily.h \
+   $(top_srcdir)/src/H5FDgass.h \
+   $(top_srcdir)/src/H5FDlog.h \
+   $(top_srcdir)/src/H5FDmpi.h \
+   $(top_srcdir)/src/H5FDmpio.h \
+   $(top_srcdir)/src/H5FDmpiposix.h \
+   $(top_srcdir)/src/H5FDmulti.h \
+   $(top_srcdir)/src/H5FDsec2.h \
+   $(top_srcdir)/src/H5FDsrb.h \
+   $(top_srcdir)/src/H5FDstdio.h \
+   $(top_srcdir)/src/H5private.h \
+   $(top_srcdir)/src/H5MPprivate.h
diff --git a/testpar/t_mdset.c b/testpar/t_mdset.c
index 926f63f..73cdef7 100644
--- a/testpar/t_mdset.c
+++ b/testpar/t_mdset.c
@@ -1489,7 +1489,7 @@ void io_mode_confusion(void)
                        mpi_rank, fcn_name);
 
         status = H5Sselect_elements(filespace, H5S_SELECT_SET, N,
-                                    (const hsize_t **)&coord);
+                                    &coord);
 
         VRFY(( status >= 0 ), "H5Sselect_elements() failed");
 
diff --git a/tools/h5diff/Dependencies b/tools/h5diff/Dependencies
index 1980e3c..e07689b 100644
--- a/tools/h5diff/Dependencies
+++ b/tools/h5diff/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -51,167 +51,9 @@ h5diff_main.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/tools/lib/h5trav.h
-testh5diff_attr.lo: \
-   $(srcdir)/testh5diff_attr.c \
-   $(srcdir)/testh5diff.h \
-   $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/src/H5private.h \
-   $(top_srcdir)/src/H5MPprivate.h
-testh5diff_basic.lo: \
-   $(srcdir)/testh5diff_basic.c \
-   $(srcdir)/testh5diff.h \
-   $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/src/H5private.h \
-   $(top_srcdir)/src/H5MPprivate.h
-testh5diff_dset.lo: \
-   $(srcdir)/testh5diff_dset.c \
-   $(srcdir)/testh5diff.h \
-   $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/src/H5private.h \
-   $(top_srcdir)/src/H5MPprivate.h
-testh5diff_util.lo: \
-   $(srcdir)/testh5diff_util.c \
-   $(srcdir)/testh5diff.h \
-   $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/src/H5private.h \
-   $(top_srcdir)/src/H5MPprivate.h
-testh5diff_main.lo: \
-   $(srcdir)/testh5diff_main.c \
-   $(srcdir)/testh5diff.h \
+h5diffgentest.lo: \
+   $(srcdir)/h5diffgentest.c \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5public.h \
    $(top_builddir)/src/H5pubconf.h \
@@ -245,6 +87,5 @@ testh5diff_main.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
diff --git a/tools/h5diff/h5diffgentest.c b/tools/h5diff/h5diffgentest.c
index c056277..f73330e 100644
--- a/tools/h5diff/h5diffgentest.c
+++ b/tools/h5diff/h5diffgentest.c
@@ -2325,7 +2325,7 @@ void gen_datareg(hid_t fid,
   coord[3][0]=2; coord[3][1]=5;
   coord[4][0]=1; coord[4][1]=7;
  }
- H5Sselect_elements(sid1,H5S_SELECT_SET,5,(const hsize_t **)coord);
+ H5Sselect_elements(sid1,H5S_SELECT_SET,5,coord);
  H5Sget_select_npoints(sid1);
 
  /* store second dataset region */
diff --git a/tools/h5dump/Dependencies b/tools/h5dump/Dependencies
index 9301d42..404c09a 100644
--- a/tools/h5dump/Dependencies
+++ b/tools/h5dump/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -51,10 +51,10 @@ h5dump.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/tools/lib/h5tools.h \
+   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/tools/lib/h5tools_utils.h \
    $(top_srcdir)/tools/lib/h5tools_ref.h \
    $(top_srcdir)/tools/lib/h5trav.h
@@ -93,7 +93,9 @@ h5dumpgentest.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
-   $(top_srcdir)/tools/lib/h5tools.h
+   $(top_srcdir)/tools/lib/h5tools.h \
+   $(top_srcdir)/src/hdf5.h
+binread.lo: \
+   $(srcdir)/binread.c
diff --git a/tools/h5dump/h5dump.c b/tools/h5dump/h5dump.c
index 73a9f34..1e6b3c8 100644
--- a/tools/h5dump/h5dump.c
+++ b/tools/h5dump/h5dump.c
@@ -633,7 +633,7 @@ usage(const char *prog)
     fprintf(stdout, "      -k L, --block=L     Size of block in hyperslab\n");
     fprintf(stdout, "\n");
     fprintf(stdout, "  D - is the file driver to use in opening the file. Acceptable values\n");
-    fprintf(stdout, "        are \"sec2\", \"family\", \"split\", \"multi\", and \"stream\". Without\n");
+    fprintf(stdout, "        are \"sec2\", \"family\", \"split\", and \"multi\". Without\n");
     fprintf(stdout, "        the file driver flag, the file will be opened with each driver in\n");
     fprintf(stdout, "        turn and in the order specified above until one driver succeeds\n");
     fprintf(stdout, "        in opening the file.\n");
@@ -2614,10 +2614,6 @@ dump_fcpl(hid_t fid)
         HDstrcpy(dname,"H5FD_SEC2");
     else if (H5FD_STDIO==fdriver)
         HDstrcpy(dname,"H5FD_STDIO");
-#ifdef H5_HAVE_STREAM
-    else if (H5FD_STREAM==fdriver)
-        HDstrcpy(dname,"H5FD_STREAM");
-#endif
 
     indentation(indent + COL);
     printf("%s %s\n","FILE_DRIVER", dname);
diff --git a/tools/h5dump/h5dumpgentest.c b/tools/h5dump/h5dumpgentest.c
index 4415bd7..216a38d 100644
--- a/tools/h5dump/h5dumpgentest.c
+++ b/tools/h5dump/h5dumpgentest.c
@@ -1735,7 +1735,7 @@ static void gent_datareg(void)
     coord1[7][0]=9; coord1[7][1]=0;
     coord1[8][0]=7; coord1[8][1]=1;
     coord1[9][0]=3; coord1[9][1]=3;
-    H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,(const hsize_t **)coord1);
+    H5Sselect_elements(sid2,H5S_SELECT_SET,POINT1_NPOINTS,coord1);
 
     H5Sget_select_npoints(sid2);
 
diff --git a/tools/h5import/Dependencies b/tools/h5import/Dependencies
index 1f8076d..c084129 100644
--- a/tools/h5import/Dependencies
+++ b/tools/h5import/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -50,7 +50,6 @@ h5import.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(srcdir)/h5import.h
diff --git a/tools/h5jam/Dependencies b/tools/h5jam/Dependencies
index 40a0341..0cc4a71 100644
--- a/tools/h5jam/Dependencies
+++ b/tools/h5jam/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -50,10 +50,10 @@ h5jam.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
-   $(top_srcdir)/tools/lib/h5tools_utils.h
+   $(top_srcdir)/tools/lib/h5tools_utils.h \
+   $(top_srcdir)/src/hdf5.h
 h5unjam.lo: \
    $(srcdir)/h5unjam.c \
    $(top_srcdir)/src/hdf5.h \
@@ -89,7 +89,7 @@ h5unjam.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
-   $(top_srcdir)/tools/lib/h5tools_utils.h
+   $(top_srcdir)/tools/lib/h5tools_utils.h \
+   $(top_srcdir)/src/hdf5.h
diff --git a/tools/h5ls/Dependencies b/tools/h5ls/Dependencies
index a396881..05ee20b 100644
--- a/tools/h5ls/Dependencies
+++ b/tools/h5ls/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -53,5 +53,4 @@ h5ls.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/tools/lib/h5tools_utils.h
diff --git a/tools/h5repack/Dependencies b/tools/h5repack/Dependencies
index 557d321..167e326 100644
--- a/tools/h5repack/Dependencies
+++ b/tools/h5repack/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -51,19 +51,19 @@ h5repack.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/tools/lib/h5trav.h \
+   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h
+   $(top_srcdir)/tools/lib/h5trav.h \
+   $(top_srcdir)/tools/lib/h5tools.h \
+   $(top_srcdir)/tools/lib/h5tools_utils.h
 h5repack_copy.lo: \
    $(srcdir)/h5repack_copy.c \
-   $(top_srcdir)/src/H5private.h \
+   $(srcdir)/h5repack.h \
+   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5public.h \
    $(top_builddir)/src/H5pubconf.h \
    $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5MPprivate.h \
-   $(srcdir)/h5repack.h \
-   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
    $(top_srcdir)/src/H5ACpublic.h \
@@ -93,12 +93,15 @@ h5repack_copy.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h
-h5repack_filters.lo: \
-   $(srcdir)/h5repack_filters.c \
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/src/H5private.h \
+   $(top_srcdir)/src/H5MPprivate.h \
+   $(top_srcdir)/tools/lib/h5tools.h \
+   $(top_srcdir)/tools/lib/h5tools_utils.h
+h5repack_refs.lo: \
+   $(srcdir)/h5repack_refs.c \
+   $(srcdir)/h5repack.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5public.h \
    $(top_builddir)/src/H5pubconf.h \
@@ -132,23 +135,18 @@ h5repack_filters.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/tools/lib/h5trav.h \
+   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
-   $(srcdir)/h5repack.h \
-   $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
    $(top_srcdir)/tools/lib/h5tools.h
-h5repack_refs.lo: \
-   $(srcdir)/h5repack_refs.c \
-   $(top_srcdir)/src/H5private.h \
+h5repack_filters.lo: \
+   $(srcdir)/h5repack_filters.c \
+   $(srcdir)/h5repack.h \
+   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5public.h \
    $(top_builddir)/src/H5pubconf.h \
    $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5MPprivate.h \
-   $(srcdir)/h5repack.h \
-   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
    $(top_srcdir)/src/H5ACpublic.h \
@@ -178,19 +176,19 @@ h5repack_refs.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/src/H5private.h \
+   $(top_srcdir)/src/H5MPprivate.h
 h5repack_list.lo: \
    $(srcdir)/h5repack_list.c \
-   $(top_srcdir)/src/H5private.h \
+   $(srcdir)/h5repack.h \
+   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5public.h \
    $(top_builddir)/src/H5pubconf.h \
    $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5MPprivate.h \
-   $(srcdir)/h5repack.h \
-   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5Apublic.h \
    $(top_srcdir)/src/H5Ipublic.h \
    $(top_srcdir)/src/H5ACpublic.h \
@@ -220,13 +218,15 @@ h5repack_list.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/src/H5private.h \
+   $(top_srcdir)/src/H5MPprivate.h \
+   $(top_srcdir)/tools/lib/h5tools.h \
+   $(top_srcdir)/tools/lib/h5tools_utils.h
 h5repack_main.lo: \
    $(srcdir)/h5repack_main.c \
-   $(srcdir)/h5repack.h \
+   $(top_srcdir)/tools/lib/h5tools_utils.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5public.h \
    $(top_builddir)/src/H5pubconf.h \
@@ -260,10 +260,9 @@ h5repack_main.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h
+   $(srcdir)/h5repack.h \
+   $(top_srcdir)/src/hdf5.h
 h5repack_opttable.lo: \
    $(srcdir)/h5repack_opttable.c \
    $(srcdir)/h5repack.h \
@@ -300,10 +299,9 @@ h5repack_opttable.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/tools/lib/h5tools_utils.h
 h5repack_parse.lo: \
    $(srcdir)/h5repack_parse.c \
    $(srcdir)/h5repack.h \
@@ -340,55 +338,12 @@ h5repack_parse.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h
+   $(top_srcdir)/src/hdf5.h \
+   $(top_srcdir)/tools/lib/h5tools_utils.h
 h5repack_verify.lo: \
    $(srcdir)/h5repack_verify.c \
-   $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/test/h5test.h \
-   $(top_srcdir)/src/H5private.h \
-   $(top_srcdir)/src/H5MPprivate.h \
    $(srcdir)/h5repack.h \
-   $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h
-testh5repack_attr.lo: \
-   $(srcdir)/testh5repack_attr.c \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5public.h \
    $(top_builddir)/src/H5pubconf.h \
@@ -422,61 +377,17 @@ testh5repack_attr.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/test/h5test.h \
-   $(top_srcdir)/src/H5private.h \
-   $(top_srcdir)/src/H5MPprivate.h \
-   $(srcdir)/h5repack.h \
    $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h \
-   $(srcdir)/testh5repack.h
-testh5repack_dset.lo: \
-   $(srcdir)/testh5repack_dset.c \
    $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
-   $(srcdir)/h5repack.h \
-   $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
    $(top_srcdir)/tools/lib/h5tools.h \
-   $(srcdir)/testh5repack.h
-testh5repack_main.lo: \
-   $(srcdir)/testh5repack_main.c \
+   $(top_srcdir)/tools/lib/h5tools_utils.h
+h5repacktst.lo: \
+   $(srcdir)/h5repacktst.c \
+   $(srcdir)/h5repack.h \
    $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5public.h \
    $(top_builddir)/src/H5pubconf.h \
@@ -510,97 +421,12 @@ testh5repack_main.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/test/h5test.h \
-   $(top_srcdir)/src/H5private.h \
-   $(top_srcdir)/src/H5MPprivate.h \
-   $(srcdir)/h5repack.h \
    $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h \
-   $(srcdir)/testh5repack.h
-testh5repack_make.lo: \
-   $(srcdir)/testh5repack_make.c \
    $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/test/h5test.h \
+   $(top_srcdir)/src/hdf5.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
-   $(srcdir)/h5repack.h \
-   $(top_srcdir)/tools/lib/h5trav.h \
-   $(top_srcdir)/tools/lib/h5diff.h \
    $(top_srcdir)/tools/lib/h5tools.h \
-   $(srcdir)/testh5repack.h
-testh5repack_util.lo: \
-   $(srcdir)/testh5repack_util.c \
-   $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(srcdir)/h5repack.h \
-   $(top_srcdir)/tools/lib/h5trav.h \
    $(top_srcdir)/tools/lib/h5diff.h \
-   $(top_srcdir)/tools/lib/h5tools.h \
-   $(srcdir)/testh5repack.h
+   $(top_srcdir)/tools/lib/h5trav.h
diff --git a/tools/lib/Dependencies b/tools/lib/Dependencies
index 47dccde..1718cfa 100644
--- a/tools/lib/Dependencies
+++ b/tools/lib/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -51,7 +51,6 @@ h5tools.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/h5tools_ref.h \
    $(srcdir)/h5tools_str.h \
    $(srcdir)/h5tools_utils.h \
@@ -95,7 +94,6 @@ h5tools_str.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/h5tools_ref.h \
    $(srcdir)/h5tools_str.h
 h5tools_utils.lo: \
@@ -134,7 +132,6 @@ h5tools_utils.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 h5diff.lo: \
@@ -173,7 +170,6 @@ h5diff.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/h5trav.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
@@ -213,7 +209,6 @@ h5diff_array.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/h5trav.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
@@ -253,7 +248,6 @@ h5diff_attr.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/h5diff.h \
    $(srcdir)/h5trav.h \
    $(top_srcdir)/src/H5private.h \
@@ -294,7 +288,6 @@ h5diff_dset.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/h5trav.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
@@ -335,7 +328,6 @@ h5diff_util.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/h5trav.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
@@ -375,46 +367,6 @@ h5trav.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
-   $(top_srcdir)/src/H5private.h \
-   $(top_srcdir)/src/H5MPprivate.h
-h5trav_table.lo: \
-   $(srcdir)/h5trav_table.c \
-   $(srcdir)/h5trav.h \
-   $(top_srcdir)/src/hdf5.h \
-   $(top_srcdir)/src/H5public.h \
-   $(top_builddir)/src/H5pubconf.h \
-   $(top_srcdir)/src/H5api_adpt.h \
-   $(top_srcdir)/src/H5Apublic.h \
-   $(top_srcdir)/src/H5Ipublic.h \
-   $(top_srcdir)/src/H5ACpublic.h \
-   $(top_srcdir)/src/H5Bpublic.h \
-   $(top_srcdir)/src/H5Dpublic.h \
-   $(top_srcdir)/src/H5Epublic.h \
-   $(top_srcdir)/src/H5Fpublic.h \
-   $(top_srcdir)/src/H5FDpublic.h \
-   $(top_srcdir)/src/H5Gpublic.h \
-   $(top_srcdir)/src/H5Opublic.h \
-   $(top_srcdir)/src/H5HGpublic.h \
-   $(top_srcdir)/src/H5HLpublic.h \
-   $(top_srcdir)/src/H5MMpublic.h \
-   $(top_srcdir)/src/H5Ppublic.h \
-   $(top_srcdir)/src/H5Zpublic.h \
-   $(top_srcdir)/src/H5Rpublic.h \
-   $(top_srcdir)/src/H5Spublic.h \
-   $(top_srcdir)/src/H5Tpublic.h \
-   $(top_srcdir)/src/H5FDcore.h \
-   $(top_srcdir)/src/H5FDfamily.h \
-   $(top_srcdir)/src/H5FDgass.h \
-   $(top_srcdir)/src/H5FDlog.h \
-   $(top_srcdir)/src/H5FDmpi.h \
-   $(top_srcdir)/src/H5FDmpio.h \
-   $(top_srcdir)/src/H5FDmpiposix.h \
-   $(top_srcdir)/src/H5FDmulti.h \
-   $(top_srcdir)/src/H5FDsec2.h \
-   $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
 h5tools_filters.lo: \
@@ -452,7 +404,6 @@ h5tools_filters.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(srcdir)/h5tools.h
 h5tools_ref.lo: \
    $(srcdir)/h5tools_ref.c \
@@ -490,10 +441,10 @@ h5tools_ref.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5SLprivate.h \
+   $(top_srcdir)/src/H5private.h \
    $(srcdir)/h5tools.h \
    $(srcdir)/h5tools_utils.h
 h5tools_type.lo: \
@@ -531,8 +482,7 @@ h5tools_type.lo: \
    $(top_srcdir)/src/H5FDmulti.h \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
-   $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h
+   $(top_srcdir)/src/H5FDstdio.h
 talign.lo: \
    $(srcdir)/talign.c \
    $(top_srcdir)/src/hdf5.h \
@@ -568,7 +518,6 @@ talign.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h \
    $(srcdir)/h5tools.h
diff --git a/tools/lib/h5tools.c b/tools/lib/h5tools.c
index 5baac5f..ab844cc 100644
--- a/tools/lib/h5tools.c
+++ b/tools/lib/h5tools.c
@@ -57,9 +57,6 @@ static const char *drivernames[]={
     "family",
     "split",
     "multi",
-#ifdef H5_HAVE_STREAM
-    "stream",
-#endif  /* H5_HAVE_STREAM */
 #ifdef H5_HAVE_PARALLEL
     "mpio",
     "mpiposix"
@@ -73,9 +70,6 @@ enum {
    ,FAMILY_IDX
    ,SPLIT_IDX
    ,MULTI_IDX
-#ifdef H5_HAVE_STREAM
-   ,STREAM_IDX
-#endif  /* H5_HAVE_STREAM */
 #ifdef H5_HAVE_PARALLEL
    ,MPIO_IDX
    ,MPIPOSIX_IDX
@@ -196,16 +190,6 @@ h5tools_get_fapl(const char *driver, unsigned *drivernum)
             if(drivernum)
                 *drivernum = MULTI_IDX;
         } /* end if */
-#ifdef H5_HAVE_STREAM
-    } else if (!strcmp(driver, drivernames[STREAM_IDX])) {
-        /* STREAM Driver */
-        if((fapl = H5Pcreate(H5P_FILE_ACCESS))>=0) {
-            H5Pset_fapl_stream(fapl, NULL);
-
-            if(drivernum)
-                *drivernum = STREAM_IDX;
-        } /* end if */
-#endif  /* H5_HAVE_STREAM */
 #ifdef H5_HAVE_PARALLEL
     } else if (!strcmp(driver, drivernames[MPIO_IDX])) {
         /* MPI-I/O Driver */
@@ -256,8 +240,7 @@ error:
  *      Loop through the various types of VFL drivers trying to open FNAME.
  *      If the HDF5 library is version 1.2 or less, then we have only the SEC2
  *      driver to try out. If the HDF5 library is greater than version 1.2,
- *      then we have the FAMILY, SPLIT, and MULTI drivers to play with (and
- *      the STREAM driver if H5_HAVE_STREAM is defined, that is).
+ *      then we have the FAMILY, SPLIT, and MULTI drivers to play with.
  *
  *      If DRIVER is non-NULL, then it will try to open the file with that
  *      driver first. We assume that the user knows what they are doing so, if
diff --git a/tools/misc/Dependencies b/tools/misc/Dependencies
index ff8a018..51ee40a 100644
--- a/tools/misc/Dependencies
+++ b/tools/misc/Dependencies
@@ -1,7 +1,7 @@
-##
-## This file is machine generated on GNU systems.
-## Only temporary changes may be made here.
-##
+#
+# This file is machine generated on GNU systems.
+# Only temporary changes may be made here.
+#
 # Copyright by The HDF Group.
 # Copyright by the Board of Trustees of the University of Illinois.
 # All rights reserved.
@@ -24,6 +24,7 @@ h5debug.lo: \
    $(top_srcdir)/src/H5MPprivate.h \
    $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5Bpublic.h \
+   $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5ACprivate.h \
    $(top_srcdir)/src/H5ACpublic.h \
    $(top_srcdir)/src/H5Fprivate.h \
@@ -48,14 +49,19 @@ h5debug.lo: \
    $(top_srcdir)/src/H5MMpublic.h \
    $(top_srcdir)/src/H5Gprivate.h \
    $(top_srcdir)/src/H5Gpublic.h \
+   $(top_srcdir)/src/H5Bprivate.h \
    $(top_srcdir)/src/H5RSprivate.h \
    $(top_srcdir)/src/H5Rprivate.h \
    $(top_srcdir)/src/H5Rpublic.h \
    $(top_srcdir)/src/H5Zprivate.h \
    $(top_srcdir)/src/H5Zpublic.h \
+   $(top_srcdir)/src/H5Sprivate.h \
+   $(top_srcdir)/src/H5Pprivate.h \
+   $(top_srcdir)/src/H5Ppublic.h \
    $(top_srcdir)/src/H5Fpkg.h \
    $(top_srcdir)/src/H5FOprivate.h \
    $(top_srcdir)/src/H5SLprivate.h \
+   $(top_srcdir)/src/H5Gprivate.h \
    $(top_srcdir)/src/H5HGprivate.h \
    $(top_srcdir)/src/H5HGpublic.h \
    $(top_srcdir)/src/H5HLprivate.h \
@@ -63,7 +69,6 @@ h5debug.lo: \
    $(top_srcdir)/src/H5Iprivate.h \
    $(top_srcdir)/src/H5Opkg.h \
    $(top_srcdir)/src/H5Pprivate.h \
-   $(top_srcdir)/src/H5Ppublic.h \
    $(top_srcdir)/src/H5FDfamily.h
 h5repart.lo: \
    $(srcdir)/h5repart.c \
@@ -100,6 +105,5 @@ h5repart.lo: \
    $(top_srcdir)/src/H5FDsec2.h \
    $(top_srcdir)/src/H5FDsrb.h \
    $(top_srcdir)/src/H5FDstdio.h \
-   $(top_srcdir)/src/H5FDstream.h \
    $(top_srcdir)/src/H5private.h \
    $(top_srcdir)/src/H5MPprivate.h
diff --git a/tools/testfiles/tnofilename.ddl b/tools/testfiles/tnofilename.ddl
index 4c25bc6..570def4 100644
--- a/tools/testfiles/tnofilename.ddl
+++ b/tools/testfiles/tnofilename.ddl
@@ -47,7 +47,7 @@ usage: h5dump [OPTIONS] file
       -k L, --block=L     Size of block in hyperslab
 
   D - is the file driver to use in opening the file. Acceptable values
-        are "sec2", "family", "split", "multi", and "stream". Without
+        are "sec2", "family", "split", and "multi". Without
         the file driver flag, the file will be opened with each driver in
         turn and in the order specified above until one driver succeeds
         in opening the file.
diff --git a/windows/all.zip b/windows/all.zip
index 30fd00b..4cf324c 100755
Binary files a/windows/all.zip and b/windows/all.zip differ

-- 
Hierarchical Data Format 5 (HDF5)



More information about the Pkg-grass-devel mailing list