Commit Graph

385 Commits

Author SHA1 Message Date
Binh-Minh Ribler
cbf1ec6eb4 [svn-r11517] Purpose: Fixed comments
Description:
    Fixed the description of two parameters that were swapped by
    mistake.

Platforms tested:
    Linux 2.4 (heping) - very minor
2005-10-10 11:25:47 -05:00
Quincey Koziol
6e7ed46998 [svn-r11487] Purpose:
Code cleanup

Description:
    Tweak copyright on C++ source files to reduce whining by copyright checking
script.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/C++
2005-10-01 10:29: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
Binh-Minh Ribler
9e57c81e32 [svn-r11436] Purpose: Change the appearance of the C++ API Reference Manual
Description:
    I couldn't get the HDF logo to appear, when the location for the
    html files generated by doxygen is arbitrary.  This arbitrary
    directory doesn't contain the logo image file, which would be
    placed in a planned directory.

    The logo is removed now, but the image file is kept in the CVS
    under hdf5/c++/src, just in case when I can find a solution.

Platforms tested:
    Linux 2.4 (heping)
    Windows XP

Misc. update:
2005-09-18 22:22:28 -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
James Laird
9d452584c6 [svn-r11331] Purpose:
Bug fix

Description:
Replaced 8 spaces with tabs in c++/examples/Makefile.am.

Platforms tested:
mir, sleipnir
2005-09-01 11:39:37 -05:00
James Laird
2733f697b6 [svn-r11330] Purpose:
Bug fix

Description:
Errors on sol may have been due to "make clean" being run both
manually and by automake.  Removed the manual run.
Also cleaned c++/examples/ii_files directory created by some compilers
(e.g., on modi4).

Solution:
This does mean that examples directories will not be cleaned by
'make clean'.

Platforms tested:
sol, mir, heping, modi4
2005-08-31 18:12:15 -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
James Laird
66af6dce17 [svn-r11319] Purpose:
Bug fixes

Description:
This checkin fixes an occasional error on kelgia on sol during distclean.
It also causes test scripts to depend properly on the programs they're
supposed to be testing.

Solution:
The kelgia bug was due to some files being cleaned by automake and manually.
Removed the manual cleaning in src/Makefile.am.
Test script dependencies now need to be specified manually, since the
makefile can't guess what they test from their name.  Currently all test
scripts in a given directory have a single list of dependencies--this was
easy and seems to be sufficient.
These dependencies are listed in the SCRIPT_DEPEND variable in the Makefile.am.

Platforms tested:
heping, mir, modi4, sol

Misc. update:
2005-08-30 18:42:39 -05:00
Albert Cheng
538d37a1bc [svn-r11303] Purpose:
minor tidy up.

Description:
Changed both test programs and test scripts to use the same suffixes
(.chkexe and .chklog).  Changed from .log to .chklog to avoid running
into potential conflicts by other "things" (e.g., config.log).

Tested:
Heping.
2005-08-26 17:24:27 -05:00
Binh-Minh Ribler
96e92e0a4c [svn-r11274] Purpose: Additional code improvement
Description:
    Forgot to modify the examples for the "using" declaration changes
    in the library.  Added "using" declaration appropriately.

Platforms tested:
    Linux 2.4 (heping) - very minor
2005-08-19 17:12:22 -05:00
Binh-Minh Ribler
6496413284 [svn-r11264] Purpose: Additional code improvement
Description:
    Used "using" declaration and directive better to reduce namespace
    pollution.

Platforms tested:
    Linux 2.4 (heping)
    SunOS 5.8 64-bit (sol)
2005-08-18 17:16:56 -05:00
Quincey Koziol
6b45f5172c [svn-r11245] Purpose:
Code cleanup

Description:
    Trim trailing whitespace, which is making 'diff'ing the two branches
difficult.

Solution:
    Ran this script in each directory:

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


Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-08-13 15:53:35 -05:00
Albert Cheng
fbb2dd8545 [svn-r11213] Purpose:
Bug fix and improvement.


