Commit Graph

193 Commits

Author SHA1 Message Date
Allen Byrne
cc3eb8da73 [svn-r21804] Update CMake Required version in all folders to match current standard 2.8.6 2011-12-05 11:19:09 -05:00
Allen Byrne
c5e075851a [svn-r21667] Update FOLDER solution option for target properties. Added OPTION command for solution folder and no packaging.
Tested: local linux
2011-10-25 11:52:58 -05:00
Dana Robinson
fa4ab23b9e [svn-r21664] Added solution folders for most of the projects. This still needs some polish - the solution folder assignment should go closer to the target declaration and not all projects are grouped (parallel, c++, fortran, hl, and a few others).
Tested on Windows.
2011-10-25 01:59:10 -05:00
Allen Byrne
2457d8ecaf [svn-r21366] JIRA HDFFV-2748 replace use of _WIN32 in source. Created new defines H5_HAVE_WIN32_API and H5_HAVE_VISUAL_STUDIO defines to use. These can be properly set during configurration.
Tested: windows and local linux - reviewed internally
2011-09-06 11:50:32 -05:00
Scot Breitenfeld
9eb1d607d8 [svn-r21249] Description: Part II of F2003 branch merge into the trunk.
Ran bin/reconfigure to update the Makefile.in in directories not part of the fortran directory check=in. Updates Makefile.in due to changes made in configure.in for the Fortran 2003 additions.

Tested on all platforms run under daily tests.
2011-08-18 09:38:53 -05:00
Allen Byrne
46049ef382 [svn-r21109] Renamed test files to more descriptive name
Tested: local linux (after clearing old testfiles)
2011-07-18 09:28:11 -05:00
Allen Byrne
05d13386f2 [svn-r21108] Renamed test files to more descriptive name
Tested: local linux
2011-07-18 09:25:42 -05:00
Allen Byrne
3397a114ce [svn-r21091] Replace #ifdef WIN32 around 64 bit integers with H5_SIZEOF_LONG_LONG. This is set if 64-bit integers are supported.
Tested: local linux
2011-07-11 10:39:02 -05:00
Jonathan Kim
11349c2361 [svn-r21057] [hdf5 Trunk ] TODO
Purpose:
    Work for HDFFV-7602 - HDF5 command tools: Provide framework for reusable 
    test files among tools
Description:
    Provide framework to share test files among tools for tools test.

Tested:
    jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE)
2011-06-30 16:36:34 -05:00
Allen Byrne
3f11adaec2 [svn-r20875] Refactor h5import to close files and free allocations. Also corrected test dependencies so that memcheck would process tests in correct order.
Tested: local linux - confirmed with valgrind
2011-05-20 12:09:57 -05:00
Allen Byrne
907a5a1df0 [svn-r20713] Packed Bits Merge:
removed option defines and #ifdef/#endif
   refactored all printf to HDfprintf in h5dump.c
   formatted and indention improvements
   synched with 1.8 branch
   
Tested: local linux
2011-05-03 12:56:23 -05:00
Mike McGreevy
98362b664c [svn-r20504] Purpose:
General shared library improvements for CYGWIN / AIX

Description:

    Shared libraries are disabled on both CYGWIN and AIX due
    to inability to build them correctly. Part of the problem
    in both of these situations is the lack of the libtool
    flag -no-undefined, which tells libtool that all needed
    symbols are defined at link time (a requirement on these
    systems) and that it's okay to build shared libraries.

    Another problem are lack of dependencies between wrapper
    libraries and core C HDF5 library.

    This patch addresses both of these by fixing configure to
    add in -no-undefined flag for libtool during linking and
    adds automake dependencies in the Makefile.am files.

    After testing, both CYGWIN and AIX now generate shared
    libraries, but there are still some test failures in each.
    (cache_api, dt_arith, and testerror.sh on CYGWIN, and
    fortran tests on AIX).

    Even though the shared libraries are not quite perfect,
    this is a general improvement to what we had before, so
    I'm applying the patch anyways. Note that default behavior
    of shared libraries on these systems being disabled has
    NOT been changed and requires the use of the
    --enable-unsupported to attempt to build them.

    We will need to address the test failures in each
    architecture prior to formally supporting shared
    libraries on each.

Tested:

    h5committested & CYGWIN tested (on bangan)
    (AIX tested by Albert on bp-login2)
2011-04-14 16:21:59 -05:00
Mike McGreevy
a45c7424b2 [svn-r20502] Purpose:
Add "silent make" mode configure option.

