Commit Graph

191 Commits

Author SHA1 Message Date
Quincey Koziol
d6e767c21d [svn-r14402] Description:
Add work-around to allow reading files that were produced with a buggy
earlier version of the library, which could create objects with the wrong
object header message count.  There is now a configure flag
"--enable-strict-format-checks" which triggers a failure on reading a file
with this sort of corruption (when enabled) and allows the object to be read
(when disabled).  The default value for the "strict-format-checks" flag is
yes when the "debug" flag is enabled and no when the "debug" flag is disabled.

	Note that if strict format checks are disabled (allowing objects with
this particular kind of corruption to be read) and the file is opened with
write access, the library will re-write the object header for the corrupt
object with the correct # of object header messages.

	This closes bugzilla bug #1010.

Tested on:
        FreeBSD/32 6.2 (duty) in debug mode
        FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Mac OS X/32 10.4.10 (amazon) in debug mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
2008-01-13 00:37:00 -05:00
Elena Pourmal
98fb2db938 [svn-r14340] Maintenance for VMS system:
Skip one of the tests in flush2.c since it looks like VMS system
		flsuhes the file anyway (like on Winodws with DLLs)

		Renamed files family*.h5 that are used in backward compatibility
		testing to have only one '.' in a file name, otherwise VMS system
		becomes confused and test fails.

		Cleaned up the only test (Fortran multi-file test) that is failing on 
		VMS (C counterpart passesa).

		Added new script to facilitate the build process on VMS
		Updated MANIFEST

PLatforms tested: VMS server, kagiso and linew (minor changes)
2007-12-13 13:17:02 -05:00
Quincey Koziol
68c01f91d9 [svn-r14154] Description:
Finish deprecating last H5G symbol (H5G_obj_t) - yay!

	Lots of misc. library fixes to remove confusion between links and
objects.  The tools could still use another pass, to remove h5trav_type_t type
and make the correct distinction between links & objects.

Tested on:
        FreeBSD/32 6.2 (duty) in debug mode
        FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64 2.6 (smirom) 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
        AIX/32 5.3 (copper) w/FORTRAN, w/parallel, in production mode
        Mac OS X/32 10.4.10 (amazon) in debug mode
2007-09-25 17:18:33 -05:00
Scott Wegner
20be26bdc6 [svn-r14057] Purpose: Fixes for 64-bit Windows Intel Fortran 9.1
Description:

We are porting Fortran to 64-bit Windows, and need to make many syntactical changes to bring the code up to date.  We now go back to using "!DEC$" rather than "!MS$" in our "ATTRIBUTE" code.  Also, the naming conventions for mixed language is inconsistent from 32- to 64- bit Windows.  To make up with this, we use the "decorate" flag.  We also needed to change the "calling convention" in project settings from "CVF" to "default".

Also other minor cleanups on project files.

Tested:
32-bit: VS.NET and VS2005
64-bit: VS2005
2007-08-09 09:04:05 -05:00
Quincey Koziol
b566d21649 [svn-r13972] Description:
Add --with-default-api-version configure flag.

Tested on:
	Mac OS X/32 10.4.10 (amazon)
	FreeBSD/32 6.2 (duty)
	Linux/32 2.6 (kagiso)
2007-07-12 21:42:17 -05:00
Quincey Koziol
b4e029c70b [svn-r13971] Description:
Add --enable-deprecated-symbols configure option, to allow users to
remove deprecated public API symbols at configure time.

	Add bin/make_vers script to bin/reconfigure actions.

	Run bin/reconfigure to regenerate autotool components.

Tested on:
	Mac OS X/32 10.4.10 (amazon)
	FreeBSD/32 6.2 (duty)
	Linux/32 2.6 (kagiso)
2007-07-12 17:01:35 -05:00
Mike McGreevy
1d7e8f9dee [svn-r13928] Purpose: 1) Moving H5_CXX_HAVE_OFFSETOF macro to src/H5pubconf.h file.
2) Removing configuration of c++/src/H5cxx_pubconf.h file.

Reasoning: the additional pubconf file caused compilation complications, this is cleaner.

Tested:  kagiso, smirom
2007-06-29 15:52:56 -05:00
Mike McGreevy
58467956ba [svn-r13925] Purpose: intermediate checkin for offsetof fix for PGI compiler.
Description: added new configuration to generate a pubconf file
             in the c++/src directory, H5cxx_pubconf.h. When C++
             compiler recognizes 'offsetof', the macro 
             H5_CXX_HAVE_OFFSETOF is defined in the new
             pubconf file.

