Description: Altix configuration file used icc for the default C++ compiler.
Since cobalt moved to Intel 8.1, C++ compilation failed.
Solution: Changed icc to icpc for the default C++ compiler on Altix.
Platforms tested: cobalt
Misc. update:
Cray X1 Port
Description:
Porting 1.7 branch to Cray X1. With these changes, HDF5 builds, but
there are some errors in the tests. Working on the errors.
Solution:
Added nv1-cray file to config directory.
Cleaned up some code in hl/c++ that was causing compiler to complain.
Platforms tested:
Cray X1, mir, sleipnir
Misc. update:
Update config/lt_vers.am
Description:
My version number bump to config/lt_vers.am somehow didn't get checked
in with the rest of the metadata cache API mods.
Solution:
Bumped the version numbers again, and try checking in the file again.
Platforms tested:
None -- but see previous checkin of metadata cache API additions.
Misc. update:
New feature.
Description:
To update libtool's version number for changing API interface
of H5Psetscaleoffset.
Solution:
Platforms tested:
heping
Misc. update:
Purpose:
collective chunk IO support for AIX 5.x
Description:
NCSA just updated its poe version, this new version will support
MPI complicated derived data type.
So update our configuration file for AIX 5.x.
Solution:
Platforms tested:
copper, no need for others since only AIX 5.x will be affected.
Misc. update:
Description:
Many warnings about duplicate symbols for various members in the std.
Solution:
Temporarily added -qweaksymbol to suppress linker messages warning
of duplicate symbols since these warnings are harmless.
Note from pSeries and AIX Information Center:
When compiling C++ programs containing extern inline functions,
you can use the -qweaksymbol compiler option to suppress linker
messages warning of duplicate symbols.
Hoping that a better solution is suggested or the problem will be
handled by the compiler in the future.
Platforms tested:
AIX 5.1 (copper)
Feature - libtool shared library versioning
Description:
Libtool provides a mechanism for different versions of the same shared
library to be distinguished. Now this is applied to HDF5 when it is
built as a shared library.
Solution:
The version number is stored in config/lt_vers.am, and included in
src/Makefile.am.
This number will be automatically updated by bin/h5vers; developers
only need to update it when they change the API.
*** IMPORTANT ***
Any time the API changes, the version number in config/lt_vers.am must
be updated!
Platforms tested:
mir, eirene, verbena, modi4
Misc. update:
Turning off collective irregular selection feature for this platform
because the MPI package doesn't support MPI complicated derived data
type.
Description:
Solution:
Add the macro hdf5_mpi_complex_derived_datatype_works=${hdf5_mpi_complex_derived_datatype_works='no'}
at the end of config file.
Platforms tested:
Won't affect other platform and too minor to go to PSC cluster for testing.
Misc. update:
Purpose:
Fix the daily test failure of collective irregular test in modi4.
Description:
The original test passed with new SGI compiler. Albert verified this from
the SGI machine at DOE. The compiler version number at modi4 is 7.3.1.3m, the compiler version number at DOE is 7.4.2m. compiler at modi4 is old and SGI may fix some bugs during the updating of their compiler.
Solution:
At configuration file IRIX.6.x, set the macro MPI_COMPLEX_DERIVED_DATATYPE to no. In that way, HDF5 library won't call derived datatype routine in the test.
Platforms tested:
modi4
Misc. update:
Bug fix
Description:
On some machines, $RUNSERIAL variable needs to be used to run
tests. Set $RUNTESTS (which is used for non-parallel tests) to
be $RUNSERIAL in configure.am.
Also, since I was updating all Makefiles.in anyway, I updated
commence.am to point to autotools installs in AFS instead of
those on heping.
Platforms tested:
mir, sleipnir, modi4, copper
Purpose:
"Bug fix"
Description:
Hardcoded Makefiles to use /bin/sh instead of letting configure
detect shell automatically. This is what v1.6 does, and avoids
problems on janus.
Platforms tested:
sleipnir, copper, modi4, mir
Purpose:
Added C++ wrapper for Packet Table API.
Description:
Added macro for high-level C++ library (LIBH5CPP_HL), which changes every
Makefile.in.
Added directories for high-level C++ library (though currently only Packet
Table API is supported).
Added both C++ source and tests.
Platforms tested:
sleipnir, mir, modi4
Misc. update:
Description: This commit is actually revision 1.155, which is the 3rd step of
changing conversion test. It's for conversion from floating-point to integer.
In this step, the source buffer is filled in with normalized and denormalized
floating-point values. For the normalized values, it starts from FLT(DBL, or
LDBL)_MIN, multiplied by 10(10000 for double, 100000000 for long double) for
the next value, until reaches to FLT_MAX. For denormalized values, the
exponent part is always 0. Mantissa part starts with 000...001, 000...011,
000...111, until reaches to 111...111. The same is with negative values.
There're also fixes in config/hpux11.00 for kelgia where default macro table
size wasn't big enough to handle the big macro in dtypes.c.
Platforms tested: h5committest and kelgia.
Hard code IBM platform so that the irregular collective IO won't call
MPI derived data type.
Description:
IBM MPI-IO has a bug for MPI derived data type.
Solution:
Platforms tested:
copper(AIX,mpcc_r) and heping(Linux, mpich)
Misc. update:
Automake version upgrade
Description:
Upgraded automake version from 1.6.2 to 1.9.5.
Changed bin/reconfigure script to use automake 1.9.5.
Changed configure.in and Makefiles to use new FCFLAGS and FC variables
instead of FFLAGS and F9X.
Automake and configure should now do the lion's share of the work
supporting Fortran 9X; macros in acsite.m4 are now mostly unused (will
be cleaned later).
Altered how configure handles pmake; now root-level Makefile.in is
processed by bin/reconfigure to have a .MAKEFLAGS target, since
automake no longer allows us to define unused variables.
Configure now always checks for C++ compiler even if it is not
used, since automake thinks this is the Right Thing To Do and
will break otherwise.
Platforms tested:
Sol, copper, heping, mir, sleipnir, eirene, pommier, kelgia, modi4.
Bug fix
Description:
This checkin addresses two bugs.
Firstly, I used the wrong semantics when detecting if $MAKE is defined to
the empty string or undefined.
Secondly, pmake on IRIX does not work well with automake's dependency tracking
if the build is not an in-place build.
Solution:
Fixed semantics in configure.in.
Disabled automatic dependency tracking automatically on IRIX. This is not
the optimal fix, but it should work fine as long as no one is doing HDF5
development on IRIX, and it is much easier than trying to detect the exact
situations in which dependency tracking fails (or than trying to fix dependency
tracking!).
Platforms tested:
heping, modi4 (pmake and gmake)
Bug fix
Description:
pmake (on modi4, for instance) complains about undefined variables
if it is run without the -V flag, which turns those errors to warnings.
Solution:
Added test to configure.in to see if $MAKE will allow Makefiles
with undefined variables. If not, sets -V flag in AM_MAKEFLAGS.
Ensured that all custom make targets use AM_MAKEFLAGS.
Also defined all variables that caused errors in top-level Makefile.am.
This means that pmake can be used to build hdf5 *from the top level
only*. To run make from a subdirectory, still need to use -V flag
(or use make or gmake).
Platforms tested:
modi4, heping, copper, sleipnir
Update port
Description:
Allow FreeBSD builds to use Intel C & F90 compilers (C++ is not working
yet on FreeBSD, so that'll come along later)
Platforms tested:
FreeBSD 4.11 (sleipnir) w/Intel C & F90 compilers
Does not affect other platforms...
Misc. update:
Bug fix
Description:
Found the permanant fix to automake/CVS dependency problem
Solution:
Added AM_MAINTAINER_MODE macro to configure.in.
Now automake will never try to regenerate Makefiles, Makefiles.in,
configure, H5config.h, etc. when they are out of date, nor will it
print any warnings.
Developers should be very very careful to use reconfigure script,
and can add --enable-maintainer-mode flag to configure on heping
to regenerate these files correctly.
Platforms tested:
heping sleipnir copper
Bug fix
Description:
Configuration files' timestamps were incorrect.
Solution:
Update Makefiles.in. Also added correct paths to autotools on heping,
so heping build should be able to re-generate configuration files even
if they are still broken.
Platforms tested:
sleipnir
Bug fix
Description:
Dependencies between configure files (aclocal, configure.in, configure,
Makefiles.am and .in) are still causing Makefiles to try to run autotools
during build.
Solution:
Committed all Makefiles.in to update their timestamps.
As a temporary measure, forcibly prevented automake from running
autotools during build by redefining the variables it uses.
Platforms tested:
sleipnir (No changes to Makefile content)
Bug fix
Description:
Different compilers use different flags to include Fortran module files
Solution:
Changed boilerplate to use configure variable rather than hardcoded -M flag.
Platforms tested:
sleipnir, sol, copper
Configuration feature
Description:
HDF5 now uses automake to generate Makefiles
Solution:
Makefile.in files are now generated from Makefile.am files.
To reconfigure (after chaning a Makefile.am or configure.in):
/bin/sh bin/reconfigure.sh
Platforms tested:
Many
Add a new configure shell script under /config to support configuration for cygwin.
Description:
Solution:
Platforms tested:
cygwin 1.5.11, VS 6.0 on windows xp, Linux 2.4 and sol 2.7.
Misc. update:
Bug fix
Description:
Fix detection of C++ compiler version number.
Platforms tested:
Solaris 2.7 (arabica) w/C++
Solaris 2.8 (sol) w/C++
Does not require h5committest
Description: The fix of the loss problem of the last 2 bytes of mantissa on sleipnir has
not been successful. It happens when converting from unsigned long long to long double.
The failure has been on and off.
Solution: Hard set a macro to disable unsigned long long->long double for FreeBSD until
a good solution is found to solve this elusive problem.
Platforms tested: sleipnir and fuss. Only sleipnir is concerned.
Misc. update:
Description: For HP-UX11.00, compiler's casting from 'long double' to most of
integers. A macro was hard set in config/hpux11.00 before.
Solution: Let configure detect this case and set the macro.
Platforms tested: kelgia, fuss, modi4. These systems are mainly concerned.
Description: For HP-UX 11.00, the compiler generates 'floating exception'
when converting 'long double' to most of integer types.
Solution: Define a macro for all other systems except HP-UX 11.00. Hard set
this macro to 'no' in config/hpux11.00 to skip this test for HP-UX 11.00.
Platforms tested: modi4, kelgia, fuss
Description: Start to support software conversion between long double and
all integers.
Solution: No major changes to the algorithm. Changes to configure is to
exclude SGI for long double to integers test because there're too many problems
in their compiler.
Platforms tested: h5committest, modi4, fuss, Teragrid, arabica
Misc. update: RELEASE.txt
Description: C++ build failed on kelgia. Binh-Minh fixed
it for 1.6 branch, I am bringing changes back to
1.7
Solution:
Platforms tested: kelgia
Misc. update:
Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-)
Description:
Generally speaking, this is the "signed->unsigned" change to selections.
However, in the process of merging code back, things got stickier and stickier
until I ended up doing a big "sync the two branches up" operation. So... I
brought back all the "infrastructure" fixes from the development branch to the
release branch (which I think were actually making some improvement in
performance) as well as fixed several bugs which had been fixed in one branch,
but not the other.
I've also tagged the repository before making this checkin with the label
"before_signed_unsigned_changes".
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel & fphdf5
FreeBSD 4.10 (sleipnir) w/threadsafe
FreeBSD 4.10 (sleipnir) w/backward compatibility
Solaris 2.7 (arabica) w/"purify options"
Solaris 2.8 (sol) w/FORTRAN & C++
AIX 5.x (copper) w/parallel & FORTRAN
IRIX64 6.5 (modi4) w/FORTRAN
Linux 2.4 (heping) w/FORTRAN & C++
Misc. update:
Description:
Changed -instances=global to -instances=static to avoid multiple
copies of template function verify_val.
Platforms tested:
SunOS 5.7 (arabica)
mpich 1.2.6 does not like the tweaking of using -O2 flag.
Comment out the Tweaking since it caused problems to mpich1.2.6.
Need to investigate the reasons and effects to tweak.
Platforms tested:
Tested in heping using mpich 1.2.6 and in eirene uisng mpich 1.2.6.
Port
Description:
Initial work for supporting GNU FORTRAN/F95 on FreeBSD. I think I've
got things mostly set up correctly, but I'm getting an internal compiler
error on one of the FORTRAN sources, so I'm not going to add this configuration
to the daily tests yet.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/GNU FORTRAN
Not tested in h5committest
Bug fix.
Description:
MIPSpro Compiler 7.4.x starts to support C99 features
but stdint.h has a "guard" in it that will #error if
cc is invoked without asking for C99 standard. But it
does not result with a non-zero compiler exit code, thus
configure thought it is okay to use header file stdint.h.
This causes problems later.
Solution:
Default to use the C99 compiler if available.
Platforms tested:
Tested in Sandia tesla machine which is a new SGI machine.
Improvement
Description:
Added strip option to PROD_CFLAGS to remove symbols for smaller
production file size.
Solution:
Platforms tested:
Misc. update:
Bug fix.
Description:
Last commit would impose $arch even if user has provided his own
$CFLAGS. Fixed it.
Removed the wording of gnu-flags inherited from the copy.
Platforms tested:
Tested in tg-ncsa.
Misc. update:
Bug fix.
Description:
Cache the gettimeofday_tz as yes.
Patches for conversion problems of Long Long, float, bottom bits, etc.
Platforms tested:
Tested in tflops only.
Misc. update:
Bug fix.
Description:
Restored correct setting of compilers (-Wall etc for debug flags
only, c99 by default,...) that were wiped out by the commits before.
Platforms tested:
Tested in TG-NCSA, both production and development mode.
(Still need to figure out the proper flag to use for Profile.)
Bug fix.
Description:
v8.0 -O3 infinite loops when compiling test/tselect.c. Use -O2.
Platforms tested:
Only tested in TG-NCSA, use both default and --disable-production options.