Description:

    Automake 1.11 has a new option available that allows for a
    silent make mode. This functionality needs to be explicitly
    enabled in configure.in via the use of the automake macro
    AM_SILENT_RULES, which is what this commit is adding.

    This introduces a new configure option: 

        --{en|dis}able-silent-rules

    This option is on by default, and simplies compile and link
    line outputs when building the library. Disabling this option
    will print full "verbose" output (i.e., full compile and
    linking lines for each target).

Tested:

    This was tested on jam & h5committested
2011-04-14 14:45:57 -05:00
Mike McGreevy
e006157deb [svn-r20475] Purpose:
- Revise shared Fortran library disabling scenarios in configure
    - Improve configure output summary

Description:

    Shared Fortran libraries are not supported on Mac, but were being
    disabled by configure in a way that also forced the C libraries
    to be static-only. This has been fixed, so now only shared Fortran
    is disabled while shared C can remain.

    This prompted two additional changes:

        1. While working on the check that addresses whether or not
           shared Fortran libraries are allowed, removed old and no
           longer needed check(s) that disable shared Fortran
           libraries with HP, Intel 8, PGI, and Absoft compilers.
           (Essentially, Mac is the only situation in which Fortran
           shared are disabled by configure.)

        2. Having two different states of libraries (i.e. shared C
           library with static-only Fortran library) was not apparent
           in the configure summary, which labeled all libraries as
           either shared and/or static. I've added lines to both the
           C++ and Fortran output sections to list shared/static-ness
           of these libraries specifically.

    Additionally, I've made sure that the new --enable-unsupported
    configure option correctly overrides configure if it tries to
    disable a shared library.

Tested:

    jam, fred, & h5committest
2011-04-11 16:00:38 -05:00
Allen Byrne
0c032eef21 [svn-r20458] Change handling of reference files so that the output of import is restored
HDFFV-5930
2011-04-08 16:20:47 -05:00
Allen Byrne
466c139597 [svn-r20363] Updated commands to properly clear generated files
Tested: local linux
2011-03-29 10:15:02 -05:00
Allen Byrne
76abbdeff0 [svn-r20305] Add tests to h5import and 80% of h5jam
Tested: local linux
2011-03-23 16:23:11 -05:00
Allen Byrne
05dfc85de8 [svn-r20153] Move ext lib handling for ext project building to a common macro. Update HDF5 project to use HDFMacros.cmake file. Add test properties for test ordering.
Tested: local linux, windows
2011-02-24 14:43:07 -05:00
Allen Byrne
5d320f5c89 [svn-r20141] Bring 1.8 r20139 cmake and windows changes to trunk 2011-02-22 09:55:04 -05:00
Allen Byrne
9449cfa361 [svn-r19907] Windows: Correct how fortran links in CRT library. Also correct macro use for checking libtype.
bring r19906 from 1.8 branch
2011-01-04 13:40:26 -05:00
Allen Byrne
86313eb281 [svn-r19895] Remove use of /MT compile flag for building static libs and programs. Added BUILT_AS_STATIC_LIBRARY define to set the windows import/export defines correctly for static libraries. 2010-12-29 13:52:34 -05:00
Larry Knox
72634b34e4 [svn-r19839] Updated to libtool v 2.4, autoconf 2.68 and m4-1.4.15.
Tested with h5committest on amani, heiwa, and jam.
2010-11-23 17:56:59 -05:00
Allen Byrne
1f2c4afe77 [svn-r19527] Add clear generated objects commands to test blocks.
Add configurefile command to copy CTestCustom to build folder.

Tested: local linux
2010-10-06 15:49:54 -05:00
Larry Knox
155b00d8ff [svn-r19506] Bring changes from revisions 19408, 19421, and 19442 from branches/hdf5_1_8 to trunk. These revisions reorganize the compile scripts using h5cc.in, h5fc.in, and h5c++.in, add checks for installed examples to the scripts that run them after installation, and add DESTDIR for install as needed for RPMs.
Tested on amani, heiwa and jam by h5committest and with CYGWIN.
2010-10-04 12:15:30 -05:00
Allen Byrne
b4be8ae3d5 [svn-r19434] Correct use of lib, include, bin in INSTALL commands to use proper variables.
Tested: local linux
2010-09-20 15:38:35 -05:00
Larry Knox
47c792faa0 [svn-r19366] Updated autoconf to version 2.6.7, libtool to version 2.2.10, and m4 to version 1.4.14. Also added m4 directory for m4 macros according to autoconf suggestion.
Tested with h5committest on amani, jam, and heiwa, and on linew.
2010-09-10 10:45:07 -05:00
Allen Byrne
bed1276413 [svn-r19361] Move Windows specific compile and link flags to macros 2010-09-09 11:30:23 -05:00
Allen Byrne
e65aa8c365 [svn-r19325] Added parallel build commands.
Corrected use/name of source folder aliases.
Duplicated FindMPI.cmake so that non-c++ compiler is found first (recommemded commands did not work).