tested: kagiso, smirom
2007-06-28 15:36:08 -05:00
Mike McGreevy
9d5336acb2 [svn-r13846] Purpose: To remove changes from version #13839 (regarding DEFAULT_VFD).
Description: Changes made during this checkin need to be greatly
             modified, so I'm removing them now rather than leaving them
             in and fixing them later.
2007-06-08 08:12:13 -05:00
Mike McGreevy
58c565aee7 [svn-r13839] Purpose: creation of a DEFAULT_VFD macro in the test/Makefile.
Description:   a new configure flag has been created that will now set a macro
               in the test/Makefile. The flag is with-default-vfd=. When set to
               a virtual file driver (e.g. "--with-default-vfd=sec2"), the macro
               DEFAULT_VFD will hold this value.

Tested:        kagiso, smirom, linew
2007-06-07 16:42:40 -05:00
Raymond Lu
1280f90f81 [svn-r13829] Some systems (only SGI Altix ProPack 4 discovered so far) doesn't return correct
file size from MPI_File_get_size.  Bypass this problem by replacing it with
stat.  Add an option --disable-mpi-size in configure to indicate this function
doesn't work properly.  Add a test in testpar/t_mpi.c, too.  If it returns wrong
file size, print out a warning.

Tested on kagiso (parallel) because already tested the same change to v1.6 on 
several platforms (kagiso, cobalt, copper, and sol).
2007-06-02 13:19:36 -05:00
Quincey Koziol
b73e0ae8e7 [svn-r13815] Description:
Regenerate configuration files after latest checkin
2007-05-29 15:06:49 -05:00
Mike McGreevy
a3d8f174dc [svn-r13616] This check-in updates the bin/reconfigure file to point to the most recent versions of the autotools.
Updated autotool versions are: autoconf 2.61, automake 1.10.0, and libtool 1.5.22.

Tested on kagiso.
2007-04-09 13:44:42 -05:00
James Laird
b94776f418 [svn-r13418] Cleaned up some old paths in config/commence.am and removed some comments in the
template file config/Makefile.am.blank.

This is just a cleanup checkin.  Tested on kagiso.
2007-02-27 12:26:25 -05:00
James Laird
0d86163705 [svn-r13379] Added 'make help' target. This actually runs a script, bin/makehelp (formatting
the output in the makefile was pretty hard).

Tested that make still works on kagiso; no code changes at all.
2007-02-23 14:14:11 -05:00
Elena Pourmal
2468b8aa1c [svn-r13374] Enabled multi-file driver test since it was fixed in C library
Platforms tested: kagiso, smirom, linew
2007-02-21 17:33:52 -05:00
Albert Cheng
1b98fd4dbe [svn-r13365] Bug fix.
Description: Multiple copies of Copyright appeared in Makefile.in.  This was
due to automake copying the copyright right in the included files such as
config/commence.am.

