The current implementation for Mac OSX platform is a kludge that sometimes left behind mounted volumes.
Temporary screen out the checking of installtion_check step (so that daily test may pass).
Tested: by hand running cmakehdf5 in platypus and osx1010test.
installation.
Tried to find out what went wrong but all output files were deleted already.
Added a verbose option to display all cmake process output in order to see what
might have gone wrong. Default is on.
Using --disable-verbose will turn it off.
Tested: osx1010dev, osx1010test, playtypus.
This was giving a lot of users headaches and the parser code rarely
changes. There is now a new script (bin/genparser) which can be
run as needed.
Tested on: Ubuntu 15.10 (x86_64 Linux 4.2.0)
gcc 5.2.1, flex 2.5.39, bison 3.0.2
r27860-27883
r27892-27916
Tested on: - h5committest
- jam (parallel) fails with an existing, unrelated MPI config error
- platypus fails with due to an existing, unrelated cmakehdf5 error
where it does not recognize --enable-fortran2003.
Removes .pl extension from Perl scripts. This may be returned in the future,
but it's best to keep the script names unchanged while we merge with the
trunk.
Tested on: h5committest
The only remaining code consists of a few floating-point tests
that rely on pre-generated and checked-in VMS files. These have
been left alone, even though they will not be possible to
recreate, since testing VMS float behavior is still important.
Tested on: h5committest
Tested w/ h5committest
NOTES: - The manifest may still be messed up.
- Cmake fails since the dual binary work needs to be merged with
this repo's CMake externals.
The configure summary (libhdf5.settings) was missing from the configure output.
Solution:
Append the configure summary to the configure logfile if configure succeeds.
Tested:
hand ran cmakehdf5 in jam and inspected the logfile.
configure.ac
hl/src/H5LTparse.c
hl/src/H5LTparse.h
Address HDFFV-9010: configure issue with gcc 4.9.2 "-l ".
Change default to disable_shared on CYGWIN.
release_docs/INSTALL_Cygwin.txt
release_docs/RELEASE.txt
Update for changed default and no CYGWIN szip binary.
c++/src/cpp_doc_config
bin/h5vers
AddressHDFFV-9010: Add cpp_doc_config to h5vers
Tested with h5committest, on CYGWIN.
That broke the testings as some testfiles have zlib compressed datasets.
Added options control to enable the linking of zlib external libarary by
default and turn off the szip library linking as szip library may not be
avaiable. This matches the established settings.
Tested: run cmakehdf5 by hand in jam and platypus.
Also tested in wren but it failed in the testing stage.
Also tried "cmakehdf5 --script" in jam. It failed.
columns that are output by svn stat.
Previously, the script assumed that they would all be blank for newly-
added files. This is not always true when merging.
Part of: HDFFV-8895
Tested on: jam (bin/chkmanifest only)
calls that use a FUNC_ENTER macro that does not include parentheses.
This does not affect any source code at this time.
Part of: HDFFV-9141
Tested on: jam (bin/trace behavior only)
Updates the bin/chkmanifest script so that it parses the output
of svn commands instead of hacking at the .svn/entries file. This
will make the script more future-proof and allows it to work with
current Subversion repositories.
Tested on: jam (bin/chkmanifest only)
bin/genltanalyze script, which has been deleted. Also removed the
generated hl/src/H5LTparse.c/h and H5LTanalyze.c files.
Part of: HDFFV-9120
Tested on: Local Ubuntu VM
- Modified autogen.sh to run libtoolize.
NOTE: OS-X often uses glibtoolize. This will be fixed soon.
- Addational helpful output added to autogen.sh.
Part of HDFFV-9120
Tested on: 64-bit Linux VM
Fix cmakehdf5 so that it can figure out where the source directory is.
It expects cmakehdf5 itself resides at $srcdir/bin/cmamkehdf5.
Tested: Jam by invoking cmakehdf4 with different paths.
different language API's and testings. See "cmakehdf5 --help" for details.
Tested: jam using different combinations of option and verified correctness
by inspeacting libhdf5.settings output.
Merge 64-bit ID changes from branch to trunk. (Plus a few minor cleanups
that aren't on the branch)
Tested on:
Mac OSX/64 10.9.4 (amazon) w/C++ & FORTRAN
(h5committested on branch already for a week)
The temporary directory used by zip is the same as the rest but it has to be different.
Changed tar2zip to use a different (ztmpdir) name.
Tested: by hand running "bin/release ... gzip zip md5".
Need to unify Windows release process (zip file) and Unix release process (bin/release-> tarfile)
Solution:
Added a new option (zip) to generate Windows zip file from the release tarball.
Tested: by hand running "bin/release ... gzip zip" to verify zip file looks right.
Allen and Dana then confirmed the zip file can be used to build and test HDF5
library without error.
Remove all traces of MPI-POSIX VFD and GPFS detection/code.
Remove remaining traces of stream VFD.
Remove testpar/t_posix_compliant test (it's not actually verifying anything).
Clean up H5D__mpio_opt_possible() further.
Moved environment variable that disables MPI collective operations into
MPI-IO VFD (instead of it being in src/H5S.c).
A few other small code cleanups.
Tested on:
Mac OSX/64 10.9.2 (amazon) w/parallel & serial
Changed to use the quick steps described in INSTALL_CMake.txt.
Previous version is available by --old.
Added a help page to explain how to use.
Added a fix to figure out the current HDF5 version and use that to find the
correct file for install. (Still need to figure out the platform name.)
Tested: Jam and Koala
The h5dump tests only looked at headers and never the data. Data reads would fail with invalid number of params (7 expected 20).
Regenerated file and replacement ddls updated.
New h5dump test will be added to read the data.
Clean up warnings, switch library code to use Standard C/POSIX wrapper
macros, remove internal calls to API routines, update checkapi and checkposix
scripts.
Tested on:
Mac OSX/64 10.8.3 (amazon) w/C++ & FORTRAN
Big-Endian Linux/64 (ostrich)
Bring changes from Coverity branch to the trunk:
r20612:
Changed string functions to versions with string length to fix coverity issues
922, 942 and 943.
r20614:
Use HDsnprintf. --gh
r20675:
Fix for coverity #1714 due to the fix for #810.
Use HDfree() instead of H5MM_xfree().
r20678:
Repaired coverity issue #598 -- failure to check return value from a
call to fstat(), or to tidy up in the event of failure.
r20679:
Use HDstrncpy. --gh
r20681:
Use HDstrncat and HDstrncpy. --gh
Tested on:
Mac OSX/64 10.8.2 (amazon) w/Debug, etc.
(too minor to require h5committest)
Description:
Adds 2 new API functions, H5Dscatter and H5Dgather. H5Dscatter retrieves data
from a specified callback function and scatters it into a selection, defined by
a supplied dataspace, within a supplied memory buffer. H5Dgather gathers data
from a selection within a supplied memory buffer and passes it in a contiguous
form to a supplied callback function. Added tests for these functions
Tested: jam, ostrich, koala (h5committest); ummon
to the standout. This keeps command output terse and easier to tell if it
passes or not.
Added time stamps printing.
Added exit code and command executation summary.
All these will make it easier for user to tell if the command succeeds or not.
Tested: {jam,koala,ostrich} all passed. {Linew,fred,duck,owl} failed.
The failure is the cmake process, not cmakehdf5 itself.
HDFFV-8143 Provide a routine(s) for telling the user why the library broke collective data access
Description:
Added H5Pget_mpio_no_collective_cause() function that retrive reasons why the collective I/O was broken during Read/Write IO access.
Reasons to break collective I/O:
- SET_INDEPENDENT
- DATATYPE_CONVERSION
- DATA_TRANSFORMS
- MPIPOSIX
- NOT_SIMPLE_OR_SCALAR_DATASPACES (NULL Space)
- POINT_SELECTIONS
- NOT_CONTIGUOUS_OR_CHUNKED_DATASET (Compact or External-Storage)
- FILTERS
Tested:
jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
Tweak make_vers script so that it indents preprocessor commands inside
#ifdefs, is more forgiving and informative about the input file's prefix, and
is better parameterized with the global variables at the beginning of the
script. When major versions are branched from the trunk, the $max_idx value
should be the only value that needs to be changed in the version of the script
on the trunk.
Changes to H5version.h file are just indention.
Tested on:
Mac OS X/32 10.6.8 (amazon)
(too minor to require h5committest)
Test scripts sometimes need to filter some system-specific messages from the
actual output so that it can match the correct expected output. These filtering
functions, ususally called "STDOUT_FILTER()" and "STDERR_FILTER()" were being
repeated in individual test scripts. This becomes a maintenance problem and
is error prone.
Solution:
Extract the two filter functions code to bin/output_filter.sh and then each
test script sources it in. This allows reuse of coding and is much easier to
maintain and to add new filtering.
Tested:
LLNL Zeus (linux64 cluster) and Dawndev (Blue-Gene cluster), both for serial
mode only.
--This line, and those below, will be ignored--
M tools/misc/testh5mkgrp.sh
M tools/h5dump/testh5dump.sh.in
M tools/h5diff/testh5diff.sh
M tools/h5copy/testh5copy.sh
M tools/h5ls/testh5ls.sh.in
M MANIFEST
A bin/output_filter.sh
Teach the tracing script & routines about the 'unsigned long' and
'unsigned long long' types, so that the H5Pset_fapl_log() API routine gets
tracing information correct.
Tested on:
FreeBSD/32 6.3 (duty) in debug mode
FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode
FreeBSD/64 8.2 (freedom) w/gcc4.6, w/C++ & FORTRAN, in debug mode
Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
w/C++ & FORTRAN, w/threadsafe, in debug mode
Linux/64-amd64 2.6 (koala) w/Intel compilers, w/default API=1.6.x,
w/C++ & FORTRAN, in production mode
Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
w/szip filter, w/threadsafe, in production mode
Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
in production mode
Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
Mac OS X/32 10.6.6 (amazon) in debug mode
Mac OS X/32 10.6.6 (amazon) w/C++ & FORTRAN, w/threadsafe,
in production mode
Mac OS X/32 10.6.6 (amazon) w/parallel, in debug mode
The content of bin/config_para_ibm_sp.sh has been added to
release_docs/INSTALL_parallel long ago. Just got around to remove it.
Tested: no need since nothing refer to config_para_ibm_sp.sh except MANIFEST.
Ran bin/chkmanifest.
Description:
In an AIX 6.1 system, configure --enable-shared could not build a shared
HDF5 library. The problem was because the version of config.guess was too
old to recongnize AIX 6.X and also configure.in had a local fix which did
not recognize AIX 6.X.
Solution:
1. Mike McGreevy updated bin/config.guess to handle AIX 6.X.
2 Albert fixed configure.in to recognize AIX 6.X.
Note that though HDF5 can build shared lib for AIX 6.X systems
but it still could not install the proper library as in AIX 5.X
systems. Also, bin/config.sub should be updated too.
Tested: BP which is the AIX 6.1 system that exposed this problem.
Cleaned up the code a bit by:
1. It used to that -xxx options must be at the beginning such that
"buildhdf5 --disable-shared -config" was an error. Now -xxx options
can appear anywhere in the command options.
2. Eliminate the need of variables $CONFIG_CXX, $CONFIG_FORTRAN,
$CONFIG_PARALLEL by appending their values to $CONFIG_OP directly.
3. Also append $WITH_SZLIB to $CONFIG_OP when it is defined, not later.
4. Call CONFIG directly instead of setting up $CONFIGURE.
5. Removed the last TIMESTAMP since "trap 0" will call QUIT which calls
TIMESTAMP already. This eliminated the extra timestamp when it finishes
normal.
tested:
Tested by hand since h5committest does not really test this command.
Autotool Upgrade / Libtool Bug Fix
Description:
Updated autotools referenced in bin/reconfigure as follows:
Autoconf 2.64 --> Autoconf 2.65
Automake 1.11 --> Automake 1.11.1
Libtool 2.2.6a --> Libtool 2.2.6b-mcg
The referenced libtool version is a custom version of 2.2.6b. It
has been tweaked to fix a bug in libtool that occurs
when using PGI 10.0 compilers. A check incorrectly categorizes
the C++ compiler as version 1.0 instead of 10.0, and the link
line is subsequently set up incorrectly and fails to compile.
A patch has been made available and will be included in the next
release of libtool, but in the meantime I've applied the patch to a custom
installation as indicated above. This bin/reconfigure now references
the custom installation, and the resulting configure script will correctly
categorize the PGI 10.0 C++ compiler.
Ran bin/reconfigure to regenerate configure and makefiles.
Tested:
jam and amani with PGI 10.0 compilers.
h5committest
Bring changes from file free space branch back to the trunk. *yay!*
Tested on:
FreeBSD/32 6.3 (duty) in debug mode
FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
w/C++ & FORTRAN, w/threadsafe, in debug mode
Linux/64-amd64 2.6 (smirom) w/Intel compilers, w/default API=1.6.x,
w/C++ & FORTRAN, in production mode
Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
w/szip filter, in production mode
Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
in production mode
Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
Mac OS X/32 10.5.8 (amazon) in debug mode
Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
in production mode