Purpose:
Windows port and maintenance
Description:
Windows Fortran requires interface bocks for each C function called from F90 stub. I also added comment blocks for each F90 API.
Solution:
Added interface blocks.
Platforms tested:
Linux (eirene) to test that things are still working on UNIX.
Purpose:
Windows port and maintenance
Description:
Windows Fortran requires interface bocks for each C function
called from F90 stub.
I also added comment blocks for each F90 API.
Solution:
Added interface blocks.
Platforms tested:
Linux (eirene) to test that things are still working on UNIX.
Purpose:
Windows port and maintenance.
Description:
Windows Fortran requires explicit interface block for each
C function called from F90 stub.
I also added comment block for each F90 function.
Solution:
Added inteface block for each function.
Platforms tested:
Linux (eiriene): checked that code is still compiles and runs correctly
on UNIX.
Bug fix
Description:
The /bin/csh shell was causing problems if you were using a different
shell than csh (like bash). It couldn't find the compiler.
Solution:
Changed to the more standard /bin/sh
Platforms tested:
Linux
New platform
Description:
Support the Cray SV1 machine. (config file is identical to unicosmk file
right now).
Platforms tested:
Cray SV1 (killeen.nersc.gov)
Purpose:
Bug fix
Description:
Compilation failed for the H5f90global.f90 file on DEC UNIX (hdf5-1.4.0-beta3-pre2)
When new definition H5E_TBBT_F was added, the length of the corresponding
H5E_flags array was not increased.
Solution:
Fixed the length of the array.
Platforms tested:
DEC UNIX (gondolin)
Purpose:
Bug fix.
Description:
While building on T3E, I noticed several compiler warnings about
variable being used before its value was defined.
Solution:
Fixed.
Platforms tested:
T3E (mcurie.nersc.gov)
Bug Fix
Description:
Small bug fix to the acsite.m4 stuff. We should check if the Fortran
9X compiler was found instead of the CC compiler.
Solution:
Changed CC to F9X macro.
Platforms tested:
Linux
Bug Fix
Description:
The test ``test -e "filename"'' doesn't work with some Bourne shells
(for instance, on Arabica).
Solution:
Changed test to ``test -f "filename"''.
Platforms tested:
Arabica
Bug fix
Description:
This should fix the problem with installing the Fortran module
files.
Solution:
This script determines if the HDF5 module is created. If it is,
then we assume that we need to install all of the modules. I
check for both upper and lowercase in the name cause I'm not sure
what weird fortran compilers will do.
Platforms tested:
Linux
Another fix...
Description:
This should work for all platforms now. The other fix didn't work
for the Linux platform
Solution:
Explicitly copy the modules if they exist.
Platforms tested:
Linux
Bug Fix
Description:
When trying to install the Fortran Modules, it would barf if
there weren't any files in the directory with that extension
(i.e., in the test/ directory).
Solution:
Changed the installation to install only those files which
actually have the correct extension we want.
Platforms tested:
This type of fix works on the T3E and Linux
Install Fix
Description:
Fortran modules need to be installed.
Solution:
I check for the extension modules are created with and use that
during the install...
Platforms tested:
Linux
Purpose:
Maintenance
Description:
Not all platforms support F90 MPI. I used USE MPI statement, and
it did not work on T3E (mcurie.nersc.gov)
Solution:
Use INCLUDE 'MPIF.H' statement instead of USE MPI.
Platforms tested:
O2K and T3E
Bug Fix
Description:
Parallel stuff wasn't being compiled on T3E. It was complaining
about not being able to find said files. Also, I was confused
about which Fortran module needed to be compiled when it was
parallel.
Solution:
Did magic so that the correct files are specified when parallel
is enabled.
Platforms tested:
T3E
New Config
Description:
T3E at mcurie.nersc.gov changed it's name yet again.
Solution:
Create new file so that configure will find it correctly.
Platforms tested:
T3E
Bug Fix
Description:
The fix we put in to ignore warning 405 was incorrect. The quotes
were confusing to configure.
Solution:
Turns out that there doesn't need to be a space between the -M
flag and the warning number.
Platforms tested:
T3E
Purpose:
Bug fix on T3E.
Description:
There was a typo in the h5init_types_c name translation line that
caused compilation errors.
Solution:
Fixed the typo. This fix exposes another error and I have no clue what to
do about this one
f90 -p. -p../src -dp -o fortranlib_test fortranlib_test.o hdf5test.o tH5F.o tH5D.o tH5R.o tH5S.o tH5T.o tH5Sselect.o tH5P.o tH5A.o tH5I.o tH5G.o ../src/.libs/libhdf5_fortran.a ../../src/.libs/libhdf5.a -L/u3/epourmal/HDF4/NewHDF/lib -lmfhdf -ldf -ljpeg -lz -lnsl -lm
cld-405 cld: WARNING
The entry point `HDF5' defined in relocatable object `../src/.libs/libhdf5_fortran.a[HDF5.o:HDF5]' is used; the definition in relocatable object `./../src/HDF5.o:HDF5' is ignored.
cld-431 cld: WARNING
The resulting output file `fortranlib_test' is not executable because of previous WARNING messages.
Make: "../../libtool --mode=link f90 -p. -p../src -dp -o fortranlib_test fortranlib_test.lo hdf5test.lo tH5F.lo tH5D.lo tH5R.lo tH5S.lo tH5T.lo tH5Sselect.lo tH5P.lo tH5A.lo tH5I.lo tH5G.lo ../src/libhdf5_fortran.la ../../src/libhdf5.la": Error code 1
cmd-2436 make: Stop.
+ exit 1
Make: "set -x; for d in src test examples; do \
(cd $d && make tests) || exit 1; \
done": Error code 1
Platforms tested:
T3E
Bug Fix
Description:
We were not propagating the FFLAGS macro. I.e., we were
overwriting it after it was set in the commence.in includes.
Solution:
Include it with a ``@FFLAGS@'' where we'd normally overwrite it
so that it isn't.
Platforms tested:
T3E
Attempted Bug Fix
Description:
Some machines (Cray T3E, need you ask?) use the ``-p'' flag for
enabling double precision. This breaks our Fortran interface.
Solution:
Put this test last. However, the T3E apparently doesn't need
modules, so we may have to resort to a better "fix" than this
in the future.
Platforms tested:
T3E
Purpose:
Bug fix
Description:
hdf5 1.4.0_beta1 build failed for Fortran test tH5T.f90 because
third argument of the h5tarray_create_f subroutine had INTEGER(SIZE_T)
type instead of INTEGER(HSIZE_T) type.
Solution:
Fixed the datatype.
Platforms tested:
Linux (eirene)
Purpose:
Bug fix.
Description:
H5f90global.f90:
One of the common block arrays (floating_types) had a typo in the name.
DEC compiler was the only compiler to warn about the problem.
H5Ff.f90
Compiler gave warnings about a variable that was used before its value was defined.
Fixed. Turned to be a typo in a variable name.
Platforms tested:
DEC UNIX (gondolin)
Purpose:
Bug fix
Description:
Test program was using h5init_types_f and h5close_type_f
instead of h5open_f and h5close_f. Would not compile on modi4.
Solution:
Fixed the code to use new functions.
Platforms tested:
O2K (modi4)
Purpose:
Bug fix
Description:
h5gget_linkval_f function had an argument with the type INTEGER instead
on INTEGER(SIZE_T). Test would not compile on O2K.
Solution:
Fixed argument datatype.
Platforms tested:
O2K (modi4)
Purpose:
Bug fix
Description:
Functions were using flags that were not defined anymore.
Somehow I forgot to check this file in when I modified code
to use run-time generated flags.
Platforms tested:
O2K (modi4)
Bug Fix
Description:
T3E and J90 were complaining about not being able to make for
ADD_PARALLEL_FILES.
Solution:
Somehow the make on these machines must have been weirded out by
the funky pattern matching/replacement that's being done and
couldn't handle a null macro. I now assign "no" to the macro
explicitly
Platforms tested:
T3E
Purpose:
Code maintenance and development
Description:
I added two functions h5open_f and h5close_f to initialize
C library and Fortran interface (flags, predefined datatypes, etc).
Those calls are required for any F90 program that uses HDF5.
I renamed H5f90misc.c and H5f90miscf.f90 files to H5f.c and H5ff.f90.
New functions are added to those new files.
Platforms tested:
Solaris 2.6
Purpose:
Bug fix
Description:
HP and AIX compilers did not like duplicate array declarations in
common blocks statements.
Solution:
Removed duplication
Platforms tested:
SP2 and HPUX 11.00
Purpose:
Code maintenance
Description:
Fixed the code to use new h5tarray_create_f subroutine to
create a compound datatype with an array field.
Platforms tested:
Solaris 2.6
Purpose:
Bugs fix
Description:
I used H5Tcreate_array instead of H5Tarray_create in C stub
Solution:
Fixed
Platforms tested:
Solaris 2.6
OCVS: ----------------------------------------------------------------------
Purpose:
Code development and maintenance
Description:
Four new fortran functions to support array datatype were added:
h5tarray_create_f
h5tget_array_ndims_f
h5tget_array_dims_f
h5tget_super_f
Two functions were deleted (commented out for now, can be returned easily if
necessary):
h5tinsert_array_f
h5tget_member_dims
Platforms tested:
Library build was tested on Solaris2.6. I have to modify test program to
use new functions. Right now test program will not compile.
Buglet fix
Description:
Was removing the confdefs.h header which was needed during
Makefile generation.
Solution:
Stopped doing that.
Platforms tested:
Linux
Buglet fix...
Description:
When configuring, configure would complain about there not being
a confdefs.h file.
Solution:
Added a src/H5config.h file which configure can generate. This
can be used for configure stuff later, but is empty now.
Platforms tested:
Linux
Purpose:
New feature
Description:
Added F90 flags to support h5glink_f subroutine
H5G_LINK_ERROR_F
H5G_LINK_HARD_F
H5G_LINK_SOFT_F
Platforms tested:
Linux (eirene)