Commit Graph

635 Commits

Author SHA1 Message Date
Jonathan Kim
98639557ac [svn-r18166] Purpose:
Take care of test case fail for h5repack from checkin (r18164)

Description:
    Previous checkin didn't allow h5diff to return succeed when a link's 
    target object doesn't exist. Changed it to succeed with warning.
    (Need to discuss related feature)

Tested on Jam
2010-01-25 19:20:16 -05:00
Jonathan Kim
79cd5838d1 [svn-r18164] Purpose:
Add a feature to compare through links. Relate to bugzilla report 1754.

Description:
    Currently, h5diff command only compares the name(path) of target object 
    not the actual data. With this feature, h5diff will go through the link(s) 
    and figure out the actual object at the end of the link and compare data 
    if exist. Internally we have hard-link, soft-link, external-link (as part 
    of user_defined-link). This feature will provide a user transparent 
    experience when comparing link objects as the user can specify any of 
    those 3 type of links to be compared in any combination.

Tested on Jam.
2010-01-25 16:43:48 -05:00
Quincey Koziol
bb25c85e79 [svn-r18159] Description:
Bring Coverity fixes from 1/22/10 session to trunk:

r18137:
219: Initialized hid_t to -1 and added close to error block.
189-191: Initialized line to NULL and added free line, and close fp to error block.

r18138:
19: Moved code block for printing that the number of enums is empty to the error block. (Would never have been executed otherwise)

r18139:
Fix coverity item 58.  Moved code related to displaying the parent of a repeated
group to the else(isRoot) section, as the root group has no parent.

r18140:
218: Initialized ret_value variable to -1. Because of throw Exception in default case of switch, the coverity problem would not have executed anyway. Good pratice is to initialize variables.

r18141:
Fix coverity item 92.  Added code to H5E_register_class to free cls in case of
an error.

r18142:
Fix coverity item 91.  Added code to H5E_create_msg to free msg in case of an
error.

r18143:
fixed issue 14,
took away "if" and used #ifndef_xxx.

r18144:
Fix coverity item 110.   Added code to H5Eget_minor to free msg_str in case of
an error.

r18145:
fixed coverity #18 removed "aligned", it is always NULL.

r18146:
Fix coverity item 109.   Added code to H5Eget_major to free msg_str in case of
an error.

r18147:
Fixed coverity #81 and #82, Check for bad pointer(s), but can't issue error, just leave

r18148:
Fix coverity item 97.   Added code to H5FD_fapl_open to free copied_driver_info
in case of an error.

r18149:
Fix coverity item 96.   Added code to H5FD_dxpl_open to free copied_driver_info
in case of an error.

r18150:
Fix Coverity issue #29: Protected cache_ptr dereferences with "if(pass)"
block

r18151:
Fix coverity item 93.   Added code to H5FL_fac_init to free factory and new_node
in case of an error.

r18152:
Fix coverity items 98 and 99.   Added code free allocated space in case of
error.

r18155:
124: Freed head pointer before jumping to done. There was no error handling block and normal exit used same path out.
120-123: Freed list of lists in error handling block.

r18156:
Fix coverity issues 179, 180, 181, 182, 183, 184, 186, 320, 407.  These were resource leak issues where allocated memory was not freed, generally in the case of tests that failed.

Tested on:
    Mac OS X/32 10.6.2 (amazon) debug & production
2010-01-23 02:00:00 -05:00
Jonathan Kim
3c5dc1a808 [svn-r18134] Purpose:
Additional fix relted to the fix of bug1672.

Description:
    The fix of bug1672 caused some changes of output which required modifying
    some test cases.  After some discussion, restoring the changes of the test 
    cases was decided.  After many experiments for the solution, this fix was 
    made so the code which improved performance can stay.

Tested on Jam.
2010-01-21 15:01:42 -05:00
Jonathan Kim
a988519ad0 [svn-r18126] Fix for bug1749: Incorrect code in diff() function for links compare 2010-01-20 16:03:22 -05:00
Quincey Koziol
066294e321 [svn-r18109] Description:
Bring r18076-18096 from hdf5_1_8_coverity branch to trunk:

r18076:
Correct Coverity issue #1 by removing dead code

r18077:
Fix coverity item 142.  When an error occurred while copying a linked list in
H5S_point_copy, the library would not free the partially allocated list.  Added
code to free the list in this case.

r18078:
Correct Coverity issue #2 by removing impossible to reach code.

r18079:
Correct #3 by removing impossible to reach code.

r18080:
Correct Coverity issue #4 by removing impossible to reach code.

r18081:
fix coverity 26 , check (dblik->parent) before calls H5HF_man_iblock_detach().

r18082:
Fixed coverity issues 321 and 316.
    321: freed sm_buf in error handling to remove resource leak. 
        Also set sm_buf to NULL after other instances in which 
        it is freed to prevent double free.
    316: initialized nmembs to 0.

r18083:
Correct Coverity issue #6 by removing debugging knob from error reporting code.

r18084:
Fix coverity item 269 + others.  When a error occurred in a function using the
h5tools error framework, the "past_catch" variable would not be set to true
because that statement was before the label that goto jumped to.  This could
cause a failure in the cleanup section to go back to the start of the section,
freeing variables twice, etc.

Moved the label infront of past_catch=TRUE.

r18085:
fixed coverity #27, check if (heap) before use heap->obj....

r18086:
fixed coverity #28, check curr_span not null before use it at if(curr_span &&
    (io_bytes_left==0 || curr_seq>=maxseq))

r18087:
Correct Coverity issue #7 by cleaning up correctly on error

r18088:
Correct Coverity #8 by removing unchanged variable checking code.

r18089:
Correct Coverity issue #9 - remove impossible to reach code.

r18090:
Correct Coverity issue #11 by removing impossible to reach code.  Also clean
up some minor style issues.

r18091:
Fix coverity items 314 and 318.  Changed the improper assertion of the return
value of a library function to a check, and a return(void) on failure.

r18092:
Fix coverity item 70.  Changed the improper assertion of the return value of a
library function to a check, and a return(void) on failure.

r18093:
Correct Coverity issue #12 by removing dead code.

r18094:
Correct Coverity issue #16 by removing debugging code.

r18095:
Fixed coverity issue # 271.

Removed redundant checking and freeing of sm_buf1 and sm_buf2.

r18096:
Correct Coverity issue #17 by refactoring test to remove dead code.

    Also, removed previous "coverity" statements in comments, we'll review
those issues again and see if we can figure them out, now that we have more
experience with Coverity.

Tested on:
    Mac OS X/32 10.6.2 (amazon)
2010-01-14 22:05:59 -05:00
Albert Cheng
22da4232a4 [svn-r18107] bug 1673:
The mixed use of RUNTEST (original) and RUNTESTS (new) caused
confusion. E.g., the timings in test/ was still using the old
$RUNTEST.  It made more sense to use $RUNTEST which is used
by the dejagnu feature of automake.  So, I changed all
$RUNTEST or $RUNTESTS to $RUNEXEC.

config/commence.am & config/conclude.am are the two files
that got changes. Also fixed an error in test/Makefile.am.
The rest are changed by bin/reconfigure.

Tested: h5committested.
2010-01-12 18:58:30 -05:00
Quincey Koziol
9b2c4bea02 [svn-r18011] Description:
Bring Coverity changes into the trunk: (also other minor cleanups)

r17991:
Fix Coverity items 175 and 176.  Fixed memory leak on error in print_enum in
H5LT.c.

r17993: (r17992 was not a Coverity change)
Close Coverity issue #206: inconsistently checking whether dt->shared was
non-NULL after H5T_alloc() returned a valid 'dt' value (which should guarantee
that dt->shared is valid).

r17994:
Fix Coverity item 149.  Fixed file handle leak on error in H5FD_stdio_open.

r17995:
Fixed Coverity issues 154 to 161:

 Added H5MP_close routine to error handling in the event *mp has not been
 freed before error.

r17996:
Close Coverity issue #126: potentially leaking merged_spans on routine failure.

r17997:
Fix Coverity items 147 and 148.  Fixed resource leaks on error in H5FDloc.c.

r17998:
Coverity issue 269-272:
    Added integer result variable to functions that could return negative.
        Assigned to unsigned after checking.
    Added H5E_BEGIN_TRY block around H5Tclose and removed H5E_THROW in the
        catch block.
    Checked buffer is NULL before free. Changed HGOTO_ERROR outside of the if
        block to H5E_THROW.

r17999:
Close Coverity issue #127: release temporary spans in more generic manner.
(Also add error checking to previous fix)

r18000:
Resolved Coverity issues 211 and 212 in H5T.c. Added comments to ignore
Coverity warning regarding not checking pointer for NULL, as we are using
an assert which catches the issue.

r18001:
Fix Coverity item 146.  Fixed resource leak on error in H5O_layout_copy.

r18002:
Fix Coverity items 143 and 145.  Fixed resource leaks on error in
H5D_compact_copy and H5D_contig_copy.

r18003:
Close Coverity issue #192: close file on error

r18004:
Fix Coverity issue #125: release temporary spans on error

r18005:
Resolved Coverity issues 5, 25, and 83 (in H5T.c):

    Separated embedded functions in order to check for NULL on return of
        H5I_object before passing into H5T_copy.

    Check to see if new_dt is NULL within error handling before
        dereferencing it.

    Ignore Coverity's dead code warnings as the checks that lead to the code
        are machine dependent.

r18006:
Coverity 63,70,73:  Checked result of function before assigning to an unsigned
variable.

r18007:
Coverity 78,79:   added continue statement if H5Pget_filter2 returns negative.

r18008:
Fixed Coverity issue # 138:

    Added support in error handling to free dst pointer (if allocated) on error.

r18009:
Whitespace & coding style cleanup
2009-12-13 00:28:30 -05:00
Quincey Koziol
037dac6997 [svn-r17981] Description:
Abstract "print header" code into separate routine.

Tested on:
    Mac OS X/32 10.6.2 (amazon) w/debug
    (too minor to require h5committest)
2009-12-10 08:43:25 -05:00
Quincey Koziol
fb1059e507 [svn-r17953] Description:
Bring Coverity changes into the trunk:

r17877:
Error 266: Uninitialized memspace set to -1. Changed malloc and free to HDmalloc and HDfree. Removed unused dtype var.

r17878:
Error 265: Uninitialized mem_space set to -1. Changed malloc and free to HDmalloc and HDfree. 
Error 267: Uninitialized smspace set to -1. Changed malloc and free to HDmalloc and HDfree.

r17879:
Error 242: Uninitialized aid set to -1. 
Error 243: Uninitialized sid set to -1. 
Uninitialized tid set to -1 for consistency

r17880:
Error 242: reinitialized aid to -1 after close to be ready for reuse. 
Error 243: reinitialized sid to -1 after close to be ready for reuse. 
reinitialized tid to -1 for consistency after close to be ready for reuse.

