Commit Graph

1616 Commits

Author SHA1 Message Date
Vailin Choi
0631ac2273 [svn-r15334] Update test files for h5stat.
h5committested.
2008-07-08 09:03:46 -05:00
Scott Wegner
6df2bbd6e9 [svn-r15181] 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 12:31:22 -05:00
Scott Wegner
0b5f34bfa6 [svn-r15160] 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 16:39:30 -05:00
Pedro Vicente Nunes
1229fc7886 [svn-r15151]
Fix for #1169
http://bugzilla.hdfgroup.uiuc.edu/show_bug.cgi?id=1169

don't print attributes to stdout when doing binary output
added an attribute to the file run on the binary output test

tested: windows, linux
2008-06-05 14:26:35 -05:00
Albert Cheng
018ba9a701 [svn-r15136] Purpose:
bug fixes.

Description:
Added code to create an empty hdf5 (named h5diff_empty.h5) in order to test
if h5diff compares correctly an empty hdf5 vs. a non-empty one.

Tested:
Tested in kagiso of h5diffgentest itself.
Verified by h5dump that h5diff_empty.h5 was indeed empty.
Then "h5diff h5diff_empty.h5 h5diff_basic1.h5" returned 0 (should have
returned non-zero).
2008-06-04 12:14:23 -05:00
Quincey Koziol
6e196a7b66 [svn-r15134] Description:
Brought revision 15133 back from trunk:

        Fixed bug in h5ls that prevented relative group listings (like
    "h5ls foo.h5/bar") from working correctly.

Tested on:
    Mac OS X/32 10.5.3 (amazon)
2008-06-03 19:25:29 -05:00
Quincey Koziol
79380c228c [svn-r15132] Description:
Bring back revision 15131 from trunk:

        Finish omnibus chunked dataset I/O refactoring, to separate general
    actions on chunked datasets from actions that are specific to using the v1
    B-tree index.

        Cleaned up a few bugs and added some additional tests also.

Tested on:
    Mac OS X/32 10.5.3 (amazon)
    Linux/32 2.4 (chicago)
2008-06-03 15:34:58 -05:00
Pedro Vicente Nunes
74568cf5ca [svn-r15053] Add a test for the 1.6.7 -i infile -o outifle for backward compability
Used the function TOOLTEST  from 1.6.7

Tested: linux
2008-05-21 09:57:30 -05:00
Pedro Vicente Nunes
69929158f5 [svn-r15048] bug fix regarding change from -i to -d regarding number of links in indexed format
tested: windows
2008-05-20 15:35:09 -05:00
Albert Cheng
4344cf5391 [svn-r15042] 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 serial and h5committested (kagisopp, smirom, linew).
2008-05-19 20:29:26 -05:00
Albert Cheng
feab08a0ee [svn-r15033] 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. (smirom had failures not due to
my changes.)
2008-05-18 21:25:13 -05:00
Pedro Vicente Nunes
57708e46ad [svn-r15024] backward compatibility for old -i infile -o outfile options
if these are detected this syntax is used, otherwise the one in usage is used
there was another -i option for 

-i L2, --indexed=L2     Minimum number of links in the indexed format

That was changed to -d

-d L2, --indexed=L2     Minimum number of links in the indexed format

Tested: windows, linux
2008-05-16 15:36:48 -05:00
Mike McGreevy
362e5d9a10 [svn-r15006] Purpose: configure cleanup
Description: cleaning up configure related to removal of --disable-hsizet
             flag, which we no longer support.

Tested: kagiso
2008-05-15 10:48:48 -05:00
Pedro Vicente Nunes
20c6bdda65 [svn-r14978] Support for external links follow up. The format is to print the target object as part of TARGETPATH, noted with some extra indentation
The previous printing of 
LINKCLASS 64
was removed

HDF5 "textlinksrc.h5" {
GROUP "/" {
   EXTERNAL_LINK "ext_link1" {
      TARGETFILE "textlinktar.h5"
      TARGETPATH "dset"
         DATASET "dset" {
            DATATYPE  H5T_STD_I32LE
            DATASPACE  SIMPLE { ( 6 ) / ( 6 ) }
            DATA {
            (0): 1, 2, 3, 4, 5, 6
            }
         }
   }
}
}

There is no script test for this behavior so far, because test script uses complete paths that vary from test to test, making not possible to define a valid TARGETFILE in the file

tested: windows, linux, solaris
2008-05-12 15:20:00 -05:00
Pedro Vicente Nunes
eb9ba954a5 [svn-r14948] Add a test for the floating point user defined printf format
Usage is 

-m T, --format=T

