summaryrefslogtreecommitdiffstats
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r1240] Changes since 19990427Robb Matzke1999-04-302-33/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r1236] i had to change some of the h5mm_xfree calls to just hdfree for ↵Patrick Lu1999-04-291-4/+19
| | | | | | the dll version it was causing some crashes otherwise
* [svn-r1217] Changes since 19990426Robb Matzke1999-04-261-55/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./config/commence.in ./examples/Makefile.in ./test/Makefile.in ./testpar/Makefile.in ./tools/Makefile.in Fixed some dependency problems in Makefiles. If the library version is updated then everything gets recompiled. ./src/H5G.c ./src/H5R.c Failure return value for object type functions is now H5G_UNKNOWN as documented. ./src/H5Shyper.c ./src/H5Spoint.c Fixed an unused argument warning. ./tools/h5debug.c Fixed a call to H5F_block_read() since the 4th argument is different now. ./tools/h5ls.c Added a space between the object name and class to make the output readable when the object name is longer than 24 characters. C
* [svn-r1211] Took out linefeeds from hyperslab.c and changed a datatype in ↵Quincey Koziol1999-04-232-4/+3
| | | | | | tselect.c to make it more portable.
* [svn-r1204] Changes since 19990415Robb Matzke1999-04-231-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r1191] moved some code around to fix a crash.Patrick Lu1999-04-161-2/+18
| | | | code is surounded by #ifdef WIN32
* [svn-r1190] moved some of the code around to fix a crash in the dll version ↵Patrick Lu1999-04-161-0/+15
| | | | | | of the test. All changes were surrounded #ifdef _HDF5USEDLL
* [svn-r1184] Changes since 19990402Robb Matzke1999-04-159-19/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r1151] Changes since 19990318Robb Matzke1999-03-191-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r1149] ./configure.inRobb Matzke1999-03-182-81/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ./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.
* [svn-r1147] Added test for object references to named datatypes.Quincey Koziol1999-03-181-5/+62
|
* [svn-r1145] Added test for object references to groups.Quincey Koziol1999-03-181-10/+34
|
* [svn-r1140] Added tests for H5Rget_object_typeQuincey Koziol1999-03-121-0/+6
|
* [svn-r1138] Changes since 19990304Robb Matzke1999-03-121-87/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r1136] Updated test for expanded API.Quincey Koziol1999-03-111-2/+2
|
* [svn-r1133] Added tests for region references and new dataspace/selection ↵Quincey Koziol1999-03-101-6/+88
| | | | API functions.
* [svn-r1129] Test bugs fixed in T3E port.Albert Cheng1999-03-092-12/+21
| | | | | | | | | 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.
* [svn-r1115] Changes since 19990302Robb Matzke1999-03-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r1112] Changes since 19990301Robb Matzke1999-03-021-31/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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).
* [svn-r1110] Changes since 19990226Robb Matzke1999-03-013-15/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r1108] Changes since 19990225Robb Matzke1999-02-263-504/+538
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r1101] Changes since 19990219Robb Matzke1999-02-258-350/+387
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./config/irix64 The old (-32) compiler is now supported by setting envrionment CC='cc -32'. The -64 compiler is the default or you can set CC='cc -64'. ./src/H5A.c ./src/H5D.c ./src/H5F.c ./src/H5Fistore.c ./src/H5Flow.c ./src/H5G.c ./src/H5I.c ./src/H5Ocomp.c ./src/H5P.c ./src/H5R.c ./src/H5RA.c ./src/H5T.c ./src/H5Tbit.c ./src/H5Tconv.c ./src/H5Z.c ./src/H5detect.c ./test/big.c ./test/cmpd_dset.c ./test/dsets.c ./test/dtypes.c ./test/enum.c ./test/mtime.c ./test/ohdr.c ./tools/h5ls.c Fixed lots of warnings on Irix64. Mailed a few remaining warnings in H5S to Quincey and a few in the dumper to Ruey-Hsia.
* [svn-r1097] Added ./config/unicosmkRobb Matzke1999-02-231-42/+21
|
* [svn-r1089] changed the call to open to HDopen since NT needs that 0_BINARY flagPatrick Lu1999-02-211-1/+1
| | | | in it to open binary files.
* [svn-r1081] Changes since 19990218Robb Matzke1999-02-181-21/+42
| | | | | | | | | | | | | ---------------------- ./src/H5Shyper.c Changed hyperslab offset arrays to signed quantities to get rid of warnings on DEC cluster. ./src/H5Flow.c ./src/H5Fprivate.h Changed the objno argument of H5F_addr_pack() to be unsigned to get rid of warnings on DEC cluster.
* [svn-r1065] Changes since 19990121Robb Matzke1999-02-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r1056] Removed carriage returns inserted by a "broken" operating system.Robb Matzke1999-02-031-32/+64
|
* [svn-r1033] added some calls to get the time elapsed on WIN NTPatrick Lu1999-01-251-2/+105
|
* [svn-r1032] Changes since 19990118Robb Matzke1999-01-212-31/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./tools/h5tools.c Strings are not converted to null-padding before being printed; they are printed with whatever byte values appear in the file. ./tools/h5ls.c Now able to display attribute data type and data. Added a `-f' or `--full' switch which causes the full name of each object to be displayed instead of just the base name. Added a `-r' or `--recursive' switch that recursively prints the contents of groups, avoiding cycles. More bulletproofing for non-printable characters in things like object names, attribute names, and comment strings. We don't want listing a file to send termal escape sequences because it's sometimes possible to execute commands that way. Since h5ls doesn't usually use quotes around object names we must sometimes escape space characters. External files are listed in a table to make the output less confusing. ./tools/h5tools.c ./tools/h5tools.h Changed h5dump() to h5dump_dset() and added h5dump_mem(). Also make h5dump_fixtype() public. ./test/dtypes.c Wrote some data to an attribute to test h5ls attribute printing. ./src/H5ACprivate.h ./src/H5Apublic.h ./src/H5Dprivate.h ./src/H5Dpublic.h ./src/H5Epublic.h ./src/H5Fprivate.h ./src/H5Fpublic.h ./src/H5Gprivate.h ./src/H5HLprivate.h ./src/H5Oprivate.h ./src/H5Ppublic.h ./src/H5RApublic.h ./src/H5Rpublic.h ./src/H5Spublic.h ./src/H5Tpkg.h ./src/H5Tpublic.h ./src/H5Vprivate.h ./src/H5Zpublic.h ./src/H5private.h ./src/H5public.h Reindented function prototypes after `HDF5API' was added. Also rewrapped long lines. ./src/H5Flow.c Added an `#ifdef WIN32' around an unused variable. ./src/H5api_adpt.h Removed extra carriage returns inserted by "broken" operating system. ./src/H5Dprivate.h ./src/H5Oprivate.h ./src/H5Vprivate.h ./src/H5private.h Removed extraneous inclusion of H5api_adpt.h since it's included in H5public.h which is included by everything. ./src/Makefile.in Added H5api_adpt.h to the list of public header files to fix broken `make install'.
* [svn-r1023] Changes since 19990105Robb Matzke1999-01-182-26/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./INSTALL ./doc/html/Compression.html ./doc/html/Filters.html Disassociated GNU from zlib. Did not change the introduction which incorrectly states that compression in hdf5 is available only if GNU gzip is available (should read zlib). Changed a typo in INSTALL to match what is documented in various other places: that zlib 1.1.2 (not 1.0.2) or better is required for compression. Added a reference to the main zlib web page in various places. ./src/H5Fistore.c Fixed a typo in a comment. ./src/H5Flow.c Removed carriage returns from the end of lines. ./test/dsets.c The deflate compression tests are still run but `-SKIP-' is printed instead of `PASSED' if the zlib library was not detected at configuration time. The tests check that the compression layer (H5Z) is correctly bypassed.
* [svn-r1022] changed the macro for FILE to be FILENAME since it conflicted ↵Patrick Lu1999-01-121-12/+12
| | | | | | with a macro in a windows header.
* [svn-r1016] *** empty log message ***Robb Matzke1999-01-071-0/+376
|
* [svn-r1011] Changes since 19981217Robb Matzke1999-01-074-6/+96
| | | | | | | | | | | ---------------------- ./test/dtypes.c ./test/enum.c [NEW] Added support for enumeration data types. ./test/fillval.c ./test/istore.c Fixed memory leaks during error handling.
* [svn-r971] Changes since 19981214Robb Matzke1998-12-172-95/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./INSTALL Added warning that enabling debugging code can adversely affect performance even when the debugging isn't turned on at run-time. Performance testing shows that under certain circumstances (like data type conversions of compound types) the H5_timer functions, although only a few lines each, contribute a fairly large percent to the execution time. ./src/H5T.c ./src/H5Tpkg.h ./src/H5Tpublic.h Improved the H5Tunregister() function to make unregistering more flexible. It takes the same arguments as H5Tregister() but also accepts wild cards. All conversion functions that match the H5Tunregister() search criteria are removed from the global type conversion table. The H5Tregister_hard() and H5Tregister_soft() were combined into a single function called H5Tregister() which is the counterpart to H5Tunregister(). A new `persistence' argument was added to differentiate between the two types of conversion functions. The application is allowed to register a hard conversion function for the no-op conversion path although the library isn't obligated to call it (it usually does). This is mostly for completeness, but the application might use it to help determine if the raw data pipeline was able to use the optimized path for the case when no type conversion is necessary. The library doesn't allow this path to be unregistered although the application can redefine it as often as it likes. Fixed the type conversion tables in preparation for MT-safety and to fix previosly-known design bugs wrt. unregistering conversion functions or changing the C function associated with a conversion path. The MT-safety stuff is documented in a separate white paper. Increased the conversion function debugging name from 9 characters to 31 characters so the output can be more descriptive. Moved conversion path statistics from the H5T_cdata_t member into the conversion path itself. This makes H5T_cdata_t contain only application-visible data structures. ./src/H5A.c ./src/H5D.c ./src/H5Ofill.c ./src/H5P.c ./src/H5T.c Improved the way type conversion functions are called so the caller doesn't have to check for data type debugging and increment type conversion timers and statistics. Changed check for no-op conversion since it is now application-definable and there may even be more than one definition at a time in a multi-threaded application (one thread might be using the no-op conversion path when some other thread changes its definition -- the first thread still sees the original defintion until it's done with the operation). ./doc/html/Datatypes.html Updated the user guide to reflect the changes to data type conversion registration functions. ./bin/trace ./src/H5.c Added tracing support for the new H5T_pers_t data type. ./test/dtypes.c Added printf to display alignment value if non-aligned data types are being tested. ./test/h5test.c Modified the H5Tunregister() calls to use the new arguments. All 94 of those calls can be replaced by a single call to the new H5Tunregister() function. ./src/H5.c Added HAVE_GETTIMEOFDAY around an auto variable and initialized the elapsed time to zero when gettimeofday() is not available. ./src/H5F.c ./src/H5Fprivate.h ./src/H5P.c Added an H5*_init() functions which do the same thing as H5*_init_interface() but can be called from other packages and don't do anything if the interface is already initialized. This fixes a couple memory leaks in applications that repeatedly close and open the library with H5close(). ./src/H5Tconv.c Optimized some data alignment code in the hardware conversion functions. Hardware conversions accumulate statistics about source and destination data alignment and print that information when the conversion function is unregistered (usually when the application exits) if data type debugging is compiled into the library and enabled at run-time. The conversion caching was cleaned up for the compound data type conversion function. It now caches conversion paths in a manner that will be MT-safe and is much simpler than the old method. Also cleaned up some array index maps. ./src/H5detect.c Fixd mispelling of alingemnt. ./src/H5private.h Changed `TRUE' to `1' in assignment to interface_initialize_g in FUNC_ENTER macro definition. ./tools/testh5dump.sh Completely rewritten to make it shorter, better documented, and conforming to most of the other test outputs. The comparison of the actual output with the expected output is insensitive to differences in white space. The test now passes for the first time on Linux where the output width wasn't as expected but the output was otherwise correct. ./tools/testfiles/tall-1.ddl ./tools/testfiles/tall-2.ddl ./tools/testfiles/tall-3.ddl ./tools/testfiles/tattr-1.ddl ./tools/testfiles/tattr-2.ddl ./tools/testfiles/tattr-3.ddl ./tools/testfiles/tattr-4.ddl ./tools/testfiles/tcomp-1.ddl ./tools/testfiles/tcomp-2.ddl ./tools/testfiles/tcomp-3.ddl ./tools/testfiles/tcomp-4.ddl ./tools/testfiles/tdset-1.ddl ./tools/testfiles/tdset-2.ddl ./tools/testfiles/tdset-3.ddl ./tools/testfiles/tdset-4.ddl ./tools/testfiles/tgroup-1.ddl ./tools/testfiles/tgroup-2.ddl ./tools/testfiles/tgroup-3.ddl ./tools/testfiles/tlink-1.ddl ./tools/testfiles/tlink-2.ddl ./tools/testfiles/tlink-3.ddl ./tools/testfiles/tlink-4.ddl ./tools/testfiles/tlink-5.ddl ./tools/testfiles/tslink-1.ddl ./tools/testfiles/tslink-2.ddl Changed `../h5dump' to just `h5dump'. ./config/alpha-dec-osf4.0 Added more warning and optimization switches to the native compiler.
* [svn-r968] Changes since 19981207Robb Matzke1998-12-142-434/+643
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r959] Changes since 19981125Robb Matzke1998-12-071-30/+30
| | | | | | | | ---------------------- ./src/H5HG.c Fixed a bug in the alignment calculation for the heap free space. The reference test passes now.
* [svn-r957] Updated test for dataset region code, currently generating an ↵Quincey Koziol1998-11-301-10/+10
| | | | | | assertion failure in the H5HG code for Robb to look at.
* [svn-r952] Changes since 19981125Robb Matzke1998-11-258-263/+267
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./doc/html/Datatypes.html ./src/H5.c ./src/H5T.c ./src/H5Tconv.c ./src/H5Tpkg.h ./src/H5Tpublic.h ./src/H5detect.c ./test/chunk.c ./test/dtypes.c ./test/h5test.c ./test/mtime.c ./test/tattr.c ./test/th5s.c ./tools/h5dump.c ./tools/h5dumputil.c ./tools/h5import.c ./tools/h5ls.c ./tools/h5toh4.c ./tools/h5tools.c Renamed the old H5T_NATIVE_CHAR type to H5T_NATIVE_SCHAR to denote that it is always signed. Added a new H5T_NATIVE_CHAR type which has the same range, representation, and behavior as either H5T_NATIVE_SCHAR or H5T_NATIVE_UCHAR depending on the compiler and its command-line switches for the application source file which references H5T_NATIVE_CHAR. If source files are compiled with different switches then each source file will resolve H5T_NATIVE_CHAR appropriately so it matches the C type `char' in that source file. NOTE: THERE ARE OTHER DOCUMENTATION FILES THAT I DIDN'T CHANGE BECAUSE I CAN'T MODIFY THE SOURCE. ./test/extend.c Swapped two lines to prevent diagnostic messages from messing up the formatted output.
* [svn-r951] Removed warning about unused static function.Robb Matzke1998-11-251-0/+2
|
* [svn-r949] Changes since 19981124Robb Matzke1998-11-2519-1484/+1812
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r946] Changes since 19981121Robb Matzke1998-11-241-4/+4
| | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r944] Changes since 19981120Robb Matzke1998-11-2310-1771/+1096
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r936] Changes since 19981119Robb Matzke1998-11-2116-1209/+1269
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r933] moved the include for io.h into a block surrounded by HAVE_IO_HPatrick Lu1998-11-192-0/+6
|
* [svn-r932] added a cast for the (__int64)->double.Patrick Lu1998-11-191-1/+6
|
* [svn-r931] added io.h in the stdc_header sectionPatrick Lu1998-11-191-2/+5
|
* [svn-r930] *** empty log message ***Patrick Lu1998-11-191-5/+8
|
* [svn-r929] Changes since 19981119Robb Matzke1998-11-1918-94/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./test/flush2.c ./test/overhead.c Removed carriage-returns inserted by a broken operating system. ./test/big.c ./test/mtime.c ./test/ragged.c ./tools/h5ls.c Removed inclusion of <H5config.h>, system header files, and definition of __unused__ since this all happens in <H5private.h>. ./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/overhead.c ./test/shtype.c ./test/unlink.c ./tools/h5import.c ./tools/h5repart.c Removed inclusion of <H5config.h> since <hdf5.h> includes it. ./test/flush1.c Includes <stdlib.h>, protects inclusion of <unistd.h> by using HAVE_UNISTD_H instead of STDC_HEADERS.
* [svn-r928] Changes since 19981118Robb Matzke1998-11-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ---------------------- ./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.
* [svn-r927] had to put the extra cast in for the __int64 to double conversion.Patrick Lu1998-11-192-3/+18
| | | | I included a comment everywhere that this was needed.