Solution: Automake treats double hashes as comments and does not copy them
to Makefile.in.  Changed all the copyright notices in config/*.am to use
double hashes for the Copyright right notice.

Tested: kagiso via bin/reconfigure.
2007-02-21 10:43:35 -05:00
James Laird
c64266b78e [svn-r13359] Fixed a bug where the -shlib flag for h5cc would end up on the Dependency line
in the Makefile.

Makefile change only.  Tested on kagiso, to be used to test on cobalt.
2007-02-20 18:39:44 -05:00
Albert Cheng
a7cac4a194 [svn-r13264] Updated Makefile.am with new THG copyright notice.
Ran reconfigure to generate the Makefile.in files.
2007-02-07 17:28:58 -05:00
Albert Cheng
42f1acfcd7 [svn-r13256] Updated fortran source code with new THG copyright.
Tested: kagiso.
2007-02-07 12:55:01 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
James Laird
59eccdaf69 [svn-r13181] Added a configure check to prevent a failure on Cygwin.
It seems that while Cygwin supports the time command, it has trouble with
the syntax
srcdir="../../hdf5/test" time ./testhdf5
and complains.
The solution is to test the above case in configure and not to use the time
command if it fails; Cygwin is fine with
srcdir="../../hdf5/test"  ./testhdf5

Tested on Cygwin and kagiso.  This feature shouldn't be a major compatibility
problem since every platform but Cygwin is already fine with the current
syntax.
2007-01-23 12:29:45 -05:00
James Laird
6b5a918b1e [svn-r12929] Hopefully this really is a fix for the tg-login errors.
The version of libtool used by HDF5 isn't directly affected by the reconfigure
script; instead, libtoolize --force must be used by hand.  Libtool was the
source of the problem, so rolling its version back to 1.5.14 should solve the
issue (at least temporarily).

Reconfigure should still work on both heping and kagiso.

Tested on heping, kagiso, and tg-login3.
2006-11-16 15:44:35 -05:00
James Laird
a9397f3f51 [svn-r12911] Backed up to previous versions of automake and libtool. Hopefully this will fix
issues on tg-login3.

bin/reconfigure should still work on both heping/mir and kagiso.
2006-11-14 11:15:07 -05:00
James Laird
911e79b273 [svn-r12887] A fix for linking issues.
Should disable linking against shared libraries in Fortran for compilers that
don't support shared libraries.

Should also fix problem when the wrong Fortran file extension was specified.

If these changes don't solve the Daily Test issues, I'll look at backing out
the autotool version change until I have time to fix them.

Tested on heping, kagiso, juniper.
2006-11-10 14:56:04 -05:00
James Laird
a9350e86f0 [svn-r12882] Changed bin/reconfigure to work on kagiso as well as on AFS Linux machines.
Updated to the latest versions of autotools.

Tested on kagiso, heping, and juniper.  Let me know if you have any problems.
2006-11-08 13:39:15 -05:00
Elena Pourmal
ef778326fd [svn-r12778] Multi file driver test fails.
Skipped until fix is found.

Tested on heping with pgf90.

Note:  Logic was wrong; as a result, the test was bypassed for all 
compilers except those (like Intel) that understand !DEC compiler directive. 

I confirmed that the test fails on heping with pgf90. The symptoms are the same:
1.6.5 h5dump can read multi files created by fortran test, 
but built h5dump fails with internal error.

 --This line, and those below, will be ignored--

M    test/fortranlib_test.f90
2006-10-18 21:07:16 -05:00
James Laird
de383a7edf [svn-r12741] Added support for direct I/O to check-vfd. The direct VFD is only tested
if it is enabled.

Added Direct VFD status to the configure summary.

Removed a line left over from pablo support.  Oops!
2006-10-10 15:47:24 -05:00
James Laird
e5f0444b3a [svn-r12715] Incorporated a user-submitted patch to better detect the 'tr' utility
and quote its arguments.  Also checks for the 'socket' library on
Solaris.

If this patch passes the Daily Tests and makes the user happy, I'll
port it back to the 1.6 branch.

Tested on mir and sol.
2006-10-03 17:41:34 -05:00
Quincey Koziol
a6f6462541 [svn-r12700] Alert:
File format is not stable, don't keep files produced!

Description:
    First stage of checkins modifying the format of groups to support creation
order.  Implement "dense" storage for links in groups.

    Try to clarify some of the symbols for the H5L API.

    Add the H5Pset_latest_format() flag for FAPLs, to choose to use the newest
file format options (including "dense" link storage in groups)

    Add the H5Pset_track_creation_order() flag for GCPLs, to enable creation
order tracking in groups (although no index on creation order yet).

    Remove --enable-group-revision configure flag, as file format issues are
now handled in a backwardly/forwardly compatible way.

    Clean up lots of compiler warnings and other minor formatting issues.

Tested on:
    FreeBSD/32 4.11 (sleipnir) w/threadsafe
    Linux/32 2.4 (heping) w/FORTRAN & C++
    Linux/64 2.4 (mir) w/enable-v1.6 compa
    Mac OSX/32 10.4.8 (amazon)
    AIX 5.3 (copper) w/parallel & FORTRAN
2006-10-02 05:24:03 -05:00
James Laird
9d4229713e [svn-r12608] Checked in External Link C examples.
Since these examples need to follow filesystem paths, the Makefiles need
to create directories in the examples directory; added this to the
Makefile.am.

Tested on Windows, mir, juniper
2006-08-22 11:22:43 -05:00
James Laird
e5bc52d890 [svn-r12584] Mentioned VFD in test output to make it easier to tell which VFD is being used
when a test is run.

Running reconfigure also regenerated error header files (because someone edited
them manually?).
2006-08-17 09:18:03 -05:00
James Laird
beb04ae817 [svn-r12519] Fixed "make check-vfd"
"make check-vfd" will now run all tests in the test directory with different
file drivers (at least, all of those tests that use the testing framework's
FAPL).  Tests that fail will be skipped.

This is not a perfect fix, but is better than nothing.

Along with this change, check-vfd should be added to the Daily Tests.
2006-07-31 14:46:16 -05:00
Quincey Koziol
7be3afb278 [svn-r12440] Purpose:
Code cleanup

Description:
    Trim trailing whitespace in Makefile.am and C/C++ source files to make
diffing changes easier.

Platforms tested:
    None necessary, whitespace only change
2006-06-27 09:45:06 -05:00
James Laird
64b5d95251 [svn-r12431] Purpose:
Configuration feature

Description:
'make install' now tests both static and shared libraries if both are installed.

Solution:
Previously, shared libraries were only tested when static libraries were not installed.
Also cleaned up line in commence.am that was including HL library in all Makefiles.

Platforms tested:
mir (Makefile change only)
2006-06-21 18:15:08 -05:00
James Laird
a31e264f89 [svn-r12411] Purpose:
Bug fix - bugzilla #552

Description:
On Cray X1, trying to use : as an argument confused the system.

Solution:
Added a test in configure to see if : as an argument is bad.
If so, skipped the test.

Platforms tested:
mir, Cray X1 (change to configure only)
2006-06-13 16:21:14 -05:00
Albert Cheng
56c0a0f993 [svn-r12358] Purpose:
Bug fix.

Description:
The ${TR}, though avoid the error, is inconvenient.  It is needed
because configure.in use the char range in the style of 'a-z'.
The other style of '[a-z]' is more commonly accepted by all tr
but autoconf tends to strip away [], making the syntax rather
clumsy.

Solution:
Learned from autoconf that it avoids the use of character range
by just spell all the letters out.  Changed our tr commands to
use those variables defined by autoconf.  Also removed the
definition of ${TR} since it will cause inconsistancy when
autoconf also use plain 'tr' in its generated code.

The Makefile.in are changed because the elimination of ${TR} from
configure triggered its removal from all Makefil.in.  That is okay
because ${TR} is not used at all in Makefile.

Platforms tested:
h5committested. (sol failed to connected). also tested in shanti
using both /usr/ucb/tr and /bin/tr (the bad one before.)

Misc. update:
Updated both INSTALL and RELEASE files.
2006-05-19 07:22:07 -05:00
Elena Pourmal
0742585e9a [svn-r12347] Purpose: Maintenance/bug fix
Description: When --enable-group-revision flag was used, h5fget_filesize_f
             function returned different value from expected one. Test failed
             with false negative result.


Solution: Added Fortran function h5_group_revision_f and its
          C stub to check if macro H5_GROUP_REVISION is defined.
          Expected value from h5fget_filesize_f is set up accordingly.

Platforms tested: copper, shanti and heping with and without
                  --enable-group-revision configuration flag

Misc. update:
2006-05-13 19:43:58 -05:00
James Laird
91e56dc68d [svn-r12295] Purpose:
Several bug fixes

Description:
Added config file for Cray X1 (previous file was misnamed)
Simplified some code in hyperslab.c test that seemed to have been
confusing compiler on Cray X1.
Fixed typo in config/commence.am
Cleaned up hl/src/Makefile.am

Solution:
All four fixes should be straightforward.  The failure on Cray was
very difficult to debug, but involved arithmetic errors.
This change seems to fix it.

Platforms tested:
heping, copper, sol, some Cray X1 (more testing when system comes back up)
2006-04-21 14:21:24 -05:00
Elena Pourmal
3ee41cba29 [svn-r12251] Purpose: Maintenance
Description: file_close and multi driver tests fail on VMS.

Solution: IFDEF'ed them for now with !DEC directive.

Platforms tested: VMS server, heping

Misc. update:
2006-04-14 16:33:35 -05:00
Pedro Vicente Nunes
bc66efc788 [svn-r12229] Purpose:
new feature

Description:
1) separated the HL library into "public" and "private" header files, with the same caracteristics as the basic library
2) added the public headers to hdf5.h (with a conditional include macro, defined in configure.in)
3) added the path to HL in all Makefile.am 's , because of the inclusion in hdf5.h

Solution:

Platforms tested:
linux 32, 64
AIX
solaris
with fortran and c++

(one packet table example fails)

Misc. update:
2006-04-12 16:21:38 -05:00
Quincey Koziol
1267f5408e [svn-r12217] Purpose:
Code cleanup

Description:
    Tweak fortran test for alpha release to check for different file size
(a size difference between the compact & "old" dense form).

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4 32-bit (heping)
    Linux 2.4 64-bit (mir)
    Solaris 2.9 (shanti)


Misc. update:
2006-04-09 21:46:40 -05:00
James Laird
93aa12407f [svn-r12149] Purpose:
Bug fix

Description:
Previous checkin did a bad thing; 'make clean' failed in example directories.

Solution:
Fixed commence.am so that examples no longer break, and fixed a mistake
in conclude.am.

Platforms tested:
heping (minor makefile change)

Misc. update:
2006-03-23 16:26:17 -05:00
James Laird
524d25498f [svn-r12143] Purpose:
Bug fix

Description:
make check-clean didn't clean results of example tests

Solution:
Fixed Makefiles so that check-clean recurses into example directories.
Also a little Makefile cleanup.

Platforms tested:
mir, modi4, heping, copper
2006-03-23 09:22:34 -05:00
Quincey Koziol
8d344f96bc [svn-r11758] Purpose:
New feature

Description:
    Add in a combination of Peter's & my code to support copying
variable-length data from one file to another, although currently only
supported with contiguous data storage.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    h5committest
2005-12-03 21:27:37 -05:00
James Laird
0f870b0f47 [svn-r11741] Purpose:
Bug fix

Description:
Fortran type generation was broken in two ways.  Fixed both.

Solution:
Firstly, there were a couple of path problems.  Fixed a typo and
specified the full path of a file.
Secondly, the dependencies weren't right when building with HDF5-specific
commands (make lib, make check-s, etc.).  Tweaked dependencies
to fix the problem.

Platforms tested:
mir, modi4, sleipnir
2005-11-18 15:31:53 -05:00
James Laird
4f8ca8e026 [svn-r11738] Purpose:
Configure feature

Description:
Added 'make trace' target.

Solution:
Added tracing to 1.7.  This was done automatically in 1.6, but left out
of 1.7 until now (oops!).
Tracing in 1.7 only happens manually, when the user types 'make trace.'
Tracing automatically requires more framework than it's worth.
I also fixed a couple of tracing bugs and ran trace.

Platforms tested:
mir, sleipnir, modi4

Misc. update:
2005-11-18 10:55:22 -05:00
James Laird
75ea10e5f5 [svn-r11737] Purpose:
Bug fix

Description:
Before this checkin, 'gmake check-s' would fail if there was a file in
the current directory named 'check-s'.
This is fixed under gmake (not sure how to fix for other makes).

Solution:
check, progs, install, etc. are what gmake calls "phony" targets,
which means that no file should be created.  These targets can be
specified by a line of the form
.PHONY: check progs install ...
Automake adds this line for targets it knows about, but HDF5 has a
lot of custom rules.  This checkin adds a .PHONY line for those rules.
I believe that only gmake recognizes the .PHONY line (at least, pmake
doesn't seem to), but a partial solution is better than none.
This error should occur very rarely anyway (the user has to manually
create files with names like 'build-check-s' or '_test').

Platforms tested:
mir, sleipnir, modi4
2005-11-17 13:49:28 -05:00
Quincey Koziol
a1708eb023 [svn-r11712] Purpose:
New feature

Description:
    Check in baseline for compact group revisions, which radically revises the
source code for managing groups and object headers.

WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!
WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!

    This initiates the "unstable" phase of the 1.7.x branch, leading up
to the 1.8.0 release.  Please test this code, but do _NOT_ keep files created
with it - the format will change again before the release and you will not
be able to read your old files!!!

WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!
WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!  WARNING!!!!


Solution:
    There's too many changes to really describe them all, but some of them
include:
    - Stop abusing the H5G_entry_t structure and split it into two separate
        structures for non-symbol table node use within the library: H5O_loc_t
        for object locations in a file and H5G_name_t to store the path to
        an opened object.  H5G_entry_t is now only used for storing symbol
        table entries on disk.

    - Retire H5G_namei() in favor of a more general mechanism for traversing
        group paths and issuing callbacks on objects located.  This gets us out
        of the business of hacking H5G_namei() for new features, generally.

    - Revised H5O* routines to take a H5O_loc_t instead of H5G_entry_t

    - Lots more...

Platforms tested:
    h5committested and maybe another dozen configurations.... :-)
2005-11-14 21:55:39 -05:00
James Laird
617522e467 [svn-r11646] Purpose:
Bug fix/feature

Description:
Added support for -shlib in h5fc and h5c++.
Made check-install use -shlib when only shared libraries have been installed.

Solution:
h5fc and h5c++ didn't recognize -shlib.  Stole code from h5cc to link against
shared libraries.
When static libraries are disabled, the examples Makefiles will automatically
use the -shlib option to link against shared libraries.  Thus,
--disable-static and make check-install should work together.

Platforms tested:
heping(disable-static, enable-static, fortran, c++), modi4 (disable-static, fortran, c++, parallel, enable-static)
2005-10-31 16:35:49 -05:00