Commit Graph

1241 Commits

Author SHA1 Message Date
Patrick Lu
035c00dcef [svn-r1156]
made a change to compare files function.
for NT we look at the path names of the 2 objects.
1999-03-22 12:51:16 -05:00
Patrick Lu
019daa1b2e [svn-r1155]
added a new member to the H5F_search_t struct to store the path name
we needed this to be able to tell if a file is already open since NT does not
use the inode.
1999-03-22 12:48:18 -05:00
Robb Matzke
13c9a30beb [svn-r1154] Changes since 19990322
----------------------

./configure.in
./configure		[REGENERATED]
./config/commence.in
	A few tweaks to the makefile rules for rebuilding makefiles.

./src/H5detect.c
	Fixed a really stupid mistake: resetting the signal handler
	after a longjmp(). This should fix Bob's SIGBUS on Solaris.
1999-03-22 11:21:49 -05:00
Robb Matzke
8473025b45 [svn-r1153] Snapshot 1999-03-20 04:23:29 -05:00
Robb Matzke
625542cdc8 [svn-r1152] *** empty log message *** 1999-03-19 15:10:19 -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
19e5077f7f [svn-r1150] Snapshot 1999-03-19 04:22:12 -05:00
Robb Matzke
826dbc8146 [svn-r1149] ./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./src/H5private.h
	Temporarily commented out the code that tries to link a simple
	MPI-IO application because I'm not sure how to pass $LDFLAGS
	and $LIBS to the compiler.

	Removed the `--enable-parallel=ibm' switch because the library
	we link with is either -lmpcc or -lmpcc_r but not both. The
	only way to tell is to see what compiler was specified (mpcc
	or mpcc_r) but if that compiler is specified then we don't
	need any libraries (the compiler script supplies them). That
	leaves just two choices: the user must use a compiler script:

	    CC=mpcc ./configure

	or the user must state which library is desired:

	    LDFLAGS='-lmpcc' ./configure --enable-parallel

	Checks for <setjmp.h>, longjmp(), and signal(). We don't check
	for setjmp() because it could be a macro (in fact, Posix
	requires it to be a macro) and if longjmp() is present then
	setjmp() is probably present too ;-)

./src/H5detect.c
	The alignment detection loop uses SIGBUS and setjmp/longjmp
	instead of fork/wait in order to get around bugs with forking
	in conjunction with mpich.  This hasn't been tested on the
	SP-2 yet but it does work on the DEC Alpha.

./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
	Changed the order that libraries are linked so -lhdf5 is
	always before $LDFLAGS.
1999-03-18 08:42:52 -05:00
Robb Matzke
4ec2ca72ba [svn-r1148] Snapshot 1999-03-18 04:22:20 -05:00
Quincey Koziol
5a12356ecd [svn-r1147] Added test for object references to named datatypes. 1999-03-17 20:30:10 -05:00
Quincey Koziol
d8d31596b4 [svn-r1146] Added support for object references to named datatypes. 1999-03-17 20:30:03 -05:00
Quincey Koziol
ff5a1a9e29 [svn-r1145] Added test for object references to groups. 1999-03-17 19:07:55 -05:00
Quincey Koziol
b0138a0cb0 [svn-r1144] Added support for object references to groups. 1999-03-17 19:07:50 -05:00
Robb Matzke
e433e6c4a9 [svn-r1143] Snapshot 1999-03-16 04:22:16 -05:00
Paul Harten
ed46363fd9 [svn-r1142] Purpose:
Bug fix

Solution:
    Fixed a small typo in config/solaris2.x.

Platform tested:
    Solaris2.5
1999-03-15 11:23:25 -05:00
Robb Matzke
68669abdcb [svn-r1141] Snapshot 1999-03-14 04:22:54 -05:00
Quincey Koziol
1cb6b0c27f [svn-r1140] Added tests for H5Rget_object_type 1999-03-12 15:05:49 -05:00
Quincey Koziol
7795177df7 [svn-r1139] Added code for H5Rget_object_type 1999-03-12 15:05:43 -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
d6cc19e3f2 [svn-r1137] Snapshot 1999-03-12 04:22:26 -05:00
Quincey Koziol
84b5b71e84 [svn-r1136] Updated test for expanded API. 1999-03-11 16:03:41 -05:00
Quincey Koziol
fbef4e61ed [svn-r1135] Expanded API for reading lists blocks/points to allow for just a portion of
the block/point-list to be read at a time.
1999-03-11 16:03:30 -05:00
Robb Matzke
af50eb6cbd [svn-r1134] Snapshot 1999-03-11 04:22:03 -05:00
Quincey Koziol
36b081b6ea [svn-r1133] Added tests for region references and new dataspace/selection API functions. 1999-03-10 18:50:25 -05:00
Quincey Koziol
ae782bd7ac [svn-r1132] Dataset region references are now finished and working correctly. Also, there
are five new API functions for querying selections:
    H5Sget_select_hyper_nblocks     - retrieves the number of hyperslab blocks
                                        in current hyperslab selection for a
                                        dataspace
    H5Sget_select_elem_npoints      - retrieves the number of element points
                                        in current element selection for a
                                        dataspace
    H5Sget_select_hyper_blocklist   - retrieves a list of the hyperslab blocks
                                        in current hyperslab selection for a
                                        dataspace
    H5Sget_select_elem_pointlist    - retrieves a list of the element points
                                        in current element selection for a
                                        dataspace
    H5Sget_select_bounds            - retrieves a n-dimensional bounding box
                                        containing current selection.
1999-03-10 18:50:03 -05:00
Robb Matzke
354a6dcc01 [svn-r1131] Snapshot 1999-03-10 04:22:27 -05:00
Albert Cheng
3a111372b1 [svn-r1130] Make HDsnprintf to be compiled only if snprintf is not available
in the local system.
Tested in O2K.
1999-03-09 18:15:37 -05:00
Albert Cheng
cee43a0f30 [svn-r1129] Test bugs fixed in T3E port.
external.c:
    Test assumed sizeof(int) is 4.  Changed the hard-coded values
    to values depending on the native sizeof(int).

th5s.c:
    Changed hardcoded old filenames to macro FILE.
1999-03-09 18:13:22 -05:00
Albert Cheng
2c3234ef72 [svn-r1128] Changes for T3E port.
H5Flow.c:
    Document previous changes (same changes committed by Robb first.)

H5Fprivate.h:
    Change DECODE macros to do sign extension.
    (Sign extension can be skipped if machines use the exact sizes.)

H5Sall.c:
    Fixed a typo in return value.

H5private.h:
    Fixed a typo and also changed the strategy of the int16_t and
    uint16_t typedef.  Now will use short as long as it is at least
    2 bytes big.
1999-03-09 18:06:07 -05:00
Albert Cheng
362894fbb1 [svn-r1127] Removed -64 from default setting. Irix workstations running 32 bit
OS cannot handle the 64 bit instruction sets.  Let the local system
default takes care of preferred machine code.

Tested on both IRIX and IRIX64 platforms.
1999-03-09 17:52:57 -05:00
Dan Wells
06ee0d9c4d [svn-r1126] Undoing previous change. src library won't compile. 1999-03-09 16:35:53 -05:00
Dan Wells
a0a9b1bd17 [svn-r1125] The lines
PABLO_SAVE (ID_ ## func_name);                                             \
   H5TRACE_DECL;
had to be switched because the asci red machine wouldn't compile the source
when -DHAVE_PABLO was used.
1999-03-09 16:20:23 -05:00
Dan Wells
112f7b4e86 [svn-r1124] Changed the names of the pablo masks 1999-03-09 16:02:49 -05:00
Dan Wells
cd06c38d65 [svn-r1123] Updates for bug fixes and new entry points in files from src directory. 1999-03-09 16:00:07 -05:00
Albert Cheng
ebb0060a05 [svn-r1122] Fixed a typo. DEBUG_FLAGS should be DEBUG_CFLAGS. 1999-03-09 07:33:06 -05:00
Albert Cheng
6d92cc641e [svn-r1121] Added Cray T3E recognition. OS named as unicosmk. 1999-03-09 07:32:01 -05:00
Robb Matzke
84adb085e3 [svn-r1120] Snapshot 1999-03-09 04:22:59 -05:00
Paul Harten
169754fb4c [svn-r1119] Purpose:
Bug fix

Problem:
    On Solaris2.5, once the library has been compilied with any type of
    optimization, a bus error comes up in the "dtypes" test.

Solution:
    The problem appears to be in the compilers' version of memcpy() that
    is used when optimized.  Instead of substituting HDmemmove(), on
    Solaris, the problem is also taken care of by preparing the second
    argument to HDmemcpy().  The datatype pointer is copied to a separate
    char pointer which is then used as the second argument to HDmemcpy().
    For some reason, it isn't enough to simply cast the datatype pointer.

Platform tested:
    Solaris2.5
1999-03-08 14:02:43 -05:00
Robb Matzke
596c1905e8 [svn-r1118] Snapshot 1999-03-05 04:22:09 -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
25421a64fd [svn-r1116] Snapshot 1999-03-04 04:22:29 -05:00
Robb Matzke
ea3624e133 [svn-r1115] Changes since 19990302
----------------------

./INSTALL
./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	Improvements for parallel library.  If you have a properly
	working mpicc you should be able to just say:

	    $ CC=mpicc ./configure

	and you will see

	    checking for mpirun... /usr/local/mpi/bin/mpirun
	    checking for parallel support files... skipped
	    checking how to run on one processor...
		     /usr/local/mpi/bin/mpirun -np 1
	    checking how to run in parallel...
		     /usr/local/mpi/bin/mpirun -np $$NPROCS

	To quote from the INSTALL file....

	*** Parallel vs. serial library
	The HDF5 library can be configured to use MPI and MPI-IO for
	parallelizm on a distributed multi-processor system. The easy
	way to do this is to have a properly installed parallel
	compiler (e.g., MPICH's mpicc or IBM's mpcc) and supply that
	executable as the value of the CC environment variable:
	[NOTE: mpcc is not tested yet]

	    $ CC=mpcc ./configure
	    $ CC=/usr/local/mpi/bin/mpicc ./configure

	If no such wrapper script is available then you must specify
	your normal C compiler along with the distribution of
	MPI/MPI-IO which is to be used (values other than `mpich' will
	be added at a later date):

	    $ ./configure --enable-parallel=mpich

	If the MPI/MPI-IO include files and/or libraries cannot be
	found by the compiler then their directories must be given as
	arguments to CPPFLAGS and/or LDFLAGS:

	    $ CPPFLAGS=-I/usr/local/mpi/include \
	      LDFLAGS=-L/usr/local/mpi/lib/LINUX/ch_p4 \
	      ./configure --enable-parallel=mpich

	If a parallel library is being built then configure attempts
	to determine how to run a parallel application on one
	processor and on many processors.  If the compiler is mpicc
	and the user hasn't specified values for RUNSERIAL and
	RUNPARALLEL then configure chooses `mpirun' from the same
	directory as `mpicc':

	    RUNSERIAL:    /usr/local/mpi/bin/mpirun -np 1
	    RUNPARALLEL:  /usr/local/mpi/bin/mpirun -np $${NPROCS:=2}

	The `$${NPROCS:=2}' will be substituted with the value of the
	NPROCS environment variable at the time `make check' is run
	(or the value 2).

