Purpose:
bug fix
Description:
Had an #ifdef HAVE_XXX in the header file HDFIOTrace.h
Solution:
Changed the condition to H5_HAVE_XXX
Platforms tested:
Origin 2000 64 bit
Bug Fix
Description:
Corrected int vs. unsigned short error that only showed up on big-endian
machines.
Also, add more testing to verify that the coordinates reported for each
element iterated through with H5Diterate are correct.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Bug Fix
Description:
Correct coordinates were not computed for iteration through irregular
hyperslab selection (although the points in the buffer that were selected
were correct).
Solution:
Add another array to track selection offset adjusted coordinates in the
selection.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Bug Fix
Description:
Selection offsets were not being used correctly when iterating through
all hyperslabs selections and point selections.
Solution:
Use the selection offset appropriately.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Update
Description:
Changed the description of the help message so that the --hdf5,
--mpio, --raw flags better say what they do.
Platforms tested:
Linux
Update
Description:
Changed so that the Fortran and C++ configures are named "HDF5
Fortran" and "HDF5 C++" resp. instead of just "HDF5.
Solution:
Add an extra parameter to the subroutine which generates the new
configure.in files.
Platforms tested:
Linux
Migrate from configure macros of XYZ_ABC to H5_XYZ_ABC
Description:
configure generates many macros definitions on the fly and
were stored in src/H5config.h which is included by H5public.h.
But other software that uses hdf5 may also run their own configure.
There can be a clash in macro name space. We decided awhile ago
to prepend all generated macros with "H5_" to avoid conflicts.
The process has started and this commit completes it (at least attempt
to).
Solution:
Many macros symbols (e.g. SIZEOF_xxx and HAVE_xxx were changed to
H5_SIZEOF_xxx and H5_HAVE_xxx). Then H5private.h no longer includes
H5config.h. This cuts H5config.h away from HDF5 source code.
Pending issues:
The module of fortran and pablo are to be resolved in a different
commit.
Platforms tested:
eirene (parallel), arabica (solaris 7 --enable-fortran, --enable-cxx)
Purpose:
New feature
Description:
Allow H5Glink and H5Gmove to handle links across different locations.
Solution:
Added H5Glink2 and H5Gmove2 functions with new parameter of destination
location.
Platforms tested:
Linux 2.2(eirene)
Bug Fix.
Description:
When the fill value for a dataset is not set, the size is set to zero,
causing problems with filling unused areas in previously defined chunks
(i.e. when the dataset shrinks in size)
Solution:
Use the size of the elements in the dataset directly, instead of relying on
the size of the fill value (which must be the same size).
Platforms tested:
FreeBSD 4.5 (sleipnir)
Purpose:
Maintenance
Description:
Changed code to use H5_HAVE_MPI_MULTI_LANG_* definitions and
H5pubconf_fortran.h include file.
Solution:
Platforms tested:
Let's daily tests do this work. I have to leave now.
Update
Description:
Added a conversion of the H5config_fortran.h file to
H5pubconf_fortran.h so as to keep with the HDF5 format of using H5_
as a prefix for HAVE_* macros.
Platforms tested:
Linux
Update
Description:
Updated the h5vers script to automatically update the configure.in
files so that they reflect the correct version in the AC_INIT line.
Platforms tested:
Linux
Purpose:
Bug fix
Description:
For some unknown to myself reason I used 32-bit integer for INTEGER(HSIZE_T)
on Solaris platforms when 64-bit integers are available for both C and Fortran.
Solution:
Use long long type to describe h(s)size_t_f types
Platforms tested:
Solaris 2.7 ans 2.6
Purpose:
Bug fix
Description:
For some unknown to myself reason I used 32-bit integer for INTEGER(HSIZE_T)
on Solaris platforms when 64-bit integers are available for both C and Fortran.
Solution:
Use the proper KIND argument to define INTEGER(HSIZE_T)
Platforms tested:
Solaris 2.7 ans 2.6
Code cleanup
Description:
Previously, the I/O pipeline (pline), external file list (efl) and fill-
value (fill) structs were passed down the raw data function call chain,
even into and/or through functions which didn't use them. Since all three
of these pieces of information are available from the dataset creation
property list, just pass the dataset creation property list down the
function call chain and query for the information needed in a particular
function.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Code cleanup
Description:
Previously, the I/O pipeline (pline), external file list (efl) and fill-
value (fill) structs were passed down the raw data function call chain,
even into and/or through functions which didn't use them. Since all three
of these pieces of information are available from the dataset creation
property list, just pass the dataset creation property list down the
function call chain and query for the information needed in a particular
function.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Bug fix
Description:
$(LT_RUN) was used to execute ./H5detect in src/Makefile.in.
$RUNTEST was set to $(LT_RUN) which was used to execute sequential
executable. $(LT_RUN) is "../libtool --mode=execute". But libtool
invokes some commands that are not supported in the Tflops machine.
That caused failures during the build and check processes.
Solution:
Upon investigation, there does not seem to be need to use $(LT_RUN)
any more. The "libtool --mode=link" now generates a "fake" executable
that is actually a command-script file that can regenerate the real
executable with dynamic libraries hooks setup properly.
Undo all those $LT_RUN substitute and let $RUNSERIAL execute those
sequential executables.
Platforms tested:
Eirene(serial), modi4(parallel)
Code cleanup
Description:
Reduce gratuitous differences between H5D_write and H5D_read and also
remove distracting debugging printf's that were ifdef'd out.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Code tweak.
Description:
Allow the 'fill' parameter of H5S_select_fill to be NULL and allocate a
temporary buffer for it, if so.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Update
Description:
Updated ltmain.sh with the newest version from the 1.4.2 libtool. The
one I updated with earlier still had a few bugs in it, for some
reason. I got rid of the RPM version on my machine and used the
compiled source instead.
Platforms tested:
Linux
Bug Fix
Description:
On some platforms, mktemp doesn't work. This would wipe out the
tmpdir variable's value.
Solution:
Reinitialize tmpdir in these cases.
Platforms tested:
HP-UX
Purpose:
windows support of socket function
Description:
gethostname is treated as socket function in windows and
it is defined at winsock.h.
for every windows socket function to be called, it must start
with WSAStartup and end with WSACleanup
Solution:
Add WSAstartup and WSACleanup with WIN32 macro.
Platforms tested:
windows 2000, confirmed at linux 2.2.18
Purpose:
update macro HDstat
Description:
The original defination of HDstat only defines HDstat as stat.
the file size defined at struct stat is int32,
However for files greater than 4G(or 2G)file, lookup of file size will
fail on windows when using stat. Add a macro for windows,define HDstat
as istat64.
This fix is the same as HDfstat macro.
Solution:
Platforms tested:
linux 2.2.18
Purpose:
Bug fix
Description:
Different MPI implementations use different ways to
pass MPI objects between C and Fortran layers. MPI-2 defines
a standard set of MPI_*_c2f(f2c) functions for this purpose.
Unfortunately it is not implemented everywhere and makes
code non-portable between different parallel platforms.
Solution:
Always use MPI_*c2f(f2c) functions in our code. Configure
finds out if those functions are available. If not, then we define
macros to immulate those functions.
Platforms tested:
IRIX64-6.5 (modi4) and SP3 (seaborg.nersc.gov). On those platforms
functions do not exist and we use macros. Bill will test on
HPUX System V (SDSC machine) to check if this works when functions
are defined. Preliminary testing showed that it worked.
Fix
Description:
When doing a TRY_LINK, the compiler complained about lack of
parameters being passed to the function.
Solution:
Added the parameter it wants...
Updated the installation instruction for the Tflops machine.
Moved the parallel HDF5 building instructions to the front
and putting in a NOTE that the sequential version is not supported
any more because it has little practical value to build sequential
applications for the Tflops machine.
Update
Description:
Updated the way we used the AC_INIT macros so that it's current to
the new standard way and not deprecated anymore.
Also, added a test for some functions during parallel Fortran
configure. This required the creation of an H5config_fortran.h file
so that we can test for these...
Platforms tested:
Elena is going to test the changes to the fortran after she checks in
her other code. I will test on SDSC machines after getting her code.
The other changes were tested on Linux.
Bug fix
Description:
The symbol "RAW" is already defined in some ioctl.h files.
Changed it to RAWIO.
Platforms tested:
Tflops.
(I am commiting this from TFLOPS. Will check it out immediate
to test on local machines.)
Code cleanup
Description:
Clean up the H5B_iterate code to not have a single hard-wired iterator for
each interface which uses a B-tree, instead accept a function pointer which
determines the callback function. This allows additional iterator
callbacks to be defined without requiring additional H5B functions to be
created.
In that spirit, remove the H5B_prune_by_extent call and convert the
H5F_istore callback routine for it into a callback routine for H5B_iterate.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Feature Update
Description:
Modified the AC_OUTPUT macro to coincide with the now-standard
way of doing things. I.e., you put all of the files you want to
generate into the AC_CONFIG_FILES macro and invode AC_OUTPUT with
no parameters.
Platforms tested:
Linux
Feature Update
Description:
Modified the AC_OUTPUT macro to coincide with the now-standard way of
doing things. I.e., you put all of the files you want to generate
into the AC_CONFIG_FILES macro and invode AC_OUTPUT with no
parameters.
Platforms tested:
Linux
Feature Fix
Description:
Modified the AC_OUTPUT macro to coincide with the now-standard way of
doing things. I.e., you put all of the files you want to generate
into the AC_CONFIG_FILES macro and invode AC_OUTPUT with no
parameters.
Platforms tested:
Linux
Purpose:
Bug Fix
Description:
Users could not trace MPI programs when library wasn't compiled for
parallel execution
Solution:
Allow Pablo Trace library to set the processor number and generate
the filenames for each processor.
Platforms tested:
Sun Workstation, HP VClass, Irix 64
New feature
Description:
Added h5_show_hostname to display the hostname of the host in
which the process runs. It can help identify location of process
in multiple processes or batch launching environments.
Platforms tested:
Eirene (pp)
Bug fix
Description:
Zlib-compression was reported according to if a Z-library (e.g., libz.a)
has been found. It actually needs the presence of a valid zlib.h header
file and the compress2() routine.
Solution:
Changed the IF_YES_NO to be more general by accepting multiple arguments
and changed the Zlib-compression depends on zlib.h header and the
compress2() routine.
Platforms tested:
Eirene.