Description:
The test output were not displayed for parallel tests.
The serial tests output were always displayed whether the test was
actually ran this time or not.


Solution:
Moved the display of test output inside the target where the actual
tests are run.


Platforms tested:
Tested in heping using pp and fortran.
2005-08-08 12:30:23 -05:00
Binh-Minh Ribler
f74bef15ce [svn-r11210] Purpose: Code improvement
Description:
    Made use of IdComponent::inMemFunc in more classes.

Platforms tested:
    Linux 2.4 (heping)
    SunOS 5.8 64-bit (sol)
2005-08-08 10:42:39 -05:00
Albert Cheng
a0f06d0961 [svn-r11207] Purpose:
Bug fix and code minor cleanup.

Description:
The attempt to redirect stderr together to the log files were
done in the wrong order such that stderr output goes to where
stdout WAS.  Fixed that.

Code minor cleanup--use shell variables to hold the name of the
log file and the test instead of generating them repeatedly.  This
makes easier code reading, less crowded and avoid typos.

Only conclude.in is changed.  The Makefile.in changes are all
derived from automake.

Platforms tested:
h5committested.

Misc. update:
2005-08-08 02:30:46 -05:00
Binh-Minh Ribler
07592ad7c3 [svn-r11206] Purpose: Additional wrapper/Code improvement
Description:
    Added wrapper for H5Iget_type.
    Added try/catch to many APIs that call private functions so that more
        specific information can be provided at failure.
    Added IdComponent::inMemFunc to help providing specific info.
    Added const to parameters of several functions that missed that.

Platforms tested:
    Linux 2.4 (heping)
    SunOS 5.8 64-bit (sol)
    AIX 5.1 (copper)
    IRIX64 with -n32 (modi4)
    HPUX 11.00 (kelgia)
2005-08-07 22:53:58 -05:00
Binh-Minh Ribler
914f990f22 [svn-r11200] Purpose: Code improvement
Description:
    Changed CompType::getMemberClass to use H5Tget_member_class
    instead of going around unneccesarily.

    Changed "int member_num" to "unsigned member_num" of several
    member functions of CompType, per the C library change.

Platforms tested:
    Linux 2.4 (heping)
    Linux 2.4 w/PGI (colonelk)
    AIX 5.1 (copper)
2005-08-04 15:18:02 -05:00
James Laird
e75a185eca [svn-r11185] Purpose:
Makefile feature

Description:
'make check-clean' now cleans *.h5 files created by tests as well as
.log and .chkexe files.

Solution:
check-clean is now a separate target in its own right, which cleans less
than mostlyclean (check-clean < mostlyclean < clean < distclean).

Platforms tested:
mir, heping, modi4 (serial and parallel)
2005-08-02 12:59:03 -05:00
James Laird
c63ef2cba2 [svn-r11179] Purpose:
Feature: check-clean target

Description:
'make check-clean' cleans up output files from tests.

Solution:
Tests create foo.chkexe and foo.log files.  Scripts create foo.chksh and
foo.logsh files.  'make check-clean' will clean these files up so that
the tests can be re-run.
Also suppressed some not-very-useful output of Makefiles when it would
echo commands.

Platforms tested:
mir, sleipnir, modi4

Misc. update:
2005-08-01 17:22:55 -05:00
Binh-Minh Ribler
52f78a12d5 [svn-r11152] Purpose: Removed some compiler warnings
Description:
    Removed defined but unused variables.

Platforms tested:
    Linux 2.4 (heping)
    IRIX64 with -n32 (modi4)
    Linux 2.4 w/PGI (colonelk)
2005-07-24 22:40:21 -05:00
Binh-Minh Ribler
fab172d704 [svn-r11151] Purpose: Fix bugzilla #407 and #408
Description:
    PropList::copyProp has incorrect prototype; although it works,
    it does cause users inconvenience.