r17881:
use valgrind to check there is a memory leak. The fix is to free ptrstr in line 5838 at xml_dump_group() of h5dump.c after it is used. run the valgrind after the fix, no memory leak for that part of the code.

r17882:
Fix Coverity items 256 and 269.

r17883:
Error 222-230: initialized hid_t vars to -1 after close to be ready for reuse. 
Also added H5Tclose for tid in gent_bigdims

r17884:
Bug fix (Coverity run2, view 23, dead code)
(this is pair-program done by Albert, Elena and Larry).

Confirmed and fixed the deadcode in hyperslab read branch of function
diff_datasetid.
(Discovered other bad code that diff_datasetid() should be recoded.  
Bug 1693 is entered for this.)

r17906:
Fix Coverity item 260.

r17907:
262: Initialized hid_t's dtype, dtype_tmp and file to -1. Initialized H5T_t * dt to NULL.

r17908:
Fix Coverity item 261.

r17909:
Fix Coverity item 248.

r17910:
Revise fix for Coverity item 248.

r17911:
Resolved coverity issues #s 263, 162, 163, 164. All issues in dsets.c. Initialized fid and did hid_t's. filter_corrupt function was returning in the middle of an if statement, bypassing free calls. Updated error handling to free buffers and hid_t's appropriately.

r17912:
(done by Larry and Albert)
Cleanup Coverity view warnings (#231-241) about
using uninitialized variables.  Initialized all
of them.

r17913:
Resolved issue 251 and 264. Initialized tid2 to -1 and initialized buffers that were freed in case of an error.

r17914:
Resolved coverity issues 66, 220, and 221: 

66: Negative Return assignment ignored

220,221: Initialized hid_t's.

r17915:
Fix Coverity item 247.

r17916:
Fix Coverity item 246.

r17917:
Fix Coverity item 245.

r17918:
Fix Coverity item 244.

r17919:
Coverity Issue #84: Moved asserts in H5T_cmp to the top of the function, and converted them to HDassert. Coverity complaining about using potentially NULL pointer without checking it. Want to see if Coverity will accept Assertions as acceptable checking before using the value. 

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.6.2 (amazon) in debug mode
    Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-12-03 14:11:29 -05:00
Jonathan Kim
77b493eea3 [svn-r17938] Purpose:
Fix potential problem similar to Bug1672 (getting garbage values)

Description:
    This will resolve the potential problem like Bug1672 when comparing 
    attributes. It improves the performance by not calling diff_array 
    twice. (diffing time in half). Little clean up on comment lines.
    Refer to the Bug fix 1672. (also svn revision 17905 on trunk) 
	
Tested on:
    linux32 (jam) , linux64 (almani), solaris (linew)
2009-11-30 16:25:41 -05:00
Jonathan Kim
8bcc914263 [svn-r17905] Purpose:
Fix Bug1672 - Display garbage value on LE machine for BE data.

Description:
	Casuing by calling diff_dataset twice when -r or no option was given.
	Change to call it once which fix the problem. 
	It also improves the performance. (diffing time in half)
	According further test, it also occurred on BE machine as well and it 
	seems occruing only with the BE data attached to Bugzilla. 
	Don't know how the file was created. Anyway this fix will prevent 
	from diffing with garbage values in similiar potential case. 
	
Tested on:
	linux32 (jam) , linux64 (almani), solaris (linew)
2009-11-20 13:56:01 -05:00
Peter Cao
a8aa10bd21 [svn-r17680] Use absolute comparison for use-system-epsilon and default option. 2009-10-19 09:50:02 -05:00
Mike McGreevy
7ec079a515 [svn-r17616] Purpose:
CFLAGS overhaul

Description:

    Modified the way configure handles CFLAGS.

    (note: all changes also apply to FCFLAGS, CXXFLAGS, CPPFLAGS, and LDFLAGS).

    1. The configure process will now always preserve a user's CFLAGS
    environment variable setup. Any additional flags necessary for compilation
    added at configure time will be passed into the Makefiles as AM_CFLAGS,
    which is an automake construct to be used in addition to CFLAGS.

    This will allow a user to have the final say, as CFLAGS will always appear
    later in the compile line than AM_CFLAGS. Additionally, setting CFLAGS
    during make will no longer completely erase all flags set by configure,
    since they're maintained in AM_CFLAGS.

    2. Additionally, where possible, flags previously being assigned directly
    into CFLAGS (and thus propagating into h5cc) have now been redirected into
    H5_CFLAGS, so they're used ONLY for compiling hdf5, and not embedded into
    the h5cc wrapper script as well.

    *Note that H5_CFLAGS ultimately is assigned into AM_CFLAGS for use in the
    Makefiles. Complete description of changes and build process will be
    included in a Configure Document that Elena and I are working on.

    3. Removed unsupported config files. This includes:

       config/dec-osf*
       config/hpux11.00
       config/irix5.x
       config/powerpc-ibm-aix4.x
       config/rs6000-ibm-aix5.x
       config/unicos*

     4. Modified configure summary to display additional values. Specifically,
     appropriate AM_* variables are being shown, as well as H5_FCFLAGS and
     H5_CXXFLAGS, which were for some reason not already present.

Tested:

    - H5committest
    - Tested on all THG / NCSA machines, using several combinations of the more
      prominent configure options (c++, fortran, szip, threadsafe, parallel,
      et cetera). (Thanks to Quincey for rysnc testing setup!)
    - With regards to new automated testing, anything *necessary* for
      compilation will be caught by the daily tests as it stands now. (i.e.,
      if LDFLAGS is not properly set when szip is used, linking will fail).
      Additionally, with regards to which flags get into h5cc, if any
      *necessary* flags have been improperly removed, then daily tests should
      fail during make installcheck. Additional machine-specific desired
      behaviors and/or checks may have to be set up separately within the
      daily tests, so this is something to work on.
2009-10-08 10:17:30 -05:00
Allen Byrne
98f6b609ad [svn-r17566] Fix for Bug 1562. H5DSis_attached needed to account for platform dependent types. Added test and test files for LE and BE dimension scales. Reworked part of test_ds file as part of debug.
Added missing H5Tclose in region reference routines.
H5DS.c checked for other locations which need to account for platform dependent types in dealing with ds_list_t. Added generator program for test files of LE and BE dimension scales.

Tested: local linux, h5committest
2009-10-01 11:17:17 -05:00
Quincey Koziol
74c6507d9f [svn-r17518] Description:
Bring most of Vailin's changes to the fixed array data structure back
to the trunk, including new regression test for data structure.

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/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
2009-09-24 15:30:47 -05:00
Allen Byrne
d00707bf11 [svn-r17492] Moved printing of brackets before printing contents of region references.
Changed default Error handling init to successful as all error macros set the return to failure

Tested: local linux
2009-09-17 15:31:44 -05:00
Allen Byrne
cd3c2dea7b [svn-r17477] Corrected use of ERROR macro H5E_LEAVE to H5GOTO_DONE.
Tested: local linux
2009-09-14 16:48:32 -05:00
Allen Byrne
43db823044 [svn-r17475] Added error handling to h5dump and region reference handling functions in the tools lib. Bring back from NPOESS. Added missing tests to h5dump test script for region references.
Tested:   local linux
2009-09-14 14:52:42 -05:00
Peter Cao
5f3a7254c1 [svn-r17466] " Use strict equality as default
"   Use "--use-system-epsilon" for system EPSILON
"   Use "-p" or "-d" for whatever user's choice of epsilon
"   Use "-p 0" or "-d 0" for strict equality (same as default)
2009-09-11 15:09:34 -05:00
Allen Byrne
1cad9f4751 [svn-r17456] Added dataspace type check for region, changed dimension_break processing to use boolean.
Tested:
    local linux
2009-09-08 09:51:59 -05:00
Quincey Koziol
eae58095d0 [svn-r17455] Description:
Correct a 'hsize_t *' to 'hsize_t' and vice versa.

Tested on:
    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
    (too minor to require h5committest)
2009-09-08 08:03:38 -05:00
Allen Byrne
c7590ca38e [svn-r17450] Bring h5dump single subsetting selection and region reference changes from NPOESS
Tested: local linux smirom
2009-09-04 09:50:13 -05:00
Mike McGreevy
4598a59f86 [svn-r17345] Purpose:
Updating autotools

Description:

    Installed new autotools and used them to reconfigure HDF5.

    - Automake upgraded to 1.11
    - Autoconf upgraded to 2.64
    - bin/reconfigure script edited to use new versions (on jam), and
      run to generate new configure script and Makefile.in's.
    - configure.in script edited to add "_cv_" to all AC_CACHE_VAL strings
      (in order to comply with new autoconf standard).
    
Tested:

    Tested on machines jam, smirom, liberty, linew.
    Tested w/ features c++, fortran, parallel.
    Tested w/ compilers gcc, pgcc, icc.

    Further testing via Daily Tests should catch any other outliers. Upon
    passing DT's, I'll propogate the new tools into 1.8, hdf4, et cetera.
2009-08-12 13:55:25 -05:00
Peter Cao
a6676de3c8 [svn-r17254] Fixed Bug 1563 - h5diff and Infinity
Added test cases
2009-07-28 14:40:18 -05:00
Allen Byrne
f5be06c397 [svn-r17211] The function h5tools_str_append() incorrectly used the trio of functions: va_start(), HDvsnprintf(), and va_end(). When the boundary of the string buffer was reached and resized, the HDvsnprintf() function recalled without the other two functions in the code loop. This usage exposed bug 1520 by a user.
Tested: linux
2009-07-21 14:44:54 -05:00
Pedro Vicente Nunes
aad47d8e8b [svn-r17052] Add a run to the h5repack shell script to read a family file
The file used for input is located in the common source tools for testfiles, in tools/testfiles
Modified the h5repack shell script to read files from this location (h5repack reads its input files from a dedicated testfiles location in h5repack/testfiles)
Changed the h5diff open file call to use h5tools_fopen, so that it can open all file drivers

Tested: windows, linux, solaris
2009-06-15 14:05:42 -05:00
Pedro Vicente Nunes
358f18543f [svn-r16991] change messages of -c option
tested: windows, linux
2009-05-28 16:31:57 -05:00
Pedro Vicente Nunes
b75740341f [svn-r16964] bug fix: the phrase "Not comparable" was not being printed for the case of different classes
tested: windows, linux
2009-05-20 09:07:22 -05:00
Pedro Vicente Nunes
c60f5a8429 [svn-r16810] added the words "Not comparable" in the not comparable messages
tested: linux
2009-04-20 15:59:40 -05:00
Mike McGreevy
bc36a358d1 [svn-r16792] Description:
- Updated bin/reconfigure to use latest version of automake (1.10.2). 
      Re-generated Makefile.in's by running bin/reconfigure.

    - Added libtool version numbers to c++, fortran, hl, hl c++, and hl fortran
      libraries.

Tested:

    jam, liberty, smirom
2009-04-20 01:00:11 -05:00
Pedro Vicente Nunes
ceffce7203 [svn-r16785] added missing test and compare cases inside compounds for nan
tested: linux
2009-04-18 15:55:24 -05:00
Neil Fortner
a4aae55760 [svn-r16698] Purpose: Fix bug 503
Description:
Changed Skip list package to use a deterministic skip list.  This allows the
skip list package to avoid calling rand() and srand(), even on machines without
rand_r().  There is no longer a p-value or maximum level for skip lists.

Tested: jam, smirom, linew (h5committest)
2009-04-08 12:02:09 -05:00
Pedro Vicente Nunes
972a1bba5d [svn-r16629] removed a h5dump test (array type) that has a different bogus output in frebsd (liberty)
removed  the call to the file generation in the test generation program
removed the binary h5 and ddl from svn

tested: linux
2009-03-30 16:47:29 -05:00
Pedro Vicente Nunes
bd1fe8cd74 [svn-r16614] 3. #1501 (B1) tools bug if dataset is larger than H5TOOLS_BUFSIZE limit.
ISSUE : the tools use the following formula to read by hyperslabs: hyperslab_size[i] = MIN( dim_size[i], H5TOOLS_BUFSIZE / datum_size) where H5TOOLS_BUFSIZE is a constant defined of 1024K. This is OK as long as the datum_size does not exceed 1024K, otherwise we have a hyperslab size of 0 (since 1024K/(greater than 1024K) = 0). This affects h5dump. h5repack, h5diff
SOLUTION: add a check for a 0 size and define as 1 if so. 
TEST FOR H5DUMP: Defined a case in the h5dump test generator program of such a type (an array type of doubles with a large array dimension, that was the case the user reported).  Since the written file commited in svn would be around 1024K, opted for not writing the data (the part of the code where the hyperslab is defined is executed, since h5dump always reads the files). Defined a macro WRITE_ARRAY to enable such writing if needed. Added a run on the h5dump shell script. Added 2 new files to svn: tools/testfiles/tarray8.ddl, tools/testfiles/tarray8.h5. NOTE: while doing this I thought of adding this dataset case to an existing file, but that would add the large array output to those files (the ddls). The issue is that the file list is increasing.
TEST FOR H5DIFF: for h5diff the check for reading by hyperslabs is H5TOOLS_MALLOCSIZE (128 * H5TOOLS_BUFSIZE) or 128 Mb. This makes it not possible to add such a file to svn, so used the same method as h5dump (only write the dataset if WRITE_ARRAY is defined). As opposed to h5dump, the hyperslab code is NOT executed when the dataset is empty (dataset is not read). Added the new dataset to existing files and shell run (tools/h5diff/testfiles/h5diff_dset1.h5 and tools/h5diff/testfiles/h5diff_dset2.h5 and output in tools/h5diff/testfiles/h5diff_80.txt).
TEST FOR H5REPACK: similar issue as h5diff with the difference that the hyperslab code is run. Added a run to the shell script (with a filter, otherwise the code uses H5Ocopy). 

tested: linux (h5commitest failed , apparently it did not detect the code changes in /tools/lib that fix the bug: the error in an assertion in the hyperslab of 0. I am sure that making h5ccomitest --distclean will detect the new code , but don't want to wait more 3 hours :-) )
2009-03-25 15:28:50 -05:00
Mike McGreevy
893b8bffee [svn-r16561] Purpose:
Bug Fix

Description:

    Fixing BZ #1381. The --includedir=DIR configure option, which is used
    to specify the installation location of C header files, did not work
    correctly as the path was hard-coded in config/commence.am. I'm presuming
    this is because an older version of automake didn't know where to put
    c header files. In any case, removing this line now defaults the includedir
    to the same directory that it is currently hard-coded to, and also fixes
    the configure flag to allow customization of this value.

Tested:

    jam, liberty
2009-03-10 16:01:50 -05:00
Pedro Vicente Nunes
f8c5384aa5 [svn-r16518] have 2 expected outputs for 2 h5ls runs depending if run on a big or little endian machine. Configure.in was modified to export a variable carrying endianess information to testh5ls.sh. This script then compares the current run with 2 expected outputs, one for a big-endian machine (linew was used to generate the output), other for little endian (jam was used to generate the output)
the way h5ls prints types, it starts searching for NATIVE types first. One solution would be h5ls not to detect these native types, using for example the same print datatype function that h5dump does, that would make the output look the same on all platforms  ("32-bit little-endian integer" would be printed instead).  Drawback, this "native" information would not be available. Other solution is to have not one but 2 expected outputs and make the shell script detect the endianess and compare with one output or other
tested: h5committest
2009-02-26 15:21:50 -05:00
Pedro Vicente Nunes
11e7897d32 [svn-r16502] bug fix: a comma accidently left on a conditional typedef was causing compilition error on AIX
tested: h5commitest
2009-02-20 16:07:34 -05:00
Pedro Vicente Nunes
1357f1a25b [svn-r16501] remove a strange character from a comment
tested: h5committest
2009-02-20 14:40:53 -05:00
Allen Byrne
5d69e87ff0 [svn-r16489] Fixed bug #1459 by eliminating the macro long_long and replacing all instances with long long.
Tested:
   h5comittest
   fedora 10 x64
   Vista 32, VS2005, IVF101
   XP32, Cygwin
2009-02-18 15:02:05 -05:00
Pedro Vicente Nunes
96a0892ba8 [svn-r16461] Bug fix: for compound types, the not comparable test for members was not done
Solution: for compound types, recursively apply that check
Two new cases are added
1) the compound type has a different number of members. Message printed is
<obj1> has X members <obj2> has Y members
Where X and Y are the number of members of each compound type being compared
2) the compound type has not comparable types (for example a double and an int at the same index)
In this case the message
Comparison not possible: object1 is of class1 and object2 is of class2
Is replaced with
Comparison not possible: object1 has a  class1 and object2 has a  class2
Modified the test generator program to have these 2  cases
Added a shell run for these 2  cases