./testpar/Makefile.in
	Saying `make check' (or `make test') will run the tests on two
	processors by default.  If you define NPROCS then that many
	processors are used instead:

	    $ NPROCS=4 make check

./configure.in
	Fixed (hopefully) bugs with detecting whether __attribute__
	and __FUNCTION__ are special keywords for the compiler.

./Makefile.in
	Saying `make install' from the top level directory shows
	instructions for using shared libraries.

./config/commence.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
	Moved the @top_srcdir@ into the makefiles because it was
	expanded too early and had the wrong value.

./INSTALL
	Added a warning that if the wrong version of hdf4 tools are
	installed then `make check' will fail in the tools directory.
1999-03-03 18:17:48 -05:00
Paul Harten
2925631a49 [svn-r1114] Purpose:
Bug fix

Problem:
    On Solaris2.5, once the library has been compilied with any type of
    optimization, a bus error comes up in the "dtypes" test.

Solution:
    The problem appears to be in the compilers' version of memcpy() that
    is used when optimized.  Apparently, the same optimization problem
    is not associated with the similar function memmove().  So, as a
    solution to this problem, memmove() is substituted in for memcpy().

Platform tested:
    Solaris2.5
1999-03-03 18:00:22 -05:00
Robb Matzke
9280cf8e04 [svn-r1113] Snapshot 1999-03-02 12:26:40 -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
1f1bfc91bc [svn-r1111] Snapshot 1999-03-02 04:20:34 -05:00
Robb Matzke
b3ddd2cc54 [svn-r1110] Changes since 19990226
----------------------