Solution:
    Added another overloaded function with correct prototype.  The
    old version will be removed in a future release.  In the meantime,
    "Obsolete" will be displayed in its RM page.

    Also, changed several checks on the returned value of a C API from
    non-positive to negative because id = 0 is no longer significant,
    now that the C++ reference counting had been removed.

Platforms tested:
    Linux 2.4 (heping)
    IRIX64 with -n32 (modi4)
    Linux 2.4 w/PGI (colonelk)
2005-07-24 22:37:21 -05:00
Binh-Minh Ribler
f208550696 [svn-r11149] Purpose: Fix bugzilla #406
Description:
    Added these missing member functions:
        AbstractDs::getArrayType
        AbstractDs::getVarLenType
        CommonFG::openArrayType
        CommonFG::openVarLenType
        CompType::getMemberArrayType
        CompType::getMemberVarLenType

Platforms tested:
    Linux 2.4 (heping)
    IRIX64 with -n32 (modi4)
    Linux 2.4 w/PGI (colonelk)
2005-07-24 12:52:43 -05:00
Quincey Koziol
34bd25f361 [svn-r11144] Purpose:
New port

Description:
    Elena asked me to check in her NEC SX-6 work, so here it is! :-)

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    NEC SX-6 (by Elena)
2005-07-22 20:55:12 -05:00
James Laird
7236935a9d [svn-r11095] Purpose:
Configuration feature

Description:
Serial test output is now stored in log files and printed when all tests
in a directory complete, or when a test fails.  This should make test output
more readable and useful.
Also made changes to clean up ii_files directories that are created by some
C++ compilers/linkers.
Also fixed a few minor Makefile bugs.

Solution:
When serial tests run, their output is saved in *.log or *.logsh.  While
running, tests only print when they begin and when they complete; their
more specific output (from the log file) is printed if the test fails or
when all tests have completed.
Comments welcome.

Platforms tested:
mir, modi4 (parallel and serial), copper, shanti
2005-07-21 14:28:11 -05:00
James Laird
d2e92fd236 [svn-r11083] Purpose:
Bug fixes

Description:
A number of minor changes to Makefiles.  Some files will now be cleaned
properly, some comments are more informative, etc.


Platforms tested:
heping, mir, modi4
2005-07-18 18:30:38 -05:00
Binh-Minh Ribler
b14a4fd95f [svn-r11060] Purpose: Fix bug (reported by user)
Description:
    The use of FileCreatPropList::DEFAULT sometimes caused failure
    in the reference counting area.  This occurs to all the default
    property lists, which also include FileAccPropList::DEFAULT,
    DSetCreatPropList::DEFAULT, and DSetMemXferPropList::DEFAULT.
    H5P_DEFAULT was used to create these default prop lists and
    because its value is 0, the id of these prop lists are 0, which
    is rejected by the H5I functions during the reference counting.

Solution:
    The main action to fix the above problem was to use
        H5P_FILE_CREATE
        H5P_FILE_ACCESS
        H5P_DATASET_CREATE
        H5P_DATASET_XFER
    to define the default property lists accordingly.  Yet, when this
    fix was applied, some bug in reference counting was revealed.
    It appeared that some ids were not incremented but were passed in
    for decrementing.  The following actions were then taken to fix and
    improve the current use of reference counting H5I functions.

        * added private func IdComponent::p_valid_id to verify that the
          id is a valid id and can be passed into an H5I function
        * used p_valid_id to validate an id before calling an H5I functions
          in the reference-counting member functions incRefCount,
          decRefCount, and getCounter
        * changed to use member function incRefCount, decRefCount, and
          getCounter instead of the C APIs H5Iinc_ref, H5Idec_ref, and
          H5Iget_ref throughout IdComponent.

    In addition, overloadings were added for incRefCount, decRefCount,
    and getCounter to take an id different than the id of the current
    instance; they can be convenient during debugging.

Platforms tested:
    Linux 2.4 (heping)
    SunOS 5.8 64-bit (sol)
    AIX 5.1 (copper)
2005-07-10 06:26:56 -05:00
Quincey Koziol
9b597516c0 [svn-r11042] Purpose:
Bug fix