Tested: windows, h5committest
2009-02-11 10:57:25 -05:00
Pedro Vicente Nunes
9a298fd1dd [svn-r16373] replaced some printf statements with parallel_print
tested: linux serial and parallel
2009-01-29 13:58:36 -05:00
Pedro Vicente Nunes
a6dcbd6a0f [svn-r16358] bug fix
a new line was not inserted at the end of output, causing diff to complain between linux and frebsd

tested: linux , freebsd
2009-01-27 10:33:17 -05:00
Pedro Vicente Nunes
85a1c5c273 [svn-r16352] bug fix: some printf calls instead of parallel_print made some tests to fail
tested: linux parallel
2009-01-27 08:48:04 -05:00
Pedro Vicente Nunes
120350c395 [svn-r16348] #1368 (E1) h5diff: implement "not comparable" messages. Implemented RFC. The new option is <-c, --compare List objects that are not comparable>
added some test cases

tested: windows, linux
2009-01-26 14:29:22 -05:00
Frank Baker
5393933154 [svn-r16340] Description:
Changed 'THG' to 'The HDF Group' in various HDF5 source files,
        most of which are <subdirectory>/COPYING.
    -- Closes Bugzilla entry 1403.
2009-01-22 15:53:59 -05:00
Pedro Vicente Nunes
60ab04d383 [svn-r16319] add conditinal nan detection to some missing places
tested: windows, linux
2009-01-14 16:37:25 -05:00
Pedro Vicente Nunes
108699a7a8 [svn-r16300] Added an option to avoid dealing with NaNs
-N, --nan               Avoid NaNs detection
Note: there is no shell script run for datasets with NaN because the output is non portable (different results and NaN strings for different systems)

Tested: windows, linux
2009-01-13 11:33:31 -05:00
Pedro Vicente Nunes
5b7de16d6a [svn-r16217] Bug fix
PG compiler complains about array out of bounds (a rank of zero was not checked)
Adding a scalar dataset to the test generator program. this case is run on a previous existing run, the case was added to 2 existing files

Tested: windows, linux
2008-12-23 09:56:13 -05:00
Pedro Vicente Nunes
2eefe0be2e [svn-r16030] updated some comments regarding a function change regarding h5diff return value (not done for 1.8)
* Pedro Vicente, pvn@hdfgroup.org, Nov 4, 2008
 *    Compare the graph and make h5diff return 1 for difference if
 * 1) the number of objects in file1 is not the same as in file2
 * 2) the graph does not match, i.e same names (absolute path)
 * 3) objects with the same name are not of the same type
2008-11-04 16:11:45 -05:00
Pedro Vicente Nunes
8a0b098fdb [svn-r16024] For scalar string datasets print the character position when a difference is found instead of a non-existing array position
Tested: windows
2008-11-03 21:44:40 -05:00
Pedro Vicente Nunes
8f00f520ff [svn-r15991] Merge with 1.8 rev 15969
Introduced a new feature in the tools library regarding command line parsing
In the definition of arguments, an "*" means that the switch can or can not have an optional argument. This "*" is put in the code regarding the letter definition, and it is transparent to the user (e.g b* instead of the previous b: ), where ":" notes a required argument after the letter (and no ":" or "*" notes no argument, mandatory)
Used for the h5dump binary option -b
It can be now
1)	-b (defaults to NATIVE)
2)	- b NATIVE
3)	- b FILE
4)	-b LE
5)	-b BE
Note: the keyword NATIVE replaces MEMORY
This feature (-b with no argument) was tested with the sequence of h5dump to binary (NATIVE) then h5import to generate an HDF5 file from the binary file and h5diff to compare the 2 HDF5 files
Tested: linux
2008-10-29 15:11:51 -05:00
Pedro Vicente Nunes
61af8db951 [svn-r15990] Merge with 1.8 rev 15967
regarding the return value of h5diff (0, no difference in files, 1 difference )
    objects with the same name must be of the same type
tested: linux
2008-10-29 15:01:38 -05:00
Pedro Vicente Nunes
840c6e34d3 [svn-r15989] Merge with 1.8 up to rev 15945
Regarding use of unsigned long long print format

Tested: linux
2008-10-29 14:56:24 -05:00
Pedro Vicente Nunes
13294e2042 [svn-r15988] Merge with 1.8 up to rev 15871
Regarding h5diff, h5copy

Tested: linux
2008-10-29 14:47:50 -05:00
Pedro Vicente Nunes
e636e152ea [svn-r15987] Merge with 1.8 rev 15871
Eliminate -c option and make that behavior the default and return 2 instead of -1 on error status

tested: linux
2008-10-29 14:29:25 -05:00
Pedro Vicente Nunes
b7dc9a06b3 [svn-r15977] merge rev 15866 from 1.8 branch into trunk (diffs for unsigned long long)
tested: windows, linux
2008-10-28 14:13:42 -05:00
Mike McGreevy
a664274624 [svn-r15942] Purpose: Bug Fixes and Libtool Upgrade
Description:
     - Remove need to set LD_LIBRARY_PATH when using shared szip library.

     - Libtool 2.2.6a is now used to generate libraries.

     - 'make check install' dependency bug is fixed, and should no longer
       break the build. 
  
     - removed hard coding of shell in config/commence.am, as this causes
       problems on Solaris with the new version of libtool.
   
     - RELEASE.txt with appropriate changes.

