Commit Graph

54 Commits

Author SHA1 Message Date
Albert Cheng
c7478518b4 [svn-r6854] Purpose:
Feature

Description:
Sometimes the total build process take a long time, especially in
parallel systems.  Need some idea if some times are taking way
too long to process.

Solution:
Added timestamps marking the beginning and ending of tests in
one directory.  This gives a rough idea of how much time the
tests use.

Platforms tested:
Tested only in Eirene since this is just a makefile thing and only
involve a simple command like echo and date.

Misc. update:
2003-05-13 10:21:42 -05:00
Albert Cheng
864d07f780 [svn-r6833] Purpose:
Improvement

Description:
Added an explanation of using $HDF5_PARAPREFIX for Parallel tests.

Platforms tested:
h5committested (using sol instead of arabica) plus eirene(pp).

Misc. update:
2003-05-08 13:47:20 -05:00
Albert Cheng
d88f9db418 [svn-r6524] Purpose:
New test feature

Description:
The various virtual file drivers (multi, family, core, ...)
are not tested automatically.  One would have to do it by hand
by setenv HDF5_DRIVER <driver> and then do gmake check in test/.

Solution:
Added a new target, check-vfd, which will take the list from
$VFD_LIST and run 'make check' with each of its members.

Platforms tested:
h5committested.
Since check-vfd is not invoked by default, I went to each machine
to invoke them by hand.  The target worked fine but there were
errors reported from those driver tests.  (Those errors were beyond
the scope of this make target test.)