Description:
    The ".chksh" file for a test script was being created in the "source"
location rather than the build location.  This can cause problems when
multiple builds are running because "slower" machines will see the ".cshsh"
file from faster machines and will not run the test script as they should.

Solution:
    Use 'basename' command to strip off the path of the script and create
the ".chksh" file in the build location.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    h5committest
2005-07-07 15:46:49 -05:00
Albert Cheng
f68a2e6db7 [svn-r11034] Purpose:
bug fix.

Description:
-nt is not a universal option for the test command in all platforms.
The use of it in conclude.am cause some platforms to bark at the
Makefile generated.

Solution:
Created a command script bin/newer which tests if file1 is newer
than file2.  Replace the "test file1 -nt file2" by
"newer file1 file2".

Platforms tested:
Tested in sol.
2005-07-06 23:52:45 -05:00
James Laird
c80b03cf33 [svn-r11016] Purpose:
Bug fix

Description:
Added dependencies to examples Makefiles so that examples can be run in
parallel.

Solution:
The examples directories (for C, C++, and Fortran) all have some dependencies
explicitly spelled out in their Makefiles.am.  This is a good short-term
solution, and should prevent errors in the Daily Tests.

Platforms tested:
mir, modi4 (parallel and sequential)
2005-07-04 16:25:07 -05:00
James Laird
4cf99e9f28 [svn-r11013] Purpose:
Bug fix

Description:
Fixed bugs that caused tests to be unable to find testhdf5.sh during
daily tests, and another that broke sol and shanti.

Solution:
When tests are run, their path is ./$testname .
When scripts are run, their path has no leading "./".  Fixed.
Sol and shanti don't recognize the -e option for test, but they do know
-f.  Fixed.
Also modified release notes.

Platforms tested:
mir, shanti, heping
2005-07-01 16:22:05 -05:00
James Laird
43f091f462 [svn-r11008] Purpose:
Feature: tests now use parallel make and only run once

Description:
When make is invoked in parallel (using the -j option), several tests will
now be run simultaneously.  This should speed up testing on a number of
systems.
When a test passes, it creates a foo.chkexe or foo.chksh file, which prevents
the test from running again unless the test or library changes.

Solution:
Most of the changes live in config/conclude.am.  Added *.chkexe and *.chksh
files to the list of files to be cleaned at "make mostlyclean" time.
Parallel tests still run one at a time, but use the same make instructions
as serial tests.

Platforms tested:
mir, eirene, sleipnir, pommier, copper, modi4 (some errors occurred, probably
due to the test being run before updating hdf5.  Will re-run tests after
checkin.)
2005-06-30 18:35:32 -05:00
Binh-Minh Ribler
f649d42b46 [svn-r10955] Purpose: Added more APIs
Description:
    - Added another overloaded CommonFG::getComment so the user will not
      have to provide the comment's length.
    - Added wrappers for H5Gget_comment when the comment is to be removed,
      CommonFG::removeComment.
    - Corrected several 'delete' statements

Platforms tested:
    Linux 2.4 (heping)
    AIX 5.1 (copper)
2005-06-19 16:57:34 -05:00
Binh-Minh Ribler
828c6646a1 [svn-r10953] Purpose: Updating C++ tests
Description:
    Updated various comments/headers.

Platforms tested:
    Linux 2.4 (heping)
    AIX 5.1 (copper)
2005-06-19 16:02:21 -05:00
Albert Cheng
65107926e1 [svn-r10858] Purpose:
bug fix.

Description:
The check-s and check-p targets are not recursively passes down.
Make them so.

Platforms tested:
heping (serial and pp).
2005-06-04 00:01:12 -05:00
Albert Cheng
a2217d58c8 [svn-r10849] Purpose:
bug fix

Description:
check-s and check-p were set as pre-requistics of test.  They
would get executed in parallel if parallel make is used.  This
could cause problems since serial tests are used to be executed
before parallel tests. It is not known if it is always okay to
run serial and parallel tests in simultantously.