Tested:
     - kagiso, smirom, linew (merged from 1.8, pretty quick tests)
2008-10-24 12:19:34 -05:00
Neil Fortner
ad28fa5b0c [svn-r15886] Purpose: Close bug 1332
Description: Improved external link traversal of h5dump.  h5dump will now
    properly avoid all cycles, even those spanning multiple files.  Improvement
    to the output of committed datatypes.  Committed datatypes are now checked
    for uniqueness (like other objects).  Tests added for these cases.

Tested: kagiso, linew, smirom (h5committest)
2008-10-15 22:52:16 -05:00
Neil Fortner
6d28e06f30 [svn-r15668] Purpose: Add feature requested in bug #1282
Description: Adds capability to h5ls to traverse external links when the -r
(recursive) option is given.  Changes to the way absolute path names are patched
in h5trav.c.  Changes to the way recursive traversal starting from a non-root
group is handled (which also fixes some preexisting issues).  Tests added for
these cases.

Tested: kagiso, smirom, linew (h5committest)
2008-09-21 13:35:43 -05:00
Quincey Koziol
bdd7d59902 [svn-r15628] Description:
Remove trailing whitespace from C/C++ source files, with the following
script:

    foreach f (*.[ch] *.cpp)
        sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
    end

Tested on:
    Mac OS X/32 10.5.5 (amazon)
    No need for h5committest, just whitespace changes...
2008-09-16 10:52:51 -05:00
Pedro Vicente Nunes
5f7de91688 [svn-r15509] bug fix
when comparing attributes, a type ID was not properly closed 

solution: close the Id on the iteration and continue instead of goto out of the cycle
2008-08-21 14:15:05 -05:00
Neil Fortner
4f61812180 [svn-r15458] Purpose: Modify the library to take the proper action when files with incorrect
datatype versions are encountered.

Description: The library now recognizes some problems with datatype versions in
H5O_decode_helper(), and, if not performing strict format checks, automatically
corrects them.  Framework added for other message decode routines to
automatically correct file errors.  Datatype version information added to
h5debug.

Tested: kagiso, smirom, linew (h5committest)
2008-08-11 10:16:34 -05:00
Pedro Vicente Nunes
c3bdc28062 [svn-r15445] added some comments
tested: windows, linux
2008-08-07 08:09:35 -05:00
Pedro Vicente Nunes
6787ef71a2 [svn-r15428] http://bugzilla.hdfgroup.uiuc.edu/show_bug.cgi?id=1170
Summary: when using h5diff to compare the results of h5repack (or other tools that copy one HDF5 file to another), a new option is needed to allow h5diff to make an "absolute" comparison of the 2 files. This is the "contents" mode explained in the usage below.

If this mode is present, objects in both files must match (must be exactly the same). If this does not happen, the tool returns an error code of 1 (instead of the success code of 0)

Changes to the h5repack test script: the call to h5diff was changed to include -c (maintaining the previous -q). 

tested: windows, linux, solaris
2008-08-04 16:13:16 -05:00
Scott Wegner
7a92820e35 [svn-r15183] Purpose: _WIN32 macro cleanup
Description:
As part of our Windows cleanup, we try to remove windows-specific tweaks in the source code.  There are many instances where Windows code is introduces via ifdef's.  We re-evaluate whether they are still required, and found that many of them are not.  Others we change to "feature"-specific code, rather than Windows-specific.

Tested:
VS2005 on WinXP
VS.NET on WinXP
h5committest (kagisopp, smirom, linew)
2008-06-09 13:41:29 -05:00
Scott Wegner
532e23b808 [svn-r15150] Purpose: Separate Windows function macro definitions to win32defs.h
Description:
In library code, we try not to use system calls directly, but instead use the HD{function} macro instead.  This way, we can map special versions of the call on particular systems.  Previously, it was all done in H5private.h.  However, in an effort to clean up platform-specific definitions, we move all of the Windows macros into a separate file, win32defs.h.  This way, we can use the non-Posix versions that Visual Studio sends warnings about.

Some macros are set specifically in the platform-specific header files.  Then, any macros left unset will be set by the "default" implementation in H5private.h.

This checkin also cleans up various source files to use the HD* macros when possible.

Tested:
VS2005 on WinXP
VS.NET on WinXP
h5committest (kagiso, linew, smirom)
2008-06-05 13:52:19 -05:00
Quincey Koziol
b75540244f [svn-r15133] Description:
Fixed bug in h5ls that prevented relative group listings (like
"h5ls foo.h5/bar") from working correctly.

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.5.3 (amazon) in debug mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
2008-06-03 19:17:27 -05:00
Albert Cheng
ca94c839d5 [svn-r15036] Bug fix.
Description:
The fortran Makefile.am used HDF_FORTRAN to indicate it is part of the
Fortran API source so that conclude.am will give fortran api prefix in the
test output.  The symbox HDF_FORTRAN is also used in configure for a different
purpose (indicated --enable-fortran). They conflicted.
Similar problem for the symbol HDF_CXX.

Solution:
Changed all the involved Makefile.am to use "FORTRAN_API" instead. It is
a more appropriate name.  Same for CXX_API.

Along the way, discovered that the Makefile.am of hl/fortran/test and
hl/cxx/test did not have those symbols at all.  Added them in.

Platform tested:
Kagiso only. It is a trivia change.
2008-05-19 00:06:51 -05:00
Mike McGreevy
389cc309c5 [svn-r15007] Purpose: configure cleanup
Description: cleaning up configure related to removal of --disable-hsizet
             flag, which we no longer support.

Tested: kagiso
2008-05-15 11:42:03 -05:00
Albert Cheng
7b7f10a444 [svn-r15003] Purpose:
Improvement.

Description:
src/libhdf5.settings was the initial configure summary and is installed.
Then configure is changed to dump a summary of the configure settings to
the output and also append it to src/libhdf5.settings.  That created
two different output formats and duplicated information.  This is the
initial attempt to clean up this confusion and unify the output format.

It is decided to use the src/libhdf5.settings template as the unified means.
This requires more macros symbols be defined. The following symbols are
all related to generating the src/libhdf5.settings file.

AC_SUBST(EXTERNAL_FILTERS)
AC_SUBST(MPE) MPE=no
AC_SUBST(STATIC_EXEC) STATIC_EXEC=no
AC_SUBST(HDF_FORTRAN) HDF_FORTRAN=no
AC_SUBST(FC) HDF_FORTRAN=no
AC_SUBST(HDF_CXX) HDF_CXX=no
AC_SUBST(CXX) HDF_CXX=no
AC_SUBST(HDF5_HL) HDF5_HL=yes
AC_SUBST(GPFS) GPFS=no
AC_SUBST(LINUX_LFS) LINUX_LFS=no
AC_SUBST(INSTRUMENT) INSTRUMENT=no
AC_SUBST(CODESTACK) CODESTACK=no
AC_SUBST(HAVE_DMALLOC) HAVE_DMALLOC=no
AC_SUBST(DIRECT_VFD) DIRECT_VFD=no
AC_SUBST(THREADSAFE) THREADSAFE=no
AC_SUBST(STATIC_SHARED)
AC_SUBST(enable_shared)
AC_SUBST(enable_static)
AC_SUBST(UNAME_INFO) UNAME_INFO=`uname -a`

The src/libhdf5.settings.in has CONDITIONAL's added to it too.  The
untrue conditions turned into a "#" and these lines are cleaned by the 
post processing script.

Platform tested:
h5committest on kagiso, smirom and linew.
2008-05-15 00:12:00 -05:00
Mike McGreevy
5bd2405c11 [svn-r14933] Purpose: Updating HDF5 to use automake 1.10.1 and libtool 2.2.2
Description: Applying update to autotools that was applied to 1.8 a couple
             of weeks ago to the trunk.

             Updated bin/reconfigure script to reflect the new versions of 
             libtool and automake in the /home1/packages/ directory.

             Rearranged configure.in script. When using libtool 2.2.2, the
             libtool script doesn't generate until later in the configuration
             process, so I had to move a test that parsed through the libtool
             script to a point after where it was actually being generated.

             Ran libtoolize on the project, and ran bin/reconfigure to
             regenerate configure and Makefile.in's throughout.

Tested:      kagiso, smirom, linew (h5committest)
2008-05-05 13:35:55 -05:00
Scot Breitenfeld
aec106e324 [svn-r14903] Undoing change committed in r14902. 2008-04-30 14:51:13 -05:00
Scot Breitenfeld
5773fd34bc [svn-r14902] Merged fortran_1_8 branch changes r14505:14901 into the trunk. New fortran wrappers added. 2008-04-30 14:23:26 -05:00
Pedro Vicente Nunes
c83dbd9c18 [svn-r14792] bug fix: #1106 h5dump -b will dump ASCII values for datasets after the first one. One variable that controls the binary output was incorrectly reset to zero after a binary output was done a first time. The effect was that on cases of several datasets, the ones after the first were not binary written. Eliminated the resetting of that variable and tested a file with several datasets. Modified the test file so that it is easier to test with the tool binread, that reads the binary output of h5dump.
tested: windows, linux
2008-04-03 16:07:27 -05:00
Pedro Vicente Nunes
6763f7c882 [svn-r14735] make 1.8 and 1.6 code equal or similar
formatted code
tested: windows, linux
2008-03-13 13:44:35 -05:00
Pedro Vicente Nunes
7d4ba6f74e [svn-r14733] make 1.8 and 1.6 code equal or similar
formatted code
bug fix: the 1.6 branch did not have a test for the existence of long double type on print_type (print name of datatype)
tested: windows, linux
2008-03-13 10:24:02 -05:00
Pedro Vicente Nunes
8f75e2c879 [svn-r14730] make 1.8 and 1.6 code equal or similar
Tested: windows, linux
2008-03-12 14:50:54 -05:00
Pedro Vicente Nunes
cb06b64c54 [svn-r14728] make 1.8 and 1.6 code look equal or similar
Tested: windows, linux
2008-03-12 13:40:50 -05:00
Pedro Vicente Nunes
52378f9e94 [svn-r14700] bug fix: the function equal_double that compares double type did not had nan logic for the cases of options -d and -p
tested: windows, linux
2008-03-04 14:38:16 -05:00
Quincey Koziol
66fa79b423 [svn-r14690] Description:
Handle comparing datasets & attributes w/variable-length strings properly.

Tested on:
    Linux/64 2.6.9 (chicago)
2008-02-28 09:49:48 -05:00
Pedro Vicente Nunes
8005df6417 [svn-r14437] bug fix for h5dump subsetting (deal with blocks)and new test runs
add a check for block overlap after the command line parsing