Where T - is a string containing the floating point format, e.g '%.3f'

The test consists of writing a number with 7 fractional digits (default precision display of %f is 6 digits) and have the 7 digits displayed with 

-m %.7f fpformat.h5

Tested: windows, linux, solaris

Note: the output file was generated in linux, it may be possible that platforms other than the ones tested have a different representation of the number
2008-05-06 15:08:11 -05:00
Pedro Vicente Nunes
8e184de40a [svn-r14915]
Introduced a compression ratio = uncompressed size /  compressed size
in the printing of the compression with 3 digits of precision per hdf-forum NASA developers suggestion

tested: windows, linux
2008-05-01 15:22:03 -05:00
Pedro Vicente Nunes
bee6951ac6 [svn-r14906] Introduced a ratio formula compression ratio = uncompressed size / compressed size
in the printing of the compression with 3 digits of precision per hdf-forum NASA developers suggestion

tested: windows, linux, solaris
2008-05-01 11:46:58 -05:00
Pedro Vicente Nunes
b2a2c17c44 [svn-r14895] RFC display compression ratio in h5dump
Here's the current behavior of h5dump regarding the printing of the dataset creation property list

For example

./h5dump -H -p -d filters

HDF5 "tfilters.h5" {
DATASET "deflate" {
   DATATYPE  H5T_STD_I32LE
   DATASPACE  SIMPLE { ( 20, 10 ) / ( 20, 10 ) }
   STORAGE_LAYOUT {
      CHUNKED ( 10, 5 )
      SIZE 385 
    }
   FILTERS {
      COMPRESSION DEFLATE { LEVEL 9 }
   }
   FILLVALUE {
      FILL_TIME H5D_FILL_TIME_IFSET
      VALUE  0
   }
   ALLOCATION_TIME {
      H5D_ALLOC_TIME_INCR
   }
}
}


The proposed behavior is to add this information after SIZE

SIZE 385 (51.9%COMPRESSION)

That percentage is obtained trough

Per = (b-a) / a

Where a = theoretical size obtained by multiplying datum size times number of elements
b =  size obtained with H5Dget_storage_size

The final print would look like

HDF5 "tfilters.h5" {
DATASET "deflate" {
   DATATYPE  H5T_STD_I32LE
   DATASPACE  SIMPLE { ( 20, 10 ) / ( 20, 10 ) }
   STORAGE_LAYOUT {
      CHUNKED ( 10, 5 )
      SIZE 385 (51.9%COMPRESSION)
    }
   FILTERS {
      COMPRESSION DEFLATE { LEVEL 9 }
   }
   FILLVALUE {
      FILL_TIME H5D_FILL_TIME_IFSET
      VALUE  0
   }
   ALLOCATION_TIME {
      H5D_ALLOC_TIME_INCR
   }
}
}

tested: windows, linux, solaris
2008-04-29 14:15:53 -05:00
Mike McGreevy
934d532544 [svn-r14824] Purpose: Updating HDF5 1.8 to use automake 1.10.1 and libtool 2.2
Description:     Updated bin/reconfigure script to reflect the new versions of
                 libtool and automake in the /home1/packages/ directory.

                 Rearranged configure.in script. For some reason, when using
                 libtool 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, tg-login
2008-04-10 15:52:14 -05:00
Pedro Vicente Nunes
59f29fa02f [svn-r14802] 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-07 10:53:35 -05:00
Vailin Choi
87be7927dd [svn-r14703] 1. H5HFiblock.c: fixed problem for uninitialized "u" for bug #1072 in H5HF_man_iblock_size().
2. H5HFstat.c: Since H5HF_space_size() zeroed out fs_size, add "meta_size" to store
   free-space size before adding to "heap_size".
3. h5stat_gentest.c: increase # of groups to get "h5stat_newgrat.h5" that contains 
   indirect block entries in fractal heap.  
   This is for testing the recursive part of the code in H5HF_man_iblock_size().
4. h5stat_newgrat.h5: the new .h5 file generated by h5stat_gentest.c.
5. h5stat_newgrat.ddl: expected output from new "h5stat_newgrat.h5".

Tested on kagiso, smirom, linew.
2008-03-04 15:04:18 -05:00
Quincey Koziol
a233b8a08d [svn-r14691] Description:
Handle comparing datasets & attributes w/variable-length strings properly.

Tested on:
    Linux/64 2.6.9 (chicago)
