[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.
This commit is contained in:
Robb Matzke 1998-07-08 13:41:04 -05:00
parent 1ce18a9971
commit 768b7465a1
8 changed files with 148 additions and 120 deletions

102
INSTALL
View File

@ -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,15 +33,56 @@ 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'.
* 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'.
* 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)
* 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.
* 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.
* By default libraries, include files, programs, and documentation
are installed (when one says `make install') under
@ -53,49 +94,8 @@ Step 2. Configure makefiles.
$ ./configure --prefix=/usr
Note: HDF5 can be used without installing it.
* 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'.
* 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
$ ./configure --help
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.

View File

@ -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

View File

@ -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/;
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') {
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;

50
configure vendored
View File

@ -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

View File

@ -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

View File

@ -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>

View File

@ -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>

View File

@ -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;