Commit Graph

328 Commits

Author SHA1 Message Date
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
b7e35aef0e [svn-r17924] Description:
Add detection for POSIX lstat() routine to configure script (mostly for
non-UNIX/Linux machines) and add macro wrapper for it.

	Alphabetatize the system/library calls we test for, to make them easier
to read.

	Removed the sigaction() detection & macro wrappers, since it's not
used by the distribution currently.

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-11-23 16:34:51 -05:00
Albert Cheng
f747b55895 [svn-r17716] Cosmetic change to use exit(EXIT_FAILURE) instead of exit(1).
Tested: jam-pp.
2009-10-21 13:55:45 -05:00
Mike McGreevy
7f0eb8e04e [svn-r17627] Purpose:
Couple quick configure cleanups

Description:

    - Made a few AM_LDFLAGS assignments a bit safer. 

    - Regenerated a couple Makefile.in's via bin/reconfigure to address
    some typo-fixes that didn't propagate in my last check-in.

Tested:

    - h5committest
    - Also, I suspect this fix will address a failure on Sandia's clogin2 
    machine, but Albert currently has no password to gain access, so I have
    only minimal logs of the failure and no way to test it there. I'll
    just let the automated tests there determine if indeed I'm right.
2009-10-09 15:12:06 -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
Albert Cheng
8d8f365711 [svn-r17606] Code Cleanup:
TFLOPS machine has retired long ago. Removed all code specific for its
support.

Test:
h5committested.
2009-10-07 00:08:05 -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
Quincey Koziol
e99906f517 [svn-r17268] Description:
Bring r17266 from 1.8 branch to trunk:

    Clean up various compiler warnings from IRIX64 build