Solution:
Change check-s and check-p as actions of the target test so
that they get executed sequnentially.

Platforms tested:
heping PP.
2005-06-02 18:42:48 -05:00
Albert Cheng
10247df1bc [svn-r10848] Purpose:
bug fix

Description:
check-s and check-p were set as pre-requistics of test.  They
would get executed in parallel if parallel make is used.  This
could cause problems since serial tests are used to be executed
before parallel tests. It is not known if it is always okay to
run serial and parallel tests in simultantously.

Solution:
Change check-s and check-p as actions of the target test so
that they get executed sequnentially.

Platforms tested:
heping PP.

Misc. update:
2005-06-02 18:40:47 -05:00
James Laird
2423bd6cab [svn-r10840] Purpose:
Added check-s and check-p targets.

Description:
Added check-s and check-p targets to 1.7 branch to match changes to 1.6
branch.  Now parallel and serial tests can be run separately.

Platforms tested:
mir, modi4, copper
2005-06-01 20:51:52 -05:00
Binh-Minh Ribler
3c48d3637b [svn-r10825] Purpose: Fix RM bug
Description:
    Doxygen 1.4.2 has a bug that when an \exception immediately
    follows a \brief, the exception will be displayed prominently
    in the brief section.

Solution:
    Temporarily added /// to after \brief to work around this
    problem and notified the Doxygen's author.

Platforms tested:
    Linux 2.4 (heping) - only in documentation sections
2005-05-29 17:26:56 -05:00
Binh-Minh Ribler
7e0a02c604 [svn-r10823] Purpose: Adding files for C++ API RM
Description:
    cpp_doc_config is the configuration file, used by Doxygen to
        generate the RM.
    RM_stylesheet.css is the style sheet used by the RM html pages; this
        style sheet is a modified version from the default doxygen.css.
    header.html and header_files are input to produce different page
        header than the default.

Platforms tested:
    Verified on Windows XP.
2005-05-28 22:51:47 -05:00
Binh-Minh Ribler
0d580697f6 [svn-r10816] Purpose: Fix bug (reported by user, not filed)
Description:
    Passing 0 where it should be "".  Fixed!

Platforms tested:
    Linux 2.4 (heping) - very minor, and has been in 1.6 for a while
2005-05-28 12:26:00 -05:00
James Laird
1cc3666a27 [svn-r10656] Purpose:
Output tweak

Description:
Test output in C++ and Fortran directories now puts "C++ API:" or
"Fortran API:" in front of the name of the test being run.
I had overlooked the line of code that caused this to happen.

Solution:
Added HDF_CXX and HDF_FORTRAN variables to C++ and Fortran Makefiles.am.

Platforms tested:
heping (minor change)
2005-04-25 12:43:58 -05:00
James Laird
8079dd8820 [svn-r10631] Purpose:
Cleanup

Description:
C++ src and test directories weren't being distcleaned when C++ wasn't
configured.

Platforms tested:
mir
2005-04-19 10:13:40 -05:00
Quincey Koziol
af6276f654 [svn-r10628] Purpose:
Code cleanup

Description:
    Clean up various warnings reported by the Windows team.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-18 16:21:35 -05:00
James Laird
afef3c0358 [svn-r10587] Purpose:
Minor feature

Description:
If a user configures without C++ or Fortran, 'make' will not recurse into
c++ or fortran directories.  However, if the user cd's into these
directories and 'makes,' the Makefiles will attempt to build interfaces
that have not been configured, usually failing.
In an unrelated but minor change, src/H5detect should be compiled with
the -g flag to disable compiler optimizations since it is only
executed once.

Solution:
Make it harder for users to try to compile interfaces that have not been
configured by making c++, fortran, and hl directories not recurse into
their subdirectories unless they have been configured.
Thus, 'make' in /fortran/src will break if Fortran has not been configured,
but 'make' in /fortran will not break.

Platforms tested:
mir, modi4, copper

Misc. update:
2005-04-11 16:47:05 -05:00