Commit Graph

153 Commits

Author SHA1 Message Date
Robb Matzke
cc89b8a605 [svn-r1572] Changes since 19990810
----------------------

./MANIFEST
./src/H5FDmulti.c		[NEW]
./src/H5FDmulti.h		[NEW]
./src/Makefile.in
./src/hdf5.h
	The split driver was reimplemented as a more general "multi"
	driver which is capable of splitting data into multiple files
	like the family driver except the partioning is done by memory
	usage type instead of address. The H5Pset_fapl_split()
	function just calls H5Pset_fapl_multi() with arguments which
	prepare to split the address space into two files: meta and
	raw data.

	This is the first version. I plan to allow the open() call to
	relax a bit which would allow one to open an hdf5 file when
	only the meta-data file is present. This would allow a very
	large file to be split and stored on tape and the relatively
	small meta file to be mirrored on disk to allow limited
	browsing of the file (any request for raw data would fail).

./src/H5private.h
./src/H5F.c
./src/H5FD.c
./src/H5FDprivate.h
./src/H5FDpublic.h
./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDmpio.c
./src/H5FDsec2.c
	Added the ability for a file driver to store information in
	the superblock which would be needed if the file were opened
	again later for reading.  The format is driver-defined which
	allows users to extend it however they like.

./doc/html/H5.format.html
	Added information about the new driver information block of
	the superblock. This is where file drivers store information
	they need in order to reopen the file later.


./src/H5F.c
./src/H5Fprivate.h
./src/H5FD.c
./src/H5FDprivate.h
./src/H5FDpublic.h
./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDmpio.c
./src/H5FDsec2.c
./src/H5Fistore.c
./src/H5R.c
	The file access properties and the file access property list
	were decoupled, which allows the property list to more cleanly
	contain properties for various levels of the file and which
	allows the property list to be modified more cleanly when
	opening files.

./src/H5.c
./src/H5FDpublic.h
	Removed H5FD_MEM_META and H5FD_MEM_GROUP since they're never
	used.

./src/H5D.c
	Changed the way we detect the MPIO driver in all these special
	cases.

./src/H5F.c
./src/H5Rpublic.h
./test/tfile.c
	The default file sizeof(offset) was changed to be a function
	of haddr_t instead of hsize_t.

	THE H5RPUBLIC.H DEFINITIONS WILL HAVE PROBLEMS IF THE USER
	CREATES A FILE WITH NON-DEFAULT OFFSET AND SIZE SIZES!

./src/H5F.c
	Fixed an uninitialized memory access bug in file closing
	related to the VFL.

./src/H5T.c
./src/H5Tpublic.h
	Added an H5T_NATIVE_HADDR predefined datatype which
	corresponds to the `haddr_t' type.

./test/Makefile.in
	Reformatted long lines.

./test/big.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
	Removed the H5F_ACC_DEBUG flag from file creation/open calls.

./test/big.c
	Plugged a memory leak.

./test/h5test.c
	Added support for the `multi' driver.

	Removed #warning about not having the stdio driver. Plans are
	to not implement it since the sec2 driver serves the same
	purpose and testing didn't show any difference in execution
	times between the two.
1999-08-17 14:12:59 -05:00
Robb Matzke
cbf68fc824 [svn-r1568] Changes since 19990730
----------------------

This extensive change is the virtual file layer implementation. I've
ported and tested the sec2, family, and core drivers and only ported
the mpio driver (Albert will test it).  So if you need MPIO I would
recommend sticking with the previous version for a while.

You will get a few compile warnings about split and stdio drivers not
being implemented and possibly tracing information not inserted in
some of the drivers. You can safely ignore them but I plan to fix
them.

I'm still working on the split driver because I just realized that it
needs a part of the VFL that isn't written yet.

Documentation is being updated also because there were some minor
changes (mostly just name changes). It should be available on my web
site later this week.

./MANIFEST
./src/Makefile.in
./src/hdf5.h
./src/H5Flow.c			[REMOVED]
./src/H5Fstdio.c		[REMOVED]
./src/H5Fsec2.c			[REMOVED]
./src/H5Fsplit.c		[REMOVED]
./src/H5Fmpio.c			[REMOVED]
./src/H5Ffamily.c		[REMOVED]
./src/H5Fcore.c			[REMOVED]
./src/H5MFpublic.h		[REMOVED]
./src/H5FD.c			[NEW]
./src/H5FDcore.c		[NEW]
./src/H5FDcore.h		[NEW]
./src/H5FDfamily.c		[NEW]
./src/H5FDfamily.h		[NEW]
./src/H5FDmpio.c		[NEW]
./src/H5FDmpio.h		[NEW]
./src/H5FDprivate.h		[NEW]
./src/H5FDpublic.h		[NEW]
./src/H5FDsec2.c		[NEW]
./src/H5FDsec2.h		[NEW]
	Removed/added files for virtual file layer.