Misc. update:
2003-03-26 19:14:30 -05:00
Bill Wendling
0f125bf0fc [svn-r6404] Purpose:
Bug Fix (Bug #806)
Description:
    When compiling/installing with the command "make install" (without
    performing a "make" beforehand) the tools weren't being made. This
    was because the `install' command in the Makefiles only relied upon
    public libraries, not private ones (which the one in the tools
    directory is).
Solution:
    Had the `install' command be dependent upon an "AUX_LIB" macro which
    includes libraries which are needed but aren't distributed (that is,
    they're staticly compiled).
Platforms tested:
    Linux
2003-02-14 16:17:16 -05:00
Quincey Koziol
f10e0cc1eb [svn-r5791] Purpose:
Code update.

Description:
    Added dependency on test scripts to "make check" target

Platforms tested:
    FreeBSD 4.6 (sleipnir) & IRIX64 6.5 (modi4)
2002-07-15 10:11:27 -05:00
Bill Wendling
2c49a718d7 [svn-r4999] Purpose:
Bug Fix
Description:
	``make uninstall-doc'' wasn't working properly. Some files would be
	left behind in the installed source tree. The fix I put in was too
	heavy-handed as it wiped out the entire doc tree that was installed
	and would remove any other files which were installed there.
Solution:
	Executed the ``make uninstall-examples'' command if uninstalling the
	docs. Fixed how the java Tutorial examples were being removed (they
	weren't). Essentially used the PUB_SUBDOCS macro to help remove them.
Platforms tested:
	Linux
2002-02-21 16:10:29 -05:00
Bill Wendling
5e834c4cbc [svn-r4466]
Purpose:
    Feature Add
Description:
    Added "install-example" and "install-all" to the Makefile system.
    The behaviour of the "make install*" options:

        make install          - Installs binaries, libraries, include
                                files, and example programs.
        make install-examples - Installs only the example programs.
                                The directories are:

                            ${prefix}/doc/hdf5/examples/{c,c++,fortran}

        make install-all      - Install the binaries, libraries, include
                                files, example programs, and
                                documentation. The whole kit-n'-caboodle.
        make uninstall-examples - Get rid of those example files (but not
                                  the ${prefix}/doc/hdf5/examples/...
                                  directories)

    There's a new bin/ program which helps create directories which are
    deeply nested called "mkdirs". It's a simple shell script.
Platforms tested:
    Linux
2001-09-21 18:50:15 -05:00
Albert Cheng
15c3995e05 [svn-r4434] Purpose:
New feature.
Description:
    Test programs were assumed to be serial programs only.
    There was no provision to test parallel programs automatically.
Solution:
    Added $(TEST_PARA_PROGS) to hold parallel test programs and
    added appropriate action entry to test them if defined.
Platforms tested:
    Eirene (parallel).
2001-09-10 23:04:15 -05:00
Quincey Koziol
ca9bdbdcbe [svn-r3827] Purpose:
Bug fix.
Description:
    'make distclean' is broken on FreeBSD 4.3, with some syntax errors.  I have
    a feeling that the make command is more picky in FBSD 4.3 than in 4.2 which
    is what is causing these errors to crop up now.
Solution:
    Add missing semicolon to line in 'clean' target and take out bogus '-'s
    in front of "$(RM)" commands which are already in if's
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-04-19 16:47:12 -05:00
Bill Wendling
7e05b02ab3 [svn-r3809] Purpose:
Bug Fix
Description:
    On the T3E, the hack about SUBDOCDIR macro didn't work cause it
    wanted an actual value to be in this macro. Well, it wasn't, so now I
    check that it actually has a value.
Solution:
    Check that DOCDIR and SUBDOCDIR have a value before trying to do
    anything with it.
2001-04-13 11:38:17 -05:00
Bill Wendling
ee17f3731e [svn-r3586] Purpose:
Hack
Description:
    Need to install the files in the examples/java directory, however
    they include installing a Makefile. This was causing havoc with our
    Makefile/configure system.
Solution:
    Changed so that you can specify a "SUBDOCDIR" which will create a
    subdirectory for you and fill it with files specified in PUB_SUBDOCS.
Platforms tested:
    Linux
2001-03-09 17:30:51 -05:00
Bill Wendling
8910ca14c4 [svn-r3568] Purpose:
Bug Fix
Description:
    Added logic so that all the various make options would recursively be
    done in their subdirectories.
Solution:
    Added a for-loop to iterate through the subdirectories.
Platforms tested:
    Linux
2001-03-08 15:13:04 -05:00
Bill Wendling
241abf4931 [svn-r3452] Purpose:
Fix
Description:
    The "make *clean" options weren't recursing through the
    subdirectories (if they exist).
Solution:
    Force it to recurse through the subdirectories listed in SUBDIRS
Platforms tested:
    Linux
2001-02-19 14:04:32 -05:00
Bill Wendling
6fbdd9f68b [svn-r3356] Purpose:
Formatting...
Platforms tested:
    Solaris
2001-02-05 15:09:33 -05:00
Bill Wendling
0c5cedfff9 [svn-r3354] Purpose:
Fix for install-doc feature
Description:
    I fixed the install-doc feature so that it actually works! (Imagine
    :-).
Solution:
    It manually checks if the DOCDIR exists. If not, then it mkdir's it.
    Then it does the install of the appropriate docs.
Platforms tested:
    Linux, Solaris
2001-02-05 15:05:48 -05:00
Bill Wendling
a2e49651af [svn-r2696] Purpose:
Bug Fix
Description:
	On some platforms, if you don't have . in your PATH, it won't
	find the test program it's supposed to run.
Solution:
	Changed instead to ./$$test so that it picks up the program in
	the current directory.
Platforms tested:
	Opus and Linux
2000-10-18 11:47:04 -05:00
Robb Matzke
f2caef690b [svn-r2573] Purpose:
Fix Irix pmake bugs
Description:
	Build fails on Irix when builddir != srcdir
Solution:
	* acconfig.h
	* src/H5config.h.in			[REGENERATED]
		Added definition for HAVE_STREAM

	* config/conclude.in
	* config/depend1.in
	* config/depend2.in
	* config/depend3.in
	* config/depend4.in
		The `Dependencies' file is located in the source
		tree. This fixes bugs for Irix pmake when compiling
		outside the source tree.  Hopefully it still preserves
		Albert's changes which allow concurrent compilations
		to not stomp on each other's Dependencies files.


	* examples/Dependencies			[REGENERATED]
	* src/Dependencies			[REGENERATED]
	* test/Dependencies			[REGENERATED]
	* tools/Dependencies			[REGENERATED]
		Regenerated for testing purposes.
Platforms:
	i686-pc-linux
	mips-sgi-irix6.5
	sparc-sun-solaris2.6
2000-09-19 12:04:46 -05:00
Albert Cheng
7c1e888bde [svn-r2572] Purpose:
Feature
Description:
    Most tests are done inside a for-loop.  Whenever a test exits
    with error, the for-loop does a "exit 1" to exit the make.
    "make -i" could not catch and ignore the error status.
Solution:
    Replaced "exit 1" with break.  At the end of the for-loop,
    test if all tests have been run.  If not, the for-loop is
    ended by the break command, thus raise an error.  Now,
    'make -i' can catch and ignor it.
    Also added the test of variable HDF5_Make_Ignore inside the
    for-loop to indicate the desire to ignore errors when the
    HDF5_Make_Ignore is set to a non-null/blank string.
Platforms:
    Tested on modi4 and eirene.
2000-09-19 11:53:34 -05:00
Albert Cheng
ff5aa653b2 [svn-r2418] Added the variable, PUB_PROGS, which holds the public programs
that are to be installed.
2000-06-27 14:01:03 -05:00
Albert Cheng
e29f213cf9 [svn-r1949] Problem:
The Dependencies files were generated in $srcdir even when
    --srcdir is used.  It caused conflicts if multiple hosts
    are doing make sharing the same $srcdir.  It also violated
    the rule that --srcdir would not modify the content of $srcdir
    which could be on a read-only media like a CD-ROM.
Solution:
    Dependencies files are generated in the "current" directory.
Platform tested:
    dangermouse (linux), modi4 (IRIX64).
2000-01-26 09:50:12 -05:00
Robb Matzke
eb8747499d [svn-r1802] Changes since 19991019
----------------------

./MANIFEST
./configure.in
./configure			[REGENERATED]
	Added more checking for `make' features.

./Makefile.in
./doc/Makefile.in
./doc/html/Makefile.in
./doc/html/Tutor/Makefile.in
./examples/Makefile.in
./pablo/Makefile.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
./config/commence.in
./config/conclude.in
./config/depend.in		[REMOVED]
./config/depend1.in		[NEW]
./config/depend2.in		[NEW]
./config/depend3.in		[NEW]
./config/depend4.in		[NEW]
./config/dependN.in		[NEW]
	The directory search stuff was moved into commence.in, thereby
	shortening the Makefile.in prologues.

./doc/html/Dependencies		[NEW]
./doc/html/Tutor/Dependencies	[NEW]
./examples/Dependencies		[NEW]
./src/Dependencies		[NEW]
./test/Dependencies		[NEW]
./testpar/Dependencies		[NEW]
./tools/Dependencies		[NEW]
	The `.distdep' files were all renamed to `Dependencies' to make them
	more obvious. They are required (but may be empty) in every directory
	that has a Makefile.in that ends with @CONCLUDE@ (you'll get an
	obvious error from make if you forgot to create one).

./bin/trace
./src/H5.c
	Added H5E_major_t and H5E_minor_t although tracing only prints the
	integer value.

./src/H5E.c
./src/H5Epublic.h
	Added tracing information.

./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDgass.c
./src/H5FDmpio.c
./src/H5FDsec2.c
./src/H5FDstdio.c
	Fixed places where FUNC_LEAVE() evaluated it's argument more than
	once.

	Added tracing information.

	Wrapped long lines.

./config/gnu-flags
	Fixed a syntax error when we don't have a gnu compiler.
1999-11-01 10:21:16 -05:00
Albert Cheng
6474c9dfdb [svn-r1764] Added the install-doc and uninstall-doc targets. 1999-10-15 16:23:47 -05:00
Robb Matzke
34e44e399e [svn-r1753] Changes since 19991007
----------------------

./configure.in
./src/H5config.h.in	[REGENERATED]
	The /usr/ncsa/{include,lib} directories are only added if they
	actually exist. This fixes a warning on some systems.

	Checks for the <pdb.h> header file and also for either the PDB or Silo
	library, and if found prepares to compile the pdb2hdf program.

./config/distdep
	Relative path names for include files are changed to base names since
	the makefile contains the logic for searching and since it's likely
	that building the .distdep files happed from a location other than
	where they would be used in the file system.

./config/conclude.in
	Fixed shell errors when `for' loops iterate over nothing for the
	`uninstall' target.

./src/H5D.c
./src/H5Oefl.c
	File names for the external files are added to the heap when the
	dataset is created instead of when the object header is written. This
	fixes a rare infinite recursion bug.

./src/H5FD.c
./src/H5FDpublic.h
	Optimization to the free list causes H5FD_alloc() usage to go from >10
	seconds to <0.4 second for one example (converting a 30MB equation of
	state file from PDB to HDF5 format). The optimization is to simply
	keep track of the largest item in the free list and not search the
	free list when the largest item is not big enough to satisfy the
	request.

./src/H5FDcore.c
./src/H5FDcore.h
./test/h5test.c
	If the `backing_store' property is true then a flush causes the entire
	contents of memory to be written to the specified file. This is  in
	preparation for the ASCI/red optimizations and is currently tested by
	the pdb2hdf `--cached' switch.

./src/H5Odtypes.c
	Wrapped three long lines.

./tools/Makefile.in
./tools/pdb2hdf.c		[NEW]
	A PDB-to-HDF5 translator. It only translates meta data -- the
	resulting HDF5 points into the PDB file for the raw data.
1999-10-15 09:53:57 -05:00
Albert Cheng
aeb5116600 [svn-r1645] conclude.in:
Problems:
    libtool generated compiler linking commands with dependency_libs
    appended to any dynamic library used but only "-lz -lmfhdf ..." were
    appended but "-L...", if used, are not appended.  So, the "-lz ..."
    information is incomplete and solaris cc does not allow even if the
    "-L..." information is provide in later part of the command.
    Solution:
    Included $LDFLAGS in the building of $(LIB).

irix5.x:
irix6.x:
    Added "-s" to PROD_CFLAGS so that production code are striped for
    smaller sizes.

Platform Tested:
    Solaris 2.6
1999-09-22 13:02:27 -05:00
Robb Matzke
6470e417e8 [svn-r1515] Changes since 19990715
----------------------

./Makefile.in		[1.3]
./examples/Makefile.in	[1.3]
./pablo/Makefile.in	[1.3]
./src/Makefile.in	[1.3]
./test/Makefile.in	[1.3]
./testpar/Makefile.in	[1.3]
./tools/Makefile.in	[1.3]
./config/commence.in	[1.3]
./config/conclude.in	[1.3]
./config/depend.in	[1.3]
	Added a `.PATH' target for Irix pmake which is identical to
	the VPATH used by most other `make' programs. Irix 6.5 (or
	6.4?) and later `make' ignores VPATH.

	Started all beginning-of-line comments with `##' instead of
	just `#' because Irix `pmake' barfs on things like the
	following because it sees the `# if' as a directive:

		# make will barf on the following line
		# if running Irix pmake


./config/commence.in	[1.3]
	Added empty definitions for optional `make' macros because
	Irix pmake complains if it sees a macro which has never been
	defined. The main body of the Makefiles can redefine these
	macros to whatever they need.
1999-07-19 14:56:57 -05:00
Robb Matzke
f1a1ae37ff [svn-r1315] Changes since 19990607
----------------------

./configure.in
./configure			[REGENERATED]
./src/libhdf5.settings.in	[NEW]
./config/conclude.in
./INSTALL
./MANIFEST
	A file called `libhdf5.settings' is installed along with the
	libraries and it contains a list of various things that might
	be of interest to someone using the library (such as what
	compiler/options were used and what other libraries might need
	to be linked to satisfy external references).  We can add more
	things as it becomes necessary. Here's a sample...

	SUMMARY OF THE HDF5 CONFIGURATION
	=================================

	HDF5 Version:		hdf5-1.1.106
	Configured on:		Tue Jun  8 11:38:52 EDT 1999
	Configured by:		matzke@llnl.gov at Spizella Software
	Configure mode:		development
	Host system:		i686-pc-linux-gnulibc1
	Byte sex:		little-endian
	Libraries:		static, shared
	Parallel support:	mpicc
	Installation point:	/usr/local
	Compiler:		mpicc (egcs-2.91.66)
	Compiler switches:	-Wall -g
	Extra libraries:	-lmfhdf -ldf -lz -ljpeg -lm
	Archiver:		ar
	Ranlib:			ranlib
	Debugged Packages:	d,e,f,g,hg,i,mm,o,p,s,v,z
	API Tracing:		yes
	File addresses:		large
1999-06-08 11:14:10 -05:00
Albert Cheng
b48d0a56ee [svn-r1289] Removed RUNTEST before the /bin/sh because all the systems that is
known so far do not need a "launching command" to run shell script.
(If a future system needs it, maybe we should use a new VARIABLE
called RUNSHELL, default to /bin/sh, to do the launching.)

Then inside the test shell script, it needs to know how to launch
serial or parallel executions.  So, pass the RUNSERIAL and RUNPARALLEL
variables to the /bin/sh command.
1999-05-28 17:07:42 -05:00
Robb Matzke
cc2184b6ef [svn-r1240] Changes since 19990427
----------------------

./tools/h5ls.c
	Added a `--address' (`-a') switch which causes h5ls to display
	file addresses for raw data. For contiguous datasets it's just
	a nice simple number, but for chunked datasets it's a list of
	logical dataset coordinates, file addresses, filter masks, and
	storage sizes.

	Changed `--dump' switch to `--data'.

