Updated the copyright notice--mostly by rearranging
some text to make them consistent.
Solution:
Platforms tested:
"h5committested"--sol is down, so, no SUn test.
Misc. update:
Bug Fix
Description:
The SUBDIRS macro is now defined as "" in the config/commence.in
file. We shouldn't have definitions of this macro before the
inclusion of config/commence.in.
Solution:
Placed all definitions of SUBDIRS after config/commence.in inclusion.
Platforms tested:
Modi4 (Small fix yet again).
Misc. update:
Bug fix
Description:
h5cc was removed prematurely in "make clean". Moved it to be
removed in "make distclean" only.
Solution:
Platforms tested:
COpper.
Misc. update:
Purpose:
Bug Fix
Description:
The flags for the linker on MacOS X were invalid.
Solution:
If this is a darwin platform (MacOS X), then don't specify the
runtime linker flags.
Platforms tested:
MacOSX (since it only affects it...)
Misc. update:
Bug Fix
Description:
The order the libraries are included in the compilation line is very
important.
Solution:
Need to specify the libraries in the order that they are given. If
we're building the application staticly, then use the static HDF5
library.
Platforms tested:
Modi4
Verbena
Arabica
Misc. update:
bug fix
Description:
Not all echo commands honors the '-n' option. In those cases,
the output look weired though recognizable.
Solution:
Eliminated the use of -n option. A better fix would be having
configure to set the proper use of the echo command.
Platforms tested:
only on sasn100 (a sun frontend of Janus).
No committest since this is just a simple shell script change.
Bug Fix
Description:
Two things:
- static libraries may depend upon the HDF5 library. We should
put them before the HDF5 library on the commandline instead of
afterwards to avoid conflict.
- the CFLAGS weren't being used during linking. This was causing
problems on Arabica where the flags are important to
distinguish between building a 32-bit and 64-bit application.
Solution:
- Added logic so that it catches the static libraries and puts them
before the hdf5 library on the command line. WARNING: This may not
work in all situations...but it should be okay for the good
majority.
- added the CFLAGS macro to the commandline...
Platforms tested:
LInux (Colonelk)
Arabica
Modi4 (Parallel)
(Small changes so doesn't need full h5committesting...)
Misc. update:
Bug Fix
Description:
Lots of things. Mostly, multiple libraries declared on the command
line bothered some compilers. Then the order of the libraries is
important. Then if you are building static, you don't want an
"-lhdf5" flag in your compile line.
Solution:
Various hacks to remove redundant libraries from the compile line and
to keep the order of them and to replace -lhdf5 with the .a file when
building static.
Platforms tested:
Modi4 (Fortran & Parallel)
Verbena (Fortran & C++)
Arabica (Fortran)
Misc. update:
Fix
Description:
The way I was checking for -lfoo flags wasn't rigorous enough.
Solution:
Use a "grep" instead of the "case" statement. Also check that the
full "-lfoo" flag is matched instead of just part of it.
Platforms tested:
Linux (small fix)
Misc. update:
Bug Fix
Description:
Some compilers aren't happy if you specify the same library multiple
times when linking. This caused HDF5 Lite to crash during tests on
Kelgia
Solution:
Modified the script so that the shared libraries are specified only
once for the commandline.
Platforms tested:
Kelgia (small fix).
Misc. update:
Bug Fix
Description:
When doing a "configure" using the h5cc script as the compiler, it
would fail to accept the "-E" flag as running the preprocessor. The
problem was that it was trying to link the file afterwards. Of
course, the file wouldn't be there, so it would fail.
Solution:
Changed it so that if the -E flag is used, then we don't try to link
(this is how it's done in mpicc...I must have copied it wrongly).
Platforms tested:
Linux & Kelgia (small change not needing full testing)
Misc. update:
update
Description:
Added h5fc to the h5tools list.
Added feature that it will udpate tools that are present.
(Would still abort if no tools found at all.)
Platforms tested:
Did not h5committest since it does not test this tool at all.
Did various test in eirene by hand.
Misc. update:
Purpose: Maintenance
Description: There was an old h5import (h5import.c) tool in the misc directory.
The tool created 8-bit integer datasets , it was never tested and/or
supported.
Solution: We decided to rename old h5import.c to h5createU8.c. The new name reflects what
actually old tool does. New executable h5createU8 is built in the misc directory.
h5import.c file (old one) is still in the misc directory, but h5import executable
is not built. (Sorry if I confused you!)
Platforms tested: vebena, arabica, modi4 were tested
Misc. update:
Bug fix/code cleanup/new feature
Description:
Fix h5debug to work correctly again, with all the changes over the past
few months.
Improved and cleaned up debugging output available in h5debug.
Platforms tested:
FreeBSD 4.7 (sleipnir)
new feature
Description:
Added a force mode (-force) which turns off prompting, just do it.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}? no
[If no, why not?] It is just a shell script. Tested it in eirene.
Misc. update:
Will check in the updated RELEASE and document files.
Code cleanup
Description:
Clean up miscellaneous warnings which have crept into the code.
Fix "_POSIX_C_SOURCE not defined" warning on FreeBSD.
Adjust gcc compiler flags to be more concise for production mode.
Refactor the H5O code so that there is a stronger boundary between code
in the H5O package and code in the library which just calls H5O routines.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir) serial & parallel and gcc 2.95.4 & gcc 3.2.2
Misc. update:
Update MANIFEST if you add or remove any file.
Bug Fix
Description:
Metadata cache in parallel I/O can cause hangs in applications which
perform independent I/O on chunked datasets, because the metadata cache
can attempt to flush out dirty metadata from only a single process, instead
of collectively from all processes.
Solution:
Pass a dataset transfer property list down from every API function which
could possibly trigger metadata I/O.
Then, split the metadata cache into two sets of entries to allow dirty
metadata to be set aside when a hash table collision occurs during
independent I/O.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir) serial & parallel
Misc. update:
Updated release_docs/RELEASE
Code cleanup & bug fix
Description:
Cleanup another set of warnings on Windows and also fix mis-placed assertion
that caused the daily tests to fail.
Platforms tested:
IRIX64 6.5 (modi4) w/-n32
Purpose:
bug fix
Description:
Need to use HDopen, HDread for windows support.
off_t in windows is 32-bit; however, windows can support 64-bit file. So we
have to change off_t to int64 in order that >4G file can be supported.
Solution:
See above
Platforms tested:
linux2.2.18smp, windows 2000
Misc. update:
Update MANIFEST if you add or remove any file.
Update release_docs/RELEASE for bug fixes, new features, etc.
Update applicable document files too.
Possible Bug Fix
Description:
There seems to be a problem with the h5cc script picking up old
header files. This may have something to do with the CPPFLAGS macro
being set to some nefarious thing and the compiler looking in those
directories for the header files instead of the one where HDF5 is
actually installed.
Solution:
Put the -I$includedir first.
Platforms tested:
None...This is really triggered by the nightly tests. I'm kind of
hoping that this will fix things...
Bug fix
Description:
Old setup put $(srcdir)/h5redeploy in the install list but this
same list is used for clean too, thus the file is removed from
source. That is bad.
Solution:
Set it to use a cp to do it. Need to change the source version
name to something else because for one, it is confusing to use
the same name. For another, if the build is done in place (i.e.,
not using --srcdir), the source file is removed, again.
So, renamed it with the .in suffix. Who knows, it may take
more processing than just cp when more features are added to it.
Platforms tested:
Eirene
Bug Fix
Description:
Some -I paths weren't included in the h5cc script. That would cause
the compiler to fail if it was trying to find gass header files or
the like.
Solution:
Added the CPPFLAGS macro to the h5cc.in file so that it'll be there
when it's generated. This will also include some -D options which we
compiled the library with, like the LFS flags on Linux.
Also changed the configure* files so that it will "chmod" the created
h5cc file to 755 (executable) since that wasn't happening all the
time...
Platforms tested:
Linux
Bug Fix
Description:
The library path was relying upon the "exec_prefix" variable.
However, we weren't including that into the h5cc script.
Solution:
Added it.
Platforms tested:
Linux
Removing the DPSS (gridstorage) driver source code.
Description:
The DPSS (using Grid-Storage) driver is retired.
Removed the configure option with-gridstorage from configure.in.
Cvs remove the following files
./src/H5FDdpss.c
./src/H5FDdpss.h
./test/dpss_read.c
./test/dpss_write.c
Regenerated Dependencies files (some had to be hand-edited since
'make depend' did not cover them.)
Removed reference to DPSS Virtual file driver from H5F.c.
Platforms tested:
modi4 (Parallel; -with-gass=...), eirene, arabica (fortran, cxx).
Code cleanup (sorta)
Description:
When the first versions of the HDF5 library were designed, I remembered
vividly the difficulties of porting code from a 32-bit platform to a 16-bit
platform and asked that people use intn & uintn instead of int & unsigned
int, respectively. However, in hindsight, this was overkill and
unnecessary since we weren't going to be porting the HDF5 library to
16-bit architectures.
Currently, the extra uintn & intn typedefs are causing problems for users
who'd like to include both the HDF5 and HDF4 header files in one source
module (like Kent's h4toh5 library).
Solution:
Changed the uintn & intn's to unsigned and int's respectively.
Platforms tested:
FreeBSD 4.4 (hawkwind)
Purpose:
Bug Fix
Description:
The way we were generating Dependencies and .depend files was broken.
If the $srcdir or other macros began with a ".", then it would match
anything and cause problems since it would then overwrite the
beginning of the header file's path.
Solution:
Wrote a Perl script which can handle this type of weirdness better.
It's only used when the environment is a GNU one with a GCC
compiler...
Platforms tested:
Linux
Bug Fix, Code Cleanup, Code Optimization, etc.
Description:
Fold in the hyperslab speedups, clean up compile warnings and change a
few things from using 'unsigned' or 'hsize_t' to use 'size_t' instead.
Platforms tested:
FreeBSD 4.3 (hawkwind), Solaris 2.7 (arabica), Irix64 6.5 (modi4)
Update
Description:
Replaced
#include <hdf5_file.h>
with
#include "hdf5_file.h"
so that gcc can pick up our files more easily without picking up
system header files (which we don't care about being in the
dependencies list).
Platforms tested:
Linux
Code Movement
Description:
Moved the tools into their own separate directories (except for these
small tools which are REALLY small, not tested, or documented,
really...They just get put into the misc/ directory).
Platforms tested:
Linux and Kelgia