./bin/trace
./src/H5.c
	Removed unused public datatypes and added new VFL public
	datatypes.

	Changed an error message.

./config/BlankForm
./config/dec-flags
./config/gnu-flags
./config/hpux10.20
./config/hpux9.03
./config/irix5.x
./config/irix6.x
./config/solaris2.x
./config/unicosmk
	Removed the H5F_OPT_SEEK and H5F_LOW_DFLT constants from the
	configuration since they're no longer applicable. The default
	file driver is always the sec2 driver and it always optimizes
	calls to lseek() or lseek64().

./config/depend.in
	C preprocessor errors generated during automatic dependency
	building are sent to /dev/null to prevent them from appearing
	twice in the make output.

./src/H5AC.c
./src/H5B.c
./src/H5D.c
./src/H5F.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5Oattr.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Oshared.c
./src/H5T.c
./src/H5detect.c
./test/ohdr.c
	Changed H5F_ADDR_UNDEF to HADDR_UNDEF to be more consistent
	with the `haddr_t' datatype which is now a public type.

./src/H5D.c
./src/H5P.c
./src/H5Ppublic.h
./src/H5Tconv.c
./test/cmpd_dset.c
./test/dsets.c
./test/overhead.c
./test/tselect.c
./test/tvltypes.c
	The H5P_DATASET_XFER constant was changed to H5P_DATA_XFER
	because the properties apply to all types of I/O operations,
	not just datasets.

./src/H5B.c
./src/H5Bprivate.h
./src/H5D.c
./src/H5Dpublic.h
./src/H5F.c
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fprivate.h
./src/H5Fpublic.h
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5R.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Spoint.c
./src/H5Sprivate.h
./test/big.c
./test/h5test.c
./test/istore.c
./testpar/t_dset.c
./testpar/t_file.c
./tools/h5debug.c
./tools/h5ls.c
	Modified to work with the virtual file layer by calling H5FD_*
	functions instead of H5F_low_* functions and by passing file
	access and data transfer properties by object ID instead of
	pointer.

	Changed H5D_transfer_t to H5FD_mpio_xfer_t since the
	COLLECTIVE vs. INDEPENDENT transfer mode is specific to the
	MPIO file driver.

	Moved MPIO-specific stuff into the MPIO driver.

./src/H5B.c
./src/H5D.c
./src/H5Fprivate.h
	The H5F_mpio_* private functions were renamed and placed in
	the H5FDmpio driver except those which appeared in H5Smpio.c.

./src/H5E.c
./src/H5Epublic.h
	Added major error number H5E_VFL for virtual file layer
	related errors.

./src/H5F.c
./src/H5Fprivate.h
	Changed the logic that controls whether the boot block is
	written. Instead of assuming that the first call to write the
	boot block is only to allocate space, I've added a function
	argument which makes this explicit.

	Changed the way files are compared so that a driver-defined
	comparison function can be called.  Files which belong to
	different drivers are always considered different.

	Removed H5F_driver_t since file drivers are now identified by
	object ID instead of a special non-user-extendible datatype.

	Removed all the hard-coded low-level file properties which
	have been replaced by the various file drivers.

./src/H5I.c
./src/H5Iprivate.h
	Added the H5I_inc_ref() which was removed a few months ago
	since we finally have a use for it.

./src/H5Ipublic.h
	Added the H5I_VFL object ID type to identify file drivers in
	the virtual file layer.

./src/H5MF.c
./src/H5MFprivate.h
	Moved all the allocation/deallocation code into the virtual
	file layer which allows file drivers to override much of it.

./src/H5P.c
./src/H5Ppublic.h
	Moved file driver-specific code into the various file driver
	files.

	The H5Pcopy() and H5Pclose() functions make calls into the
	virtual file driver to manage the memory for driver-specific
	file access and data transfer properties.

./src/H5private.h
./src/H5public.h
	The `haddr_t' type is now public.

./test/tfile.c
	Added a few more comments.
