summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobb Matzke <matzke@llnl.gov>1998-07-08 18:41:04 (GMT)
committerRobb Matzke <matzke@llnl.gov>1998-07-08 18:41:04 (GMT)
commit768b7465a19afcbc87ba54a7b6400492d54c2626 (patch)
tree67d1e32adcfdbf0905189ff3ca1d60c2c40a6b1a
parent1ce18a997166808519476b505f5bb0c4f34e1ea0 (diff)
downloadhdf5-768b7465a19afcbc87ba54a7b6400492d54c2626.zip
hdf5-768b7465a19afcbc87ba54a7b6400492d54c2626.tar.gz
hdf5-768b7465a19afcbc87ba54a7b6400492d54c2626.tar.bz2
[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.
-rw-r--r--INSTALL100
-rw-r--r--MANIFEST16
-rwxr-xr-xbin/release58
-rwxr-xr-xconfigure50
-rw-r--r--configure.in29
-rw-r--r--doc/html/H5.user.html4
-rw-r--r--doc/html/tracing.html9
-rw-r--r--src/H5Z.c2
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 <hdf5-1.0.0a.tar.bz2 |tar xf - OR
$ uncompress -c <hdf5-1.0.0a.tar.Z |tar xf -
-Step 2. Configure makefiles.
+Step 2. Configure.
* HDF5 uses the GNU autoconf program for configuration. Most
installations can be configured by typing just (from the
hdf5-1.0.0a directory)
- $ ./configure
+ $ sh configure
- Note: you may need to say `sh configure'.
- * 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
+ * The configuration process can be controlled through environment
+ variables, command-line switches, and host configuration files.
+ For a complete list of switches say `sh configure --help'.
- $ ./configure --prefix=/usr
+ * Host configuration files are located in the `config' directory
+ and are based on architecture name, vendor name, and/or operating
+ system which are displayed near the beginning of the `configure'
+ output. Not all hosts require a host configuration file.
+
+ * The C compiler and flags, the `ar' and `ranlib' program names,
+ and the `make' program can be specified with environment
+ variables if configure doesn't properly detect them and they are
+ not defined in a host config file.
+
+ CC Name of the C compiler.
+ CFLAGS Switches for the C compiler.
+ CPPFLAGS Additional switches for the .c -> .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 ($_=<STDIN>);
- 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 ($_=<STDIN>);
+ 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 <<EOF;
+ if ($batch) {
+ my ($v1,$v2,$v3,$v4) = $ver =~ /^(\d+)\.(\d+)\.(\d+)([a-z])$/;
+ $v3 += 1;
+ setver ($ver = "$v1.$v2.${v3}a") or die "cannot set version";
+ print "Development version set to $ver\n";
+ } else {
+ print <<EOF;
If this is a real release then the version number for continued development
should be incremented. Otherwise just press return.
EOF
- print "Set development version to [", ($ver=getver), "] ";
- return "" unless defined ($_ = <STDIN>);
- 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 ($_ = <STDIN>);
- if ($_ eq 'y') {
+ print "Set development version to [", ($ver=getver), "] ";
+ return "" unless defined ($_ = <STDIN>);
+ 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 ($_ = <STDIN>);
+ 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 <<EOF
-#line 2300 "configure"
+#line 2304 "configure"
#include "confdefs.h"
int main() {
main()
; return 0; }
EOF
-if { (eval echo configure:2307: \"$ac_link\") 1>&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 <<EOF
-#line 2342 "configure"
+#line 2346 "configure"
#include "confdefs.h"
int main() {
main()
; return 0; }
EOF
-if { (eval echo configure:2349: \"$ac_link\") 1>&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.
<li><a href="Caching.html">Caching</a> -
A guide for meta and raw data caching.
+ <li><a href="tracing.html">API Tracing</a> -
+ A guide to debugging HDF5 API calls.
</ul>
<p>The following documents form a loosely organized developer's guide to
@@ -64,7 +66,7 @@
<address><a href="mailto:koziol@ncsa.uiuc.edu">Quincey Koziol</a></address>
<address><a href="mailto:matzke@llnl.gov">Robb Matzke</a></address>
<!-- hhmts start -->
-Last modified: Tue May 26 15:39:47 EDT 1998
+Last modified: Wed Jul 8 14:10:50 EDT 1998
<!-- hhmts end -->
</body>
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.
<p>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
- <code>--enable-tracing</code> switch. This causes the library to
- include the support necessary for API tracing.
+ <code>--enable-trace</code> switch (the default;
+ `--disable-trace' is the alternative). This causes the library
+ to include the support necessary for API tracing.
<p>
<center>
@@ -59,7 +60,7 @@ HDF5-DIAG: Error detected in thread 0. Back trace follows.
<td>
<code><pre>
$ make distclean
-$ sh configure --enable-tracing
+$ sh configure --enable-trace
$ make
</pre></code>
</td>
@@ -186,7 +187,7 @@ H5E.c:336: warning: trace info was not inserted
<address><a href="mailto:matzke@llnl.gov">Robb Matzke</a></address>
<!-- Created: Wed Jun 17 12:29:12 EDT 1998 -->
<!-- hhmts start -->
-Last modified: Wed Jun 17 15:45:50 EDT 1998
+Last modified: Wed Jul 8 14:07:23 EDT 1998
<!-- hhmts end -->
</body>
</html>
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;