Bring r24101 & 24111 from trunk to 1.8 branch:
r24101:
=======
Description:
Clean up warnings, enable new compiler warning flag(s) and bring back
changes from Coverity branch:
r20813:
Remove the dead code as listed for coverity bug #1722. h5committested.
r20814:
Issue 69: Check return value and throw error if negative return. Also free datatype id on error
r20815:
Use HDstrncpy. --gh
r20816:
Replaced one last HDstrcat call with HDstrncat to resolve coverity issue 832.
r20817:
Use HDstrncpy and HDstrncat. --gh
r20818:
Purpose: Fix valgrind issues with h5jam
Description:
Modified h5jam to free strings strdup'd in parse_command_line before exit. Note
that they may still not be freed in case of error, due to the widespread use of
exit().
r20819:
Issue 80: change loop to use int as loop index.
r20820:
Maintenance: Fixed the bug found by coverity CID 788
There were two problems with this function:
1) it tried to unnecessary free NULL pointer
2) it tried to allocate c_name buffer that is done by H5Pget_class_name
r24111:
=======
Description:
Restrict GCC diagnostic pragmas to only gcc 4.6+
Tested on:
Mac OSX 10.8.4 (amazon) w/gcc 4.8.1, C++ & FORTRAN
(too minor to require h5committest)
The new gcc v4.8.* compilers does not work well with dt_arith which failed
in production mode.
Solution:
A temporary patch by removing any optimization (-O*) from the PROD_CFLAGS
so that dt_arith will pass for now. A more through investigation is needed.
Tested: Jam, platypus and Koala where it failed and now passes.
Need to update libtool version number for v1.8.11 since two functions,
H5Pget_dxpl_multi and H5Pset_dxpl_multi were removed. Then v1.8 is now
v1.8.12-xxx and needed an update to.
config/lt_vers.am:
libtool information is changed to 8.0.1 because it is a revision
different from v1.8.10.
configure:
src/Makefile.in:
hl/src/Makefile.in:
hl/c++/src/Makefile.in:
hl/fortran/src/Makefile.in:
c++/src/Makefile.in:
fortran/src/Makefile.in:
README.txt:
autogenerated by bin/reconfiure.
Tested: h5committest, then visual inspect that the libhdf5.so.x.y.z is
changed accordingly.
Built in duck by hand and see it changes to libhdf5.8.dylib too.
Use Clang as the compiler for the Mac platform.
Changed all Mac to use clang/clang++ as the default C and CXX compilers if
not provided by the user. Still use gfortran as the default fortran
compiler since Apple does not provide any fortran compiler.
HDFFV-8245: bug fix. Snow Leopard (darwin 10.X) does not have clang++.
Reversed it to use gcc/g++ as the default C and CXX compilers for Darwin 10.X
systems.
Tested: h5committest plus duck (darwin 11), wren (darwin 12) and fred
(darwin 10).
Merged 23111 from the trunk.
(Core VFD and Mac OS X I/O changes)
Tested on:
64-bit Windows 7, Visual Studio 2010, CMake
64-bit Mac OS X Snow Leopard (Fred), Fortran, C++
64-bit BE Linux (Ostrich), Fortran, C++
32-bit LE LInux (jam), Fortran, C++ (also parallel w/ Fortran)
dt_arith would fail in Lion and Mountain Lion system when GCC version 4.2.1
is used with --enable-production. Somehow the -O optimization will fail some of
the hard conversion code.
Solution:
This is just a temporary patch by detecting if this is a Lion or Mountain Lion
system using GCC 4.2.1, then just remove the any -O option from the PROD_CFLAGS.
A better fix should be deviced later.
Tested: Duck(lion) and Owl (mountain lion) tested with --enable-production.
Also tested in Fred and Tejeda, both Snow Leopard systems to verify there is
no undesired side effect.
Description: The Fortran compiler flags were all set to "-O". They should be
different setting for different situations. E.g, "-g" for debug and
"-pg" for profile, etc.
Fix: set them to appropriate different values.
Tested: in Remote ADA AIX machines using 3 different settings:
configure --enable-fortran --enable-cxx # default to --disable-production
configure --enable-fortran --enable-cxx --enable-production
configure --enable-fortran --enable-cxx --disable-production
Convert configure.in to configure.ac.
Align TESTS usage with autotools convention.
Update all references from configure.in to configure.ac
Tested: h5committest