* Algorithm
 *
 * In a inner loop, the parameters from SSET are translated into temporary 
 * variables so that 1 row is printed at a time (getting the coordinate indices 
 * at each row).
 * We define the stride, count and block to be 1 in the row dimension to achieve 
 * this and advance until all points are printed. 
 * An outer loop for cases where dimensionality is greater than 2D is made. 
 * In each iteration, the 2D block is displayed in the inner loop. The remaining 
 * slower dimensions above the first 2 are incremented one at a time in the outer loop
 *
 * The element position is obtained from the matrix according to:
 *       Given an index I(z,y,x) its position from the beginning of an array 
 *       of sizes A(size_z, size_y,size_x) is given by
 *       Position of I(z,y,x) = index_z * size_y * size_x 
 *                             + index_y * size_x
 *                             + index_x
 * 

tested: windows, linux
2008-01-16 11:12:08 -05:00
Pedro Vicente Nunes
be4ca1f67e [svn-r14414] revert the subsetting calls of h5dump to 1 size block, still a bug with size > 1
tested: linux
2008-01-14 19:18:29 -05:00
Pedro Vicente Nunes
4c2256e946 [svn-r14410] code cleaning 2008-01-14 16:12:51 -05:00
Pedro Vicente Nunes
b8b215b34a [svn-r14409] more progress on the block hyperslab bug, clean code
modified the 1D test case for subsetting with block and stride factors

tested: windows, linux
2008-01-14 16:08:55 -05:00
Pedro Vicente Nunes
e8bd4e7e4c [svn-r14408]
more progress on the block hyperslab bug, clean code 


tested: windows, linux
2008-01-14 15:16:40 -05:00
Pedro Vicente Nunes
cdc33803ee [svn-r14407] more progress on the block hyperslab bug, clean code
tested: windows, linux
2008-01-14 13:47:50 -05:00
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
Pedro Vicente Nunes
d89234baaa [svn-r14397] partial fix for the block selection subsetting bug (2D case ok)
tested: windows, linux
2008-01-10 16:31:28 -05:00
Pedro Vicente Nunes
28b47d461f [svn-r14382] bug fix: enable NaN detection for double type
note: RFC at http://www.hdfgroup.uiuc.edu/RFC/HDF5/NaNs_and_HDF5/

tested: windows, linux, solaris
2008-01-08 15:14:59 -05:00
Pedro Vicente Nunes
95a801714b [svn-r14381] comment typo fix 2008-01-07 15:45:09 -05:00
Quincey Koziol
2f36ea99d4 [svn-r14284] Description:
Add H5Lvisit_by_name() API routine to library.

	Eliminated all (five!) other group traversal routines and changed them
all to use the new API routine.

	Cleaned up output of h5ls & h5stat:
		- Issue error when requesting recursive traversal of a file
			with the "group info" flag, but no group given
		- Print info about root group in all(?) appropriate situations
		- Don't print "verbose" information about root group until the
			root group is in the list of objects to display
	(mostly because h5ls & h5stat had a different twist on traversing the
groups in a file that the other utilities)

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
2007-11-24 11:49:36 -05:00
Pedro Vicente Nunes
3c4b177198 [svn-r14279] bug fix: when it's not possible to compare attributes due to different lenght in its type, make the options be flaged with the "not comparable" flag
tested: windows, linux
2007-11-21 11:59:04 -05:00
Pedro Vicente Nunes
0cdd1ec176 [svn-r14276] bug fix: avoid an assertion when string type sizes are different
instead print a warning message on verbose mode saying that the comparison is not possible

note: partial fix, the next step is to compare strings that have different type sizes

tested: windows
2007-11-20 15:39:39 -05:00
Pedro Vicente Nunes
7bb8728685 [svn-r14256] bug fix: h5diff did not handle NaNs
solution: added a NaN detection function according to RFC
http://www.hdfgroup.uiuc.edu/RFC/HDF5/NaNs_and_HDF5/

tested: windows XP Vs6, linux, freeBsd, solaris 5.10
2007-11-13 13:52:54 -05:00
Quincey Koziol
e15bdb05e6 [svn-r14225] Description:
Change H5Oget_info -> H5Oget_info_by_name and re-add H5Oget_info in a
simpler form for querying a particular object, to align with other new API
routines.

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
2007-10-31 08:13:40 -05:00
Quincey Koziol
b969dce6e5 [svn-r14224] Description:
Change H5Literate -> H5Literate_by_name and add simpler form of
H5Literate, to bring this routine into alignment with the other new API
routines.

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
2007-10-30 17:56:15 -05:00
Quincey Koziol
dbff4af21c [svn-r14217] Description:
Change H5Aopen -> H5Aopen_by_name, in order to be more consistent with
other new API routines.

	Re-add H5Aopen as a simpler routine, to open attributes on a particular
object.  (Much like the old H5Aopen_name routine).

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
2007-10-30 11:07:20 -05:00
Quincey Koziol
a5984f59f7 [svn-r14212] Description:
Make H5Tarray_create() and H5Tget_array_dims() versioned, and drop the
"perm" parameter from the '2' versions.

	Shift internal library usage to '2' versions.

	Add simple regression tests for '1' versions.

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
2007-10-18 17:02:19 -05:00
Quincey Koziol
13c484162c [svn-r14206] Description:
Make H5Pget_filter API versioned and switch internal usage to
H5Pget_filter2.

	Add regression test for H5Pget_filter1.

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
2007-10-17 07:48:04 -05:00
Quincey Koziol
d9e5ca72f3 [svn-r14199] Description:
Add H5Dcreate to API versioned routines, replacing internal usage with
H5Dcreate2

	Fix thread-safe error stack initialization for API versioned error
stack printing routines.

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
2007-10-11 11:24:11 -05:00
Quincey Koziol
16683943c6 [svn-r14193] Description:
Make H5Dopen versioned and change all internal usage to use H5Dopen2

	Add simple regression test for H5Dopen1

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
2007-10-08 14:59:36 -05:00
Quincey Koziol
bb3afd50c2 [svn-r14185] Description:
Move H5Aopen_name() routine to deprecated symbol section and replace
internal usage with H5Aopen().

	Add simple regression test for H5Aopen_name() to deprecated routine
test.

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
2007-10-04 14:29:58 -05:00
Quincey Koziol
3db40827da [svn-r14184] Description:
Move H5Aopen_idx() into deprecated symbols section, replacing all
internal usage with H5Aopen_by_idx().

	Add simple regression test for H5Aopen_idx().

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
2007-10-04 13:32:47 -05:00
Quincey Koziol
d4eec753a1 [svn-r14183] Description:
Move H5Aget_num_attrs() into deprecated routines section, replacing all
internal usage with H5Oget_info().

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
2007-10-04 12:36:17 -05:00
Quincey Koziol
2c93a80648 [svn-r14160] Description:
Make H5Topen versioned, and add regression test for H5Topen1.

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-27 15:28:27 -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
Quincey Koziol
94153c6c3d [svn-r14148] Description:
Add H5Rget_obj_type() to the API versioning and switch internal
routines to use H5Rget_obj_type2()

	Misc. other code cleanups, etc.

Tested on:
        FreeBSD/32 6.2 (duty)
        FreeBSD/64 6.2 (liberty)
        Linux/32 2.6 (kagiso)
        Linux/64 2.6 (smirom)
        AIX/32 5.3 (copper)
        Solaris/32 2.10 (linew)
        Mac OS X/32 10.4.10 (amazon)
2007-09-13 20:52:38 -05:00
Quincey Koziol
579284f422 [svn-r14144] Description:
Move H5Gget_objinfo() to deprecated symbols section and retarget
internal usage to H5Lget_info()/H5Oget_info().

	Misc. other code cleanups...

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	AIX/32 5.3 (copper)
	Solaris/32 2.10 (linew)
	Mac OS X/32 10.4.10 (amazon)
2007-09-13 10:44:56 -05:00
Quincey Koziol
3bed870363 [svn-r14136] Description:
Move H5Gget_num_objs() and several minor macros, etc. to deprecated
symbols section, replacing it with H5Gget_info().

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	AIX/32 5.3 (copper)
	Solaris/32 5.10 (linew)
	Mac OS X/32 10.4.10 (amazon)
2007-09-06 10:54:22 -05:00
Quincey Koziol
5c35e64c8a [svn-r14132] Description:
Regenerate the h5diff_types.h5 file, which had somehow gotten mangled
in some earlier checkin (prior to ~2-3 days ago, at least).

	Clean up formatting a bit also..

Tested on:
	Mac OS X/32 10.4.10 (amazon)
2007-08-30 15:34:13 -05:00
Quincey Koziol
a4069db8f4 [svn-r14131] Description:
Move H5Giterate() and H5G_iterate_t to deprecated symbols section,
replacing them with H5Literate and H5L_iterate_t respectively.

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	AIX/32 5.3 (copper)
	Solaris/32 5.10 (linew)
	Mac OS X/32 10.4.10 (amazon)
2007-08-30 15:03:37 -05:00
Quincey Koziol
71d6bffdd7 [svn-r14127] Description:
Move H5Gget_linkval to deprecated symbol section and replace with
H5Lget_val for internal calls.

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	Solaris/32 5.10 (linew)
	Mac OS X/32 10.4.10 (amazon)
2007-08-29 18:37:41 -05:00
Quincey Koziol
db3c155bf2 [svn-r14126] Description:
Move H5Gunlink to deprecated symbol section, replacing internal calls
with H5Ldelete.

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	Solaris/32 5.10 (linew)
	Mac OS X/32 10.4.10 (amazon)
2007-08-29 15:44:19 -05:00
Quincey Koziol
ea343ef854 [svn-r14115] Description:
Remove all plain calls to H5Gopen() from source, replacing them with
either H5Gopen2().

	Add test for H5Gopen1().

	Reformatted several pieces of code, to clean them up.

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	Solaris/32 5.10 (linew)
	Mac OS X/32 10.4.10 (amazon)
2007-08-28 10:02:54 -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
Quincey Koziol
e3966680ef [svn-r13948] Description:
Make h5dump more gracious and informative about objects it doesn't
understand.

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    No need for h5committest - very minor
2007-07-05 16:33:26 -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
Pedro Vicente Nunes
d9a56fa9ad [svn-r13874]
Changed macro names, conflict with new compiler

-- changed DATASET to H5_TOOLS_DATASET
-- changed DATATYPE to H5_TOOLS _DATATYPE
-- changed GROUP to H5_TOOLS_GROUP

In mingw's version of winsock2.h they define:

typedef unsigned int    GROUP;


remove STORAGELAYOUT macro, it was not used

tested: linux
2007-06-18 15:03:30 -05:00
Quincey Koziol
d3a0386d36 [svn-r13850] Description:
Hook "default VFD" configure macros into library.

	Also, make "default VFD" default to sec2 instead of nothing.

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Mac OS X/32 10.4.9 (amazon)
2007-06-11 13:51:20 -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
Scott Wegner
87a41d4286 [svn-r13766] In Visual Studio 2005 for 64-bit, _WIN32 is defined, but not WIN32, so I've standardized all #ifdef's to use _WIN32. This should not affect any other platform.
Tested:
Visual Studio (32- and 64-bit) on Win XP
2007-05-18 10:14:43 -05:00
Pedro Vicente Nunes
58cc7fb19a [svn-r13757]
h5repack and h5diff hyperslab I/O