./src/H5D.c
./src/H5F.c
./src/H5Fprivate.h
	Enhanced the indexed-storage B-tree iterator so it can dump
	raw data addresses (and other info) to the standard error
	stream.

	Added H5Ddebug() so h5ls has a way to dump addresses for
	datasets. I'm not sure what else this API function should do,
	so I think we should discuss it before we document it. So far,
	h5ls is the only thing that uses it, and we can easily change
	that.

./src/H5Tconv.c
./test/dtypes.c
	Finally had a chance to verify Paul's H5T_conv_s_s (general
	string to string conversions) bug fixes and incorporate them
	into H5T_conv_f_f (general floating-point to floating-point
	conversions) and H5T_conv_i_i (general integer to integer
	conversons). Thanks Paul.

./src/H5D.c
./src/H5S.c
./src/H5Sprivate.h
	Added performance timers around data space read and write
	callbacks. They were already there for the gather/scatter
	callbacks.

	The timings for read/write callbacks are displayed along with
	gather/scatter when data space debugging is turned on.

./bin/iostats
	Updated to print totals. Added a `--fast' option that doesn't
	do any output except the totals and is much faster.

./bin/trace
	Changed __unused__ to UNUSED to match source code.

./config/gnu-flags
	Updated error message for pgcc. I've sent bug reports to the
	pgcc people but the new version still has the same bug.

./configure.in
./config/conclude.in
./config/depend.in
	Fixed dependencies for non-GNU makes when run in a directory
	other than the hdf5 source tree.

	Updated GNU `make dep' rules to copy the distributed
	dependencies for non-GNU makes into the source tree when run
	in some other directory.