2008-02-28 09:53:38 -05:00
Mike McGreevy
bd0e39e8e0 [svn-r14470] Purpose: Fixing configure problem on IRIX64.
Description:	IRIX64 failed to build tools/h5import, as well as c++/test 
		with szip. This is because IRIX is very picky when it comes 
		to linking libraries, and must be done in specific order. 
		(other UNIXes are not as such, and thus the problem wasn't 
		present).

Solution:	Rearrange the order in which the libraries are
		linked on the compiler line by sorting the line that
		assigns libraries into the LDADD variable in the Makefile.am's
		of the two respective directories.

Tested:		IRIX64, kagiso, smirom
2008-01-30 09:07:18 -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
Quincey Koziol
e622f33515 [svn-r14420] Description:
Correct the prototype for H5Sselect_elements() to take an 'hsize_t *' for
the coordinates, instead of 'hsize_t **'.

Tested on:
    Mac OS X/32 10.5.1 (amazon)
2008-01-15 16:10:42 -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
Quincey Koziol
7fc10c0ea7 [svn-r14413] Description:
Change H5P[gs]et_format_bounds() => H5P[gs]et_libver_bounds() and also
enumerated values H5F_FORMAT_{EARLIEST, LATEST} => H5F_LIBVER_{EARLIEST, LATEST}

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-14 18:49:12 -05:00
Pedro Vicente Nunes
a6605796b3 [svn-r14412] more progress on the block hyperslab bug, clean code
modified the 3D test case for subsetting with block and stride factors

tested: windows, linux
2008-01-14 16:57:19 -05:00
Pedro Vicente Nunes
1c3e5859d1 [svn-r14411] more progress on the block hyperslab bug, clean code
modified the 2D test case for subsetting with block and stride factors


tested: windows, linux
2008-01-14 16:29:09 -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
7e80ad2af2 [svn-r14384] new file with output regarding the new binary file 2008-01-08 16:09:19 -05:00
Pedro Vicente Nunes
91b0b68167 [svn-r14383] new binary file: with double dataset with NaN values 2008-01-08 16:01:51 -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
Pedro Vicente Nunes
8ba92cda45 [svn-r14380] Eliminate old code not used and that was replaced (command line)
tested: windows, linux
2008-01-07 15:36:32 -05:00
Pedro Vicente Nunes
20c5484440 [svn-r14379] add check of some values for the nbit and scale offest filters on the h5repack verify function
note: some sybols were made public

tested: windows, linux
2008-01-07 14:16:29 -05:00
Pedro Vicente Nunes
6d53c1882b [svn-r14376] moved a couple more private filter symbols to the public side, needed by h5repack
tested: windows, linux
2008-01-04 14:52:19 -05:00
Pedro Vicente Nunes
6f820c0a24 [svn-r14368] clean code and reshufle functions between modules, remove unused functions
tested: windows, linux
2008-01-03 15:45:18 -05:00
Pedro Vicente Nunes
ba709fe871 [svn-r14366] comments grammar correction 2008-01-03 15:03:38 -05:00
Pedro Vicente Nunes
5aab9089de [svn-r14365] Add szip filter check of client data values for has_filters.
NOTE: szip client symbols were made public

Tested: windows, linux, solaris
2008-01-03 14:59:25 -05:00
Quincey Koziol
35694d44ae [svn-r14362] Description:
Switched from "H5P[gs]et_latest_format" to "H5P[gs]et_format_bounds".

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-03 08:55:39 -05:00
Pedro Vicente Nunes
23c1eb4a6c [svn-r14361] add a warning message in case a dataset cannot be created with modified DCPL
tested: linux
2008-01-02 15:45:33 -05:00
Pedro Vicente Nunes
7e1d390491 [svn-r14360] New function has_filters (replace has_filters for each object and for global filters): verify if all requested filters in the array FILTER obtained from user input are present in the property list PID obtained from the output file. All the filter comparison of client data values is done here instead of the previous filtcmp
TO DO: szip, nbit and scale offset
NOTE: the symbol H5Z_SHUFFLE_TOTAL_NPARMS was made public

Tested: windows, teragrid with icc 8.1, linux (kagiso), solaris (linew)
2008-01-02 14:40:20 -05:00
Quincey Koziol
02a90afcdc [svn-r14358] Description:
Tweak the constants for the shared message flags to be equal to the
other flags useds for the underlying messages.

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-12-22 22:28:37 -05:00
Pedro Vicente Nunes
491971980d [svn-r14355] uncomment previously commented code regarding nbit and scale-offset filter adding
changed the logic of the filter compare function to first compare filter type, then filter client data values (separate here in each individual case, since some filters return private filter values. Todo: handle the nbit and scale-offest cases)

tested: windows, linux
2007-12-20 16:31:34 -05:00