Tested: local linux with mpich
2010-08-31 15:15:13 -05:00
Allen Byrne
5c549a6345 [svn-r19300] BZ 1958: Add h5dump xml tests to CMake support
Tetsed: local linux
2010-08-25 17:33:59 -05:00
Larry Knox
10a8b060ca [svn-r19059] Brought changes from hdf5_1_8 to add version information for fortran and c++ compilers in libhdf5.settings file and configure output (r18836), to install examples as part of make install (r18680), and to provide scripts to compile and run the examples after they are installed (r18817).
Tested with new/h5committest on amani, heiwa, and jam.
2010-07-08 21:52:14 -05:00
Allen Byrne
2f13382883 [svn-r19037] Added executable Linker Flag for MSVC static builds: /NODEFAULTLIB:MSVCRT
Added VERSION vars for inclusion into auto snapshot version update script

Tested windows
2010-06-29 15:09:03 -05:00
Allen Byrne
80e6dfe3ba [svn-r18856] Added CPack commands for installtion program
Tested: local linux and Windows
2010-05-19 15:11:00 -05:00
Mike McGreevy
88de0e02f0 [svn-r18808] Purpose:
Fixed file cleanup during make distclean / make check.

Description:

    The h5jam Makefile and the h5importtestutil.sh script both included cleanup
    steps that removed "*.txt" from the directory. This resulted in the new
    CMake specific configuration file, CMakeLists.txt, getting blown away by 
    make distclean (for h5jam) and make check (for h5import).

    I've removed the *.txt from the h5jam Makefile as the directory looks to be
    getting cleaned appropriately without it, and I've modified the h5import
    script h5importtestutil.sh to point to the specific .txt files to clean.

Tested:

    jam
2010-05-14 15:29:57 -05:00
Allen Byrne
ae06433ab0 [svn-r18793] Add files to support building library with CMake
Tested: Local linux
2010-05-13 11:01:50 -05:00
Allen Byrne
68fa42f336 [svn-r18759] pull r18757 from 1.8 branch
Enable tools lib to be built as a dll on windows. Added two get/set functions for progname and d_status.
Also add windows import/export declarations to functions.
Updated error_mesg() and warn_mesg() to remove progname argument and use get functions

Tested:
   Windows, linux
2010-05-11 15:10:25 -05:00
Mike McGreevy
f0ecd71307 [svn-r18709] Purpose:
Improve configure's large-file support control.

Description:

    Modified configure to now attempt to add defines necessary for
    supporting largefiles on all systems, instead of solely on linux. This 
    is in response to user requests to enable largefile support on Solaris 
    by default, as well as to give extra control on AIX (instead of just 
    jamming the necessary flag into the config files).

    The old --enable-linux-lfs flag has been removed in favor of the 
    --enable-largefile flag (enabled by default), which can be used on all
    platforms.

    On systems where large files cannot be supported in this manner,
    configure will report as such.