changed the limit on which  hyperslab I/O is done from 1GB to 128MB

h5repack currently tests this feature by defining a dataset with dimensions of 128MB + 1byte (the datum being 1 byte integer), in which a 1Kb hyperslab was written.

tested: linux
there were some errors in running the tests, but these were in the library, due to a recent check-in that will be fixed shortly (at least we hope :-) )
2007-05-16 11:41:43 -05:00
Quincey Koziol
d6bb18abbc [svn-r13648] Description:
Rename new error handling API routines from H5E<foo>_stack() to
H5E<foo>2().

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    FreeBSD/32 6.2 (duty)
    FreeBSD/64 6.2 (liberty)
2007-04-11 20:59:45 -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
Pedro Vicente Nunes
1d312bff80 [svn-r13589]
h5repack code cleaning (required reconfigure)

tested: linux (32, 64, parallel), solaris
2007-04-04 15:25:42 -05:00
Quincey Koziol
0fb88ded47 [svn-r13580] Description:
Add version # and flags to external link format (as fields in a single
byte), in order to accomodate future changes/expansions.

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
    FreeBSD/32 6.2 (duty)
    FreeBSD/64 6.2 (liberty)
2007-04-03 14:51:14 -05:00
Pedro Vicente Nunes
2b1ad857ed [svn-r13576]
bug fix

a call was made to printf instead of parallel_print

tested linux parallel
2007-04-03 11:10:05 -05:00
Pedro Vicente Nunes
104e1cd848 [svn-r13573]
Bug fixes
Reset external file list slots name_offset to a state when created (0) in H5P_dcrt_copy
so that it conforms to an assertion in H5D_update_entry_info that assumes the name_offset is 0 at this point

this fixes the problem of h5repack and external files, add a new test and files for an external file

h5diff, check for an error return in H5D_get_storage_size

tested linux 32, 64
2007-04-02 15:28:14 -05:00
Quincey Koziol
c64ac252cd [svn-r13549] Description:
Check in changes from Elena and I to get pgcc compiler working again.
Primarily (all?) changes to move from using 'hsize_t' as array index to using
something else ('size_t') mostly.

Tested on:
    Linux/32 2.4 kagiso w/pgcc
2007-03-26 22:06:48 -05:00
Pedro Vicente Nunes
da23c98e58 [svn-r13505] make comments similar in 1.7 and 1.6 2007-03-12 14:24:38 -05:00
Pedro Vicente Nunes
c24cea791f [svn-r13503]
Preparation for making 1.6 and 1.7 h5dump more similar and 1.6 to have 1.7 fixed bugs incorporated
2007-03-12 11:36:34 -05:00
Pedro Vicente Nunes
bd01f34589 [svn-r13451]
h5diff bug fix, attributes differences were not being count for total
differences

Revision of H5Ocopy call in h5repack
2007-03-05 11:26:50 -05:00
Pedro Vicente Nunes
a0d5e09775 [svn-r13441]
make 1.7 h5repack more similar to 1.6 h5repack
2007-03-01 16:36:43 -05:00
Pedro Vicente Nunes
a9d32e4896 [svn-r13431]
Bug fix: the macro used for percentage in the unsigned types needed a cast to signed (the difference can be negative)

Unlike the 1.6 branch the unsigned long long conversion to float is supported by H5Tconvert , so the test commented for 1.6 is run (tools/testfiles/h5diff_16_2.txt)
2007-02-28 10:07:13 -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
Pedro Vicente Nunes
611b8dbb8a [svn-r13396]
Bug fix: Some output was being printed in quiet mode
2007-02-26 15:42:07 -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
Pedro Vicente Nunes
67f5810d84 [svn-r13368]
Added a little format alignment to the printing of dimensions
2007-02-21 15:05:04 -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
Pedro Vicente Nunes
5af701a32e [svn-r13334] Added a new function to print the dimensions sizes 2007-02-19 15:21:09 -05:00
Quincey Koziol
bb392083b2 [svn-r13297] Description:
Add small 'h5mkgrp' tool to create groups in an HDF5 file from the command
line, allowing the group structure for a file to be created in a script.  This
tool closely follows the 'mkdir' command line tool in UNIX/Linux.

    Allow tool library applications to pass a FAPL to the h5tool_fopen() call,
giving some additional flexibility to tools which are adding objects to an
existing HDF5 file (like h5copy & h5mkgrp).

    Fix missing files in MANIFEST from previous checkin(s).

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-02-14 08:54:11 -05:00
Quincey Koziol
d3c5ab50fc [svn-r13292] Description:
Add feature to h5copy to allow it to add an object to an existing file,
instead of blowing away existing file.

    Modify h5tools_fopen() routine to take access flags, so it can be used
to open an existing file for writing.

    Added check to h5copy test script that verifies it has produced a file
with the correct structure.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-02-13 17:42:43 -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
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
Pedro Vicente Nunes
ba14f83846 [svn-r13134]
New version of the function h5tools_dump_simple_subset, to display subsetting. The new algorithm is: 
Introduced an outer loop for cases where dimensionality is greater 
 than 2D. In each iteration a 2D block is displayed by rows in a inner
 loop. The remainning slower dimensions above the first 2 are incremented 
 one at a time in the outer loop

Note: when blocks are introduced, the display is not correct. This is a bug that requires an improvement of the algorithm.
2007-01-10 14:15:16 -05:00
Pedro Vicente Nunes
2a30e511b9 [svn-r13132]
Fixed #720 h5dump: improve how region references are displayed. h5dump now uses the new API function H5Rget_name to display the name of the dataset referenced instead of its ID. Added a case to the script test file
2007-01-10 11:24:27 -05:00
Pedro Vicente Nunes
f234483372 [svn-r13076]
fix for bugzilla bug #551

several programming errors contributed to this bug

1) the parsing of subsetting was using atoi to convert the parameter to an int,
which caused problems for numbers greater that int. Substitute with atof

2) several index counters were declared as int, use hsize_t instead

3) the numerical format passed for printf was %lu, defined one compatible with
hsize_t instead (unsigned long long)
2006-12-19 13:14:26 -05:00
Pedro Vicente Nunes
aa646b5b43 [svn-r13064]
Fix several bugs

1) the parsing of subsetting was using atoi to convert the parameter to an int, which caused problems for numbers greater that int. Substitute with atof

2) the printing of indices in the subsetting case was not being done. Solution: calculate the element position at the start of the subsetting using the algorythm 

Given an index I(z,y,x) its position from the beginning of an array   of sizes A(size_z, size_y,size_x) is given by
Position of I(z,y,x) = index_z * size_y * size_x 
                              + index_y * size_x
                              + index_x

And pass that position to the function that dumps data, h5tools_dump_simple_data. 

3) several index counters were declared as int, use hsize_t instead

4) modified the test generation program so that it includes test cases for subsetting of 1d, 2d, 3d, and 4d arrays and add these tests to the shell script
2006-12-14 16:18:08 -05:00
Pedro Vicente Nunes
28365eb5b3 [svn-r13042]
added a size of array information when printing differences
modified print_pos and diff_datum for having one extra argument *dims
2006-12-11 15:39:38 -05:00
Pedro Vicente Nunes
801aba05c0 [svn-r13032]
introduced a new macro PDIFF to calculate differences for unsigned types
2006-12-07 14:39:08 -05:00
Pedro Vicente Nunes
d9940e36b2 [svn-r13031]
introduced more ABS macro use
2006-12-07 12:13:41 -05:00
Pedro Vicente Nunes
405f1946d4 [svn-r13026]
fix some memory allocation problem with info->prefix
2006-12-06 16:14:39 -05:00
Pedro Vicente Nunes
60b03e6af7 [svn-r13025]
compiler warning clean

../../../hdf5/tools/lib/h5tools_ref.c:257: warning: old-style parameter declaration
2006-12-06 14:32:20 -05:00
Pedro Vicente Nunes
49b662bd0d [svn-r13024]
fixed 2 initializations of char* with HDstrdup and HDcalloc
info->prefix = HDcalloc(1, 1);
fname = HDstrdup(argv[opt_ind]);

some were exposed by compiler warnings
2006-12-06 12:00:14 -05:00
Pedro Vicente Nunes
4a97af8235 [svn-r13008]
more compiler warning