1999-04-30 10:54:52 -05:00
Robb Matzke
2dc738a321 [svn-r1224] Changes since 19990426
----------------------

./tools/h5tools.c
./tools/h5tools.h
	Finally fixed a long-standing bug that caused core dumps if
	a compound datum rendered to more than some number of
	characters (we kept bumping up the limit at the risk of
	violating stack size limits on some machines). The fix works
	only on systems that have the vsnprintf() function (otherwise
	a 4kB limit is imposed, which if violated probably dumps
	core). If vsnprintf() is present then the library dynamically
	allocates space for the output string.

	Also made it possible to control how compound data is rendered
	across multiple lines of output by allowing the caller to
	specify where optional line-breaks get inserted. The output
	functions split up the value at one or more optional
	line-breaks to prevent it from wrapping around the screen.

	If a datum doesn't fit on the current line but would fit on
	the next line then it is printed on the next line regardless
	of whether optional line-breaks would have prevent wrapping
	around the screen. This makes it easier to find the beginnings
	of compound data values.  This feature is disabled by default
	but can be enabled by the application.

	If a datum doesn't fit on the current line and the previous
	datum also occupied more than one line then we move to the
	next line before printing. This makes it easier to find the
	beginnings of compound data values but prevents the output
	from looking fragmented if there are only a few long values
	among mostly short values.  This feature is disabled by
	default but can be enabled by the application.

	The application can control the printf() formats used for all
	the native data types. The defaults are what the library used
	to use: %g, %ld, %lu, %d, and %u

./tools/h5ls.c
	Compound datatype values can now be split across multiple
	lines of output instead of just wrapping. Also, when lots of
	compound values are too long they all start at the beginning
	of a line. This only required about 10 lines of changes in the
	setup for tools library calls (I didn't modify the h5dump
	program because it uses its own version of the tools library
	that forked off long ago).

	Added code for Win32 which is unable to cast `unsigned long
	long' to `double'. If the dataset size exceeds (2^63)-1 then
	the percent utilization is not displayed (this is easily
	possible with chunked datasets). This is untested yet.

./configure.in
./src/H5config.h.in
./src/H5.c
./src/H5private.h
	Check for vsnprintf() and provide a simple, stupid definition
	if it isn't available. The stupid definition just calls
	vsprintf() and ignores the second argument. This can result in
	buffer overflows in h5ls and h5dump since vsprintf() is an
	unsafe function (and anyone can create an hdf5 file that runs
	an arbitrary command from h5ls and h5dump in that case)!

./config/conclude.in
	Remove more *.o files for `make clean'

./src/H5A.c
./src/H5D.c
./src/H5F.c
./src/H5I.c
./src/H5Iprivate.h
./src/H5P.c
./src/H5R.c
./src/H5RA.c
./src/H5S.c
./src/H5T.c
./src/H5TB.c
	Cleaned up a memory leak during H5_term_library() by allowing
	H5I_clear_group() to skip items that couldn't be freed. This
	allows the item to remain in the group until we can free it
	later.

./src/H5F.c
	The H5F_close_all() function fails if a file cannot be closed.
1999-04-27 09:47:54 -05:00
Robb Matzke
43c356f93d [svn-r1184] Changes since 19990402
----------------------

./config/commence.in
./config/conclude.in
./test/Makefile.in
./tools/Makefile.in
	Fixed so private libraries are not installed publicly.

	The installation directories `bin', `include', and `lib' are
	created mode 755.

./src/H5.c
./src/H5A.c
./src/H5F.c
./src/H5Fcore.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fmpio.c
./src/H5Fsec2.c
./src/H5Fstdio.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5Oattr.c
./src/H5Ocomp.c
./src/H5Ocont.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Ofill.c
./src/H5Olayout.c
./src/H5Omtime.c
./src/H5Oname.c
./src/H5Osdspace.c
./src/H5Oshared.c
./src/H5Ostab.c
./src/H5R.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Snone.c
./src/H5Spoint.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Vprivate.h
./src/H5Z.c
./src/H5detect.c
./src/H5private.h
./test/chunk.c
./test/dsets.c
./test/dtypes.c
./test/h5test.c
./test/overhead.c
./test/ragged.c
./test/tattr.c
./tools/h5dump.c
./tools/h5findshd.c
./tools/h5ls.c
	Changed `__unused__' to `UNUSED' to fix a conflict with GNU
	header files.

./src/H5Tpkg.h
./test/h5test.h
	Removed __unused__ from forward function declarations.