Tested:

    h5committest
    AIX (NCSA's blue_print machine)
    duty, liberty, and linew.
2010-05-05 12:34:26 -05:00
Mike McGreevy
0cf2a97cfb [svn-r18579] Purpose:
Autotool Upgrade / Libtool Bug Fix

Description:

    Updated autotools referenced in bin/reconfigure as follows:

    Autoconf 2.64 --> Autoconf 2.65
    Automake 1.11 --> Automake 1.11.1
    Libtool 2.2.6a --> Libtool 2.2.6b-mcg

    The referenced libtool version is a custom version of 2.2.6b. It 
    has been tweaked to fix a bug in libtool that occurs
    when using PGI 10.0 compilers. A check incorrectly categorizes
    the C++ compiler as version 1.0 instead of 10.0, and the link
    line is subsequently set up incorrectly and fails to compile.

    A patch has been made available and will be included in the next
    release of libtool, but in the meantime I've applied the patch to a custom
    installation as indicated above. This bin/reconfigure now references
    the custom installation, and the resulting configure script will correctly
    categorize the PGI 10.0 C++ compiler.

    Ran bin/reconfigure to regenerate configure and makefiles.

Tested:

    jam and amani with PGI 10.0 compilers.
    h5committest
2010-04-15 16:17:22 -05:00
Quincey Koziol
fd70b2afa8 [svn-r18197] Description:
Trim trailing whitespace from source code files with this command:

find . \( -name "*.[ch]" -or -name "*.cpp" -or -name "*.f90" \) -print |xargs -n 1 sed -i "" 's/[[:blank:]]*$//'

Tested on:
    None - eyeballed only
2010-01-29 23:29:13 -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
Albert Cheng
f40a245ce2 [svn-r18055] Bug fix: 1192
Description:
Fixed exit code (sometimes return code in Main) to follow the HDF5 standards.

Tested:
H5committested plus serial test in Jam.
2009-12-26 03:36:37 -05:00
Quincey Koziol
34d14bdf89 [svn-r17980] Description:
Bring Coverity changes into the trunk: (also other minor cleanups)

r17955:
Fix Coverity item 24.  Add missing error condition to
H5AC_ext_config_2_int_config.

r17956:
Fix Coverity item 24.  Improve error checking in H5A_compact_build_table_cb.

r17957:
Fix Coverity item 150.  Fix warning in H5A_compact_build_table_cb.

r17958:
Fix Coverity item 117.  Fix error handling in H5B_shared_new.

r17959:
Fix Coverity item 209.  Added an assertion for leaf->shared in
H5B2_cache_leaf_dest.

r17960:
Fix Coverity item 208.  Added an assertion for internal->shared in
H5B2_cache_internal_dest.

r17961:
Fix Coverity item 89.  Reworked the code to avoid array overrun in
H5C__autoadjust__ageout__insert_new_marker.

r17962:
Fix for coverity Resource_leak 195,203,204,205.

r17963:
Fix Coverity item 44.  Prevented potential NULL dereference in H5D_btree_debug.

r17964:
Fix Coverity issues #197, 198 & 199: memory not being released.  (Also
clean up other resource leaks in nearby and/or similar code).

r17965:
Fix Coverity issue #151: release resources on error

r17966:
Fix Coverity issue #187: Remove leftover code remnant from prior bugfix
which was causing resource leak of open files.

r17967:
Fixed Coverity issues # 193 & 194.  Removed unnecessary memory allocation and
added comparison of length of path parameter to the size of the destination
buffer in h5import.h/h5import.c.

r17968:
Fix Coverity item 144.  Fixed memory leak on error in H5D_chunk_copy.

r17969:
Fix for coverity Resource_leak #196.

r17970:
Coverity 167-173:
Initialized pointer of buffers.
In error handling, closed types and free memory.

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-10 07:36:56 -05:00
Quincey Koziol
30a52dd1a2 [svn-r17838] Description:
Further refactoring of v2 B-tree code, moving toward being able to pass
a context information to a client's encode/decode callbacks.

	Also, clean up of other minor compiler warnings and code formatting
issues.

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.1 (amazon) in debug mode
        Mac OS X/32 10.6.1 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2009-11-05 08:45:35 -05:00
Albert Cheng
bb281b23e9 [svn-r17697] Bug fix: (1192)
Error exit code of -1 is illegal (exit code is unsigned).
Changed it to EXIT_FAILURE (1).
Also changed exit(0) to exit(EXIT_SUCCESS) for better coding.

Tested: jam.
2009-10-20 18:46:13 -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
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
Mike McGreevy
6a00b1b6ff [svn-r17228] Purpose:
Fix BZ #1583

Description:

    The --enable-static-exec flag was broken. Configure was adding the 
    -all-static linker flag to an environment variable which was subsequently
    never used. (looks like it was used in 1.6 Makefile.ins, but never
    moved to 1.8's Makefile.ams when we added automake support).

    To fix, I've added this environment varibale to the link lines of all the
    tools. Now, when --enable-static-exec is invoked, it will correctly
    generate statically linked executables in the installed bin directory.

Tested:

    I've tested manually to ensure that the generated execs are static when
    the flag is used and dynamic when not. I've also tested when szip is
    used, as this was a use case mentioned in the bug report.

    Also: ran full tests with make check on jam and smirom for good measure.
2009-07-23 15:04:18 -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
5b9b684c89 [svn-r16584] added the OUTPUT-ARCHITECTURE STD that was previously removed 2009-03-16 17:15:13 -05:00
Pedro Vicente Nunes
557aae404d [svn-r16571] corrected the date on the release.txt entry and a comment on the script 2009-03-11 14:24:01 -05:00
Pedro Vicente Nunes
a0c7a9a67e [svn-r16569] the conf file needs a byte order entry because of the way the tool validates the output with h5dump (comparing the h5dump current output with a h5dump output from a pre-existent h5 file).
added the byte order keyword that was removed on the last check in

tested: linux, solaris
2009-03-11 14:02:11 -05:00