../../../hdf5/tools/lib/h5diff_attr.c:214: warning: passing arg 4 of `diff_array' with different width due to prototype
2006-12-01 13:27:34 -05:00
Pedro Vicente Nunes
57a9f392da [svn-r13007]
cleaned more warnings

../../../hdf5/tools/lib/h5diff_attr.c:214: warning: passing arg 4 of `diff_array' with different width due to prototype
2006-12-01 13:23:56 -05:00
Pedro Vicente Nunes
c9b6db7778 [svn-r13005] removed the PER_FLOAT macro 2006-12-01 11:40:46 -05:00
Pedro Vicente Nunes
7855afc4b2 [svn-r13003]
Cleaned warnings 
h5diff_array.c:804: warning: passing arg 1 of `fabs' as floating rather
than integer due to prototype
introduced double precision arithmetic when possible instead of single
precision
2006-12-01 10:42:26 -05:00
Pedro Vicente Nunes
61380ee661 [svn-r13000] more warnings clean up, modified PER macro to avoid unnecessary floating point comparison
../../../hdf5/tools/lib/h5diff_array.c: warning: comparing floating point with == or != is unsafe
2006-11-30 11:51:42 -05:00
Pedro Vicente Nunes
8a81f07bd7 [svn-r12999] cleaned more warnings
h5diff_array.c:127: warning: declaration of 'per' shadows a global declaration
2006-11-30 11:15:55 -05:00
Pedro Vicente Nunes
9f43fdd998 [svn-r12998]
cleaned compiler warning

../../../hdf5/tools/lib/h5diff_array.c:139: warning: declaration of 'per' shadows a global declaration
2006-11-29 16:34:16 -05:00
Pedro Vicente Nunes
124ef64faf [svn-r12984]
Added a relative error formula to deal with floating point uncertainty
in the comparison of floats and double types. 
Added new tests for this feature to the file generator program and to
the shell script
2006-11-27 15:10:53 -05:00
Pedro Vicente Nunes
51da322882 [svn-r12953] h5repack code revision, avoid one unnecessary call to file open/close in the cheking of objects when there are none requested by the user 2006-11-20 16:31:06 -05:00
Quincey Koziol
1482d3e9cb [svn-r12932] Description:
Basic support for H5Literate() routine.  Still needs to be fleshed out and
refactored to simplify.  Also, needs tests. :-)

Tested on:
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    AIX/32 5.? (copper)
    Mac OS X/32 10.4.8 (amazon)
2006-11-17 10:48:41 -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
Pedro Vicente Nunes
8040a0f381 [svn-r12928] code revision 2006-11-16 15:38:05 -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
Quincey Koziol
3f25d6c6d1 [svn-r12895] Description:
Add new H5Lget_val_by_idx() routine & tests.

    Also includes most of changes for H5Ldelete_by_idx() routine.

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    AIX/32 5.? (copper)
2006-11-13 10:00:06 -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
Pedro Vicente Nunes
89cca34b97 [svn-r12883]
h5dump bug 701. Symptom: The creation of a hardlink pointing to the root group "/" causes h5dump to display it as a link pointing to itself.
Cure: the root group was not being inserted in the table that keeps track of object names and links.
Added a test for this in the test generation program, the creation of a hardlink to the root
2006-11-08 16:24:41 -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
Quincey Koziol
5adf1ee1ba [svn-r12864] Description:
Changed H5Lget_linkval() to H5Lget_val(), per our design discussion last
Friday afternoon.

Tested on:
    Linux/32 2.6 (chicago)
2006-11-06 12:05:16 -05:00
Quincey Koziol
8b52aae45d [svn-r12835] Description:
Change H5Lget_linkinfo() to H5Lget_info() to better align with coming API
changes.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2006-10-30 19:45:31 -05:00
James Laird
c19a43d854 [svn-r12831] Changed the API for "unpacking" an external link value to take the size of
the linkval buffer, per Elena and Frank's suggestions while revising
the documentation.  Added error checking using this size, as well as a
couple of tests.

Tested on juniper, kagiso, and sol.
2006-10-30 15:24:19 -05:00
Pedro Vicente Nunes
199b2f9a1d [svn-r12826]
added a new test for h5diff relative error for the file generator
program
2006-10-30 10:18:58 -05:00
Pedro Vicente Nunes
469f6d30b1 [svn-r12819]
h5diff: print a message of "not comparable" in a case where the relative error
compare is not possible, due to the denominator being zero.  Modified
the test file generator program to include a example for this and a new
test on the shell script
2006-10-26 12:48:36 -05:00
Pedro Vicente Nunes
9d94440384 [svn-r12815]
1) added a new parameter to the h5diff function diff_array that contains
the beginning position of the hyperslab, so that the total position in
the array is printed correctly when reading by hyperslabs.
2) added a new test to h5diff  that reads and diffs by hyperslabs. The
test reads a 1GB dataset, from which a 1KB hyperslab was written with
differences .
3) added the generation of 2 files to the generator program to test the
h5diff hyperslab read.
4) changed the h5diff binary pre-generated file names to be more
descriptive (e.g, instead of file1.h5, made it h5diff_basic1.h5)
5) changed the name of the h5repack options text file to info.h5repack
2006-10-25 15:38:28 -05:00
Pedro Vicente Nunes
a1edc70691 [svn-r12784]
Fixes for bugs 676, 228

676: both h5repack and h5diff use H5Dread. In the case of a "big"
dataset, use read/write by hyperslabs the same way h5dump uses. An
arbitrary value of 1GB was defined for "big", i.e, if the dataset is
greater than 1GB, then read/write by hyperslabs

228: use the file type in read/write by default. A new switch -n was
introduced if the user wants to use a native type, which was the
previous use by default.

Added a new test for h5repack that repacks a 1GB dataset

Tested: heping (serial, parallel), sol, copper
2006-10-19 12:07:26 -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
Quincey Koziol
14dcb6db33 [svn-r12736] Description:
Add "use the latest format" support for dataspace object header encode/
decode routines and clean up format a bit for the latest format (new to 1.8.x
releases)

    Remove storing 'perm' parameter for array datatypes in memory and the file,
and add test to make certain that if any user applications are attempting to
store them, we get some reports back.  (Should be unlikely, since the RefMan
says that the parameter is not implemented and is unsupported).
    Carry those changes into the tests, etc.

    Clean up a bunch more compiler warnings.

Tested on:
    FreeBSD/32 4.11 (sleipnir) w/threadsafe
    Linux/32 2.4 (heping) w/FORTRAN & C++
    Linux/64 2.4 (mir) w/enable-1.6-compat
2006-10-08 23:18:18 -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
Pedro Vicente Nunes
110a855d5e [svn-r12687] reverted back some changes that inadvertedely added some output to the
parallel part of h5diff

tested : heping parallel
2006-09-26 14:21:55 -05:00
Pedro Vicente Nunes
c439d91f81 [svn-r12678] bug fix
the number of atribute differences was not added to the total sum of
differences
2006-09-25 10:49:26 -05:00
Albert Cheng
66d2d26f5d [svn-r12634] Purpose:
Code cleanup.

Description:
Removed argc and argv from the function arguments of h5tools_get_fapl() and
h5tools_fopen().  They were used to call MPI_Init() which was no longer
needed.

Tested:
heping (serial and parallel).
2006-08-27 19:55:27 -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
Albert Cheng
104edc6fb9 [svn-r12534] Purpose:
Bug fixes.

Description:
There were MPI_init and MPI_finalize calls in the code of h5tools_fopen in
parallel mode.  But if a non-MPI tool is invoke to open a non-existing
file, it tries to open the non-existing file with different VFD and
eventaully came to try with the MPIO or the MPIPOSIX vfd, then it would
try to do MPI_Init which would fail in the MPI environment if the a.out
was not launched by MPI properly.

Solution:
MPI_Init and MPI_Finalize in general should be called by the MPI application,
not called by a library subroutine as in the manner that was done here.
Removed the MPI_init and MPI_Finalize calls.  Used MPI_Initialized to
verify if this has been launched as an MPI application in the proper
manner before attempting to use the MPIO or the MPIPOSIX VFD to open
the file.

Tested:
In tg-ncsa parallel, where it had failed explicitly and also in Heping,
using both serial and parallel mode.
2006-08-03 21:57:36 -05:00
James Laird
3e755623cb [svn-r12528] Added User-Defined links to the library.
Users can create external links using H5L_create_external().  These links
point to an object in another HDF5 file.  Users can alter the behavior of
external links or create new kinds of links by registering callbacks
using the H5L interface.

Added tests, tools support, etc.

Also a number of other, minor changes have been made (some restructuring of
the H5L interface, for instance).

Additional documentation and examples are forthcoming.
2006-08-02 18:41:53 -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
Pedro Vicente Nunes
70b46a1d89 [svn-r12518] h5dump binary output:
1. changed the -F flag option names to "BE and "LE" for big and little endian 
2. added a more verbose usage message for these options
3. add a new test
4. add a make clean instruction  to *.bin
2006-07-31 11:04:31 -05:00
Pedro Vicente Nunes
c7384f49e0 [svn-r12513]
new feature
h5dump binary output. use little and big endian type conversions
2006-07-28 10:00:29 -05:00
Pedro Vicente Nunes
b7dd856aea [svn-r12504]
bug fix

calling h5tools_get_fapl running the mpio driver caused H5FD_pl_copy to
fail silently in some conditions. a MPI call was made before MPI_Init.

solution: corrected the MPI call to be made after MPI_Init and added error return
conditions to H5FD_pl_copy and h5tools_get_fapl

tested on copper parallel, mir, shanti
2006-07-27 10:01:48 -05:00
Quincey Koziol
e9d6c992d6 [svn-r12474]
Clean up some compiler warnings.

Tested on:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2006-07-15 14:49:04 -05:00
Pedro Vicente Nunes
7637b67933 [svn-r12444] Purpose:
new feature

Description:

added support for h5dump to dump binary data using the file type format
added one test to the test script that tests this


Solution:

Platforms tested:
mir
shanti
copper


Misc. update:
2006-06-28 14:34:08 -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
Pedro Vicente Nunes
8846157e59 [svn-r12437] Purpose:
new feature. h5dump output of binary data

Description:
a new switch -b FILE_NAME that dumps the contents of memory data to file FILE_NAME in binary form

new program binread.c that reads the contents of this file and outputs it to stdout

added a test for the h5dump shell script that does a run of -b
the binread.c program reads the data used in this run, usage is ./binread FILE_NAME


Solution:

Platforms tested:
linux
solaris
AIX

Misc. update:
2006-06-26 09:41:59 -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
Pedro Vicente Nunes
3c4e460d39 [svn-r12304] Purpose:
bug fix

Description:
the diff region output was done in verbose mode

Solution:
avoid it in verbose

Platforms tested:
linux

Misc. update:
2006-04-26 11:02:58 -05:00
Pedro Vicente Nunes
c5dc74de15 [svn-r12303] Purpose:
new feature

Description:
modified the test case for region points, so that there is not an ordered sequence of points that differ, but one with gaps

Solution:

Platforms tested:
linux

Misc. update:
2006-04-26 10:42:14 -05:00
Pedro Vicente Nunes
50c9a23725 [svn-r12297] Purpose:
new feature

Description:
added support for the printout of dataset region references differences
added a new test for this
merged the h5diff generator of test files into a single file

Solution:

Platforms tested:
linux 32, 64
solaris

Misc. update:
2006-04-25 13:19:40 -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
Quincey Koziol
2521c4084c [svn-r12254] Purpose:
Anti-feature

Description:
    Revert changes to H5G_stat_t struct, to make it compatible with the 1.6.x
branch again.  The information that was added to the H5G_stat_t struct will
be reported through other API routines.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/C++
    Linux 2.4/64 (mir) w/C++ & Fortran
    Solaris 2.9 (shanti)
2006-04-14 17:21:54 -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
Pedro Vicente Nunes
9d01b26a93 [svn-r12205] Purpose:
new feature

Description:
added the printout of the compression ratio for filters in h5repack, after the filter name, obtained with H5Dget_storage_size, before and after applying the filter

Solution:

Platforms tested:
linux
solaris
AIX

Misc. update:
2006-04-06 13:29:53 -05:00
Pedro Vicente Nunes
12f01d9cd4 [svn-r12199] Purpose:
bug fix

Description:
the percent error calculation in h5diff using double precision floating point were causing different results
on the release and debug versions of Visual Studio version 6, due to a compiler bug

Solution:
used single precision (float)

Platforms tested:
windows
linux
solaris
AIX

Misc. update:
2006-04-04 16:54:48 -05:00
Pedro Vicente Nunes
cd25a7690a [svn-r12171] Purpose:
bug fixes

Description:
h5dump/h5ls were not displaying long doubles correctly

Solution:
1) the print datatype functions were incorrectly testing for the valid return value from H5Tequal,
   (TRUE), causing the display of an incorrect name of a dataype in error cases from H5Tequal
2) h5tools_print_str did not have a case for native long double
3) added a file generator for a long double dataset
4) added one script test for the long double data (commented , some sytems don't have a native long double match, and the output differs)
5) added a vms file and h5dump script test


Platforms tested:
linux 32, 64
solaris
AIX

Misc. update:
2006-03-28 16:25:10 -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
Pedro Vicente Nunes
61b46d4b54 [svn-r12146] Purpose:
bug fix

Description:
percent relative error was done using integer arythmetic; use floating point instead
added the case for unsigned long long integer to float conversion

Solution:

Platforms tested:
linux (32,64)
AIX
solaris

Misc. update:
2006-03-23 14:27: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
Pedro Vicente Nunes
b269dbf0ae [svn-r12134] Purpose:
bug fix

Description:
1) added a more explainative usage message
2) the percent relative error for the integer type (division) was being done using integer arythmetic; use floating point arythmetic instead
3) added a new test for integer percent

Solution:

Platforms tested:
linux (32,64)
AIX
solaris

Misc. update:
2006-03-22 15:53:05 -05:00
Pedro Vicente Nunes
bd73819e26 [svn-r12126] Purpose:
bug fix

Description:
the compare check for the datatype sign was not done in the correct place, causing invalid
comparisons to be made

Solution:
put it on the correct place

Platforms tested:
linux 32, 64
AIX

Misc. update:
2006-03-21 11:01:42 -05:00
Pedro Vicente Nunes
a2f9ebb3ab [svn-r12124] Purpose:
bug fix

Description:
1) the compare flag test was not being put in a correct place, making comparisons attempts that were not supposed to be done
2) some duplicate warnings were being made

Solution:
eliminate the duplicate warnings, put the if compare flag on the correct place

Platforms tested:
linux 32, 64
solaris

Misc. update:
2006-03-20 14:39:46 -05:00
Pedro Vicente Nunes
ddf2b95cbd [svn-r12112] Purpose:
bug fixes

Description:
1) the option logic for the print of long types was done incorrectly (extra lines of code that were not supposed to be there)
2) the print of loong long types was incorrect

Solution:
1) removed the incorrect code
2) made a long long cast on the printf call

Platforms tested:
linux (32 and 64)
solaris

Misc. update:
2006-03-17 09:43:28 -05:00
Pedro Vicente Nunes
18a398023a [svn-r12094] Purpose:
bug fix

Description:
long long type was being incorrectly printed

Solution:
added a long_long cast to print function

Platforms tested:
linux

Misc. update:
2006-03-15 16:42:02 -05:00
Pedro Vicente Nunes
e7fd69d4e5 [svn-r12092] Purpose:
bug fix, new features

Description:
when comparing links , the output for the number of differences found was not being done

Solution:
print it
add 3 more tests that test the output of differences for 1) groups 2) datatypes 3) links

Platforms tested:
linux

Misc. update:
2006-03-15 13:08:47 -05:00
Quincey Koziol
56e3f667d6 [svn-r11886] Purpose:
Code cleanup

Description:
    Check in some of the code cleanups from working on the external link
support.  (This doesn't include any of the external link features)

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Mac OSX.4 (amazon)
    Linux 2.4
2006-01-23 15:46:34 -05:00
Pedro Vicente Nunes
5b5ce1f7d4 [svn-r11879] Purpose:
bug fix

a call to sprintf was giving incorrect output in the system Fedora Core 4 with gcc 4.0
(not supported by us, but user reported)

Solution:
the call was using the same buffer for source and destination variables, used different ones





Platforms tested:
linux (mir)
solaris (sol)

Misc. update:
2006-01-11 14:23:38 -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
Albert Cheng
706885260d [svn-r11736] Purpose:
Cleanup.

Description:
Removed reference to H5_HAVE_VSNPRINTF and the corresponding abort
since we do not use the home-grown potentially memory wacking version
any more.

Platforms tested:
heping.

Misc. update:
2005-11-16 13:24:44 -05:00
Quincey Koziol
da16ec38eb [svn-r11730] Purpose:
Bug fix

Description:
    Correct use of H5Gget_objinfo() which recent compact group checkins
exposed: we were attempting to follow dangling soft links.

Solution:
    Don't follow links for H5Gget_objinfo() when initializing object tables
for h5dump.

Platforms tested:
    Solaris 2.8 w/64-bit enabled
    Linux 2.4
    FreeBSD 4.11 (sleipnir)
2005-11-15 19:46:30 -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
James Laird
91cbcdf42f [svn-r11612] Purpose:
Bug fix

Description:
Failed parallel tests now cause make to exit with an error.

Solution:
Edited config/conclude.am to throw an error if parallel test programs fail.

Platforms tested:
heping, modi4
2005-10-27 17:30:46 -05:00
James Laird
69293e09df [svn-r11602] Purpose:
Bug fix

Description:
Removed detection of pdb from configure.in as a corollary to removal
of pdb2hdf5 tool.


Platforms tested:
mir, modi4
2005-10-24 14:31:06 -05:00
Pedro Vicente Nunes
c997f29d60 [svn-r11584] Purpose:
bug fix


Description:

an assertion after the search for objects was saying that the number of
objects in file should be > 0
removed it, since there can be a case where the number of objects is 0.
in this case this was found by a case where zlib was not present and the output file
was not written any objects to

note: this was only detected on the windows batch files, that do not have a conditional
condition to not run tests when a filter is not present


Solution:

Platforms tested:
linux

Misc. update:
2005-10-19 11:46:12 -05:00
James Laird
87a56d9da2 [svn-r11573] Purpose:
Bug fix

Description:
Changed configure.in to use an environment variable TR to set the path
to the tr utility.

Solution:
There are two kind of tr on Solaris with slightly different syntax.
HDF5's configure relies on the "standard" tr.  Traditionally, HDF5ers
have needed to make sure that the "right" tr was found before the
wrong one in their path; now they can use an environment variable.

Platforms tested:
mir, shanti, sol

Misc. update:
Forgot to update release notes.  Off to do that now.
2005-10-17 16:38:38 -05:00
James Laird
bcf3f797d4 [svn-r11566] Purpose:
Makefile bug fix

Description:
Previously, automake didn't output rules to build perform/mpi-perf or
the test/gen_* programs.
Now these can be built by typing 'make mpi-perf' (or 'make foo') or by
configuring with --enable-build-all.

Solution:
Automake doesn't like having rules for programs it doesn't build.  Tricked
it by having these programs built "sometimes"--whenever the user enables
--build-all.  This should be used mostly for testing and to ensure that
these helper programs compile.

***IMPORTANT***
These programs do *not* currently compile.  When --enable-build-all is used
(not the default), gen_new_fill fails because it uses an old API.  This is
an existing "bug" that has simply been exposed by this checkin.

Platforms tested:
sleipnir, modi4, sol

Misc. update:
2005-10-14 17:52:13 -05:00
Albert Cheng
8f7c1ce206 [svn-r11539] Purpose:
Added Copyright notice.

Platforms tested:
Tested in heping.
2005-10-11 12:25:18 -05:00
Albert Cheng
55c4f63df7 [svn-r11478] Purpose:
bug fix.

Description:
When a parallel test script test fails, make would continue because the
way it was setup inside a for loop.  Fixed it by issuing an exit 1 inside
the loop.

There was also a typo error in the newer command comparision that it
must be $${chkname} in order to be valid.  Also, the test script itself
was not checked in the newer lists.  All fixed.

Platforms tested:
h5committested and also hand tested in heping pp mode.
2005-09-29 00:17:06 -05:00
James Laird
3267458b64 [svn-r11446] Purpose:
Bug fix

Description:
Massaged the newer script and config/conclude.am to make SX6 happy.


Platforms tested:
SX6, sol, mir
2005-09-20 16:46:24 -05:00
Albert Cheng
c0e83899c3 [svn-r11431] Purpose:
New feature.

Description:
Added the time command to the make check target to report time usage
of the execute of each test and test scripts.  This gives us some idea
how long each test takes and some vague idea it is compute bound or
not.

powerpc-ibm-aix5.x:
Change $RUNPARALLEL default setting to allow it being invoked by the
time command.

Platforms tested:
h5committested.
2005-09-17 22:04:28 -05:00
James Laird
ae2a313b5b [svn-r11421] Purpose:
Feature

Description:
Added H5_CFLAGS, etc. to 1.7 branch.
Now compilation flags can be put in H5_*FLAGS and they'll be used when
building hdf5 but not in h5cc.


Platforms tested:
mir, sleipnir, modi4

Misc. update:
2005-09-16 16:26:17 -05:00
James Laird
b656c90c8a [svn-r11420] Purpose:
Bug fix

Description:
Disabled C++ shared libraries for Sun Workshop compiler.

Solution:
This bug only seems to happen when using the -xarch=v9 flag to compile in
64-bit mode, but disabling shared libraries entirely for this compiler is
an easier fix (I don't know how to detect 64 bit mode from the command line).
The framework for disabling shared libraries for other C++ compilers is
in place.

Platforms tested:
sol, mir, sleipnir, modi4
2005-09-16 16:16:11 -05:00
James Laird
cc8f7d98bf [svn-r11418] Purpose:
Bug fix/feature

Description:
Disabled shared libraries for a number of Fortran compilers that don't
support them.
This allows other compilers to support shared Fortran libraries.

Solution:
Added a conditional, SHARED_FORTRAN_CONDITIONAL, which is true if
Fortran supports shared libraries.  It is set in configure.in.

Platforms tested:
mir, sleipnir, colonelk, heping
2005-09-15 16:30:06 -05:00
James Laird
33beeb7f55 [svn-r11411] Purpose:
Bug fix

Description:
Building with --disable-static seems to have been broken on several platforms.
Fixed this.
Configure will now disable shared libraries automatically when using pgf90
or when building on Cygwin.

Solution:
To avoid errors when using shared libraries with pgf90 (which I had not
realized were compiler-specific), I had manually set convenience libraries
to use the -static linking flag.  Apparently, this is not necessary, and
caused these libraries to be created as empty archives when --disable-static
was used.
Also, some libraries were including other libraries, which was not
necessary.
I also fixed code in configure.in to correctly detect whether shared
or static libraries are enabled, and moved code that disables shared libraries
to before libtool is created (rather than editing libtool after the fact).
Despite repeated warnings that only one shared library can be linked at a
time, I have yet to have shared libraries break the linking of tests on
any system.  We'll see if the Daily Tests turn up anything.

Platforms tested:
mir (fortran, C++), sleipnir (C++), modi4 (fortran, C++, parallel),
sol (fortran, C++), cygwin
2005-09-13 17:30:33 -05:00
Elena Pourmal
946f03bd2c [svn-r11404] Purpose: Maintenance
Description:  Brought back changes from SX-6.

Solution: Program  will not compile. Fixed.

Platforms tested: SX-6, heping and mir with new g95

Misc. update:
2005-09-12 22:21:00 -05:00
Albert Cheng
6d3715e537 [svn-r11323] Purpose:
tidy up.

Description:
MPE option created *.clog file whenever it is executed in MPI.
The cleanup of *.clog files were done in individual Makefile.in.
Often, it is forgotten.

Solution:
Moved the cleaning of *.clog files to CHECK_CLEANFILES in commence.am
so that it is applied whenever check-clean is called.

Platforms tested:
heping pp using MPE.
2005-08-31 15:03:52 -05:00