New feature.
Description:
Added several library and tools tests project and updated testing batch file.
Solution:
1. Add dangle, dangledll, dtransform, dtransformdll, filename, filenamedll projects under hdf5\test directory.
2. Add talign and taligndll projects under hdf5\tools directory.
3. Add the above 6 projects to the dependencies of "all" project.
4. Update hdf5test.bat under hdf5\test directory to include the above tests.
Platforms tested:
Microsoft Visual C++ 6.0 on Windows 2000/XP.
(Note: As hdf5\tools\lib\talign.c file includes a header file unistd.h, which does not exist in Windows system, we need to update this file to include a Windows Macro to exclude this header file in Windows.)
Misc. update:
Updated hdf5\src\H5Tinit.c
Bug fix.
Description:
dtransform test still failed on windows because it was attempting to create a
ullong dataset.
Solution:
Removed creation of ullong dataset as well if H5_ULLONG_TO_FP_CAST_WORKS was
not defined.
Platforms tested:
windows
Bug fix.
Description:
unsigned long long test fails on windows because windows cannot convert from
ullong to double
Solution:
Skip unsigned long long test if H5_ULLONG_TO_FP_CAST_WORKS is not defined.
Platforms tested:
eirene and will do windows test asap.
Added tests
Code cleanup
Description:
New tests added for new version of H5Pget_data_transform and additional tests
to make sure that error conditions are handled properly by both
H5Pset_data_transform and H5Pget_data_transform.
Also cleaned up code to make it more compact.
Platforms tested:
sol + eirene + copper
Misc. update:
Changed functionality of H5Pget_data_transform
Description:
H5Pget_data_transform no longer allocates memory for the transform string...it
is the user's responsbility to do so.
Solution:
Made H5Pget_data_transform be more in line with other functions that do
similiar things:
User now has to allocate memory for the string themselves and specify how much
of the string should be copied into the buffer. There is also support for
querying the length of the transform string.
Platforms tested:
sol + eirene + copper
Misc. update:
Code cleanup
Description:
Clean up minor warnings and align with release branch.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel & FPH5
Solaris 2.7 (arabica) w/production mode
Linux 2.4 (heping) w/C++ and FORTRAN
Bug fix.
Description:
The previous H5_ULLONG_TO_FP_CAST_WORKS fix does not quite work
since the problem was an error during compiling while the fix
was trying to check for the error condition during runtime.
The MS-Compiler still complains about not supporting ULLONG
to Float.
Solution:
A temperary patch is to have two #define of H5Z_XFORM_TYPE_OP
according to if H5_ULLONG_TO_FP_CAST_WORKS is defined. This
works but a better solution is needed.
Platforms tested:
Windows (by Kent) and heping (Linux by me).
Improvement.
Description:
Made all processes print hostname() by default so that it is easier
to spot problems.
Platforms tested:
Tested in copper only. It is a trivial small change.
Misc. update:
"Improvement"?
Description:
Long double is a standard C89 type. Promoted it from
a conditional tested type to an assumed supported type.
Platforms tested:
H5committested.
Misc. update:
Bug fix
Description:
Correct values used in "space utilization" equation: the 'used' and
'total' values were backwards.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Too minor to require h5committest
Description: "char" was considered as always "signed char" in data type conversion. However, ISO C leaves
the definition of "char" to individual implementation. i.e. for IBM AIX C compiler, it's treated as "unsigned
char".
Solution: Changed all "char" to "signed char". Don't even do "char" anymore because its definition is up
to each vendor.
Platforms tested: h5committest
New feature.
Description:
Add a simple HDF5 C++ example and a simple HDF5 Fortran example.
Solution:
1. Add a simple HDF5 C++ example to test HDF5 library and tools under hdf5\c++\examples\ directory.
2. Add a simple HDF5 Fortran example to test HDF5 library and tools under hdf5\fortran\examples\ directory.
3. Add an HDF5 C++ example installation batch file installcppexamples.bat under hdf5\ directory.
4. Add an HDF5 C++ example test batch file testcppexamples.bat under hdf5\c++\examples\ directory.
5. Add an HDF5 Fortran example installation batch file installf90examples.bat under hdf5\directory.
(Note: HDF5 Fortran example test batch file will be added later as there is no Fortran example tests on Unix now.)
Platforms tested:
Microsoft Visual Studio 6.0 on Windows 2000/XP.
Microsoft Visual Studio .NET 2003 on Windows XP (C example only).
Misc. update:
Add code more code to test H5Pget_data_transform and H5Pset_data_transform
Description:
Added a test to verify that H5Pset_data_transform will correctly replace a
data transform with a new one and properly use the new transform on the data.
Added a test to verify that H5Pget_data_transform properly returns the
transform string.
Platforms tested:
sol + eirene + copper
Misc. update:
Code refactor
Changed functionality of H5Pget_data_transform
Description:
Rewrote much of H5Ztrans.c to use macros, which cut down on the amount of code
significantly.
H5Pget_data_transform now allocates memory for the data transform string,
copies the string into this memory, and
returns this pointer to the user, instead of returning a pointer to the
internal transform string stored by hdf. It is the user's responsibility to free
this memory when they are done with it.
Platforms tested:
sol + eirene + copper
Misc. update:
Bug fix
Description:
Fix typo in #ifdef for unsigned long long to double conversion.
Changed WIN32 check to H5_ULLONG_TO_FP_CAST_WORKS
This check-in (and the one before it) also includes a large code-refactoring
that is still in progress.
Solution:
the ifdef for the plus case was checking unsigned long instead of unsigned
long long. Moved the check to the right location.
Platforms tested:
sol+eirene
Misc. update:
Update.
Description:
h5repack_layout.c was removed from hdf5/tools/h5repack directory. HDF5 windows projects using this file should be updated.
Solution:
Delete h5repack_layout.c from h5repack, h5repackdll, and h5repacktst projects.
Platforms tested:
Visual Studio 6.0 on Windows 2000/XP.
Misc. update:
bug fix
Description:
Description:
one case was not handled in the combination of input options (layout and filters)
Solution:
redo the algorythm that handles all cases
Solution:
Platforms tested:
linux
Misc. update:
Bug fix
Description:
Fix core dump when flushing a file with a newly created attribute which
hasn't had a value written to it still open.
Solution:
Write the attribute fill value when appropriate.
Platforms tested:
FreeBSd 4.10 (sleipnir)
Linux 2.4 (verbena)
Solaris 2.7 (arabica)
Skip test.
Description:
Known failure in char and schar types for dtransform test on AIX and SGI.
Solution:
Temporary skip this test until bug is fixed.
Platforms tested:
copper (minor change)
Bug fix.
Description:
If a subtest failed, the error would not propogate properly to the main
function, thereby resulting in a succesful run, even though the test failed.
Solution:
Fixed error return values. The dtransform test will now fail for real.
Platforms tested:
sol + eirene + copper
Bug fix.
Description:
The windows compiler apparently cannot convert from unsigned long long to
double. This conversion is necessary for the data transform to work properly
in some cases.
Solution:
Added #ifdef to check for windows and issue error when user attempts to do a
data transform on a long long type.
Platforms tested:
sol + eirene
bug fix
Description:
when specifying both an input object e.g -f mydset:GZIP=1 and a defined chunk -l CHUNK=20x20
the filter used a defined default chunk instead
Solution:
add a check for the input chunk
Platforms tested:
linux (small change)
Misc. update:
Bug fix.
Description:
AIX defines different sizes of the signed and unsigned int_fast8_t.
Changed the code to check each type individually and do not verify
they must be the same size.
Platforms tested:
Tested in copper only since the change is trivial.
Misc. update:
Bug fix
Description:
Removed the cache values of sizeof signed and unsigned int_fast8_t
and int_fast16_t since the vendor changes them often.
Platforms tested:
Tested in Copper only since it affected it only.
Misc. update:
Description:
Code optimization and refactoring.
Added support for llong, ullong, and ldouble
Solution:
Significantly cut down on the amount of code required to do the transform,
while making the operations more efficient.
Platforms tested:
sol + eirene
tconfig.c:
Verified only the unsigned int types and did not detect inconsistencies
on signed type such as int_fast16_t.
Changed code to verify both signed and unsigned int types wherever
applicable. It also depends on signed and unsigned forms of an
int type must be of the same sizes.
testhdf5.c:
Shorten the configure test name to 'config'--easier to type.
Tested on LLNL Frost and Snow. Will test in Copper after commit.
tconfig.c:
Verified only the unsigned int types and did not detect inconsistencies
on signed type such as int_fast16_t.
Changed code to verify both signed and unsigned int types wherever
applicable. It also depends on signed and unsigned forms of an
int type must be of the same sizes.
testhdf5.c:
Shorten the configure test name to 'config'--easier to type.
Tested on LLNL Frost and Snow. Will test in Copper after commit.
The script does not use $RUNSERIAL to execute programs.
This failed badly in parallel systems like Tflops.
Patched $RUNSERIAL in to make it work.
Tested in tflops only.
Bug fix
Description:
When mpicc/mpif90 is a wrapper around a PGI compiler, turn on less
agressive optimization options to avoid testing errors.
Platforms tested:
Linux 2.4 (verbena)
Too minor to require h5committest
Bug fix
Description:
When mpicc/mpif90 is a wrapper around a PGI compiler, turn on less
agressive optimization options to avoid testing errors.
Platforms tested:
Linux 2.4 (verbena)
Too minor to require h5committest
Code cleanup
Description:
Update FORTRAN configuration test code to be more syntacticly correct
and not generate errors with stricter standards checking in the compiler.
Platforms tested:
Linux 2.4 (verbena)
Too minor to require h5committest
Code cleanup/bug fix
Description:
Remove the undocumented "$NOFP" shell variable which would allow production
builds without removing the stack frame. This was cascading between C and
FORTRAN builds and causing problems.
Solution:
Hard-code removing the stack frame for now. Users would have needed to
read the configure scripts anyway, so there's not really much benefit to the
extra knob. Users who need this functionality (production builds with stack
frames) are debugging probably, so they will need to modify the script and
build their own version of the library now.
Platforms tested:
Linux 2.4 (verbena)
Too minor to require h5committest
Bug fix
Description:
Correct/update detection of Linux platforms.
Also, refactor common code out of different architectures for Linux builds.
Platforms tested:
Linux 2.4 (verbena)
Too minor to require h5commitest
Code cleanup
Description:
Default to using mpif90 if CC=mpicc and --enable-fortran flag is given,
but no F9X compiler is set.
Platforms tested:
Linux 2.4 (verbena)
Too minor to require h5committest
Code cleanup
Description:
Minor code cleanups and tweaks.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Solaris 2.7 (arabica)
Linux 2.4 (verbena) w/fortran
Otherwise, too minor to require full h5committest
Bug fix
Description:
Correct a couple of array bounds issues exposed by the PGI compiler
Platforms tested:
Linux 2.4 (verbena) w/PGI compilers
Too minor too requie h5committest
Code cleanup
Description:
Clean up formatting and some mis-casts, etc.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Linux 2.4 (verbena)
Solaris 2.7 (arabica)
Bug fix
Description:
Tweak PGI compiler auto-detection to work for version 5.0 compilers as
well as version 5.2 compilers.
Platforms tested:
Linux 2.4 (verbena) w/PGI compilers
Not tested with rest of h5committest platforms
Regenerate
Description:
Regenerate with autoconf 2.53 (not [easily] available on tungsten)
Platforms tested:
Linux 2.4 (verbena)
Too minor to require h5committest
Refactor and update fortran configuration
Description:
Changed configure.in to include the production, debugging and profiling
flags for FORTRAN in the command line.
Added '-flags' files for PGI and Intel C compilers
Added '-fflags' files for PGI and Intel FORTRAN compilers
Updated 'gnu-flags' file for GNU C compiler to not modify compiler flags
when gcc is not being used.
Make detection of the correct FORTRAN compiler a bit smarter for Linux
platforms. (And carried over some of the minor changes to other affected
machines)
Platforms tested:
Linux 2.4 (tungsten) w/PGI and Intel C & FORTRAN compilers.
Changes not tested by h5committest
Update and bug fix.
Description:
Update Windows projects setting as new source code was added.
Fix a bug in hdf5build.bat file.
Solution:
1. Add hdf5/tools/lib/h5tools_type.c into toolslib and toolslibD projects.
2. There was a minor bug with hdf5build.bat file when it is used to build C library only. Remove redundant scripts in the batch file.
Platforms tested:
Visual C++ 6.0 on Windows XP and 2000.
Misc. update:
Bug fix
Description:
Close a couple of memory leaks
Platforms tested:
FreeBSD 4.10 (sleipnir)
Solaris 2.7 (arabica) w/purify
Linux 2.4 (verbena)
too minor for h5committest