./src/H5P.c
	Removed a comment about restrictions for the type conversion
	temporary buffers. Thanks to Quincey, the comment no longer
	applied.

./src/H5T.c
	Relaxed the H5Tpack() a little so it would pack compound data
	structures that had non-transient atomic members.

./tools/h5ls.c
	Added a `-g' (or `--group') flag that causes information to be
	printed about the specified group instead of the group's
	contents. (sort of like Unix's `ls -d'). The `-g' can be used
	in combination with `-r' to print information about the group
	and its contents.
1999-04-15 14:57:50 -05:00
Robb Matzke
f003dead4d [svn-r1169] ./configure.in
./configure		[REGENERATED]
./src/H5D.c
./src/H5O.c
	Removed H5AC, H5B, and H5T from the default list of packages
	to debug (because they're pretty expensive debugging), and
	added H5O. Also fixed a bug for undefined variable in H5D when
	H5S debugging is turned on but H5T debugging is turned off.

./config/conclude.in
	Fixed installation of header files for building in a directory
	other than the source directory. This fixes a bug where
	H5config.h wasn't being installed.

./src/H5.c
./src/H5A.c
./src/H5D.c
./src/H5F.c
./src/H5G.c
./src/H5I.c
./src/H5Iprivate.h
./src/H5P.c
./src/H5R.c
./src/H5RA.c
./src/H5S.c
./src/H5T.c
./src/H5TB.c
./src/H5Tprivate.h
./src/H5Z.c
./src/H5detect.c
./src/H5private.h
	Changed the way the library shuts down again. Now it handles
	cycles between packages and isn't so sensitive to dependencies
	between packages. A package might shut down only to be
	restarted to process a request from some other package being
	shut down.  Loops are detected after 100 iteractions and the
	shutdown is aborted with a message on standard error.  This
	also makes it a lot easier to debug.

./src/H5A.c
	Fixed H5A_write() and H5A_read() so they pass a non-null
	background buffer to the conversion functions. This is
	necessary when an attribute has a compound data type.

./src/H5Flow.c
./src/H5Fprivate.h
./src/H5Fsec2.c
	Reindented new Win32 stuff.

./src/H5Odtype.c
	Fixed a bug when enumeration types are used in a compound data
	type. The byte pointer wasn't incremented after the type
	information was written.

./tools/h5ls.c
	Compound data types display their total size because it's not
	always obvious from looking at the members.

	Scalar attributes show their space as `scalar' instead of
	`{}'.

	The index value is not printed for attributes that have only a
	few values. Instead the word `Data:' is printed on the first
	line of attribute data.

	Named types display their data type only if verbose output was
	requested.
1999-03-30 06:38:34 -05:00
Robb Matzke
b93c9e2cf9 [svn-r1151] Changes since 19990318
----------------------

./Makefile.in
./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./config/commence.in
./config/conclude.in
./config/dec-osf4.x
./config/depend.in
./config/freebsd
./config/linux-gnu
./config/linux-gnulibc1
./config/linux-gnulibc2
./config/solaris2.x
./examples/Makefile.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
./tools/testh5dump.sh
	Changes that allow hdf5 to be configured and compiled in a
	directory other than the source directory. This is especially
	useful if you want to concurrently compile with different
	compilers and/or compile flags, or if the hdf5 source is on
	read-only media like a CDROM.  The changes were surprisingly
	easy ;-) Here's what you can do now...

		  $ mkdir /tmp/build1  # or something
		  $ cd /tmp/build1
		  $ /cdrom/hdf5/configure # where ever the source is
		  $ make

	Paul, you'll have to change the testh5toh4 script similar to
	the way I changed testh5dump.sh.  I started working on it but
	then gave up because of a number of problems: (1) I had to
	comment out all the tests that let h5toh4 choose the output
	file name because it always tried to put the output file in
	the same directory as the input file, (2) if path names are
	used during the h4 dump then they interfere with the
	diff. The test works fine when run in the source directory,
	but try this instead:

	    $ gunzip <hdf5-1.1.67.tar.gz |tar xf -
	    $ chmod -R ugo-w hdf5-1.1.67
	    $ mkdir build
	    $ cd build
	    $ ../hdf5-1.1.67/configure
	    $ make check

	Dan, I didn't modify the pablo/Makefile.in because I have no
	way to test it. I think all you need to do is add a couple
	lines before the @COMMENCE@ line and add a couple search
	directories for header files. Anyway, it seems like almost an
	exact duplicate of the src/Makefile.in, so it shouldn't be a
	problem...

./Makefile.in
	Removes a few more temporary files during make clean and
	distclean.

./configure.in
	I fixed the creation of the time-stamp files so that the
	initial make doesn't have to regenerated all the makefiles
	(only GNU make users will see any change).

./src/H5R.c
	Changed a return type from `intn' to `int' for an API
	function.

./src/H5detect.c
	Added the volatile qualifier to a couple more variables.

./tools/h5tools.c
	Fixed a compiler warning about an unused local.

./tools/h5toh4.c
	Initialized `optind' to 1 because it's zero on my system. It
	should always be one on a unix system.

./tools/testh5toh4
	Redirected "broken pipe" messages to /dev/null so outut is
	formatted correctly.
1999-03-19 15:09:50 -05:00
Robb Matzke
b8ef51ee7a [svn-r1138] Changes since 19990304
----------------------

./config/*-aix4.*	[REMOVED]
./config/*-aix4.x	[NEW]
./config/solaris2.5	[REMOVED]
./config/solaris2.x	[NEW]
./configure.in
./configure		[REGENERATED]
./MANIFEST
	Changed the names of the IBM-SP2 config files by replacing the
	minor version numbers with an `x'.  The solaris config warns
	about old versions of gcc.

	The RUNSERIAL value is set to the empty string by default. The
	config/* file (or user) can override it by setting it to some
	other value.

	The `--enable-parallel' with no flags turns on the
	HAVE_PARALLEL constant in the source code but doesn't add any
	MPI or MPI-IO libraries to the link line.

	If we are compiling for parallel then configure checks that we
	can actually link a very simple program. This has the benefit
	of detecting config errors before we waste time compiling the
	entire library.

	Configure recognizes `mpcc_r' as a parallel compiler.

./src/H5A.c
./src/H5Apublic.c
	Fixed some compiler warnings.  Changed the return type of
	H5Aget_name() from hssize_t to ssize_t because the name can
	never be larger then memory.
1999-03-12 13:35:04 -05:00
Robb Matzke
116491f0d6 [svn-r1112] Changes since 19990301
----------------------

./INSTALL
	Reorganized and added some additional examples.

./MANIFEST
./aclocal.m4			[NEW]
./configure.in
./configure			[REGENERATED]
./src/H5config.h.in		[REGENERATED]
./bin/ltconfig			[NEW]
./bin/ltmain.sh			[NEW]
	Added tests to determine how to compile shared libraries and
	how to link programs with them before the libraries are
	installed.  Also how to install and uninstall shared
	libraries. The configure step also prints the names of the
	config files it's trying to load for easier debugging.

./bin/config.guess
./bin/config.sub
	Replaced with a newer version from GNU.  The changes we made
	to that file to report `irix6.x' and `FreeBSD' without version
	numbers have been incorporated into configure.in instead.  In
	the future, do not change these two files (see the top of
	configure.in instead). By the way, this update was required to
	get shared libraries working.

./config/linux			[REMOVED]
./config/linux-gnulibc1		[NEW]
./config/linux-gnu		[NEW]
./config/alpha-dec		[REMOVED]
./config/alpha-dec-osf4.0	[REMOVED]
./config/dec-osf4.x		[NEW]
./config/irix5.3		[REMOVED]
./config/irix5.x		[NEW]
./config/irix64			[REMOVED]
./config/freebsd
	Moved config files around to agree with output from the new
	config.guess.  The linux file was split into gnu (RedHat),
	gnulibc1, and gnulibc2 versions. The alpha-dec file was
	removed (I think it was unused) and the alpha-dec-osf4.0 was
	changed to dec-osf4.x. The irix5.3 file renamed to irix5.x and
	the irix64 file was renamed to irix6.x. The freebsd file was
	changed to point to linux-gnulibc1. These changes were tested
	on:

		Linux 2.0
		Linux 2.1
		FreeBSD 3.2
		Irix 5.3
		Irix64 6.2
		Irix64 6.4
		HP/UX 10.20
		OSF1 4.0

./config/alphaev56-dec-osf4.x
./config/irix64
	Added warnings similar to linux/freebsd about using compilers
	with known bugs.

./config/commence.in
./config/conclude.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
	Added definitions for shared libraries. This has been tested
	on the following systems:

		Linux 2.0
		Linux 2.1
		FreeBSD 3.2
		Irix 5.3
		Irix64 6.2
		Irix64 6.4
		HP/UX 10.20		static only
		OSF1 4.0

	If you want to disable use of shared libraries (you probably
	do for development purposes since it takes a lot longer to
	compile and because you have to run dynamically linked
	programs in a special way if the library hasn't been
	installed) then add `--disable-shared' to the configure
	command line.  This is all documented in the INSTALL file.

./bin/release
	Temprarily commented out the MANIFEST checking when running
	under svf since svf is about to be replaced by a newer
	version.  This change only affects error checking during the
	release process.

./Makefile.dist
./Makefile.in
	Added `make check' which does the same thing as `make _test'
	since the former is endorsed by the GNU coding style and
	people are used to it.  The old `make _test' still works too
	(and so does `make test' if you use GNU make).
1999-03-02 12:15:35 -05:00
Robb Matzke
68bff3d352 [svn-r928] Changes since 19981118
----------------------

./src/H5.c
./src/H5Smpio.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpublic.h
./src/H5detect.c
./src/H5private.h
./src/H5public.h
./test/big.c
	The `long long' type isn't quite as prevalent as we had hoped;
	there is at least one system that defines `__int64' but not
	`long long'.  Therefore, I've temporarily changed all
	occurrences of `long long' to `long_long' and then #define
	that in H5private.h based on the existence of `long long' or
	`__int64'. This gets rid of some #ifdef's in other parts of the code.
	The semantics of the hdf5 types are:

	   *int8_t	 Exactly one byte
	   *int16_t	 At least two bytes. We favor 32-bit integers over
			 16-bit integers if the 16-bit integer is 4-bytes wide
			 (Cray)
	   *int32_t	 At least four bytes.
	   *int64_t	 At least eight bytes
	   long_long	 The widest integral integer type

	The H5Smpio.c contains debugging code which is non-portable.

./tools/h5ls.c
	Changed the order native types are detected so we favor the name `int'
	over `short' or `long' if two of them are the same.

./config/conclude.in
	Added a rule to make test programs depend on the hdf5 library. This
	fixes a minor bug where changing H5detect.c and then running `make
	test' caused H5Tinit.c to not be recompiled and therefore the test
	files are not relinked.
1998-11-19 12:36:27 -05:00
Robb Matzke
841e168a04 [svn-r914] Changes since 19981113
----------------------

./config/conclude.in
./test/Makefile.in
./tools/Makefile.in
	The Makefile $TESTS variable has finally been split into
	$TEST_PROGS and $TEST_SCRIPTS with the latter being the names
	of shell scripts that need to be run with `/bin/sh'.  Now we
	don't have to copy each shell script before we run it. NOTE:
	THIS CHANGE DOES NOT AFFECT THE PABLO MAKEFILE SINCE THAT FILE
	IS A COPY OF A PREVIOUSLY GENERATED MAKEFILE.

./src/Makefile.in
	Added H5Snone.c to the source list.

./src/H5G.c
	Plugged a memory leak by emptying the object type "isa" table
	when the library is closed.

./src/H5Tconv.c
./src/H5Tpkg.h
	Added 48 new type functions to take advantage of hardware for
	integer type conversions.  These functions are not registered
	in the conversion table yet because I haven't fully tested
	them.

./src/H5Tpkg.h
	Removed __unused__ qualifiers from prototypes.
1998-11-16 10:29:54 -05:00
Robb Matzke
071aa057aa [svn-r907] Changes since 19981111
----------------------

./INSTALL
	Added instructions about specifying a path for GNU zlib and
	HDF4 headers and library.

	Added comments for each of the tool names.  Added h5toh4 as a
	tool name.

./configure.in
./conigure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	The config/* scripts get invoked with $CC_BASENAME set the
	base name of the compiler in order to make it easier to handle
	setting compiler flags for different compilers in a big case
	statement.  For instance, if $CC has the value

	    /usr/local/mpi/bin/mpicc -ansi -64

	then $CC_BASENAME will be `mpicc'.  The $CC_BASENAME is not
	set if $CC is not set.

	Fixed alignment in `configure --help'.

	An include and/or library path can be specified for GNU zlib
	if configure can't find it in normal places.  The "normal"
	means wherever your compiler normally searches, including
	search paths you've added through environment variables like
	CPPFLAGS and LDFLAGS.  The INSTALL file has instructions.

	The `-ljpeg' library is detected.

	If `ssize_t' is not found then a #define is added to
	H5config.h similar to what we already do for `size_t'.

	We detect the hdf5 header file `mfhdf.h' and libraries
	`-lmfhdf' and `-ldf' and if found define the H5TOH4 and
	TESTH5TOH4 Makefile variables.  The user can specify an
	include and/or library path. The INSTALL file has
	instructions.

	The `RUNTEST' variable has been split into `RUNSERIAL' and
	`RUNPARALLEL' because these are different commands.  The
	makefile still uses `RUNTEST', which defaults to the RUNSERIAL
	value.  The new testpar/Makefile.in sets RUNTEST to the
	RUNPARALLEL value. The default RUNSERIAL value is empty and
	the default RUNPARALLEL value is `mpirun -np 2'.  These can
	both be overridden in the config/* files.  To make the value
	the empty string set it like `RUNPARALLEL=none' in the
	config/* file.

	The new testpar/Makefile is generated from testpar/Makefile.in

./config/commence.in
	Added the RUNSERIAL and RUNPARALLEL makefile definitions.

./src/Makefile.in
	The `H5detect' program is run with RUNSERIAL, which is empty
	on all platforms except intel-osf1 (ASCI/Red)

./config/conclude.in
	Removed the `.c.a:' implicit rule -- we don't use it any more.

./config/BlankForm
./config/alpha-dec
./config/alpha-dec-osf4.0
./config/freebsd2.2.7
./config/hpux10.20
./config/hpux9.03
./config/intel-osf1
./config/irix5.3
./config/irix6.2
./config/irix64
./config/linux
./config/powerpc-ibm-aix4.2.1.0
./config/rs6000-ibm-aix4.1.4.0
./config/solaris2.5
	All of these files have been updated to hande multiple
	compilers. Most of them assume `cc' if CC is not set. The
	documentation in `BlankForm' has been updated and
	documentation in the other files refer to `BlankForm'.

	The intel-osf1 uses LDFLAGS instead of LIBS to specify the extra
	library search paths.

./examples/Makefile.in
./test/Makefile.in
./tools/Makefile.in
	Simplified by grouping some dependency information together
	more succinctly.

	The tools Makefile.in has been modified to work with the
	`h5toh4' and `testh5toh4' programs.  Until Paul checks these
	in you may have problems compiling.  If so, just create files
	h5toh4.c and testh5toh4.c that contain:

	    #include <stdio.h>
	    int main(int argc, char *argv[]) {
	        fprintf(stderr, "%s: not implemented\n", argv[0]);
		return 1;
	    }

./src/H5public.h
	Removed definition for `ssize_t' since this is now handled by
	configure in H5config.h with a #define.


./MANIFEST
./testpar/Makefile.in	[NEW]
	Added a makefile for parallel tests.  As soon as we get this
	working properly we can remove the other four makefiles in
	that directory and maintain just one.
1998-11-13 10:06:06 -05:00
Robb Matzke
6d9af58391 [svn-r714] Changes since 19980911
----------------------

This checkin is to fix a couple bugs for Jim Reus.  Some features are
not fully implemented but it shouldn't break anything.

./config/conclude.in
./test/Makefile.in
	`make clean' removes object files from the test directory as
	well as a couple more *.h5 temp files.

./config/hpux9.03		[NEW]
	New config file for HP/UX 9.03

./src/H5B.c
./src/H5Bprivate.h
./src/H5Fistore.c
./src/H5G.c
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5Gprivate.h
./src/H5Gstab.c
	Not-yet-complete version of object removal.

./src/H5Fistore.c
./src/H5Fprivate.h
	Experimental optimizations, disabled by default.

./src/H5Fprivate.h
	Default low-level driver was changed to H5F_LOW_SEC instead of
	H5F_LOW_STDIO because the sec2 driver is much easier to debug.

./src/H5Fsplit.c
./src/H5G.c
./src/H5Z.c
	Changed a couple return statements to HRETURN.

./src/H5Odtype.c
	Removed a check for nested compound data types from back when
	they weren't implemented that raised an error.

./tools/h5tools.c
	Increased temp buffer sizes and added a check for buffer
	overflow so we fail an assertion (hopefully).  This really
	needs to be fixed sometime.

	Added support for printing H5T_STRING data types.
1998-09-22 10:27:26 -05:00
Albert Cheng
a7e57b2779 [svn-r593] Added couple banner lines around the "Testing ...." message and
also a trailing blank line to make it easier to identify the
output of each test program.
1998-08-14 14:39:41 -05:00
Robb Matzke
8ad2f1aae0 [svn-r510] Changes since 19980713
----------------------

./config/conclude.in
	Fixed so `make test' and `make progs' work on a clean source tree.
1998-07-15 11:39:46 -05:00
Robb Matzke
614ae2dce6 [svn-r485] Changes since 19980710
----------------------

./Makefile.in
./config/commence.in
./config/conclude.in
./config/depend.in
./src/Makefile.in
./test/Makefile.in
	Tests are no longer installed for `make install'.  Added a new
	target `make tests' that builds the tests but doesn't run them.

./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	Added detection of fork() and waitpid().  If present the
	contants HAVE_FORK and HAVE_WAITPID will be defined in
	H5config.h.

./test/dtypes.c
	Minor tweaks for systems that don't have fork() or waitpid().

./MANIFEST
./tools			[NEW]
./tools/Makefile.in	[NEW]
./tools/h5debug.c	[NEW]
./tools/h5import.c	[NEW]
./tools/h5ls.c		[NEW]
./tools/h5repart.c	[NEW]
	Added a tools directory and moved tools from the src directory
	to here.
1998-07-13 10:35:21 -05:00
Quincey Koziol
0bf1da98b6 [svn-r347] Added '*.core' to distclean target and set new location for cpp on FreeBSD
machines.
1998-04-14 11:50:05 -05:00
Robb Matzke
2fd149a582 [svn-r325] Changes since 19980317
----------------------

./MANIFEST
./configure.in
./configure
./Makefile.in
./bin/distdep		[NEW]
./config/conclude.in
./config/depend.in
./src/.distdep		[NEW]
./test/.distdep		[NEW]
	Added some code so non-GNU systems have a list of dependencies
	between the .c files and the .h files.  Hopefully this works
	and y'all don't have to keep saying `make clean' each time you
	change a header.

	On systems with GNU make, GCC, and Perl, the dependency
	information is generated automatically from rules in
	config/depend.in as has always been done.  But now extra files
	called `.distdep' (for `distributable dependencies) are left
	in each directory and these are part of CVS and thus
	releases.  (A `make dep' will create dependencies on demand
	without doing anything else.)

	On systems lacking one or more of the tools above, the various
	`.distdep' files are inserted into the end of the Makefiles.
	If you do developement on one of these systems you'll have to
	update the `.distdep' and/or Makefile by hand, or wait until
	you have access to a GNU system and do a `make dep'.
1998-03-18 13:09:16 -05:00
Robb Matzke
ea3daf23d0 [svn-r266] Fixed some install and uninstall probs. 1998-02-12 14:28:25 -05:00
Robb Matzke
e39abc5bb8 [svn-r264] Some versions of install allow only one file name at a time. 1998-02-12 13:44:45 -05:00
Robb Matzke
137bc83f7a [svn-r213] Changes since 19980130
----------------------

./MANIFEST
	Added H5Fmpio.c.  One way to check that you've properly
	included new files is to run `./bin/release none', then unpack
	the resulting tar file somewhere and try to compile it.  The
	tar file will be ./releases/hdf-5.0.0a.tar.

./config/freebsd2.2.1
./config/linux
	Added `-ansi'

./acconfig.h
	Added definitions for PHDF5 and HAVE_PARALLEL.

./configure.in
	Added minimal support for parallel build.  Kim and Albert will
	have to flesh this out or I can do it if they're more specific
	about what they need.

./config/commence.in
	Added default value for $(RUNTEST)

./config/conclude.in
	`make test' uses value of $(RUNTEST) to run test cases.

./src/Makefile.in
	Added PARALLEL_SRC for conditional compilation of H5Fmpio.c

./src/H5D.c
./src/H5Dpublic.h
	Added H5Dget_type() for Elena


NOTE: These changes require that configure be rerun.  If you're using
      GNU make it will happen automatically, otherwise do it by
      hand.
1998-02-03 12:03:13 -05:00
Robb Matzke
6e6366aec2 [svn-r205] Changes since 19980130
----------------------

./INSTALL
./Makefile.dist
./Makefile.in
./config/conclude.in
	Some stupid make's don't know what PHONY means.  I added
	changed config to _config in the default makefile and added
	_test to the other makefiles.

./src/H5Psim.c
	A `file_offset' argument got changed to `int' accidently that
	causes tests to fail on 64-bit machines.  I changed it back to
	size_t.

./src/H5T.c
	Changed a couple printf formats.
1998-01-30 15:17:25 -05:00
Robb Matzke
3e601905e3 [svn-r186] Changes since 19980128
----------------------

./config/conclude.in
	The maintainer-clean target removes Emacs backup files,
	mirroring backup and contrib files, core files, and profile
	output files in addition to what it used to remove.

./src/H5D.c
	Fixed a buffer allocation bug in the output pipeline.

./src/H5Gnode.c
	Fixed a comparison against size_t

./test/Makefile.in
	Added the other temporary h5 files to the `MOSTLYCLEAN' var.

./test/cmpd_dset.c
	Added four tests for partial I/O. Don't you just love it when
	something works on the first try!
1998-01-28 13:52:53 -05:00
Robb Matzke
3aee91269b [svn-r138] ./config/conclude.in
Added ability to clean other files.  The extra files to remove
	should be listed in a make variable with the same name as the
	target.  For instance, $(MOSTLYCLEAN) is a list of files in
	addition to the normal files that should be removed when the
	user types `make mostlyclean'.
1997-12-10 17:38:41 -05:00
Robb Matzke
833e82fec5 [svn-r134] Changes since 19971023
----------------------

./config/conclude.in
        Test work when `.' isn't in $PATH.

./src/H5F.c
./src/H5Fcore.c         NEW
./src/H5Flow.c
./src/H5Fprivate.h
./src/H5Fsec2.c
./src/H5Fstdio.c
./src/Makefile.in
./MANIFEST
        Added the in-core temporary file driver as an exercise to
        clean up some of the H5F package.  It speeds up `testhdf5 -o
        stab' by 25 percent!  If you want to try it you'll need to
        recompile everything with `-DH5F_LOW_DFLT=H5F_LOW_CORE'.
        Don't expect testhdf5 to ever work since creating a file,
        closing it, and then opening it for read-only will fail.
1997-10-24 16:03:10 -05:00