From 768b7465a19afcbc87ba54a7b6400492d54c2626 Mon Sep 17 00:00:00 2001 From: Robb Matzke Date: Wed, 8 Jul 1998 13:41:04 -0500 Subject: [svn-r471] Changes since 19980708 ---------------------- ./MANIFEST Alphabetized. `d' comes before `e' :-) ./bin/release Added the `-batch' option which causes the script to not ask questions and to automatically update the minor version number and set the patch level back to `a'. This is intended to be used for the daily snapshots: #! /bin/sh set -e cd ~/hdf5 make distclean make test bin/release -batch tar compress gzip bzip2 mv ./releases/* /repository ./src/H5Z.c Removed warnings about unused variables when the zlib.h header file is present but libz.a isn't. ./INSTALL ./configure.in ./doc/html/tracing.html Made API tracing the default (you still need to define the HDF5_TRACE environment variable to get results) and change the name from `--disable-tracing' to `--disable-trace' to make it consistent with the other switches. Changed `site config file' to `host config file' to match the documentation. ./doc/html/H5.user.html Added a reference to the `tracing.html' file. --- INSTALL | 100 ++++++++++++++++++++++++++------------------------ MANIFEST | 16 ++++---- bin/release | 58 +++++++++++++++++------------ configure | 50 +++++++++++++------------ configure.in | 29 +++++++++------ doc/html/H5.user.html | 4 +- doc/html/tracing.html | 9 +++-- src/H5Z.c | 2 +- 8 files changed, 148 insertions(+), 120 deletions(-) diff --git a/INSTALL b/INSTALL index 639e3ba..65483f9 100644 --- a/INSTALL +++ b/INSTALL @@ -1,8 +1,8 @@ This file contains instructions for the installation of HDF5 on Unix-like systems. First, one must obtain a tarball of the HDF5 -release from the ftp://hdf.ncsa.uiuc.edu/pub/dist/HDF5 -repository. The files are available in uncompressed tar, gzip, bzip2, -and compress formats. +release from the ftp://hdf.ncsa.uiuc.edu/pub/dist/HDF5 repository. +The files are available in uncompressed tar, gzip, bzip2, and compress +formats. For those that like to live dangerously and don't like to read ;-) you can do the following: @@ -33,69 +33,69 @@ Step 1. Unpack the source tree. $ bunzip2 .o step. + AR Name of the `ar' program. + RANLIB Name of the `ranlib' program or `:' if none. + MAKE Name of the `make' program (GNU make is preferred) - Note: HDF5 can be used without installing it. + * This version of HDF5 is normally built with various debugging + code enabled. To turn it off add the `--disable-debug' switch + to the configure command. - * Early releases of the library will be compiled with some - debugging features enabled (see output from configure). The - debugging can be turned off by specifying `--disable-debug' as a - configure switch. Also, to compile an optimized version of the - library one can say `--enable-production'. + * This version of HDF5 is normally built with support for symbolic + debugging with dbx or gdb and without compiler optimization + switches. To disable symbolic debugging and enable + optimizations add `--enable-production' to the configure + command. + + * This version of HDF5 is normally built with the ability to print + the names, arguments, and return values of all API functions + when they're called. For more information refer to the + doc/html/tracing.html file. To disable tracing support add + `--disable-trace' to the configure command. * Old versions of gcc (<2.8.0) may experience register allocation problems on some architectures. If this happens then the `--disable-hsizet' can be given but the resulting library will be unable to handle datasets larger than 4GB. - * You can also override detection of certain things with - environment variables: - - CC Name of the C compiler to use. - CFLAGS Alternate C compiler flags. - CPPFLAGS Alternate C preprocessor flags. - MAKE Name of the make(1) program. - - For instance it is common to specify the name of the C compiler, - C proprocessor flags, and compiler flags (add `env' to the - beginning of this command if you're running a csh-like shell) - - $ CC=gcc CPPFLAGS=-DNDEBUG CFLAGS="-Wall -O3" ./configure - - * Settings for compiler flags (and a few other things) can also be - specified in config files located in the config directory. The - name of the file is the result of running ./bin/config.guess. - Use config/BlankForm as a template. - - * The library can print the names, arguments and values, and - return value from all API functions. The code that does this is - enabled with the `--enable-tracing' configuration switch. In - order to actually see tracing output one should set the - environment variable HDF5_TRACE to a file descriptor number such - as `2'. - - * You can see a list of other configuration options by saying + * By default libraries, include files, programs, and documentation + are installed (when one says `make install') under + /usr/local/lib, /usr/local/include, /usr/local/bin, and + /usr/local/man. However, if you want them in some other + location you can specify a prefix to use instead of /usr/local. + For instance, to install in /usr/lib, /usr/include, /usr/bin, + and /usr/man one would say - $ ./configure --help + $ ./configure --prefix=/usr + The library can be used directly from the source tree without + installing it. Step 3. Compile library, tests, and programs. @@ -125,6 +125,10 @@ Step 4. Run confidence tests. date'. If this happens then run `make _test' instead or run `make test' from within the test directory. + Temporary files will be deleted by each test when it completes, + but may continue to exist in an incomplete state if the test + fails. To prevent deletion of the files define the + HDF5_NOCLEANUP environment variable. Step 5. Install public files. diff --git a/MANIFEST b/MANIFEST index c073d19..d10c356 100644 --- a/MANIFEST +++ b/MANIFEST @@ -37,14 +37,6 @@ ./config/solaris2.5 ./configure ./configure.in -./examples/Attributes.txt -./examples/Makefile.in -./examples/h5_chunk_read.c -./examples/h5_compound.c -./examples/h5_extend_write.c -./examples/h5_group.c -./examples/h5_read.c -./examples/h5_write.c ./doc/html/Attributes.html ./doc/html/Big.html ./doc/html/Caching.html @@ -121,6 +113,14 @@ ./doc/tgif/IOPipe.obj ./doc/tgif/RobbPipe.obj ./doc/tgif/UserView.obj +./examples/Attributes.txt +./examples/Makefile.in +./examples/h5_chunk_read.c +./examples/h5_compound.c +./examples/h5_extend_write.c +./examples/h5_group.c +./examples/h5_read.c +./examples/h5_write.c ./src/.distdep ./src/.indent.pro ./src/H5.c diff --git a/bin/release b/bin/release index 8a476f7..ef79faf 100755 --- a/bin/release +++ b/bin/release @@ -118,22 +118,27 @@ sub manifest () { sub release (@) { my @types = @_; my ($ver, $status, $created_symlink); + my ($batch) = 0; local $_; + if (@types>0 && $types[0] =~ /^-?-batch$/) { + $batch = 1; + shift @types; + } + # Make sure no one forgot to update MANIFEST manifest; # Make sure the version number is correct. - print "Building an HDF release...\n"; - print "HDF version to release [", ($ver=getver), "] "; - return "" unless defined ($_=); - chomp; - (setver ($ver=$_) or die "cannot set version") if /\S/; - - # Clean the source tree, showing only errors. - print "Cleaning source tree...\n"; - $status = system "make distclean >/dev/null"; - die "cannot make distclean" if $status >> 8; + $ver = getver; + if ($batch) { + print "Releasing version $ver\n"; + } else { + print "HDF version to release [$ver] "; + return "" unless defined ($_=); + chomp; + (setver ($ver=$_) or die "cannot set version") if /\S/; + } # Move default top-level makefile into place. $status = system "cp Makefile.dist Makefile"; @@ -197,27 +202,34 @@ sub release (@) { # Update version info - print <); - chomp; - (setver ($ver=$_) or die "cannot set version") if /\S/; - - if (-d "CVS") { - my $tag = $ver; - $tag =~ s/\./-/g; - print "Tag CVS sources with \"$tag\"? [n] "; - chomp ($_ = ); - if ($_ eq 'y') { + print "Set development version to [", ($ver=getver), "] "; + return "" unless defined ($_ = ); + chomp; + (setver ($ver=$_) or die "cannot set version") if /\S/; + + if (-d "CVS") { + my $tag = $ver; + $tag =~ s/\./-/g; + print "Tag CVS sources with \"$tag\"? [n] "; + chomp ($_ = ); + if ($_ eq 'y') { print "Tagging CVS sources...\n"; my $status = system "cvs tag -R $tag"; die "cvs tag failed" if $status >> 8; - } + } + } } return 1; diff --git a/configure b/configure index 4acf126..4e0704b 100755 --- a/configure +++ b/configure @@ -27,7 +27,7 @@ ac_help="$ac_help without the leading H5 or the word no. The default is most packages." ac_help="$ac_help ---enable-tracing Cause the library to trace all API calls" +--disable-trace Disable API tracing capability" ac_help="$ac_help --enable-parallel=mpio Enable parallel support with MPIO" @@ -605,9 +605,9 @@ fi -echo $ac_n "checking for site config file""... $ac_c" 1>&6 -echo "configure:610: checking for site config file" >&5 -site_config="none" +echo $ac_n "checking for host config file""... $ac_c" 1>&6 +echo "configure:610: checking for host config file" >&5 +host_config="none" for f in $host \ $host_vendor-$host_os \ $host_cpu-$host_os \ @@ -616,13 +616,13 @@ for f in $host \ $host_vendor \ $host_cpu ; do if test -f config/$f; then - site_config=config/$f + host_config=config/$f break fi done -echo "$ac_t""$site_config" 1>&6 -if test $site_config != "none"; then - . $site_config +echo "$ac_t""$host_config" 1>&6 +if test $host_config != "none"; then + . $host_config fi @@ -2245,17 +2245,21 @@ fi echo $ac_n "checking for API tracing""... $ac_c" 1>&6 echo "configure:2248: checking for API tracing" >&5; -# Check whether --enable-tracing or --disable-tracing was given. -if test "${enable_tracing+set}" = set; then - enableval="$enable_tracing" - CPPFLAGS="$CPPFLAGS -DH5_DEBUG_API" - echo "$ac_t""yes" 1>&6 -else - CPPFLAGS="$CPPFLAGS -UH5_DEBUG_API" - echo "$ac_t""no" 1>&6 +# Check whether --enable-trace or --disable-trace was given. +if test "${enable_trace+set}" = set; then + enableval="$enable_trace" + TRACE=$enableval fi +if test X = "X$TRACE" -o Xyes = "X$TRACE"; then + echo "$ac_t""yes" 1>&6 + CPPFLAGS="$CPPFLAGS -DH5_DEBUG_API" +else + echo "$ac_t""no" 1>&6 + CPPFLAGS="$CPPFLAGS -UH5_DEBUG_API" +fi + # Check whether --enable-parallel or --disable-parallel was given. if test "${enable_parallel+set}" = set; then enableval="$enable_parallel" @@ -2263,7 +2267,7 @@ if test "${enable_parallel+set}" = set; then fi echo $ac_n "checking for parallel support""... $ac_c" 1>&6 -echo "configure:2267: checking for parallel support" >&5; +echo "configure:2271: checking for parallel support" >&5; case "X-$PARALLEL" in @@ -2288,7 +2292,7 @@ EOF CFLAGS="$CFLAGS $MPI_LIB" RUNTEST="$RUNTEST" echo $ac_n "checking for main in -lmpi""... $ac_c" 1>&6 -echo "configure:2292: checking for main in -lmpi" >&5 +echo "configure:2296: checking for main in -lmpi" >&5 ac_lib_var=`echo mpi'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2296,14 +2300,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lmpi $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:2311: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2330,7 +2334,7 @@ else echo "$ac_t""no" 1>&6 fi echo $ac_n "checking for main in -lmpio""... $ac_c" 1>&6 -echo "configure:2334: checking for main in -lmpio" >&5 +echo "configure:2338: checking for main in -lmpio" >&5 ac_lib_var=`echo mpio'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2338,14 +2342,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lmpio $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:2353: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else diff --git a/configure.in b/configure.in index e3a4f5c..d5dccc3 100644 --- a/configure.in +++ b/configure.in @@ -44,8 +44,8 @@ dnl OS dnl VENDOR dnl CPU dnl -AC_MSG_CHECKING(for site config file) -site_config="none" +AC_MSG_CHECKING(for host config file) +host_config="none" for f in $host \ $host_vendor-$host_os \ $host_cpu-$host_os \ @@ -54,13 +54,13 @@ for f in $host \ $host_vendor \ $host_cpu ; do if test -f config/$f; then - site_config=config/$f + host_config=config/$f break fi done -AC_MSG_RESULT($site_config) -if test $site_config != "none"; then - . $site_config +AC_MSG_RESULT($host_config) +if test $host_config != "none"; then + . $host_config fi @@ -265,12 +265,17 @@ dnl ---------------------------------------------------------------------- dnl Enable tracing of the API dnl AC_MSG_CHECKING(for API tracing); -AC_ARG_ENABLE(tracing, - --enable-tracing Cause the library to trace all API calls, - CPPFLAGS="$CPPFLAGS -DH5_DEBUG_API" - AC_MSG_RESULT(yes), - CPPFLAGS="$CPPFLAGS -UH5_DEBUG_API" - AC_MSG_RESULT(no)) +AC_ARG_ENABLE(trace, + [--disable-trace Disable API tracing capability], + TRACE=$enableval) + +if test X = "X$TRACE" -o Xyes = "X$TRACE"; then + AC_MSG_RESULT(yes) + CPPFLAGS="$CPPFLAGS -DH5_DEBUG_API" +else + AC_MSG_RESULT(no) + CPPFLAGS="$CPPFLAGS -UH5_DEBUG_API" +fi dnl ---------------------------------------------------------------------- dnl Check for parallel support diff --git a/doc/html/H5.user.html b/doc/html/H5.user.html index 3c16553..dc1232a 100644 --- a/doc/html/H5.user.html +++ b/doc/html/H5.user.html @@ -30,6 +30,8 @@ A guide to the H5E interface.
  • Caching - A guide for meta and raw data caching. +
  • API Tracing - + A guide to debugging HDF5 API calls.

    The following documents form a loosely organized developer's guide to @@ -64,7 +66,7 @@

    Quincey Koziol
    Robb Matzke
    -Last modified: Tue May 26 15:39:47 EDT 1998 +Last modified: Wed Jul 8 14:10:50 EDT 1998 diff --git a/doc/html/tracing.html b/doc/html/tracing.html index 18ef556..8d3c677 100644 --- a/doc/html/tracing.html +++ b/doc/html/tracing.html @@ -48,8 +48,9 @@ HDF5-DIAG: Error detected in thread 0. Back trace follows.

    This all happens with some magic in the configuration script, the makefiles, and macros. First, from the end-user point of view, the library must be configured with the - --enable-tracing switch. This causes the library to - include the support necessary for API tracing. + --enable-trace switch (the default; + `--disable-trace' is the alternative). This causes the library + to include the support necessary for API tracing.

    @@ -59,7 +60,7 @@ HDF5-DIAG: Error detected in thread 0. Back trace follows.
     $ make distclean
    -$ sh configure --enable-tracing
    +$ sh configure --enable-trace
     $ make
     	      
    @@ -186,7 +187,7 @@ H5E.c:336: warning: trace info was not inserted
    Robb Matzke
    -Last modified: Wed Jun 17 15:45:50 EDT 1998 +Last modified: Wed Jul 8 14:07:23 EDT 1998 diff --git a/src/H5Z.c b/src/H5Z.c index c4f6a5f..386ea59 100644 --- a/src/H5Z.c +++ b/src/H5Z.c @@ -416,7 +416,7 @@ H5Z_zlib_c (unsigned int flags, size_t __unused__ cd_size, const void *src, size_t dst_nbytes, void *dst/*out*/) { size_t ret_value = 0; -#ifdef HAVE_ZLIB_H +#if defined(HAVE_LIBZ) && defined(HAVE_ZLIB_H) const Bytef *z_src = (const Bytef*)src; Bytef *z_dst = (Bytef*)dst; uLongf z_dst_nbytes = (uLongf)dst_nbytes; -- cgit v0.12