diff options
41 files changed, 12451 insertions, 787 deletions
@@ -0,0 +1,10676 @@ + -*- indented-text -*- +============================================================================== + +Changes since 19991019 +---------------------- + +./MANIFEST +./configure.in + Added more checking for `make' features. + +./Makefile.in +./doc/Makefile.in +./doc/html/Makefile.in +./doc/html/Tutor/Makefile.in +./examples/Makefile.in +./pablo/Makefile.in +./src/Makefile.in +./test/Makefile.in +./testpar/Makefile.in +./tools/Makefile.in +./config/commence.in +./config/conclude.in +./config/depend.in [REMOVED] +./config/depend1.in [NEW] +./config/depend2.in [NEW] +./config/depend3.in [NEW] +./config/depend4.in [NEW] +./config/dependN.in [NEW] + The directory search stuff was moved into commence.in, thereby + shortening the Makefile.in prologues. + +./doc/html/Dependencies [NEW] +./doc/html/Tutor/Dependencies [NEW] +./examples/Dependencies [NEW] +./src/Dependencies [NEW] +./test/Dependencies [NEW] +./testpar/Dependencies [NEW] +./tools/Dependencies [NEW] + The `.distdep' files were all renamed to `Dependencies' to make them + more obvious. They are required (but may be empty) in every directory + that has a Makefile.in that ends with @CONCLUDE@ (you'll get an + obvious error from make if you forgot to create one). + +./bin/trace +./src/H5.c + Added H5E_major_t and H5E_minor_t although tracing only prints the + integer value. + +./src/H5E.c +./src/H5Epublic.h + Added tracing information. + +./src/H5FDcore.c +./src/H5FDfamily.c +./src/H5FDgass.c +./src/H5FDmpio.c +./src/H5FDsec2.c +./src/H5FDstdio.c + Fixed places where FUNC_LEAVE() evaluated it's argument more than + once. + + Added tracing information. + + Wrapped long lines. + +./config/gnu-flags + Fixed a syntax error when we don't have a gnu compiler. + + + +Changes since 19991007 +---------------------- + +./configure.in +./src/H5config.h.in [REGENERATED] + The /usr/ncsa/{include,lib} directories are only added if they + actually exist. This fixes a warning on some systems. + + Checks for the <pdb.h> header file and also for either the PDB or Silo + library, and if found prepares to compile the pdb2hdf program. + +./config/distdep + Relative path names for include files are changed to base names since + the makefile contains the logic for searching and since it's likely + that building the .distdep files happed from a location other than + where they would be used in the file system. + +./config/conclude.in + Fixed shell errors when `for' loops iterate over nothing for the + `uninstall' target. + +./src/H5D.c +./src/H5Oefl.c + File names for the external files are added to the heap when the + dataset is created instead of when the object header is written. This + fixes a rare infinite recursion bug. + +./src/H5FD.c +./src/H5FDpublic.h + Optimization to the free list causes H5FD_alloc() usage to go from >10 + seconds to <0.4 second for one example (converting a 30MB equation of + state file from PDB to HDF5 format). The optimization is to simply + keep track of the largest item in the free list and not search the + free list when the largest item is not big enough to satisfy the + request. + +./src/H5FDcore.c +./src/H5FDcore.h +./test/h5test.c + If the `backing_store' property is true then a flush causes the entire + contents of memory to be written to the specified file. This is in + preparation for the ASCI/red optimizations and is currently tested by + the pdb2hdf `--cached' switch. + +./src/H5Odtypes.c + Wrapped three long lines. + +./tools/Makefile.in +./tools/pdb2hdf.c [NEW] + A PDB-to-HDF5 translator. It only translates meta data -- the + resulting HDF5 points into the PDB file for the raw data. + +Changes since 19991007 +---------------------- + +./src/H5FDcore.c + Includes private headers instead of public in order to use the + `UNUSED' macro. + +./src/H5FDpublic.h + Includes H5public.h just in case. + +./src/H5P.c + Removed two unused variables in H5P_copy() + +./src/H5FDgass.h + Fixed a C++ comment after a `#endif' + +./src/Makefile.in + The H5FDgass.h file is public and must be installed in order for + applications to be able to use HDF5. + +./tools/h5tools.c + Removed an unused variable. + +./tools/h5ls.c + Fixed an error message when the file cannot be opened. + +./src/Makefile.in + H5FDgass.h is a public header file that needs to be installed. + +Changes since 19990915 +---------------------- + +./src/H5public.h + We undefine a bunch of things that could get redefined in the config + file because some customers have applications that include headers + from multiple packages, all of which might be using autoconf. + + Include <stdint.h> for the C9x types. + +./test/h5test.h + More flushing of stdout for when testing is redirected down a pipe. + +./tools/h5ls.c + Added a `-S' or `--simple' switch which causes the output to be + simplified somewhat for easier parsing by other scripts. For instance, + characters are escaped using a very simple mechanism instead of C's + more complicated backslash notation, data doesn't have `{}' or `[]' + characters interspersed for compound and array types, and data is + printed with exactly one element per line. This switch is now used by + an HDF5-to-HTML CGI script being developed for the DMF people. + +./tools/h5tools.c +./tools/h5tools.h + The repeat threshold which controls how strings are printed when a + character repeats a bunch of times is now settable at runtime instead + of compile time. The default is to show all characters, like + + "abceeeeeeeeeeeeeeeeeeeeeeeeeeeeeefgh" + + But if you set it to something like 5 then any sequence of 5 or more + characters is replaced by something shorter, like: + + "abc" 'e'x30 "fgh" or + + Added an `str_locale' property which describes how to escape special + characters in strings. The default is C-like escapes but an + alternative is ESCAPE_HTML which replaces all non-alphanumeric + characters with a 3-character HTML escape of the form `%XX' + + Fixed a bug where empty strings didn't even have the quote characters + printed. Now empty strings show up as `""' instead of absolutely + nothing. + + Added a `per_line' property which controls the maximum number of + elements which will appear per line of output. The default is infinity + but in practice the right margin causes line breaks. By setting the + `per_line' value to one and the right margin to a very large value one + can achieve output with exactly one element per line. + + + +Changes since 19990826 +---------------------- + +./src/H5O.c [1.2, 1.3] + Fixed a read-uninitialized-memory error that resulted in the + file containing small amounts (<8 bytes each) of uninitialized + data. These padding areas (which are never read by hdf5) are + initialized to zero now. + +./MANIFEST +./src/H5Z.c +./src/H5Zdeflate.c [NEW] +./src/H5Zprivate.h +./src/H5Zpublic.h +./src/Makefile.in + The zlib filter was moved to a separate file but is still + automatically defined. + +Changes since 19990826 +---------------------- + +./src/libhdf5.settings.in [1.2, 1.3] + Added C proprocessor flags and non-library linker flags to the + description. + +./src/H5T.c [1.2, 1.3] + Changed return type in tracing macros to H5Tenum_nameof() and + H5Tenum_valueof(). + +Changes since 19990825 +---------------------- + +./src/H5O.c [1.2, 1.3] + Initialzed the padding area between the end of a message and + the end of the space allocated for that message. This + hopefully fixes an UMR error found by Quincey and prevents the + file from containing unwanted data. + +./tools/h5ls.c [1.2, 1.3] + Fixed a bug where the `Data:' tag didn't get printed for + attributes that have more than five values. + +Changes since 19990824 +---------------------- + +./src/H5private.h + Re-committed recent changes that got clobbered in the pablo update. + Albert, the source tree should be compilable again now... + +./configure.in [1.2, 1.3] +./configure [REGENERATED] +./Makefile.in + Fixed a couple spelling errors. + +Changes since 19990820 +---------------------- + +./src/H5D.c + Added additional elements to a variable initializer in + H5Dvlen_get_buf_size() to shut up a warning message. Also + added the API tracing call. + +./src/H5F.c + Added file opening optimizations. If the driver doesn't + support the ability to determine when two file handles refer + to the same file (like MPIO and GASS) then H5F_open() makes + fewer calls to the driver's open callback. Also, if the + tentative file access flags are the same as the original flags + then H5F_open() makes fewer calls to the file device. + +./src/H5FD.c +./src/H5FDprivate.h +./src/H5FDpublic.h + Added H5FD_get_class() so the library can get information + about what file driver callbacks are defined. This will be + useful when more optimization functions are added to the VFL, + such as for MPIO derived datatype I/O. + +./src/H5FDcore.c +./src/H5FDfamily.c +./src/H5FDmpio.c +./src/H5FDmulti.c +./src/H5FDsec2.c + The driver symbols (like H5FD_CORE, etc) are actually function + calls. The functions were fixed to return correct values even + after calling H5close(). + +./src/H5FDmulti.c +./src/H5FDmulti.h + Added support for opening a file when parts are missing (only + if the caller explicitly allows that in the file access + property list). + + Moved some common code sequences into macros or functions. + + Added better support for reopening files. All the application + has to know is that the file is a multi file and the base name + from which all the member names are created. + + More debugging output when the file is opened with the + H5F_ACC_DEBUG flag. + + Fixed various bugs. + +./src/H5Fistore.c + Chunked raw data was accidently allocated as meta data instead + of raw data. + +./src/H5I.c + The H5Iget_type() function fails when invoked with an old + object ID (an ID which has been closed down). + +./test/h5test.c + Added an extra argument when setting the multi file access + property lists so the test fails if it can't open one of the + sub-files. + +./tools/h5ls.c + Improved the algorithm for deciding what file driver to + use. It basically tries all of the predefined drivers and is + now able to open family, split, and multi files without + looking for special characters in the file name. + + Added `-e' and `--errors' switches which cause errors from + libhdf5 to be reported on stderr in addition to the simple + error message displayed by h5ls. + +Changes since 19990817 +---------------------- + +./configure.in [1.2, 1.3] +./configure [REGENERATED] + The checking for C9x types includes <stdint.h> if it + exists. This should fix a bug on Linux RedHat 6.0 (untested). + +./src/H5private.h [1.2, 1.3] + The prototype for strdup() is protected in case strdup is also + a macro. This should fix a bug on Linux RedHat 6.0 (untested). + + +Changes since 19990817 +---------------------- + +./src/H5D.c +./src/H5F.c +./src/H5FDmpio.c +./src/H5Fistore.c +./src/H5Fprivate.h +./src/H5Smpio.c + The `driver_id' for a file was accidently put in two + structs. I removed it from the H5F_file_t struct since it's + really an attribute of the VFL stuff. + + More careful incrementing/decrementing the driver ID to fix a + memory leak. + +./src/H5P.c + Rewrote H5Pcreate() in terms of H5P_copy() of a default + property list. This fixes some referencing counting bugs. + + +Changes since 19990817 +---------------------- + +./src/H5D.c +./src/H5F.c +./src/H5Fistore.c +./src/H5Smpio.c + Incorporated previous changes into MPIO special cases. These + are mostly due to the fact that most of the members of the + file->shared->fapl struct have been moved into the + file->shared->file->shared struct (`file' is an H5F_t*). + +./src/H5I.c + Fixed a bug with closing the library w.r.t. the VFL stuff. The + VFL layer introduced reference counts on object ID's and the + library termination functions freed these objects in the wrong + order. Now H5I_clear_group() does not normally remove objects + with a reference count larger than one because it assumes that + those objects are currently in use by the library. + +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. + +Changes since 19990810 +---------------------- + +./src/H5Sprivate.h + Fixed merge conflicts that I missed earlier. + +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. + + +Changes since 19990728 +---------------------- + +./RELEASE [1.2,1.3] + Updated release notes for 1.2.0 release + +Changes since 19990728 +---------------------- + +./src/H5B.c [1.3] +./src/H5D.c [1.3] +./src/H5F.c [1.3] +./src/H5Farray.c [1.3] +./src/H5Fcore.c [1.3] +./src/H5Ffamily.c [1.3] +./src/H5Fistore.c [1.3] +./src/H5Flow.c [1.3] +./src/H5Fmpio.c [1.3] +./src/H5Fprivate.h [1.3] +./src/H5Fsplit.c [1.3] +./src/H5Fstdio.c [1.3] +./src/H5G.c [1.3] +./src/H5HG.c [1.3] +./src/H5HL.c [1.3] +./src/H5MF.c [1.3] +./src/H5O.c [1.3] +./src/H5Odtype.c [1.3] +./src/H5Oefl.c [1.3] +./src/H5P.c [1.3] +./src/H5Smpio.c [1.3] +./src/H5T.c [1.3] +./src/H5detect.c [1.3] +./tools/h5debug.c [1.3] + Some of the H5F_addr_* functions were optimized away. + +./src/H5D.c [1.3] + Fixed the return values from NULL to FAIL on one MPI-IO + function. + + +Changes since 19990727 +---------------------- + +./src/H5.c [1.3] +./src/H5AC.c [1.3] +./src/H5ACprivate.h [1.3] +./src/H5B.c [1.3] +./src/H5Bprivate.h [1.3] +./src/H5D.c [1.3] +./src/H5F.c [1.3] +./src/H5Farray.c [1.3] +./src/H5Fcore.c [1.3] +./src/H5Ffamily.c [1.3] +./src/H5Fistore.c [1.3] +./src/H5Flow.c [1.3] +./src/H5Fmpio.c [1.3] +./src/H5Fprivate.h [1.3] +./src/H5Fsec2.c [1.3] +./src/H5Fsplit.c [1.3] +./src/H5Fstdio.c [1.3] +./src/H5G.c [1.3] +./src/H5Gent.c [1.3] +./src/H5Gnode.c [1.3] +./src/H5Gprivate.h [1.3] +./src/H5Gstab.c [1.3] +./src/H5HG.c [1.3] +./src/H5HGprivate.h [1.3] +./src/H5HL.c [1.3] +./src/H5HLprivate.h [1.3] +./src/H5MF.c [1.3] +./src/H5MFprivate.h [1.3] +./src/H5O.c [1.3] +./src/H5Oattr.c [1.3] +./src/H5Ocont.c [1.3] +./src/H5Odtype.c [1.3] +./src/H5Oefl.c [1.3] +./src/H5Olayout.c [1.3] +./src/H5Oprivate.h [1.3] +./src/H5Oshared.c [1.3] +./src/H5Ostab.c [1.3] +./src/H5P.c [1.3] +./src/H5R.c [1.3] +./src/H5Smpio.c [1.3] +./src/H5T.c [1.3] +./src/H5Tvlen.c [1.3] +./src/H5private.h [1.3] +./test/dtypes.c [1.3] +./test/gheap.c [1.3] +./test/istore.c [1.3] +./test/lheap.c [1.3] +./test/ohdr.c [1.3] +./tools/h5debug.c [1.3] + File addresses (the `haddr_t' type) are passed by value + instead of by reference. The type is no longer a struct. This + is one of the preliminary changes needed for the Virtual File + Layer stuff. + +./src/H5Fprivate.h [1.3] +./src/H5Flow.c [1.3] + Some address functions were rewritten as macros. + + +Changes since 19990723 +---------------------- + +NOTE: These bug fixes but have been applied only to the 1.3 branch per + Albert's request. + +./config/gnu-flags [1.3] + Added support for gcc-2.95 by adding full optimization and + debugging flags and applied a patch from Marcus Daniels. + +./src/Makefile.in [1.3] + Removes the `libhdf5.settings' file for `make clean'. + +Changes since 19990719 +---------------------- + +./configure.in [1.2, 1.3] +./configure [REGENERATED] + Changed $USER to `whoami` for setting the user name in + libhdf5.settings. + +./test/dtypes.c [1.2, 1.3] + Fixed the decimal value which is printed for `dst' when an + error is detected. The hexadecimal value was correct. + + +Changes since 19990715 +---------------------- + +./Makefile.in [1.3] +./examples/Makefile.in [1.3] +./pablo/Makefile.in [1.3] +./src/Makefile.in [1.3] +./test/Makefile.in [1.3] +./testpar/Makefile.in [1.3] +./tools/Makefile.in [1.3] +./config/commence.in [1.3] +./config/conclude.in [1.3] +./config/depend.in [1.3] + Added a `.PATH' target for Irix pmake which is identical to + the VPATH used by most other `make' programs. Irix 6.5 (or + 6.4?) and later `make' ignores VPATH. + + Started all beginning-of-line comments with `##' instead of + just `#' because Irix `pmake' barfs on things like the + following because it sees the `# if' as a directive: + + # make will barf on the following line + # if running Irix pmake + + +./config/commence.in [1.3] + Added empty definitions for optional `make' macros because + Irix pmake complains if it sees a macro which has never been + defined. The main body of the Makefiles can redefine these + macros to whatever they need. + +./bin/release [1.2, 1.3] + The SunOS 5.6 version of `sed' must have slashes as delimiters + so I made sure that's all that's used in this script even + though it makes one pattern almost unreadable. + + +Changes since 19990715 +---------------------- + +./src/H5B.c [1.2, 1.3] +./src/H5Fistore.c [1.2, 1.3] +./src/H5Sall.c [1.2, 1.3] + Replaced second argument of HGOTO_ERROR/HRETURN_ERROR with a + minor error symbol (H5E_INTERNAL is a major error symbol). + +Changes since 19990713 +---------------------- + +./tools/h5tools.c [1.2, 1.3] + Fixed a bug reported by Albert: the indices for data printed + by h5ls were starting over at zero for each pass through the + strip mining loop. + + Fixed indentation in one function. + + Replaced commented-out code by #if 0 + + +Changes since 19990623 +---------------------- + +./bin/trace [1.2, 1.3] +./src/H5D.c [1.2, 1.3] +./src/H5P.c [1.2, 1.3] +./src/H5T.c [1.2, 1.3] + Added definitions for H5D_operator_t, H5MM_allocate_t, and + H5MM_free_t and regenerated tracing calls for the affected API + functions. + +./config/gnu-flags [1.2, 1.3] + A warning is printed for all versions of EGCS before 2.91.67. + +./configure.in [1.2] +./configure [REGENERATED] + Changed defaults: optimizations on, debugging and tracing off. + +./bin/h5vers [1.3] + Added `use strict' and declared some variables. + +./INSTALL [1.2, 1.3] + Updated version numbers. Fixed a couple typos. + +./h5ls.c [1.2, 1.3] + Fixed usage message. + +Changes since 19990618 +---------------------- + +./configure.in +./configure [REGENERATED] + Now that compound struct conversions don't make so many calls + to convert their members I turned the H5T debugging back on by + default (it will still be disabled in a production version). + +./src/H5AC.c +./src/H5B.c + Made it possible to turn off messages about debugging these + two packages using the same method as for all other + packages. Just supply an invalid file descriptor number or use + the shell to redirect said descriptor to /dev/null like this: + + $ HDF5_DEBUG=99,ac,b 99>/dev/null a.out + +./src/H5T.c + Changed the name of the old compound conversion function from + `struct' to `struct(no-opt)' to be more consistent with the + new version named `struct(opt)'. + + Fixed a bug in H5T_cmp() that caused any two VL types to + compare as being equal. + + Removed duplicate code for bitfield comparisons in H5T_cmp(). + +./src/H5Tconv.c + Relaxed some constraints in the new compound conversion + function so it applies to more cases. Also eliminated a + memcpy in a tight loop. + +./test/cmpd_dset.c + Added a `--noopt' command line switch which unregisters the + optimized compound conversion so we can test the non-optimized + version. + +Changes since 19990618 +---------------------- + +./Makefile.in + Running `make' in the top directory recurses into the examples + directory also except if the make target is one of: lib, + progs, check, test, _test, install, uninstall. + +./examples/Makefile.in + Changed programs into tests, which just means that `make + tests' does what `make progs' used to do and that `make check' + runs the executables. + +./src/H5Tconv.c + Fixed a typo in the unsigned-to-signed native converter for + large types to small types. This fixes a bug on baldric and + possibly other machines for the `dtypes' test. + + Also fixed a signed vs. unsigned warning. + + +Changes since 19990616 +---------------------- + +./src/H5T.c +./src/H5Tconv.c + All conversion functions take an extra argument called + `stride' which is the number of bytes to advance the source + and destination pointers after each element is converted. If + the value is zero then the old behavior is preserved (source + and destination values are packed). This feature was necessary + to implement the compound datatype conversion optimizations + and it causes a minor change to the API (application-defined + type conversion functions take an extra size_t stride + argument). + +./src/H5Tconv.c + An additional compound data type conversion function was added + which is applied unless the destination type is larger than + the source type. I'm measuring significant performance + increases for certain operations: + + Test Name Struct-Conv Noop-Conv + New(Old) MB/s New(Old) MB/s + ---------- ------------- ------------- + Reordering 2.062(0.3936) 54087(0.9047) + Subsetting 2.901(0.6581) 40192(1.1100) + Shrinking 1.976(0.3925) 33628(1.1500) + ---------- ------------- ------------- + +./test/dtypes.c + Added various compound datatype conversion tests. + + Fixed return values from functions. + +./src/H5T.c + Conversion timers are updated only if H5T debugging is turned + on a runtime (in addition to compile time). This allows the + data type layer to be compiled with debugging support without + having to pay a big runtime penalty if the debugging isn't + actually used. + +./src/H5A.c +./src/H5D.c +./src/H5Ofill.c +./src/H5P.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h + Added the stride argument to the H5T_convert() calls. The + stride is always zero, which means that the source and + destination data values are packed. + +./configure.in +./configure [REGENERATED] + If API tracing is turned off then libhdf5.settings will say + `no' instead of nothing. + +./test/flush1.c +./test/flush2.c + Added better error messages in a couple places. + + + +Changes since 19990615 +---------------------- + +./README + Version number synchronized with library. + +./bin/h5vers + If the version number of the library is changed then the first + line of the README file is also changed to something like + + This is hdf5-1.2.3 currently under development + + The `release' script (which also gets run by `snapshot') + changes that line to include the release date but keeps the + version number the same. The net effect is that the version + numbers in README and H5public.h should now always stay + synchronized. + +./bin/snapshot + The CVS checkin comment includes the version number for the + snapshot that was just made. + +./tools/testh5toh4 + Changed `*-SKIP-*' to `-SKIP-' to be consistent with the other + tests. + + +Changes since 19990614 +---------------------- + +./src/H5D.c + Changed the way the plist_id argument of H5Dvlen_reclaim() is + checked so that it's more specific and works when debugging is + turned off. + +./src/H5TB.c + Removed an unused local variable. + +./test/fillval.c +./test/h5test.c +./test/h5test.h + Changed `basename' variables to `base_name' to prevent a + warning about a global with the same name. + +./tools/h5ls.c + Changed `indent' variables to `ind' to prevent a warning about + a global with the same name. + +./tools/h5toh4.c + Commented out declarations for things that normally appear in + system header files since our definitions might be + incompatible with the system and prevent h5toh4 from + compiling. If all looks good on other systems then we can + permanently remove these declarations... + + +Changes since 19990611 +---------------------- + +./doc/html/H5.format.html + Added documentation for opaque data types (bitfield types were + already documented but they were out of order). + +./src/H5E.c + Fixed a bug with glibc2 on linux systems where `stdout' is an + extern and can't be used to initialize static data. + +./src/H5T.c +./src/H5Tpkg.h +./src/H5Tpublic.h +./src/H5detect.c + Removed the `_T' from the new C9x types I just added so the + names are consistent with existing types. Besides, the fact + that something is a datatype is obvious because it starts with + H5T_NATIVE_. + +./tools/h5ls.c + Added the new C9x data types. H5ls prints one of these types + only if it doesn't match one of the builtin C types. + + Prints the OID for shared data types. + + Fixed a formatting bug with symbolic links which was + introduced a few changes ago. + + The commandline has been changed so that objects from multiple + files can be listed with a single command. Instead of + specifying a file name and an optional list of objects, each + thing to print is a file name and object concatenated. H5ls + figures out how to devide the name into a file name and object + name even when the file name part doesn't correspond to an + actual Unix file. + + Old syntax: h5ls [OPTIONS] FILE [OBJECTS] + New syntax: h5ls [OPTIONS] FILE[/OBJECT] [FILE[/OBJECT]]... + + Example ({X,Y} is expanded by the shell) + + Old command: h5ls -d ../test/x.data dir1 dir2 + New command: h5ls -d ../test/x.data/{dir1,dir2} + + The filename is printed as part of the object name when full + names are requested (--full or --recursive). If people really + don't like this they can undefine a constant at the top of + h5ls. + + Errors from the hdf5 library are turned off. + + Commandline switches of the form `--width 80' are accepted in + addition to `--width=80'. This is more symmetric with + single-letter switches that take two forms: `-w 80' and + `-w80'. + +./src/H5D.c + Added tracing instrumentation for H5Dvlen_reclaim(). + +./src/H5private.h + Added casts to int for the isalpha() et al macros to shut up + solaris warnings about char subscripts. + + +Changes since 19990608 +---------------------- + +./configure.in +./configure [REGENERATED] +./src/H5T.c +./src/H5Tpkg.h +./src/H5Tpublic.h +./src/H5config.h.in [REGENERATED] +./src/H5detect.c +./src/H5private.h + Added checks for the C9x integer types like int32_t, + int_least32_t, and int_fast32_t and the unsigned + versions. HDF5 defines H5T_NATIVE_* versions (all caps) to be + the same as the type provided by the C library, otherwise it + defines them as integers exactly the specified size. Hardware + type conversion functions are used when the types + match some C-language type (like `int'). + +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 + +Changes since 19990607 +---------------------- + +./tools/h5ls.c +./tools/h5tools.c + Added support for printing bitfields and opaque data. + +./test/dsets.c + Added bitfield and opaque datasets to the output file so h5ls + has something interesting to print. + +./test/trefer.c + Resync'd + +./src/H5Tconv.c + Fixed bitfield conversion which resulted in possible garbage + in high-order bits of destination when the destination type is + larger than the source type. Thanks for spotting it, Quincey. + +Changes since 19990607 +---------------------- + +./tools/h5tools.c + Finished code which prints references (object and dataset + region). Patrick, if you tell me how h5dump should (or might + want to) print references I can make some changes to support + various formats... + + You can try it out with: + + cd test + env HDF5_NOCLEANUP=yes ./testhdf5 + ../tools/h5ls -dvr trefer1.h5 + ../tools/h5ls -dvr trefer2.h5 + + (run h5ls with no arguments if you forgot what the switches do) + + +./test/trefer.c + Call calloc instead of malloc in one place to prevent + uninitialized data from being written into the file. + +Changes since 19990607 +---------------------- + +./tools/h5ls.c +./tools/h5tools.c +./tools/h5tools.h + Finished the `-x' or `--hexdump' switch, which causes all data + to be printed in hexadecimal format with no translation from + file to memory data type. + +Changes since 19990602 +---------------------- + +./doc/html/Datatypes.html +./test/dtypes.c + Added documentation and tests for opaque types. + +./tools/h5ls.c + Added a `-x' or `--hexdump' argument which is not fully + implemented (because I want to synchronize h5tools.c first) + but which will eventually print raw data in hexadecimal format + without any translation from disk. This would be useful for + debugging references and VL types. + +./tools/h5tools.c + Added support for references (not quite finished yet, but + compiles -- I wanted to sync up this file before Patrick and I + got too far apart...) + + +./src/H5R.c + Checked for error return value from H5R_get_object_type() + +./src/H5A.c +./src/H5D.c + Changed error return values from NULL to FAIL + +./test/Makefile.in +./test/trefer.c + Creates trefer1.h5 and trefer2.h5 so that the second test + doesn't clobber the first file since the files might be useful + for debugging. + + +Changes since 19990430 +---------------------- + +Remove changes from CVS + +./bin/release + Added a `--nocheck' switch which causes the script to not + check the contents of the MANIFEST file against CVS. This is + sometimes useful when you need to make a quick snapshot but + the MANIFEST file is not quite up to date. + +./src/H5D.c + Removed warnings for unused variables + +./src/H5Fprivate.h + Removed the WIN32 definition for `uint' and changed the data + type for `eof_written' from `uint' to `uintn'. Shouldn't this + really be `hbool_t'? + +./src/H5Odtype.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tpublic.h +./test/dtypes.c +./doc/html/H5.format.html + Added support for bitfields and opaque data types. + +Changes since 19990427 +---------------------- + +./tools/h5ls.c + Added a `--address' (`-a') switch which causes h5ls to display + file addresses for raw data. For contiguous datasets it's just + a nice simple number, but for chunked datasets it's a list of + logical dataset coordinates, file addresses, filter masks, and + storage sizes. + + Changed `--dump' switch to `--data'. + +./src/H5D.c +./src/H5F.c +./src/H5Fprivate.h + Enhanced the indexed-storage B-tree iterator so it can dump + raw data addresses (and other info) to the standard error + stream. + + Added H5Ddebug() so h5ls has a way to dump addresses for + datasets. I'm not sure what else this API function should do, + so I think we should discuss it before we document it. So far, + h5ls is the only thing that uses it, and we can easily change + that. + +./src/H5Tconv.c +./test/dtypes.c + Finally had a chance to verify Paul's H5T_conv_s_s (general + string to string conversions) bug fixes and incorporate them + into H5T_conv_f_f (general floating-point to floating-point + conversions) and H5T_conv_i_i (general integer to integer + conversons). Thanks Paul. + +./src/H5D.c +./src/H5S.c +./src/H5Sprivate.h + Added performance timers around data space read and write + callbacks. They were already there for the gather/scatter + callbacks. + + The timings for read/write callbacks are displayed along with + gather/scatter when data space debugging is turned on. + +./bin/iostats + Updated to print totals. Added a `--fast' option that doesn't + do any output except the totals and is much faster. + +./bin/trace + Changed __unused__ to UNUSED to match source code. + +./config/gnu-flags + Updated error message for pgcc. I've sent bug reports to the + pgcc people but the new version still has the same bug. + +./configure.in +./config/conclude.in +./config/depend.in + Fixed dependencies for non-GNU makes when run in a directory + other than the hdf5 source tree. + + Updated GNU `make dep' rules to copy the distributed + dependencies for non-GNU makes into the source tree when run + in some other directory. + +Changes since 19990426 +---------------------- + +./tools/h5tools.c +./tools/h5tools.h + Finally fixed a long-standing bug that caused core dumps if + a compound datum rendered to more than some number of + characters (we kept bumping up the limit at the risk of + violating stack size limits on some machines). The fix works + only on systems that have the vsnprintf() function (otherwise + a 4kB limit is imposed, which if violated probably dumps + core). If vsnprintf() is present then the library dynamically + allocates space for the output string. + + Also made it possible to control how compound data is rendered + across multiple lines of output by allowing the caller to + specify where optional line-breaks get inserted. The output + functions split up the value at one or more optional + line-breaks to prevent it from wrapping around the screen. + + If a datum doesn't fit on the current line but would fit on + the next line then it is printed on the next line regardless + of whether optional line-breaks would have prevent wrapping + around the screen. This makes it easier to find the beginnings + of compound data values. This feature is disabled by default + but can be enabled by the application. + + If a datum doesn't fit on the current line and the previous + datum also occupied more than one line then we move to the + next line before printing. This makes it easier to find the + beginnings of compound data values but prevents the output + from looking fragmented if there are only a few long values + among mostly short values. This feature is disabled by + default but can be enabled by the application. + + The application can control the printf() formats used for all + the native data types. The defaults are what the library used + to use: %g, %ld, %lu, %d, and %u + +./tools/h5ls.c + Compound datatype values can now be split across multiple + lines of output instead of just wrapping. Also, when lots of + compound values are too long they all start at the beginning + of a line. This only required about 10 lines of changes in the + setup for tools library calls (I didn't modify the h5dump + program because it uses its own version of the tools library + that forked off long ago). + + Added code for Win32 which is unable to cast `unsigned long + long' to `double'. If the dataset size exceeds (2^63)-1 then + the percent utilization is not displayed (this is easily + possible with chunked datasets). This is untested yet. + +./configure.in +./src/H5config.h.in +./src/H5.c +./src/H5private.h + Check for vsnprintf() and provide a simple, stupid definition + if it isn't available. The stupid definition just calls + vsprintf() and ignores the second argument. This can result in + buffer overflows in h5ls and h5dump since vsprintf() is an + unsafe function (and anyone can create an hdf5 file that runs + an arbitrary command from h5ls and h5dump in that case)! + +./config/conclude.in + Remove more *.o files for `make clean' + +./src/H5A.c +./src/H5D.c +./src/H5F.c +./src/H5I.c +./src/H5Iprivate.h +./src/H5P.c +./src/H5R.c +./src/H5RA.c +./src/H5S.c +./src/H5T.c +./src/H5TB.c + Cleaned up a memory leak during H5_term_library() by allowing + H5I_clear_group() to skip items that couldn't be freed. This + allows the item to remain in the group until we can free it + later. + +./src/H5F.c + The H5F_close_all() function fails if a file cannot be closed. + +Changes since 19990426 +---------------------- + +./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. + +Changes since 19990423 +---------------------- + +./src/H5B.c +./src/H5D.c +./src/H5F.c +./src/H5Farray.c +./src/H5Fcore.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fmpio.c +./src/H5Fprivate.h +./src/H5Fsec2.c +./src/H5Fsplit.c +./src/H5Fstdio.c +./src/H5Gnode.c +./src/H5HG.c +./src/H5HL.c +./src/H5O.c + Changed H5F_block_read/write() to take a file transfer + property list instead of just a parallel I/O mode. This will + allow us to pass additional parameters to the I/O functions + without having so many arguments to worry about. + + This fixes a bug I introduced last Friday for parallel HDF5 + +./src/H5B.c + Fixed decoding of B-tree keys when iterating through the + leaves of the B-tree. This fixes a bug for applications that are + adding new entries to groups and also listing the groups. + +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. + + +Changes since 19990402 +---------------------- + +./config/commence.in +./config/conclude.in +./test/Makefile.in +./tools/Makefile.in + Fixed so private libraries are not installed publicly. + + The installation directories `bin', `include', and `lib' are + created mode 755. + +./src/H5.c +./src/H5A.c +./src/H5F.c +./src/H5Fcore.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fmpio.c +./src/H5Fsec2.c +./src/H5Fstdio.c +./src/H5G.c +./src/H5Gent.c +./src/H5Gnode.c +./src/H5HG.c +./src/H5HL.c +./src/H5O.c +./src/H5Oattr.c +./src/H5Ocomp.c +./src/H5Ocont.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Ofill.c +./src/H5Olayout.c +./src/H5Omtime.c +./src/H5Oname.c +./src/H5Osdspace.c +./src/H5Oshared.c +./src/H5Ostab.c +./src/H5R.c +./src/H5Sall.c +./src/H5Shyper.c +./src/H5Smpio.c +./src/H5Snone.c +./src/H5Spoint.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Vprivate.h +./src/H5Z.c +./src/H5detect.c +./src/H5private.h +./test/chunk.c +./test/dsets.c +./test/dtypes.c +./test/h5test.c +./test/overhead.c +./test/ragged.c +./test/tattr.c +./tools/h5dump.c +./tools/h5findshd.c +./tools/h5ls.c + Changed `__unused__' to `UNUSED' to fix a conflict with GNU + header files. + +./src/H5Tpkg.h +./test/h5test.h + Removed __unused__ from forward function declarations. + +./src/H5P.c + Removed a comment about restrictions for the type conversion + temporary buffers. Thanks to Quincey, the comment no longer + applied. + +./src/H5T.c + Relaxed the H5Tpack() a little so it would pack compound data + structures that had non-transient atomic members. + +./tools/h5ls.c + Added a `-g' (or `--group') flag that causes information to be + printed about the specified group instead of the group's + contents. (sort of like Unix's `ls -d'). The `-g' can be used + in combination with `-r' to print information about the group + and its contents. + +Changes since 19990330 +---------------------- + +./src/H5A.c +./src/H5D.c + The `bkg' buffers are zeroed before calling the type + conversion function. This fixes a problem where reading a file + compound data structure into memory results in garbage between + the members. + +./src/H5I.c + Fixed H5I_clear_group() so it removes entries even when a free + callback is not registered. This fixes fixes an `infinite loop + closing library' warning message. + +./src/H5.c + Added ellipses to the end of the infinite loop message. + +Changes since 19990322 +---------------------- + +./configure.in +./configure [REGENERATED] +./src/H5D.c +./src/H5O.c + Removed H5AC, H5B, and H5T from the default list of packages + to debug (because they're pretty expensive debugging), and + added H5O. Also fixed a bug for undefined variable in H5D when + H5S debugging is turned on but H5T debugging is turned off. + +./config/conclude.in + Fixed installation of header files for building in a directory + other than the source directory. This fixes a bug where + H5config.h wasn't being installed. + +./src/H5.c +./src/H5A.c +./src/H5D.c +./src/H5F.c +./src/H5G.c +./src/H5I.c +./src/H5Iprivate.h +./src/H5P.c +./src/H5R.c +./src/H5RA.c +./src/H5S.c +./src/H5T.c +./src/H5TB.c +./src/H5Tprivate.h +./src/H5Z.c +./src/H5detect.c +./src/H5private.h + Changed the way the library shuts down again. Now it handles + cycles between packages and isn't so sensitive to dependencies + between packages. A package might shut down only to be + restarted to process a request from some other package being + shut down. Loops are detected after 100 iterations and the + shutdown is aborted with a message on standard error. This + also makes it a lot easier to debug. + +./src/H5A.c + Fixed H5A_write() and H5A_read() so they pass a non-null + background buffer to the conversion functions. This is + necessary when an attribute has a compound data type. + +./src/H5Flow.c +./src/H5Fprivate.h +./src/H5Fsec2.c + Reindented new Win32 stuff. + +./src/H5Odtype.c + Fixed a bug when enumeration types are used in a compound data + type. The byte pointer wasn't incremented after the type + information was written. + +./tools/h5ls.c + Compound data types display their total size because it's not + always obvious from looking at the members. + + Scalar attributes show their space as `scalar' instead of + `{}'. + + The index value is not printed for attributes that have only a + few values. Instead the word `Data:' is printed on the first + line of attribute data. + + Named types display their data type only if verbose output was + requested. + +Changes since 19990319 +---------------------- + +./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. + +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. + +Changes since 19990312 +---------------------- + +./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. + +./test/Makefile.in +./testpar/Makefile.in +./tools/Makefile.in + Changed the order that libraries are linked so -lhdf5 is + always before $LDFLAGS. + +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. + +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. + +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. + + +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). + +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. + +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. + +Changes since 19990225 +---------------------- + +./configre.in +./configure [REGENERATED] +./src/H5config.h.in [REGENERATED] +./src/H5detect.c +./src/H5private.h + Checks for existence of <sys/sysinfo.h>, <sys/proc.h> and + setsysinfo() needed on the DEC Alpha to turn off UAC fixing by + the OS. + +Changes since 19990219 +---------------------- + +./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. + +Changes since 19990218 +---------------------- + +./src/H5F.c +./src/H5private.h +./src/H5Ipublic.h +./src/H5O.c + Fixed a rather nasty bug with file closing that caused the + file boot block to be updated incorrectly, effectively + truncating the file. The bug I fixed was triggered by: + + 1. Create a file, F + 2. Open an object, X + 3. Close file F + 4. Reopen file F for read/write. + 5. Create and close some objects + 6. Close file F + 7. Close library (exit). + + Step 3 pended the close because object X is still open, but + the file ID was removed from the H5I_FILE ID group. Step 4 + created a new file because it didn't see any matching file on + the H5I_FILE ID group. Step 5 extends the file. Step 6 writes + the new file boot block to disk. Step 7 closes object X and + completes the close from step 3, writing the old boot block + information to disk. + + The new behavior is that step 3 moves the file from the + H5I_FILE group to the H5I_FILE_CLOSING group. Step 4 searches + both groups and finds the file. Step 5 extends the file using + the same H5F_file_t struct as step 3. Step 6 closes the H5F_t + struct opened in step 3 but not the H5F_file_t struct shared + by steps 1 and 3. Step 7 closes object X which closes the + H5F_file_t from step 1, flushing the boot block which was + shared by all steps. + +./src/H5F.c + Added some bulletproofing to file reference counting and + removed comments which no longer apply. Added H5F_flush_all() + and H5F_close_all() which apply to all files. + +./src/H5A.c +./src/H5D.c +./src/H5F.c +./src/H5G.c +./src/H5I.c +./src/H5Iprivate.h +./src/H5R.c +./src/H5RA.c +./src/H5S.c +./src/H5T.c + Added the new H5I_free_t data type to describe the function + type to be passed as the `free_func' argument to + H5I_init_group(). + +./src/H5I.c + Bulletproofed the object removal functions. Removed comments + which no longer apply. Changed global variable names so they + don't violate the naming scheme. Added H5I_debug() that prints + the contents of an ID group. Removed H5I_inc_ref() because it + isn't used. Reindented a couple of functions. + +./src/H5.c +./src/H5G.c +./src/H5Ipublic.h + Changed H5I_MAXID to H5I_NGROUPS to better relect the fact + that it's the total number of valid ID groups. + +./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. + +Changes since 19990215 +---------------------- + +./src/H5.c + Fixed more dependency problems in H5_term_library(). There was + a bug in the previous version that could cause the wrong EOF + marker to be written to the boot block under certain + circumstances. Hopefully this fixes it although I don't ready + access to a test case (Mark Miller will test it). + +./src/H5F.c +./src/H5Fprivate.h + Added an H5F_close_all() that is similar to + H5F_term_interface() but which doesn't close the + interface. Files that don't have open object headers are + closed, others are delayed until all object headers close. All + files are flushed. + +./src/H5ACprivate.h +./src/H5Bprivate.h +./src/H5Dprivate.h +./src/H5Eprivate.h +./src/H5Fprivate.h +./src/H5Gpkg.h +./src/H5Gprivate.h +./src/H5Gpublic.h +./src/H5HGprivate.h +./src/H5HLprivate.h +./src/H5Iprivate.h +./src/H5MFprivate.h +./src/H5MMprivate.h +./src/H5Oprivate.h +./src/H5Pprivate.h +./src/H5Ppublic.h +./src/H5RAprivate.h +./src/H5Sprivate.h +./src/H5Spublic.h +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h +./src/H5Vprivate.h +./src/H5Zprivate.h +./src/H5private.h +./src/H5public.h + Reindented after __DLL__ was added. + + +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. + +Changes since 19990118 +---------------------- + +./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 terminal 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'. + +Changes since 19990105 +---------------------- + +./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. + + +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'. + +./src/H5.c +./src/H5private.h + Renamed `library_initialize_g' to `H5_libinit_g' to make it + conform to our naming scheme. + +./src/H5I.c + Fixed a bug in H5I_dec_ref() that caused the return value to + always be zero instead of the new reference count. + +./src/H5.c +./src/H5Odtype.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h +./test/Makefile.in +./test/dtypes.c +./test/enum.c [NEW] + Added support for enumeration data types. + +./src/H5RA.c + Renamed H5T_insert() to H5T_struct_insert() and added + H5T_enum_insert(). + +./src/H5RA.c +./src/H5Shyper.c + Added casts to size_t for the third argument of memcpy() to + shut up a warning message from insure++. + +./src/H5T.c + Changed "can't" to "unable to" in some error messages to be + more consistent. + +./src/H5detect.c + If fork() or waitpid() are unavailable then we assume no + alignment constraints. Hopefully this is the case only on NT + and Intel CPU's don't have alignment constraints. + +./test/fillval.c +./test/istore.c + Fixed memory leaks during error handling. + +./tools/h5ls.c + Displays enumeration type information. + +./tools/h5tools.c + Displays enumerated data using symbol names. + +./src/H5public.h + Include <limits.h> because the H5T_NATIVE_CHAR macro needs the + definition for CHAR_MIN. + +Changes since 19981214 +---------------------- + +./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. + +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. + + +Changes since 19981125 +---------------------- + +./src/H5HG.c + Fixed a bug in the alignment calculation for the heap free + space. The reference test passes now. + +Changes since 19981125 +---------------------- + +./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. + +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. + +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. + +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. + +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. + +Changes since 19981119 +---------------------- + +./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. + +Changes since 19981118 +---------------------- + +./src/H5.c +./src/H5Smpio.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpublic.h +./src/H5detect.c +./src/H5private.h +./src/H5public.h +./test/big.c + The `long long' type isn't quite as prevalent as we had hoped; + there is at least one system that defines `__int64' but not + `long long'. Therefore, I've temporarily changed all + occurrences of `long long' to `long_long' and then #define + that in H5private.h based on the existence of `long long' or + `__int64'. This gets rid of some #ifdef's in other parts of the code. + The semantics of the hdf5 types are: + + *int8_t Exactly one byte + *int16_t At least two bytes. We favor 32-bit integers over + 16-bit integers if the 16-bit integer is 4-bytes wide + (Cray) + *int32_t At least four bytes. + *int64_t At least eight bytes + long_long The widest integral integer type + + The H5Smpio.c contains debugging code which is non-portable. + +./tools/h5ls.c + Changed the order native types are detected so we favor the name `int' + over `short' or `long' if two of them are the same size. + +./config/conclude.in + Added a rule to make test programs depend on the hdf5 library. This + fixes a make 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. + +Changes since 19981116 +---------------------- + +./INSTALL.parallel [NEW] + We're beginning to unify some of the parallel installation + steps. This file will contain general information for + installing the parallel library. It's not complete yet. + +./configure.in +./configure [REGENERATED] +./src/H5config.h.in [REGENERATED] + Check for xdr_int() in libnsl required on Solaris when linking + with hdf4. It's found on the Irix system I tested which + complains that `-lnsl' didn't resolve any symbols. Oh well. + + Fixed the order of searching for libdf and libmfhdf for hdf4 + linking. + +./configure.in +./configure [REGENERATED] +./src/H5config.h.in [REGENERATED] +./src/H5Z.c + Check for compress() in libz in order to find older versions + of the library that will still work for hdf4. Added a + separate check for compress2() that hdf5 will use. + +./configure.in +./configure [REGENERATED] +./src/H5config.h.in [REGENERATED] +./src/H5.c +./src/H5private.h +./src/H5A.c +./src/H5B.c +./src/H5Bprivate.h +./src/H5D.c +./src/H5F.c +./src/H5Farray.c +./src/H5Fcore.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fmpio.c +./src/H5Fprivate.h +./src/H5Fsec2.c +./src/H5Fsplit.c +./src/H5Fstdio.c +./src/H5Gent.c +./src/H5Gnode.c +./src/H5Gpkg.h +./src/H5Gprivate.h +./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/H5Oprivate.h +./src/H5Osdspace.c +./src/H5Oshared.c +./src/H5Ostab.c +./src/H5R.c +./src/H5RA.c +./src/H5Sall.c +./src/H5Shyper.c +./src/H5Snone.c +./src/H5Spoint.c +./src/H5Sprivate.h +./src/H5Sselect.c +./src/H5T.c +./src/H5Tbit.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5V.c +./test/bittests.c +./test/gheap.c +./test/hyperslab.c +./test/istore.c +./test/tmeta.c +./test/trefer.c +./test/tselect.c +./tools/h5debug.c +./tools/h5tols.c + Added checks for Posix.1g types like `int8_t'. If not defined + then H5private.h defines them. Changed all `int8' etc. to + `int8_t'. + +./src/H5A.c +./src/H5D.c +./src/H5F.c +./src/H5G.c +./src/H5I.c +./src/H5P.c +./src/H5R.c +./src/H5RA.c +./src/H5S.c +./src/H5T.c +./src/H5TB.c +./src/H5Z.c + Calling H5*_term_interface() resets interface_initialize_g to + FALSE so a subsequent call to H5open() (implied or explicit) + reinitializes global variables properly. + +./src/H5private.h +./src/H5Oefl.c +./src/H5S.c + Changed MAX_SIZET, MAX_SSIZET, MAX_HSIZET, and MAX_HSSIZET to + SIZET_MAX, SSIZET_MAX, HSIZET_MAX, and HSSIZE_MAX to they + match the Posix.1 constants in <limits.h>. + +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5detect.c + Added 36 more integer hardware conversion functions to the + type conversion table for conversions to/from `long long' and + `unsigned long long'. The `long long' names will be changed + shortly to make them portable to Win32. + + Changed H5T_init() to H5T_native_open() and added an + H5T_native_close() to open and close the predefined native + data types. + + Increased the initial size of the type conversion table from + 64 to 128 entries. + + Reordered the 90 new integer conversion functions so the names + that are printed favor `int' over `short' or `long' when two + of them are the same. + +./test/dtypes.c + Added hardware and software integer conversion tests for the + 56 functions I added recently but not the additional 36 + checked in this time. That will come next. + + Call H5close() after each test so type conversion statistics + are easier to follow. Try this: $ HDF5_DEBUG=t ./dtypes + + Added more debugging output for when things go wrong. + +./src/H5private.h + Removed trailing carriage-returns inserted by broken operating + system ;-) + + +Changes since 19981113 +---------------------- + +./config/conclude.in +./test/Makefile.in +./tools/Makefile.in + The Makefile $TESTS variable has finally been split into + $TEST_PROGS and $TEST_SCRIPTS with the latter being the names + of shell scripts that need to be run with `/bin/sh'. Now we + don't have to copy each shell script before we run it. NOTE: + THIS CHANGE DOES NOT AFFECT THE PABLO MAKEFILE SINCE THAT FILE + IS A COPY OF A PREVIOUSLY GENERATED MAKEFILE. + +./src/Makefile.in + Added H5Snone.c to the source list. + +./src/H5G.c + Plugged a memory leak by emptying the object type "isa" table + when the library is closed. + +./src/H5Tconv.c +./src/H5Tpkg.h + Added 48 new type functions to take advantage of hardware for + integer type conversions. These functions are not registered + in the conversion table yet because I haven't fully tested + them. + +./src/H5Tpkg.h + Removed __unused__ qualifiers from prototypes. + + +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. + +Changes since 19981106 +---------------------- + +./tools/h5ls.c + The chunk dimensions and total size is printed for chunked datasets. + +./examples/h5_attribute.c +./examples/h5_select.c +./test/chunk.c +./test/iopipe.c +./test/ragged.c +./src/H5.c +./src/H5private.h +./src/H5public.h + Removed extra carriage-return characters inserted by a broken + OS :-) + + Reformatted strange-looking comments. + + Removed C++ comments. + + Wrapped long lines. + +./examples/h5_attribute.c +./examples/h5_select.c + Removed inclusion of private headers. + + Changed `uint32' (originally `uint') to `unsigned' because + `int32' is not exported as part of the API. + +./src/H5Fmpio.h + Removed includes for <sys/types.h> and <sys/stat.h> since + they're already included by H5private.h. All system include + files should be included in H5private.h so we can wrap them + with appropriate feature macros. + +./tools/h5import.c +./tools/h5repart.c + Included header files like all other programs in that + directory. + +./tools/h5tools.c + Better type checking for `hsize_t' and `hssize_t'. + + +Changes since 19981105 +---------------------- + +./configure.in +./acconfig.h +./configure [REGENERATED] +./src/H5config.h.in [REGENERATED] + Added checks for functions, structs, constants, and header + files used in h5ls.c to determine the output width with + various Windows compilers and Unix variants. + + Added check for <sys/stat.h> and defined + HAVE_SYS_STAT_H. Included <sys/stat.h> in H5private.h outside + the Posix.1 #include's section. + +./src/H5RA.c + Less aggressive about failing -- rather returns false, which + allows type detection to continue. + +./src/h5ls.c + Data types are displayed for datasets and named data types when + `-v' or `--verbose' is specified on the command-line. The + algorithm is a little different than the dumper because we're + trying to be human-friendly, not necessarily machine-friendly. + + * Any data type which matches a native C type gets printed + something like `native double'. + + * A floating point type that matches one of the IEEE standard + types but not one of the native types gets printed like `IEEE + 64-bit big-endian float'. + + * Other floating point values have information about sign bit + location; exponent size, location, and bias; and significand + size, location, and normalization. + + * Padding and offsets are displayed for types that have + padding (precision != size), including internal padding for + some floating point data types. + + * Non-native integer types are displayed like `32-bit + little-endian unsigned integer'. + + * Compound data types have each member displayed including the + member name, byte offset within the struct, dimensions, index + permutation, and data type. + + * String types are displayed like `256-byte null-terminated + ASCII string'. + + * References are displayed like `8-byte unknown reference' + until the reference interface stabilizes a little. + + * All other types including types not yet defined will be + printed like `4-byte class-9 unknown'. + + The dimensionality of scalar datasets is printed like `{SCALAR}' + instead of just `{}'. + + If external raw files are used to store a dataset then the offsets, + sizes, and file names of each are printed if `-v' or `--verbose' + was given on the command-line. + + If an object is found and h5ls can't determine the object type then + it still tries to print the number of hard links, the OID, and any + comment that might be present if `-v' or `--verbose' was specified. + + If the `-d' or `--dump' switch is turned on then ragged arrays will + report that the data can only be dumped by dumping the component + datasets explicitly. I'm not planning to implement this since + we're going to eventually change the whole way ragged arrays are + stored. + + Compound data values do not have the component names displayed by + default when `-v' or `--verbose' is turned on. Instead, the names + can be displayed with `-l' or `--label'. + + The output width is determined by the first rule that applies: + + * If the `-wN', `-w N' or `--width=N' switch appeared on + the command line then use N for the output width. + + * Query the OS for the tty width in a highly unportable way + borrowed from GNU `less' depending on what functions and + data structures were found during configuration (if any): + _getvideoconfig(), gettextinfo(), _srcsize(), ioctl(), + GetConsoleScreenBufferInfo(), struct videoconfig, struct + text_info, the TIOCGWINSZ ioctl, the TIOCGETD ioctl. + + * If the `COLUMNS' environment variable is set then use + its value. + + * Use the value 80. + + Just for kicks, run Mark and Jim's test_vbt and then say `h5ls -dlsv + test.vbt'. You can also try it on the various *.h5 files in the + test/example directories. + +./config/linux + Removed turning on parallel by default on Robb's macine. + + +Changes since 19981102 +---------------------- + +./bin/snapshot + Made same fix as for the release script yesterday. + +./src/H5D.c +./src/H5Dprivate.h +./src/H5G.c +./src/H5Gprivate.h +./src/H5Gpublic.h +./src/H5O.c +./src/H5Oprivate.h +./src/H5RA.c +./src/H5RAprivate.h +./src/H5T.c +./src/H5Tprivate.h + Improved object type checking. Instead of determining the + object type by trying to open each of the possible types, we + keep a table of associations between object type number (like + H5G_GROUP, H5G_DATASET, H5D_TYPE, and H5D_RAGGED) and an `isa' + function that returns true if the object header has the right + messages to make the object a particular type. This mechanism + also allows specialization of object types by permitting an + object to satisfy more than one `isa' function. + + Added `isa' functions for groups, datasets, ragged arrays, and + committed data types. + +./src/H5config.h.in + Added HAVE_STAT_ST_BLOCKS. I thought this had already been + added, but apparently not. + +./tools/h5ls.c + Removed system include files since they're already included by + H5private.h and since I wasn't including them portably anyway. + + By default, 1-byte integer types are printed as integer values + instead of ASCII characters. However, the `-s' or `--string' + command-line switch causes the data to be interpretted as + ASCII. String data types are always printed as character + data. + + Ragged arrays are now identified as ragged arrays and h5ls + doesn't descend into the group automatically. This uses the + new object type specialization stuff. + +./tools/h5tools.c +./tools/h5tools.h + Added the ability to print 1-byte integer types as either + ASCII or numeric data instead of always ASCII. The default is + to print as numeric data. + +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. + +Changes since 19981026 +---------------------- + +./INSTALL + Updated version number. Negated information about debugging + and optimizations. + +./RELEASE + Updated version number. Added a `Changes since the Beta + Release' section. Please fill in with anything appropriate. + +./README + Ran bin/release to update the first two lines with the correct + version number. + +./doc/html/Version.html + Added comment about rewinding the version number to 1.0 for + the initial release. + +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. + + +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. + +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. + +Changes since 19981021 +---------------------- + +./src/H5I.c + If we ran out of object ID's (which happens after about 67 + million requests) then we'd wrap back to the first possible ID + but if we ran out a second time (after ~134 million requests) + then H5I_register() failed. Now it continues to wrap as often + as needed. + + If we wrapped to the beginning of the possible ID's and then + requested ID's till we got toward the end of the list then + H5I_register() failed if the last possible ID's were in use. + The new behavior is to try all possible ID's (not just higher + ID's) before giving up. + + +Changes since 19981019 +---------------------- + +./src/H5Fistore.c + Improved the hash function so it mixes bits better. This + results in a few percent improvement in raw data chunk cache + efficiency because there are fewer collisions. + +./test/chunk.c + Added #define's for chunk preemption `w0' value and number of + slots in cache. + +./src/H5B.c + Added some more comments to H5B_insert_helper() and + H5B_remove_helper() and also point to some additional + documentation. + + +Changes since 19981016 +---------------------- + +./src/H5F.c +./src/H5Fpublic.h + Added H5Freopen() as documented in earlier e-mails. This is + really just a wrapper around H5F_new(). + + +Changes since 19981014 +---------------------- + +./bin/trace +./src/H5.c +./src/H5F.c +./src/H5Fprivate.h +./src/H5Fpublic.h + Added a `scope' argument to H5Fflush() which should be either + H5F_SCOPE_LOCAL or H5F_SCOPE_GLOBAL and determines which files + are flushed (just the specified file or the entire virtual + file). + +./src/H5F.c + Added reference counts to the H5F_t struct so we get the + correct behavior between H5Funmount() and H5Fclose(). + +./src/H5O.c + Fixed a memory leak that happens during error handling. + +./test/cmpd_dset.c +./test/unlink.c + Fixed a memory leak. + +./test/mount.c + Enabled the H5Fclose() test. + + +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. + +Changes since 19981008 +---------------------- + +./src/H5F.c +./src/H5Fprivate.h +./src/H5G.c +./src/H5Gpkg.h +./src/H5Gprivate.h +./src/H5Gpublic.h +./test/istore.c +./test/tstab.c + Removed CWG functionality. + +./tools/Makefile.in + Added `_test' where I added `test' last week. Maybe now the + snapshots will start up again... + + +Changes since 19981002 +---------------------- + +./doc/html/H5.format.html +./src/H5HG.c + Fixed a bug in the global heap that caused H5HG_read() to + write past the end of the buffer in certain cases. + +./test/big.c + The test is skipped if hdf5 was configured with + `--disable-hsizet'. + +./src/H5Ofill.c + Data type conversions are implemented for the fill value. + +./src/H5.c + Tracing prints one of H5P_FILE_CREATE, H5P_FILE_ACCESS, + H5P_DATASET_CREATE, H5P_DATASET_XFER, or H5P_MOUNT instead of + the more cryptic H5I_TEMPLATE_* constants. + +./src/H5D.c + Removed prototype for H5D_find_name(). + +./src/H5I.c + The GROUP_MASK and ID_MASK are both calculated from GROUP_BITS + instead of being set by hand. + + We don't use the sign bit of hid_t; all valid hid_t values are + positive so we can say things like `if ((file=H5Fopen(...))<0)'. + + Changed `(int)pow(2.0,x)' to `1<<x' so we don't have to worry + about rounding. + + Fixed H5I_get_type() so it doesn't always fail an assertion. + +./src/H5E.c +./src/H5Epublic.h + Added minor error H5E_MOUNT + +./src/H5F.c +./src/H5Fprivate.h + Added H5Fmount() and H5Funmount(). Mounting and unmounting + works as documented but some of the other things aren't + implemented yet, the biggest being current working groups + always acting on the root of the mount tree, and H5Fclose() + closing the entire tree. The rest of the stuff will be added + shortly... + +./src/H5P.c +./src/H5Ppublic.h + Added the H5P_MOUNT property list but haven't implemented any + particular properties for it yet. + +./src/H5Gstab.c + Hard links across files return an error instead of failing an + assertion. + + + + +Changes since 19981005 +---------------------- + +./src/H5D.c + Fill values are working for contiguous datasets now except + there are two things that need more support from the data + space layer, specifically the ability to form a selection from + the difference of two selections. They are (1) extending an + external contiguous dataset, (2) optimization by delaying the + fill until after the first H5Dwrite(). + + Renamed H5D_allocate() to H5D_init_storage() since allocation + is only part of the story. Added a data space argument so it + doesn't have to query the space from the object header -- the + space is always available in the caller anyway. + + Removed `#ifdef HAVE_PARALLEL' from a few places where it + wasn't necessary. We don't need it around code that doesn't + compile anything from mpi.h or mpio.h. + +./src/H5Fistore.c + Uncommented H5F_istore_alloc() for non-parallel and moved the + `#ifdef HAVE_PARALLEL' just around Kim's barrier. + +./src/H5Fmpio.c + Wrapped a couple long lines. + + Got rid of two signed vs. unsigned comparison warnings. + +./MANIFEST +./test/Makefile.in +./test/fillval.c [NEW] + Added tests for fill values. The contiguous dataset extend + test is disabled until H5S_SELECT_DIFF is implemented. + +./tools/Makefile.in + Fixed a bug where `make test' didn't build the executables + first. This should cause the snapshots to start up again. + +./Makefile.in + Changed to build in `test' directory before `tools' + directory. We want the library tests to pass before we even + start considering the tools. You can still build and/or test + the tools independent of the library tests passing. + +Changes since 19981001 +---------------------- + +./src/H5D.c +./src/H5Fistore.c +./src/H5Fprivate.h + Fixed a couple things for parallel hdf5 that I broke with the + last checkin. + +./src/H5Ofill.c + If no fill value is specified it isn't added to the object + header. + +./tools/h5ls.c + Added a line-feed after `Unknown object' is printed. + +./tools/h5tools.c + Fixed printing of scalar values. Need to still track down a + failed assertion when H5Sselect_hyperslab() is called with a + zero size.... + +Changes since 19980930 +---------------------- + +./MANIFEST +./doc/html/H5.format.html +./src/H5D.c +./src/H5Dprivate.h +./src/H5Farray.c +./src/H5Fistore.c +./src/H5Fprivate.h +./src/H5O.c +./src/H5Ofill.c [NEW] +./src/H5Oprivate.h +./src/H5P.c +./src/H5Ppublic.h +./src/H5Sall.c +./src/H5Shyper.c +./src/H5Spoint.c +./src/H5Sprivate.h +./src/Makefile.in + Added fill values as documented in previous e-mails. They only + work for chunked datasets so far. + +./src/H5E.c +./src/H5Epublic.h +./src/H5P.c + Changed H5E_TEMPLATE to H5E_PLIST. + +./src/H5Omtime.c +./src/H5V.c + Fixed a typo in a comment. + +./src/H5Tconv.c + Fixed a bug in compound type conversions that caused an + assertion to fail. + +Changes since 19980930 +---------------------- + +./src/H5G.c +./test/unlink.c + Renaming a symbolic link works like on Unix: the link is + renamed but the link value is unchanged. + +Changes since 19980928 +---------------------- + +./MANIFEST + Changed freebsd2.2.1 to freebsd2.2.7 to match change in file name. + + Added a few missing files. Are all of these supposed to be + distributed? + + ./tools/testfiles/h5dumptst.c + + ./tools/testfiles/tall-1.ddl + + ./tools/testfiles/tall-2.ddl + + ./tools/testfiles/tall-3.ddl + ./tools/testfiles/tall.ddl + ./tools/testfiles/tall.h5 + + ./tools/testfiles/tattr-1.ddl + + ./tools/testfiles/tattr-2.ddl + + ./tools/testfiles/tattr-3.ddl + + ./tools/testfiles/tattr-4.ddl + ./tools/testfiles/tattr.ddl + ./tools/testfiles/tattr.h5 + + ./tools/testfiles/tdset-1.ddl + + ./tools/testfiles/tdset-2.ddl + + ./tools/testfiles/tdset-3.ddl + + ./tools/testfiles/tdset-4.ddl + ./tools/testfiles/tdset.ddl + ./tools/testfiles/tdset.h5 + + ./tools/testfiles/tgroup-1.ddl + + ./tools/testfiles/tgroup-2.ddl + + ./tools/testfiles/tgroup-3.ddl + ./tools/testfiles/tgroup.ddl + ./tools/testfiles/tgroup.h5 + + ./tools/testfiles/tslink-1.ddl + + ./tools/testfiles/tslink-2.ddl + ./tools/testfiles/tslink.ddl + ./tools/testfiles/tslink.h5 + +./src/H5B.c +./src/H5Bprivate.h +./src/H5D.c +./src/H5Dprivate.h +./src/H5Farray.c +./src/H5Fistore.c +./src/H5Fprivate.h +./src/H5Gstab.c +./src/H5P.c +./src/H5Ppublic.h +./src/H5Sall.c +./src/H5Shyper.c +./src/H5Spoint.c +./src/H5Sprivate.h +./test/istore.c + Implemented split ratios as documented in previous + e-mails. Frank, the new API functions are H5Pget_btree_ratios() + and H5Pset_btree_ratios(). + +./src/H5Sall.c +./src/H5Shyper.c +./src/H5Spoint.c +./src/H5Sprivate.h + Added more type checking for the data transfer property list + passed to these functions. + +./src/H5D.c + Added a dataset transfer property list as an argument to + H5D_allocate() for the parallel version in order to pass split + ratios down to H5F_istore_lock(). Eventually we won't need + the split ratios for H5D_allocate() because we'll build a + completely full B-tree from the leaves up, but it might be + useful to have other transfer properties at that level + anyway. I always caled H5D_allocate() with &H5D_dflt_xfer. + +./MANIFEST +./test/Makefile.in +./test/overhead.c [NEW] + Added an `overhead' test run by `make timings'. + + +Changes since 19980924 +---------------------- + +./MANIFEST +./src/H5B.c +./src/H5Bprivate.h +./src/H5G.c +./src/H5Gnode.c +./src/H5Gprivate.h +./test/Makefile.in +./test/unlink.c + Finished H5Gunlink() and H5Grename(). + +./src/H5F.c +./src/H5Fistore.c +./src/H5Fprivate.h + Removed the last memcpy() from the chunk cache. + +./src/H5Fistore.c + The offset of a chunk within a dataset is an 8-byte quantity + per dimension instead of 4 bytes. + +./src/H5HL.c + Fixed infinite loops in H5HL_remove(). + + + +Changes since 19980922 +---------------------- + +./src/H5F.c +./src/H5Fprivate.h +./src/H5P.c +./src/H5Ppublic.h +./test/chunk.c +./test/dsets.c + The number of slots in the raw data cache can be queried or + set with H5Pget/set_cache(), which now take an extra argument. + The default number of slots is 521 and the default maximum + size is 1MB. + +./src/H5Fistore.c +./src/H5Fprivate.h + Finished optimizations. The cache is now a hash and a linked + list instead of an array. The cpu time on my machine for + H5F_istore_lock() has been cut by 60% and H5F_istore_unlock() by + 35%. + +Changes since 19980911 +---------------------- + +This checkin is to fix a couple bugs for Jim Reus. Some features are +not fully implemented but it shouldn't break anything. + +./config/conclude.in +./test/Makefile.in + `make clean' removes object files from the test directory as + well as a couple more *.h5 temp files. + +./config/hpux9.03 [NEW] + New config file for HP/UX 9.03 + +./src/H5B.c +./src/H5Bprivate.h +./src/H5Fistore.c +./src/H5G.c +./src/H5Gnode.c +./src/H5Gpkg.h +./src/H5Gprivate.h +./src/H5Gstab.c + Not-yet-complete version of object removal. + +./src/H5Fistore.c +./src/H5Fprivate.h + Experimental optimizations, disabled by default. + +./src/H5Fprivate.h + Default low-level driver was changed to H5F_LOW_SEC instead of + H5F_LOW_STDIO because the sec2 driver is much easier to debug. + +./src/H5Fsplit.c +./src/H5G.c +./src/H5Z.c + Changed a couple return statements to HRETURN. + +./src/H5Odtype.c + Removed a check for nested compound data types from back when + they weren't implemented that raised an error. + +./tools/h5tools.c + Increased temp buffer sizes and added a check for buffer + overflow so we fail an assertion (hopefully). This really + needs to be fixed sometime. + + Added support for printing H5T_STRING data types. + + + +Changes since 19980910 +---------------------- + +./MANIFEST + Removed duplicate Ragged.html + +./doc/src/Glossary.html + Changed 1.0 to 1.2 since 1.0 is the current development + branch, 1.1 will be development after beta release, and 1.2 + will be the first complete release (see Version.html). + +./test/dsets.c +./test/tstab.c + Added more tests. + +Changes since 19980909 +---------------------- + +./tools/h5ls.c + Changed usage message. + +Changes since 19980908 +---------------------- + +./MANIFEST + Removed ./doc/html/H5.api.html + +./bin/h5vers +./bin/release + Fixed some minor things to make them work better. + +Changes since 19980908 +---------------------- + +./COPYING + Reformatted as text instead of C. Removed zlib crew from the + list of contributors since no zlib code is actually in the + hdf5 library. + +./INSTALL +./INSTALL.ascired +./MANIFEST + Minor updates for Beta release including version number + change. + +./INSTALL_MAINT + Added information about making a release. + +./RELEASE + Updated function list based on public header files. + +./bin/checkposix + Got rid of complaints about some obvious things. + +./doc/html/H5.api.html +./doc/html/RM_H5F.html +./src/H5F.c +./src/H5Fpublic.h +./test/tfile.c + Changed H5Fget_create_template() and H5Fget_access_template() + to H5Fget_create_plist() and H5Fget_access_plist() since that + conforms better to lots of other names. + +./doc/html/Datatypes.html +./doc/html/ExternalFiles.html +./doc/html/Files.html +./doc/html/H5.api.html +./doc/html/H5.sample_code.html +./doc/html/RM_H5F.html +./doc/html/RM_H5Front.html + Changed `template' to `property list', etc. + +./doc/html/Ragged.html [NEW] + Documentation for ragged arrays. + +./src/H5Iprivate.h +./src/H5Ipublic.h +./src/H5I.c + Changed the scope of some symbols to be more local. + +./src/H5.c +./src/H5AC.c +./src/H5D.c +./src/H5E.c +./src/H5F.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fsec2.c +./src/H5Fsplit.c +./src/H5Fstdio.c +./src/H5G.c +./src/H5Gnode.c +./src/H5HG.c +./src/H5I.c +./src/H5O.c +./src/H5Ocomp.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Omtime.c +./src/H5Oname.c +./src/H5P.c +./src/H5S.c +./src/H5Shyper.c +./src/H5Tbit.c +./src/H5Tconv.c +./src/H5V.c +./src/H5Z.c +./src/H5private.h + Fixed some violations of our naming scheme by adding HD to the + beginning of all Posix functions. + + +Changes since 19980904 +---------------------- + +./MANIFEST +./bin/release +./bin/snapshot + The format of the MANIFEST file has been relaxed -- comments + and blank lines should no longer confuse the tools that use + it. + + As before, this file should contain a list of *all* files that + are part of HDF5, which means all files which are managed by + CVS/SVF. However, files can be marked so they're not part of + a release by adding _DO_NOT_DISTRIBUTE_ after the file name. + + I've removed all the *.obj files from the distribution by + adding _DO_NOT_DISTRIBUTE_ after their names. I also removed + the old white-papers that might not apply to the current + version of the library and documentation about chunking + performance since it's wrong now that chunk caching is + implemented. Everyone please check the files you're + responsible for to make sure that they should really be part + of a release. + + To get a list of all files use + grep '^\.' MANIFEST | cut -f1 + + To get a list of files for distribution use: + grep '^\.' MANIFEST | grep -v _DO_NOT_DISTRIBUTE_ + + (These commands assume tabs in the MANIFEST file. If the file + might contain spaces then run it through `unexpand' or `tr' + first). + +./configure.in +./configure +./src/H5config.h.in +./test/ragged.c + Check for sigaction(). + +./test/Makefile.in + The `clean' target removes the timing tests. + +./bin/checkposix + Got rid of complaints about some obvious things. + +./doc/html/H5.api.html +./doc/html/RM_H5F.html +./src/H5F.c +./src/H5Fpublic.h +./test/tfile.c + Changed H5Fget_create_template() and H5Fget_access_template() + to H5Fget_create_plist() and H5Fget_access_plist() since that + conforms better to lots of other names. + +./src/H5Iprivate.h +./src/H5Ipublic.h +./src/H5I.c + Changed the scope of some symbols to be more local. + +./src/H5.c +./src/H5AC.c +./src/H5D.c +./src/H5E.c +./src/H5F.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fsec2.c +./src/H5Fsplit.c +./src/H5Fstdio.c +./src/H5G.c +./src/H5Gnode.c +./src/H5HG.c +./src/H5I.c +./src/H5O.c +./src/H5Ocomp.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Omtime.c +./src/H5Oname.c +./src/H5P.c +./src/H5S.c +./src/H5Shyper.c +./src/H5Tbit.c +./src/H5Tconv.c +./src/H5V.c +./src/H5Z.c +./src/H5private.h + Fixed some violations of our naming scheme by adding HD to the + beginning of all Posix functions. + +Changes since 19980901 +---------------------- + +./test/dtypes.c + Got rid of one of some of the `increases alignment' warnings. + +./test/tselect.c + Got rid of an unused variable. + +Changes since 19980931 +---------------------- + +./test/cmpd_dset.c + Uncommented the last test again and there are still bugs. + +Changes since 19980831 +---------------------- + +./Makefile.in + Running `make distclean' will not fail if one of the + subdirectories has already been cleaned. + +./config/BlankForm +./config/irix5.3 + Cleaned it up more. Added better support/documentation for + systems that have more than one compiler. + +./config/alpha-dec-osf4.0 [NEW] + Added a new config file as a result of testing on Jim Reus's + machine. + +./test/chunk.c + Scaled down the testing range so we can actually run it + interactively. + +./tools/h5import.c + Included <unistd.h> to get rid of warning for close(). + +./src/H5detect.c + Seg-faults on Linux for some reason when NDEBUG is defined, so + I just undef it at the top of the source. + +./test/big.c + Added a fflush(). + +./tools/h5ls.c + The `-d' flag now works even when `-v' isn't specified. + +./examples/h5_chunk_read.c +./examples/h5_compound.c +./examples/h5_extend_write.c +./examples/h5_group.c +./examples/h5_read.c +./examples/h5_write.c + Indented according to hdf5 standards. + + Fixed compiler warnings + + +Changes since 19980828 +---------------------- + +./RELEASE + Updated with important changes I made since the second beta. + +./src/H5A.c +./src/H5D.c +./src/H5Dprivate.h +./src/H5G.c +./src/H5Gprivate.h +./src/H5R.c +./src/H5Rprivate.h +./src/H5T.c +./src/H5Tprivate.h + Any API function that used to take an `hid_t loc_id' followed + by a `const char *name' can now take any type of object for + the loc_id as long as the object is somehow associated with a + file. Internally, H5G_loc() was modified to return an + H5G_entry_t* instead of an H5G_t* so it's more general. + + Among other things, this allows one to retrieve information + about an object like a named type or dataset without knowing + the name of the type or dataset: + + int + get_nlinks (hid_t obj) + { + H5G_stat_t sb; + if (H5Gstat(obj, ".", TRUE, &sb)<0) return -1; + return sb.nlink; + } + +./test/gheap.c +./test/istore.c + These files needed a couple of changes because they call some + of the internal functions whose H5G_t arguments changed to + H5G_entry_t. + +./src/H5A.c + Got rid of all the switch statements for getting symbol table + entries for varous objects and replaced them with a call to + H5G_loc() allowing attributes to automatically apply to any + type of object that belongs to a file. + +./test/Makefile.in + Moved the ragged array tests from the normal list of tests to + the `make timings' target. + +./test/ragged.c + Added rewrite tests -- rewrite the rows of a dataset changing + the number of rows and the length of each row. + +./test/mtime.c + Added a test that checks that H5Gstat() can be called with a + dataset as the first argument. + +./src/H5S.c + Added #ifdef HAVE_PARALLEL around code to check for the + HDF5_MPI_OPT_TYPES environment variable because the global + variable that gets set is #ifdef'd. + +./bin/release + bzip2 uses .bz2 as the file extension. + + +Changes since 19980827 +---------------------- + +./src/H5G.c + Fixed a link count on groups. Groups were always created with + a link count of zero instead of one. + +./src/H5Gpublic.h + Added H5G_NTYPES so applications can easily declare arrays + which are indexed by object type. + +./src/H5O.c + Calling `H5O_link(&ent,0)' will succeed when the file is open + for read only because it's the only way to get the object's + current link count. + +./tools/h5ls.c + Can take non-group object names on the command line (and + multiple objects). Reorganized to be more extendible. The + link count is displayed for `-v'. + +./src/H5F.c + Dumping of cache statistics is controlled by only the + HDF5_DEBUG environment variable and not the H5F_ACC_DEBUG flag + for H5Fopen() and H5Fcreate() since this makes it similar to + the other debugging options. + +./src/H5R.c +./test/ragged.c +./test/Makefile.in + Tests pass but still a little work left to be done. + + +Changes since 19980825 +---------------------- + +./MANIFEST +./src/H5R.c [NEW] +./src/H5Rprivate.h [NEW] +./src/H5Rpublic.h [NEW] +./src/Makefile.in +./src/hdf5.h +./test/ragged.c [NEW] + Preliminary support for 2d ragged arrays for Mark Miller and + Jim Reus. Not fully implemented yet. The test is not actually + part of `make test' because we still have some memory problems. + +./src/H5E.c +./src/H5Epublic.h + Added H5E_RAGGED as a major error number. + +./bin/release + Checks the MANIFEST file against `svf ls' on systems that have + it. + +./bin/trace + Fixed a bug that caused arguments of type `void *x[]' to not + be handled. + +./src/H5.c + Removed unused variables and changed a couple types to + fix compiler warnings. + + Added tracing support for ragged array object ID's and arrays + of pointers. + +./src/H5D.c + H5Dcreate() will complain if either of the property lists are + invalid (instead of using the default). + +./src/H5D.c +./src/H5Dprivate.h + Split H5Dget_space() into an API and internal function so it + can be called from the new ragged array layer. + +./src/H5Fistore.c + Fixed warnings about unsigned vs. signed comparisons. + +./src/H5Flow.c + Fixed a warning about a variable being shadowed in the MPI-IO + stuff. + +./src/H5Iprivate.h +./src/H5Ipublic.h + Added the H5_RAGGED atom group. + +./src/H5Shyper.c + Fixed some freeing-free-memory errors that resulted when + certain arrays were freed but the pointers were left in the + data structures. I simply set the pointers to null after they + were freed. + +./src/H5Sprivate.h +./src/H5Sselect.c + Split the H5Sselect_hyperslab() function into an API and a + private function so it could be called from the ragged array + layer. + + Added H5S_SEL_ERROR and H5S_SEL_N to the switch statements to + get rid or compiler warnings. + +./src/H5Tconv.c + Removed a misleading comment. + +./test/bittests.c + Fixed a warning about a printf(). + +./test/cmpd_dset.c + Fixed warnings about unused variables because of test #11 + being commented out. + +./bin/trace + Shortened the right margin for the output to allow room for + the `);' at the end of the TRACE() macros. + +Changes since 19980824 +---------------------- + + Undocumented changes while at Livermore. + +Changes since 19980818 +---------------------- + +./src/H5.c + Fixed an argument promotion bug in HDfprintf() + +./src/H5Fistore.c + Fixed a array bounds read error. + +./src/H5HG.c + Fixed uninitialized (but unused) data appearing in the hdf5 + file, a potential security problem. + +./src/H5T.c +./src/H5Tpublic.h + Added new data types for hdf5 types: H5T_NATIVE_HSIZE, + H5T_NATIVE_HSSIZE, H5T_NATIVE_HERR, and H5T_NATIVE_HBOOL. I + did not add H5T_NATIVE_HID since I couldn't think of a reason + that it would be stored in a file anyway. + +Changes since 19980814 +---------------------- + +./src/H5Fistore.c + Fixed a bug that caused the wrong number of chunk offsets to + be read or written from the file. + +./src/H5Z.c + Fixed a memory bug. + +./test/dtypes.c + Removed redundant tests. + +./bin/snapshot + Removed Perl code from a shell script. Oops :-) + +./src/H5D.c + Removed cvs merge conflicts. + +./src/H5Omtime.c + Fixed a typo in the Irix5.3 code. + +./src/H5S.c + Fixed a memory leak. + +./src/H5Shyper.c + Fixed a bad call to malloc() that didn't allocate enough + memory. Reordered a comparison to eliminate an array bounds + read error. + +Changes since 19980813 +---------------------- + +./src/H5G.c +./src/H5Gpublic.h +./test/links.c + Fixed a bug in H5Gstat() that caused the wrong information to + be returned sometimes. Added check for named data types. + +./test/extend.c +./test/links.c +./test/mtime.c + Added `all tests passed' messages. + +Changes since 19980810 +---------------------- + +./MANIFEST +./src/H5Ssimp.c [REMOVED] +./src/Makefile.in + Removed H5Ssimp.c since it was no longer used. + +./bin/snapshot + Fixed a few minor things to make it work better. + +./src/H5D.c + Cleaned up H5D_read() and H5D_write() by combining some code + in each. Added timing calls around the data space calls when + H5S_DEBUG is defined. + +./src/H5S.c +./src/H5Sall.c +./src/H5Shyper.c +./src/H5Spoint.c +./src/H5Sprivate.h + Changed H5S_find() so it returns a table entry again instead + of copying the data into a caller-supplied buffer. This + allows the timers to be stored in the table and updated by the + caller. Added H5S_register() to register new table entries + and added entry creation to all the H5S selection + methods. Also changed lots of global functions to static + functions. + +./src/H5Fistore.c + Fixed a memory bug in the raw data cache. + +Changes since 19980806 +---------------------- + +./doc/html/Datatypes.html +./doc/html/H5.format.html +./src/H5.c +./src/H5Odtype.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tpublic.h +./test/dtypes.c + Changed the values of the H5T_str_t type in order to make a + distinction between C's null terminated strings and strings + which are not null terminated. + + The string character set and padding method are saved to the + hdf5 file instead of using defaults. + + Added conversion function from one fixed-length string type + to another. + +./test/chunk.c + Fixed to work with new filter API + +./bin/snapshot + Better `diff' of two releases. + + Skip release if `make _test' fails. + +Changes since 19980806 +---------------------- + +./config/solaris2.5 + Hopefully set up now so it honors the CC and CFLAGS variables + and understands solaris cc flags. + +./test/big.c + Checks to see if creating lots of large sparse files exceeds + the user disk quota and skips the test. It also checks that + we can actually open ~64 files at once. + +./doc/html/Files.html +./src/H5A.c +./src/H5Aprivate.h +./src/H5F.c +./src/H5Fpublic.h + Added the H5Fflush() function which takes any object as an + argument as long as the object is in some way associated with + a file. This required an H5A_entof() + +./src/H5.c +./src/H5Flow.c + The `%a' format of HDfprintf() now allows a field width and + justification flag etc, like the other formats. The old + H5F_addr_print() was recoded to call HDfprintf() instead of + vice versa. + + + +Changes since 19980805 +---------------------- + +./MANIFEST + Replaced Compression.html with Filters.html + +./doc/html/Filters.html +./src/H5Ocomp.c +./src/H5P.c +./src/H5Ppublic.h +./src/H5Z.c +./src/H5Zprivate.h + Added two extra arguments to H5Pget_filter() in order to + retrieve the filter name. The name is the name registered for + the filter with H5Zregister(), but if the dataset creation + property originally came from an existing file then the name + is that which is stored in the file. + +./tools/h5ls.c + The `-v' option now prints the names of the filters. + +./src/H5B.c +./src/H5Fistore.c +./src/H5O.c +./src/H5Oefl.c +./src/H5Oprivate.h +./src/H5P.c + Plugged a memory leak. + +./src/H5MMprivate.h + H5MM_malloc(0) and H5MM_calloc(0) actually allocate a single + byte in order to be sure that we get a valid pointer. + +./src/H5S.c +./src/H5Sselect.c + Fixed pointer->integer conversions in error return values in + three places. + +Changes since 19980731 +---------------------- + +./bin/release + Added ./Makefile to the distribution again -- it got lost in + the changes last week although it isn't all that important a + file since it gets clobbered by configure anyway. + +./bin/trace +./doc/html/Filters.html +./doc/html/H5.format.html +./doc/html/H5.user.html +./src/H5.c +./src/H5D.c +./src/H5Dprivate.h +./src/H5E.c +./src/H5Epublic.h +./src/H5Farray.c +./src/H5Fistore.c +./src/H5Fprivate.h +./src/H5O.c +./src/H5Ocomp.c +./src/H5Oprivate.h +./src/H5P.c +./src/H5Ppublic.h +./src/H5Sall.c +./src/H5Shyper.c +./src/H5Spoint.c +./src/H5Sprivate.h +./src/H5Ssimp.c +./src/H5Z.c +./src/H5Zprivate.h +./src/H5Zpublic.h +./src/hdf5.h +./test/dsets.c +./tools/h5ls.c + Added the data filter pipeline, a generalization of the + compression stuff which allows things like checksums, + encryption, compression, performance monitoring, etc. See + ./doc/html/Filters.html for details -- it replaces the + Compression.html doc. + +./src/H5T.c + Cleaned up debugging output. + +./config/linux + Added checks for egcs and pgcc and changed optimization flags + for the compilers. + +./src/H5G.c +./tools/h5dump.c + Fixed compiler warnings in these files and others. + +./configure.in +./src/H5private.h +./test/mtime.c + Added a check for difftime() and defined HDdifftime() to do + something else on systems that don't have difftime(). + +Changes since 19980730 +---------------------- + +./bin/release + Simplified greatly. When run from the top of the hdf5 source + tree with no arguments a new tar file is created in the + `releases' directory. When given one or more of the words + `tar', `compress', `gzip', or `bzip2' each type of archive is + created. The name of the releases directory can be changed + with the `-d DIR' switch. + +./bin/h5vers + Fixed a bug that caused `h5vers -i' to fail with a usage + message. The new behavior is the same as `h5vers -i release' + which increments the release number. + +./bin/snapshot + A shell script intended to be run nightly from cron which + compares the current version of hdf5 against the previous + version. If there are differences it creates a tar file in an + ftp directory, increments the hdf5 release number, and commits + the changes back into the cvs repository. The name of the ftp + directory in which to place the release can be given on the + command line (default /hdf3/ftp/pub/outgoing/hdf5/snapshots). + The CVSROOT environment variable must be set. + + +Changes since 19980729 +---------------------- + +./MANIFEST +./test/Makefile.in +./test/mtime.c [NEW] + Test for the modification time message. + +./src/H5AC.c +./src/H5Fistore.c + Turned off printing of statistics on H5close() if H5AC_DEBUG + isn't defined. + +Changes since 19980724 +---------------------- + +./MANIFEST +./doc/html/H5.format.html +./src/H5O.c +./src/H5Oprivate.h +./src/H5Omtime.c [NEW] +./src/H5private.h +./src/Makefile.in + Added the modification time message. If an object header has + this message then it's value is updated with the current time + whenever anything changes in the object header. + +./acconfig.h +./configure.in + Alas, there seems to be no standard way to convert a string + time like 19980727122800 in UTC to a time_t since mktime() + only converts local times to time_t. So I've modified the + configuration to check for various ways of getting the time + zone information: + + * Added checks for the `tm_gmtoff' field of `struct tm'. + * Added a check for the `timezone' global variable. + * Added a check for `struct timezone'. + * Added a check for BSDgettimeofday(). + * Added a check for gettimeofday() although it doesn't + actually set the timezone argument on some systems. + * Added a check to see if `tm_zone' is a member of `struct tm'. + * Added a check to see if `tzname' is a global variable. + * Added a check to see if `struct tm' is defined in time.h + or sys/time.h. + + It's not difficult to get the right UTC modification message + into the object header, but some systems might have problems + getting the right time back out (Irix64 is one) and those + systems will report zero for the H5G_stat_t.mtime from an + H5Gstat() call as if the mtime message isn't even present. It + will, however, continue to be updated as normal. + +./src/H5G.c +./src/H5Gpublic.h + The H5G_stat_t struct now contains an `mtime' field which will + hold the object modification time. If the object has no + object modification time then the `mtime' will be initialized + to zero. + + Fixed a bug in H5G_stat() that caused the `objno' field of the + H5G_stat_t to be set incorrectly on some machines. + +./src/H5D.c + Writing to external datasets fail if the hdf5 file is not open + for writing. + + A modification time message is added to the dataset object + header when it's created and H5O_touch() is called from + H5D_write() to update that message. + +./src/H5T.c + Fixed a bug in H5Tget_member_dims() that caused a segmentation + fault if one of the output array arguments was the null + pointer. + + Relaxed the member dimension checking in H5Tinsert_array() so + it can also be used for scalar members. + +./test/Makefile.in + Added additional file names to the `mostlyclean' target. + +./tools/h5dump.c +./tools/h5tools.h + Increased the temporary buffer size to 1MB. + + Added support for printing compound data types with array + members. + + When printing H5T_NATIVE_CHAR and H5T_NATIVE_UCHAR we escape + double quote characters. + +./tools/h5ls.c + Changed the output format a little because we were starting to + get too much info to fit on a line. Without `--verbose' each + object occupies one line of output. Otherwise, additional + information is printed below the object name: object file + address, comment, and modification time. If `--dump' is given + then the data is printed after the other information. + +./test/cmpd_dset.c + Changed the way the dataset is initialized to be more uniform. + +Changes since 19980723 +---------------------- + +./tools/h5dump.c +./tools/h5ls.c +./tools/h5tools.h + Able to handle compound data types now. Moved code that + chooses memory data type based on file data type from h5ls to + libh5tools.a(h5dump.o) + +Changes since 19980722 +---------------------- + +./src/H5A.c +./src/H5Apublic.h +./test/tattr.c + Switched the order of the second and third argument of + H5Aget_name() to make it consistent with other functions that + take buffers and buffer sizes. + +./src/H5G.c +./src/H5Gpublic.h +./src/H5Gprivate.h + The H5Gget_comment() function returns the size of the comment + including the null terminator. If the object has no comment + then zero is returned. If an error occurs then a negative + value is returned. + +./MANIFEST +./tools/Makefile.in +./tools/h5tools.h [NEW] +./tools/h5dump.c [NEW] + Created a library for printing values of datasets in a way + that looks nice. It's not done yet, but I needed it for + debugging the contents of files from Jim Reus. + +./tools/h5ls.c + Added the `-d' and `--dump' options which cause the contents + of a dataset to be printed. Added `-w N' and `--width=N' + options to control how wide the raw data output should be. If + you want single-column output then say `-w1'. + + Printing dataset values can now handle datasets of any integer + or floating point atomic type. As a special case, integers + which are one byte wide are treated a character strings for + now. + + Sample output: + $ h5ls --dump --width=60 banana.hdf + ARCHIVE 0:0:0:744 Dataset {52/Inf} + Data: + (0) "U struct complex { double R; double I; };\012V" + (43) " double;\012" + U 0:0:0:2500 Dataset {256/512} + Data: printing of compound data types is not implemented yet + V 0:0:0:3928 Dataset {256/512} + Data: + (0) 0, 0.015625, 0.03125, 0.046875, 0.0625, + (5) 0.078125, 0.09375, 0.109375, 0.125, 0.140625, + (10) 0.15625, 0.171875, 0.1875, 0.203125, 0.21875, + (15) 0.234375, 0.25, 0.265625, 0.28125, 0.296875, + ... + + +Changes since 19980722 +---------------------- + +./src/H5.c + Handle hid_t of type H5_TEMPBUF, arguments usually called tbuf_id. + + Added array tracing where the array rank is stored in a simple + data space. Just use the name of the data space argument when + declaring the array argument: + + herr_t + H5Sselect_hyperslab (hid_t space_id, H5S_seloper_t op, + const hssize_t start[/*space_id*/], + const hsize_t _stride[/*space_id*/], + const hsize_t count[/*space_id*/], + const hsize_t _block[/*space_id*/]) + + and when the program runs you'll see array values printed: + + H5Sselect_hyperslab(space=218103813, op=H5S_SELECT_SET, + start=0xbfffef4c {0}, _stride=NULL, + count=0xbfffef44 {64}, + _block=NULL) = SUCCEED; + + Added more symbolic data types to the tracing output. + +./src/H5A.c +./src/H5Apublic.h +./src/H5D.c +./src/H5Dpublic.h +./src/H5F.c +./src/H5Fpublic.h +./src/H5G.c +./src/H5Gpublic.h +./src/H5P.c +./src/H5Ppublic.h +./src/H5S.c +./src/H5Sall.c +./src/H5Shyper.c +./src/H5Spoint.c +./src/H5Spublic.h +./src/H5Sselect.c +./src/H5Ssimp.c +./src/H5TB.c +./src/H5V.c + Changed some API argument names to be more consistent with + other API functions and to produce better tracing output. + Reformatted some long lines. Indented printf statements. + +./tools/h5ls.c + Fixed warnings about unsigned vs. signed comparisons. + +Changes since 19980721 +---------------------- + +./tools/h5ls.c + If the dataset is of type H5T_NATIVE_CHAR then we print the + value as a string. This is temporary -- I plan to add better + control of this later but needed something now for debugging. + +./src/H5Fistore.c + Squashed a bug in the chunk caching code that caused the wrong + chunk to be returned. + +./bin/trace +./src/H5.c + Added support for printing values of array arguments when the + size of the array is supplied by some previous argument. You + must declare the argument as an array in order for the + automatic tracing stuff to work. For instance, the third + argument of H5Pset_chunk() is an array whose size is + determined by the second argument `ndims'. Here's how you + should declare it: + + herr_t + H5Pset_chunk(hid_t plist_id, intn rank, hsize_t dims[/*rank*/]) + + The comment inside the `[]' is the name of some previous + integer argument (int, unsigned, size_t, ssize_t, hsize_t, + hssize_t). The trace output will look something like: + + H5Pset_chunk(plist=1234567, rank=2, dims=0x112233 {11, 22}) + + Changed tracing so that data types are printed out + symbolically when possible. + + Changed tracing so data type initializations are not printed. + This used to be confusing because lots of H5Tcopy() and + H5Tregister...() calls showed up before the applications first + explicit API call. + +./src/H5Ipublic.h + Changed the file atom group from zero to one so printing of + atoms during tracing is more consistent -- they're all big + numbers now. + +./src/H5A.c +./src/H5E.c +./src/H5F.c +./src/H5G.c +./src/H5Sselect.c +./src/H5T.c +./src/H5TB.c +./src/H5Z.c + Accidently modified these when working on the tracing, but + nothing should have changed. + +./src/H5P.c + Changed the definition of H5Pset_chunk() for tracing. + +./src/H5S.c +./src/H5Spublic.h + Changed the definitions of H5Sset_extent_simple() and + H5Screate_simple() for tracing. Changed the FUNC_ENTER() name + for H5Screate_simple() so tracing shows the correct name. + + +Changes since 19980720 +---------------------- + +./test/dtypes.c + We try to detect whether floating point overflow generates a + SIGFPE and if it does we don't test overflow cases. + +./test/H5Sprivate.h +./test/H5S.c +./test/H5Oattr.c + Added an H5S_debug() which is called from H5O_attr_debug() and + which has a switch statement to handle the various data type + messages. + +Changes since 19980720 +---------------------- + +./src/H5Gpublic.h +./src/H5Gprivate.h +./src/H5G.c +./test/dsets.c +./doc/html/Groups.html + Added the H5Gset_comment() and H5Gget_comment() functions + described in an earlier e-mail. + +./src/H5.c + Fixed a bug in the tracing code that caused certain data space + enum types to not be printed. Nested case statements can get + confusing to the eyes! + +./tools/h5ls.c + Prints the first 50 bytes or so of object comments. + +Changes since 19980720 +---------------------- + +./doc/html/H5.format.html +./src/H5Oattr.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Olayout.c +./src/H5Osdspace.c +./src/H5Oshared.c + Added version numbers to some object header messages so we can + update them easier in the future. The library currently just + gives up if the version numbers don't match, but in the future + the library could handle multiple versions of a message. + +./test/testhdf5.c + Removed an argument from the H5version() call that I missed + last time. + +Changes since 19980720 +---------------------- + +./bin/release + The archive names have only three parts to a version number. + Instead of `hdf5-1.2.3d.tar.gz' they will be named like + `hdf5-1.2.3.tar.gz'. + +./src/H5public.h +./src/H5.c + Dropped the patch level from the version number. The version + number is now a major number, a minor number, and a release + number. + +./doc/html/Version.html + Updated to get rid of patch numbers. + +./tools/h5repart.c + Added a `-V' flag like for `h5ls' that prints the version number. + +Changes since 19980720 +---------------------- + +./doc/html/H5.format.html +./src/H5F.c +./src/H5Gprivate.h +./src/H5Oshared.c + Added file alignment fields: the boot block has an extra + reserved address field. The symbol table entry scratch pad + space was reduced from 24 bytes to 16 bytes. The index + permutation was moved earlier in the data type message for + compound data types and extra padding was added. Four bytes + of padding was added to the shared message format. + +Changes since 19980715 +---------------------- + +./doc/html/H5.format.html +./src/H5Gent.c +./src/H5Gprivate.h +./src/H5Oattr.c +./src/H5Oprivate.h +./src/H5Oshared.c +./src/H5HG.c +./src/H5HGprivate.h + Added padding fields in symbol table entries, attribute + messages, shared messages, and global heap objects to insure + that things are aligned on 8-byte boundaries in the file, and + thus in memory. Otherwise some little endian machines + complain (DEC Alpha) during encoding/decoding of file meta + data. I chose to add alignment to the file rather than + rewriting the ENCODE/DECODE macros for the little endian case. + + Completely rewrote the section on attribute messages. + + More alignment stuff will follow. + +./src/H5detect.c + Fixed a typo `nd'->`dn' + +./test/dtypes.c + Commented out conversion tests to/from `long double' on + machines where it's the same size as `double' to get rid of + compiler warnings. + +./doc/html/Big.html + Fixed a couple typos. + +Changes since 19980715 +---------------------- + +./src/H5Flow.c +./src/H5Fprivate.h +./src/H5Fsplit.c + Changed the allocation size request from `size_t' to `hsize_t' + because it was overflowing for the `big' test. + +./src/H5detect.c + If `long double' and `double' are the same size then we define + H5T_NATIVE_LDOUBLE to be the same as H5T_NATIVE_DOUBLE. + Similarly for `long' vs. `long long' and `unsigned long' vs. + `unsigned long long'. + +./test/Makefile.in + Added `big' to the list of tests to normally run. + +./test/big.c + Added a check to see if the file system supports holes and if + it doesn't then the test is skipped. + +./RELEASE + Added a couple minor details details about API tracing and + symbolic links. + +./src/H5public.h + Added comments about the use of hbool_t. Fixed a comment + spelling error. + +./test/testhdf5.h + Changed the way the version number is printed. The old method + was `hdf5-1.2.3d' and the new method is `hdf5 version 1.2 + release 3' + +./tools/h5ls.c + Only prints the max dimension if it differs from the current + dimension or if verbose mode is enabled. Added switches `-?', + `-h', and `--help' to print a usage message. Added switches + `-v' and `--verbose' to generate more verbose output. Added + switches `-V' and `--version' to print the version number and + exit. The version number is printed like: This is h5ls + version 1.0 release 24' + +./bin/h5vers [NEW] + This script prints, sets, and/or increments the hdf5 version + number. It can be run from the top directory or any of the + child directories like src, tools, test, etc. Some examples: + + $ h5vers # Display current version + 1.0.24 + + $ h5vers -v + version 1.0 release 24 # Display current version. + + $ h5vers -s 5.2.8 # Set version and display + 5.2.8 + + $ h5vers -s 2.1 + 2.1.0 + + $ h5vers -s hdf5-1.0.24a.tar.bz2 + 1.0.24 + + $ h5vers -s 'version 2.0 release 8' + 2.0.8 + + $ h5vers -s 'junk 22 junk 33 more junk 66 and 99 junk' + 33.66.99 + + $ h5vers -i major # Increment from 1.0.24 + 2.0.0 + + $ h5vers -i minor # Increment from 1.0.24 + 1.1.0 + + $ h5vers -i release # Increment from 1.0.24 + 1.0.25 + + $ h5vers ~/hdf5/src/H5public.h # Use an alternate file + 1.0.24 + +./bin/checkapi [NEW] + Run from the src directory with arguments H5[A-Z]*.c and it + will print the locations of each place where an API function + was called from within the library. Use it as the compile or + grep command under Emacs and you can C-x ` through the list. + +./bin/debug-ohdr [NEW] + Keeps track of H5O_open() and H5O_close() debugging messages + and lists the file addresses of the object headers that are + opened but never closed. You must enable the `o' debugging at + configuration time and pipe stderr into this script. + +./bin/errors + Added a note to indicate that this script no longer works + because of changes in the HRETURN_ERROR() and HGOTO_ERROR() + macros. + +./bin/iostats [NEW] + Watches output from the Linux strace program and accumulates + statistics about low-level access to an hdf5 file. The output + is a list of 2d data points which can be plotted by gnuplot to + show file seeking behavior. + +./MANIFEST + Added new files. + +Changes since 19980713 +---------------------- + +./config/conclude.in + Fixed so `make test' and `make progs' work on a clean source tree. + +Changes since 19980710 +---------------------- + +./Makefile.in +./config/commence.in +./config/conclude.in +./config/depend.in +./src/Makefile.in +./test/Makefile.in + Tests are no longer installed for `make install'. Added a new + target `make tests' that builds the tests but doesn't run them. + +./configure.in +./configure [REGENERATED] +./src/H5config.h.in [REGENERATED] + Added detection of fork() and waitpid(). If present the + contants HAVE_FORK and HAVE_WAITPID will be defined in + H5config.h. + +./test/dtypes.c + Minor tweaks for systems that don't have fork() or waitpid(). + +./MANIFEST +./tools [NEW] +./tools/Makefile.in [NEW] +./tools/h5debug.c [NEW] +./tools/h5import.c [NEW] +./tools/h5ls.c [NEW] +./tools/h5repart.c [NEW] + Added a tools directory and moved tools from the src directory + to here. + + +Changes since 19980709 +---------------------- + +./README +./bin/release + The first line of the README file is updated automatically + by the `release' script to associate a date with a release + number. For example: + + This is hdf5-1.0.9a released on 1998-06-09 18:00 UTC + Please refer to the INSTALL file for installation instructions. + +./src/H5public.h + Release number incremented. This happens automatically now if + you run the `release' script in `-batch' mode. I'll stop + documenting changes to this file unless they're something + other than a release number change. + +./MANIFEST + Added Elena's new files. + + +Changes since 19980708 +---------------------- + +./src/Makefile.in + Fixed missing H5Zpublic.h header file. + +./src/H5Fistore.c + Indented some printf's in the left margin so various C source + tools work correctly. + +Changes since 19980708 +---------------------- + +./src/H5Fistore.c +./src/H5S.c + Fixed places where `herr_t' functions returned NULL for + failure: H5F_istore_get_addr() and printf(?!?) (probably + because a printf() was in the first column :-/ so I don't know + what function it really was that I fixed), and H5S_extent_copy(). + +./src/H5Fprivate.h + Added declarations for H5F_istore_get_addr() and + H5F_istore_allocate(). + +./src/H5S.c +./src/H5Sprivate.h + Split H5Sset_extent_simple() into H5S_set_extent_simple() and + replaced calls to the API function with calls to the internal + function. + + Changed calls to H5Screate() to H5S_create() and H5Sclose() to + H5S_close(). + +./src/H5Shyper.c +./src/H5Spoint.c + Removed unused labels and variable. + +./src/H5T.c +./src/H5Tconv.c + Changed calls to H5Tfind() to H5T_find(). + +./src/H5TB.c + Split function return type onto a separate line for five + functions and added API tracing calls. + + +Changes since 19980708 +---------------------- + +./MANIFEST + Alphabetized. `d' comes before `e' :-) + +./bin/release + Added the `-batch' option which causes the script to not ask + questions and to automatically update the minor version + number and set the patch level back to `a'. This is intended + to be used for the daily snapshots: + + #! /bin/sh + set -e + cd ~/hdf5 + make distclean + make test + bin/release -batch tar compress gzip bzip2 + mv ./releases/* /repository + +./src/H5Z.c + Removed warnings about unused variables when the zlib.h header + file is present but libz.a isn't. + +./INSTALL +./configure.in +./doc/html/tracing.html + Made API tracing the default (you still need to define the + HDF5_TRACE environment variable to get results) and change the + name from `--disable-tracing' to `--disable-trace' to make it + consistent with the other switches. + + Changed `site config file' to `host config file' to match the + documentation. + +./doc/html/H5.user.html + Added a reference to the `tracing.html' file. + +Changes since 19980707 +---------------------- + +./bin/trace +./src/H5.c + Added tracing support for H5S_seloper_t and H5S_class_t. + +./src/H5Sselect.c +./src/H5S.c + Added tracing statements that weren't inserted previously + because of formatting problems. + +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h +./test/cmpd_dset.c + Added H5Tinsert_array() for inserting an array member into a + compound data type. Added support to the struct conversion + function for member arrays. The index permutation is not + supported yet in the conversion (source and destination must + have the same permutations). + +Changes since 19980707 +---------------------- + +./bin/trace +./src/H5.c +./src/H5private.h +./src/H5A.c +./src/H5D.c +./src/H5F.c +./src/H5G.c +./src/H5P.c +./src/H5Pprivate.h +./src/H5S.c +./src/H5T.c + Output-only arguments have their addresses printed during + tracing and added symbolic output for the H5F_driver_t + arguments. That's another reason that we should be careful to + add `/*out*/' after arguments that are output-only and + `/*in,out*/' after arguments that are used for both input and + output values. + + No internal function calls H5Pget_class() anymore. + +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tpublic.h + Added H5Tget_overflow() and H5Tset_overflow() so the + application can query or set a function that will be called + whenever an overflow occurs. Implemented as documented in + previous e-mail except the overflow handler gets two buffers: + one that contains the source value and one to receive the + optional destination value. + +./test/dtypes.c + Tests overflow handler. + +./src/H5.c + We have to declare fdopen() because I'm getting errors when + compiling on Irix64 even though we include <stdio.h> as + documented in the fdopen() man page. + +Changes since 19980706 +---------------------- + +./src/H5public.h + If sizeof(size_t)==sizeof(long long) then we define `hsize_t' + in terms of size_t to get rid of warnings on systems that + treat `long long' the same as `long'. + +Changes since 19980702 +---------------------- + +./src/H5T.c + Prints statistics for no-op conversions also. + + For now, hardware floating point conversions may or may not + raise SIGFPE depending on the hardware, operating system, + etc. Software conversions never raise SIGFPE and use +Inf or + -Inf for overflow. + +./test/dtypes.c + Catches SIGFPE and causes the test to be skipped. Better test + for NaN. + +./config/irix5.3 + Removed the -U_POSIX_SOURCE because it was removed from the + main makefiles. + +./bin/trace +./src/H5S.c + Fixed a typo that prevented tracing info from being added to + new API functions. + +Changes since 19980702 +---------------------- + +./MANIFEST + Added new files from testpar directory. + +./config/commence.in + Removed -D_POSIX_SOURCE because hdf5 uses a couple of + non-Posix things when certain debugging flags are switched on. + + +Changes since 19980630 +---------------------- + +./MANIFEST +./configure.in +./examples/Makefile.in [NEW] + Added a Makefile.in for the examples directory. To generate + the Makefile run configure again. + + +Changes since 19980612 +---------------------- + +./src/H5Tbit.c +./src/H5Tpkg.h + Fixed a bug in H5T_bit_copy(). Added H5T_bit_get_d() and + H5T_bit_set_d() which treat portions of a bit vector as an + unsigned integer. Added H5T_bit_inc() that increments part of + a bit vector and returns an indication of overflow. + +./src/H5Tconv.c +./src/H5Tpkg.h +./test/dtypes.c + Added a slow general floating point conversion which works so + far on Intel, MIPS, and DEC but the test is turned off because + a cast from double to float will cause a SIGFPE on some + systems if an overflow occurs. + + Added fast hardware conversions between native floating point + types. This function is also subject to the SIGFPE problem. + +./src/H5detect.c + Removed the exponent bias adjustment when the significand + isn't normalized. This is now handled in the conversion + functions instead. + +./src/H5T.c + Register new conversion functions. + + Plugged a memory leak in the library termination code. + +./RELEASE + Added a list of major changes since the first alpha. + +./src/H5.c +./src/H5private.h +./src/H5A.c +./src/H5AC.c +./src/H5D.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5G.c +./src/H5Gprivate.h +./src/H5HG.c +./src/H5O.c +./src/H5T.c +./src/H5Tbit.c +./src/H5Tconv.c + Fixed various compiler warnings on Irix64. + +./src/H5MM.c + Added PABLO_MASK to this file. + +./test/chunk.c + Removed a warning about memcpy(). + + +Changes since 19980618 +---------------------- + +./INSTALL +./INSTALL_MAINT +./README +./RELEASE + Partially updated for second alpha, but haven't updated + version numbers yet. + +./src/H5.c +./src/H5A.c +./src/H5AC.c +./src/H5B.c +./src/H5D.c +./src/H5F.c +./src/H5Fcore.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Fmpio.c +./src/H5Fsec2.c +./src/H5Fsplit.c +./src/H5Fstdio.c +./src/H5G.c +./src/H5Gnode.c +./src/H5HG.c +./src/H5HL.c +./src/H5I.c +./src/H5MM.c +./src/H5MMprivate.h +./src/H5O.c +./src/H5Oattr.c +./src/H5Ocomp.c +./src/H5Ocont.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Olayout.c +./src/H5Oname.c +./src/H5Osdspace.c +./src/H5Oshared.c +./src/H5Ostab.c +./src/H5P.c +./src/H5S.c +./src/H5T.c +./src/H5Tconv.c +./src/H5detect.c +./test/hyperslab.c +./test/istore.c + Changed memory allocation functions so they fail instead of + dumping core. The `x' was removed from the name to remind us + of that: H5MM_xmalloc() -> H5MM_malloc(), etc. + + H5MM_calloc() takes one argument like H5MM_malloc() instead of + two like calloc() because we almost always called it with `1' + for one of the arguments anyway. The only difference between + the two functions is that H5MM_calloc() returns memory which + is initialized to zero. + +./src/H5Gent.c +./src/H5Gprivate.h + Removed H5G_ent_calloc() since it wasn't used. + +./src/H5Fistore.c + Fixed a bug found by Albert. Thanks, Albert! This fix + combined with the changes to memory allocation prevent the + library from failing an assertion if the application uses an + unreasonable size for chunks (like Alberts 10000x10000x4). + +./src/H5MF.c +./src/H5MFprivate.h + Changed H5MF_free() to H5MF_xfree() since calling it with an + undefined address is allowed. + + +Changes since 19980617 +---------------------- + +./html/Datatypes.html +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tpublic.h +./src/H5detect.c +./test/cmpd_dset.c +./test/dsets.c +./test/dtypes.c +./test/external.c +./test/tattr.c +./test/th5s.c + Organized the predefined data types. + +./html/H5.intro.html + NO MODIFICATIONS! This file is a mess (obviously generated + from something else) so I skipped updating it! + +./src/h5ls.c +./test/dsets.c +./test/tattr.c +./test/th5s.c + Added extra argument to H5Sget_dims() calls per Albert's last + update. + +Changes since 19980617 +---------------------- + +./src/H5T.c + Fixed a potential division by zero error. + +./src/H5Fistore.c + Fixed an assertion failure that I accidently introduced with + the previous changes. + +Changes since 19980616 +---------------------- + +./html/tracing.html NEW + This entire update is to make it possible for the library to + print the name, arguments, and return value of every API call + without requiring any extra work from developers or app + programmers. This file describes how this all works. + +./configure.in + Added the `--enable-tracing' switch. If you use it then the + library will include code to print API function names, + argument names and values, and function return values. + However, you must then turn on the tracing by setting the + HDF5_TRACE environment variable to a file descriptor number. + The default is `--disable-tracing' since enabling it causes a + slight increase in library size and a slowdown resulting from + an extra function call for each API function call (I couldn't + even measure the slowdown :-) + +./bin/trace NEW + A perl script that synchronizes the H5TRACE() macro calls in + the *.c files with the function return type and formal + argument names and types. If you use GNU make and gcc then + this will be done automatically, otherwise just invoke this + script with the names of one or more .c files. You could do + it by hand to, but encoding argument types is a little tricky + at first. + +./config/commence.in + Added the $(TRACE) macro, which defaults to the no-op. + Added -D_POSIX_SOURCE to the compiler command line. + +./src/Makefile.in + Override the default for $(TRACE). + +./config/depend.in + Automatically calls $(TRACE) to synchronize the H5TRACE() + macros in any source file that changed. As with makefile + dependencies, one way to force synchronization of all files is + to remove the `.depend' file. + +./MANIFEST + Added new files. + +./src/H5Eprivate.h + Modified HRETURN_ERROR() and HRETURN() for tracing. + +./src/H5.c +./src/H5private.h + This is where the real tracing work really happens, in + H5_trace(). + +./src/H5A.c +./src/H5D.c +./src/H5G.c +./src/H5P.c +./src/H5S.c +./src/H5Z.c + Added H5TRACE() calls to all API functions. You don't really + need these changes if you don't want to merge your stuff + because they can be generated automatically by going to the + hdf5/src directory and saying ../bin/trace *.c + +./src/H5T.c + Added H5TRACE() calls. Other stuff below. + +./src/H5E.c +./src/H5Epublic.h + Added H5TRACE() calls. Created a type H5E_auto_t for the + `func' argument of H5Eset_auto() and H5Eget_auto() to make + those arguments easier to parse for tracing. It should also + make it clearer for users that don't know how to read + complicated ANSI data types. + +./src/H5F.c + Added H5TRACE() calls. Changed a couple `uintn' argument + types in API functions to `unsigned int' since `uintn' part of + the API. Changed a few "can't" and "cant" error messages to + "unable to". + +./src/H5Ipublic.h + Removed H5_DIRECTORY from the H5I_group_t enum. It wasn't + used anywhere. + +./src/H5Tconv.c + Removed an unused label. + +./src/H5Fistore.c +./src/H5Oattr.c +./src/H5Odtype.c +./src/H5T.c +./test/dsets.c +./test/dtypes.c + Fixed a warning about a variable possibly used before it's + initialized. Added __unused__ to turn off some unused + argument warnings that pop up when debugging is turned off and + optimizations are turned on. + + + +Changes since 19980612 +---------------------- + +./src/H5Tbit.c +./MANIFEST +./test/Makefile.in +./test/bittests.c NEW + Finished the bit vector operations and added test cases. + +./src/H5Tconv.c +./test/dtypes.c + Finished integer->integer general conversion and added test + cases. Overflows and underflows are handled by substituting + the closest possible value. Examples: + + (unsigned)0xffff -> (unsigned) 0xff + ( signed)0xffff -> (unsigned)0x0000 + (unsigned)0xffff -> ( signed)0x7fff + ( signed)0x7fff -> ( signed) 0x7f + ( signed)0xbfff -> ( signed) 0xbf + ( signed)0x8000 -> ( signed) 0x80 + +./src/H5private.h + Added definitions for MIN and MAX that take 3 or 4 arguments: + MIN3(), MIN4(), MAX3(), MAX4(). Also added MIN2() and MAX2() + as aliases for MIN() and MAX(). + +./test/tattr.c + Removed some redundant `&' operators. + +./configure.in +./src/H5config.h.in [regenerated] +./src/H5.c + Fixed warnings on DEC where long double is the same as + double. + + + +Changes since 19980610 +---------------------- + +THIS CHECKIN IS FOR QUINCEY -- NOT EVERYTHING WORKS (but it compiles) +MOST OF THE CHANGES ARE FOR BETTER TYPE CONVERSION IN THE NEXT ALPHA + +./MANIFEST +./src/H5Tbit.c NEW +./src/Makefile.in + Bit vector operations (not done yet) + +./configure.in + Added -lm to the library list, needed by bit-vector operations + and conversion functions. + + Removed vestiges of PARALLEL_SRC no longer used by the + makefiles. Albert came up with a better way (that actually + works :-) + +./src/H5D.c + No code changes. Split a couple of long lines, refilled a + couple multi-line comments. + +./src/H5T.c +./src/H5Tpublic.h + Fixed a bug reported by Jim Reus regarding conversion of + compound data types whose members require conversions which + are satisfied by as-yet unregistered soft conversion + functions. + + Added H5T_IEEE architecture, but the funny-looking integer + types will be changed to H5T_BE_ and H5T_LE_ architectures + with the type names changed to match the H5T_NATIVE_ integers. + + Added an H5Tconvert() but it hasn't been documented or tested + yet. + +./src/H5Tconv.c +./src/H5Tpkg.h + Registered conversion functions integer->integer (a general + case) and integer->float (for a specific case). The + integer->integer conversion depends on the bitvector + operations which aren't finished yet and the int->float + conversion hasn't been retested since it was borrowed from + AIO. Don't look at them yet, they're ugly :-) + +./src/H5detect.c + Fixed a typo which caused the msb_pad field of an atomic type + to not be initialized. + +./test/dtypes.c + Added a test for number conversions but it's commented out + until the conversion stuff is truly working. + + +Changes since 19980605 +---------------------- + +./html/Files.html +./src/H5F.c +./src/HFcore.c +./src/H5Ffamily.c +./src/H5Flow.c +./src/H5Fmpio.c +./src/H5Fprivate.h +./src/H5Fsec2.c +./src/H5Fsplit.c +./src/H5Fstdio.c +./src/H5MF.c +./src/H5P.c +./src/H5Ppublic.h + Added H5Pset_alignment() so that it is now possible to align + file allocation requests on application-specified + boundaries. Any request >= the specified threshold will begin + on an address which is a multiple of the specified + alignment. Defaults are one for threshold and alignment. The + alignment is done on relative addresses, so the size of the + user block can affect the location of the data in the file. + +./src/H5D.c +./src/dsets.c + Added a test for, and fixed the data space caching bug in + datasets. Extending a dataset through one handle will cause + all other handles to the same dataset to get the new dataset + size. + +./src/H5S.c +./src/H5Sprivate.h + Removed an unused argument from H5S_read() which duplicated + information from the other argument. + +./config/linux + Made `--enable-parallel' the default on my system. It used to + be that way before but then I accidently turned it off and + forgot about it. + +./src/H5Fmpio.c + Qualified some function arguments with __unused__. Changed a + couple places where NULL was returned on error for herr_t + functions. + +./src/H5P.c + Removed unused autos from H5Pset_mpi(). + +Changes since 19980604 +---------------------- + +./src/H5A.c + Named data types can have attributes. + + Fixed bugs where the API functions didn't check the return + values of their internal counterparts and thus the automatic + error reporting didn't work. + + Fixed some places where the error stack wasn't cleared after a + function returned failure. + + Data types returned by H5Aget_type() are always read-only. + + If the `attr_num' argument of H5Aiterate() is null then it + acts like H5Giterate() instead of failing -- it begins + processing attributes with the first one. + +./src/H5D.c + We check for allocation overruns when scalar datasets are + stored in external files. + +./src/H5O.c + H5O_modify() will fail if the message is >=16kB. + +./src/H5Oattr.c + Split some long lines + +./src/H5T.c +./src/H5Tprivate.h + Added H5T_entof() to support attributes on named types. + +./src/h5ls.c + Prints the names of attributes and their sizes. + +./test/cmpd_dset.c +./test/dsets.c +./test/dtypes.c +./test/extend.c +./test/external.c +./test/gheap.c +./test/istore.c +./test/links.c +./test/shtype.c + If the environment variable HDF5_NOCLEANUP is defined then the + temporary files are not removed. The testhdf5 program still + has the bug that it removes *.h5, clobbering test files from + other programs... oh well. + +./test/dtypes.c + Added attribute tests. + +Changes since 19980604 +---------------------- + +./html/Datatypes.html + Updated documentation for named data types and type sharing. + +./src/H5Farray.c + Split a couple long lines. + +./src/H5T.c + The H5T_copy() demotes immutable types to read-only types so + they're cleaned up properly and memory is not leaked. + +./test/dtypes.c + Modified to be more consistent with other tests. Removed all + internal header files, constants, types, and functions calls + since the API is now complete enough to test + everything. Temporary files are now removed. + +Changes since 19980526 +---------------------- + +./MANIFEST + Added ./html/h5s.examples. + +./html/H5.format.html + Added new information about object header message sharing. + Reformatted and indented some old stuff. + +./src/H5A.c +./src/H5D.c +./src/H5Tconv.c +./src/H5detect.c + Updated to work with new internal H5T functions. Fixed some + data type memory leaks during error recovery. + +./src/H5Dprivate.h + Added H5D_typeof() similar to H5D_entof() that returns a + pointer directly to the dataset's type. This is used by + H5Tcopy() when invoked on a dataset (see below). + +./src/H5Epublic.h + Fixed typos in H5E_BEGIN_TRY and H5E_END_TRY macros. + +./src/H5F.c + Closing a file with objects still open reports the file name + in the warning message. Removed unnecessary invalidation of + shared data types. + +./src/H5Gent.c +./src/H5Gpkg.h +./src/H5Gprivate.h + Added `const' to some arguments. + +./src/H5O.c +./src/H5Oprivate.h +./src/H5Oshared.c + An object header message can now be a pointer to a message in + some other object header. The pointer is to the first message + of the appropriate type in the other object header and hard + link counts are maintained automatically to prevent dangling + pointers. The old global heap method of message sharing is + also supported although nothing actually uses it. + +./src/H5Oattr.c +./src/H5Ocomp.c +./src/H5Ocont.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Olayout.c +./src/H5Oname.c +./src/H5Osdspace.c +./src/H5Oshare.c +./src/H5Ostab.c + Changed the data type for the shared message info struct to + H5O_shared_t and added an extra initializer to the class + methods struct for the set_share method. + +./src/H5Odtype.c + Added the ability to share data type messages by pointing to + other object headers. + +./src/H5T.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h + Added named data types and changed the functionality of some + API functions as follows: + + * The term `read-only' means that a type handle cannot be + modified with functions like H5Tset_*() or H5Tinsert(). + + * The term `immutable' means the same as `read-only' with the + added restriction that H5Tclose() cannot be called for the + type. A transient type is made immutable by calling + H5Tlock(). + + * Handles to named types are always read-only. + + * Handles to predefined types are immutable. + + * A transient type can be converted to a named type by calling + H5Tcommit(). This function will fail if the type is already + named or is immutable. + + * The API function H5Tcommitted() returns an indication of + whether a data type has been commited (or is named). If + H5Tcommitted() returns TRUE for a data type obtained by + calling H5Dget_type() on a dataset, then the dataset is + using a shared data type. + + * H5Topen() returns a handle to a named type. + + * H5Tcopy() always returns a handle to a modifiable transient + type even when invoked on a named type. Also, when invoked + on a dataset it returns a modifiable transient type which is + a copy of the dataset's data type. + + * Using a named data type in the call to H5Dcreate() causes + the dataset object header to point to the named data type, + but using a transient type causes the type to be copied into + the dataset's object header. + + * The data type returned from H5Dget_type() is a named data + type or a read-only transient data type depending on whether + the dataset points to a named data type. The old behavior, + to return a modifiable transient type, is accomplished by + overloading H5Tcopy() to operate on datasets (see above). + + * H5Tshare(), H5Tunshare(), and H5Tis_shared() have been + removed from the API. + + The following features were *not* implemented because they + need more discussion: + + * A named data type can be opened by applying H5Topen() to a + dataset in which case the data type is the data type of the + dataset (or the data type to which the dataset points if the + dataset has a shared data type). + + * A named data type can have attributes like groups or + datasets. + + * The members of a compound data type can point to named data + types. + +./src/h5ls.c + Reports `Data type' for named data type objects in the file. + +./test/dtypes.c + Added tests for transient and named types and their use in + datasets. + +./test/shtype.c + Commented out all the tests since they no longer apply. + +./test/chunk.c + Removed a couple int->double coercion warnings. + +Still to come: + Documentation + + +Changes since 19980522 +---------------------- + +./MANIFEST +./html/Caching.html [NEW] +./html/H5.user.html + Added some info about caching. + +Changes since 19980513 +---------------------- + +./html/Datasets.html + Fixed a couple of typos. + +./src/H5.c + Added the `Z' modifier to HDfprintf() for `size_t' sizes. Use + it like this: + HDfprintf(stderr,"size is %Zd\n", (size_t)x); + +./src/H5AC.c +./src/H5F.c +./src/H5Fprivate.h + The maximum number of meta data objects that can be cached can + be set from the application (but the library might not honor + it every time; it's a hint). + +./src/H5D.c + Changed a warning message so it's not so alarming. + +./src/H5Fistore.c + Chunks can be cached. + +./src/H5O.c +./src/H5Oprivate.h + Added H5O_copy() and H5O_free() to copy and free messages. + +./src/H5P.c +./src/H5Ppublic.h + Added H5Pset_cache() and H5Pget_cache() and changed lots of + "template" to "property list". + +./src/H5Z.c +./src/H5Zpublic.h + Miscellaneous little things to clean up. Mostly just removed + H5Z_MAXVAL and added H5Z_USERDEF_MIN and H5Z_USERDEF_MAX. + +./MANIFEST +./test/Makefile.in +./test/chunk.c [NEW] + Added a performance test for chunk caching. It looks at the + amount of I/O instead of timing because timing is partly + dependent on the chunk size and I wanted a measurement that + was a function of only the cache size. Run `chunk' with no + arguments and then say `gnuplot x-gnuplot' to see the plots + (press return between plots). Postscript files are created for + each plot. + +./test/big.c +./test/cmpd_dset.c +./test/extend.c +./test/external.c +./test/gheap.c + Added H5F_ACC_DEBUG so we can see cache performance + statistics. + + +Changes since 19980501 +---------------------- + +./src/H5Bprivate.h +./src/H5F.c +./src/H5Ffamily.c +./src/H5Fprivate.h +./src/H5Gpkg.h +./src/H5MF.c +./src/H5P.c +./src/H5Ppublic.h +./test/big.c +./html/Big.html +./html/Files.html + Family members can now be any size >1kB. Got rid of some + places where we were reading a property list after it was + closed. + +./MANIFEST +./src/Makefile.in +./src/h5repart.c + A program to repartition file families. The source and/or + destination may be files or file families. Examples: + + testhdf5 -c -o stab + h5repart -m 1m tstab2.h5 x%05d.h5 + h5repart -m 100k x%05d.h5 y%05d.h5 + h5repart y%05d.h5 z.h5 + diff tstab2.h5 z.h5 + +./src/h5ls.c + Added a usage message, replaced assertions with error + messages. + +./config/linux + Made a warning message more obvious. Added better + optimization flags for Pentium-Pro's. + + + +Changes since 19980430 +---------------------- + +./src/H5G.c + Fixed a read/write of free memory that my home-brew purify + doesn't catch (yet :-) + +Changes since 19980428 +---------------------- + +./src/H5A.c +./src/H5F.c +./src/H5G.c +./src/H5O.c +./src/H5Osdspace.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Z.c +./test/big.c +./test/cmpd_dset.c +./test/dsets.c +./test/extend.c +./test/istore.c + Now that I have a home-grown version of Purify I fixed all the + leaks in all the test files. + +Changes since 19980424 +---------------------- + +./src/H5A.c +./src/H5T.c + Fixed memory leaks. More to come later but PureAtria doesn't + make a Linux version of purify and the free version doesn't + compile with the new SMP Linux kernels so I had to debug over + the internet on a day that Sprint seemed to be having routing + problems... oh well. I got rid of most of the leaks. + +./src/H5Apublic.h + Includes H5Ipublic.h for types in the header file. + +./src/H5O.c + Comments improved for H5O_read() + +./test/tattr.c + Removed a non-ANSI empty initializer. + +./test/dsets.c + Include <string.h> + +./test/istore.c + Fixed a non-ANSI pointer conversion. + + +Changes since 19980424 +---------------------- + +./src/H5F.c +./src/H5Ffamily.c +./src/H5Fsplit.c +./src/H5P.c + The H5Pget_family() and H5Pget_split() always return a file + access property list even if it's the default. + + It is an error to set the default low-level driver to a + composite driver at compile time. + +./src/H5T.c + Fixed a memory leak associated with compound data types. + +Changes since 19980422 +---------------------- + +./acconfig.h +./configure.in +./config/BlankForm +./src/H5.c + Configure tries to figure out how to print `long long' types + and then defines PRINTF_LL_WIDTH to be `ll' or `q' or + something. It does this by running little sprintf() programs + with various formats until it gets one that works. If this + causes problems when cross compiling (like with parallel + machines) then you may add the following to the appropriate + config file: + + hdf5_cv_printf_ll=${hdf5_cv_printf_ll='ll'} or + hdf5_cv_printf_ll=${hdf5_cv_printf_ll='q'} or + hdf5_cv_printf_ll=${hdf5_cv_printf_ll='l'} + + +./config/intel-osf1 +./config/irix5.3 + Updated these config files to match the others. This allows + the `--enable-production' configure flag to work properly. + +./MANIFEST + Added INSTALL_parallel.ascired, examples/Attributes.txt, + html/Attributes.html, testpar/Makefile.ascired. Removed + H5Dpkg.h + + +./src/H5A.c +./src/H5D.c +./src/H5Dprivate.h +./src/H5Dpkg.h [REMOVED] +./src/H5Tpkg.h +./src/H5Tprivate.h + Rearranged some header stuff so H5A doesn't have to include + the package-private header files that don't belong to it. + +./src/H5E.c + Added the H5E_ATTR message to the major error struct. + +Changes since 19980421 +---------------------- + +./bin/release +./src/H5.c +./src/H5private.h +./src/H5public.h +./src/H5Fpublic.h + Changed the version number constants to names that begin with + H5_VERS_ and added macros that check that the version numbers + in the include files match the version number of the library. + +./MANIFEST +./html/H5.user.html +./html/Version.html [NEW] +./html/version.obj [NEW] +./html/version.gif [NEW] + Documented version numbers and the macros, constants, and + functions associated with them. + +./bin/versinc + A perl script that increments the minor version number and + sets the patch level back to zero. This is intended to be + invoked from the top of the source tree by a cvs commit + anywhere in the source tree. Quincey? + +./src/H5O.c +./src/H5Oprivate.h + Added H5O_count() to count the number of object header + messages of a particular type. Quincey needs this for the + attribute package. + +./test/dsets.c + Fixed warnings. Enabled the small strip-mine buffer test. + +./config/linux + Added optimizations for the Pentium-Pro for production mode. + +Changes since 19980417 +---------------------- + +This checkin completes the compression stuff almost two weeks ahead of +schedule. It should now all be working and documented. + +./Makefile.in +./config/commence.in + A distclean causes the distribution makefile to be copied to + Makefile again. + +./src/H5D.c + Opening a compressed dataset now works properly. + +./src/H5P.c +./src/H5Ppublic.h + The H5Pset_compression() and H5Pget_compression() now work as + documented. + +./src/H5T.c + Fixed a bug that causes the library to crash sometimes if + debugging is turned on for the `t' package. + +./src/H5Z.c + Fixed a bug where the number of bytes attributed to + compression overruns was too low in the debugging output. + +./test/dsets.c + More compression tests: reading of uninitialized data, opening + an existing dataset and reading it, partial I/O which isn't + aligned on chunk boundaries, and use of application-defined + compression methods. + +./MANIFEST + Removed ./test/dspace.c. + + +Changes since 19980414 +---------------------- + +./html/Compression.html [NEW] +./html/Datasets.html +./html/H5.format.html +./html/H5.user.html + Documented compression. A couple of the H5P functions aren't + quite implemented yet but they're coming soon... + +./src/H5Dprivate.h +./src/H5E.c +./src/H5Epublic.h +./src/H5Farray.c +./src/H5Fistore.c +./src/H5Fprivate.h +./src/H5MF.c +./src/H5MFprivate.h +./src/H5O.c +./src/H5Ocomp.c [NEW] +./src/H5Oprivate.h +./src/H5P.c +./src/H5Ppublic.h +./src/H5Sprivate.h +./src/H5Ssimp.c +./src/H5Z.c [NEW] +./src/H5Zprivate.h [NEW] +./src/H5Zpublic.h [NEW] +./src/Makefile.in +./src/hdf5.h +./test/dsets.c +./test/istore.c + Compression is now mostly working. Don't try to open a + compressed dataset though because the compression message + won't be read. + +./html/Datatypes.html +./html/H5.api.html +./src/H5.c +./src/H5private.h +./src/H5D.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h + Added timing support. When compiled with H5T_DEBUG defined + the library will print conversion bandwidths when the library + closes. The H5Tregister functions take a string as the first + argument so the statistics output is meaningful. + +./MANIFEST + Added new files. + +./configure.in +./src/H5config.h.in + Check for getrusage(). Check for compress2() in libz.a and + the zlib.h header file. Added `z' to the debug list. + +./src/H5B.c +./src/H5Bprivate.h +./src/H5Gnode.c +./src/debug.c + Cleaned up some indentation and added support to print istore + B-trees. From the debugger, give the B-tree address and the + dimensionality from the layout message of the object header. + +./src/h5ls.c + The oid is printed as w:x:y:z where w and x are the file ID + and y and z are the OID within the file. You can give z or + y*2^32+z as an argument to the debugger to print the object + header for the object. + +./src/H5AC.c + Cleaned up statistics and made them match those reported by + H5T and H5Z. + +./src/H5MM.c +./src/H5MMprivate.h +./src/H5Fistore.c + Finally got rid of a couple of long-standing const cast + warnings. + +Changes since 19980410 +---------------------- + +./html/H5.format.html +./src/H5E.c +./src/H5Epublic.h +./src/H5F.c +./src/H5G.c +./src/H5Gent.c +./src/H5Gnode.c +./src/H5Gprivate.h +./src/h5ls.c +./test/Makefile.in + Symbolic links are now supported. The ./test/links program + will create a `links.h5' file that demonstrates hard links, + soft links, dangling links, and recursive links. A symbolic + link is a symbol table entity and doesn't have an object + header. It's format is described in H5.format.hml. + +./src/H5G.c +./src/H5Gpublic.h +./src/h5ls.c + Implemented H5Gstat() and H5Gget_linkval() as documented by + Quincey. The `H5G_type_t type' field of `H5G_stat_t' was + changed to `int type' because H5G_type_t was already used and + the `type' data type should be open-ended. + +./src/H5Ffamily.c + Removed an incorrect diagnostic message. + +./test/big.c + Added read/write calls to test partial I/O to big contiguous + datasets. With no arguments it writes to a dataset and prints + the list of points written which should be redirected to a + file. With an argument (the name of a file containing the + stdout of a run with no arguments) values are read from the + dataset. One would typically say `big >x && big x'. + +Changes since 19980409 +---------------------- + +./INSTALL +./INSTALL_MAINT + Updated installation instructions. + +./html/Big.html [NEW] + A guide to using big datasets on small machines. + +./MANIFEST + Added Big.html and INSTALL.ascired. + +./html/Datasets.html +./html/Dataspaces.html +./html/Datatypes.html +./html/Files.html +./html/H5.api.html +./html/H5.intro.html +./html/H5.sample_code.html +./html/H5.user.html + Updated documentation by changing lots of `size_t' arguments + to `hsize_t'. Added line numbers to some examples. + +./html/H5.intro.html + Perhaps someone want's to volunteer to make this file + human-readable? + + +Changes since 19980408 +---------------------- + +./src/H5Osdspace.c +./html/H5.format.html + In the past we were allowed to have >2GB files on a 32-bit + machine as long as no dataset within the file was larger than + 4GB (or whatever sizeof(size_t) is). That's been fixed now. + All dataset size calculations are done with `hsize_t' which is + normally defined as `unsigned long long'. + +./src/H5F.c +./src/H5Ffamily.c +./src/H5Fprivate.h +./src/H5P.c +./src/H5Ppublic.h + The file family member size can now be set/queried. The + default is still 64MB, but it can be set to 1GB by saying: + + H5Pset_family (plist, 30, H5P_DEFAULT); + + When opening an existing file family the specified + bits-per-member is ignored and the first member of the family + determines the bits-per-member, which can be retrieved with + H5Pget_family(). + +./acconfig.h +./configure.in +./src/H5config.h +./src/H5public.h + Added `--disable-hsizet' so that those with old GCC compilers + (<2.8.1) can still compile the code. + + +./src/H5.c +./src/H5private.h + Added HDfprintf() which works just like fprintf() except you + can give `H' as a size modifier for the integer conversions + and supply an `hsize_t' or `hssize_t' argument without casting + it. For instance: + + hsize_t npoints = H5Sget_npoints(space); + HDfprintf(stdout,"Dataset has %Hd (%#018Hx) points\n", + npoints, npoints); + + You can now give `%a' as a format to print an address, but all + formating flags are ignored and it causes the return value of + HDfprintf() to not include the characters in the address (but + who uses the return value anyway :-). Example: + + H5G_t *grp; + HDfprintf(stdout, "Group object header at %a\n", + &(grp->ent.header)); + + Added HDstrtoll() which works exactly like [HD]strtol() except + the result is an int64. + +./src/debug.c + Large addresses can now be entered from the command-line. Use + either decimal, octal (leading `0') or hexadecimal (leading + `0x') when giving the address. + +./src/h5ls.c + The printf format for dataset dimensions was changed to `%Hu' + to support large datasets. + +./test/big.c [NEW] + A test for big datasets on 32-bit machines. This test is not + run by default. Don't try to run it on an nfs-mounted file + system or other file system that doesn't support holes because + it creates two 32GB datasets of all zero. + + +Changes since 19980407 +---------------------- + +./src/H5B.c +./src/H5D.c +./src/H5Dprivate.h +./src/H5Dpublic.h +./src/H5F.c +./src/H5Farray.c +./src/H5Fcore.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fprivate.h +./src/H5Fpublic.h +./src/H5Fsec2.c +./src/H5Fsplit.c +./src/H5Fstdio.c +./src/H5G.c +./src/H5Gent.c +./src/H5Gnode.c +./src/H5HG.c +./src/H5HL.c +./src/H5MF.c +./src/H5MFprivate.h +./src/H5O.c +./src/H5Ocont.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Olayout.c +./src/H5Oname.c +./src/H5Oprivate.h +./src/H5Osdspace.c +./src/H5Oshared.c +./src/H5Ostab.c +./src/H5P.c +./src/H5Ppublic.h +./src/H5S.c +./src/H5Sprivate.h +./src/H5Spublic.h +./src/H5Ssimp.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5V.c +./src/H5Vprivate.h +./src/H5private.h +./src/H5public.h +./src/h5ls.c +./test/cmpd_dset.c +./test/dsets.c +./test/extend.c +./test/external.c +./test/hyperslab.c +./test/iopipe.c +./test/istore.c +./test/shtype.c +./test/tfile.c +./test/th5s.c + Anything having to do with the size of a dataset now uses the + types `hsize_t' and `hssize_t' which must be the same size and + at least as large as `size_t'. This isn't fully tested yet, + so hsize_t and hssize_t are defined as size_t and ssize_t in + H5public.h. Setting them to larger values will trip up gcc + versions less than 2.8.1 on x86 platforms. + + Documented unused function formals with `__unused__' before + the formal name. This also has the effect of supressing + warning messages for gcc since it's defined to be + `__attribute__((unused))' in the H5private.h file. + +./src/debug.c +./src/h5ls.c + If the file name contains a `%' then the file is opened as a + file family with H5P_DEFAULT for the file member access + property list. + +./src/h5ls.c + The group name is optional, defaulting to `/'. + +./src/hdf5.h + Added some missing public header files. + +Changes since 19980403 +---------------------- + +./configure.in + Moved setting of compiler warning switches earlier in the file. + Turned on more warning switches to gcc. + +./config/linux + Prints a warning if the gcc version is less than 2.8.1 since + that version has problems with register allocation for `long + long'. + +./html/Datatypes.html + Documented sharing of data types between datasets. + +./src/H5G.c +./src/H5Gpublic.h + Implemented H5Gmove(), H5Glink() and H5Gunlink() for hard + links. Still have soft links to do. + +./src/H5AC.c +./src/H5ACprivate.h +./src/H5D.c +./src/H5E.c +./src/H5Eprivate.h +./src/H5F.c +./src/H5Farray.c +./src/H5Fcore.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fprivate.h +./src/H5Fpublic.h +./src/H5Fsec2.c +./src/H5Fstdio.c +./src/H5G.c +./src/H5Gent.c +./src/H5Gnode.c +./src/H5Gpkg.h +./src/H5Gprivate.h +./src/H5HG.c +./src/H5HL.c +./src/H5HLprivate.h +./src/H5I.c +./src/H5Iprivate.h +./src/H5MM.c +./src/H5MMprivate.h +./src/H5O.c +./src/H5Oefl.c +./src/H5Oprivate.h +./src/H5Osdspace.c +./src/H5Oshared.c +./src/H5Ostab.c +./src/H5P.c +./src/H5S.c +./src/H5Ssimp.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Tprivate.h +./src/H5Tpublic.h +./src/H5V.c +./src/H5Vprivate.h +./src/H5detect.c +./src/h5ls.c +./test/cmpd_dset.c +./test/dsets.c +./test/external.c +./test/hyperslab.c +./test/iopipe.c +./test/istore.c +./test/shtype.c +./test/tstab.c + Fixed comparisons between signed and unsigned values. Fixed + warnings about unused function arguments. + + +Changes since 19980402 +---------------------- + +./MANIFEST +./test/Makefile.in +./test/shtype.c [NEW] + Added some tests for shared data types. + +./configure.in + Removed MF and HL from the default debug list since. MF + because it hasn't been implemented yet and HL because it + produces lots of annoying messages about adjusting the size of + local heaps. + +./src/H5F.c +./src/H5T.c +./src/H5Tprivate.h + Fixed a bug with opening the same file twice. The first close + on the file_id incorrectly closed shared data structs. + Closing a file now correctly unshares data types that might be + pointing into that file. + +./src/H5T.c +./src/H5Tpublic.h + Added an H5Tis_shared(). The caller supplies a file and a + data type and the function returns true if the data type is + currently marked for sharing in that file. + +./src/H5AC.c +./src/H5F.c +./src/H5HL.c +./src/H5HG.c +./src/H5MF.c +./src/H5O.c + We now detect errors sooner when writing to a read-only + file. In the past, the error might not show up until the + cached item was flushed, and it was sometimes possible to not + even get an error! + +./src/H5I.c +./src/H5Iprivate.h + If the search function fails then H5I_search() returns + failure. Also, the first argument for the search function + isn't const anymore because we might want the search to have + side effects (like calling H5T_unshare() for all shared data + types whose file just closed). + + + +Changes since 19980330 +---------------------- + +./MANIFEST +./src/Makefile.in +./test/Makefile.in + Added new files. + +./config/linux +./src/H5HL.c +./src/H5HLprivate.h +./src/H5MF.c +./src/H5MFprivate.h + Added `-DH5HL_DEBUG -DH5MF_DEBUG' to the debug list. + +./html/H5.format.html + Updated shared object message information. + +./src/H5D.c + Datasets can now share data types. + +./src/H5F.c + Updated a comment that referred to H5ACC_WRITE. + +./src/H5HG.c +./src/H5HGprivate.h + Moved a few things around. Made debugging better so you can + now give a collection address to ./src/debug and it shows some + useful stuff. + +./src/H5O.c +./src/H5Ocont.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Olayout.c +./src/H5Oname.c +./src/H5Onull.c +./src/H5Oprivate.h +./src/H5Osdspace.c +./src/H5Oshared.c [NEW] +./src/H5Ostab.c + Supports shared messages. + +./src/H5T.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h + The H5Tshare() function allows the user to give the library + hints about how a data type will be used. + +./test/shtype.c + Tests the H5Tshare() function. + +./test/gheap.c + Tests the global heap. + +./configure.in +./config/BlankForm [NEW] +./config/alpha-dec +./config/freebsd2.2.1 +./config/hpux10.20 +./config/irix6.2 +./config/irix64 +./config/linux +./config/powerpc-ibm-aix4.2.1.0 +./config/rs6000-ibm-aix4.1.4.0 +./config/solaris2.5 + Cleaned up lots of configuration stuff and made the site + configuration files lots easier and more uniform. To make a + new file grab the BlankForm and modify it. + + By default, debugging is turned on for most packages. Within + a package one can use `#ifdef H5AC_DEBUG' to wrap debugging + code. Other options are: + + --enable-debug + --enable-debug=yes + The default, most but not all packages. + + --disable-debug + --enable-debug=no + --enable-debug=none + The symbol NDEBUG is defined and none of the package + debug symbols. + + --enable-debug=all + Debugging is turned on for all packages. This might + produce lots of output. + + --enable-debug=g,d + Debugging is turned on for H5G and H5D. + + A compile mode is also now supported + + --enable-production + --enable-production=yes + The library is compiled with optimizations turned on. + The compiler flags are augmented by adding PROD_CFLAGS + and PROD_CPPFLAGS which are defined in the site config + file. + + --disable-production + --enable-production=no + The default. The library is compiled for development + by including DEBUG_CFLAGS and DEBUG_CPPFLAGS defined in + the site config file. This is usually just `-g'. + + --enable-production=profile + --enable-production=pg + Builds a library for profiling by including the flags + from PROFILE_CFLAGS and PROFILE_CPPFLAGS defined in the + site config file. This is usullay just `-pg' but it + could include optimization flags as well depending on + the type of profile one wants. + + In summary, configure by saying `./configure' and you'll get a + development version of the library. Configure by saying + `./configure --enable-production --disable-debug' and you'll + get a production version with no debugging code. + + + +Changes since 19980324 +---------------------- + +./MANIFEST +./src/H5HG.c [new] +./src/H5HGprivate.h [new] +./src/H5HGpublic.h [new] +./src/Makefile.in + Added global heaps, H5HG. This compiles but is untested. + +./src/H5D.c +./src/H5G.c +./src/H5Gnode.c +./src/H5Gstab.c +./src/H5HL.c [renamed from H5H.c] +./src/H5HLprivate.h [renamed from H5Hprivate.h] +./src/H5HLpublic.h [renamed from H5Hpublic.h] +./src/H5Oefl.c +./src/Makefile.in +./src/hdf5.h +./test/theap.c + Renamed local heaps from H5H to H5HL. + +./src/H5AC.c +./src/H5ACprivate.h +./src/debug.c + Added debugging support for global heap collections. + +./html/H5.format.html + Ripped out the old small object heap documentation and added + documentation for the new global heap. + +./html/H5.api.html +./src/H5P.c +./src/H5Ppublic.h +./src/H5F.c +./src/H5Fprivate.h +./src/H5private.h + The H5Pget_version() function no longer returns a small object + heap version number. Instead, each collection of the global + heap has its own version number instead of a single number in + the file boot block. + +./bin/release + Omit files marked for removal by CVS even though the removal + hasn't been committed yet. + +./test/iopipe.c + Removed warnings about casting unsigned int to double on Irix64. + +./MANIFEST + Removed ./test/testpar/phdf5sup.c + +Changes since 19980324 +---------------------- + +./src/H5D.c + Zero element requests for H5Dread() and H5Dwrite() succeed. + +./src/H5F.c +./src/H5Fprivate.h + All files will have a root group. This greatly simplifies the + library at the expense of ~1k extra bytes in files that have + only one object. + +./src/H5D.c +./src/H5Dprivate.h +./html/Groups.html + Functions that used to take a file ID and an object name can + now take a group ID instead of a file ID. This doesn't change + the API, only it's documentation. + +./src/H5G.c +./src/H5Gprivate.h +./src/H5O.c +./src/H5Oprivate.h + Removed extra file arguments from some internal functions + since the file pointer can be found from the group pointer or + a symbol table entry (ent->file or H5G_fileof(group)). + Besides, when we eventually implement mounting one file on + another, H5G_namei() might return a different file than what + you gave it, and that file is part of the returned symbol + table entry. + +./src/H5G.c + Fixed bug with `.' appearing in a name. It used to hang the + library. + +./src/Makefile.in +./src/h5ls.c [NEW] +./MANIFEST + Added `h5ls' a simple program that takes a file name and a + directory and lists the contents of that directory using + H5Giterate(). + +./test/istore.c + Changed an argument to H5G_create(). + +./test/tstab.c + Removed test_1 which was testing that files with a single + object don't have a root group. This no longer applies. + + +Changes since 19980318 +---------------------- +./src/H5B.c +./src/H5Bprivate.h +./src/H5G.c +./src/H5Gnode.c +./src/H5Gpkg.h +./src/H5Gpublic.h +./src/H5Gstab.c + Implemented H5Giterate(). However, since most functions can't + take a group ID in place of a file ID yet, there's not a whole + lot that the operator can do besides print the name or something. + +./test/H5O.c + Fixed writing of four uninitialized bytes to the file as part + of an object header. + +./test/istore.c + For some reason, `mpirun -np 1 istore' results in extra + arguments on the command line that istore doesn't understand. + I'm probably forgetting to call some MPI function in + main(). Albert, Kim? So I commented out the `exit(1)' for the + time being. + +Changes since 19980318 +---------------------- + +./config/linux + Turned on MPIO if the host name is `arborea' so I always + compile it and realize when I break something instead of + waiting for Albert or Kim to find it. + +./MANIFEST +./html/H5.user.html +./html/IOPipe.html [NEW] +./html/pipe1.gif [NEW] +./html/pipe1.obj [NEW] +./html/pipe2.gif [NEW] +./html/pipe2.obj [NEW] +./html/pipe3.gif [NEW] +./html/pipe3.obj [NEW] +./html/pipe4.gif [NEW] +./html/pipe4.obj [NEW] +./html/pipe5.gif [NEW] +./html/pipe5.obj [NEW] + Documented the raw data I/O pipeline. + + + +Changes since 19980317 +---------------------- + +./MANIFEST +./configure.in +./configure +./Makefile.in +./bin/distdep [NEW] +./config/conclude.in +./config/depend.in +./src/.distdep [NEW] +./test/.distdep [NEW] + Added some code so non-GNU systems have a list of dependencies + between the .c files and the .h files. Hopefully this works + and y'all don't have to keep saying `make clean' each time you + change a header. + + On systems with GNU make, GCC, and Perl, the dependency + information is generated automatically from rules in + config/depend.in as has always been done. But now extra files + called `.distdep' (for `distributable dependencies) are left + in each directory and these are part of CVS and thus + releases. (A `make dep' will create dependencies on demand + without doing anything else.) + + On systems lacking one or more of the tools above, the various + `.distdep' files are inserted into the end of the Makefiles. + If you do developement on one of these systems you'll have to + update the `.distdep' and/or Makefile by hand, or wait until + you have access to a GNU system and do a `make dep'. + + +Changes since 19980316 +---------------------- + +./src/H5D.c +./src/H5T.c +./src/H5Tprivate.h + Fixed a bug found by Kevin Powell regarding preservation of + existing data during a read or write when the source and + destination data types are the same. Thanks Kevin! + + Fixed a couple warnings on Irix64. + +./src/H5D.c +./src/H5Dprivate.h +./src/H5P.c +./src/H5Ppublic.c +./src/H5Tconv.c +./src/H5Tpublic.h +./test/cmpd_dset.c + The application can now turn on/off the part of the I/O + pipeline that deals with preservation of initialized data. + The default is off since this will be the usual case and + turning it on slows down the pipe. Use H5Pset_preserve() and + H5Pget_preserve(). + +./src/H5Fistore.c + Added an optimization for reading/writing a single chunk of + chunked storage. + +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Olayout.c +./src/H5Oname.c +./src/H5Osdspace.c +./src/H5Ostab.c + Fixed warnings reported by marek@iiasa.ac.at. Thanks Marek. + +./src/H5Odtype.c + Fixed a failing assert() wrt reading compound types (not + present in hdf5-1.0.0a). + + +Changes since 19980313 +---------------------- + +./configure.in +./configure +./test/iopipe.c + Added check for system(3) + +./config/freebsd2.2.1 +./config/linux + Added -DH5D_DEBUG to the debug flags. + +./src/H5D.c +./src/H5Dprivate.h +./src/H5P.c +./src/H5Ppublic.h +./src/H5Sprivate.h +./src/H5Ssimp.c +./html/Datasets.html + Finally implemented strip mining in the I/O pipeline, placing + a user-defined upper bound on the amount of temporary memory + used by the pipeline. The default is 1MB type conversion and + background buffers allocated/freed on demand. However, the + size can be changed and/or application-allocated buffers + supplied with H5Pset_buffers() called on the data transfer + property list passed to H5Dread() and H5Dwrite(). + + Minor optimizations to H5Dread() and H5Dwrite(). More coming + later... + +./test/dsets.c + Added calls to H5Pset_buffer() to test application-defined + temporary buffers in the I/O pipeline. + +./test/Makefile.in + Removed `iopipe' from the list of confidence tests. Saying + `make timings' in the test directory runs timing tests. I did + this because (1) they don't really test anything new, and (2) + they can take a long time to run. + +Changes since 19980306 +---------------------- + +./MANIFEST +./src/H5D.c +./src/H5S.c +./src/H5Sprivate.h +./src/H5Ssimp.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5V.c +./test/Makefile.in +./test/iopipe.c [NEW] + Optimizations to the I/O pipeline. + +./src/H5Fistore.c +./src/H5Oefl.c + Fixed a few compiler warnings. + +./MANIFEST + Added entries for ./config/{intel-osf1,irix5.3} + +Changes since 19980305 +---------------------- + +./configure.in +./configure +./config/commence.in + Added checking for `ar' then `xar' and set the $(AR) variable + in the Makefiles. The check is not performed if $AR is + already defined in the environment (including being set in a + config file). We check for `-lcoug' for ASCI/Red. + +Changes since 19980305 +---------------------- + +./src/H5D.c +./test/external.c + A contiguous dataset can now be stored in external files in + such a way that the slowest varying dimension can be increased + after the dataset is created and even written. The user must + have reserved enough space in the external file and the data + space must allow an increase the the slowest varying dimension. + See test_3() of ./test/external.c + +./src/H5Oefl.c + Fixed an overflow bug with unlimited external storage. + +./src/H5V.c + Fixed a cast warning. + +./test/dsets.c + Make better use of automatic error reporting. + +Changes since 19980304 +---------------------- + +./MANIFEST + New files + +./html/extern1.gif [NEW] +./html/extern1.obj [NEW] +./html/extern2.gif [NEW] +./html/extern2.obj [NEW] +./html/Datasets.html + Documented external raw data storage. + +./html/Datasets.html +./html/chunk1.gif [NEW] +./html/chunk1.obj [NEW] + Added a picture and better description for chunking since it + seems that people are thinking chunks are fixed-size at the + file level instead of at the array level. + +./src/H5D.c +./src/H5Dpublic.h +./test/external.c + Changed H5Dget_create_parms() to H5Dget_create_plist(). + +./src/H5D.c +./src/H5Farray.c +./src/H5Fprivate.h +./src/H5Oefl.c +./src/H5Oprivate.h +./src/H5Sprivate.h +./src/H5Ssimp.c +./test/external.c +./test/istore.c + External raw data file I/O for contiguous storage is now + working. The library supports segments of various sizes which + can be scattered throughout multiple files in any order. + +./test/Makefile.in + Remove more temporary files. + + + +Changes since 19980228 +---------------------- + +./html/Dataspaces.html +./html/Errors.html +./html/Files.html +./html/H5.api.html +./html/review1.html +./src/H5private.h +./src/H5public.h +./test/dsets.c +./test/dtypes.c + Removed all the types like `int32' and `intn' into private + headers since they violate the naming scheme and pollute + application name space. Besides, our test files only use them + in a handful of places and it's probably useless to export + them to the app. The app is always written in terms of + standard numeric types or its own numeric types and probably + never in terms of HDF5 numeric types. If it were, then the + user would have to copy from their type to hdf5 type for + almost every hdf5 API function call! Same goes for return + values. I also removed SUCCEED/FAIL from the API since apps + should be checking against zero anyway. + + if (FAIL==(space=H5Screate_simple(...))) /*wrong*/ + if ((space=H5Fcreate_simple(...)<0)) /*right*/ + + +./src/H5.c + Changed arguments of H5version() from `uintn' to `unsigned'. + +./src/H5Tpublic.h +./src/H5T.c + Changed return type of H5Tget_nmembers() from `intn' to `int' + + +./src/H5A.c +./src/H5Aprivate.h +./src/H5Apublic.h + Changed `H5Asearch_func_t' to `H5A_search_func_t' and moved + its definition from the public to the private header file. + + +./html/H5.format.html + Documented changes made to the external file list (H5O_EFL) + message. + +./src/H5D.c +./src/H5Dprivate.h +./src/H5E.c +./src/H5Epublic.h +./src/H5O.c +./src/H5Oefl.c +./src/H5Oprivate.h +./src/H5P.c +./src/H5Ppublic.h + Added partial support for external raw data files. HDF5 can + now describe external raw data files by listing the file + names, offsets, and size for a dataset. However, we will + restrict a dataset to be stored "contiguously" when the + external file list is viewed as a single address space. The + current implementation is unable to read/write to external + files--that will come later this week as will documentation. + For now, take a look at ./test/external.c, particularly the + calls to H5Pset_external(). + +./test/Makefile.in +./test/external.c [NEW] +./MANIFEST + Added tests for external storage. Note: the read test is + supposed to fail at this point since reading external datasets + is not implemented yet. There is no write test. + +./src/H5S.c +./src/H5Sprivate.h +./src/H5Ssimp.c + Added H5S_get_npoints_max() to return the maximum possible + number of data points in a data space. + + Added an extra argument to H5S_get_dims() which returns the + maximum dims. + +./src/H5F.c +./src/H5Fprivate.h +./src/H5Fpublic.h +./src/H5M.c [DEPRICATED] +./src/H5Mpublic.h [DEPRICATED] + Changed `template' to `property list' in lots of places. + +./src/H5Osdspace.c + Removed an extra `\n' from a print statement. + +./src/H5S_public.h + Changed H5S_UNLIMITED to the maximum size_t value. + +./test/extend.c + "Extendable" is spelled "extendible". + +./src/H5Farray.c +./src/H5V.c +./src/H5Vprivate.h +./test/hyperslab.c + Strides are now type ssize_t instead of int. These have + nothing to do with the sample granularity arguments for + hyperslabs, which are also called "strides" in the code. + +./test/tstab.c + Changed assumptions about default address and length sizes. + +Changes since 19980227 +---------------------- + +./html/Errors.html [NEW] +./html/H5.user.html +./MANIFEST + Documents the new error handling interface and gives examples. + +./src/H5.c +./src/H5private.h +./src/H5Apublic.h +./src/H5E.c +./src/H5Eprivate.h +./src/H5Epublic.h + Rewrote error handling. Got rid of `push' overloading and + added a few API functions. The error stack is statically + allocated and not entered into H5A, simplifying error handling + within the error handler. Rudimentary support for threads. + Changed the names of some errors. + +./src/H5G.c +./src/H5Gnode.c +./src/H5H.c +./src/H5O.c +./src/H5T.c + Changed H5ECLEAR to H5E_clear(). + +./src/Makefile.in + Alphabetized source list. + +./test/dsets.c + Turned off error reporting around functions that are expected + to fail. Error messages are sent to stdout. + +./test/testhdf5.c +./test/testhdf5.h + Turned off automatic error reporting since this file mostly + calls internal functions and does its own error reporting. + +Changes since 19980226 +---------------------- + +./bin/release + Changed default to not tag CVS sources. + +./src/H5F.c + Replaced a constant switch with preprocessor directives. + Removed a local variable which was set but not used. + +./src/H5Fprivate.h + Changed `long long' to `int64' to get rid of ansi warnings in + a few places. + + Fixed bugs in INT64DECODE() and UINT64DECODE() for big-endian + architectures. This fixes all the bugs with the Irix -64 + compile. + +./src/H5F.c + The default address and length sizes are set according to the + sizeof(size_t) now that the bugs have been fixed. + +./src/H5Fpublic.h + Removed a trailing comma in an enumerated type. + +./src/H5Fstdio.c +./src/H5Fsec2.c + Added two more calls to fseek64() and lseek64(). Removed `long + long' in place of `int64' to suppress -ansi warnings. + +./src/H5P.c + Replaced a FAIL with H5F_LOW_ERROR. + +./src/H5private.h +./configure.in + Increased version number to hdf5-1.0.1a since we've already + released hdf5-1.0.0a. Include <sys/types.h>. Fixed + indentation. Fixed detection of off64_t for old Irix systems + where it might be a struct. + +./src/Makefile.in + Moved a comment from the shell to the makefile since some + versions of sh barf on interactive comments. + +./config/linux + Allow overriding of the CC variable from the command-line. It + still defaults to gcc but this allows us to specify a complete + path from test scripts by saying: + + CC=/usr/local/tools/gnu/gcc sh configure + + +Changes since 19980224 +---------------------- + +./MANIFEST + Changed names for P->S and C->P changes. + +./INSTALL + Added a note. + +./html/Files.html + Added a few details for some of the new H5Pset/get functions. + +./src/H5F.c +./src/H5Fpublic.h + Fixed automatic closing of files on exit(). + + Added public H5F_ACC_DEBUG. Using it to create or open a file + turns on debugging for that file, which currently just prints + cache statistics when the file is closed. + +./src/H5G.c + An error is returned if one tries to set the current working + group to something other than a group. + +./src/H5Gnode.c + Fixed a symbol table bug. Under certain circumstances it was + possible to enter a symbol in such a way that lookup of that + symbol failed. A bug report was sent to hdf5dev. + +./src/H5P.c +./src/H5Ppublic.h + Added the H5Pget_...() functions for file drivers. The + H5Pget_mpi() is a no-op that always fails. + +Changes since 19980219 +---------------------- + +./html/Files.html +./src/H5C.c +./src/H5Cpublic.h +./src/H5Ffamily.c +./src/H5Fprivate.h +./src/H5Fsplit.c +./test/tstab.c + Added file-access property functions. + + The split driver takes file extensions as properties. + +./src/H5A.c +./src/H5Aprivate.h + Added some comments. Changed H5A_destroy() to call the free + function on all the atoms that are destroyed. This fixes a bug + where the file boot block isn't updated if the file isn't + closed before calling exit(). + + Removed extra `*' and `&' from some places. + +./src/H5AC.c + Replaced an occurrence of NO_ADDR with NULL. + +./src/H5Odtype.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h + Data types of compound members are pointers. + +./H5private.h + Some changes to make lseek64() work on Irix 5.3 where header + files don't realize that `long long' works. + +./acconfig.h +./configure.in + Removed definition for PHDF5 since it looks like everyone is + useing HAVE_PARALLEL now. + +./configure.in +./src/H5detec.c + Added checks for gethostname() and getpwuid(). + +Changes since 19980219 +---------------------- + +./src/H5A.c +./src/H5C.c + Objects are removed from the group when there reference count + hits zero regardless of whether H5A knows how to free the + object. + +./src/debug.c +./test/tstab.c + Changed a zero to H5C_DEFAULT. + +Changes since 19980206 +---------------------- + +./configure.in +./src/H5Fprivate.h +./src/H5Fsec2.c + We now detect and use lseek64() on systems that have it (e.g., + Irix64) and are able to generate >2GB files on Irix XFS file + systems (and anything else that supports large files). This + change also removed some warning messages from the Irix `-64' + compiler. + + > $ ls -l istore.h5 + > -rw-r--r-- 1 matzke meshtv 8605436856 Feb 17 14:03 istore.h5 + +./configure.in +./src/H5Fprivate.h +./src/H5Fstdio.h + We now detect and use fseek64() on systems that have it (e.g., + Irix64) and are able to generate >2GB files on Irix XFS file + systems (and anything else that supports large files). This + change also removed some warning messages from the Iris `-64' + compiler. + +./src/H5E.c +./src/H5Epublic.h + Added the H5E_OVERFLOW error to signal file address overflow. + +./src/H5Fpublic.h +./examples/h5_chunk_read.c +./examples/h5_compound.c +./examples/h5_extend_write.c +./examples/h5_group.c +./examples/h5_read.c +./examples/h5_write.c +./html/Datasets.html +./html/Files.html +./html/H5.api.html +./html/H5.intro.html +./html/H5.sample_code.html +./html/ph5example.c +./html/review1.html +./test/cmpd_dset.c +./test/dsets.c +./test/extend.c +./test/tfile.c +./test/th5p.c +./test/theap.c +./test/tohdr.c +./test/tstab.c +./testpar/phdf5.c + Renamed file access constants to follow the naming scheme. + Also changed the base names a little to be more accurate as to + what they do. The old names H5ACC_WRITE and H5ACC_OVERWRITE + will temporarily work. + + H5ACC_DEFAULT --> H5F_ACC_RDONLY for H5Fopen() + H5ACC_DEFAULT --> H5F_ACC_EXCL for H5Fcreate() + H5ACC_WRITE --> H5F_ACC_RDWR + H5ACC_OVERWRITE --> H5F_ACC_TRUNC + + Albert or Kim: The H5ACC_INDEPENDENT and H5ACC_COLLECTIVE + macros in H5Fpublic.h should be an enum typedef and have names + more like H5F_MPIO_INDEPENDENT and H5F_MPIO_COLLECTIVE. Also + change the access_mode argument of H5Cset_mpio(). + + H5Fcreate() and H5Fopen() are more strict now about which + flags are acceptable for the operation. + +./src/H5Fprivate.h +./src/H5F.c +./src/H5C.c + Changed the file access template to make it more general. A + union contains a struct for each type of low-level driver and + the default template is initialized at run-time. + +./src/H5Fpublic.h +./src/H5F.c + Added H5Fget_access_template() and cleaned up + H5Fget_create_template(). + +./src/H5C.c + The H5Cset_mpi() no longer trashes the file access template + when an error is detected. We check for errors and *then* + update the file access template. + + Added H5C_close() so Albert and Kim have a place to release + the MPI communicator and info from the file access property + list. + + Kim or Albert: I notice in H5Cset_mpi() you copy the MPI + communicator. Do you need to do something similar in + H5C_copy()? + +./src/H5F.c + Added more error checking for the file creation and access + property lists because it used to be possible to make the + library dump core by swapping the creation and access property + list ID numbers of H5Fcreate(). + +./test/istore.c +./test/tfile.c +./test/th5p.c +./test/theap.c +./test/tohdr.c +./test/tstab.c +./testpar/testphdf5.c + One must pass H5C_DEFAULT as the file creation or access + property list in order to get the default property list. It + is no longer possible to pass zero or any other arbitrary bad + object ID. + +./src/H5Fcore.c +./src/H5Ffamly.c +./src/H5Flow.c +./src/H5Fmpio.c +./src/H5Fsec2.c +./src/H5Fsplit.c +./src/H5Fstdio.c +./src/H5MF.c + The file access property list is passed to all H5F_low_...() + functions and to the drivers. + +./src/H5Fcore.c + The block size can be set at run time on a per-file basis + instead of at compile time across all files. The "5000 items in + a group test" now takes 1.6 seconds. + +./src/H5private.h + Removed inclusion of mpi.h and mpio.h since they're included + from H5public.h. + +./src/H5Cpublic.h +./src/H5C.c + Added H5Cset_stdio(), H5Cset_sec2(), H5Cset_core(), + H5Cset_split(), and H5Cset_family() in addition to the + H5Cset_mpio() that Kim and Albert already wrote. We still + need the H5Cget_driver() and an H5Cget...() counterpart for + each of those functions. The split and family drivers still + need a little work but I'm checking this in anyway. + + +Changes since 19980205 +---------------------- + +./src/H5H.c +./src/H5Hprivate.h +./src/H5O.c +./src/H5Ocont.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Olayout.c +./src/H5Oname.c +./src/H5Onull.c +./src/H5Oprivate.h +./src/H5Odspace.c +./src/H5Ostab.c +./src/debug.c +./html/H5.format.html + Added an extra 4-byte field after the heap magic number for + alignment on the DEC alpha. Changed object header message + alignment to 8-bytes. + +./src/H5F.c +./src/H5Farray.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fprivate.h +./src/H5Fsec2.c +./src/H5Fstdio.c +./src/H5Gnode.c +./src/H5O.c +./src/H5Odtype.c +./src/H5P.c +./src/H5Pprivate.h +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tpublic.h +./src/H5V.c +./src/H5detect.c +./test/cmpd_dset.c +./test/dsets.c +./test/dtypes.c +./test/extend.c +./test/hyperslab.c +./test/istore.c +./test/th5p.c +./test/theap.c + Fixed a few irix64 warnings regarding size_t vs. int, + variables set but not used, printf formats + +./config/irix64 + Added `-woff 1196' to get rid of errors about __vfork() being + implicitly defined in a system header file. + +./src/H5B.c + Fixed a stack alignment problem. + +Changes since 19980204 +---------------------- + +./src/H5H.c + Changed a temporary buffer from 20 bytes to 52 bytes. + +./test/tfile.c + Default sizes for file addresses and sizes are the same as + sizeof(size_t) on the machine that creates the file. + +Changes since 19980204 +---------------------- + +./src/H5Odtype.c + Compound data type names weren't aligned correctly. Thanks to + Elena for finding this bug. + +Changes since 19980203 +---------------------- +./src/H5F.c + The default file addr and size sizes for new files are the + same as sizeof(size_t) on the machine that creates the + file. They used to always be 4. + +./src/H5Pprivate.h +./src/H5Psimp.c + Fixed `start' and `nelmts' arguments to be `size_t'. + +Changes since 19980203 +---------------------- + +./src/H5C.c +./src/H5Cprivate.h +./src/H5D.c +./src/H5Dpublic.h + Added H5Dget_create_parms(), trying to stay one step ahead of + Elena ;-) + +Changes since 19980130 +---------------------- + +./MANIFEST + Added H5Fmpio.c. One way to check that you've properly + included new files is to run `./bin/release none', then unpack + the resulting tar file somewhere and try to compile it. The + tar file will be ./releases/hdf-5.0.0a.tar. + +./config/freebsd2.2.1 +./config/linux + Added `-ansi' + +./acconfig.h + Added definitions for PHDF5 and HAVE_PARALLEL. + +./configure.in + Added minimal support for parallel build. Kim and Albert will + have to flesh this out or I can do it if they're more specific + about what they need. + +./config/commence.in + Added default value for $(RUNTEST) + +./config/conclude.in + `make test' uses value of $(RUNTEST) to run test cases. + +./src/Makefile.in + Added PARALLEL_SRC for conditional compilation of H5Fmpio.c + +./src/H5D.c +./src/H5Dpublic.h + Added H5Dget_type() for Elena + + +NOTE: These changes require that configure be rerun. If you're using + GNU make it will happen automatically, otherwise do it by + hand. + +Changes since 19980130 +---------------------- + +./MANIFEST +./html/study.html [NEW] +./html/study_1000x1000.gif [NEW] +./html/study_250x250.gif [NEW] +./html/study_499x499.gif [NEW] +./html/study_5000x1000.gif [NEW] +./html/study_500x500.gif [NEW] +./html/study_p1.gif [NEW] +./html/study_p1.obj [NEW] + The conclusions from a study of the HDF5 chunking + layout. Shows overhead and disk seeking. + +Changes since 19980130 +---------------------- + +./INSTALL + Added instructions for which C flags to set for debugging. + +./src/H5C.c +./src/H5Cpublic.h + H5Cset_chunk() takes const pointer. + +./src/H5D.c +./src/H5Dprivate.h +./src/H5Dpublic.h + Added H5Dextend() to extend the dimensions of a dataset. + +./src/H5Osdspace.c +./src/H5P.c +./src/H5Pprivate.h +./src/H5Ppublic.h +./test/cmpd_dset.c +./test/dsets.c +./test/th5p.c + Added the optional `maxdims' argument to H5Pcreate_simple() + and defined constant H5P_UNLIMITED which can appear in the + maxdims. Added `const' to arguments. + + Implemented H5Pcopy() + + Removed the unused file argument from H5P_modify. + + Added H5P_extend(). + + Removed the `flags' field from simple data types and we + determine if the `max' or `perm' arrays are valid by looking + at the pointer. Cleaned up the H5O_sdspace_debug output. + +./src/H5T.c + Fixed a printf format. + +./MANIFEST +./test/Makefile.in +./test/extend.c [NEW] + Added a test for multi-dimensional unlimited dimensions. + + +Changes since 19980130 +---------------------- + +./INSTALL +./Makefile.dist +./Makefile.in +./config/conclude.in + Some stupid make's don't know what PHONY means. I added + changed config to _config in the default makefile and added + _test to the other makefiles. + +./src/H5Psim.c + A `file_offset' argument got changed to `int' accidently that + causes tests to fail on 64-bit machines. I changed it back to + size_t. + +./src/H5T.c + Changed a couple printf formats. + +Changes since 19980129 +---------------------- + +./RELEASE + Added Library functions that I missed the first time. + +./html/Datasets.html + Added an example for Elena's question about how to read a + single member of a compound data type so it becomes an array + of that member in memory. + +./src/H5Pprivate.h + Fixed the prototype for H5P_get_hyperslab() to match the + definition. + +./src/H5Psimp.c + Oops, added the kludge back in for the offset argument, which + is still an `intn' instead of a `size_t'. + +./src/H5.c +./src/H5public.h +./src/H5F.c +./src/H5T.c +./src/H5Tpublic.h + Changed H5init() to H5open() and added an H5close() to fit our + create/open/close paradigm. The H5open() happens + automatically on the first call to the HDF5 library. The + H5close() happens automatically on exit() (unless the app + turns off that feature). H5close() closes all datasets and + files and releases all resources used by the library. + +./test/dsets.c + Added calls to H5open() and H5close() to test them. + +./test/dtypes.c + Removed call to H5init() since we no longer need it there. + +./src/H5Fstdio.c + Changed the PABLO_MASK to the right value. Thanks Kim. + +Changes since 19980129 +---------------------- + +./INSTALL +./INSTALL_MAINT +./README + Updated installation instructions for hdf-5.0.0a. + +./RELEASE + Updated release notes. Needs more work. + +./bin/release + The tarballs include the name of the root directory like + hdf-5.0.0a so it doesn't have to be explicitly created when + the files are extracted. + + +Changes since 19980129 +---------------------- + +./config/freebds2.2.1 +./config/irix64 +./config/linux + Added -DH5T_DEBUG to the debugging flags. Also changed `true' + to `:' for the Irix64 ranlib program. This turns on printing + of data type conversion statistics when the program exits. + +./html/Datatypes.html + Fixed documentation for data conversion functions and updated + examples. + +./src/H5D.c + The I/O pipeline updates data type conversion statistics. + +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tpublic.h + Cleaned up data type conversion registration interface. + + +Changes since 19980128 +---------------------- + +./MANIFEST + Added new files. + +./bin/Makefile.dist [NEW] + This file becomes the default top-level Makefile which invokes + configure with no arguments and then re-runs make. It's for + those people that don't read the INSTALL file. + +./bin/release [NEW] + Build HDF release tarballs. Arguments are a list of tarball + types and are: tar, compress, gzip, or bzip2. The default is + gzip. If the only argument is `all' then all types of tarballs + are created. The results are put in the `releases' directory. + Make sure you keep MANIFEST up to date. This program requires + perl-5.003 or better. + +./src/H5AC.c + Fixed a printf format. + +Changes since 19980128 +---------------------- + +./src/H5P.c + Removed H5Pcreate() + +./src/H5Psimp.c + Copy int[] return value from H5P_get_hyperslab() to size_t[] + argument to pass to other hyperslab functions. + +./test/dsets.c + Added a call to H5Eprint() to help track down Alberts O2k bug. + +Changes since 19980128 +---------------------- + +./MANIFEST + Added new config files. + +./src/H5private.h + Changed FUNC_ENTER() so it calls H5Eclear() for all API + functions but not for any private functions. It also prints + the names of all API functions on file 55 (just for the + prototype) so we can get a list of API functions called with + the Bourne shell commands like: + + ./testhdf5 55>api_list or + ./testhdf5 55>&1 1>/dev/null 2>&1 | less + + Otherwise the names are silently discarded. + +./src/H5.c +./src/H5C.c +./src/H5D.c +./src/H5F.c +./src/H5G.c +./src/H5M.c +./src/H5P.c +./src/H5T.c + Removed `H5ECLEAR' from lots of places in the source code. + +./src/H5E.c +./src/H5Eprivate.h + Recursion is a problem here, so to disable a call to + H5Eclear() from FUNC_ENTER just define a local variable like + this before you call FUNC_ENTER: + + const H5E_clearable_g = FALSE; + + Unfortunately this results in a warning: declaration of + `H5E_clearable_g' shadows global declaration. Good thing it's + only used in two places. + +Changes since 19980128 +---------------------- + +./config/conclude.in + The maintainer-clean target removes Emacs backup files, + mirroring backup and contrib files, core files, and profile + output files in addition to what it used to remove. + +./src/H5D.c + Fixed a buffer allocation bug in the output pipeline. + +./src/H5Gnode.c + Fixed a comparison against size_t + +./test/Makefile.in + Added the other temporary h5 files to the `MOSTLYCLEAN' var. + +./test/cmpd_dset.c + Added four tests for partial I/O. Don't you just love it when + something works on the first try! + +Changes since 19980128 +---------------------- + +./src/H5D.c +./src/H5Dpublic.c + Added H5Dget_space(). + +./src/H5Gstab.c +./src/H5H.c + Fixed a comparison with size_t against <0. + +./src/H5P.c +./src/H5Pprivate.h +./src/H5Ppublic.h + Changed `intn' to `int' for public function args and + returns. H5Pget_hyperslab() returns the dimensionality. + +./test/testhdf5.h + Clears error stack more frequently. + +./src/H5Psimp.c +./test/cmpd_dset.c + Impelementing data space conversion. + +Changes since 19980127 +---------------------- + +./Makefile.in +./config/commence.in + With GNU make you can now use `-j' and `-l' options and things + get built correctly. I can do a `make -j -l6 test' from a + clean hdf5 source tree (after configure) in 45 seconds (8 to + build dependencies, 26 to compile everything, and 11 to run + the tests). + +./src/H5Gnode.c + Removed a comment that no longer applies. + +./src/H5P.c +./src/H5Pprivate.h +./src/H5Ppublic.h + Changed H5Pselect_hyperslab() to H5Pset_hyperslab() and added + H5Pget_hyperslab() and H5P_get_hyperslab(). + + Replaced a couple short memset() calls with a for loop. + + Removed `if (foo!=NULL)' from around H5MM_xfree() calls. + + Clear hslab_def when the hyperslab disappears. + +./src/H5Tpublic.h + Removed trailing enum comma. + +Changes since 19980126 +---------------------- + +./MANIFEST + Added new files. + +./config/linux + Added `-pipe' to the default GCC flags since this is supposed + to result in better performance on a multi-processor machine. + +./html/Datasets.html +./html/dataset_p1.gif [NEW] +./html/dataset_p1.obj [NEW] + Updated to match source. The things which aren't part of the + Feb-1 prototype are marked in bold. Added an example for + partial I/O. + +./html/Groups.html [NEW] +./html/group_p1.gif [NEW] +./html/group_p1.obj [NEW] +./html/group_p2.gif [NEW] +./html/group_p2.obj [NEW] +./html/group_p3.gif [NEW] +./html/group_p3.obj [NEW] + New documentation for groups. + +./html/H5.sample_code.html + Updated two examples to match code. + +Changes since 19980123 +---------------------- + +./src/H5D.c +./src/H5T.c +./src/H5Tconv.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h +./test/cmpd_dset.c + Added support to turn background buffer on/off to help speed + up conversions. Currently, every type of conversion turns it + off except compound-->compound conversions which always turn + it on. In the future the compound-->compound conversions + might be more frugal. + + +Changes since 19980122 +---------------------- + +./MANIFEST + Added new files. + +./src/H5D.c + Added support for partial datatype I/O which is needed when + merging struct members between file and disk. This isn't the + efficient version because the merge requires an extra gather + (step 1b in my pipeline diagram) that isn't turned off when it + isn't needed. + +./src/H5T.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h + Conversion functions take an extra argument which is a pointer + to a blob of private data that can be used by the conversion + function to save anything that's expensive to compute and + is constant for a particular conversion path. + +./src/H5Tconv.c + Compound data type conversion is beginning to work! We can + handle conversions between compound types that have members + which are not arrays. It also supports partial conversion so + we can omit certain members of the source and not clobber + extra members in the destination. + +./test/Makefile.in +./test/cmpd_dset.c [NEW] + Added a test case that demonstrates how to use compound data + types in a dataset. The output doesn't match the output of + the other test cases yet, the the entire example is more + readable and written entirely with the API. + + +Changes since 19980122 +---------------------- + +./src/H5.c +./src/H5B.c +./src/H5Bprivate.h + Changed `new' to something else in 6 places for Fabio. + +./src/H5T.c +./src/H5Tconv.c + Beginning to work on compound data type conversion. Don't look + yet :-) + +Changes since 19980122 +---------------------- + +./src/*.h + Fixed indentation where indent(1) screwed up. This isn't by + any means the final say, but it's better than it was. + +./src/H5A.c +./src/H5Aprivate.h +./src/H5Apublic.h +./src/H5C.c +./src/H5D.c +./src/H5E.c +./src/H5F.c +./src/H5G.c +./src/H5M.c +./src/H5P.c +./src/H5T.c +./src/H5Tconv.c +./src/debug.c +./test/dtypes.c +./test/istore.c +./test/theap.c +./test/tohdr.c +./test/tstab.c + Removed some atom functions from the API and made them + library-scope. Also changed some names by removing the + redundant `atom' from the name and by adding a `_' after the + `H5A'. + +Changes since 19980121 +---------------------- + +./Makefile.in + Added more dependencies to .PHONY. + +./src/H5D.c + The write side of the I/O pipeline is implemented now too. + Things are looking good for the prototype and it's just a + matter of populating the library with the data type and data + space conversion functions. + +./src/H5Farray.c +./src/H5Fprivate.h +./test/istore.c + Changed the order of the arguments for H5F_arr_read() and + H5F_arr_write(). + +./src/H5P.c +./src/H5Pprivate.h + Changed the names of the arguments of H5P_find(). Fleshed out + the mgath and fscat callback types. + +./src/H5Psimp.c + Added stubs for H5P_simp_mgath() and H5P_simp_fscat() that + operate on the entire data space. Quincey, once you have the + data space hyperslab stuff in place let me know and I'll + finish the H5P_simp_*() functions to do partial I/O. Or you + can take a look at it too if you like; there's some comments + in there for you. + +./src/H5V.c +./src/H5Vprivate.h + Changed dimensionality arguments from `size_t' to `intn' to be + consistent with the rest of the library and to get rid of + warnings on 64-bit Irix. + +Changes since 19980121 +---------------------- + +./MANIFEST +./src/H5Psimp.c [NEW] +./src/Makefile.in + Added H5Psimp.c and populated it with some conversion + functions. Eventually the parts of H5P.c that operate on + simple data spaces will be migrated to H5Psimp.c and other + files will be created for other types of data spaces. + +./src/H5D.c + The read pipeline, H5Dread(), has been updated to handle data + space conversion although the actual simple data space + conversion functions don't do anything yet. But we're getting + really close! + +./src/H5P.c +./src/H5Pprivate.h + Added H5P_find() to locate data space conversion functions. + Added typedefs for structs related to data space conversion. + + +Changes since 19980120 +---------------------- + +./src/H5D.c + Fixed a rather major bug when reading/writing a chunked dataset. + +Changes since 19980116 +---------------------- + +./src/H5AC.c +./src/H5ACprivate.h +./src/H5B.c +./src/H5D.c +./src/H5Farray.c +./src/H5Fprivate.h +./src/H5V.c +./src/H5Vprivate.h + Fixed indent oopses. + +./src/H5D.c +./src/H5Fprivate.h +./src/H5Farray.c +./test/istore.c + We can now perform partial I/O on contiguous storage + transferring between a hyperslab of file storage and a + hyperslab of memory. However, partial I/O hasn't been added + to the I/O pipeline yet in H5D.c + +Changes since 19980114 +---------------------- + +./html/Datasets.html + Removed some archaic comments about data spaces. Fixed example + code. + +./MANIFEST +./html/H5.format.html +./src/H5O.c +./src/H5Oprivate.h +./src/H5Ocstore.c [DELETED] +./src/H5Oistore.c [DELETED] +./src/H5Olayout.c [NEW] +./src/Makefile.in +./test/istore.c + Replaced H5O_CSTORE and H5O_ISTORE messages with a more + general H5O_LAYOUT message. + +./src/H5D.c +./src/H5Dprivate.h +./src/H5Dpublic.h + A little more work on the pipeline. Access to the file data + is through the new H5F_arr_read() and H5F_arr_write() which do + I/O on hyperslabs of byte arrays and don't depend on data + layout. This should simplify the I/O pipeline quite a bit. + + I also added another argument to H5Dread() and H5Dwrite() to + describe the hyerslab of the file array on which I/O is + occuring. We discussed this at last week's meeting. + +./src/H5Farray.c [NEW] + Added functions that sit on top of H5F_block_read() and + H5F_istore_read() and implement a common set of functions + between all layouts. This means I/O of hyperslabs of + byte-arrays in the file to arrays of bytes in memory. When + operating on arrays of elements (>1byte) then we just add + another dimension. That is, a 10x20 array of int32 becomes a + 10x20x4 array of bytes. + + [This is the area I'll be working on most of next week to + implement partial I/O for contiguous data and to improve + performance for chunked data.] + +./src/H5Fistore.c +./src/H5Fprivate.h + Replaced the H5F_istore_t data type with the layout message + H5O_layout_t which looks almost the same. Eventually I'd like + to rename `istore' to `chunked' everywhere and use `istore' + for 1-d storage where the chunks are all different sizes like + in the small object heap where each object is a chunk. + +./src/H5V.c + Changed ISTORE to LAYOUT in one place. + +./test/dsets.c + Fixed for extra argument to H5Dread() and H5Dwrite(). + + + +Changes since 19980108 +---------------------- + +./MANIFEST +./src/H5Dconv.c [REMOVED] +./src/H5Tconv.c [NEW] +./src/Makefile.in + Changed H5Dconv.c to H5Tconv.c + +./html/Datatypes.html + Updated data type conversion section. + +./html/H5.apiv2.html + Removed sections about datasets and data types since they're + covered in their own chapters. + +./src/H5D.c + Supports data type conversion. + +./src/H5Odtype.c +./src/H5Tpkg.h + Changed `lo_pad' and `hi_pad' to `lsb_pad' and `msb_pad'. + +./src/H5T.c +./src/H5Tpkg.h +./src/H5Tprivate.h +./src/H5Tpublic.h +./src/H5detect.c + Added predefined data types. Added query/set more + properties. Added type conversion infrastructure. + +./test/dsets.c + Tests data type conversion during read. + +Changes since 19980107 +---------------------- + +./html/Datatypes.html + Updated to match code. + +./src/H5Odtype.c +./src/H5Oprivate.h +./src/H5Tpkg.h +./src/H5detect.c + Changed H5T_FIXED to H5T_INTEGER. + +./src/H5T.c +./src/H5Tprivate.h +./src/H5Tpublic.h +./test/dtypes.c + Implemented lots of type properties. + +./src/H5detect.c +./src/H5Tpublic.h + It is no longer necessary to call H5init() before using a + predefined data type. + +Changes since 19980105 +---------------------- + +./config/freebsd2.2.1 +./config/linux + Added -UH5O_DEBUG to the debug flags. Turn this on to get + lots of lines on stderr to show what objects are opened and + closed. + +./src/H5C.o +./src/H5Cpublic.h +./test/dsets.c +./test/tfile.c + Split H5Cget_prop() and H5Cset_prop() into functions for each + property. + +./src/H5D.c +./src/H5Dpublic.h +./src/H5Gstab.c +./src/H5O.c +./src/H5Ocont.c +./src/H5Ocstore.c +./src/H5Odtype.c +./src/H5Oefl.c +./src/H5Oistore.c +./src/H5Oname.c +./src/H5Onull.c +./src/H5Oprivate.h +./src/H5Osdspace.c +./src/H5Ostab.c +./src/H5P.c +./src/istore.c +./test/tohdr.c + Object header functions now understand constant + vs. non-constant messages. + +./src/H5F.c +./src/H5Fprivate.h + The file OID can be closed before other OID's. + +./src/H5Flow.c + H5F_addr_defined() is a macro in this file. + +./src/H5G.c +./src/H5Gpublic.h +./test/tstab.c + A current working group cannot be deleted. + +./src/H5Gent.c +./src/H5Gpkg.h + Removed unused functionality. + +./src/H5public.h + Includes <sys/types.h> for size_t. + + +Changes since 19971219 +---------------------- + +./src/H5private.h + Changed HDF5_MAJOR_VERSION to 5 + +./src/H5Aprivate.h +./src/H5Apublic.h + Added group atoms. + +./src/H5D.c +./src/H5P.c +./test/istore.c +./test/tohdr.c +./test/tstab.c + Updated for symbol table interface changes. + +./src/H5F.c +./src/H5Fprivate.h + Simpler handling of special case files: empty files and files + with a single object. + +./src/H5G.c +./src/H5Gent.c +./src/H5Gnode.c +./src/H5Gpkg.h +./src/H5Gprivate.h +./src/H5Gpublic.h +./src/H5Gshad.c (DELETED) +./src/H5Gstab.c +./src/Makefile.in + Removed shadows, simplifying code. Symbol table entries are + allowed to cache only constant meta data. Fixed naming. + +./src/H5O.c +./src/H5Oprivate.h + Access to object headers is always done through a symbol table + entry instead of a file address. Added stubs for opening and + closing object headers to be used when deletion is implemented. + + +Changes since 19971216 +---------------------- + +./html/Datatypes.html + Fixed some spelling errors, added information from 12/19 + developers' meeting, added compound data types defined in + terms of other compound data types. + +./html/H5.format.html + Some formatting changes and some minor updating. + +./src/H5ACprivate.h + Removed some debugging fields from a struct when debugging is + turned off. + +./src/H5H.c + Reformatted a couple long lines. + +./test/istore.c + Flipped a couple constants for testing. Nothing important. + +Changes since 19971211 +---------------------- + +./html/Datasets.html + Updated from Friday's discussion. + +./html/Datatypes.html + Ready for review. + +./html/H5.format.html + Updated boot block to match source. Removed unused object + header messages. + +./src/H5.c + Changes to error handling. + +./src/H5B.c + Increased size of internal static buffers. + +./src/H5C.c + Fixed syntax error when NDEBUG is defined. + +./src/H5E.c +./src/H5Eprivate.h +./src/H5Epublic.h + Errors can now be printed with H5Eprint(). Other minor + changes to names and arg types. + +./src/H5F.c + The base address is now stored in the boot block. The user + block size and the base address are synonyms. + +./src/H5Fstdio.c + Fixed a bug with a return value from fseek(). + +./src/H5H.c + Added alignment constraints to get rid of unaligned access + errors on the DEC alpha having to do with the heap free list. + +./src/H5P.c +./src/H5Ppublic.h + Changed some size arguments from int to size_t and fixed + memory allocation calls. + +./src/H5T.c +./src/H5Tpublic.h + Changed the order of functions so all the public ones are at + the top of the file. Other minor changes. + +./src/H5detect.c + Added a newline to a string constant. + +./test/dsets.c +./test/dtypes.c +./test/hyperslab.c +./test/istore.c + Added a definition for __FUNCTION__. Changed a couple + variable types. + +./test/testhdf5.h + The error stack is printed when something goes wrong. + +Changes since 19971211 +---------------------- + +./MANIFEST +./src/H5Osdtyp.c -> H5Odtype.c +./src/H5Osdim.c -> H5Osdspace.c +./src/Makefile.in + Changed the names of these files to better reflect what they + actually do. + +./src/H5.c +./src/H5AC.c +./src/H5B.c +./src/H5C.c +./src/H5D.c +./src/H5E.c +./src/H5Eprivate.h +./src/H5Epublic.h +./src/H5F.c +./src/H5Fcore.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fsec2.c +./src/H5Fsplit.c +./src/H5Fstdio.c +./src/H5G.c +./src/H5Gent.c +./src/H5Gnode.c +./src/H5Gshad.c +./src/H5Gstab.c +./src/H5H.c +./src/H5M.c +./src/H5MF.c +./src/H5O.c +./src/H5Osdtyp.c (./src/H5Odtype.c) +./src/H5P.c +./src/H5T.c +./src/H5detect.c +./src/H5private.h + Added an argument to the HRETURN_ERROR(), HGOTO_ERROR(), and + HERROR() macros which is a string error message. This allows + us to give extra information which can't be represented by the + major and minor error numbers. This information was + previously in comments just before or after the macro call. + The string isn't currently used, but I'm planning to change + the test files so they print an error trace when something + fails. This should make debugging a little faster since it's + often obvious what's wrong if we could just see the error + stack without even having to start a debugger. + +./html/Datasets.html + Updated the example to use H5Cset_prop(). + +Changes since 19971210 +---------------------- + +./MANIFEST + Removed H5config.h since it's generated from H5config.h.in. + +./src/H5C.c +./src/H5Cprivate.h + Changed H5Csetparm() to H5Cset_prop() and changed it to pass + property values by value instead of reference. Changed + H5Cgetparm() to H5Cget_prop(). Changed data types of file + creation properties so the application can use `int' or + `size_t' for most properties. Properties and their types are + documented in H5Cget_prop(). + + Changed H5C_class() to H5Cget_class() to make the naming more + uniform across packages. + +./src/H5Cpublic.h + Changed names of properties to make them more uniform across + packages: H5F_USERBLOCK_SIZE became H5F_SIZEOF_USERBLOCK, + H5F_OFFSET_SIZE became H5F_SIZEOF_ADDR, H5F_LENGTH_SIZE became + H5F_SIZEOF_SIZE. + +./src/H5D.c +./src/H5Dprivate.h + Added support for chunked data storage. There still isn't any + support for data type conversion or data space conversion, so + chunked storage doesn't do much at this time. + +./src/H5E.c +./src/H5Epublic.h + Added the H5E_TEMPLATE major error number. I'm about the + change the HGOTO_ERROR() and HRETURN_ERROR() macros to take an + error string as an additional argument instead of specifying + it as a comment. + +./src/H5Fistore.c + Added `const' to the `buf' argument of H5F_istore_write() + although this temporarily causes a compiler warning. + +./src/H5Fprivate.h + Changed data types of certain file-related variables from + types like `uint8' to `uintn' since the library data types + should not depend on the file data types. + +./src/H5P.c +./src/H5Pprivate.h +./src/H5Ppublic.h + Moved H5Pget_lrank() to H5Pget_ndims(), and H5Pget_ldims() to + H5Pget_dims() to make naming more uniform. Dimensions should + always be of type `size_t'. Similarly for H5P_get_lrank() and + H5P_get_ldims(). + +./test/dsets.c + Added test for creation of chunked datasets. + +./test/dsets.c +./test/istore.c +./test/tfile.c + Template changes. + +./test/th5p.c + Accommodated changes to H5P. + +Changes since 19971114 +---------------------- + +./MANIFEST + Added/removed files + +./config/conclude.in + Added ability to clean other files. The extra files to remove + should be listed in a make variable with the same name as the + target. For instance, $(MOSTLYCLEAN) is a list of files in + addition to the normal files that should be removed when the + user types `make mostlyclean'. + +./html/Datasets.html NEW + Documents the dataset interface (H5D). + +./html/Datatypes.html NEW + Documents the data type interface (H5T). + +./html/H5.format.html +./html/storage.html + Updated to reflect source changes, including the data type + message. The byte layout tables were also reformatted + slightly. + +./src/*.[ch] + Removed the interface initialization argument from + FUNC_ENTER() and made it a locally-defined preprocessor + symbol, INTERFACE_INIT. + + Changed `offset' to `address' and `length' to `size' in + documentation so it's more consistent. `Offset' still appears + occassionally when it refers to a byte offset within some + other data structure. + + Moved interface termination function prototypes from public + header files to .c files and made them static. + +./src/H5.c +./src/H5public.h + Added H5init() because it's possible that the predefined data + types are not initialized. This happens only if the first + call to the hdf5 library passes a predefined data type symbol + as an argument. There should be some way to fix this... + +./src/H5A.c +./src/H5Aprivate.h +./src/H5Apublic.h + The free_func returns SUCCEED or FAIL, although the return + value is ignored by H5A. This is so we can use the various + H5*_close() functions to free things. + + H5Ainc_ref() and H5Adec_ref() are no longer public. Many of + the other atom functions should also be made private, but I'll + save that for later... + + Added additional template groups called H5_TEMPLATE_0 through + H5_TEMPLATE_7 that are used by the various template + subclasses. + + Increased the number of bits used for atom groups to prevent + negative atoms. + +./src/H5AC.c +./src/H5ACprivate.h + Changed H5AC_new() to H5AC_create() to make names more consistent. + +./src/H5B.c +./src/H5Bprivate.h + Changed H5B_new() to H5B_create() to make names more consistent. + +./src/H5C.c +./src/H5Cprivate.h +./src/H5Cpublic.h + Now supports multiple subclasses of templates, although it's + done with big switch statements. The default values for + templates are defined in the source file to which that + template belongs. This got rid of lots of needless + preprocessor constants. + + Added H5Ccreate() to create a new template. Changed + H5C_release() to H5Cclose() to make the naming more + consistent. + +./src/H5D.c +./src/H5Dprivate.h +./src/H5Dpublic.h + Enhanced to use the new dataset interface, and uses the enhanced + data type and data space interfaces, which haven't been + completely implemented. The dataset interface doesn't handle + non-contiguous storage, compression, or data type and space + conversions yet. + +./src/H5F.c +./src/H5Fprivate.h +./src/H5Fpublic.h + Removed H5Fflush() since just calls H5F_flush(), which doesn't + do what the user would probably think it does, namely, flush + everything. It only flushes those things sitting in the H5AC + cache and the boot block. + + Changed the `file_create_parms' field of H5F_low_t to just + `create_parms' since the `file' part is obvious. + +./src/H5Fistore.c + Added some support for external files. Mostly just in the + file format and not supported much by the library yet. I need + to finish some dataset functions first. + + Changed H5F_istore_new() to H5F_istore_create() to make names + more uniform across packages. + +./src/H5Flow.c + Flushing a file causes the file to be physically extended to + the logical eof. This prevents H5F_open() from thinking a + file has been truncated. Most of the time the file will + already be that large, and when it isn't Unix will often just + allocate the final block anyway. + +./src/H5G.c +./src/H5Gent.c +./src/H5Gnode.c +./src/H5Gpkg.h +./src/H5Gprivate.h +./src/H5Gstab.c + Removed H5G_basename() + + Removed (temporarily) data type information from symbol table + entries and renamed H5G_CACHED_SDATA to H5G_CACHED_SDSPACE to + reflect that it's a simple data space and has nothing to do + with raw data. + + Changed H5G_node_new() to H5G_node_create() and H5G_stab_new() + to H5G_stab_create() to make names more uniform across + packages. + + Fixed an undefined address bug that happens when H5G_node_debug() + program doesn't pass enough info to H5G_node_load(). + +./src/H5H.c +./src/H5Hprivate.h + Changed H5H_new() to H5H_create() to make the names more + uniform across packages. + +./src/H5M.c +./src/H5Mprivate.h +./src/H5Mpublic.h + Nulled all the create functions. Most of the other callbacks + are to public functions. Removed H5Mcreate(). + + Changed hobjtype_t to group_t since it has to be the same + thing anyway. + +./src/H5O.c +./src/H5Oprivate.h +./src/H5Osdim.c +./src/H5Osdtyp.c + Changed H5O_SIM_DIM to H5O_SDSPACE (simple data space) since + `simple data space' is its official name, not `simple + dimensions'. Will eventually add H5O_CDSPACE for comples data + spaces. Changed _sim_dim_ to _dspace_. + + Replaced H5O_SIM_DTYPE and the compound data type messages + with a single H5O_DTYPE message. Changed _sim_dtype_ to _dtype_. + + Changed H5O_STD_STORE to H5O_CSTORE (contiguous storage) since + contiguous storage is not necessarily standard. Changed + _std_store_ to _cstore_ in H5Ocstore.c + + Added the H5O_EFL (external file list) message. + + Changed H5O_new() to H5O_create() to make names more uniform + across packages. + +./src/H5Oefl.c NEW + External file list message for specifying which non-hdf5 files + contain raw data for a dataset. + +./src/H5P.c +./src/H5Pprivate.h +./src/H5Ppublic.h + Renamed and moved data structures to make the names conform to + our naming scheme. + +./src/H5T.c +./src/H5Tprivate.h +./src/H5Tpublic.h +./src/H5Tpkg.h NEW + Data structures redesigned to be more flexible. The interface + was redesigned to make it more regular and to make some names + more uniform across packages. + +./src/H5detect.c + Output was changed to produce a file that conforms to the hdf5 + coding standard. + +./src/Makefile.in + Generates H5Tinit.c by running H5detect. + +./src/debug.c + Moved command argument processing. + +./test/Makefile.in + Added new tests. + +./test/dsets.c NEW + Tests datasets. + +./test/dspace.c NEW + Tests data spaces. + +./test/dtypes.c NEW + Tests data types. + +./test/istore.c +./test/tfile.c +./test/th5p.c +./test/theap.c +./test/tohdr.c + Changed to work with new function names. + +./test/testhdf5.c + Removed the data type and dataset tests since they're now in + their own files. They had to be rewritten because of extensive + changes to those interfaces. + + +Changes since 19971106 +---------------------- + +./MANIFEST +./src/Makefile.in + Added H5Ffamily.c and H5Fsplit.c + +./src/H5B.c +./src/H5Bprivate.h +./src/H5Gnode.c + Added `const' to sublass arguments. + +./src/H5F.c +./src/H5Flow.c +./src/H5Fsec2.c + Make sure file buffers get flushed during a call to + H5Fflush(). Check for overflow in address encoding and decoding. + +./src/H5Ffam.c +./src/H5Fprivate.c +./test/istore.c + Implementation of file families so 32-bit machines can access + 64-bit files. + +./src/H5Oprivate.h + Removed H5O_NO_ADDR constant. + +./config/freebsd2.2.1 +./config/linux + Added -DH5G_DEBUG and -DH5F_DEBUG to the list of debugging flags. + +./html/H5.format.html + Changed some <offset>-sized things to <length>-sized things. + +./src/H5AC.c +./src/H5ACprivate.h +./src/H5B.c +./src/H5Bprivate.h +./src/H5C.c +./src/H5D.c +./src/H5F.c +./src/H5Fcore.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fprivate.h +./src/H5Fsec2.c +./src/H5Fstdio.c +./src/H5G.c +./src/H5Gent.c +./src/H5Gnode.c +./src/H5Gpkg.h +./src/H5Gprivate.h +./src/H5Gshad.c +./src/H5Gstab.c +./src/H5H.c +./src/H5Hprivate.h +./src/H5MF.c +./src/H5MFprivate.h +./src/H5O.c +./src/H5Ocont.c +./src/H5Oistore.c +./src/H5Oprivate.h +./src/H5Ostab.c +./src/H5Ostdst.c +./src/H5pivate.h +./src/debug.c +./test/istore.c +./test/theap.c +./test/tohdr.c +./test/tstab.c + Lots of changes caused by generalizing addresses. The haddr_t + is now a struct, so you can no longer perform arithmetic on + it. But since it's small, simple, and often used, storage is + allocated like with an integer. But we always pass them + around by reference. That is, when using an address in + another struct, allocate space: + + struct my_struct { + char *name; + haddr_t address; + } x; + + But when passing it to a function, pass by reference: + + H5F_addr_print (stderr, &(x.address)); + + Addresses should be initialized with + + H5F_addr_undef (&(x.address)); + + Functions for operating on addresses are in H5Flow.c and begin + with H5F_addr_... Functions never return haddr_t or haddr_t*; + they always pass them through arguments instead. A function + that returns an address through an argument does so with its + last argument and it is marked with `/*out*/'. Calls to such + functions also mark output-only arguments with `/*out*/' + +./src/H5Fsplit.c (new) + A two-member family where all meta data goes in the first + member and all raw data goes in the second member. + +./src/H5B.c +./src/H5D.c +./src/H5F.c +./src/H5Ffamily.c +./src/H5Fistore.c +./src/H5Flow.c +./src/H5Fprivate.h +./src/H5Fsec2.c +./src/H5Fstdio.c +./src/H5Gnode.c +./src/H5H.c +./src/H5MF.c +./src/H5MFprivate.h +./src/H5O.c + Differentiate between meta data storage and raw data + storage. Provide a mechanism so that the file driver can + extend the file to allocate more memory. + +./src/H5E.c +./src/H5Epublic.c + Added the error H5E_TRUNCATED to be reported when the file is + shorter than the length recorded in the boot block. + +./src/H5F.c + Added H5F_locate_signature() so we only do it in one place + now. + +./INSTALL +./INSTALL_MAINT + Just a couple clarifications. + +./html/ExternalFiles.html +./html/storage.html + Documents how external files work. + +./test/hyperslab.c +./test/istore.c + Fixed printf's on 64-bit machines. + +./test/istore.c + Added ifdef's to test the split file driver. + +Changes since 19971024 +---------------------- + +./config/linux +./config/freebsd2.2.1 + Rewritten to be more flexible. + +./src/H5AC.c +./src/H5ACprivate.h +./src/H5F.c +./src/H5H.c +./src/H5Gpkg.h +./src/H5Gshad.c +./src/H5O.c +./test/istore.c +./test/tstab.c + Accumulates cache statistics and displays the results on + stderr when the file is closed if it was opened with + H5F_ACC_DEBUG passed into H5F_open() + +./src/H5B.c +./src/H5Bprivate.h +./src/H5Fistore.c +./src/H5Gnode.c + Added more debugging which is turned on if H5B_DEBUG is + defined on the compile command (see config/linux). + + Fixed a couple of bugs with left insertions which are used by + the indexed storage stuff. + +./src/H5Flow.c + Fixed a memory leak. + +./src/H5Fprivate.h + Fixed warnings about shifting more than size of object. + +./src/H5Fstdio.c + Fixed seek optimizations back to the way Quincey originally + had them. + +./src/H5V.c + Removed unused variables. + + +Changes since 19971023 +---------------------- + +./config/conclude.in + Test work when `.' isn't in $PATH. + +./src/H5F.c +./src/H5Fcore.c NEW +./src/H5Flow.c +./src/H5Fprivate.h +./src/H5Fsec2.c +./src/H5Fstdio.c +./src/Makefile.in +./MANIFEST + Added the in-core temporary file driver as an exercise to + clean up some of the H5F package. It speeds up `testhdf5 -o + stab' by 25 percent! If you want to try it you'll need to + recompile everything with `-DH5F_LOW_DFLT=H5F_LOW_CORE'. + Don't expect testhdf5 to ever work since creating a file, + closing it, and then opening it for read-only will fail. + +Changes since 19971021 +---------------------- + +./MANIFEST +./src/Makefile.in + Added new files. + +./html/H5.apiv2.html + Added documentation for group stuff. + +./src/H5private.h +./src/H5E.c +./src/H5Epublic.h +./src/H5F.c +./src/H5Flow.c NEW +./src/H5Fprivate.h +./src/H5Fsec2.c NEW +./src/H5Fstdio.c NEW + Low-level file driver is selected at runtime. + +./src/H5Fprivate.h + Got rid of `shift >= sizeof operand' warnings on big endian + machines. + +./src/H5Fistore.c +./test/istore.c + Still working on indexed storage... + +./src/H5H.c +./src/H5Hprivate.h + Removed alignment constraints. + +Changes since 19970916 +---------------------- + +./config/depend.in + Fixed backslashes in sed script because the H5Gnode.c + dependency info was disappearing. You'll have to rerun + config.status to rebuild the Makefiles unless you use gnu + make. + +./config/conclude.in + Also removes emacs backup files, TAGS, and svf backup files. + +./config/linux + Grouped gcc flags and added provisions for debugging vs. production. + +./html/H5.format.html + Updated messages 0x0008, 0x0009, and 0x000A. + +./html/storage.html + Documentation describing storage schemes. + +./src/Makefile.in +./test/Makefile.in + New source files. + +./src/H5A.c +./src/H5Apublic.h +./src/H5C.c + Changed VOIDP to void* in a couple places. + +./src/H5AC.c +./src/H5ACprivate.h +./src/H5B.c +./src/H5Bprivate.h +./src/H5G.c +./src/H5Gnode.c +./src/H5Gprivate.h +./src/H5H.c +./src/H5O.c + Removed `const' from some variables because H5G_node_found() wanted + to modify it's udata argument. Removing const there caused it + to cascade to these other locations. + +./src/H5AC.c +./src/H5ACprivate.h +./src/H5B.c +./src/H5Gnode.c +./src/H5Gstab.c +./src/H5H.c +./src/H5O.c + Added an extra argument to H5AC_find_f() and H5AC_protect(). This + arg gets passed to the load() method. Also added an extra + argument to the H5AC_find() macro. + +./src/H5B.c +./src/H5Bprivate.h +./src/H5Gnode.c + Extra argument passed to the sizeof_rkey() method. + +./src/H5Fprivate.c +./src/H5Fistore.c (new) + Added indexed I/O operations. + +./src/H5G.c +./src/H5Gnode.c +./src/H5Gprivate.h + Beginning to add H5G_open/close and related bug fixes. + +./src/H5Oprivate.h +./src/H5Oistore.c (new) + Added the H5O_ISTORE messsage (0x0008) for indexed storage of + objects. + +./src/H5private.h + Added extra braces around both sides of the FUNC_ENTER() and + FUNC_LEAVE() macros so FUNC_ENTER() can appear before + declarations or after executable statements the second case is + used by H5G_namei() to initialize output arguments to sane + values before FUNC_ENTER() might return failure. + + int f () + { + int decl1; + printf ("This happens before FUNC_ENTER()\n"); + FUNC_ENTER (...); + int another_declaration; + +./src/H5B.c +./src/H5Bprivate.h +./src/H5Gnode.c + Extra arguments for key encoding and decoding. + +./src/H5E.c +./src/H5Epublic.h +./src/H5Fistore.c +./src/H5Oistore.c +./src/H5Oprivate.h + Indexed, chunked, sparse storage (not ready for general consumption + yet). + +./src/H5V.c (new) +./src/H5Vprivate.h (new) +./test/hyperslab.c (new) + Vector, array, and hyperslab functions. + +./src/H5B.c +./src/H5Bprivate.h +./src/H5Fistore.c +./src/H5Gnode.c +./src/H5V.c +./src/H5Vprivate.h +./test/hyperslab.c + Added functionality for indexed storage. + +./src/H5F.c + Fixed problems with seek optimizing. Recommend we disable it + until we can implement it in the file/address class since all + of HDF5 must be aware of it. + +./src/H5O.c + Fixed comeent speling erorr :-) + +./MANIFEST + Added new files. + +./config/conclude.in + Added the word `Testing' to the test cases. So if a test + program is called hyperslab then the make output will contain + the line `Testing hyperslab'. + +./config/linux + The default file I/O library is Posix section 2 on my linux + machine so I can do some I/O performance testing. + +./src/H5C.c +./src/H5Cprivate.h +./src/H5Cpublic.h + Added ability to set size of indexed-storage B-tree. + +./src/H5D.c +./src/H5E.c +./src/H5Epublic.h +./src/H5F.c +./src/H5Fprivate.h +./src/H5G.c +./src/H5Gnode.c +./src/H5Gpkg.h +./src/H5Gprivate.h +./src/H5Gpublic.h +./src/H5Gshad.c +./src/H5Gstab.c +./test/stab.c + Changed `directory' to `group' in numerous places. + +./src/H5private.h + The FILELIB constant can be set on the compile command-line. + +./src/istore.c NEW + Tests for indexed storage. + + +Changes since 19970915 +---------------------- + +./src/H5Apublic.h + Removed H5_OID. + +./src/H5D.c + Fixed a few things to work better with symbol tables. Combined + the H5D_oid_t and H5D_dataset_t structs. + +./src/H5Dprivate.c + Combined the H5D_oid_t and H5D_dataset_t types. + +./src/H5M.c + Removed the callback list for H5_OID. + +./test/th5d.c + Changed the H5Mfind_name() return value and removed the call + to H5Maccess(). + +./test/th5p.c + Removed unused variables. + +Changes since ???????? +---------------------- +./src/H5G.c + Fixed an error in H5G_namei() that ignored the object name + when the object was the only thing in a file. + +./test/th5d.c + Changed and object name for a read request. + +Changes since 19970813 +---------------------- + +./html/H5.format.html + Changed the format of the boot block to get rid of the B-tree + size and replace it with K values for the various types of + B-trees. + +./src/H5B.c +./src/H5Bprivate.h + The B-tree K value comes from a combination of the B-tree + subclass and the file. + +./src/H5C.c +./src/H5F.c +./src/hdf5lims.h +./src/hdf5type.h + Removed the B-tree size parameter and added an array of B-tree + K values. Also added symbol table node K value. + +./src/H5Eprivate.h +./src/H5Eproto.h + Added H5E_LINK for errors involving link counts. + +./src/H5G.c + Inserting something into a directory with H5G_insert() + increments the link count in the object header. The root + object should always have a link count of at least 1. + +./src/H5Gnode.c +./src/H5Gprivate.h + The symbol table node K value comes from the file instead of + being a constant. + +./src/H5Olink.c + Added an assert(), fixed a hard-link bug. + +./test/tfile.c + Removed tests for H5_BTREEPAGE_SIZE and added tests for + H5_SYM_LEAF_K and H5_SYM_INTERN_K. + +./test/tstab.c + Removed call to H5O_link() since it's handled by H5G_insert(). + + + +Changes since 19970812 +---------------------- + +Changes since 19970811 +---------------------- + +./src/H5AC.c + We sort the cache before a complete flush because it might be + more efficient to write things back to disk in order of + increasing address. If you want the old way then undef the + SORT_BY_ADDR constant at the top of H5AC.c I haven't + determined which systems and I/O libraries this helps or + hurts. (This is currently off because of a bug I need to track + down that causes qsort() to run for a really long time). + +./src/H5B.c + Fixed a couple more bugs. + +./src/H5Eprivate.h +./src/H5Eproto.h + Added major H5E_DIRECTORY and minor H5E_EXISTS, H5E_COMPLEN. + +./src/H5G.c + Added directory-aware functions. + + The heap and B-tree are created when a directory is created + instead of when the first symbol is added. This simplifies + symbol table entry caching for the directory since the cached + value never changes now. + +./src/H5Gnode.c +./src/H5Gprivate.h + Fine tuned the B-tree K values for symbol tables assuming an + average number of symbols is about 100 per directory. The + tuning minimizes storage space. + + Fixed a return value in H5G_node_cmp(). + +./src/H5H.c +./src/H5Hprivate.h + Moved some macros the the header file. + +./src/H5O.c +./src/H5Ocont.c +./src/H5Onull.c +./src/H5Ostab.c + Changed the arguments for the decode method for messages. The + second argument is the raw message size. + + Added a class variable for native message size. + + Added H5O_reset() to free memory used internally by a message. + +./src/H5Oname.c NEW +./src/H5Oprivate.h +./src/Makefile + The object name message. + +./src/hdf5port.h + Added defn for HDstrdup() + +./test/tfile.h + Removed unused local variables. + +./test/tstab.c + Now uses directory-aware functions which in turn call the + unaware functions. + +Changes since 19970808 +---------------------- + +./src/H5B.c +./src/H5Bprivate.h +./src/H5G.c + H5B_new() only takes two arguments. + +./src/H5C.c + Fixed initializer for default_file_create to be the same order + as it's definition. + +./src/H5D.c + Changed commented-out code to #if 0/#endif. #if'd out a + variable that was unused because of #if'd out code. + +./src/H5Dproto.c + Added a prototype for H5Dwrite(). + +./src/H5F.c + Changed parentheses to fix precedence problems from: + + flags & (~H5AC_OVERWRITE) != 0 + to + (flags & ~H5AC_OVERWRITE) != 0 + +./src/H5H.c + Heap reallocation doubles the heap size instead of tripling it. + +./src/H5O.c + Got rid of a statement with no effect. + +./src/hdf5port.h + Indented a few #defines. Added a defn for MAX3(). + + +Changes since 19970807 +---------------------- + +./src/H5AC.c + Renamed H5AC_find() to H5AC_find_f() which is invoked from the + H5AC_find() macro. + + Changed HASH() to H5AC_HASH(). + +./src/H5ACprivate.h + Increased the number of cache slots from 1033 to 10330 to see + how it affects performance. This should probably be + changeable on a per-file basis. + +./src/H5B.c + Fixed some bugs now that symbol tables are actually using the + stuff. + + Improved debugging a little. + + Fixed uninitialized memory appearing in the file. + +./src/H5D.c + Changed a FUNC_ENTER() argument from H5Dset_info to H5Dwrite. + +./src/H5F.c + Plugged a memory leak in H5F_dest(). + +./src/H5G.c +./src/H5Gprivate.h + Many of these functions take a symbol table entry which + describes the symbol table rather than just the symbol table + address. + + Moved some functions to make room for the ones that understand + directory names: + H5G_new() -> H5G_stab_new() + H5G_find() -> H5G_stab_find() + H5G_modify() -> H5G_stab_modify() + H5G_insert() -> H5G_stab_insert() + H5G_list() -> H5G_stab_list() + +./src/H5Gnode.c + Added more assertions. + + Zero new memory so junk doesn't appear in the data file. This + is a problem when one tries to declassify a classified data + file. + + H5G_node_debug() can take an extra argument which is the + address of the heap for the symbol table. If supplied, the + symbol names are printed along with the heap offsets. + +./src/H5H.c +./src/H5Hprivate.h + Fixed a bug with the free blocks by forcing things to align on + even boundaries. It's still possible to lose heap memory if + the hole is smaller than the free list header. The + alternative is to align heap objects on 12 or 20 byte + boundaries, but this tends to waste to much space. + + Zero new memory like with H5Gnode.c. + + Fixed a "mispeling" of NDEBUG. + +./src/H5Ocont.c +./src/H5Onull.c + Added the pablo mask defn. + +./src/H5Ostab.c + Added the pablo mask defn. + + Fixed a read from uninitialized memory. + +./src/H5Oprivate.h + Tuned some parameters to see how they affect performance. + +./src/debug.c + An optional third argument can be supplied which is the + address of a heap to use to display names in a symbol table. + +./src/hdf5pabl.h + Changed `int' to `intn'. + +./src/hdf5plat.h + Added defn for int64 and uint64 on irix. It seems to be + wrong, but at least things compile and run. This file will go + away with autoconf anyway. + +./test/testhdf5.c +./test/Makefile + Added tstab.c + +./test/testhdf5.h + Added tstab.c + + Fixed bugs with CHECK_I() and CHECK_PTR(). + + +Changes since 19970804 +---------------------- + +./html/H5.format.html + Added documentation for the symbol table message, 0x0011. + +./src/H5AC.c +./src/H5ACprivate.h +./src/H5ACproto.h +./src/H5Bproto.h +./src/H5Gproto.h +./src/H5Hproto.h +./src/H5MFprivate.h +./src/H5MFproto.h +./src/H5MM.c +./src/H5MMprivate.h +./src/H5MMproto.h + Changed my e-mail address. + +./src/H5O.c NEW +./src/H5Onull.c NEW +./src/H5Ocont. NEW +./src/H5Ostab.c NEW + New functions for dealing with object headers. The H5O.c is + the generic stuff, and each particular message has a source + file for the specific stuff. + + Use ./src/H5Ostab.c as a model for implementing other messages. + +./src/Makefile +./src/test/Makefile + Added new files + +./src/debug.c + Added debugging calls for object headers. + +./src/H5B.c +./src/H5Bprivate.h +./src/H5Gnode.c +./src/H5MF.c + Changed my e-mail address. + + Improved error handling. + +./src/H5Eprivate.h +./src/H5Eproto.h + Added more error symbols + +./src/H5F.c + Changed my e-mail address. + + Used macros for sizeof offsets and lengths. + + Added the interface initialization function to + H5F_block_read() and H5F_block_write(). + + Updated H5F_debug() + +./src/H5Fprivate.h + Got rid of H5F_symbol_table_size(). Use H5G_SIZEOF_ENTRY() + instead. + + Reformatted H5F_decode_offset() for readability. + +./src/H5G.c + Changed my e-mail address. + + Improved error handling. + + Replaced not_implemented_yet__*() with real functions from + H5O. + +./src/H5Gprivate.h + Changed `symtab' to `stab' to be consistent with other stuff. + +./src/H5H.c +./src/H5Hprivate.h + Changed my e-mail address. + + Improved error handling. + + Added an extra argument to H5H_new() to indicate whether you + want a global heap or a local heap. + +./src/hdf5gen.h + Added NELMTS() + + Fixed FUNC_ENTER() + + Rewrote FUNC_LEAVE() in terms of HRETURN(). + +./src/hdf5meta.h + Added `const' to the decode macros. + +./src/hdf5pabl.h + Added PABLO_SAVE() + +./test/testhdf5.c +./test/testhdf5.h + Added calls for object header testing. + +./test/theap.c + Turned off some output. + +Changes since 19970804 +---------------------- + +./html/H5.format.html + Indented the first few hundred lines as I cleaned some stuff + up. + +./src/H5.c + Added an `_g' to the end of library_initialize, + thread_initialize, and interface_initialize to abide by the + naming convention. Removed setting of these variables from + the various initialization functions since it happens in the + FUNC_ENTER() macro now. + + Defined PABLO_MASK. + + Removed `CONSTR(FUNC,"function_name")' everywhere since it's + handled by the various FUNC_ENTER macros. + + Fixed calls to FUNC_ENTER(), FUNC_LEAVE(), and HRETURN_ERROR() + so they don't need so many arguments. + + Changed PABLO_TRACE_ON() to FUNC_ENTER() since there is no + longer any danger of infinite recursion. + + H5_term_library() now returns SUCCEED/FAIL and uses + FUNC_ENTER/FUNC_EXIT macros. + +./src/H5A.c + Changes similar to H5.c. + + Most (all?) of the functions called PABLO_TRACE_ON() and the + package doesn't have an interface initializer that I can see, + so the second argument to FUNC_ENTER() is always NULL. + + H5A_release_atom_node() returns SUCCEED/FAIL. + +./src/H5AC.c + Added error handling. + + Arguments for internal functions are checked with assert(). + +./src/H5C.c + Changes similar to H5.c + + Fixed the FUNC variable in H5C_get_default_atom() since it was + initialized to the wrong name. + +./src/H5D.c + Changes similar to H5.c + +./src/H5E.c + Changes similar to H5.c + + Changed the pablo mask from H5_mask to H5E_mask in + H5E_init_interface(). + + H5Eclear(), H5E_store(), and H5Epush() return SUCCEED/FAIL. + Changed PABLO_TRACE_OFF() calls to FUNC_LEAVE() calls in the + same functions. + +./src/H5Eprivate.h +./src/H5Eproto.h + Added additional error symbols for the H5AC package. + + Changed prototypes for H5Eclear() and H5Epush(). + + Changes to HRETURN_ERROR() and HGOTO_ERROR() to reduce the + number of arguments. + +./src/H5F.c + Changes similr to H5.c + + Changed the pablo mask from H5_mask to H5F_mask for the + FUNC_LEAVE() call of H5F_init_interface(). + + Added FUNC_ENTER() and FUNC_LEAVE() calls to some functions + that didn't have them. + +./src/H5M.c + Changes similar to H5.c + + Fixed the FUNC variable in H5M_init_interface() since it was + initialized to the wrong name. + +./src/H5P.c + Changes similar to H5.c + +./src/H5T.c + Changes similar to H5.c + +./src/hdf5gen.c + Changes to FUNC_ENTER() and FUNC_EXIT() to reduce the number + of arguments. FUNC_ENTER() is now safe from infinite + recursion since it updates the library_initialize_g, + thread_initialize_g, or interface_initialize_g variables + before calling the appropriate initialize function. + + +Changes since 19970731 +---------------------- + +./src/H5AC.c + Fails sooner if the type of object requested doesn't match + the type of object cached. + +./src/H5B.c +./src/H5Bprivate.h +./src/H5Fprivate.h +./src/H5G.c +./src/H5Gnode.c +./src/H5Gprivate.h +./src/H5H.c +./src/H5Hprivate.h + Changed lots of `H5*_HDR_SIZE' macros to `H5*_SIZEOF_HDR' to make + things more consistent. + + Added H5*_SIZEOF_MAGIC macros. + + Added debugging functions to some of the packages. + +./src/H5F.c + Fixed a bug with reading past the end of a buffer. + +./src/H5Tproto.h + Added prototypes for H5Tadd_field() and H5Tget_fields(). + +./src/debug.c + Low-level file debugging program. + +./src/Makefile + Builds `debug' as one of the main targets. The target is + called `debug_hdf5' so it doesn't conflict with the `debug' + target that was already there. But the executable is called + `debug'. + + + + +Changes since 19970718 +---------------------- + +./src/H5B.c +./src/H5G.c +./src/H5Gnode.c +./src/H5H.c + Changed SIZEOF_OFFSET and SIZEOF_SIZE to H5F_SIZEOF_OFFSET and + H5F_SIZEOF_SIZE. Modified files to use these instead of + accessing the hdf5_file_t struct directly. + + Changed address return values from H5B to -1 for error. + + Changed off_t to haddr_t for anything that's a file address. + + +Changes since 19970718 +---------------------- + +./src/GNUmakefile +./src/Makefile + Added H5G.c + +./src/H5F.c + Moved creation and destruction of hdf5_file_t structs into + H5F_new() and H5F_dest() since these tasks are becoming more + and more complicated. + +./src/H5Fprivate.h +./src/H5Gprivate.h + Moved the h5_symbol_type_t and h5_symentry_t typedefs to + H5Gprivate.h and called them H5G_type_t and H5G_entry_t. + +./src/H5Gnode.c + Now uses H5G_entry_t in a way that makes it easy to change the + definition of that structure. + +./src/H5H.c + Changed the size hint code so that if you don't give a size + hint, it's less likely that 8 bytes of the file are + wasted. Also fixed some debugging code so it doesn't dump + core. + +./src/H5MF.c + Freeing something of zero length, or freeing something with a + file address of zero or negative, is a no-op. + + +Changes since 19970716 +---------------------- + +./html/H5.format.html + Added documentation for the small heap object with some notes + about using B-link trees for large heaps. Also updated the + symbol table stuff to reflect recent changes to the source + code. + +./src/GNUmakefile +./src/Makefile + Added small heaps. + +./src/H5.c +./src/H5AC.c +./src/H5ACprivate.h +./src/H5ACproto.h +./src/H5B.c +./src/H5Bprivate.h +./src/H5Bproto.h +./src/H5Cprivate.h +./src/H5F.c +./src/H5Fprivate.h +./src/H5Gnode.c +./src/H5Gprivate.h +./src/H5Gproto.h +./src/H5MFprivate.h +./src/H5MFproto.h +./src/H5MMprivate.h +./src/H5MMproto.h +./src/H5private.h + Fixed include files. The H5*.c file contains constants, + typedefs, and prototypes for things with file scope. The + H5*private.h file contains things with library scope. The + H5*proto.h file contains things with API scope. + + The H5*private.h file should include H5*proto.h. The H5*.c + file should include any H5*private.h files it needs. + +./src/H5MF.c + Implemented H5MF_alloc() and a stub for H5MF_free(). + +./src/H5MM.c + Added `const' to an argument. + +./test/Makefile +./test/testhdf5.c +./test/testhdf5.h +./test/theap.c + Added heap tests. + + +Changes since 19970713 +---------------------- + +./src/H5.c +./src/H5AC.c +./src/H5ACprivate.h +./src/H5ACproto.h +./src/H5B.c +./src/H5Bprivate.h +./src/H5Bproto.h + No longer need to initialize H5AC or H5B at run time. + +./src/H5F.c + Second argument to H5AC_flush changed. + +./src/H5MM.c + uses H5MM_xstrdup + +./src/Makefile + Added H5Gnode.o + +./src/hdf5port.h + Added HDmemmove + +./src/H5Gnode.c +./src/H5Gprivate.h +./src/H5Gproto.h + Symbol table stuff. The H5Gnode.c file contains functions for + dealing with symbol table nodes. This code isn't complete + yet, so ignore the warnings for implicit function declarations + and casting of integer to pointer. + + +Changes since 19970710 +---------------------- + +./src/Makefile + Added new source files. + +./src/hdf5file.c +./src/h5proto.h + Added H5F_block_read() and H5F_block_write() convenience functions + that seek and then read/write. + +./src/hdf5.c + Added includes for cache and B-link trees. + +./src/hdf5.h + Removed include for cache. + +./src/hdf5file.h + Added the H5FPdecode_offset macro (and then removed it :-) + +./src/H5AC NEW +./src/H5ACprivate.h NEW +./src/H5ACproto.h NEW + Cache files. H5AC.c was renamed from hdf5cache.c and + H5ACprivate.h was renamed from hdf5cache.h. + +./src/H5B.c NEW +./src/H5Bprivate.c NEW +./src/H5Bproto.c NEW + B-link tree functions. Not tested yet since we don't have + anything that gets pointed to by a B-tree. + +./src/H5MF.c NEW +./src/H5MFprivate.h NEW +./src/H5MFproto.h NEW + File memory management functions needed by B-link trees but + not fully implemented. + +./src/H5MM.c NEW +./src/H5MMprivate.h NEW +./src/H5MMproto.h NEW + Core memory management functions same as the HD... macros but + assert that memory was allocated. Also fixes problems with + some versions of realloc(). + +Changes since 19970709 +---------------------- + +./src/hdf5cache.c NEW +./src/hdf5cache.h NEW + Implements a memory cache for objects that exist in the HDF5 + file. All exported symbols begin with `H5AC_'. + +./src/hdf5file.c + The cache is created and destroyed when the hdf5 file structure + is created and destroyed. The cache is flushed when H5Fclose() + is called and the reference count is zero. + +./src/hdf5file.h + The hdf5_file_t struct has a cache. + +./src/hdf5.h + Includes hdf5cache.h + +./src/h5proto.h + Added function prototypes from hdf5cache.c + +./src/Makefile + Added hdf5cache.o as a library object. @@ -228,6 +228,7 @@ One may also use various environment variables to change the behavior of the compiler. E.g., to ask for -n32 ABI: + $ SGI_ABI=-n32 $ export SGI_ABI $ ./configure @@ -46,7 +46,11 @@ ./config/conclude.in ./config/dec-flags ./config/dec-osf4.x -./config/depend.in +./config/depend1.in +./config/depend2.in +./config/depend3.in +./config/depend4.in +./config/dependN.in ./config/freebsd ./config/gnu-flags ./config/hpux10.20 diff --git a/Makefile.in b/Makefile.in index 86d0c1d..4cf4be6 100644 --- a/Makefile.in +++ b/Makefile.in @@ -11,8 +11,6 @@ top_srcdir=@top_srcdir@ top_builddir=. srcdir=@srcdir@ -VPATH=.:@srcdir@ -.PATH: . @srcdir@ @COMMENCE@ # Subdirectories in build-order (not including `examples') diff --git a/bin/iostats b/bin/iostats index 0e96e29..6728027 100755 --- a/bin/iostats +++ b/bin/iostats @@ -78,6 +78,8 @@ if (!$fast) { print "="x36, "\n"; printf("Write: %8d calls, %10d total bytes, %10g average bytes\n", - $total_writes, $total_bytes_out, $total_bytes_out/$total_writes); + $total_writes, $total_bytes_out, $total_bytes_out/$total_writes) + if $total_writes; printf("Read: %8d calls, %10d total bytes, %10g average bytes\n", - $total_reads, $total_bytes_in, $total_bytes_in/$total_reads); + $total_reads, $total_bytes_in, $total_bytes_in/$total_reads) + if $total_reads; @@ -23,6 +23,8 @@ $Source = ""; "herr_t" => "e", "H5E_direction_t" => "Ed", "H5E_error_t*" => "Ee", + "H5E_major_t" => "Ej", + "H5E_minor_t" => "En", "H5F_scope_t" => "Fs", "H5FD_t*" => "x", "H5FD_class_t*" => "x", diff --git a/config/commence.in b/config/commence.in index fdc5b6d..307b03e 100644 --- a/config/commence.in +++ b/config/commence.in @@ -9,6 +9,9 @@ .SUFFIXES: .c .o .lo @SET_MAKE@ +## Directories to serch +@SEARCH@ + ## Programs SHELL=/bin/sh CC=@CC@ @@ -105,10 +108,14 @@ all: STAMP1=$(top_builddir)/config/stamp1 STAMP2=$(top_builddir)/config/stamp2 -MAKEFILE_PARTS=$(srcdir)/Makefile.in \ - $(top_srcdir)/config/commence.in \ - $(top_srcdir)/config/conclude.in \ - $(top_srcdir)/config/depend.in +MAKEFILE_PARTS=$(srcdir)/Makefile.in \ + $(top_srcdir)/config/commence.in \ + $(top_srcdir)/config/conclude.in \ + $(top_srcdir)/config/depend1.in \ + $(top_srcdir)/config/depend2.in \ + $(top_srcdir)/config/depend3.in \ + $(top_srcdir)/config/depend4.in \ + $(top_srcdir)/config/dependN.in $(STAMP1): $(top_srcdir)/configure.in touch $(STAMP1) diff --git a/config/conclude.in b/config/conclude.in index 7e504c9..ec89061 100644 --- a/config/conclude.in +++ b/config/conclude.in @@ -170,15 +170,9 @@ maintainer-clean: distclean ##----------------------------------------------------------------------------- ## The following section of this makefile contains dependencies between the -## source files and the header files. If GNU make and GCC are being used then -## the dependencies are in the form of rules that cause the information to -## be kept updated automatically. Otherwise the dependencies are listed -## explicitly and come from the `.distdep' files in the various directories. -## These files are part of the distribution and are generated automatically on -## GNU/GCC systems. +## source files and the header files. ##----------------------------------------------------------------------------- +.PHONY: dep depend +dep depend: $(srcdir)/Dependencies -@DEPEND1@ -@DEPEND2@ -@DEPEND3@ -@DEPEND4@ +@DEPEND@ diff --git a/config/depend.in b/config/depend1.in index 8d41cf4..0e714b9 100644 --- a/config/depend.in +++ b/config/depend1.in @@ -20,13 +20,14 @@ ## otherwise the file is changed and a backup is saved by appending a ## tilde to the file name. ## -.PRECIOUS: .depend .distdep -dep depend: .distdep - -.distdep: .depend - touch .distdep - -srcdir=$(srcdir) perl -p $(top_srcdir)/bin/distdep .depend >.distdep +.PRECIOUS: $(srcdir)/Dependencies +$(srcdir)/Dependencies: .depend + -@echo '## This file is machine generated on GNU systems.' >$@ + -@echo '## Only temporary changes may be made here.' >>@ + -@echo >>@ + -srcdir=$(srcdir) perl -p $(top_srcdir)/bin/distdep .depend >>$@ +.PRECIOUS: .depend .depend: $(LIB_SRC) $(TEST_SRC) $(PROG_SRC) @touch .depend @for dep in $? dummy; do \ @@ -39,7 +40,12 @@ dep depend: .distdep sed 's/\.o/.lo/' >>$@; \ fi; \ done; - -perl -p $(top_srcdir)/bin/distdep .depend >$(srcdir)/.distdep + -@echo '## This file is machine generated on GNU systems.' \ + >$(srcdir)/Dependencies + -@echo '## Only temporary changes may be made here.' \ + >>$(srcdir)/Dependencies + -@echo >>$(srcdir)/Dependencies + -perl -p $(top_srcdir)/bin/distdep .depend >>$(srcdir)/Dependencies -include .depend diff --git a/config/depend2.in b/config/depend2.in new file mode 100644 index 0000000..f67914f --- /dev/null +++ b/config/depend2.in @@ -0,0 +1,11 @@ +## -*- makefile -*- + +## This platform doesn't support automatic dependencies because we're +## not using GNU gcc. GNU gcc is needed in order to generate the list +## of header files included by a source file. + +## Since automatic dependencies are not being used, we attempt to include the +## `.distdep' file from the source tree. This file was automatically generated +## on some system that satisfies the above requirements. + +-include $(srcdir)/Dependencies diff --git a/config/depend3.in b/config/depend3.in new file mode 100644 index 0000000..e856bc5 --- /dev/null +++ b/config/depend3.in @@ -0,0 +1,7 @@ +## -*- makefile -*- + +## Since automatic dependencies are not being used, we attempt to include the +## `.distdep' file from the source tree. This file was automatically generated +## on some system that satisfies the above requirements. + +.include <$(srcdir)/Dependencies> diff --git a/config/depend4.in b/config/depend4.in new file mode 100644 index 0000000..b0324d9 --- /dev/null +++ b/config/depend4.in @@ -0,0 +1,7 @@ +## -*- makefile -*- + +## Since automatic dependencies are not being used, we attempt to include the +## `.distdep' file from the source tree. This file was automatically generated +## on some system that satisfies the above requirements. + +include $(srcdir)/Dependencies diff --git a/config/dependN.in b/config/dependN.in new file mode 100644 index 0000000..7ece270 --- /dev/null +++ b/config/dependN.in @@ -0,0 +1,4 @@ +## -*- makefile -*- + +## Automatic dependencies are not being used and we cannot include other +## files. diff --git a/config/gnu-flags b/config/gnu-flags index 75c6c51..e34c375 100644 --- a/config/gnu-flags +++ b/config/gnu-flags @@ -27,6 +27,8 @@ if test X = "X$cc_flags_set"; then cc_vers_major=`echo $cc_version | cut -f1 -d.` cc_vers_minor=`echo $cc_version | cut -f2 -d.` cc_vers_patch=`echo $cc_version | cut -f3 -d.` + test -n "$cc_vers_major" || cc_vers_major=0 + test -n "$cc_vers_minor" || cc_vers_minor=0 test -n "$cc_vers_patch" || cc_vers_patch=0 cc_vers_all=`expr $cc_vers_major '*' 1000000 + $cc_vers_minor '*' 1000 + $cc_vers_patch` fi @@ -54,7 +54,7 @@ # AM_PROG_NM - find the path to a BSD-compatible name lister # Guess values for system-dependent variables and create Makefiles. -# Generated automatically using autoconf version 2.13 +# Generated automatically using autoconf version 2.12 # Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. # # This configure script is free software; the Free Software Foundation @@ -136,7 +136,6 @@ mandir='${prefix}/man' # Initialize some other variables. subdirs= MFLAGS= MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} # Maximum number of lines to put in a shell here document. ac_max_here_lines=12 @@ -420,7 +419,7 @@ EOF verbose=yes ;; -version | --version | --versio | --versi | --vers) - echo "configure generated by autoconf version 2.13" + echo "configure generated by autoconf version 2.12" exit 0 ;; -with-* | --with-*) @@ -590,11 +589,9 @@ ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ac_cpp='$CPP $CPPFLAGS' ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' cross_compiling=$ac_cv_prog_cc_cross -ac_exeext= -ac_objext=o if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then @@ -630,26 +627,26 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. # Make sure we can run config.sub. -if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : +if $ac_config_sub sun4 >/dev/null 2>&1; then : else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } fi echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:639: checking host system type" >&5 +echo "configure:636: checking host system type" >&5 host_alias=$host case "$host_alias" in NONE) case $nonopt in NONE) - if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : + if host_alias=`$ac_config_guess`; then : else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } fi ;; *) host_alias=$nonopt ;; esac ;; esac -host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` +host=`$ac_config_sub $host_alias` host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` @@ -658,12 +655,12 @@ echo "$ac_t""$host" 1>&6 echo $ac_n "checking shell variables initial values""... $ac_c" 1>&6 -echo "configure:662: checking shell variables initial values" >&5 +echo "configure:659: checking shell variables initial values" >&5 set >&5 echo "$ac_t""done" 1>&6 echo $ac_n "checking for cached host""... $ac_c" 1>&6 -echo "configure:667: checking for cached host" >&5 +echo "configure:664: checking for cached host" >&5 if eval "test \"`echo '$''{'hdf5_cv_host'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -716,7 +713,7 @@ for f in $host_cpu-$host_vendor-$host_os \ $host_vendor \ $host_cpu ; do echo $ac_n "checking for config $f""... $ac_c" 1>&6 -echo "configure:720: checking for config $f" >&5 +echo "configure:717: checking for config $f" >&5 if test -f $srcdir/config/$f; then host_config=$srcdir/config/$f echo "$ac_t""found" 1>&6 @@ -732,16 +729,15 @@ fi # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:736: checking for $ac_word" >&5 +echo "configure:733: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then ac_cv_prog_CC="gcc" @@ -762,17 +758,16 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:766: checking for $ac_word" >&5 +echo "configure:762: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" ac_prog_rejected=no - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do + for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then @@ -807,61 +802,25 @@ else echo "$ac_t""no" 1>&6 fi - if test -z "$CC"; then - case "`uname -s`" in - *win32* | *WIN32*) - # Extract the first word of "cl", so it can be a program name with args. -set dummy cl; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:817: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_prog_CC="cl" - break - fi - done - IFS="$ac_save_ifs" -fi -fi -CC="$ac_cv_prog_CC" -if test -n "$CC"; then - echo "$ac_t""$CC" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - ;; - esac - fi test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:849: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:810: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ac_cpp='$CPP $CPPFLAGS' ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' cross_compiling=$ac_cv_prog_cc_cross -cat > conftest.$ac_ext << EOF - -#line 860 "configure" +cat > conftest.$ac_ext <<EOF +#line 820 "configure" #include "confdefs.h" - main(){return(0);} EOF -if { (eval echo configure:865: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:824: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -875,24 +834,18 @@ else ac_cv_prog_cc_works=no fi rm -fr conftest* -ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:891: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:844: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:896: checking whether we are using GNU C" >&5 +echo "configure:849: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -901,7 +854,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:905: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:858: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -912,15 +865,11 @@ echo "$ac_t""$ac_cv_prog_gcc" 1>&6 if test $ac_cv_prog_gcc = yes; then GCC=yes -else - GCC= -fi - -ac_test_CFLAGS="${CFLAGS+set}" -ac_save_CFLAGS="$CFLAGS" -CFLAGS= -echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:924: checking whether ${CC-cc} accepts -g" >&5 + ac_test_CFLAGS="${CFLAGS+set}" + ac_save_CFLAGS="$CFLAGS" + CFLAGS= + echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:873: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -935,25 +884,21 @@ rm -f conftest* fi echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 -if test "$ac_test_CFLAGS" = set; then - CFLAGS="$ac_save_CFLAGS" -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then + if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" + elif test $ac_cv_prog_cc_g = yes; then CFLAGS="-g -O2" else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then CFLAGS="-O2" - else - CFLAGS= fi +else + GCC= + test "${CFLAGS+set}" = set || CFLAGS="-g" fi CC_BASENAME="`echo $CC |cut -f1 -d' ' |xargs basename 2>/dev/null`" echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 -echo "configure:957: checking whether ${MAKE-make} sets \${MAKE}" >&5 +echo "configure:902: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -986,30 +931,28 @@ fi # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:995: checking for a BSD compatible install" >&5 +echo "configure:939: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else - IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" + IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do # Account for people who put trailing slashes in PATH elements. case "$ac_dir/" in /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do + for ac_prog in ginstall installbsd scoinst install; do if test -f $ac_dir/$ac_prog; then if test $ac_prog = install && grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. + # OSF/1 installbsd also uses dspmsg, but is usable. : else ac_cv_path_install="$ac_dir/$ac_prog -c" @@ -1039,8 +982,6 @@ echo "$ac_t""$INSTALL" 1>&6 # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' - test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' # Check whether --enable-shared or --disable-shared was given. @@ -1092,16 +1033,15 @@ fi # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1096: checking for $ac_word" >&5 +echo "configure:1037: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then ac_cv_prog_RANLIB="ranlib" @@ -1132,7 +1072,7 @@ ac_prog=ld if test "$ac_cv_prog_gcc" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 -echo "configure:1136: checking for ld used by GCC" >&5 +echo "configure:1076: checking for ld used by GCC" >&5 ac_prog=`($CC -print-prog-name=ld) 2>&5` case "$ac_prog" in # Accept absolute paths. @@ -1150,10 +1090,10 @@ echo "configure:1136: checking for ld used by GCC" >&5 esac elif test "$with_gnu_ld" = yes; then echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 -echo "configure:1154: checking for GNU ld" >&5 +echo "configure:1094: checking for GNU ld" >&5 else echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 -echo "configure:1157: checking for non-GNU ld" >&5 +echo "configure:1097: checking for non-GNU ld" >&5 fi if eval "test \"`echo '$''{'ac_cv_path_LD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1189,7 +1129,7 @@ fi test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 -echo "configure:1193: checking if the linker ($LD) is GNU ld" >&5 +echo "configure:1133: checking if the linker ($LD) is GNU ld" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gnu_ld'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1205,7 +1145,7 @@ echo "$ac_t""$ac_cv_prog_gnu_ld" 1>&6 echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 -echo "configure:1209: checking for BSD-compatible nm" >&5 +echo "configure:1149: checking for BSD-compatible nm" >&5 if eval "test \"`echo '$''{'ac_cv_path_NM'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1242,7 +1182,7 @@ echo "$ac_t""$NM" 1>&6 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 -echo "configure:1246: checking whether ln -s works" >&5 +echo "configure:1186: checking whether ln -s works" >&5 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1278,8 +1218,8 @@ test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" case "$host" in *-*-irix6*) # Find out which ABI we are using. - echo '#line 1282 "configure"' > conftest.$ac_ext - if { (eval echo configure:1283: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + echo '#line 1222 "configure"' > conftest.$ac_ext + if { (eval echo configure:1223: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then case "`/usr/bin/file conftest.o`" in *32-bit*) LD="${LD-ld} -32" @@ -1315,16 +1255,15 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1319: checking for $ac_word" >&5 +echo "configure:1259: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else if test -n "$AR"; then ac_cv_prog_AR="$AR" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH$ac_dummy; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then ac_cv_prog_AR="$ac_prog" @@ -1348,22 +1287,126 @@ test -n "$AR" || AR=":" fi -echo $ac_n "checking for GNU Make""... $ac_c" 1>&6 -echo "configure:1353: checking for GNU Make" >&5 +echo $ac_n "checking make""... $ac_c" 1>&6 +echo "configure:1292: checking make" >&5 + if test "`${MAKE-make} --version -f /dev/null 2>/dev/null |\ sed -n 1p|cut -c1-8`" = "GNU Make"; then - echo "$ac_t""yes" 1>&6 - GMAKE=yes + echo "$ac_t""GNU make" 1>&6 + GMAKE=yes + if test "X$GCC" = "Xyes"; then + DEPEND=config/depend1 + else + DEPEND=config/depend2 + fi else - echo "$ac_t""no" 1>&6 + echo "$ac_t""generic" 1>&6 fi +if test "X" = "X$DEPEND"; then + echo $ac_n "checking how to include a makefile""... $ac_c" 1>&6 +echo "configure:1309: checking how to include a makefile" >&5 + + cat >makeinc <<EOF +foo: + @: +EOF + + while true; do #for break + + echo '.include <makeinc>' >maketest + if (MAKE= ${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + echo "$ac_t"".include <FILE>" 1>&6 + DEPEND=config/depend3 + break + fi + + echo 'include makeinc' >maketest + if (${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + echo "$ac_t""include FILE" 1>&6 + DEPEND=config/depend4 + break; + fi + + echo "$ac_t""you have a deficient make command" 1>&6 + DEPEND=config/dependN + break + done + rm makeinc maketest +fi + +echo $ac_n "checking how make searches directories""... $ac_c" 1>&6 +echo "configure:1340: checking how make searches directories" >&5 +while true; do #for break + # The most common method is `VPATH=DIR1 DIR2 ...' + cat >maketest <<EOF +VPATH=$srcdir/config $srcdir/src $srcdir/bin +.c.o: + cp $< H5.o + +foo: H5.o + rm H5.o + @echo works +EOF + if (${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + SEARCH_RULE='VPATH=' + SEARCH_SEP=' ' + echo "$ac_t""VPATH=DIR1 DIR2 ..." 1>&6 + break + fi + + # The second most common method is like above except with the + # directories separated by colons. + cat >maketest <<EOF +VPATH=$srcdir/config:$srcdir/src:$srcdir/bin +.c.o: + cp $< H5.o + +foo: H5.o + rm H5.o + @echo works +EOF + if (${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + SEARCH_RULE='VPATH=' + SEARCH_SEP=':' + echo "$ac_t""VPATH=DIR1:DIR2:..." 1>&6 + break + fi + + # pmake uses the construct `.PATH: DIR1 DIR2 + cat >maketest <<EOF +.PATH: $srcdir/config $srcdir/src $srcdir/bin +.c.o: + cp $< H5.o + +foo: H5.o + rm H5.o + @echo works +EOF + if (MAKE= ${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + SEARCH_RULE='.PATH: ' + SEARCH_SEP=' ' + echo "$ac_t"".PATH: DIR1 DIR2 ..." 1>&6 + break + fi + + # No way for make to search directories + SEARCH_RULE='## SEARCH DISABLED: ' + SEARCH_SEP=' ' + echo "$ac_t""it doesn't" 1>&6 + if test ! -f configure; then + { echo "configure: error: ${MAKE-make} requires the build and source directories to be the same" 1>&2; exit 1; } + fi + break +done +rm maketest + if test Xyes = "X$GCC"; then CFLAGS="$CFLAGS -Wall -W -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline" fi echo $ac_n "checking for production mode""... $ac_c" 1>&6 -echo "configure:1367: checking for production mode" >&5 +echo "configure:1410: checking for production mode" >&5 # Check whether --enable-production or --disable-production was given. if test "${enable_production+set}" = set; then enableval="$enable_production" @@ -1397,7 +1440,7 @@ case "X-$enable_production" in esac echo $ac_n "checking for ceil in -lm""... $ac_c" 1>&6 -echo "configure:1401: checking for ceil in -lm" >&5 +echo "configure:1444: checking for ceil in -lm" >&5 ac_lib_var=`echo m'_'ceil | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1405,7 +1448,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lm $LIBS" cat > conftest.$ac_ext <<EOF -#line 1409 "configure" +#line 1452 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -1416,7 +1459,7 @@ int main() { ceil() ; return 0; } EOF -if { (eval echo configure:1420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1463: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1444,7 +1487,7 @@ else fi echo $ac_n "checking for xdr_int in -lnsl""... $ac_c" 1>&6 -echo "configure:1448: checking for xdr_int in -lnsl" >&5 +echo "configure:1491: checking for xdr_int in -lnsl" >&5 ac_lib_var=`echo nsl'_'xdr_int | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1452,7 +1495,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lnsl $LIBS" cat > conftest.$ac_ext <<EOF -#line 1456 "configure" +#line 1499 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -1463,7 +1506,7 @@ int main() { xdr_int() ; return 0; } EOF -if { (eval echo configure:1467: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1510: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1491,7 +1534,7 @@ else fi echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:1495: checking how to run the C preprocessor" >&5 +echo "configure:1538: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -1506,14 +1549,14 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext <<EOF -#line 1510 "configure" +#line 1553 "configure" #include "confdefs.h" #include <assert.h> Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1516: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:1559: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then : else @@ -1523,31 +1566,14 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext <<EOF -#line 1527 "configure" -#include "confdefs.h" -#include <assert.h> -Syntax Error -EOF -ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1533: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` -if test -z "$ac_err"; then - : -else - echo "$ac_err" >&5 - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - CPP="${CC-cc} -nologo -E" - cat > conftest.$ac_ext <<EOF -#line 1544 "configure" +#line 1570 "configure" #include "confdefs.h" #include <assert.h> Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1550: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:1576: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then : else @@ -1560,8 +1586,6 @@ fi rm -f conftest* fi rm -f conftest* -fi -rm -f conftest* ac_cv_prog_CPP="$CPP" fi CPP="$ac_cv_prog_CPP" @@ -1571,12 +1595,12 @@ fi echo "$ac_t""$CPP" 1>&6 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:1575: checking for ANSI C header files" >&5 +echo "configure:1599: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1580 "configure" +#line 1604 "configure" #include "confdefs.h" #include <stdlib.h> #include <stdarg.h> @@ -1584,8 +1608,8 @@ else #include <float.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1588: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:1612: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* ac_cv_header_stdc=yes @@ -1601,7 +1625,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 1605 "configure" +#line 1629 "configure" #include "confdefs.h" #include <string.h> EOF @@ -1619,7 +1643,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 1623 "configure" +#line 1647 "configure" #include "confdefs.h" #include <stdlib.h> EOF @@ -1640,7 +1664,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext <<EOF -#line 1644 "configure" +#line 1668 "configure" #include "confdefs.h" #include <ctype.h> #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -1651,7 +1675,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:1655: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1679: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then : else @@ -1675,12 +1699,12 @@ EOF fi echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 -echo "configure:1679: checking whether time.h and sys/time.h may both be included" >&5 +echo "configure:1703: checking whether time.h and sys/time.h may both be included" >&5 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1684 "configure" +#line 1708 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/time.h> @@ -1689,7 +1713,7 @@ int main() { struct tm *tp; ; return 0; } EOF -if { (eval echo configure:1693: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1717: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_time=yes else @@ -1713,18 +1737,18 @@ for ac_hdr in sys/resource.h sys/time.h unistd.h sys/ioctl.h sys/stat.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1717: checking for $ac_hdr" >&5 +echo "configure:1741: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1722 "configure" +#line 1746 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1727: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:1751: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -1753,18 +1777,18 @@ for ac_hdr in stddef.h setjmp.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1757: checking for $ac_hdr" >&5 +echo "configure:1781: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1762 "configure" +#line 1786 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1767: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:1791: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -1793,18 +1817,18 @@ for ac_hdr in stdint.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1797: checking for $ac_hdr" >&5 +echo "configure:1821: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1802 "configure" +#line 1826 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1807: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:1831: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -1833,18 +1857,18 @@ for ac_hdr in io.h winsock.h sys/timeb.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1837: checking for $ac_hdr" >&5 +echo "configure:1861: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1842 "configure" +#line 1866 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1847: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:1871: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -1876,18 +1900,18 @@ case $host in do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1880: checking for $ac_hdr" >&5 +echo "configure:1904: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1885 "configure" +#line 1909 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1890: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:1914: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -1916,12 +1940,12 @@ done esac echo $ac_n "checking for off_t""... $ac_c" 1>&6 -echo "configure:1920: checking for off_t" >&5 +echo "configure:1944: checking for off_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1925 "configure" +#line 1949 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -1930,7 +1954,7 @@ else #endif EOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - egrep "(^|[^a-zA-Z_0-9])off_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then + egrep "off_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then rm -rf conftest* ac_cv_type_off_t=yes else @@ -1949,12 +1973,12 @@ EOF fi echo $ac_n "checking for size_t""... $ac_c" 1>&6 -echo "configure:1953: checking for size_t" >&5 +echo "configure:1977: checking for size_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1958 "configure" +#line 1982 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -1963,7 +1987,7 @@ else #endif EOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - egrep "(^|[^a-zA-Z_0-9])size_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then + egrep "size_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then rm -rf conftest* ac_cv_type_size_t=yes else @@ -1982,12 +2006,12 @@ EOF fi echo $ac_n "checking for ssize_t""... $ac_c" 1>&6 -echo "configure:1986: checking for ssize_t" >&5 +echo "configure:2010: checking for ssize_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_ssize_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1991 "configure" +#line 2015 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -1996,7 +2020,7 @@ else #endif EOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - egrep "(^|[^a-zA-Z_0-9])ssize_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then + egrep "ssize_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then rm -rf conftest* ac_cv_type_ssize_t=yes else @@ -2015,14 +2039,14 @@ EOF fi echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6 -echo "configure:2019: checking whether byte ordering is bigendian" >&5 +echo "configure:2043: checking whether byte ordering is bigendian" >&5 if eval "test \"`echo '$''{'ac_cv_c_bigendian'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_cv_c_bigendian=unknown # See if sys/param.h defines the BYTE_ORDER macro. cat > conftest.$ac_ext <<EOF -#line 2026 "configure" +#line 2050 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/param.h> @@ -2033,11 +2057,11 @@ int main() { #endif ; return 0; } EOF -if { (eval echo configure:2037: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2061: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* # It does; now see whether it defined to BIG_ENDIAN or not. cat > conftest.$ac_ext <<EOF -#line 2041 "configure" +#line 2065 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/param.h> @@ -2048,7 +2072,7 @@ int main() { #endif ; return 0; } EOF -if { (eval echo configure:2052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2076: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_bigendian=yes else @@ -2068,7 +2092,7 @@ if test "$cross_compiling" = yes; then { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <<EOF -#line 2072 "configure" +#line 2096 "configure" #include "confdefs.h" main () { /* Are we little or big endian? From Harbison&Steele. */ @@ -2081,7 +2105,7 @@ main () { exit (u.c[sizeof (long) - 1] == 1); } EOF -if { (eval echo configure:2085: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2109: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_c_bigendian=no else @@ -2105,7 +2129,7 @@ EOF fi echo $ac_n "checking size of char""... $ac_c" 1>&6 -echo "configure:2109: checking size of char" >&5 +echo "configure:2133: checking size of char" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_char'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2113,7 +2137,7 @@ else ac_cv_sizeof_char=1 else cat > conftest.$ac_ext <<EOF -#line 2117 "configure" +#line 2141 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2124,7 +2148,7 @@ main() exit(0); } EOF -if { (eval echo configure:2128: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2152: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_char=`cat conftestval` else @@ -2144,7 +2168,7 @@ EOF echo $ac_n "checking size of short""... $ac_c" 1>&6 -echo "configure:2148: checking size of short" >&5 +echo "configure:2172: checking size of short" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_short'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2152,7 +2176,7 @@ else ac_cv_sizeof_short=2 else cat > conftest.$ac_ext <<EOF -#line 2156 "configure" +#line 2180 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2163,7 +2187,7 @@ main() exit(0); } EOF -if { (eval echo configure:2167: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2191: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_short=`cat conftestval` else @@ -2183,7 +2207,7 @@ EOF echo $ac_n "checking size of int""... $ac_c" 1>&6 -echo "configure:2187: checking size of int" >&5 +echo "configure:2211: checking size of int" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2191,7 +2215,7 @@ else ac_cv_sizeof_int=4 else cat > conftest.$ac_ext <<EOF -#line 2195 "configure" +#line 2219 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2202,7 +2226,7 @@ main() exit(0); } EOF -if { (eval echo configure:2206: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2230: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int=`cat conftestval` else @@ -2222,7 +2246,7 @@ EOF echo $ac_n "checking size of long""... $ac_c" 1>&6 -echo "configure:2226: checking size of long" >&5 +echo "configure:2250: checking size of long" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_long'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2230,7 +2254,7 @@ else ac_cv_sizeof_long=4 else cat > conftest.$ac_ext <<EOF -#line 2234 "configure" +#line 2258 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2241,7 +2265,7 @@ main() exit(0); } EOF -if { (eval echo configure:2245: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2269: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_long=`cat conftestval` else @@ -2261,7 +2285,7 @@ EOF echo $ac_n "checking size of long long""... $ac_c" 1>&6 -echo "configure:2265: checking size of long long" >&5 +echo "configure:2289: checking size of long long" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_long_long'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2269,7 +2293,7 @@ else ac_cv_sizeof_long_long=8 else cat > conftest.$ac_ext <<EOF -#line 2273 "configure" +#line 2297 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2280,7 +2304,7 @@ main() exit(0); } EOF -if { (eval echo configure:2284: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2308: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_long_long=`cat conftestval` else @@ -2300,7 +2324,7 @@ EOF echo $ac_n "checking size of __int64""... $ac_c" 1>&6 -echo "configure:2304: checking size of __int64" >&5 +echo "configure:2328: checking size of __int64" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof___int64'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2308,7 +2332,7 @@ else ac_cv_sizeof___int64=8 else cat > conftest.$ac_ext <<EOF -#line 2312 "configure" +#line 2336 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2319,7 +2343,7 @@ main() exit(0); } EOF -if { (eval echo configure:2323: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2347: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof___int64=`cat conftestval` else @@ -2339,7 +2363,7 @@ EOF echo $ac_n "checking size of float""... $ac_c" 1>&6 -echo "configure:2343: checking size of float" >&5 +echo "configure:2367: checking size of float" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_float'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2347,7 +2371,7 @@ else ac_cv_sizeof_float=4 else cat > conftest.$ac_ext <<EOF -#line 2351 "configure" +#line 2375 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2358,7 +2382,7 @@ main() exit(0); } EOF -if { (eval echo configure:2362: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2386: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_float=`cat conftestval` else @@ -2378,7 +2402,7 @@ EOF echo $ac_n "checking size of double""... $ac_c" 1>&6 -echo "configure:2382: checking size of double" >&5 +echo "configure:2406: checking size of double" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_double'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2386,7 +2410,7 @@ else ac_cv_sizeof_double=8 else cat > conftest.$ac_ext <<EOF -#line 2390 "configure" +#line 2414 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2397,7 +2421,7 @@ main() exit(0); } EOF -if { (eval echo configure:2401: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2425: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_double=`cat conftestval` else @@ -2417,7 +2441,7 @@ EOF echo $ac_n "checking size of long double""... $ac_c" 1>&6 -echo "configure:2421: checking size of long double" >&5 +echo "configure:2445: checking size of long double" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_long_double'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2425,7 +2449,7 @@ else ac_cv_sizeof_long_double=8 else cat > conftest.$ac_ext <<EOF -#line 2429 "configure" +#line 2453 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2436,7 +2460,7 @@ main() exit(0); } EOF -if { (eval echo configure:2440: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2464: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_long_double=`cat conftestval` else @@ -2466,7 +2490,7 @@ EOF fi echo $ac_n "checking size of int8_t""... $ac_c" 1>&6 -echo "configure:2470: checking size of int8_t" >&5 +echo "configure:2494: checking size of int8_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int8_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2474,7 +2498,7 @@ else ac_cv_sizeof_int8_t=1 else cat > conftest.$ac_ext <<EOF -#line 2478 "configure" +#line 2502 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2485,7 +2509,7 @@ main() exit(0); } EOF -if { (eval echo configure:2489: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2513: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int8_t=`cat conftestval` else @@ -2505,7 +2529,7 @@ EOF echo $ac_n "checking size of uint8_t""... $ac_c" 1>&6 -echo "configure:2509: checking size of uint8_t" >&5 +echo "configure:2533: checking size of uint8_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint8_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2513,7 +2537,7 @@ else ac_cv_sizeof_uint8_t=1 else cat > conftest.$ac_ext <<EOF -#line 2517 "configure" +#line 2541 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2524,7 +2548,7 @@ main() exit(0); } EOF -if { (eval echo configure:2528: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2552: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint8_t=`cat conftestval` else @@ -2544,7 +2568,7 @@ EOF echo $ac_n "checking size of int_least8_t""... $ac_c" 1>&6 -echo "configure:2548: checking size of int_least8_t" >&5 +echo "configure:2572: checking size of int_least8_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int_least8_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2552,7 +2576,7 @@ else ac_cv_sizeof_int_least8_t=1 else cat > conftest.$ac_ext <<EOF -#line 2556 "configure" +#line 2580 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2563,7 +2587,7 @@ main() exit(0); } EOF -if { (eval echo configure:2567: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2591: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int_least8_t=`cat conftestval` else @@ -2583,7 +2607,7 @@ EOF echo $ac_n "checking size of uint_least8_t""... $ac_c" 1>&6 -echo "configure:2587: checking size of uint_least8_t" >&5 +echo "configure:2611: checking size of uint_least8_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint_least8_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2591,7 +2615,7 @@ else ac_cv_sizeof_uint_least8_t=1 else cat > conftest.$ac_ext <<EOF -#line 2595 "configure" +#line 2619 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2602,7 +2626,7 @@ main() exit(0); } EOF -if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2630: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint_least8_t=`cat conftestval` else @@ -2622,7 +2646,7 @@ EOF echo $ac_n "checking size of int_fast8_t""... $ac_c" 1>&6 -echo "configure:2626: checking size of int_fast8_t" >&5 +echo "configure:2650: checking size of int_fast8_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int_fast8_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2630,7 +2654,7 @@ else ac_cv_sizeof_int_fast8_t=1 else cat > conftest.$ac_ext <<EOF -#line 2634 "configure" +#line 2658 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2641,7 +2665,7 @@ main() exit(0); } EOF -if { (eval echo configure:2645: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2669: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int_fast8_t=`cat conftestval` else @@ -2661,7 +2685,7 @@ EOF echo $ac_n "checking size of uint_fast8_t""... $ac_c" 1>&6 -echo "configure:2665: checking size of uint_fast8_t" >&5 +echo "configure:2689: checking size of uint_fast8_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint_fast8_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2669,7 +2693,7 @@ else ac_cv_sizeof_uint_fast8_t=1 else cat > conftest.$ac_ext <<EOF -#line 2673 "configure" +#line 2697 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2680,7 +2704,7 @@ main() exit(0); } EOF -if { (eval echo configure:2684: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2708: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint_fast8_t=`cat conftestval` else @@ -2701,7 +2725,7 @@ EOF echo $ac_n "checking size of int16_t""... $ac_c" 1>&6 -echo "configure:2705: checking size of int16_t" >&5 +echo "configure:2729: checking size of int16_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int16_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2709,7 +2733,7 @@ else ac_cv_sizeof_int16_t=2 else cat > conftest.$ac_ext <<EOF -#line 2713 "configure" +#line 2737 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2720,7 +2744,7 @@ main() exit(0); } EOF -if { (eval echo configure:2724: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2748: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int16_t=`cat conftestval` else @@ -2740,7 +2764,7 @@ EOF echo $ac_n "checking size of uint16_t""... $ac_c" 1>&6 -echo "configure:2744: checking size of uint16_t" >&5 +echo "configure:2768: checking size of uint16_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint16_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2748,7 +2772,7 @@ else ac_cv_sizeof_uint16_t=2 else cat > conftest.$ac_ext <<EOF -#line 2752 "configure" +#line 2776 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2759,7 +2783,7 @@ main() exit(0); } EOF -if { (eval echo configure:2763: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint16_t=`cat conftestval` else @@ -2779,7 +2803,7 @@ EOF echo $ac_n "checking size of int_least16_t""... $ac_c" 1>&6 -echo "configure:2783: checking size of int_least16_t" >&5 +echo "configure:2807: checking size of int_least16_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int_least16_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2787,7 +2811,7 @@ else ac_cv_sizeof_int_least16_t=2 else cat > conftest.$ac_ext <<EOF -#line 2791 "configure" +#line 2815 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2798,7 +2822,7 @@ main() exit(0); } EOF -if { (eval echo configure:2802: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2826: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int_least16_t=`cat conftestval` else @@ -2818,7 +2842,7 @@ EOF echo $ac_n "checking size of uint_least16_t""... $ac_c" 1>&6 -echo "configure:2822: checking size of uint_least16_t" >&5 +echo "configure:2846: checking size of uint_least16_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint_least16_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2826,7 +2850,7 @@ else ac_cv_sizeof_uint_least16_t=2 else cat > conftest.$ac_ext <<EOF -#line 2830 "configure" +#line 2854 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2837,7 +2861,7 @@ main() exit(0); } EOF -if { (eval echo configure:2841: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2865: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint_least16_t=`cat conftestval` else @@ -2857,7 +2881,7 @@ EOF echo $ac_n "checking size of int_fast16_t""... $ac_c" 1>&6 -echo "configure:2861: checking size of int_fast16_t" >&5 +echo "configure:2885: checking size of int_fast16_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int_fast16_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2865,7 +2889,7 @@ else ac_cv_sizeof_int_fast16_t=2 else cat > conftest.$ac_ext <<EOF -#line 2869 "configure" +#line 2893 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2876,7 +2900,7 @@ main() exit(0); } EOF -if { (eval echo configure:2880: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2904: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int_fast16_t=`cat conftestval` else @@ -2896,7 +2920,7 @@ EOF echo $ac_n "checking size of uint_fast16_t""... $ac_c" 1>&6 -echo "configure:2900: checking size of uint_fast16_t" >&5 +echo "configure:2924: checking size of uint_fast16_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint_fast16_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2904,7 +2928,7 @@ else ac_cv_sizeof_uint_fast16_t=2 else cat > conftest.$ac_ext <<EOF -#line 2908 "configure" +#line 2932 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2915,7 +2939,7 @@ main() exit(0); } EOF -if { (eval echo configure:2919: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint_fast16_t=`cat conftestval` else @@ -2936,7 +2960,7 @@ EOF echo $ac_n "checking size of int32_t""... $ac_c" 1>&6 -echo "configure:2940: checking size of int32_t" >&5 +echo "configure:2964: checking size of int32_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2944,7 +2968,7 @@ else ac_cv_sizeof_int32_t=4 else cat > conftest.$ac_ext <<EOF -#line 2948 "configure" +#line 2972 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2955,7 +2979,7 @@ main() exit(0); } EOF -if { (eval echo configure:2959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2983: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int32_t=`cat conftestval` else @@ -2975,7 +2999,7 @@ EOF echo $ac_n "checking size of uint32_t""... $ac_c" 1>&6 -echo "configure:2979: checking size of uint32_t" >&5 +echo "configure:3003: checking size of uint32_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2983,7 +3007,7 @@ else ac_cv_sizeof_uint32_t=4 else cat > conftest.$ac_ext <<EOF -#line 2987 "configure" +#line 3011 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -2994,7 +3018,7 @@ main() exit(0); } EOF -if { (eval echo configure:2998: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3022: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint32_t=`cat conftestval` else @@ -3014,7 +3038,7 @@ EOF echo $ac_n "checking size of int_least32_t""... $ac_c" 1>&6 -echo "configure:3018: checking size of int_least32_t" >&5 +echo "configure:3042: checking size of int_least32_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int_least32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3022,7 +3046,7 @@ else ac_cv_sizeof_int_least32_t=4 else cat > conftest.$ac_ext <<EOF -#line 3026 "configure" +#line 3050 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3033,7 +3057,7 @@ main() exit(0); } EOF -if { (eval echo configure:3037: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3061: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int_least32_t=`cat conftestval` else @@ -3053,7 +3077,7 @@ EOF echo $ac_n "checking size of uint_least32_t""... $ac_c" 1>&6 -echo "configure:3057: checking size of uint_least32_t" >&5 +echo "configure:3081: checking size of uint_least32_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint_least32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3061,7 +3085,7 @@ else ac_cv_sizeof_uint_least32_t=4 else cat > conftest.$ac_ext <<EOF -#line 3065 "configure" +#line 3089 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3072,7 +3096,7 @@ main() exit(0); } EOF -if { (eval echo configure:3076: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3100: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint_least32_t=`cat conftestval` else @@ -3092,7 +3116,7 @@ EOF echo $ac_n "checking size of int_fast32_t""... $ac_c" 1>&6 -echo "configure:3096: checking size of int_fast32_t" >&5 +echo "configure:3120: checking size of int_fast32_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int_fast32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3100,7 +3124,7 @@ else ac_cv_sizeof_int_fast32_t=4 else cat > conftest.$ac_ext <<EOF -#line 3104 "configure" +#line 3128 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3111,7 +3135,7 @@ main() exit(0); } EOF -if { (eval echo configure:3115: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3139: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int_fast32_t=`cat conftestval` else @@ -3131,7 +3155,7 @@ EOF echo $ac_n "checking size of uint_fast32_t""... $ac_c" 1>&6 -echo "configure:3135: checking size of uint_fast32_t" >&5 +echo "configure:3159: checking size of uint_fast32_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint_fast32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3139,7 +3163,7 @@ else ac_cv_sizeof_uint_fast32_t=4 else cat > conftest.$ac_ext <<EOF -#line 3143 "configure" +#line 3167 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3150,7 +3174,7 @@ main() exit(0); } EOF -if { (eval echo configure:3154: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3178: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint_fast32_t=`cat conftestval` else @@ -3171,7 +3195,7 @@ EOF echo $ac_n "checking size of int64_t""... $ac_c" 1>&6 -echo "configure:3175: checking size of int64_t" >&5 +echo "configure:3199: checking size of int64_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int64_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3179,7 +3203,7 @@ else ac_cv_sizeof_int64_t=8 else cat > conftest.$ac_ext <<EOF -#line 3183 "configure" +#line 3207 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3190,7 +3214,7 @@ main() exit(0); } EOF -if { (eval echo configure:3194: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3218: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int64_t=`cat conftestval` else @@ -3210,7 +3234,7 @@ EOF echo $ac_n "checking size of uint64_t""... $ac_c" 1>&6 -echo "configure:3214: checking size of uint64_t" >&5 +echo "configure:3238: checking size of uint64_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint64_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3218,7 +3242,7 @@ else ac_cv_sizeof_uint64_t=8 else cat > conftest.$ac_ext <<EOF -#line 3222 "configure" +#line 3246 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3229,7 +3253,7 @@ main() exit(0); } EOF -if { (eval echo configure:3233: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3257: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint64_t=`cat conftestval` else @@ -3249,7 +3273,7 @@ EOF echo $ac_n "checking size of int_least64_t""... $ac_c" 1>&6 -echo "configure:3253: checking size of int_least64_t" >&5 +echo "configure:3277: checking size of int_least64_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int_least64_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3257,7 +3281,7 @@ else ac_cv_sizeof_int_least64_t=8 else cat > conftest.$ac_ext <<EOF -#line 3261 "configure" +#line 3285 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3268,7 +3292,7 @@ main() exit(0); } EOF -if { (eval echo configure:3272: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3296: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int_least64_t=`cat conftestval` else @@ -3288,7 +3312,7 @@ EOF echo $ac_n "checking size of uint_least64_t""... $ac_c" 1>&6 -echo "configure:3292: checking size of uint_least64_t" >&5 +echo "configure:3316: checking size of uint_least64_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint_least64_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3296,7 +3320,7 @@ else ac_cv_sizeof_uint_least64_t=8 else cat > conftest.$ac_ext <<EOF -#line 3300 "configure" +#line 3324 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3307,7 +3331,7 @@ main() exit(0); } EOF -if { (eval echo configure:3311: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3335: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint_least64_t=`cat conftestval` else @@ -3327,7 +3351,7 @@ EOF echo $ac_n "checking size of int_fast64_t""... $ac_c" 1>&6 -echo "configure:3331: checking size of int_fast64_t" >&5 +echo "configure:3355: checking size of int_fast64_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int_fast64_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3335,7 +3359,7 @@ else ac_cv_sizeof_int_fast64_t=8 else cat > conftest.$ac_ext <<EOF -#line 3339 "configure" +#line 3363 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3346,7 +3370,7 @@ main() exit(0); } EOF -if { (eval echo configure:3350: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3374: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int_fast64_t=`cat conftestval` else @@ -3366,7 +3390,7 @@ EOF echo $ac_n "checking size of uint_fast64_t""... $ac_c" 1>&6 -echo "configure:3370: checking size of uint_fast64_t" >&5 +echo "configure:3394: checking size of uint_fast64_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_uint_fast64_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3374,7 +3398,7 @@ else ac_cv_sizeof_uint_fast64_t=8 else cat > conftest.$ac_ext <<EOF -#line 3378 "configure" +#line 3402 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3385,7 +3409,7 @@ main() exit(0); } EOF -if { (eval echo configure:3389: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3413: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_uint_fast64_t=`cat conftestval` else @@ -3406,7 +3430,7 @@ EOF echo $ac_n "checking size of size_t""... $ac_c" 1>&6 -echo "configure:3410: checking size of size_t" >&5 +echo "configure:3434: checking size of size_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3414,7 +3438,7 @@ else ac_cv_sizeof_size_t=4 else cat > conftest.$ac_ext <<EOF -#line 3418 "configure" +#line 3442 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3425,7 +3449,7 @@ main() exit(0); } EOF -if { (eval echo configure:3429: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3453: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_size_t=`cat conftestval` else @@ -3448,7 +3472,7 @@ cat >>confdefs.h <<\EOF #include <sys/types.h> /*for off_t definition*/ EOF echo $ac_n "checking size of off_t""... $ac_c" 1>&6 -echo "configure:3452: checking size of off_t" >&5 +echo "configure:3476: checking size of off_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_off_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3456,7 +3480,7 @@ else ac_cv_sizeof_off_t=4 else cat > conftest.$ac_ext <<EOF -#line 3460 "configure" +#line 3484 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3467,7 +3491,7 @@ main() exit(0); } EOF -if { (eval echo configure:3471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3495: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_off_t=`cat conftestval` else @@ -3494,7 +3518,7 @@ if test "${enable_hsizet+set}" = set; then fi echo $ac_n "checking for sizeof hsize_t and hssize_t""... $ac_c" 1>&6 -echo "configure:3498: checking for sizeof hsize_t and hssize_t" >&5 +echo "configure:3522: checking for sizeof hsize_t and hssize_t" >&5 case $HSIZET in no|small) @@ -3533,18 +3557,18 @@ case $withval in do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:3537: checking for $ac_hdr" >&5 +echo "configure:3561: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 3542 "configure" +#line 3566 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:3547: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:3571: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -3571,7 +3595,7 @@ fi done echo $ac_n "checking for deflate in -lz""... $ac_c" 1>&6 -echo "configure:3575: checking for deflate in -lz" >&5 +echo "configure:3599: checking for deflate in -lz" >&5 ac_lib_var=`echo z'_'deflate | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3579,7 +3603,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lz $LIBS" cat > conftest.$ac_ext <<EOF -#line 3583 "configure" +#line 3607 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -3590,7 +3614,7 @@ int main() { deflate() ; return 0; } EOF -if { (eval echo configure:3594: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3618: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3619,7 +3643,7 @@ unset H5TOH4 TESTH5TOH4 fi echo $ac_n "checking for jpeg_start_compress in -ljpeg""... $ac_c" 1>&6 -echo "configure:3623: checking for jpeg_start_compress in -ljpeg" >&5 +echo "configure:3647: checking for jpeg_start_compress in -ljpeg" >&5 ac_lib_var=`echo jpeg'_'jpeg_start_compress | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3627,7 +3651,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ljpeg $LIBS" cat > conftest.$ac_ext <<EOF -#line 3631 "configure" +#line 3655 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -3638,7 +3662,7 @@ int main() { jpeg_start_compress() ; return 0; } EOF -if { (eval echo configure:3642: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3666: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3667,7 +3691,7 @@ unset H5TOH4 TESTH5TOH4 fi echo $ac_n "checking for Hstartaccess in -ldf""... $ac_c" 1>&6 -echo "configure:3671: checking for Hstartaccess in -ldf" >&5 +echo "configure:3695: checking for Hstartaccess in -ldf" >&5 ac_lib_var=`echo df'_'Hstartaccess | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3675,7 +3699,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldf $LIBS" cat > conftest.$ac_ext <<EOF -#line 3679 "configure" +#line 3703 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -3686,7 +3710,7 @@ int main() { Hstartaccess() ; return 0; } EOF -if { (eval echo configure:3690: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3714: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3715,7 +3739,7 @@ unset H5TOH4 TESTH5TOH4 fi echo $ac_n "checking for SDstart in -lmfhdf""... $ac_c" 1>&6 -echo "configure:3719: checking for SDstart in -lmfhdf" >&5 +echo "configure:3743: checking for SDstart in -lmfhdf" >&5 ac_lib_var=`echo mfhdf'_'SDstart | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3723,7 +3747,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lmfhdf $LIBS" cat > conftest.$ac_ext <<EOF -#line 3727 "configure" +#line 3751 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -3734,7 +3758,7 @@ int main() { SDstart() ; return 0; } EOF -if { (eval echo configure:3738: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3762: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3765,7 +3789,7 @@ fi ;; no) echo $ac_n "checking for HDF4""... $ac_c" 1>&6 -echo "configure:3769: checking for HDF4" >&5 +echo "configure:3793: checking for HDF4" >&5 echo "$ac_t""suppressed" 1>&6 unset H5TOH4 TESTH5TOH4 ;; @@ -3778,18 +3802,18 @@ echo "configure:3769: checking for HDF4" >&5 do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:3782: checking for $ac_hdr" >&5 +echo "configure:3806: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 3787 "configure" +#line 3811 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:3792: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:3816: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -3822,18 +3846,18 @@ done do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:3826: checking for $ac_hdr" >&5 +echo "configure:3850: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 3831 "configure" +#line 3855 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:3836: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:3860: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -3865,7 +3889,7 @@ done saved_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -L$hdf4_lib" echo $ac_n "checking for deflate in -lz""... $ac_c" 1>&6 -echo "configure:3869: checking for deflate in -lz" >&5 +echo "configure:3893: checking for deflate in -lz" >&5 ac_lib_var=`echo z'_'deflate | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3873,7 +3897,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lz $LIBS" cat > conftest.$ac_ext <<EOF -#line 3877 "configure" +#line 3901 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -3884,7 +3908,7 @@ int main() { deflate() ; return 0; } EOF -if { (eval echo configure:3888: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3912: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3913,7 +3937,7 @@ unset H5TOH4 TESTH5TOH4 fi echo $ac_n "checking for jpeg_start_compress in -ljpeg""... $ac_c" 1>&6 -echo "configure:3917: checking for jpeg_start_compress in -ljpeg" >&5 +echo "configure:3941: checking for jpeg_start_compress in -ljpeg" >&5 ac_lib_var=`echo jpeg'_'jpeg_start_compress | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3921,7 +3945,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ljpeg $LIBS" cat > conftest.$ac_ext <<EOF -#line 3925 "configure" +#line 3949 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -3932,7 +3956,7 @@ int main() { jpeg_start_compress() ; return 0; } EOF -if { (eval echo configure:3936: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3960: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3961,7 +3985,7 @@ unset H5TOH4 TESTH5TOH4 fi echo $ac_n "checking for Hstartaccess in -ldf""... $ac_c" 1>&6 -echo "configure:3965: checking for Hstartaccess in -ldf" >&5 +echo "configure:3989: checking for Hstartaccess in -ldf" >&5 ac_lib_var=`echo df'_'Hstartaccess | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3969,7 +3993,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldf $LIBS" cat > conftest.$ac_ext <<EOF -#line 3973 "configure" +#line 3997 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -3980,7 +4004,7 @@ int main() { Hstartaccess() ; return 0; } EOF -if { (eval echo configure:3984: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4008: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4009,7 +4033,7 @@ unset H5TOH4 TESTH5TOH4 fi echo $ac_n "checking for SDstart in -lmfhdf""... $ac_c" 1>&6 -echo "configure:4013: checking for SDstart in -lmfhdf" >&5 +echo "configure:4037: checking for SDstart in -lmfhdf" >&5 ac_lib_var=`echo mfhdf'_'SDstart | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4017,7 +4041,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lmfhdf $LIBS" cat > conftest.$ac_ext <<EOF -#line 4021 "configure" +#line 4045 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4028,7 +4052,7 @@ int main() { SDstart() ; return 0; } EOF -if { (eval echo configure:4032: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4056: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4058,7 +4082,7 @@ fi else echo $ac_n "checking for deflate in -lz""... $ac_c" 1>&6 -echo "configure:4062: checking for deflate in -lz" >&5 +echo "configure:4086: checking for deflate in -lz" >&5 ac_lib_var=`echo z'_'deflate | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4066,7 +4090,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lz $LIBS" cat > conftest.$ac_ext <<EOF -#line 4070 "configure" +#line 4094 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4077,7 +4101,7 @@ int main() { deflate() ; return 0; } EOF -if { (eval echo configure:4081: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4105: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4106,7 +4130,7 @@ unset H5TOH4 TESTH5TOH4 fi echo $ac_n "checking for jpeg_start_compress in -ljpeg""... $ac_c" 1>&6 -echo "configure:4110: checking for jpeg_start_compress in -ljpeg" >&5 +echo "configure:4134: checking for jpeg_start_compress in -ljpeg" >&5 ac_lib_var=`echo jpeg'_'jpeg_start_compress | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4114,7 +4138,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ljpeg $LIBS" cat > conftest.$ac_ext <<EOF -#line 4118 "configure" +#line 4142 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4125,7 +4149,7 @@ int main() { jpeg_start_compress() ; return 0; } EOF -if { (eval echo configure:4129: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4153: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4154,7 +4178,7 @@ unset H5TOH4 TESTH5TOH4 fi echo $ac_n "checking for Hstartaccess in -ldf""... $ac_c" 1>&6 -echo "configure:4158: checking for Hstartaccess in -ldf" >&5 +echo "configure:4182: checking for Hstartaccess in -ldf" >&5 ac_lib_var=`echo df'_'Hstartaccess | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4162,7 +4186,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldf $LIBS" cat > conftest.$ac_ext <<EOF -#line 4166 "configure" +#line 4190 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4173,7 +4197,7 @@ int main() { Hstartaccess() ; return 0; } EOF -if { (eval echo configure:4177: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4201: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4201,7 +4225,7 @@ else fi echo $ac_n "checking for SDstart in -lmfhdf""... $ac_c" 1>&6 -echo "configure:4205: checking for SDstart in -lmfhdf" >&5 +echo "configure:4229: checking for SDstart in -lmfhdf" >&5 ac_lib_var=`echo mfhdf'_'SDstart | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4209,7 +4233,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lmfhdf $LIBS" cat > conftest.$ac_ext <<EOF -#line 4213 "configure" +#line 4237 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4220,7 +4244,7 @@ int main() { SDstart() ; return 0; } EOF -if { (eval echo configure:4224: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4248: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4266,18 +4290,18 @@ case $withval in do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4270: checking for $ac_hdr" >&5 +echo "configure:4294: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4275 "configure" +#line 4299 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4280: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:4304: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -4303,7 +4327,7 @@ fi done echo $ac_n "checking for compress in -lz""... $ac_c" 1>&6 -echo "configure:4307: checking for compress in -lz" >&5 +echo "configure:4331: checking for compress in -lz" >&5 ac_lib_var=`echo z'_'compress | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4311,7 +4335,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lz $LIBS" cat > conftest.$ac_ext <<EOF -#line 4315 "configure" +#line 4339 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4322,7 +4346,7 @@ int main() { compress() ; return 0; } EOF -if { (eval echo configure:4326: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4350: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4352,7 +4376,7 @@ fi ;; no) echo $ac_n "checking for GNU zlib""... $ac_c" 1>&6 -echo "configure:4356: checking for GNU zlib" >&5 +echo "configure:4380: checking for GNU zlib" >&5 echo "$ac_t""suppressed" 1>&6 ;; *) @@ -4364,18 +4388,18 @@ echo "configure:4356: checking for GNU zlib" >&5 do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4368: checking for $ac_hdr" >&5 +echo "configure:4392: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4373 "configure" +#line 4397 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4378: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:4402: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -4406,18 +4430,18 @@ done do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4410: checking for $ac_hdr" >&5 +echo "configure:4434: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4415 "configure" +#line 4439 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4420: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:4444: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -4449,7 +4473,7 @@ done saved_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -L$zlib_lib" echo $ac_n "checking for compress in -lz""... $ac_c" 1>&6 -echo "configure:4453: checking for compress in -lz" >&5 +echo "configure:4477: checking for compress in -lz" >&5 ac_lib_var=`echo z'_'compress | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4457,7 +4481,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lz $LIBS" cat > conftest.$ac_ext <<EOF -#line 4461 "configure" +#line 4485 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4468,7 +4492,7 @@ int main() { compress() ; return 0; } EOF -if { (eval echo configure:4472: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4496: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4498,7 +4522,7 @@ fi else echo $ac_n "checking for compress in -lz""... $ac_c" 1>&6 -echo "configure:4502: checking for compress in -lz" >&5 +echo "configure:4526: checking for compress in -lz" >&5 ac_lib_var=`echo z'_'compress | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4506,7 +4530,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lz $LIBS" cat > conftest.$ac_ext <<EOF -#line 4510 "configure" +#line 4534 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4517,7 +4541,7 @@ int main() { compress() ; return 0; } EOF -if { (eval echo configure:4521: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4545: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4567,18 +4591,18 @@ case $withval in do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4571: checking for $ac_hdr" >&5 +echo "configure:4595: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4576 "configure" +#line 4600 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4581: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:4605: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -4605,7 +4629,7 @@ fi done echo $ac_n "checking for globus_module_activate in -lglobus_common""... $ac_c" 1>&6 -echo "configure:4609: checking for globus_module_activate in -lglobus_common" >&5 +echo "configure:4633: checking for globus_module_activate in -lglobus_common" >&5 ac_lib_var=`echo globus_common'_'globus_module_activate | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4613,7 +4637,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_common $LIBS" cat > conftest.$ac_ext <<EOF -#line 4617 "configure" +#line 4641 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4624,7 +4648,7 @@ int main() { globus_module_activate() ; return 0; } EOF -if { (eval echo configure:4628: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4652: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4653,7 +4677,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_dc""... $ac_c" 1>&6 -echo "configure:4657: checking for main in -lglobus_dc" >&5 +echo "configure:4681: checking for main in -lglobus_dc" >&5 ac_lib_var=`echo globus_dc'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4661,14 +4685,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_dc $LIBS" cat > conftest.$ac_ext <<EOF -#line 4665 "configure" +#line 4689 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:4672: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4696: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4697,7 +4721,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_nexus""... $ac_c" 1>&6 -echo "configure:4701: checking for main in -lglobus_nexus" >&5 +echo "configure:4725: checking for main in -lglobus_nexus" >&5 ac_lib_var=`echo globus_nexus'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4705,14 +4729,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_nexus $LIBS" cat > conftest.$ac_ext <<EOF -#line 4709 "configure" +#line 4733 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:4716: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4740: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4741,7 +4765,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_gass_client""... $ac_c" 1>&6 -echo "configure:4745: checking for main in -lglobus_gass_client" >&5 +echo "configure:4769: checking for main in -lglobus_gass_client" >&5 ac_lib_var=`echo globus_gass_client'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4749,14 +4773,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_gass_client $LIBS" cat > conftest.$ac_ext <<EOF -#line 4753 "configure" +#line 4777 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:4760: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4784: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4785,7 +4809,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_gass_cache""... $ac_c" 1>&6 -echo "configure:4789: checking for main in -lglobus_gass_cache" >&5 +echo "configure:4813: checking for main in -lglobus_gass_cache" >&5 ac_lib_var=`echo globus_gass_cache'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4793,14 +4817,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_gass_cache $LIBS" cat > conftest.$ac_ext <<EOF -#line 4797 "configure" +#line 4821 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:4804: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4828: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4829,7 +4853,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for globus_gass_open in -lglobus_gass_file""... $ac_c" 1>&6 -echo "configure:4833: checking for globus_gass_open in -lglobus_gass_file" >&5 +echo "configure:4857: checking for globus_gass_open in -lglobus_gass_file" >&5 ac_lib_var=`echo globus_gass_file'_'globus_gass_open | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4837,7 +4861,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_gass_file $LIBS" cat > conftest.$ac_ext <<EOF -#line 4841 "configure" +#line 4865 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4848,7 +4872,7 @@ int main() { globus_gass_open() ; return 0; } EOF -if { (eval echo configure:4852: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4876: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4879,7 +4903,7 @@ fi ;; no) echo $ac_n "checking for GASS""... $ac_c" 1>&6 -echo "configure:4883: checking for GASS" >&5 +echo "configure:4907: checking for GASS" >&5 echo "$ac_t""suppressed" 1>&6 unset GASS TESTGASS ;; @@ -4892,18 +4916,18 @@ echo "configure:4883: checking for GASS" >&5 do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4896: checking for $ac_hdr" >&5 +echo "configure:4920: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4901 "configure" +#line 4925 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4906: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:4930: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -4936,18 +4960,18 @@ done do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4940: checking for $ac_hdr" >&5 +echo "configure:4964: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4945 "configure" +#line 4969 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4950: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:4974: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -4979,7 +5003,7 @@ done saved_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -L$gass_lib" echo $ac_n "checking for globus_module_activate in -lglobus_common""... $ac_c" 1>&6 -echo "configure:4983: checking for globus_module_activate in -lglobus_common" >&5 +echo "configure:5007: checking for globus_module_activate in -lglobus_common" >&5 ac_lib_var=`echo globus_common'_'globus_module_activate | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4987,7 +5011,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_common $LIBS" cat > conftest.$ac_ext <<EOF -#line 4991 "configure" +#line 5015 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4998,7 +5022,7 @@ int main() { globus_module_activate() ; return 0; } EOF -if { (eval echo configure:5002: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5026: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5027,7 +5051,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_dc""... $ac_c" 1>&6 -echo "configure:5031: checking for main in -lglobus_dc" >&5 +echo "configure:5055: checking for main in -lglobus_dc" >&5 ac_lib_var=`echo globus_dc'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5035,14 +5059,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_dc $LIBS" cat > conftest.$ac_ext <<EOF -#line 5039 "configure" +#line 5063 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5046: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5070: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5071,7 +5095,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_nexus""... $ac_c" 1>&6 -echo "configure:5075: checking for main in -lglobus_nexus" >&5 +echo "configure:5099: checking for main in -lglobus_nexus" >&5 ac_lib_var=`echo globus_nexus'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5079,14 +5103,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_nexus $LIBS" cat > conftest.$ac_ext <<EOF -#line 5083 "configure" +#line 5107 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5090: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5114: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5115,7 +5139,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_gass_client""... $ac_c" 1>&6 -echo "configure:5119: checking for main in -lglobus_gass_client" >&5 +echo "configure:5143: checking for main in -lglobus_gass_client" >&5 ac_lib_var=`echo globus_gass_client'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5123,14 +5147,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_gass_client $LIBS" cat > conftest.$ac_ext <<EOF -#line 5127 "configure" +#line 5151 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5134: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5158: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5159,7 +5183,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_gass_cache""... $ac_c" 1>&6 -echo "configure:5163: checking for main in -lglobus_gass_cache" >&5 +echo "configure:5187: checking for main in -lglobus_gass_cache" >&5 ac_lib_var=`echo globus_gass_cache'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5167,14 +5191,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_gass_cache $LIBS" cat > conftest.$ac_ext <<EOF -#line 5171 "configure" +#line 5195 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5178: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5202: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5203,7 +5227,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for globus_gass_open in -lglobus_gass_file""... $ac_c" 1>&6 -echo "configure:5207: checking for globus_gass_open in -lglobus_gass_file" >&5 +echo "configure:5231: checking for globus_gass_open in -lglobus_gass_file" >&5 ac_lib_var=`echo globus_gass_file'_'globus_gass_open | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5211,7 +5235,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_gass_file $LIBS" cat > conftest.$ac_ext <<EOF -#line 5215 "configure" +#line 5239 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5222,7 +5246,7 @@ int main() { globus_gass_open() ; return 0; } EOF -if { (eval echo configure:5226: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5250: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5252,7 +5276,7 @@ fi else echo $ac_n "checking for globus_module_activate in -lglobus_common""... $ac_c" 1>&6 -echo "configure:5256: checking for globus_module_activate in -lglobus_common" >&5 +echo "configure:5280: checking for globus_module_activate in -lglobus_common" >&5 ac_lib_var=`echo globus_common'_'globus_module_activate | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5260,7 +5284,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_common $LIBS" cat > conftest.$ac_ext <<EOF -#line 5264 "configure" +#line 5288 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5271,7 +5295,7 @@ int main() { globus_module_activate() ; return 0; } EOF -if { (eval echo configure:5275: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5299: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5300,7 +5324,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_dc""... $ac_c" 1>&6 -echo "configure:5304: checking for main in -lglobus_dc" >&5 +echo "configure:5328: checking for main in -lglobus_dc" >&5 ac_lib_var=`echo globus_dc'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5308,14 +5332,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_dc $LIBS" cat > conftest.$ac_ext <<EOF -#line 5312 "configure" +#line 5336 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5319: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5343: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5344,7 +5368,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_nexus""... $ac_c" 1>&6 -echo "configure:5348: checking for main in -lglobus_nexus" >&5 +echo "configure:5372: checking for main in -lglobus_nexus" >&5 ac_lib_var=`echo globus_nexus'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5352,14 +5376,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_nexus $LIBS" cat > conftest.$ac_ext <<EOF -#line 5356 "configure" +#line 5380 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5363: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5387: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5388,7 +5412,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_gass_client""... $ac_c" 1>&6 -echo "configure:5392: checking for main in -lglobus_gass_client" >&5 +echo "configure:5416: checking for main in -lglobus_gass_client" >&5 ac_lib_var=`echo globus_gass_client'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5396,14 +5420,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_gass_client $LIBS" cat > conftest.$ac_ext <<EOF -#line 5400 "configure" +#line 5424 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5407: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5431: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5432,7 +5456,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for main in -lglobus_gass_cache""... $ac_c" 1>&6 -echo "configure:5436: checking for main in -lglobus_gass_cache" >&5 +echo "configure:5460: checking for main in -lglobus_gass_cache" >&5 ac_lib_var=`echo globus_gass_cache'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5440,14 +5464,14 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_gass_cache $LIBS" cat > conftest.$ac_ext <<EOF -#line 5444 "configure" +#line 5468 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5451: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5475: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5476,7 +5500,7 @@ unset GASS TESTGASS fi echo $ac_n "checking for globus_gass_open in -lglobus_gass_file""... $ac_c" 1>&6 -echo "configure:5480: checking for globus_gass_open in -lglobus_gass_file" >&5 +echo "configure:5504: checking for globus_gass_open in -lglobus_gass_file" >&5 ac_lib_var=`echo globus_gass_file'_'globus_gass_open | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5484,7 +5508,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lglobus_gass_file $LIBS" cat > conftest.$ac_ext <<EOF -#line 5488 "configure" +#line 5512 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5495,7 +5519,7 @@ int main() { globus_gass_open() ; return 0; } EOF -if { (eval echo configure:5499: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5523: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5535,7 +5559,7 @@ fi echo $ac_n "checking for PD_open in -lpdb""... $ac_c" 1>&6 -echo "configure:5539: checking for PD_open in -lpdb" >&5 +echo "configure:5563: checking for PD_open in -lpdb" >&5 ac_lib_var=`echo pdb'_'PD_open | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5543,7 +5567,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lpdb $LIBS" cat > conftest.$ac_ext <<EOF -#line 5547 "configure" +#line 5571 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5554,7 +5578,7 @@ int main() { PD_open() ; return 0; } EOF -if { (eval echo configure:5558: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5582: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5582,7 +5606,7 @@ else fi echo $ac_n "checking for lite_PD_open in -lsilo""... $ac_c" 1>&6 -echo "configure:5586: checking for lite_PD_open in -lsilo" >&5 +echo "configure:5610: checking for lite_PD_open in -lsilo" >&5 ac_lib_var=`echo silo'_'lite_PD_open | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5590,7 +5614,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lsilo $LIBS" cat > conftest.$ac_ext <<EOF -#line 5594 "configure" +#line 5618 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5601,7 +5625,7 @@ int main() { lite_PD_open() ; return 0; } EOF -if { (eval echo configure:5605: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5629: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5632,18 +5656,18 @@ for ac_hdr in pdb.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5636: checking for $ac_hdr" >&5 +echo "configure:5660: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5641 "configure" +#line 5665 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5646: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +{ (eval echo configure:5670: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -5671,9 +5695,9 @@ done echo $ac_n "checking for tm_gmtoff in struct tm""... $ac_c" 1>&6 -echo "configure:5675: checking for tm_gmtoff in struct tm" >&5 +echo "configure:5699: checking for tm_gmtoff in struct tm" >&5 cat > conftest.$ac_ext <<EOF -#line 5677 "configure" +#line 5701 "configure" #include "confdefs.h" #include <sys/time.h> @@ -5682,7 +5706,7 @@ int main() { struct tm tm; tm.tm_gmtoff=0; ; return 0; } EOF -if { (eval echo configure:5686: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5710: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_TM_GMTOFF 1 @@ -5698,9 +5722,9 @@ fi rm -f conftest* echo $ac_n "checking for __tm_gmtoff in struct tm""... $ac_c" 1>&6 -echo "configure:5702: checking for __tm_gmtoff in struct tm" >&5 +echo "configure:5726: checking for __tm_gmtoff in struct tm" >&5 cat > conftest.$ac_ext <<EOF -#line 5704 "configure" +#line 5728 "configure" #include "confdefs.h" #include <sys/time.h> @@ -5709,7 +5733,7 @@ int main() { struct tm tm; tm.__tm_gmtoff=0; ; return 0; } EOF -if { (eval echo configure:5713: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5737: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE___TM_GMTOFF 1 @@ -5725,9 +5749,9 @@ fi rm -f conftest* echo $ac_n "checking for global timezone variable""... $ac_c" 1>&6 -echo "configure:5729: checking for global timezone variable" >&5 +echo "configure:5753: checking for global timezone variable" >&5 cat > conftest.$ac_ext <<EOF -#line 5731 "configure" +#line 5755 "configure" #include "confdefs.h" #include <sys/time.h> @@ -5736,7 +5760,7 @@ int main() { timezone=0; ; return 0; } EOF -if { (eval echo configure:5740: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5764: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_TIMEZONE 1 @@ -5752,12 +5776,12 @@ fi rm -f conftest* echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6 -echo "configure:5756: checking whether struct tm is in sys/time.h or time.h" >&5 +echo "configure:5780: checking whether struct tm is in sys/time.h or time.h" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5761 "configure" +#line 5785 "configure" #include "confdefs.h" #include <sys/types.h> #include <time.h> @@ -5765,7 +5789,7 @@ int main() { struct tm *tp; tp->tm_sec; ; return 0; } EOF -if { (eval echo configure:5769: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5793: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm=time.h else @@ -5786,12 +5810,12 @@ EOF fi echo $ac_n "checking for tm_zone in struct tm""... $ac_c" 1>&6 -echo "configure:5790: checking for tm_zone in struct tm" >&5 +echo "configure:5814: checking for tm_zone in struct tm" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm_zone'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5795 "configure" +#line 5819 "configure" #include "confdefs.h" #include <sys/types.h> #include <$ac_cv_struct_tm> @@ -5799,7 +5823,7 @@ int main() { struct tm tm; tm.tm_zone; ; return 0; } EOF -if { (eval echo configure:5803: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5827: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm_zone=yes else @@ -5819,12 +5843,12 @@ EOF else echo $ac_n "checking for tzname""... $ac_c" 1>&6 -echo "configure:5823: checking for tzname" >&5 +echo "configure:5847: checking for tzname" >&5 if eval "test \"`echo '$''{'ac_cv_var_tzname'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5828 "configure" +#line 5852 "configure" #include "confdefs.h" #include <time.h> #ifndef tzname /* For SGI. */ @@ -5834,7 +5858,7 @@ int main() { atoi(*tzname); ; return 0; } EOF -if { (eval echo configure:5838: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5862: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* ac_cv_var_tzname=yes else @@ -5856,9 +5880,9 @@ EOF fi echo $ac_n "checking for struct timezone""... $ac_c" 1>&6 -echo "configure:5860: checking for struct timezone" >&5 +echo "configure:5884: checking for struct timezone" >&5 cat > conftest.$ac_ext <<EOF -#line 5862 "configure" +#line 5886 "configure" #include "confdefs.h" #include <sys/types.h> @@ -5868,7 +5892,7 @@ int main() { struct timezone tz; tz.tz_minuteswest=0; ; return 0; } EOF -if { (eval echo configure:5872: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5896: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_STRUCT_TIMEZONE 1 @@ -5884,9 +5908,9 @@ fi rm -f conftest* echo $ac_n "checking for st_blocks in struct stat""... $ac_c" 1>&6 -echo "configure:5888: checking for st_blocks in struct stat" >&5 +echo "configure:5912: checking for st_blocks in struct stat" >&5 cat > conftest.$ac_ext <<EOF -#line 5890 "configure" +#line 5914 "configure" #include "confdefs.h" #include <sys/stat.h> @@ -5894,7 +5918,7 @@ int main() { struct stat sb; sb.st_blocks=0; ; return 0; } EOF -if { (eval echo configure:5898: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5922: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_STAT_ST_BLOCKS 1 @@ -5912,12 +5936,12 @@ rm -f conftest* for ac_func in _getvideoconfig gettextinfo GetConsoleScreenBufferInfo do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:5916: checking for $ac_func" >&5 +echo "configure:5940: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5921 "configure" +#line 5945 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -5940,7 +5964,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:5944: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5968: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -5967,12 +5991,12 @@ done for ac_func in _scrsize ioctl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:5971: checking for $ac_func" >&5 +echo "configure:5995: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5976 "configure" +#line 6000 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -5995,7 +6019,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:5999: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6023: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6021,16 +6045,16 @@ done echo $ac_n "checking for struct videoconfig""... $ac_c" 1>&6 -echo "configure:6025: checking for struct videoconfig" >&5 +echo "configure:6049: checking for struct videoconfig" >&5 cat > conftest.$ac_ext <<EOF -#line 6027 "configure" +#line 6051 "configure" #include "confdefs.h" int main() { struct videoconfig w; w.numtextcols=0; ; return 0; } EOF -if { (eval echo configure:6034: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6058: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_STRUCT_VIDEOCONFIG 1 @@ -6046,16 +6070,16 @@ fi rm -f conftest* echo $ac_n "checking for struct text_info""... $ac_c" 1>&6 -echo "configure:6050: checking for struct text_info" >&5 +echo "configure:6074: checking for struct text_info" >&5 cat > conftest.$ac_ext <<EOF -#line 6052 "configure" +#line 6076 "configure" #include "confdefs.h" int main() { struct text_info w; w.screenwidth=0; ; return 0; } EOF -if { (eval echo configure:6059: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6083: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_STRUCT_TEXT_INFO 1 @@ -6071,16 +6095,16 @@ fi rm -f conftest* echo $ac_n "checking for TIOCGWINSZ""... $ac_c" 1>&6 -echo "configure:6075: checking for TIOCGWINSZ" >&5 +echo "configure:6099: checking for TIOCGWINSZ" >&5 cat > conftest.$ac_ext <<EOF -#line 6077 "configure" +#line 6101 "configure" #include "confdefs.h" #include <sys/ioctl.h> int main() { int w=TIOCGWINSZ; ; return 0; } EOF -if { (eval echo configure:6084: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6108: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_TIOCGWINSZ 1 @@ -6096,16 +6120,16 @@ fi rm -f conftest* echo $ac_n "checking for TIOCGGETD""... $ac_c" 1>&6 -echo "configure:6100: checking for TIOCGGETD" >&5 +echo "configure:6124: checking for TIOCGGETD" >&5 cat > conftest.$ac_ext <<EOF -#line 6102 "configure" +#line 6126 "configure" #include "confdefs.h" #include <sys/ioctl.h> int main() { int w=TIOCGETD; ; return 0; } EOF -if { (eval echo configure:6109: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6133: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_TIOCGETD 1 @@ -6124,12 +6148,12 @@ rm -f conftest* for ac_func in getpwuid gethostname system getrusage fork waitpid do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6128: checking for $ac_func" >&5 +echo "configure:6152: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6133 "configure" +#line 6157 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6152,7 +6176,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6156: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6180: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6179,12 +6203,12 @@ done for ac_func in gettimeofday BSDgettimeofday difftime snprintf vsnprintf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6183: checking for $ac_func" >&5 +echo "configure:6207: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6188 "configure" +#line 6212 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6207,7 +6231,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6211: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6235: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6234,12 +6258,12 @@ done for ac_func in compress2 setsysinfo longjmp signal sigaction do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6238: checking for $ac_func" >&5 +echo "configure:6262: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6243 "configure" +#line 6267 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6262,7 +6286,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6266: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6290: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6287,24 +6311,24 @@ fi done cat > conftest.$ac_ext <<EOF -#line 6291 "configure" +#line 6315 "configure" #include "confdefs.h" #include<sys/types.h> int main() { off64_t n = 0; ; return 0; } EOF -if { (eval echo configure:6298: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6322: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* for ac_func in lseek64 fseek64 do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6303: checking for $ac_func" >&5 +echo "configure:6327: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6308 "configure" +#line 6332 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6327,7 +6351,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6331: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6355: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6362,12 +6386,12 @@ rm -f conftest* echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:6366: checking for working const" >&5 +echo "configure:6390: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6371 "configure" +#line 6395 "configure" #include "confdefs.h" int main() { @@ -6416,7 +6440,7 @@ ccp = (char const *const *) p; ; return 0; } EOF -if { (eval echo configure:6420: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6444: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -6437,21 +6461,21 @@ EOF fi echo $ac_n "checking for inline""... $ac_c" 1>&6 -echo "configure:6441: checking for inline" >&5 +echo "configure:6465: checking for inline" >&5 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat > conftest.$ac_ext <<EOF -#line 6448 "configure" +#line 6472 "configure" #include "confdefs.h" int main() { } $ac_kw foo() { ; return 0; } EOF -if { (eval echo configure:6455: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6479: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_inline=$ac_kw; break else @@ -6478,16 +6502,16 @@ esac echo $ac_n "checking for __attribute__ extension""... $ac_c" 1>&6 -echo "configure:6482: checking for __attribute__ extension" >&5 +echo "configure:6506: checking for __attribute__ extension" >&5 cat > conftest.$ac_ext <<EOF -#line 6484 "configure" +#line 6508 "configure" #include "confdefs.h" int main() { int __attribute__((unused)) x ; return 0; } EOF -if { (eval echo configure:6491: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6515: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_ATTRIBUTE 1 @@ -6503,16 +6527,16 @@ fi rm -f conftest* echo $ac_n "checking for __FUNCTION__ extension""... $ac_c" 1>&6 -echo "configure:6507: checking for __FUNCTION__ extension" >&5 +echo "configure:6531: checking for __FUNCTION__ extension" >&5 cat > conftest.$ac_ext <<EOF -#line 6509 "configure" +#line 6533 "configure" #include "confdefs.h" int main() { (void)__FUNCTION__ ; return 0; } EOF -if { (eval echo configure:6516: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6540: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_FUNCTION 1 @@ -6528,7 +6552,7 @@ fi rm -f conftest* echo $ac_n "checking how to print long long""... $ac_c" 1>&6 -echo "configure:6532: checking how to print long long" >&5 +echo "configure:6556: checking how to print long long" >&5 if eval "test \"`echo '$''{'hdf5_cv_printf_ll'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6537,7 +6561,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <<EOF -#line 6541 "configure" +#line 6565 "configure" #include "confdefs.h" #include <stdio.h> @@ -6548,7 +6572,7 @@ else sprintf(s,"%${hdf5_cv_printf_ll}d",x); exit (strcmp(s,"1099511627776"));} EOF -if { (eval echo configure:6552: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:6576: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then break else @@ -6568,7 +6592,7 @@ EOF echo $ac_n "checking for debug flags""... $ac_c" 1>&6 -echo "configure:6572: checking for debug flags" >&5 +echo "configure:6596: checking for debug flags" >&5 # Check whether --enable-debug or --disable-debug was given. if test "${enable_debug+set}" = set; then enableval="$enable_debug" @@ -6601,7 +6625,7 @@ if test "X" != "X$DEBUG_PKG"; then fi echo $ac_n "checking for API tracing""... $ac_c" 1>&6 -echo "configure:6605: checking for API tracing" >&5; +echo "configure:6629: checking for API tracing" >&5; # Check whether --enable-trace or --disable-trace was given. if test "${enable_trace+set}" = set; then enableval="$enable_trace" @@ -6631,7 +6655,7 @@ case "$CC_BASENAME" in # exists. PARALLEL=mpicc echo $ac_n "checking for mpirun""... $ac_c" 1>&6 -echo "configure:6635: checking for mpirun" >&5 +echo "configure:6659: checking for mpirun" >&5 # Find the path where mpicc is located. cmd=`echo $CC |cut -f1 -d' '` @@ -6676,7 +6700,7 @@ fi echo $ac_n "checking for parallel support files""... $ac_c" 1>&6 -echo "configure:6680: checking for parallel support files" >&5 +echo "configure:6704: checking for parallel support files" >&5 case "X-$enable_parallel" in X-|X-no|X-none) # Either we are not compiling for parallel or the header and library @@ -6707,7 +6731,7 @@ case "X-$enable_parallel" in # is missing. PARALLEL=mpich echo $ac_n "checking for MPI_Init in -lmpich""... $ac_c" 1>&6 -echo "configure:6711: checking for MPI_Init in -lmpich" >&5 +echo "configure:6735: checking for MPI_Init in -lmpich" >&5 ac_lib_var=`echo mpich'_'MPI_Init | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -6715,7 +6739,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lmpich $LIBS" cat > conftest.$ac_ext <<EOF -#line 6719 "configure" +#line 6743 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6726,7 +6750,7 @@ int main() { MPI_Init() ; return 0; } EOF -if { (eval echo configure:6730: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6754: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6775,10 +6799,10 @@ EOF # Display what we found about running programs echo $ac_n "checking prefix for running on one processor""... $ac_c" 1>&6 -echo "configure:6779: checking prefix for running on one processor" >&5 +echo "configure:6803: checking prefix for running on one processor" >&5 echo "$ac_t""$RUNSERIAL" 1>&6 echo $ac_n "checking prefix for running in parallel""... $ac_c" 1>&6 -echo "configure:6782: checking prefix for running in parallel" >&5 +echo "configure:6806: checking prefix for running in parallel" >&5 echo "$ac_t""$RUNPARALLEL" 1>&6 # Check that we can link a simple MPI and MPI-IO application @@ -6852,17 +6876,9 @@ fi COMMENCE=config/commence CONCLUDE=config/conclude -if test "X$GCC" = "Xyes" && test "X$GMAKE" = "Xyes"; then - DEPEND1=config/depend - DEPEND2=/dev/null - DEPEND3=/dev/null - DEPEND4=/dev/null -else - DEPEND1=$srcdir/src/.distdep - DEPEND2=$srcdir/test/.distdep - DEPEND3=$srcdir/testpar/.distdep - DEPEND4=$srcdirtools/.distdep -fi + SEARCH='$(srcdir) $(top_builddir)/src $(top_srcdir)/src' +cmd='echo $SEARCH |sed "s/ /'$SEARCH_SEP'/g"' +SEARCH="$SEARCH_RULE`eval $cmd`" if test "X$GMAKE" = "Xyes"; then SETX=":" @@ -6910,7 +6926,7 @@ EOF # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in + case `(ac_space=' '; set) 2>&1` in *ac_space=\ *) # `set' does not quote correctly, so add quotes (double-quote substitution # turns \\\\ into \\, and sed turns \\ into \). @@ -6977,7 +6993,7 @@ do echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; -version | --version | --versio | --versi | --vers | --ver | --ve | --v) - echo "$CONFIG_STATUS generated by autoconf version 2.13" + echo "$CONFIG_STATUS generated by autoconf version 2.12" exit 0 ;; -help | --help | --hel | --he | --h) echo "\$ac_cs_usage"; exit 0 ;; @@ -6988,9 +7004,10 @@ done ac_given_srcdir=$srcdir ac_given_INSTALL="$INSTALL" -trap 'rm -fr `echo "src/libhdf5.settings config/depend config/commence config/conclude \ - Makefile src/Makefile pablo/Makefile test/Makefile \ - testpar/Makefile tools/Makefile examples/Makefile \ +trap 'rm -fr `echo "src/libhdf5.settings config/depend1 config/depend2 config/depend3 + config/depend4 config/dependN config/commence config/conclude + Makefile src/Makefile pablo/Makefile test/Makefile + testpar/Makefile tools/Makefile examples/Makefile doc/Makefile doc/html/Makefile doc/html/Tutor/Makefile src/H5config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 EOF cat >> $CONFIG_STATUS <<EOF @@ -7000,11 +7017,9 @@ sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g; s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF $ac_vpsub $extrasub -s%@SHELL@%$SHELL%g s%@CFLAGS@%$CFLAGS%g s%@CPPFLAGS@%$CPPFLAGS%g s%@CXXFLAGS@%$CXXFLAGS%g -s%@FFLAGS@%$FFLAGS%g s%@DEFS@%$DEFS%g s%@LDFLAGS@%$LDFLAGS%g s%@LIBS@%$LIBS%g @@ -7031,7 +7046,6 @@ s%@host_os@%$host_os%g s%@CC@%$CC%g s%@SET_MAKE@%$SET_MAKE%g s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g -s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g s%@INSTALL_DATA@%$INSTALL_DATA%g s%@RANLIB@%$RANLIB%g s%@LD@%$LD%g @@ -7039,6 +7053,8 @@ s%@NM@%$NM%g s%@LN_S@%$LN_S%g s%@LIBTOOL@%$LIBTOOL%g s%@AR@%$AR%g +/@DEPEND@/r $DEPEND +s%@DEPEND@%%g s%@CPP@%$CPP%g s%@HSIZET@%$HSIZET%g s%@H5TOH4@%$H5TOH4%g @@ -7063,14 +7079,7 @@ s%@CC_VERSION@%$CC_VERSION%g s%@COMMENCE@%%g /@CONCLUDE@/r $CONCLUDE s%@CONCLUDE@%%g -/@DEPEND1@/r $DEPEND1 -s%@DEPEND1@%%g -/@DEPEND2@/r $DEPEND2 -s%@DEPEND2@%%g -/@DEPEND3@/r $DEPEND3 -s%@DEPEND3@%%g -/@DEPEND4@/r $DEPEND4 -s%@DEPEND4@%%g +s%@SEARCH@%$SEARCH%g s%@SETX@%$SETX%g s%@ROOT@%$ROOT%g @@ -7114,9 +7123,10 @@ EOF cat >> $CONFIG_STATUS <<EOF -CONFIG_FILES=\${CONFIG_FILES-"src/libhdf5.settings config/depend config/commence config/conclude \ - Makefile src/Makefile pablo/Makefile test/Makefile \ - testpar/Makefile tools/Makefile examples/Makefile \ +CONFIG_FILES=\${CONFIG_FILES-"src/libhdf5.settings config/depend1 config/depend2 config/depend3 + config/depend4 config/dependN config/commence config/conclude + Makefile src/Makefile pablo/Makefile test/Makefile + testpar/Makefile tools/Makefile examples/Makefile doc/Makefile doc/html/Makefile doc/html/Tutor/Makefile"} EOF cat >> $CONFIG_STATUS <<\EOF diff --git a/configure.in b/configure.in index bfc7b13..4fabac4 100644 --- a/configure.in +++ b/configure.in @@ -112,15 +112,127 @@ if test "X$AR" = "X"; then fi AC_SUBST(AR) -AC_MSG_CHECKING(for GNU Make) +AC_MSG_CHECKING(make) +AC_SUBST_FILE(DEPEND) if test "`${MAKE-make} --version -f /dev/null 2>/dev/null |\ sed -n 1p|cut -c1-8`" = "GNU Make"; then - AC_MSG_RESULT(yes) - GMAKE=yes + AC_MSG_RESULT(GNU make) + GMAKE=yes + if test "X$GCC" = "Xyes"; then + DEPEND=config/depend1 + else + DEPEND=config/depend2 + fi else - AC_MSG_RESULT(no) + AC_MSG_RESULT(generic) fi +dnl How do we include another file into a Makefile? +if test "X" = "X$DEPEND"; then + AC_MSG_CHECKING(how to include a makefile) + + dnl The include file contains the target for `foo' + cat >makeinc <<EOF +foo: + @: +EOF + + while true; do #for break + + dnl pmake. We have to be careful because some pmake think that the + dnl contents of the MAKE environment variable is a target. + echo '.include <makeinc>' >maketest + if (MAKE= ${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + AC_MSG_RESULT([.include <FILE>]) + DEPEND=config/depend3 + break + fi + + dnl Most make's use `include FILE' + echo 'include makeinc' >maketest + if (${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + AC_MSG_RESULT(include FILE) + DEPEND=config/depend4 + break; + fi + + dnl default + AC_MSG_RESULT(you have a deficient make command) + DEPEND=config/dependN + break + done + rm makeinc maketest +fi + +dnl Sometimes makes think the `.PATH:' appearing before the first rule +dnl with an action should override the `all' default target. So we have +dnl to decide what the proper syntax is. +dnl +AC_MSG_CHECKING(how make searches directories) +while true; do #for break + # The most common method is `VPATH=DIR1 DIR2 ...' + cat >maketest <<EOF +VPATH=$srcdir/config $srcdir/src $srcdir/bin +.c.o: + cp $< H5.o + +foo: H5.o + rm H5.o + @echo works +EOF + if (${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + SEARCH_RULE='VPATH=' + SEARCH_SEP=' ' + AC_MSG_RESULT([VPATH=DIR1 DIR2 ...]) + break + fi + + # The second most common method is like above except with the + # directories separated by colons. + cat >maketest <<EOF +VPATH=$srcdir/config:$srcdir/src:$srcdir/bin +.c.o: + cp $< H5.o + +foo: H5.o + rm H5.o + @echo works +EOF + if (${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + SEARCH_RULE='VPATH=' + SEARCH_SEP=':' + AC_MSG_RESULT([VPATH=DIR1:DIR2:...]) + break + fi + + # pmake uses the construct `.PATH: DIR1 DIR2 + cat >maketest <<EOF +.PATH: $srcdir/config $srcdir/src $srcdir/bin +.c.o: + cp $< H5.o + +foo: H5.o + rm H5.o + @echo works +EOF + if (MAKE= ${MAKE-make} -f maketest foo) >/dev/null 2>&1; then + SEARCH_RULE='.PATH: ' + SEARCH_SEP=' ' + AC_MSG_RESULT([.PATH: DIR1 DIR2 ...]) + break + fi + + # No way for make to search directories + SEARCH_RULE='## SEARCH DISABLED: ' + SEARCH_SEP=' ' + AC_MSG_RESULT([it doesn't]) + if test ! -f configure; then + AC_MSG_ERROR(${MAKE-make} requires the build and source directories to be the same) + fi + break +done +rm maketest + dnl ---------------------------------------------------------------------- dnl Turn on warning flags for gcc. dnl @@ -878,17 +990,10 @@ dnl AC_SUBST_FILE(COMMENCE) COMMENCE=config/commence AC_SUBST_FILE(CONCLUDE) CONCLUDE=config/conclude -if test "X$GCC" = "Xyes" && test "X$GMAKE" = "Xyes"; then - AC_SUBST_FILE(DEPEND1) DEPEND1=config/depend - AC_SUBST_FILE(DEPEND2) DEPEND2=/dev/null - AC_SUBST_FILE(DEPEND3) DEPEND3=/dev/null - AC_SUBST_FILE(DEPEND4) DEPEND4=/dev/null -else - AC_SUBST_FILE(DEPEND1) DEPEND1=$srcdir/src/.distdep - AC_SUBST_FILE(DEPEND2) DEPEND2=$srcdir/test/.distdep - AC_SUBST_FILE(DEPEND3) DEPEND3=$srcdir/testpar/.distdep - AC_SUBST_FILE(DEPEND4) DEPEND4=$srcdirtools/.distdep -fi +dnl The directory search list +AC_SUBST(SEARCH) SEARCH='$(srcdir) $(top_builddir)/src $(top_srcdir)/src' +cmd='echo $SEARCH |sed "s/ /'$SEARCH_SEP'/g"' +SEARCH="$SEARCH_RULE`eval $cmd`" dnl We don't need to say when we're entering directories if we're using dnl GNU make becuase make does it for us. @@ -924,9 +1029,10 @@ touch ./config/stamp1 # Then the config.status file (but not makefiles) saved_no_create=$no_create no_create=yes -AC_OUTPUT(src/libhdf5.settings config/depend config/commence config/conclude \ - Makefile src/Makefile pablo/Makefile test/Makefile \ - testpar/Makefile tools/Makefile examples/Makefile \ +AC_OUTPUT(src/libhdf5.settings config/depend1 config/depend2 config/depend3 + config/depend4 config/dependN config/commence config/conclude + Makefile src/Makefile pablo/Makefile test/Makefile + testpar/Makefile tools/Makefile examples/Makefile doc/Makefile doc/html/Makefile doc/html/Tutor/Makefile) no_create=$saved_no_create diff --git a/doc/Makefile.in b/doc/Makefile.in index c62424e..9857cd3 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -11,7 +11,6 @@ top_srcdir=@top_srcdir@ top_builddir=.. srcdir=@srcdir@ -VPATH=.:@srcdir@ @COMMENCE@ # Subdirectories in build-order diff --git a/doc/html/Dependencies b/doc/html/Dependencies new file mode 100644 index 0000000..f29a269 --- /dev/null +++ b/doc/html/Dependencies @@ -0,0 +1,3 @@ +## This file is machine generated on GNU systems. +## Only temporary changes may be made here. + diff --git a/doc/html/Makefile.in b/doc/html/Makefile.in index c915c99..cfb7b14 100644 --- a/doc/html/Makefile.in +++ b/doc/html/Makefile.in @@ -7,41 +7,30 @@ top_srcdir=@top_srcdir@ top_builddir=../.. srcdir=@srcdir@ -VPATH=.:@srcdir@ @COMMENCE@ # Subdirectories in build-order (not including `examples') SUBDIRS=Tutor DOCDIR=$(docdir)/hdf5 -TRACE=perl $(top_srcdir)/bin/trace - -# Add `-I.' to the C preprocessor flags. -CPPFLAGS=-I. -I@srcdir@ @CPPFLAGS@ - -# Temporary files -MOSTLYCLEAN= - # Public doc files (to be installed)... PUB_DOCS=Attributes.html Big.html Caching.html Chunking.html Chunk_f1.gif \ Chunk_f2.gif Chunk_f3.gif Chunk_f4.gif Chunk_f5.gif Chunk_f6.gif \ Coding.html Copyright.html Datasets.html Dataspaces.html \ Datatypes.html ddl.html Debugging.html EnumMap.gif Environment.html \ - Errors.html Files.html \ - Filters.html Glossary.html \ - Groups.html H5.api_map.html H5.format.html H5.intro.html \ - H5.sample_code.html H5.user.html H5.user.PrintGen.html \ - H5.user.PrintTpg.html IH_map1.gif IH_map2.gif IH_map3.gif IH_map4.gif \ - IH_mapFoot.gif IH_mapHead.gif IOPipe.html \ - NCSAfooterlogo.gif \ - Properties.html Ragged.html References.html RM_H5.html \ - RM_H5A.html RM_H5D.html RM_H5E.html RM_H5F.html RM_H5Front.html \ - RM_H5G.html RM_H5I.html RM_H5P.html RM_H5R.html RM_H5RA.html \ - RM_H5S.html RM_H5T.html RM_H5Z.html Tools.html Version.html chunk1.gif \ - compat.html dataset_p1.gif dataset_p1.obj extern1.gif extern2.gif \ - group_p1.gif group_p2.gif group_p3.gif h5s.examples hdf2.jpg \ - ph5design.html ph5example.c ph5implement.txt pipe1.gif pipe2.gif \ - pipe3.gif pipe4.gif pipe5.gif index.html version.gif + Errors.html Files.html Filters.html Glossary.html Groups.html \ + H5.api_map.html H5.format.html H5.intro.html H5.sample_code.html \ + H5.user.html H5.user.PrintGen.html H5.user.PrintTpg.html IH_map1.gif \ + IH_map2.gif IH_map3.gif IH_map4.gif IH_mapFoot.gif IH_mapHead.gif \ + IOPipe.html NCSAfooterlogo.gif Properties.html Ragged.html \ + References.html RM_H5.html RM_H5A.html RM_H5D.html RM_H5E.html \ + RM_H5F.html RM_H5Front.html RM_H5G.html RM_H5I.html RM_H5P.html \ + RM_H5R.html RM_H5RA.html RM_H5S.html RM_H5T.html RM_H5Z.html \ + Tools.html Version.html chunk1.gif compat.html dataset_p1.gif \ + dataset_p1.obj extern1.gif extern2.gif group_p1.gif group_p2.gif \ + group_p3.gif h5s.examples hdf2.jpg ph5design.html ph5example.c \ + ph5implement.txt pipe1.gif pipe2.gif pipe3.gif pipe4.gif pipe5.gif \ + index.html version.gif # Other doc files (not to be installed)... PRIVATE_DOCS=Chunk_f1.obj Chunk_f2.obj Chunk_f6.obj CodeReview.html \ diff --git a/doc/html/Tutor/Dependencies b/doc/html/Tutor/Dependencies new file mode 100644 index 0000000..3f21eb3 --- /dev/null +++ b/doc/html/Tutor/Dependencies @@ -0,0 +1 @@ +## There are no dependencies in this directory diff --git a/doc/html/Tutor/Makefile.in b/doc/html/Tutor/Makefile.in index 8e4227b..c5c9601 100644 --- a/doc/html/Tutor/Makefile.in +++ b/doc/html/Tutor/Makefile.in @@ -7,21 +7,12 @@ top_srcdir=@top_srcdir@ top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:@srcdir@ @COMMENCE@ # Subdirectories in build-order (not including `examples') SUBDIRS= DOCDIR=$(docdir)/hdf5/Tutor -TRACE=perl $(top_srcdir)/bin/trace - -# Add `-I.' to the C preprocessor flags. -CPPFLAGS=-I. -I@srcdir@ @CPPFLAGS@ - -# Temporary files -MOSTLYCLEAN= - # Public doc files (to be installed)... PUB_DOCS= diff --git a/examples/Dependencies b/examples/Dependencies new file mode 100644 index 0000000..71259a3 --- /dev/null +++ b/examples/Dependencies @@ -0,0 +1,313 @@ +## This file is machine generated on GNU systems. +## Only temporary changes may be made here. + +h5_chunk_read.lo: \ + h5_chunk_read.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5_compound.lo: \ + h5_compound.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5_extend_write.lo: \ + h5_extend_write.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5_group.lo: \ + h5_group.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5_read.lo: \ + h5_read.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5_write.lo: \ + h5_write.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5_select.lo: \ + h5_select.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5_attribute.lo: \ + h5_attribute.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5_mount.lo: \ + h5_mount.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5_reference.lo: \ + h5_reference.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h diff --git a/examples/Makefile.in b/examples/Makefile.in index e77bd7a..fa5d93b 100644 --- a/examples/Makefile.in +++ b/examples/Makefile.in @@ -6,8 +6,6 @@ top_srcdir=@top_srcdir@ top_builddir=.. srcdir=@srcdir@ -VPATH=.:@srcdir@ -.PATH: . @srcdir@ @COMMENCE@ ## Add include directory to the C preprocessor flags and the hdf5 library diff --git a/pablo/Makefile.in b/pablo/Makefile.in index d5df455..8db9ba7 100644 --- a/pablo/Makefile.in +++ b/pablo/Makefile.in @@ -7,8 +7,6 @@ top_srcdir=@top_srcdir@ top_builddir=.. srcdir=@srcdir@ -VPATH=.:@srcdir@ -.PATH: . @srcdir@ @COMMENCE@ TRACE=perl ../bin/trace ############################################################################### diff --git a/src/.distdep b/src/Dependencies index c25c67a..4ac2054 100644 --- a/src/.distdep +++ b/src/Dependencies @@ -1,3 +1,6 @@ +## This file is machine generated on GNU systems. +## Only temporary changes may be made here. + H5.lo: \ H5.c \ H5private.h \ @@ -30,7 +33,11 @@ H5.lo: \ H5Oprivate.h \ H5Opublic.h \ H5HGprivate.h \ - H5HGpublic.h + H5HGpublic.h \ + H5Tprivate.h \ + H5Tpublic.h \ + H5Rprivate.h \ + H5Zprivate.h H5A.lo: \ H5A.c \ H5private.h \ @@ -64,7 +71,10 @@ H5A.lo: \ H5Eprivate.h \ H5Epublic.h \ H5MMprivate.h \ - H5Pprivate.h + H5Pprivate.h \ + H5Ppublic.h \ + H5Apkg.h \ + H5Aprivate.h H5AC.lo: \ H5AC.c \ H5private.h \ @@ -77,7 +87,9 @@ H5AC.lo: \ H5Fpublic.h \ H5Ipublic.h \ H5FDpublic.h \ - H5MMpublic.h + H5MMpublic.h \ + H5Eprivate.h \ + H5Epublic.h H5B.lo: \ H5B.c \ H5private.h \ @@ -139,7 +151,9 @@ H5D.lo: \ H5HLpublic.h \ H5MMprivate.h \ H5Pprivate.h \ - H5Ppublic.h + H5Ppublic.h \ + H5TBprivate.h \ + H5Vprivate.h H5E.lo: \ H5E.c \ H5private.h \ @@ -148,7 +162,9 @@ H5E.lo: \ H5api_adpt.h \ H5Iprivate.h \ H5Ipublic.h \ - H5Eprivate.h + H5Eprivate.h \ + H5Epublic.h \ + H5MMprivate.h H5F.lo: \ H5F.c \ H5FDcore.h \ @@ -191,7 +207,10 @@ H5F.lo: \ H5ACprivate.h \ H5ACpublic.h \ H5Eprivate.h \ - H5Epublic.h + H5Epublic.h \ + H5FDprivate.h \ + H5MMprivate.h \ + H5Pprivate.h H5Farray.lo: \ H5Farray.c \ H5private.h \ @@ -225,7 +244,8 @@ H5Farray.lo: \ H5Epublic.h \ H5Iprivate.h \ H5MFprivate.h \ - H5Pprivate.h + H5Pprivate.h \ + H5Ppublic.h H5Fistore.lo: \ H5Fistore.c \ H5private.h \ @@ -259,7 +279,10 @@ H5Fistore.lo: \ H5Epublic.h \ H5Iprivate.h \ H5MFprivate.h \ - H5MMprivate.h + H5MMprivate.h \ + H5Pprivate.h \ + H5Ppublic.h \ + H5Vprivate.h H5FD.lo: \ H5FD.c \ H5private.h \ @@ -292,7 +315,10 @@ H5FDsec2.lo: \ H5Fpublic.h \ H5FDpublic.h \ H5MMpublic.h \ - H5FDsec2.h + H5FDsec2.h \ + H5MMprivate.h \ + H5Pprivate.h \ + H5Ppublic.h H5FDfamily.lo: \ H5FDfamily.c \ H5private.h \ @@ -306,7 +332,10 @@ H5FDfamily.lo: \ H5Fpublic.h \ H5FDpublic.h \ H5MMpublic.h \ - H5FDfamily.h + H5FDfamily.h \ + H5MMprivate.h \ + H5Pprivate.h \ + H5Ppublic.h H5FDmpio.lo: \ H5FDmpio.c \ H5private.h \ @@ -320,7 +349,10 @@ H5FDmpio.lo: \ H5Fpublic.h \ H5FDpublic.h \ H5MMpublic.h \ - H5FDmpio.h + H5FDmpio.h \ + H5MMprivate.h \ + H5Pprivate.h \ + H5Ppublic.h H5FDcore.lo: \ H5FDcore.c \ H5private.h \ @@ -334,7 +366,10 @@ H5FDcore.lo: \ H5Fpublic.h \ H5FDpublic.h \ H5MMpublic.h \ - H5FDcore.h + H5FDcore.h \ + H5MMprivate.h \ + H5Pprivate.h \ + H5Ppublic.h H5FDmulti.lo: \ H5FDmulti.c \ hdf5.h \ @@ -380,7 +415,10 @@ H5FDgass.lo: \ H5Fpublic.h \ H5FDpublic.h \ H5MMpublic.h \ - H5FDgass.h + H5FDgass.h \ + H5MMprivate.h \ + H5Pprivate.h \ + H5Ppublic.h H5FDstdio.lo: \ H5FDstdio.c \ hdf5.h \ @@ -451,7 +489,9 @@ H5G.lo: \ H5ACpublic.h \ H5HLprivate.h \ H5HLpublic.h \ - H5Iprivate.h + H5Iprivate.h \ + H5MMprivate.h \ + H5RAprivate.h H5Gent.lo: \ H5Gent.c \ H5private.h \ @@ -470,7 +510,9 @@ H5Gent.lo: \ H5MMpublic.h \ H5Gprivate.h \ H5Gpublic.h \ - H5Bprivate.h + H5Bprivate.h \ + H5Bpublic.h \ + H5HLprivate.h H5Gnode.lo: \ H5Gnode.c \ H5private.h \ @@ -508,7 +550,8 @@ H5Gnode.lo: \ H5Dpublic.h \ H5Zprivate.h \ H5Zpublic.h \ - H5Pprivate.h + H5Pprivate.h \ + H5Ppublic.h H5Gstab.lo: \ H5Gstab.c \ H5private.h \ @@ -541,7 +584,9 @@ H5Gstab.lo: \ H5Rprivate.h \ H5Rpublic.h \ H5Sprivate.h \ - H5Spublic.h + H5Spublic.h \ + H5Dpublic.h \ + H5Zprivate.h H5HG.lo: \ H5HG.c \ H5private.h \ @@ -559,7 +604,10 @@ H5HG.lo: \ H5Epublic.h \ H5HGprivate.h \ H5HGpublic.h \ - H5MFprivate.h + H5MFprivate.h \ + H5MMprivate.h \ + H5Pprivate.h \ + H5Ppublic.h H5HL.lo: \ H5HL.c \ H5private.h \ @@ -591,7 +639,9 @@ H5I.lo: \ H5api_adpt.h \ H5Iprivate.h \ H5Ipublic.h \ - H5Eprivate.h + H5Eprivate.h \ + H5Epublic.h \ + H5MMprivate.h H5MF.lo: \ H5MF.c \ H5private.h \ @@ -604,8 +654,7 @@ H5MF.lo: \ H5Fprivate.h \ H5Fpublic.h \ H5FDpublic.h \ - H5MMpublic.h \ - H5FDprivate.h + H5MMpublic.h H5MM.lo: \ H5MM.c \ H5private.h \ @@ -647,7 +696,11 @@ H5O.lo: \ H5Rpublic.h \ H5Sprivate.h \ H5Spublic.h \ - H5Dpublic.h + H5Dpublic.h \ + H5Zprivate.h \ + H5Zpublic.h \ + H5Pprivate.h \ + H5Ppublic.h H5Oattr.lo: \ H5Oattr.c \ H5private.h \ @@ -676,7 +729,11 @@ H5Oattr.lo: \ H5Rpublic.h \ H5Sprivate.h \ H5Spublic.h \ - H5Dpublic.h + H5Dpublic.h \ + H5Zprivate.h \ + H5Zpublic.h \ + H5Apkg.h \ + H5Aprivate.h H5Ocomp.lo: \ H5Ocomp.c \ H5private.h \ @@ -763,7 +820,9 @@ H5Odtype.lo: \ H5Rpublic.h \ H5Sprivate.h \ H5Spublic.h \ - H5Dpublic.h + H5Dpublic.h \ + H5Zprivate.h \ + H5Zpublic.h H5Oefl.lo: \ H5Oefl.c \ H5private.h \ @@ -792,7 +851,9 @@ H5Oefl.lo: \ H5Tpublic.h \ H5Rprivate.h \ H5Rpublic.h \ - H5Sprivate.h + H5Sprivate.h \ + H5Spublic.h \ + H5Dpublic.h H5Ofill.lo: \ H5Ofill.c \ H5private.h \ @@ -821,7 +882,11 @@ H5Ofill.lo: \ H5Rprivate.h \ H5Rpublic.h \ H5Sprivate.h \ - H5Spublic.h + H5Spublic.h \ + H5Dpublic.h \ + H5Zprivate.h \ + H5Zpublic.h \ + H5Pprivate.h H5Olayout.lo: \ H5Olayout.c \ H5private.h \ @@ -850,7 +915,9 @@ H5Olayout.lo: \ H5Sprivate.h \ H5Spublic.h \ H5Zprivate.h \ - H5Zpublic.h + H5Zpublic.h \ + H5Eprivate.h \ + H5Epublic.h H5Omtime.lo: \ H5Omtime.c \ H5private.h \ @@ -932,7 +999,10 @@ H5Onull.lo: \ H5Tpublic.h \ H5Rprivate.h \ H5Rpublic.h \ - H5Sprivate.h + H5Sprivate.h \ + H5Spublic.h \ + H5Dpublic.h \ + H5Zprivate.h H5Osdspace.lo: \ H5Osdspace.c \ H5private.h \ @@ -1053,7 +1123,8 @@ H5P.lo: \ H5Eprivate.h \ H5Epublic.h \ H5FDprivate.h \ - H5MMprivate.h + H5MMprivate.h \ + H5Pprivate.h H5R.lo: \ H5R.c \ H5private.h \ @@ -1082,7 +1153,9 @@ H5R.lo: \ H5Rpublic.h \ H5Sprivate.h \ H5Spublic.h \ - H5Zprivate.h + H5Zprivate.h \ + H5Zpublic.h \ + H5Eprivate.h H5RA.lo: \ H5RA.c \ H5RAprivate.h \ @@ -1116,7 +1189,9 @@ H5RA.lo: \ H5Zpublic.h \ H5Eprivate.h \ H5Epublic.h \ - H5Iprivate.h + H5Iprivate.h \ + H5MMprivate.h \ + H5Pprivate.h H5S.lo: \ H5S.c \ H5private.h \ @@ -1145,7 +1220,9 @@ H5S.lo: \ H5Rprivate.h \ H5Rpublic.h \ H5Sprivate.h \ - H5Spublic.h + H5Spublic.h \ + H5Dpublic.h \ + H5Zprivate.h H5Sall.lo: \ H5Sall.c \ H5private.h \ @@ -1174,7 +1251,9 @@ H5Sall.lo: \ H5Tprivate.h \ H5Tpublic.h \ H5Rprivate.h \ - H5Rpublic.h + H5Rpublic.h \ + H5Zprivate.h \ + H5Zpublic.h H5Shyper.lo: \ H5Shyper.c \ H5private.h \ @@ -1208,7 +1287,8 @@ H5Shyper.lo: \ H5Epublic.h \ H5Iprivate.h \ H5MMprivate.h \ - H5Pprivate.h + H5Pprivate.h \ + H5Ppublic.h H5Smpio.lo: \ H5Smpio.c \ H5private.h \ @@ -1237,7 +1317,9 @@ H5Smpio.lo: \ H5Tprivate.h \ H5Tpublic.h \ H5Rprivate.h \ - H5Rpublic.h + H5Rpublic.h \ + H5Zprivate.h \ + H5Zpublic.h H5Snone.lo: \ H5Snone.c \ H5private.h \ @@ -1266,7 +1348,9 @@ H5Snone.lo: \ H5Tprivate.h \ H5Tpublic.h \ H5Rprivate.h \ - H5Rpublic.h + H5Rpublic.h \ + H5Zprivate.h \ + H5Zpublic.h H5Spoint.lo: \ H5Spoint.c \ H5private.h \ @@ -1295,7 +1379,11 @@ H5Spoint.lo: \ H5HGpublic.h \ H5Tprivate.h \ H5Tpublic.h \ - H5Rprivate.h + H5Rprivate.h \ + H5Rpublic.h \ + H5Zprivate.h \ + H5Zpublic.h \ + H5Vprivate.h H5Sselect.lo: \ H5Sselect.c \ H5private.h \ @@ -1324,7 +1412,11 @@ H5Sselect.lo: \ H5HGpublic.h \ H5Tprivate.h \ H5Tpublic.h \ - H5Rprivate.h + H5Rprivate.h \ + H5Rpublic.h \ + H5Zprivate.h \ + H5Zpublic.h \ + H5Vprivate.h H5T.lo: \ H5T.c \ H5private.h \ @@ -1358,7 +1450,8 @@ H5T.lo: \ H5Eprivate.h \ H5Epublic.h \ H5MMprivate.h \ - H5Pprivate.h + H5Pprivate.h \ + H5Ppublic.h H5Tbit.lo: \ H5Tbit.c \ H5private.h \ @@ -1381,8 +1474,7 @@ H5Tbit.lo: \ H5Tprivate.h \ H5Tpublic.h \ H5Gprivate.h \ - H5Gpublic.h \ - H5Bprivate.h + H5Gpublic.h H5Tconv.lo: \ H5Tconv.c \ H5Iprivate.h \ @@ -1408,7 +1500,10 @@ H5Tconv.lo: \ H5Rprivate.h \ H5Rpublic.h \ H5Tprivate.h \ - H5Tpublic.h + H5Tpublic.h \ + H5Gprivate.h \ + H5Gpublic.h \ + H5Bprivate.h H5Tinit.lo: \ H5Tinit.c \ H5private.h \ @@ -1432,7 +1527,8 @@ H5Tinit.lo: \ H5Tprivate.h \ H5Tpublic.h \ H5Gprivate.h \ - H5Gpublic.h + H5Gpublic.h \ + H5Bprivate.h H5Tvlen.lo: \ H5Tvlen.c \ H5private.h \ @@ -1456,7 +1552,8 @@ H5Tvlen.lo: \ H5Tprivate.h \ H5Tpublic.h \ H5Gprivate.h \ - H5Gpublic.h + H5Gpublic.h \ + H5Bprivate.h H5TB.lo: \ H5TB.c \ H5private.h \ @@ -1465,7 +1562,9 @@ H5TB.lo: \ H5api_adpt.h \ H5Iprivate.h \ H5Ipublic.h \ - H5Eprivate.h + H5Eprivate.h \ + H5Epublic.h \ + H5MMprivate.h H5V.lo: \ H5V.c \ H5private.h \ @@ -1537,4 +1636,6 @@ H5Zdeflate.lo: \ H5MMpublic.h \ H5Zprivate.h \ H5Zpublic.h \ - H5Fprivate.h + H5Fprivate.h \ + H5Fpublic.h \ + H5FDpublic.h @@ -1139,6 +1139,9 @@ H5_bandwidth(char *buf/*out*/, double nbytes, double nseconds) * Added the `a' type letter for haddr_t arguments and `Mt' for * H5FD_mem_t arguments. * + * Robb Matzke, 1999-10-25 + * The `Ej' and `En' types are H5E_major_t and H5E_minor_t error + * types. We only print the integer value here. *------------------------------------------------------------------------- */ void @@ -1360,6 +1363,32 @@ H5_trace (hbool_t returning, const char *func, const char *type, ...) fprintf (out, "0x%lx", (unsigned long)error); } break; + + case 'j': + if (ptr) { + if (vp) { + fprintf(out, "0x%lx", (unsigned long)vp); + } else { + fprintf(out, "NULL"); + } + } else { + H5E_major_t n = va_arg(ap, H5E_major_t); + fprintf(out, "%d", (int)n); + } + break; + + case 'n': + if (ptr) { + if (vp) { + fprintf(out, "0x%lx", (unsigned long)vp); + } else { + fprintf(out, "NULL"); + } + } else { + H5E_minor_t n = va_arg(ap, H5E_minor_t); + fprintf(out, "%d", (int)n); + } + break; default: fprintf (out, "BADTYPE(E%c)", type[1]); @@ -539,19 +539,23 @@ H5E_push(H5E_major_t maj_num, H5E_minor_t min_num, const char *function_name, * Programmer: Quincey Koziol * Monday, October 18, 1999 * - * Notes: Basically a public API wrapper around the H5E_push function. + * Notes: Basically a public API wrapper around the H5E_push function. * * Modifications: * *------------------------------------------------------------------------- */ -__DLL__ herr_t H5Epush(const char *file, const char *func, - unsigned line, H5E_major_t maj, H5E_minor_t min, const char *str) +herr_t +H5Epush(const char *file, const char *func, unsigned line, H5E_major_t maj, + H5E_minor_t min, const char *str) { + herr_t ret_value; + FUNC_ENTER(H5Epush, FAIL); - - FUNC_LEAVE(H5E_push(maj,min,func,file,line,str)); -} /* end H5Epush() */ + H5TRACE6("e","ssIuEjEns",file,func,line,maj,min,str); + ret_value = H5E_push(maj, min, func, file, line, str); + FUNC_LEAVE(ret_value); +} /*------------------------------------------------------------------------- diff --git a/src/H5FDcore.c b/src/H5FDcore.c index 6085e6f..888dabe 100644 --- a/src/H5FDcore.c +++ b/src/H5FDcore.c @@ -175,8 +175,8 @@ H5Pset_fapl_core(hid_t fapl_id, size_t increment, hbool_t backing_store) H5FD_core_fapl_t fa; FUNC_ENTER(H5FD_set_fapl_core, FAIL); + H5TRACE3("e","izb",fapl_id,increment,backing_store); - /* NO TRACE */ if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) HRETURN_ERROR(H5E_PLIST, H5E_BADTYPE, FAIL, "not a fapl"); fa.increment = increment; @@ -212,8 +212,8 @@ H5Pget_fapl_core(hid_t fapl_id, size_t *increment/*out*/, H5FD_core_fapl_t *fa; FUNC_ENTER(H5Pget_fapl_core, FAIL); + H5TRACE3("e","ixx",fapl_id,increment,backing_store); - /* NO TRACE */ if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) HRETURN_ERROR(H5E_PLIST, H5E_BADTYPE, FAIL, "not a fapl"); if (H5FD_CORE!=H5Pget_driver(fapl_id)) @@ -253,7 +253,8 @@ H5FD_core_fapl_get(H5FD_t *_file) FUNC_ENTER(H5FD_core_fapl_get, NULL); if (NULL==(fa=H5MM_calloc(sizeof(H5FD_core_fapl_t)))) - HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed"); + HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, + "memory allocation failed"); fa->increment = file->increment; fa->backing_store = (file->fd>=0); @@ -301,12 +302,14 @@ H5FD_core_open(const char *name, unsigned UNUSED flags, hid_t fapl_id, /* Open backing store */ if (fa && fa->backing_store && name && (fd=open(name, O_CREAT|O_TRUNC|O_RDWR, 0666))<0) { - HRETURN_ERROR(H5E_FILE, H5E_CANTOPENFILE, NULL, "can't open backing store"); + HRETURN_ERROR(H5E_FILE, H5E_CANTOPENFILE, NULL, + "unable to open backing store"); } /* Create the new file struct */ if (NULL==(file=H5MM_calloc(sizeof(H5FD_core_t)))) - HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "can't allocate file struct"); + HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, + "unable to allocate file struct"); file->fd = fd; if (name && *name) { file->name = HDstrdup(name); @@ -354,13 +357,15 @@ H5FD_core_flush(H5FD_t *_file) unsigned char *ptr = file->mem; if (0!=lseek(file->fd, 0, SEEK_SET)) - HRETURN_ERROR(H5E_IO, H5E_SEEKERROR, FAIL, "error seeking in backing store"); + HRETURN_ERROR(H5E_IO, H5E_SEEKERROR, FAIL, + "error seeking in backing store"); while (size) { ssize_t n = write(file->fd, ptr, size); if (n<0 && EINTR==errno) continue; if (n<0) - HRETURN_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, "error writing backing store"); + HRETURN_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, + "error writing backing store"); ptr += (size_t)n; size -= (size_t)n; } @@ -398,7 +403,7 @@ H5FD_core_close(H5FD_t *_file) /* Flush */ if (H5FD_core_flush(_file)<0) - HRETURN_ERROR(H5E_FILE, H5E_CANTFLUSH, FAIL, "can't flush file"); + HRETURN_ERROR(H5E_FILE, H5E_CANTFLUSH, FAIL, "unable to flush file"); /* Release resources */ if (file->fd>=0) close(file->fd); @@ -434,23 +439,21 @@ H5FD_core_cmp(const H5FD_t *_f1, const H5FD_t *_f2) { const H5FD_core_t *f1 = (const H5FD_core_t*)_f1; const H5FD_core_t *f2 = (const H5FD_core_t*)_f2; + int ret_value; FUNC_ENTER(H5FD_core_cmp, FAIL); if (NULL==f1->name && NULL==f2->name) { - if (f1<f2) - HRETURN(-1); - if (f1>f2) - HRETURN(1); + if (f1<f2) HRETURN(-1); + if (f1>f2) HRETURN(1); HRETURN(0); } - if (NULL==f1->name) - HRETURN(-1); - if (NULL==f2->name) - HRETURN(1); + if (NULL==f1->name) HRETURN(-1); + if (NULL==f2->name) HRETURN(1); - FUNC_LEAVE(HDstrcmp(f1->name, f2->name)); + ret_value = HDstrcmp(f1->name, f2->name); + FUNC_LEAVE(ret_value); } @@ -652,7 +655,8 @@ H5FD_core_write(H5FD_t *_file, hid_t UNUSED dxpl_id, haddr_t addr, if (NULL==file->mem) x = H5MM_malloc(new_eof); else x = H5MM_realloc(file->mem, new_eof); if (!x) - HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "can't allocate memory block"); + HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, FAIL, + "unable to allocate memory block"); file->mem = x; file->eof = new_eof; } diff --git a/src/H5FDfamily.c b/src/H5FDfamily.c index f9d0c51..a6a5548 100644 --- a/src/H5FDfamily.c +++ b/src/H5FDfamily.c @@ -169,8 +169,8 @@ H5Pset_fapl_family(hid_t fapl_id, hsize_t memb_size, hid_t memb_fapl_id) herr_t ret_value=FAIL; H5FD_family_fapl_t fa; - /*NO TRACE*/ FUNC_ENTER(H5FD_set_fapl_family, FAIL); + H5TRACE3("e","ihi",fapl_id,memb_size,memb_fapl_id); /* Check arguments */ if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) @@ -215,8 +215,8 @@ H5Pget_fapl_family(hid_t fapl_id, hsize_t *memb_size/*out*/, { H5FD_family_fapl_t *fa; - /*NO TRACE*/ FUNC_ENTER(H5Pget_fapl_family, FAIL); + H5TRACE3("e","ixx",fapl_id,memb_size,memb_fapl_id); if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) HRETURN_ERROR(H5E_PLIST, H5E_BADTYPE, FAIL, "not a fapl"); @@ -257,7 +257,8 @@ H5FD_family_fapl_get(H5FD_t *_file) FUNC_ENTER(H5FD_family_fapl_get, NULL); if (NULL==(fa=H5MM_calloc(sizeof(H5FD_family_fapl_t)))) - HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed"); + HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, + "memory allocation failed"); fa->memb_size = file->memb_size; fa->memb_fapl_id = H5Pcopy(file->memb_fapl_id); @@ -291,7 +292,8 @@ H5FD_family_fapl_copy(const void *_old_fa) FUNC_ENTER(H5FD_family_fapl_copy, NULL); if (NULL==(new_fa=H5MM_malloc(sizeof(H5FD_family_fapl_t)))) - HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed"); + HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, + "memory allocation failed"); memcpy(new_fa, old_fa, sizeof(H5FD_family_fapl_t)); new_fa->memb_fapl_id = H5Pcopy(old_fa->memb_fapl_id); @@ -355,7 +357,8 @@ H5FD_family_dxpl_copy(const void *_old_dx) FUNC_ENTER(H5FD_family_dxpl_copy, NULL); if (NULL==(new_dx=H5MM_malloc(sizeof(H5FD_family_dxpl_t)))) - HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed"); + HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, + "memory allocation failed"); memcpy(new_dx, old_dx, sizeof(H5FD_family_dxpl_t)); new_dx->memb_dxpl_id = H5Pcopy(old_dx->memb_dxpl_id); @@ -432,7 +435,8 @@ H5FD_family_open(const char *name, unsigned flags, hid_t fapl_id, /* Initialize file from file access properties */ if (NULL==(file=H5MM_calloc(sizeof(H5FD_family_t)))) - HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "can't allocate file struct"); + HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, + "unable to allocate file struct"); if (H5P_DEFAULT==fapl_id) { file->memb_fapl_id = H5P_DEFAULT; file->memb_size = 1024*1024*1024; /*1GB*/ @@ -460,7 +464,8 @@ H5FD_family_open(const char *name, unsigned flags, hid_t fapl_id, int n = MAX(64, 2*file->amembs); H5FD_t **x = H5MM_realloc(file->memb, n*sizeof(H5FD_t*)); if (!x) - HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "can't reallocate members"); + HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, + "unable to reallocate members"); file->amembs = n; file->memb = x; } @@ -478,7 +483,8 @@ H5FD_family_open(const char *name, unsigned flags, hid_t fapl_id, } H5E_END_TRY; if (!file->memb[file->nmembs]) { if (0==file->nmembs) - HGOTO_ERROR(H5E_FILE, H5E_CANTOPENFILE, NULL, "can't open member file"); + HGOTO_ERROR(H5E_FILE, H5E_CANTOPENFILE, NULL, + "unable to open member file"); H5Eclear(); break; } @@ -550,7 +556,8 @@ H5FD_family_close(H5FD_t *_file) } } if (nerrors) - HRETURN_ERROR(H5E_FILE, H5E_CANTCLOSEFILE, FAIL, "can't close member files"); + HRETURN_ERROR(H5E_FILE, H5E_CANTCLOSEFILE, FAIL, + "unable to close member files"); /* Clean up other stuff */ H5Pclose(file->memb_fapl_id); @@ -662,7 +669,8 @@ H5FD_family_set_eoa(H5FD_t *_file, haddr_t eoa) int n = MAX(64, 2*file->amembs); H5FD_t **x = H5MM_realloc(file->memb, n*sizeof(H5FD_t*)); if (!x) - HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, FAIL, "can't allocate memory block"); + HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, FAIL, + "unable to allocate memory block"); file->amembs = n; file->memb = x; file->nmembs = i; @@ -677,7 +685,8 @@ H5FD_family_set_eoa(H5FD_t *_file, haddr_t eoa) file->memb_fapl_id, file->memb_size); } H5E_END_TRY; if (NULL==file->memb[i]) - HRETURN_ERROR(H5E_FILE, H5E_CANTOPENFILE, FAIL, "can't open member file"); + HRETURN_ERROR(H5E_FILE, H5E_CANTOPENFILE, FAIL, + "unable to open member file"); } /* Set the EOA marker for the member */ @@ -797,7 +806,8 @@ H5FD_family_read(H5FD_t *_file, hid_t dxpl_id, haddr_t addr, hsize_t size, assert(i<file->nmembs); if (H5FDread(file->memb[i], memb_dxpl_id, sub, req, buf)<0) - HRETURN_ERROR(H5E_IO, H5E_READERROR, FAIL, "member file read failed"); + HRETURN_ERROR(H5E_IO, H5E_READERROR, FAIL, + "member file read failed"); addr += req; buf += req; @@ -859,7 +869,8 @@ H5FD_family_write(H5FD_t *_file, hid_t dxpl_id, haddr_t addr, hsize_t size, assert(i<file->nmembs); if (H5FDwrite(file->memb[i], memb_dxpl_id, sub, req, buf)<0) - HRETURN_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, "member file write failed"); + HRETURN_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, + "member file write failed"); addr += req; buf += req; @@ -899,7 +910,8 @@ H5FD_family_flush(H5FD_t *_file) nerrors++; if (nerrors) - HRETURN_ERROR(H5E_IO, H5E_BADVALUE, FAIL, "can't flush member files"); + HRETURN_ERROR(H5E_IO, H5E_BADVALUE, FAIL, + "unable to flush member files"); FUNC_LEAVE(SUCCEED); } diff --git a/src/H5FDgass.c b/src/H5FDgass.c index 96b7a1b..ec545f1 100644 --- a/src/H5FDgass.c +++ b/src/H5FDgass.c @@ -210,7 +210,6 @@ H5Pset_fapl_gass(hid_t fapl_id, GASS_Info info) herr_t ret_value=FAIL; H5FD_gass_fapl_t fa; - /*NO TRACE*/ FUNC_ENTER(H5FD_set_fapl_gass, FAIL); /* Check arguments */ @@ -256,8 +255,8 @@ H5Pget_fapl_gass(hid_t fapl_id, GASS_Info *info/*out*/) { H5FD_gass_fapl_t *fa; - /*NO TRACE*/ FUNC_ENTER(H5Pget_fapl_gass, FAIL); + H5TRACE2("e","ix",fapl_id,info); if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) HRETURN_ERROR(H5E_PLIST, H5E_BADTYPE, FAIL, "not a fapl"); diff --git a/src/H5FDmpio.c b/src/H5FDmpio.c index e495573..03db98e 100644 --- a/src/H5FDmpio.c +++ b/src/H5FDmpio.c @@ -235,8 +235,8 @@ H5Pset_fapl_mpio(hid_t fapl_id, MPI_Comm comm, MPI_Info info) herr_t ret_value=FAIL; H5FD_mpio_fapl_t fa; - /*NO TRACE*/ FUNC_ENTER(H5FD_set_fapl_mpio, FAIL); + H5TRACE3("e","iMcMi",fapl_id,comm,info); /* Check arguments */ if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) @@ -288,8 +288,8 @@ H5Pget_fapl_mpio(hid_t fapl_id, MPI_Comm *comm/*out*/, MPI_Info *info/*out*/) { H5FD_mpio_fapl_t *fa; - /*NO TRACE*/ FUNC_ENTER(H5Pget_fapl_mpio, FAIL); + H5TRACE3("e","ixx",fapl_id,comm,info); if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) HRETURN_ERROR(H5E_PLIST, H5E_BADTYPE, FAIL, "not a fapl"); @@ -337,8 +337,8 @@ H5Pset_dxpl_mpio(hid_t dxpl_id, H5FD_mpio_xfer_t xfer_mode) herr_t ret_value=FAIL; H5FD_mpio_dxpl_t dx; - /*NO TRACE*/ FUNC_ENTER(H5Pset_dxpl_mpio, FAIL); + H5TRACE2("e","iDt",dxpl_id,xfer_mode); /* Check arguments */ if (H5P_DATA_XFER!=H5Pget_class(dxpl_id)) @@ -381,8 +381,8 @@ H5Pget_dxpl_mpio(hid_t dxpl_id, H5FD_mpio_xfer_t *xfer_mode/*out*/) { H5FD_mpio_dxpl_t *dx; - /*NO TRACE*/ FUNC_ENTER(H5Pget_dxpl_mpio, FAIL); + H5TRACE2("e","ix",dxpl_id,xfer_mode); if (H5P_DATA_XFER!=H5Pget_class(dxpl_id)) HRETURN_ERROR(H5E_PLIST, H5E_BADTYPE, FAIL, "not a dxpl"); diff --git a/src/H5FDsec2.c b/src/H5FDsec2.c index f91e594..db92793 100644 --- a/src/H5FDsec2.c +++ b/src/H5FDsec2.c @@ -213,8 +213,8 @@ H5Pset_fapl_sec2(hid_t fapl_id) { herr_t ret_value=FAIL; - /*NO TRACE*/ FUNC_ENTER(H5FD_set_fapl_sec2, FAIL); + H5TRACE1("e","i",fapl_id); if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) HRETURN_ERROR(H5E_PLIST, H5E_BADTYPE, FAIL, "not a fapl"); @@ -275,24 +275,25 @@ H5FD_sec2_open(const char *name, unsigned flags, hid_t UNUSED fapl_id, /* Open the file */ if ((fd=HDopen(name, o_flags, 0666))<0) - HRETURN_ERROR(H5E_FILE, H5E_CANTOPENFILE, NULL, "can't open file"); + HRETURN_ERROR(H5E_FILE, H5E_CANTOPENFILE, NULL, "unable to open file"); if (fstat(fd, &sb)<0) { close(fd); - HRETURN_ERROR(H5E_FILE, H5E_BADFILE, NULL, "can't fstat file"); + HRETURN_ERROR(H5E_FILE, H5E_BADFILE, NULL, "unable to fstat file"); } /* Create the new file struct */ if (NULL==(file=H5MM_calloc(sizeof(H5FD_sec2_t)))) - HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "can't allocate file struct"); + HRETURN_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, + "unable to allocate file struct"); file->fd = fd; file->eof = sb.st_size; file->pos = HADDR_UNDEF; file->op = OP_UNKNOWN; #ifdef WIN32 - filehandle = _get_osfhandle(fd); - results = GetFileInformationByHandle(filehandle, &fileinfo); - file->fileindexhi = fileinfo.nFileIndexHigh; - file->fileindexlo = fileinfo.nFileIndexLow; + filehandle = _get_osfhandle(fd); + results = GetFileInformationByHandle(filehandle, &fileinfo); + file->fileindexhi = fileinfo.nFileIndexHigh; + file->fileindexlo = fileinfo.nFileIndexLow; #else file->device = sb.st_dev; file->inode = sb.st_ino; @@ -325,9 +326,9 @@ H5FD_sec2_close(H5FD_t *_file) FUNC_ENTER(H5FD_sec2_close, FAIL); if (H5FD_sec2_flush(_file)<0) - HRETURN_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, "can't flush file"); + HRETURN_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, "unable to flush file"); if (close(file->fd)<0) - HRETURN_ERROR(H5E_IO, H5E_CANTCLOSEFILE, FAIL, "can't close file"); + HRETURN_ERROR(H5E_IO, H5E_CANTCLOSEFILE, FAIL, "unable to close file"); H5MM_xfree(file); @@ -516,7 +517,8 @@ H5FD_sec2_read(H5FD_t *_file, hid_t UNUSED dxpl_id, haddr_t addr, file_seek(file->fd, (file_offset_t)addr, SEEK_SET)<0) { file->pos = HADDR_UNDEF; file->op = OP_UNKNOWN; - HRETURN_ERROR(H5E_IO, H5E_SEEKERROR, FAIL, "can't seek to proper position"); + HRETURN_ERROR(H5E_IO, H5E_SEEKERROR, FAIL, + "unable to seek to proper position"); } /* @@ -595,7 +597,8 @@ H5FD_sec2_write(H5FD_t *_file, hid_t UNUSED dxpl_id, haddr_t addr, file_seek(file->fd, (file_offset_t)addr, SEEK_SET)<0) { file->pos = HADDR_UNDEF; file->op = OP_UNKNOWN; - HRETURN_ERROR(H5E_IO, H5E_SEEKERROR, FAIL, "can't seek to proper position"); + HRETURN_ERROR(H5E_IO, H5E_SEEKERROR, FAIL, + "unable to seek to proper position"); } /* @@ -655,7 +658,8 @@ H5FD_sec2_flush(H5FD_t *_file) if (file->eoa>file->eof) { if (-1==file_seek(file->fd, file->eoa-1, SEEK_SET)) - HRETURN_ERROR(H5E_IO, H5E_SEEKERROR, FAIL, "can't seek to proper position"); + HRETURN_ERROR(H5E_IO, H5E_SEEKERROR, FAIL, + "unable to seek to proper position"); if (write(file->fd, "", 1)!=1) HRETURN_ERROR(H5E_IO, H5E_WRITEERROR, FAIL, "file write failed"); file->eof = file->eoa; diff --git a/src/H5FDstdio.c b/src/H5FDstdio.c index 4c3ca45..fd9efa0 100644 --- a/src/H5FDstdio.c +++ b/src/H5FDstdio.c @@ -10,7 +10,7 @@ * Notes: Ported to the new H5FD architecture on 10/18/99 - QAK * */ -#include "hdf5.h" +#include <hdf5.h> #include <assert.h> #include <stdlib.h> #include <sys/stat.h> @@ -198,15 +198,19 @@ H5FD_stdio_init(void) herr_t H5Pset_fapl_stdio(hid_t fapl_id) { - static const char *func="H5FDset_fapl_stdio"; /* Function Name for error reporting */ + static const char *func="H5FDset_fapl_stdio"; /*for error reporting*/ + + /*NO TRACE*/ /* Clear the error stack */ H5Eclear(); - if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) - H5Epush_ret(func, H5E_PLIST, H5E_BADTYPE, "not a file access property list", -1); - - return(H5Pset_driver(fapl_id, H5FD_STDIO, NULL)); + if (H5P_FILE_ACCESS!=H5Pget_class(fapl_id)) { + H5Epush_ret(func, H5E_PLIST, H5E_BADTYPE, + "not a file access property list", -1); + } + + return H5Pset_driver(fapl_id, H5FD_STDIO, NULL); } diff --git a/src/Makefile.in b/src/Makefile.in index 0e179b5..82ef99d 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -7,8 +7,6 @@ top_srcdir=@top_srcdir@ top_builddir=.. srcdir=@srcdir@ -VPATH=.:@srcdir@ -.PATH: . @srcdir@ @COMMENCE@ TRACE=perl $(top_srcdir)/bin/trace @@ -24,11 +22,11 @@ CLEAN=libhdf5.settings LIB_SRC=H5.c H5A.c H5AC.c H5B.c H5D.c H5E.c H5F.c H5Farray.c H5Fistore.c \ H5FD.c H5FDsec2.c H5FDfamily.c H5FDmpio.c H5FDcore.c H5FDmulti.c \ H5FDgass.c H5FDstdio.c H5G.c H5Gent.c H5Gnode.c H5Gstab.c H5HG.c H5HL.c \ - H5I.c H5MF.c H5MM.c H5O.c H5Oattr.c H5Ocomp.c H5Ocont.c H5Odtype.c H5Oefl.c \ - H5Ofill.c H5Olayout.c H5Omtime.c H5Oname.c H5Onull.c H5Osdspace.c \ - H5Oshared.c H5Ostab.c H5P.c H5R.c H5RA.c H5S.c H5Sall.c H5Shyper.c \ - H5Smpio.c H5Snone.c H5Spoint.c H5Sselect.c H5T.c H5Tbit.c H5Tconv.c \ - H5Tinit.c H5Tvlen.c H5TB.c H5V.c H5Z.c H5Zdeflate.c + H5I.c H5MF.c H5MM.c H5O.c H5Oattr.c H5Ocomp.c H5Ocont.c H5Odtype.c \ + H5Oefl.c H5Ofill.c H5Olayout.c H5Omtime.c H5Oname.c H5Onull.c \ + H5Osdspace.c H5Oshared.c H5Ostab.c H5P.c H5R.c H5RA.c H5S.c H5Sall.c \ + H5Shyper.c H5Smpio.c H5Snone.c H5Spoint.c H5Sselect.c H5T.c H5Tbit.c \ + H5Tconv.c H5Tinit.c H5Tvlen.c H5TB.c H5V.c H5Z.c H5Zdeflate.c LIB_OBJ=$(LIB_SRC:.c=.lo) diff --git a/test/.distdep b/test/Dependencies index 6e233c4..24c0596 100644 --- a/test/.distdep +++ b/test/Dependencies @@ -1,3 +1,6 @@ +## This file is machine generated on GNU systems. +## Only temporary changes may be made here. + h5test.lo: \ h5test.c \ h5test.h \ @@ -500,7 +503,8 @@ gheap.lo: \ H5Tprivate.h \ H5Gprivate.h \ H5Bprivate.h \ - H5Eprivate.h + H5Eprivate.h \ + H5Iprivate.h hyperslab.lo: \ hyperslab.c \ H5private.h \ @@ -586,8 +590,7 @@ istore.lo: \ H5Sprivate.h \ H5Zprivate.h \ H5Iprivate.h \ - H5Pprivate.h \ - H5MMprivate.h + H5Pprivate.h lheap.lo: \ lheap.c \ h5test.h \ @@ -628,8 +631,7 @@ lheap.lo: \ H5Rprivate.h \ H5Tprivate.h \ H5Gprivate.h \ - H5Bprivate.h \ - H5HLprivate.h + H5Bprivate.h links.lo: \ links.c \ h5test.h \ @@ -897,8 +899,7 @@ stab.lo: \ H5Rprivate.h \ H5Tprivate.h \ H5Gprivate.h \ - H5Bprivate.h \ - H5Gpkg.h + H5Bprivate.h tattr.lo: \ tattr.c \ testhdf5.h \ @@ -931,7 +932,8 @@ tattr.lo: \ H5FDfamily.h \ H5FDmpio.h \ H5FDsec2.h \ - H5FDstdio.h + H5FDstdio.h \ + H5FDgass.h testhdf5.lo: \ testhdf5.c \ testhdf5.h \ @@ -939,8 +941,7 @@ testhdf5.lo: \ H5public.h \ H5config.h \ H5api_adpt.h \ - H5Eprivate.h \ - H5Epublic.h + H5Eprivate.h tfile.lo: \ tfile.c \ testhdf5.h \ @@ -988,7 +989,9 @@ th5s.lo: \ H5Tpublic.h \ H5Rprivate.h \ H5Rpublic.h \ - H5Zprivate.h + H5Zprivate.h \ + H5Zpublic.h \ + H5Pprivate.h tmeta.lo: \ tmeta.c \ testhdf5.h \ @@ -1033,7 +1036,8 @@ trefer.lo: \ H5FDfamily.h \ H5FDmpio.h \ H5FDsec2.h \ - H5FDstdio.h + H5FDstdio.h \ + H5FDgass.h tselect.lo: \ tselect.c \ testhdf5.h \ @@ -1066,7 +1070,8 @@ tselect.lo: \ H5FDfamily.h \ H5FDmpio.h \ H5FDsec2.h \ - H5FDstdio.h + H5FDstdio.h \ + H5FDgass.h tvltypes.lo: \ tvltypes.c \ testhdf5.h \ @@ -1099,7 +1104,8 @@ tvltypes.lo: \ H5FDfamily.h \ H5FDmpio.h \ H5FDsec2.h \ - H5FDstdio.h + H5FDstdio.h \ + H5FDgass.h tvlstr.lo: \ tvlstr.c \ testhdf5.h \ @@ -1132,7 +1138,8 @@ tvlstr.lo: \ H5FDfamily.h \ H5FDmpio.h \ H5FDsec2.h \ - H5FDstdio.h + H5FDstdio.h \ + H5FDgass.h unlink.lo: \ unlink.c \ h5test.h \ @@ -1288,7 +1295,9 @@ gass_read.lo: \ H5HGprivate.h \ H5Fprivate.h \ H5Rprivate.h \ - H5Tprivate.h + H5Tprivate.h \ + H5Gprivate.h \ + H5Bprivate.h gass_append.lo: \ gass_append.c \ h5test.h \ diff --git a/test/Makefile.in b/test/Makefile.in index 04c374b..5d711bc 100644 --- a/test/Makefile.in +++ b/test/Makefile.in @@ -7,8 +7,6 @@ top_srcdir=@top_srcdir@ top_builddir=.. srcdir=@srcdir@ -VPATH=.:@srcdir@ -.PATH: . @srcdir@ @COMMENCE@ ## Add include directory to the C preprocessor flags and the h5test and hdf5 @@ -167,4 +165,3 @@ gass_append: gass_append.lo @$(LT_LINK_EXE) $(CFLAGS) -o $@ gass_append.lo $(LIB) $(LIBHDF5) $(LDFLAGS) $(LIBS) @CONCLUDE@ - diff --git a/testpar/Dependencies b/testpar/Dependencies new file mode 100644 index 0000000..6dbba15 --- /dev/null +++ b/testpar/Dependencies @@ -0,0 +1,8 @@ +testphdf5.lo: \ + H5config.h +t_dset.lo: \ + H5config.h +t_file.lo: \ + H5config.h +t_mpi.lo: \ + H5config.h diff --git a/testpar/Makefile.in b/testpar/Makefile.in index fdb47a6..936f821 100644 --- a/testpar/Makefile.in +++ b/testpar/Makefile.in @@ -7,8 +7,6 @@ top_srcdir=@top_srcdir@ top_builddir=.. srcdir=@srcdir@ -VPATH=.:@srcdir@ -.PATH: . @srcdir@ @COMMENCE@ ## Add the include directory to the C preprocessor flags the the hdf5 library diff --git a/tools/Dependencies b/tools/Dependencies new file mode 100644 index 0000000..4195c30 --- /dev/null +++ b/tools/Dependencies @@ -0,0 +1,365 @@ +## This file is machine generated on GNU systems. +## Only temporary changes may be made here. + +h5tools.lo: \ + h5tools.c \ + h5tools.h \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h \ + H5FDmulti.h \ + H5private.h +h5findshd.lo: \ + h5findshd.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h \ + H5FDmulti.h \ + H5private.h +h5debug.lo: \ + h5debug.c \ + H5private.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Iprivate.h \ + H5Ipublic.h \ + H5Bprivate.h \ + H5Bpublic.h \ + H5Fprivate.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5MMpublic.h \ + H5Pprivate.h \ + H5Ppublic.h \ + H5Dpublic.h \ + H5Zpublic.h \ + H5Gprivate.h \ + H5Gpublic.h \ + H5HGprivate.h \ + H5HGpublic.h \ + H5HLprivate.h \ + H5HLpublic.h \ + H5Oprivate.h \ + H5Opublic.h \ + H5Tprivate.h \ + H5Tpublic.h \ + H5Rprivate.h \ + H5Rpublic.h \ + H5Sprivate.h \ + H5Spublic.h \ + H5Zprivate.h +h5import.lo: \ + h5import.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h \ + H5FDmulti.h +h5ls.lo: \ + h5ls.c \ + H5private.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + h5tools.h \ + hdf5.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h +h5repart.lo: \ + h5repart.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h \ + H5FDmulti.h +h5dump.lo: \ + h5dump.c \ + h5dump.h \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h \ + H5FDmulti.h \ + H5private.h +h5dumputil.lo: \ + h5dumputil.c \ + h5dump.h \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h \ + H5FDmulti.h +h5toh4.lo: \ + h5toh4.c \ + h5toh4.h \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h \ + H5FDmulti.h +h5dumptst.lo: \ + h5dumptst.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h \ + H5FDmulti.h \ + H5private.h +pdb2hdf.lo: \ + pdb2hdf.c \ + hdf5.h \ + H5public.h \ + H5config.h \ + H5api_adpt.h \ + H5Ipublic.h \ + H5Apublic.h \ + H5ACpublic.h \ + H5Bpublic.h \ + H5Dpublic.h \ + H5Epublic.h \ + H5Fpublic.h \ + H5FDpublic.h \ + H5Gpublic.h \ + H5HGpublic.h \ + H5HLpublic.h \ + H5MMpublic.h \ + H5Opublic.h \ + H5Ppublic.h \ + H5Zpublic.h \ + H5Rpublic.h \ + H5RApublic.h \ + H5Spublic.h \ + H5Tpublic.h \ + H5FDcore.h \ + H5FDfamily.h \ + H5FDmpio.h \ + H5FDsec2.h \ + H5FDstdio.h \ + H5FDgass.h \ + H5FDmulti.h diff --git a/tools/Makefile.in b/tools/Makefile.in index 0740ece..6f1b6b1 100644 --- a/tools/Makefile.in +++ b/tools/Makefile.in @@ -7,8 +7,6 @@ top_srcdir=@top_srcdir@ top_builddir=.. srcdir=@srcdir@ -VPATH=.:@srcdir@ -.PATH: . @srcdir@ @COMMENCE@ ## Add include directory to the C preprocessor flags, add -lh5tools and diff --git a/tools/pdb2hdf.c b/tools/pdb2hdf.c index 1612392..a28f5b7 100644 --- a/tools/pdb2hdf.c +++ b/tools/pdb2hdf.c @@ -220,7 +220,6 @@ fix_type(PDBfile *pdb, const char *s) mpos = nbits - (d->format[5]+msize); H5Tset_fields(type, spos, epos, esize, mpos, msize); H5Tset_ebias(type, d->format[7]); - } return type; } @@ -347,6 +346,7 @@ traverse(PDBfile *pdb, const char *pdb_file_name, hid_t hdf) fprintf(stderr, "cannot traverse out of PDB %s\n", list[i]); goto error; } + H5Gclose(group); } else { /* This is some non-directory PDB object */ @@ -382,6 +382,11 @@ traverse(PDBfile *pdb, const char *pdb_file_name, hid_t hdf) } } + + for (i=0; i<nitems; i++) { + SC_free(list[i]); + } + SC_free(list); return 0; error: @@ -479,7 +484,7 @@ main(int argc, char *argv[]) exit(1); } H5Pclose(fapl); - + /* * Traverse the PDB file to create the HDF5 file. */ |