./INSTALL
	Added instructions for using other compilers on Irix platforms.

./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./src/H5private.h
	The presence of <sys/sysinfo.h> and <sys/proc.h> is only
	checked on DEC/Alpha because there are too many problems
	including these headers on other systems.

./config/irix6.x
./config/irix64
	Removed `-ansi' and added a comment. Converting an ASCII UTC date
	and time to a time_t value is not defined by ANSI or Posix but
	is available if we don't use `-ansi'.  This allows the dataset
	modification time messages to be read properly by
	H5Gget_objinfo().

./src/H5Tconv.c
	Fixed a compiler warning.

./test/dtypes.c
./test/hyperslab.c
./test/istore.c
	Fixed compiler warnings in printf() statements.
1999-03-01 14:44:32 -05:00
Robb Matzke
90d07791d3 [svn-r1109] Snapshot 1999-02-26 15:08:08 -05:00
Robb Matzke
912c5a0874 [svn-r1108] Changes since 19990225
----------------------

./INSTALL
	Added warnings and a disclaimer about GNU, DEC, Irix64, and NT
	compilers that generate incorrect machine code.

./configure.in
./src/H5private.h
	Detects and includes <sys/param.h> which is needed on FreeBSD
	before <sys/proc.h> even though we only really using anything
	from <sys/proc.h> on the DEC Alpha.

./config/irix64
	Turned off warnings for duplicate definitions from the linker
	because -lnsl on irix has the same stuff in it as -lc.

./config/irix6.x
	Split up the CC and CFLAGS settings like with irix64 so that
	compilers besides `-n32' can be used.

./bin/snapshot
	The snapshots are tagged with names like hdf5-1_1_52 which is
	similar to the way the releases are tagged (cvs doesn't allow
	dots in tags).

./test/dtypes.c
./src/H5private.h
./src/H5Tconv.c
	Fixed some alignment violations on the DEC when using high
	optimization levels. The DEC incorrectly optimizes certain
	memcpy() and memmove() calls when the source argument is not
	word aligned if the call looks like it's copying an atomic
	data type.

./test/hyperslab
	Worked around code generation bugs in the Irix64 Mongoose 7.00
	compiler by casting some `unsigned long' values to `unsigned'
	in an expression.

./src/H5Ocomp.c
	Fixed a place where %d was used to print a size_t.
1999-02-26 14:58:14 -05:00
Robb Matzke
efb18f8785 [svn-r1107] Snapshot 1999-02-26 04:18:56 -05:00