1999-08-10 15:21:32 -05:00
Albert Cheng
5d17b44b11 [svn-r1559] Updated for the newly added INSTALL_Windows.txt file. 1999-08-02 15:10:44 -05:00
Albert Cheng
182cd1a27c [svn-r1448] Added two IBM specific configuration files which are provided by
Richard Hedges of LLNL.
1999-07-08 14:39:19 -05:00
Albert Cheng
8e6ec6ee1e [svn-r1446] Makefile.ibmsp is no longer needed. Configure generates the right
Makefile for it.
1999-07-07 23:02:21 -05:00
Quincey Koziol
c745f91da7 [svn-r1444] Added missing files to manifest 1999-07-07 17:39:58 -05:00
Patrick Lu
75d0ccdb1b [svn-r1422]
added entries to the new files I added to the testfile dir(tenum.h5 tenum.ddl tobjref.h5
tobjref.ddl tdatareg.ddl tdatareg.h5)
1999-07-06 09:31:20 -05:00
Albert Cheng
6a6f846c01 [svn-r1399] Updated for the removal of the two old Makefile's in testpar. 1999-06-30 22:35:46 -05:00
Albert Cheng
a7488d696f [svn-r1396] Updated with new location of h5dumptst.c. 1999-06-30 13:12:48 -05:00
Elena Pourmal
fd376ba048 [svn-r1381]
h5_mount.c and h5_reference.c were added.
1999-06-25 13:11:57 -05:00
Albert Cheng
855d10e8ee [svn-r1338] Removed the tools/testfiles/*.dmp which are no longer used. 1999-06-13 20:55:17 -05:00
Albert Cheng
0ccd32fd68 [svn-r1337] Updated it with new files created for the h5toh4 tests. 1999-06-13 19:47:43 -05:00
Quincey Koziol
725578538a [svn-r1331] Added VL datatype test file 1999-06-11 17:03:53 -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
Quincey Koziol
df96f4362a [svn-r1304] Added new H5Tvlen.c file to manifest. I don't recall changing the configure
script though... :-?
1999-06-04 17:23:42 -05:00
Quincey Koziol
81b282b663 [svn-r1250] Added DatatypesEnum.html and EnumMap.gif 1999-05-06 18:04:52 -05:00
Robb Matzke
da9c719938 [svn-r1230] Forgot to add pablo/READ_ME to the MANIFEST file last time 1999-04-28 12:15:26 -05:00
Robb Matzke
2f23391566 [svn-r1228] Added missing pablo files to MANIFEST. Snapshots should start working again... 1999-04-28 10:53:42 -05:00
Robb Matzke
d534a4dd0d [svn-r1204] Changes since 19990415
----------------------

./config/depend.in
	Fixed automatic dependencies. We were storing dependencies for
	*.o files instead of *.lo files after shared libraries were
	added.

./config/gnu-flags
./config/linux-gnulibc1
	Moved `-march=pentiumpro -mcpu=pentiumpro -malign-double' from
	the linux file to this file and caused it to depend on the CPU
	name.  This fixes one of Elena's bugs.

./src/H5B.c
./src/H5Bprivate.h
./src/H5D.c
./src/H5Dprivate.h
./src/H5Dpublic.h
./src/H5F.c
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fmpio.c
./src/H5Fprivate.h
./src/H5Fpublic.h
./src/H5Gnode.c
./src/H5P.c
./src/H5RA.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Spoint.c
./src/H5Sprivate.h
./src/H5Tpublic.h
./test/istore.c
	Added an H5Dget_storage_size() function that reports the
	amount of storage allocated for raw data in a dataset.

	Changed H5D_xfer_* to H5F_xfer_* because these properties are
	more general than datasets. This also allows some of the
	lower-level I/O functions to get this information easier.

./src/H5S.c
./src/H5Sall.c
	Added two new functions H5S_all_read() and H5S_all_write()
	which are optimizations that copy data directly between file
	and memory without having to go through the scatter gather
	step.  This knocks quite a bit of time off the I/O and
	reading/writing entire datasets is a fairly common operation.

./tools/h5ls.c
	Reports the logical size of data, the allocated size of data,
	and the percent utilization.

./MANIFEST
	Removed old pablo files, added new files. Snapshots should now
	start to work again.

./src/H5D.c
./src/H5Fmpio.c
	Removed two warnings signed vs. unsigned comparisons and check
	for overflow.
1999-04-23 07:31:21 -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
96320e69c0 [svn-r1117] Changes since 19990303
----------------------

./configure.in
./configure		[REGENERATED]
	The path for a command is calculated explicitly the hard way
	because `type -path' isn't portable.

./config/freebsd
./config/linux-gnu
./config/linux-gnulibc2
	Changed the way files reference each other.

./config/gnu-flags	[NEW]
./config/dec-flags	[NEW]
	These files figure out what flags to pass to certain compilers
	so we can reuse code in more than one config/* file.  They
	also have better warning messages when old compilers are used.

./config/linux-gnulibc1
./config/dec-osf4.x
	These files use the new *-flags files.


./src/H5D.c
./src/H5Onull.c
./src/H5Tconv.c
./tools/h5ls.c
	Fixed a compiler warning.

./src/H5detect.c
	Added a better comment to the top of the generated file.
1999-03-04 15:22:42 -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
7962652c94 [svn-r1097] Added ./config/unicosmk 1999-02-23 10:42:30 -05:00
Albert Cheng
a3a9df3657 [svn-r1071] Moved the MPI test to a file of its own (t_mpi.c) for future addition
of other MPI tests.
Changed return code tests from comparing with FAIL to with 0.
Updated MANIFEST for the addition of a new file.
Tested in O2k.
1999-02-16 23:39:22 -05:00
Robb Matzke
c22bac0d20 [svn-r1065] Changes since 19990121
----------------------

./configure.in
./acconfig.h
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./src/H5public.h
./src/H5Omtime.c
	Check for <stddef.h>

	Checks for `__tm_gmtoff' in `struct tm' because old versions
	of GNU libc are different than recent versions. This fixes the
	failing mtime test.

./bin/config.guess
./config/freebsd2.2.7	[REMOVED]
./config/freebsd	[ADDED]
	Changed the name so it works with all versions of FreeBSD.

./src/H5.c
	Moved H5F after H5T and H5G in H5_term_library() to satisfy
	dependencies.

./src/H5G.c
	Fixed a bug that caused H5Gcreate() to fail if the group name
	had trailing slashes.

./src/H5Gpublic.h
	Changed `group_name' to `name' in a prototype.

./src/Makefile.in
	Dynamic library on Linux, but needs for work to be generally
	useful.

./src/H5HG.c
./src/H5HGprivate.h
	Fixed alignment problems when using old GCC compilers (like
	the one shipped with RedHad Linux).

./tools/h5ls.c
	Fixed a bug where the contents of the root group could be
	listed twice if there was a link back to the root
	group. Similarly for groups that are mentioned on the command
	line.

	Fixed a bug where unknown types were printed with a random
	type class number.

./src/H5T.c
./src/H5Tconv.c
./src/H5Tprivate.h
	Fixed O(log N) conversion bugs.
1999-02-15 12:38:04 -05:00
Robb Matzke
2c61f6df37 [svn-r1054] Added H5api_adpt.h tstr*.dmp and tstr2.h5 1999-02-02 14:37:20 -05:00
Ruey-Hsia Li
3dae05f72d [svn-r1042] added ./tools/testfiles/tstr-1.ddl and ./tools/testfiles/tstr.h5. 1999-02-01 03:59:55 -05:00
Albert Cheng
ee2b36ad7b [svn-r1037] All IRIX (old 32bit OS) version 6.x can use the same configuration.
Replaced irix6.2 by irix6.x.
1999-01-28 19:16:36 -05:00
Robb Matzke
2578cee601 [svn-r1008] Changes since 19981217
----------------------

./MANIFEST
        Removed some ddl files from tools/testfiles that are no longer
        part of CVS.  Added new enum.c test.

./configure             [REGENERATED]
./configure.in
        Changed printf long long format detection to favor `L' over
        `ll'.
1999-01-07 06:37:16 -05:00
Quincey Koziol
0825a0bcd5 [svn-r1007] Updated with missing files. 1999-01-06 16:58:34 -05:00
Ruey-Hsia Li
4952ed4a36 [svn-r984] Added ./tools/testfiles/tloop-1.ddl.
Removed ./tools/testfiles/tattr-4.ddl
        ./tools/testfiles/tcomp-4.ddl
        ./tools/testfiles/tdset-3.ddl
        ./tools/testfiles/tdset-4.ddl
        ./tools/testfiles/tgroup-3.ddl.
1998-12-21 17:49:13 -05:00
Robb Matzke
28e684b0af [svn-r968] Changes since 19981207
----------------------

./MANIFEST
	Added tcompound2.{dmp,h5} and tdset2.{dmp,h5} used by the
	h5toh4 testing.

./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	Added check for <sys/timeb.h> for Win32.

	Determines sizeof(char) just so we have a complete list of
	type sizes defined as preprocessor symbols.

./src/H5detect.c
./src/H5T.c
./src/H5Tpkg.h
	Detects alignment constraints. In order for this to work the
	operating system must not correct unaligned data (for
	instance, on the DEC Alpha one might need to say `uac p
	sigbus' before running H5detect).

./src/H5private.h
	Includes <signal.h> because it's needed by H5detect.c to
	detect alignment constraints.

./src/H5Tconv.c
	Added extra checks to all hardware conversion functions so
	they align data when necessary before the conversion.  This
	slows down the conversions somewhat but they're still much
	faster than the software conversions.

./test/dtypes.c
	By setting a constant at the top of the source you can test
	conversions where the data is aligned on various byte
	boundaries.

	By setting a constant at the top of the source you can
	simulate architectures that have alignment constraints on
	architectures that don't.

	Changed typo SIZEOF_LDOUBLE to SIZEOF_LONG_DOUBLE in a few
	places.
1998-12-14 11:19:21 -05:00
Robb Matzke
1b31b150a3 [svn-r950] Changed the name of tohdr.c to ohdr.c 1998-11-25 10:54:11 -05:00
Robb Matzke
4354606d1e [svn-r949] Changes since 19981124
----------------------

./src/H5T.c
	Fixed a typo in the registration of the `unsigned char' to
	`unsigned long long' type conversion that caused it to not be
	registered, falling back to software whenever that conversion
	path was taken.

./MANIFEST
./test/Makefile.in
./test/testhdf5.c
./test/testhdf5.h
./test/theap.c		[REMOVED]
./test/lheap.c		[NEW]
./test/tohdr.c		[REMOVED]
./test/ohdr.c		[NEW]
./test/tstab.c		[REMOVED]
./test/stab.c		[NEW]
	Removed the `t' from the front of these names and made each
	test a stand-alone program following the format of most of the
	other tests.

./test/big.c
	Uses libh5test.a but always sets the low-level driver to 1GB
	file family.

	The `#if' near the top to set the data space to 8GB has been
	simplified now that `long_long' is always defined and the
	error message is improved when `long_long' isn't wide enough.

	Cleanup code was added to the error handling.

./test/gheap.c
./test/istore.c
	Uses libh5test.a.  Added error cleanup code.

./test/dtypes.c
./test/h5test.c
	Added 68 new tests that check hardware and software
	conversions between `long long' and `unsigned long long' and
	the other integer types.  The tests only run on machines where
	sizeof(long_long)!=sizeof(long).  We test a total of 180
	different integer conversions, half in hardware and half in
	software.

	Cut down the number of times each test is run from 5 to 1 so
	it doesn't take so long.  If you want to run more times
	there's a constant that can be changed at the top of the file.

./test/extend.c
	Removed unused variable.

./test/h5test.c
./test/h5test.h
./test/external.c
./test/fillval.c
	The h5_cleanup() returns true/false so it can be used in an `if'
	statement to clean up additional files.

./doc/html/Environment.html
	Indented.  Added HDF5_PREFIX and HDF5_DRIVER descriptions.

./src/H5P.c
	Changed the trace type for the second argument from `Iu' to
	`x' since it's an output parameter.

./INSTALL
	Added a warning that the GNU zlib that comes with the latest
	version of HDF4 is too old to use with HDF5 and must be
	renamed so configure doesn't see it when `--enable-hdf4' is
	used.
1998-11-25 09:58:22 -05:00
Robb Matzke
0dfd13d13b [svn-r946] Changes since 19981121
----------------------

./src/H5Tconv.c
	With my poor eyesight I missed the definitions of SCHAR_MIN
	and SCHAR_MAX in <limits.h> and used CHAR_MIN and CHAR_MAX
	incorrectly. I changed all occurrences of the latter to the
	former and the new hardware integer type conversions now work
	on Irix.

./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./src/H5private.h
./src/H5.c
./test/h5test.c
	Added a wrapper for HDsnprintf() that just calls sprintf() if
	snprintf() isn't available.

./MANIFEST
	Added Paul's new h5toh4 files.
1998-11-24 10:53:55 -05:00
Robb Matzke
dedc8c37b4 [svn-r944] Changes since 19981120
----------------------

./MANIFEST
./test/Makefile.in
./test/shtype.c		[REMOVED]
	Removed shtype.c because it was all commented out.  Besides,
	these tests are done in dtypes.c now anyway.

./test/external.c
./test/fillval.c
./test/flush1.c
./test/flush2.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/unlink.c
	The tests that check the HDF5 API use the h5test support
	functions. For one thing, that means that you can specify the
	file driver that thay use by the HDF5_DRIVER environment
	variable. Possible values are:

	    HDF5_DRIVER='sec2'		Use read() and write()
	    HDF5_DRIVER='stdio'		Use fread() and fwrite()
	    HDF5_DRIVER='core'		Use malloc() and free()
	    HDF5_DRIVER='split'		Split meta and raw data
	    HDF5_DRIVER='family N'	Use file families with each
					member being N megabytes (N
					can be fractional, defaults to
					one).

	Some tests might fail for certain drivers: for instance, the
	mount and link tests fail for the `core' driver because
	they must be able to close and then reopen a file.
1998-11-23 15:40:35 -05:00
Robb Matzke
7488c6366e [svn-r936] Changes since 19981119
----------------------

./src/H5.c
./src/H5A.c
./src/H5AC.c
./src/H5B.c
./src/H5D.c
./src/H5E.c
./src/H5F.c
./src/H5Farray.c
./src/H5Fcore.c
./src/H5Ffamily.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fmpio.c
./src/H5Fsec2.c
./src/H5Fsplit.c
./src/H5Fstdio.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5Gstab.c
./src/H5HG.c
./src/H5HL.c
./src/H5I.c
./src/H5Iprivate.h
./src/H5MF.c
./src/H5MM.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/H5P.c
./src/H5R.c
./src/H5RA.c
./src/H5S.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Snone.c
./src/H5Spoint.c
./src/H5Sselect.c
./src/H5T.c
./src/H5TB.c
./src/H5Tbit.c
./src/H5Tconv.c
./src/H5V.c
./src/H5Z.c
./src/H5detect.c
./src/H5private.h
	Most of these changes are because the `interface_initialize_g'
	variable change from hbool_t to int.  It's a one line change.

	Changed the way the library is closed so we have more control
	over the order the interfaces are shut down.  Instead of
	registering an atexit() function for every interface in some
	haphazard order we just register one: H5_term_library() which
	then calls the H5*_term_interface() functions in a
	well-defined order.

	If the library is closed and then reopened repeatedly by
	calling H5close() and H5open() in a loop we only add one copy
	of the library termination functions with atexit().

	Termination is a two-step process in order to help detect
	programming errors that would cause an infinite loop caused by
	the termination of one interface waking up some other
	previously terminated interface.  The first step terminates
	the interface and *marks it as unusable*.  After all
	interfaces are terminated then we mark them all as usable
	again.  The FUNC_ENTER() macro has been modified to return
	failure or to dump core (depending on whether NDEBUG is
	defined) if we try to call an interface while it's shutting
	down.

./src/H5.c
	The H5dont_atexit() function returns failure if it's called
	more than once or if it's called too late.  However, the error
	stack is not automatically printed on failure because the
	library might not be initialized yet

./test/chunk.c
./test/flush1.c
./test/flush2.c
./test/iopipe.c
./test/overhead.c
./test/ragged.c
	Changed the extra cast for Win32 so we do floating point
	division again -- it was just confusion about precedence and
	associativity of casting and the C coercion rules. Removed
	extra carriage returns inserted by broken operating system.

./src/H5Ffamily.c
	Fixed an bug where H5F_fam_write() lowered the EOF marker for
	one of the family members causing H5F_fam_read() to read
	zeros.

./test/h5test.h		[NEW]
./test/h5test.c		[NEW]
./test/Makefile.in
./test/bittests.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
	Support library for test files.  This isn't done yet but
	Katie's contractions are ~10 minutes apart so I figured I
	better back this stuff up just in case I'm not here next
	week...

	Eventually all test files will understand HDF5_DRIVER to name
	the low level file driver and parameters so we can easily test
	various drivers.  They will also understand HDF5_PREFIX to
	prepend to the beginning of file names which is necessary for
	testing ROMIO with various drivers. Also, the cleanup function
	will know how to use the file name prefix and will understand
	different file driver naming schemes like file families. I'm
	not sure they'll understand the `gsf:' type prefixes yet.

	Note, the external test is completely commented out because
	I'm in the middle of modifying it.  It will still compile and
	run but it doesn't test anything at the moment.
1998-11-20 22:36:51 -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
Quincey Koziol
0a4f756744 [svn-r902] Added H5Snone.c 1998-11-12 19:26:28 -05:00
Robb Matzke
254ae8d43d [svn-r859] Changes since 19981030
----------------------

./MANIFEST
	Added new Pablo files HDF5record_RT.h and ProcIDs.h

./acconfig.h
./configure		[REGENERATED]
./configure.in
./src/H5.c
./src/H5Vprivate.h
./src/H5config.h.in	[REGENERATED]
./src/H5private.h
./src/H5public.h
./test/big.c
	Added more configuration stuff for the Win32 environment. Removed all
	the #ifdef WIN32 from the source and replaced them with OS-independent
	stuff.  Specifics follow:

	Check for non-Posix.1 `st_blocks' field in `struct stat' which is used
	by the big file test to decide if the file system supports holes.  If
	the st_blocks field isn't present then we just skip the test.

	Configure checks for <io.h> <sys/resource.h> <sys/time.h> and
	<winsock.h> and defines HAVE_IO_H, HAVE_SYS_RESOURCE_H,
	HAVE_SYS_TIME_H and HAVE_WINSOCK_H when they're found.

	Configure checks whether both <sys/time.h> and <time.h> can be
	included and defines SYS_TIME_WITH_TIME if so.  Otherwise include only
	<sys/time.h> or <time.h> even if both exist.

	Configure checks sizeof(__int64) and defines SIZEOF___INT64 to the
	result or to zero if __int64 isn't defined.  The source uses `long
	long' in preference to `__int64'.

	Removed null WIN32 definition for `inline' since such a definition
	already exists in H5config.h

	Protected gettimeofday() calls in debugging code with
	HAVE_GETTIMEOFDAY instead of WIN32.

./src/H5F.c
./src/H5Flow.c
./src/H5Fmpio.c
./src/H5Fsec2.c
./src/H5Fstdio.h
./src/H5P.c
./src/H5Tconv.c
./src/H5private.h
	Removed #include of system files from library source files and
	consolodated them into H5private.h where they're protected by various
	configuration macros (most of them were duplicated there already
	anyway).

./test/big.c
./test/chunk.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
./test/fillval.c
./test/flush1.c
./test/flush2.c
./test/iopipe.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/overhead.c
./test/ragged.c
./test/shtype.c
./test/unlink.c
	Protected system #include's with #ifdef's from H5config.h.

	Undefined NDEBUG since some of the tests rely on assert() to check
	return values.

	Removed WIN32 definitions for __unused__ since this can be controlled
	by the definition of HAVE_ATTRIBUTE in H5config.h

./test/testhdf5.h
	Removed the CLEAN_CMD definition because we no longer use it.
	Albert's cleanup() functions replaced it.

./test/fillval.c
	Initialized auto hid_t variables to fix warnings in error recovery
	code when data flow analysis is turned on in compilers.

./test/h5tools.c
	Initialized an auto variable to fix a compiler warning.

./test/chunk.c
./test/ragged.c
	The WIN32 had some unsigned variables changed to signed because the
	compiler generates warnings when coercing unsigned to double(?).  I
	changed them back to unsigned because they really are unsigned
	quantities. If this the change was just to shut up extraneous warnings
	then perhaps a compiler flag can do the same; otherwise if the
	compiler generates bad code then we should supply a patch file instead
	messing up source code with bug work-arounds.

./src/H5detect.c
	Protected system #include's with #ifdef's from H5config.h thereby
	removing a WIN32.

	If getpwuid() doesn't exist (HAVE_GETPWUID) then we assume that
	`struct passwd' doesn't exist either (we don't really need it in that
	case).

	The H5T_NATIVE_LLONG and H5T_NATIVE_ULLONG are defined in terms of
	`long long' or else `__int64' or else `long' depending on what's
	available.

./src/H5Flow.c
./src/H5Ofill.c
	Added __unused__ to some function arguments that aren't used when
	assertions are turned off.

./src/H5V.c
	Changed an auto variable name in some hand-inlined code to get rid of
	a warning about the variable shadowing a previous auto.
1998-11-02 12:58:28 -05:00
Frank Baker
340c89a358 [svn-r836] Added files:
hdf5/doc/html/RM_H5I.html
	hdf5/doc/html/RM_H5R.html
	hdf5/doc/html/References.html

Labelled all files in hdf5/doc/src/ as "do not distribute."

Added hdf5/doc/html/DDL.html, but labelled as "do not distribute."
1998-10-29 20:26:52 -05:00
Ruey-Hsia Li
049e666104 [svn-r826] Added files ./tools/testfiles/*. 1998-10-29 01:39:43 -05:00
Robb Matzke
5013e0d2b5 [svn-r807] Added pablo file names 1998-10-27 12:29:12 -05:00
Robb Matzke
f7545efc76 [svn-r795] Changes since 19981026
----------------------

./MANIFEST
./test/th5s.h5			[NEW]
./test/th5s.c
	Added a test to make sure that creating a data space with too
	large a rank fails.

	Added a test to make sure that reading a file that has a
	dataset with a space with too large a rank fails.  Actually,
	this one is a little weird: the code that reads the data space
	message assumes the space is scalar if the message cannot be
	read. Fortunately the layout message fails also, preventing
	the dataset from being opened.  However, since the data type
	message is still visible h5ls will report that the object is a
	named data type.

./test/space_overflow.c		[NEW]
	This is the little program that makes the th5s.h5 file.

./src/H5A.c
./src/H5R.c
./src/H5Sselect.c
	Updated trace info.

./src/H5Olayout.c
./src/H5Osdspace.c
	Added code to fail if the dimensionality is too large when
	decoding a layout or simple data space message.

./src/H5Oprivate.h
	Redefined H5O_LAYOUT_NDIMS in terms of H5S_MAX_RANK.

./src/H5P.c
./src/H5S.c
	Check for ndims>H5S_MAX_RANK in API function calls, added
	assert to internal functions.

./src/H5V.c
	Changed a `<' to an `<=' in an assert.

./test/flush2.c
	Includes stdlib.h for getenv().

./tools/h5tools.c
	Able to handle up to H5S_MAX_RANK dimensions during output.
1998-10-26 14:55:54 -05:00
Robb Matzke
db9525c2a3 [svn-r789] Changes since 19981023
----------------------

./MANIFEST
./test/Makefile.in
./test/flush1.c			[NEW]
./test/flush2.c			[NEW]
	Test to see if calling H5Fflush() results in a consistent
	file.

./src/H5.c
./src/H5A.c
./src/H5D.c
./src/H5Fistore.c
./src/H5I.c
./src/H5S.c
./src/H5Shyper.c
./src/H5Sselect.c
./src/H5TB.c
	Changed comparisons against SUCCEED and FAIL to >=0 and <0 in
	about 15 places.

./src/H5.c
./src/H5V.c
./src/H5detect.c
./src/H5private.h
./src/H5public.h
./test/big.c
./test/chunk.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/external.c
./test/fillval.c
./test/iopipe.c
./test/links.c
./test/mount.c
./test/mtime.c
./test/ragged.c
./test/shtype.c
./test/unlink.c
	Removed ^M from the end of lines inserted on broken OS's ;-)

./src/H5private.h
	Changed c++ comments to c comments.

./src/H5R.c
	Added tracing macros.
1998-10-26 09:49:52 -05:00
Robb Matzke
e1d1bf607f [svn-r779] Changes since 19981022
----------------------

./MANIFEST
./doc/html/study.html		[DELETED]
./doc/html/study_1000x1000.gif	[DELETED]
./doc/html/study_250x250.gif	[DELETED]
./doc/html/study_499x499.gif	[DELETED]
./doc/html/study_5000x1000.gif	[DELETED]
./doc/html/study_500x500.gif	[DELETED]
./doc/html/study_p1.gif		[DELETED]
./doc/html/study_p1.obj		[DELETED]
	Removed these old files -- the data was from before the chunk
	cache was implemented and therefore the whole file was pretty
	much garbage.

./MANIFEST
./doc/html/Chunking.html	[NEW]
./doc/html/Chunk_f1.gif		[NEW]
./doc/html/Chunk_f1.obj		[NEW]
./doc/html/Chunk_f2.gif		[NEW]
./doc/html/Chunk_f2.obj		[NEW]
./doc/html/Chunk_f3.gif		[NEW]
./doc/html/Chunk_f4.gif		[NEW]
./doc/html/Chunk_f5.gif		[NEW]
./doc/html/Chunk_f6.gif		[NEW]
./doc/html/Chunk_f6.obj		[NEW]
	New documentation for chunking.  It's not quite complete but
	it gives a pretty good idea of some of the issues affecting
	performance.
1998-10-23 10:44:02 -05:00
Robb Matzke
cfb2a264f1 [svn-r761] Changes since 19981013
----------------------

./src/H5.c
	Fixed a signed vs. unsigned comparison.

./src/H5D.c
	Setting a fill value of all zeros will cause the fill value to
	be written to the dataset instead of relying on the low-level
	file driver initializing unwritten areas with zero.

./src/H5D.c
./src/H5F.c
./src/H5Fprivate.h
./src/H5G.c
./src/H5Gpkg.h
./src/H5Gprivate.h
./src/H5O.c
./src/H5T.c
	More file mounting stuff.

./src/H5I.c
	Fixed a bug where trying to close an invalid object id caused
	a core dump.  For instance, H5Gclose(-1).

./MANIFEST
./test/Makefile.in
./test/mount.c		[NEW]
	Mounting tests.

./src/H5R.c
	Fixed a couple (herr_t)NULL casts.
1998-10-14 14:35:08 -05:00
Quincey Koziol
85b6253118 [svn-r755] Added reference test to manifest. 1998-10-13 16:27:53 -05:00
Quincey Koziol
0a91cc84c1 [svn-r741] Added H5R*.[ch] files 1998-10-07 16:03:47 -05:00
Quincey Koziol
2c4af336d3 [svn-r739] Switched ragged array "H5R" API to "H5RA" to make room for the reference API. 1998-10-06 16:37:57 -05:00