Tested on:
    Mac OS X/32 (amazon) debug & production
    (yes, I know it's not an IRIX64 system :-)
    Too minor to require h5committest
2009-07-29 20:59:24 -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
Allen Byrne
d2ef2af9b2 [svn-r16969] Updated perf_serial test to work on windows.
Tested:
Windows and h5committest
2009-05-21 10:40:03 -05:00
Neil Fortner
8c074d5c03 [svn-r16807] Purpose: Fix bug 1533
Description:
Previously, there was no versioning for H5Z_class_t.  This prevented applications
written for 1.6 using custom filters from being able to use the 1.8 library.
There is now an H5Z_class1_t and H5Z_class2_t to enable compatibility.  H5Zregister is
*not* versioned, it determines which version of the struct has been passed in by the
value of the first field (id or version, both are ints).

Tested: jam, linew, smirom (h5committest), jam (--with-default-api-version=v16)
2009-04-20 14:12:19 -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
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
Quincey Koziol
b4ff3e6e79 [svn-r16560] Description:
Remove another call to H5E_clear_stack() from within the library.

    Clean up lots of compiler warnings.

Tested on:
    Mac OS X/32 10.5.6 (amazon)
    (followup on other platforms forthcoming)
2009-03-10 14:00:39 -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
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
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
Albert Cheng
0ac6d940c3 [svn-r16170] Code clean up.
Function get_unique_name() had potential string overflow problem.
Fixed. Also removed some unused macros.

Tested by h5committest.
2008-12-08 23:08:24 -05:00
Albert Cheng
064fee6e8e [svn-r16167] Bug fix: 1089
Description:
One open() call with O_CREAT flag did not have the third required argument.

Solution:
Added the right third argument. Also changed all open() calls to HDopen
macros for more portable coding.

Tested:
h5committested.
2008-12-08 21:28:05 -05:00
Christian Chilan
ff3481d957 [svn-r15957] Revised the help page of h5perf.
Tested on kagiso.
2008-10-26 16:20:30 -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
Christian Chilan
08da960c2c [svn-r15832] Modified the display of the accumulated times taken to open and close files.
Tested on kagiso.
2008-10-09 13:12:34 -05:00
Albert Cheng
47e3636a31 [svn-r15808] Some test produced files were not cleaned by "make clean".
Added them to the clean list.

Tested: kagiso, serial and parallel.
2008-10-07 21:03:35 -05:00
Christian Chilan
0753d5964c [svn-r15772] Added feature to display file open and close times.
Tested on kagiso and cobalt.
2008-10-03 15:51:19 -05:00
Albert Cheng
c857aa12c1 [svn-r15665] Bug fix: (ID 1157)
Description:
Program would crash, complaining MPI calls were invoked after
MPI_Finalize() has occurred. Previously, H5close() before
MPI_Finalize() would remove the crash.

Solution:
It turned out that two H5 property objects (mpio_pl and acc_tpl)
were not closed before MPI_Finalize().  In the at_exit code,
HDF5 library attempted to close them by releasing the MPI Communicators
in them too. That was the error. Adding code to close them properly
before MPI_Finalize() took care things.

Tested:
Only in kagiso parallel. Did not run h5committest since
kagiso would have been the one running parallel test. This
part of code would not be compiled at all in non-phdf5 mode.
2008-09-19 18:18:33 -05:00
Christian Chilan
67cf35a463 [svn-r15655] Changed the absolute path of the data file to a relative path.
Tested on kagiso, smirom, and linew.
2008-09-18 14:25:42 -05:00
Christian Chilan
6066112389 [svn-r15649] Included macros for portability of h5perf code among HDF5 versions.
Tested on kagiso, abe, and cobalt.
2008-09-17 16:24:45 -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
Christian Chilan
e9256348ab [svn-r15582] Added script to build h5perf_serial in standalone mode.
Tested on kagiso, smirom, and linew.
2008-09-02 16:22:51 -05:00
Christian Chilan
489e339019 [svn-r15563] Added support for serial prefix HDF5_PREFIX.
Tested on kagiso, smirom, and linew.
2008-08-29 16:33:14 -05:00
Christian Chilan
1f817abd7b [svn-r15397] Update to the h5perf files that includes bug fixes and extensions.
Tested on kagiso and abe.
2008-07-23 15:41:02 -05:00
Christian Chilan
a97fa671eb [svn-r15179] Change copyright notice to THG only. 2008-06-09 12:10:39 -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
Mike McGreevy
92d070ab39 [svn-r15149] Purpose: Bug Fix
Description: Changing h5perf installation so only h5perf is installed when
             parallel is enabled, while only h5perf_serial is installed when
             parallel is disabled.

Tested: kagiso
2008-06-05 11:48:26 -05:00
Christian Chilan
64b2c94612 [svn-r15090] Revise copyright notice. 2008-05-29 11:17:56 -05:00
Albert Cheng
e3180b57c0 [svn-r15043] Bug fix.
Description:
perf would crash at the end as it complained it was doing MPI calls after
MPI_Finalize() is called.  I suspect the HDF5 library is making MPI calls
in the at_exit area.  This should not happened.

Solution:
Added the H5exit() right before MPI_Finalize() fixed the problem.
But it needs to find out why HDF5 library is making MPI calls in
the at_exit() area.  It should not.
Also, changed the temporay data file name from /tmp/test.out to
perftest.out, both to avoid multiple instance of this may use the
same /tmp/xxx name and also make the file name less generic.

Tested:
Kagiso PP.
2008-05-20 13:34:00 -05:00
Mike McGreevy
e6715b9704 [svn-r15041] Purpose: Configure Fix
Description: Removing make target "check-perform". The extra target is unneeded
             because the perform tests don't take as long to run as initially 
             anticipated, and can be lumped in with 'make check'.

Tested: kagiso
2008-05-19 16:12:16 -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
Christian Chilan
6c787d56aa [svn-r15023] Revise man page of the serial benchmarking tool.
Tested on kagiso, smirom, and linew.
2008-05-16 14:53:14 -05:00
Christian Chilan
d7751c5f8c [svn-r15009] Revise file of the serial benchmarking tool to include new man page.
Tested on kagiso, smirom, and linew.
2008-05-15 12:43:01 -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
63e372c569 [svn-r14969] Purpose: Bug Fix (Bug 1144)
Description: Tests in perform directory were never getting run, and
             h5perf* programs were not being installed.

Solution: Added another build option, 'make check-perform', which runs the 
          tests in the perform directory. Also modified the Makefiles in the
          perform directory to install (with 'make install') h5perf when 
          parallel is enabled, and h5perf and h5perf_serial when parallel
          is disabled.

Tested: kagiso, smirom, linew
2008-05-12 10:15:27 -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
Christian Chilan
438095b24c [svn-r14831] Revise file of the serial benchmarking tool.
Tested on kagiso, smirom, linew, and tg-login.
2008-04-12 18:08:08 -05:00
Christian Chilan
512f4ff28f [svn-r14829] Revised files of the serial benchmarking tool.
Tested on kagiso, smirom, and linew.
2008-04-11 16:25:30 -05:00
Christian Chilan
ec1cd05cf6 [svn-r14827] Makefiles configured to build and test the serial benchmarking tool.
Tested on kagiso, smirom, and linew.
2008-04-10 17:36:51 -05:00
Christian Chilan
66bb19b12f [svn-r14826] Files for the serial benchmarking tool, h5perf_serial.
Tested on kagiso, smirom, and linew.
2008-04-10 17:32:53 -05:00