Commit Graph

510 Commits

Author SHA1 Message Date
James Laird
26303241fe [svn-r9902] Purpose:
Configuration feature

Description:
HDF5 now uses automake to generate Makefiles

Solution:
Makefile.in files are now generated from Makefile.am files.
To reconfigure (after chaning a Makefile.am or configure.in):
/bin/sh bin/reconfigure.sh

Platforms tested:
Many
2005-01-31 22:17:02 -05:00
Xuan Bai
4f79e35b33 [svn-r9842] Purpose:
Add a new configure shell script under /config to support configuration for cygwin.

Description:

Solution:

Platforms tested:
cygwin 1.5.11, VS 6.0 on windows xp, Linux 2.4 and sol 2.7.

Misc. update:
2005-01-20 15:31:31 -05:00
Quincey Koziol
7b10edb121 [svn-r9836] Purpose:
Bug fix

Description:
    Fix detection of C++ compiler version number.

Platforms tested:
    Solaris 2.7 (arabica) w/C++
    Solaris 2.8 (sol) w/C++
    Does not require h5committest
2005-01-18 21:37:16 -05:00
Raymond Lu
96cc43235e [svn-r9819] Purpose: Bug fix
Description:  The fix of the loss problem of the last 2 bytes of mantissa on sleipnir has
not been successful.  It happens when converting from unsigned long long to long double.
 The failure has been on and off.

Solution:  Hard set a macro to disable unsigned long long->long double for FreeBSD until
a good solution is found to solve this elusive problem.

Platforms tested: sleipnir and fuss.  Only sleipnir is concerned.

Misc. update:
2005-01-13 17:01:52 -05:00
Raymond Lu
7945e9929e [svn-r9809] Purpose: bug fix
Description:  For HP-UX11.00, compiler's casting from 'long double' to most of
integers.  A macro was hard set in config/hpux11.00 before.

Solution:  Let configure detect this case and set the macro.

Platforms tested:  kelgia, fuss, modi4.  These systems are mainly concerned.
2005-01-11 16:05:21 -05:00
Quincey Koziol
c04b612eb4 [svn-r9801] Purpose:
Bug fix

Description:
    Belatedly chase change of hobj_ref_t in C APIs.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/backward compatibility turned on
    IRIX64 6.5 (modi4) w/FORTRAN
    h5committest
2005-01-10 17:56:20 -05:00
Raymond Lu
7faa297ea6 [svn-r9783] Purpose: Bug fix
Description: For HP-UX 11.00, the compiler generates 'floating exception'
when converting 'long double' to most of integer types.

Solution: Define a macro for all other systems except HP-UX 11.00.  Hard set
this macro to 'no' in config/hpux11.00 to skip this test for HP-UX 11.00.

Platforms tested:  modi4, kelgia, fuss
2005-01-08 15:56:12 -05:00
Raymond Lu
82f6a72ec9 [svn-r9755] Purpose: New feature
Description:  Start to support software conversion between long double and
all integers.

Solution:  No major changes to the algorithm.  Changes to configure is to
exclude SGI for long double to integers test because there're too many problems
in their compiler.

Platforms tested:  h5committest, modi4, fuss, Teragrid, arabica

Misc. update:  RELEASE.txt
2005-01-06 13:17:59 -05:00
Elena Pourmal
fdde90dcb7 [svn-r9743] Purpose: Bug fix (by Binh-Minh)
Description: C++ build failed on kelgia. Binh-Minh fixed
             it for 1.6 branch, I am bringing changes back to
             1.7

Solution:

Platforms tested: kelgia

Misc. update:
2005-01-04 16:44:00 -05:00
Quincey Koziol
427ff7da28 [svn-r9727] Purpose:
Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-)

Description:
    Generally speaking, this is the "signed->unsigned" change to selections.
However, in the process of merging code back, things got stickier and stickier
until I ended up doing a big "sync the two branches up" operation.  So... I
brought back all the "infrastructure" fixes from the development branch to the
release branch (which I think were actually making some improvement in
performance) as well as fixed several bugs which had been fixed in one branch,
but not the other.

    I've also tagged the repository before making this checkin with the label
"before_signed_unsigned_changes".

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel & fphdf5
    FreeBSD 4.10 (sleipnir) w/threadsafe
    FreeBSD 4.10 (sleipnir) w/backward compatibility
    Solaris 2.7 (arabica) w/"purify options"
    Solaris 2.8 (sol) w/FORTRAN & C++
    AIX 5.x (copper) w/parallel & FORTRAN
    IRIX64 6.5 (modi4) w/FORTRAN
    Linux 2.4 (heping) w/FORTRAN & C++


Misc. update:
2004-12-29 09:26:20 -05:00
Binh-Minh Ribler
09c2b51e71 [svn-r9703] Purpose: Update CXXFLAGS
Description:
    Changed -instances=global to -instances=static to avoid multiple
    copies of template function verify_val.

Platforms tested:
    SunOS 5.7 (arabica)
2004-12-22 23:43:33 -05:00
Albert Cheng
bf9c37e071 [svn-r9691] Description:
mpich 1.2.6 does not like the tweaking of using -O2 flag.
Comment out the Tweaking since it caused problems to mpich1.2.6.
Need to investigate the reasons and effects to tweak.


Platforms tested:
Tested in heping using mpich 1.2.6 and in eirene uisng mpich 1.2.6.
2004-12-18 15:34:25 -05:00
Quincey Koziol
5387f65eef [svn-r9684] Purpose:
Port

Description:
    Initial work for supporting GNU FORTRAN/F95 on FreeBSD.  I think I've
got things mostly set up correctly, but I'm getting an internal compiler
error on one of the FORTRAN sources, so I'm not going to add this configuration
to the daily tests yet.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/GNU FORTRAN
    Not tested in h5committest
2004-12-16 21:27:41 -05:00
Albert Cheng
2d2522f666 [svn-r9662] Purpose:
Bug fix.

Description:
MIPSpro Compiler 7.4.x starts to support C99 features
but stdint.h has a "guard" in it that will #error if
cc is invoked without asking for C99 standard.  But it
does not result with a non-zero compiler exit code, thus
configure thought it is okay to use header file stdint.h.
This causes problems later.

Solution:
Default to use the C99 compiler if available.

Platforms tested:
Tested in Sandia tesla machine which is a new SGI machine.
2004-12-13 17:29:45 -05:00
Albert Cheng
bdc10cce53 [svn-r9631] Purpose:
Improvement

Description:
Added strip option to PROD_CFLAGS to remove symbols for smaller
production file size.

Solution:

Platforms tested:

Misc. update:
2004-12-07 13:25:43 -05:00
Albert Cheng
2735166820 [svn-r9629] Purpose:
Bug fix.

Description:
Last commit would impose $arch even if user has provided his own
$CFLAGS.  Fixed it.
Removed the wording of gnu-flags inherited from the copy.

Platforms tested:
Tested in tg-ncsa.

Misc. update:
2004-12-07 12:12:18 -05:00
Quincey Koziol
4954609870 [svn-r9625] Purpose:
Code cleanup

Description:
    Clean/fix up compiler flags to be more consistent after recent changes.

Platforms tested:
    None - eyeballed - very minor
2004-12-07 09:55:40 -05:00
Albert Cheng
f640fbff8c [svn-r9624] Purpose:
Bug fix.

Description:
Cache the gettimeofday_tz as yes.
Patches for conversion problems of Long Long, float, bottom bits, etc.

Platforms tested:
Tested in tflops only.

Misc. update:
2004-12-07 09:06:06 -05:00
Albert Cheng
33cb85337a [svn-r9623] Purpose:
Bug fix.

Description:
Restored correct setting of compilers (-Wall etc for debug flags
only, c99 by default,...) that were wiped out by the commits before.

Platforms tested:
Tested in TG-NCSA, both production and development mode.
(Still need to figure out the proper flag to use for Profile.)
2004-12-06 18:20:49 -05:00
Albert Cheng
c6ea65a67e [svn-r9619] Purpose:
Bug fix.

Description:
v8.0 -O3 infinite loops when compiling test/tselect.c. Use -O2.

Platforms tested:
Only tested in TG-NCSA, use both default and --disable-production options.
2004-12-06 17:18:11 -05:00
Quincey Koziol
90d937946f [svn-r9611] Purpose:
Bug fix

Description:
    Correct typo in ia64 configure script.

    Update intel compiler detection to handle Itanium versions of compilers

Platforms tested:
    Teragrid machine (tg-login) w/icc 7.1 & 8.x
    Linux 2.4 (verbena) w/icc
2004-12-03 13:08:14 -05:00
Quincey Koziol
c731eb9d37 [svn-r9569] Purpose:
Update flags

Description:
    Update gcc compiler flags to support the early gcc 4.0 snapshots available
on sleipnir

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/gcc 4.0 snapshot
    Too minor to require h5committest
2004-11-23 22:25:19 -05:00
Albert Cheng
f470d44017 [svn-r9565] Purpose:
Improvement.

Description:
Change the default CC, F9X and CXX compilers from ecc/efc/ecc
to icc/ifort/icc because Intel keeps changing their compiler
names.  This eliminated the warning messages that a wrong
compiler name is used.

Platforms tested:
Tested in Tg-login NCSA only since that is the only
IA64 platform on site.
2004-11-23 15:48:06 -05:00
Raymond Lu
d28d9e24e9 [svn-r9515] Purpose: Bug fix
Description:  For Intel 8.1 compiler, C99 standard has to be enabled to define macro ULLONG_MAX in its own header file limits.h.

Solution: Add flag -std=c99 to Intel compiler if the version is 8.1.

Platforms tested:  Tested v1.6 because this is a very simple change.
2004-11-08 12:59:59 -05:00
Robert E. McGrath
8c0c4f945d [svn-r9495] Purpose:
Fix SZIP filter to dynmically detect encoder.

Description:

Solution:
See:
http://hdf.ncsa.uiuc.edu/RFC/SZIP/Szip_dynamic_12_Oct.pdf

Changes to h5dump tests, contingent on detecting SZIP encoder.
2004-11-02 14:12:18 -05:00
Quincey Koziol
c9874681a6 [svn-r9491] Purpose:
Bug fix

Description:
    "Teach" the configure scripts about Intel 7.1 compilers, which don't have
_quite_ the same compiler flags

Platforms tested:
    Linux 2.4 (eirene)
2004-10-30 23:59:57 -05:00
Albert Cheng
535c97a581 [svn-r9425] Purpose:
Bug fix

Description:
Removed the cache values of sizeof signed and unsigned int_fast8_t
and int_fast16_t since the vendor changes them often.

Platforms tested:
Tested in Copper only since it affected it only.

Misc. update:
2004-10-14 16:23:39 -05:00
Quincey Koziol
e74b160268 [svn-r9412] Purpose:
Bug fix

Description:
    When mpicc/mpif90 is a wrapper around a PGI compiler, turn on less
agressive optimization options to avoid testing errors.

Platforms tested:
    Linux 2.4 (verbena)
    Too minor to require h5committest
2004-10-12 15:54:25 -05:00
Quincey Koziol
75c31b8c26 [svn-r9411] Purpose:
Bug fix

Description:
    When mpicc/mpif90 is a wrapper around a PGI compiler, turn on less
agressive optimization options to avoid testing errors.

Platforms tested:
    Linux 2.4 (verbena)
    Too minor to require h5committest
2004-10-12 15:54:23 -05:00
Quincey Koziol
86d0132279 [svn-r9407] Purpose:
Code cleanup/bug fix

Description:
    Remove the undocumented "$NOFP" shell variable which would allow production
builds without removing the stack frame.  This was cascading between C and
FORTRAN builds and causing problems.

Solution:
    Hard-code removing the stack frame for now.  Users would have needed to
read the configure scripts anyway, so there's not really much benefit to the
extra knob.  Users who need this functionality (production builds with stack
frames) are debugging probably, so they will need to modify the script and
build their own version of the library now.

Platforms tested:
    Linux 2.4 (verbena)
    Too minor to require h5committest
2004-10-12 11:11:27 -05:00
Quincey Koziol
6af5973295 [svn-r9404] Purpose:
Code cleanup

Description:
    Default to using mpif90 if CC=mpicc and --enable-fortran flag is given,
but no F9X compiler is set.

Platforms tested:
    Linux 2.4 (verbena)
    Too minor to require h5committest
2004-10-12 11:04:14 -05:00
Quincey Koziol
68732f591f [svn-r9390] Purpose:
Bug fix

Description:
    Tweak PGI compiler auto-detection to work for version 5.0 compilers as
well as version 5.2 compilers.

Platforms tested:
    Linux 2.4 (verbena) w/PGI compilers
    Not tested with rest of h5committest platforms
2004-10-08 21:58:16 -05:00
Quincey Koziol
951d6d826a [svn-r9385] *** empty log message *** 2004-10-08 21:39:07 -05:00
John Mainzer
7163f6d622 [svn-r9220] Purpose:
Fix configure bug that appears on SDSC DataStar.


Description:

Two cached "sizeof"s in ./config/powerpc-ibm-aix5.x cause builds
on SDSC Datastar to choke.


Solution:

Commented out the offending "sizeof"s.  Included comments indicating
the reason for the change.


Platforms tested:

copper


Misc. update:

n/a
2004-09-07 16:38:49 -05:00
Albert Cheng
226950b616 [svn-r9162] Purpose:
Bug fix.

Description:
$CXX_BASENAME was not set yet if $CXX was pre-set to g++.  In turn,
CXX_flags are not picking up the g++ values.

Solution:
The correct solution should be done in configure which should have
setup CXX_BASENAME if $CC is set before sourcing this file.
Put a special patch here for g++ for now.
(Also added the recognization of icc as another name for Intel
compilers.)

Platforms tested:
No h5committest but tested in TG-NCSA since these changes affected
the IA64 platform only.

Misc. update:
2004-08-26 14:03:33 -05:00
Elena Pourmal
0a965d2236 [svn-r9154]
Purpose: Maintenance/bug fixes (OSF1 C++ and missing Fortran APIs)

Description: bringing 1.6 changes to 1.7

Solution:

Platforms tested: OSF1, Solaris 2.8, AIX5.1

Misc. update:
2004-08-24 22:44:59 -05:00
Robert E. McGrath
2f7d90c0da [svn-r9119] Purpose:
Fix to config for ia64-linux (C++)

Description:
missing character in config file

Solution:
add the missing character

Platforms tested:
'hal'

Misc. update:
2004-08-19 10:58:07 -05:00
Albert Cheng
bd19d3c8b1 [svn-r9064] Purpose:
Improvement and fix.

Description:
Improvement: allow user defined RUNSERIAL and RUNPARALLEL settings.
Added hdf5_cv_gettimeofday_tz cached value.

Platforms tested:
Janus (Tflops).
2004-08-11 12:24:42 -05:00
Albert Cheng
095a6977f4 [svn-r9031] Purpose:
Improvement.

Description:
setup default setting for C++ API. Default to use the ecc compiler.

Platforms tested:
Tested in TG-ncsa which is the IA64 platform.  None of the standard committest
platforms would have tested this change.

Misc. update:
2004-08-05 18:02:26 -05:00
Quincey Koziol
c837afbc48 [svn-r8982] Purpose:
Bug fix

Description:
    Correct typo which was causing incorrect srcdir paths in generated
dependencies.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel
    IRIX64 6.5 (modi4)
    h5committested
2004-08-02 09:05:00 -05:00
Elena Pourmal
abf5d5cf60 [svn-r8966] Purpose: Maintenance
Description: Added support for Absoft Fortran compiler

Solution: Modified configuration file to check which Fortran compiler is used
          and set appropriate flags.

Platforms tested: verbena with pgf90 and Absoft f95 compilers

Misc. update:
2004-07-29 16:08:16 -05:00
Elena Pourmal
c5b4572ee2 [svn-r8956]
Purpose: Maintenance for MAC OSX

Description: Added support for Absoft Fortran compiler f95;
             Ddefault compiler is set to IBM xlf.

Solution:

Platforms tested: pommier with xlf and Absoft f95 compilers

Misc. update:
2004-07-27 13:53:53 -05:00
Albert Cheng
1be75d8fe0 [svn-r8886] Purpose:
bug fix.

Description:
The previous patch of -D__GNUC__ was causing failure in the
newer compiler.  The previous failure could not be repeated
any more.  So, removed it.

Platforms tested:
Tested only in TG-NCSA since the change affects only the ia64 platform.

Misc. update:
2004-07-15 17:45:29 -05:00
Albert Cheng
dd4163f3ab [svn-r8884] Purpose:
Bug fix

Description:
It uses the value of $ARCH as a gcc option but the linux clusters
at NCSA define $ARCH as environment variable with values that are
not a valid compiler option.  That caused the configure to fail
because it was not able to compile at all.

Solution:
Change ARCH to lower case $arch (convention dictates environment
variables are upper cases.)  Also preset $arch to null and do not
honor any pass it values.

Platforms tested:
Attempted to run h5committest but sol was failing due to /tmp
filled.  Copper and verbena passed.  Also passed in TG-NCSA.

Misc. update:
2004-07-15 16:51:43 -05:00
Quincey Koziol
6fc0bffac6 [svn-r8732] Purpose:
Code cleanup

Description:
    Reduce compiler warnings on SGI IRIX

Platforms tested:
    FreeBSD 4.10 (sleipnir)
    SGI IRIX6 (Cheryl's machine)
    Too minor to require full h5committest
2004-06-23 12:56:57 -05:00
Quincey Koziol
3feea448dc [svn-r8728] Purpose:
Code cleanup & addition

Description:
    Add new warnings for gcc 3.4.x

    Re-work production mode compile flags to work better.

Platforms tested:
    FreeBSD 4.10 (sleipnir)
    h5committest
2004-06-23 10:30:26 -05:00
Albert Cheng
b64b643c54 [svn-r8430] Purpose:
Slight improvement.

Description:
Show directory name at the beginning and ending of running
make check in a directory.  Together with the time stamp,
it will be easier to see how much time it takes to run all
the tests in one directory.

Platforms tested:
Eirene only.

Misc. update:
2004-04-28 16:54:41 -05:00
Quincey Koziol
12ba2eed6a [svn-r8425] Purpose:
Bug fix (sorta)

Description:
    The SGI machines have problems accurately (and consistently) converting
unsigned long values to float and double values, so put in a bit of a hack in
the datatype conversion test code to allow them to get "close enough".  This
hack is enabled at configure time by a flag which should only be set on machines
with this problem.

Platforms tested:
    FreeBSD 4.9 (sleipnir)
    h5committest
2004-04-28 12:02:12 -05:00
Quincey Koziol
73b756fe33 [svn-r8235] Purpose:
Bug fix

Description:
    Fix build on sparc64 platform for FreeBSD by modifying the config/gnu-flags
to not insert '-march=i686' on non-Intel platforms.  (This change allows HDF5
to run correctly on all five of the main FreeBSD platforms... :-)

Platforms tested:
    FreeBSD 4.9 (sleipnir)
    h5committest not run since it's a FreeBSD-specific fix.
2004-03-06 21:26:31 -05:00
Quincey Koziol
78c6d91664 [svn-r8214] Purpose:
Bug fix

Description:
    Update threadsafe flags for FreeBSD and allow C++ to be built with
    threadsafe enabled.

Platforms tested:
    FreeBSD 4.9 (sleipnir) w/C++ & thread-safe
2004-02-21 12:44:44 -05:00
Quincey Koziol
31596fc1bd [svn-r8201] Purpose:
Code cleanup/bug fix

Description:
    Fix configuration files to allow 64-bit compilation of the library with
a 64-bit version of zlib.

Solution:
    Moved important compiler flags settings from CC macro to CFLAGS macro.
Instead of setting CC (F9X, CXX) environment variable for compiling for 64-bit
code, users should just set the CFLAGS (FFLAGS, CXXFLAGS) to -q64.
    Updated INSTALL file to reflect this change.

Platforms tested:
    IBM p690 (copper) w/parallel, FORTRAN, C++, srcdir.
    Platforms specific - h5committest does not apply.
2004-02-13 15:08:18 -05:00
Quincey Koziol
a3ec241c61 [svn-r8164] Purpose:
Test cleanup

Description:
    Move the perl postprocessing step on the .depend file out of the loop over
all the files, which should get rid of redundant rescanning of the .depend file.

Platforms tested:
    Linux 2.4 IA64 (titan)
    too minor to require h5committest
2004-02-07 15:33:28 -05:00
Quincey Koziol
a2670d00c7 [svn-r8132] Purpose:
Bug fix

Description:
    Update debugging and profiling flags to include more information.

Platforms tested:
    IBM p690 (copper)
    too obscure for h5committest
2004-01-31 10:14:44 -05:00
Quincey Koziol
896fa1c409 [svn-r8131] Purpose:
Bug fix

Description:
    Add the debugging flag (-g) to profiling builds.

Platforms tested:
    FreeBSD 4.9 (sleipnir)
    too obscure for h5committest
2004-01-31 10:13:41 -05:00
Albert Cheng
5f16e07bbf [svn-r8118] Purpose:
improvement.

Description:
Created an entry for 2.96 and added -Wno-long-long to the CFLAGS
to suppress the thousands of 'long long' warnings because we are
using it and we know it is not in the C89 standard.

Platforms tested:
Only in verbena.

Misc. update:
2004-01-27 18:25:00 -05:00
Quincey Koziol
6042adf10b [svn-r8115] Purpose:
Bug fix

Description:
    Update gcc 3.4 flags to reduce optimization level to the same settings
as for gcc 3.0-3.3 due to code generation bugs at higher optimization levels.

Platforms tested:
    FreeBSD 4.9 (sleipnir)
2004-01-27 09:43:36 -05:00
Raymond Lu
3774b2732a [svn-r8041] Purpose: bug fix
Description:  After titan updated ecc compiler, int64_t cannot be found.

Solution: Added -D__GNUC__ to CFLAGS to enable int64_t in /usr/include/stdint.h

Platforms tested: titan(titan specific)
2004-01-08 15:04:56 -05:00
Albert Cheng
c81f060deb [svn-r8037] Purpose:
Improvement.

Description:
Added the -tlocal to the default settings for CXX flags.

Platforms tested:
Only tested in LANL Q.

Misc. update:
2004-01-07 16:54:33 -05:00
Elena Pourmal
850696344c [svn-r8033]
Purpose: Maintenance

Description: Fortran APIs MAC OS X port for IBM XL Fortran compiler

Solution: Brought back changes from 1.6 branch

Platforms tested: pommier, h5comittested; this time h5committest
                  complained about copperpp directory and didn't run;
                  tests on verbena and sol passed.

Misc. update:
2004-01-06 15:54:55 -05:00
Quincey Koziol
4da7b1ee9b [svn-r8009] Purpose:
Bug fix

Description:
    Add special-case handling to floating-point conversion tests to avoid
problems with denormalized values on Cray T3E & T90 platforms.  (Still not
working on Cray SV1, but at least it's closer).

Solution:
    Detect denormalized values and don't try to operate on them on the Crays.

Platforms tested:
    FreeBSD 4.9 (sleipnir)
    Cray T3E (hubble.cray.com)
    Cray T90 (gypsy.cray.com)
2003-12-31 15:36:37 -05:00
Quincey Koziol
09c83fc827 [svn-r7946] Purpose:
Bug fix

Description:
    Fix problems building on Debian Linux when Intel's "ecc" compiler is
not available.

Platforms tested:
    Eyeballed - very trivial patch from user.
2003-12-13 13:46:10 -05:00
Quincey Koziol
8eae8e9ee6 [svn-r7895] Purpose:
Bug fix

Description:
    Correct typo in gcc 2.96 warning
2003-11-27 08:03:40 -05:00
Quincey Koziol
2bffbf2943 [svn-r7890] Purpose:
Add warning

Description:
    Warn users about known bugs for gcc 2.96

Platforms tested:
    Titan (user02)
    Does not apply to h5committest
2003-11-26 12:04:29 -05:00
Quincey Koziol
04acddc331 [svn-r7886] Purpose:
Update ecc compiler flags

Platforms tested:
    Titan
    Not relevant to other platforms, so no h5committest.
2003-11-25 16:24:21 -05:00
Quincey Koziol
5be9d3a22c [svn-r7880] Purpose:
Update DEC compiler support

Description:
    Updated DEC/Compaq compiler detection to handle DEC->Compaq switchover
in compiler version string.

    Also, copied v5.x compiler flags to V6.x compiler flags and included the
-ieee and -misalign flags necessary for correct floating-point support.

Platforms tested:
    Pittsburgh Alpha Cluster (lemieux.psc.edu)
2003-11-25 14:24:13 -05:00
Bill Wendling
d01db86174 [svn-r7857] Purpose:
Bug fix

Description:
    If using g++ on HP-UX, the flags for aCC would be placed on the
    command line. This was causing g++ to fail the configuration test.

Solution:
    CHanged the test so that it's a case statement. If it's the aCC
    compiler, then use those flags. Otherwise, don't specify flags. This
    case statement can be modified to provide compiler-specific flags in
    a similar way to other config/* files.

Platforms tested:
    Hp-UX (Hp-UX specific change.)

Misc. update:
2003-11-19 10:21:17 -05:00
Bill Wendling
b303888f43 [svn-r7854] Purpose:
Bug Fix

Description:
    The FFLAGS, CXXFLAGS, and CPPFLAGS variables weren't carrying
    user-defined values into the Makefiles.

Solution:
    Changed the flags from FOO="..." to FOO="$FOO ..."

Platforms tested:
    Copper
    Verbena
    Arabica

Misc. update:
2003-11-14 15:36:53 -05:00
Bill Wendling
bfbfda0cae [svn-r7816] Purpose:
Improvement

Description:
    If the library is built in parallel mode, then name the "h5cc" and
    "h5fc" programs "h5pcc" and "h5pfc" resp. This saves the user from
    worrying about mixing serial and parallel builds of the library and
    having to specify the pathnames and so-forth.

Platforms tested:
    Linux (w/ parallel & Fortran)
    Modi4 (w/ parallel & Fortran)
    Sol (Serial & Fortran & C++)

Misc. update:
    Updated release/docs/RELEASE
2003-11-04 13:10:59 -05:00
Albert Cheng
e272fbe436 [svn-r7781] Purpose:
"bug fix", sort of.

Description:
now that stream-vfd is on by default, it does not work for Tflops.
Set it to no by default.

Platforms tested:
Tested in Tflops.

Misc. update:
2003-10-28 23:26:30 -05:00
Bill Wendling
2c48c89a47 [svn-r7771] Purpose:
Update

Description:
    Changed the line saying something like:

        Testing FOO

    to

        Fortran API: Testing FOO
    and
        C++ API: Testing FOO

    when appropriate.

Platforms tested:
    Verbena, Arabica, Modi4

Misc. update:
2003-10-28 12:58:09 -05:00
Quincey Koziol
222e001c1d [svn-r7684] Purpose:
Bug fix

Description:
    Reduce optimization level from -O3 to -O for gcc 3.*, since it seems to
be generating bad code for the atomic type conversions now...

Platforms tested:
    FreeBSD 4.9 (sleipnir)
    Linux 2.4 (eirene, verbena)
    h5committest not necessary, this is a GNU-only change.
2003-10-20 23:08:51 -05:00
Quincey Koziol
d7bde16f45 [svn-r7480] Purpose:
Bug fix

Description:
    The MPI_File_set_size() routine on ASCI Red is not able to extend files
so that they are larger than 2GB.

Solution:
    Add an extra macro which controls whether MPI_File_set_size() can handle
>2GB offsets or if our "older" way of reading a byte, then writing a byte at
the appropriate offset should be used.

Platforms tested:
    FreeBSD 4.9 (sleipnir)
    h5committest
2003-09-16 12:33:00 -05:00
Quincey Koziol
26e94d4eef [svn-r7293] Purpose:
Code cleanup

Description:
    Remove some redundant libtool definitions, etc.

Platforms tested:
    h5committested
2003-08-08 13:33:45 -05:00
Elena Pourmal
c926d46a9d [svn-r7284]
Purpose: Bug fix (by Bill Wendling)

Description:  When efc compiler was used, FFLAGS were not set up
              to deal with !DEC amd !MS dirctive and to use
              -Vaxlib flag for exit call.

Solution: Modify the file to set up the flag.

Platforms tested: titan

Misc. update:
2003-08-04 13:27:57 -05:00
Bill Wendling
2f7273dc73 [svn-r7280] Purpose:
Bug Fix

Description:
    In a fit of what can only be described as brain-damagedness, on blue,
    frost, etc. (AIX, really), when you include the zlib.h header file
    and are specifying that the compiler accept ANSI C, zlib.h undefines
    the "const" keyword if you don't have the variable STDC
    defined...*boggle*.

Solution:
    Included a -DSTDC as a commandline flag for the compiler.

Platforms tested:
    Snow (AIX 5.0)
    Only affects AIX machines, so no h5committest needed.

Misc. update:
2003-07-31 15:15:13 -05:00
Bill Wendling
b09e4485f4 [svn-r7277] Purpose:
Bug Fix

Description:
    C++ on Irix 6.5 needs some special libraries (libCio or some such
    thing). These were defined using the DEFAULT_LIBS macro. However,
    they weren't being placed into the Makefiles since it wasn't
    AC_SUBST'ed in configure.in and wasn't declared in commence.in.

Solution:
    Added to configure.in and also added and commence.in

Platforms tested:
    Modi4 (C++, small change and only Irix specific)

Misc. update:
2003-07-30 15:06:56 -05:00
Bill Wendling
1eb74205d4 [svn-r7273] Purpose:
Update/Fix

Description:
    The Dependencies files weren't begin generated properly for C++.

Solution:
    Modified the "dependencies" script to use "top_srcdir" only instead
    of "srcdir", which tended to confuse matters. Regenerated the
    Dependencies files.

Platforms tested:
    Arabica (Small changes)

Misc. update:
2003-07-29 14:23:54 -05:00
Bill Wendling
0603e2db00 [svn-r7269] Purpose:
Update

Description:
    Revamped the configuration system. The configurations for the Fortran
    and C++ libraries are no longer separate from the "main"
    configuration system. This involved removing the "configure*" and
    "aclocal.m4" files from the fortran/ and c++/ subdirectories. Also
    merging settings in the config/ subdirectories into the main config/
    subdirectory.

    Fortran header files had to be modified a little for Linux. It was
    checking if it was a Linux machine by some #defines, however with the
    -std=c99 switch, these defines weren't there. I added a check for
    some other ones which should be there whether the -std=c99 switch is
    used or not.

Platforms tested:
    Verbena (Fortran & C++)
    Sol (Fortran & C++)
    Copper (Fortran & C++)
    Modi4 (Parallel, Fortran, & C++)

Misc. update:
2003-07-28 16:38:04 -05:00
Albert Cheng
fbf20fd09f [svn-r7247] Purpose:
Bug fix

Description:
The "prefix?=..." is not recognized by all make commands.  Even some
older gmake do not recognize it.  The result is that "make install"
failed for many platforms (AIX, Solaris 2.7, HPUX 11, ...) because
when they tried to install at $(prefix)/lib, it becomes /lib since
$(prefix) is not defined.

Solution:
Restore it back to the previous
   prefix=...

Platforms tested:
h5committested.
Also ran in-place build using vendor make in kelgia, arabica
and copper.

Misc. update:
2003-07-22 17:36:39 -05:00
Quincey Koziol
7f2bb04bc4 [svn-r7150] Purpose:
Bug fix

Description:
    "prefix" variable was always being set, instead of only being set if the
    user hadn't set it yet.

Solution:
    Changed "prefix=<foo>" to "prefix?=<foo>".

Platforms tested:
    FreeBSD 4.8 (sleipnir)
    Checked in gmake manual to make certain syntax is the same (it is).
2003-07-03 12:23:35 -05:00
Bill Wendling
007affb6df [svn-r7121]
Purpose:
	Bug Fix

Description:
	Changes needed to make "pmake" work on Modi4.

Solution:
	Needed to add some null macro defines in the commence.in files.
	Needed to remove a dependence on LIBH5TEST in the fortran make
	since LIBH5TEST isn't used in the fortran stuff.

Platforms tested:
	Modi4 (small change)

Misc. update:
2003-06-30 10:19:44 -05:00
Albert Cheng
6f94c274c4 [svn-r7041] Purpose:
Improvement

Description:
RUNPARALLEL is setup with default value when --enable-parallel but only if
CC is not set.

Solution:
set RUNPARALLEL to default value of using poe when --enable-parallel
or when an MPI compiler (e.g. mpcc_r) is used.

Platforms tested:
Copper for both 32 and 64 bit, serial and parallel.
(32bit parallel had a hang problem in configure which is a different but
known problem.)
Note that one still need to setenv AR "ar -X64" for 64bit configure.

Misc. update:
2003-06-14 18:35:10 -05:00
Albert Cheng
a36d2638ce [svn-r6923] Purpose:
Speed up
Description:
    Cache the settings of all number types to save configure time.
    Reduced configure time by a whopping 40% (11m to 7m :-)
Platforms tested:
    Sasn100 only (janus frontend.)
2003-05-29 10:53:34 -05:00
Albert Cheng
e5865cbf35 [svn-r6904] Description:
Replaced the individual setting of gcc flags with the combined
gnu-flags file.

Platforms tested:
Tested in modi4 with different combinations of gcc.  No needed to
run three platforms tests since this is for irix machines only.

Misc. update:
2003-05-20 00:17:09 -05:00
Quincey Koziol
b43ff847ee [svn-r6876] Purpose:
Code cleanup

Description:
    Remove special optimization and debugging flags for obsolete versions of
gcc.

Platforms tested:
    FreeBSD 4.8 (sleipnir)
    h5committest not needed.
2003-05-15 13:52:07 -05:00
Albert Cheng
940cebe09c [svn-r6874] Description:
Change the wording of the parallel test to as a hint.

Platforms tested:
Just a change of echo statement.  Tested in Eirene only.

Misc. update:
2003-05-15 09:32:20 -05:00
Albert Cheng
c7478518b4 [svn-r6854] Purpose:
Feature

Description:
Sometimes the total build process take a long time, especially in
parallel systems.  Need some idea if some times are taking way
too long to process.

Solution:
Added timestamps marking the beginning and ending of tests in
one directory.  This gives a rough idea of how much time the
tests use.

Platforms tested:
Tested only in Eirene since this is just a makefile thing and only
involve a simple command like echo and date.

Misc. update:
2003-05-13 10:21:42 -05:00
Albert Cheng
deab04989e [svn-r6845] Bug fix.
cached the result of configure test for system_scope_threads(no)
since TFLOPS can't do testing in frontends.

Tested in sasn100 (frontend of Janus).
2003-05-12 01:11:05 -05:00
Bill Wendling
c390d06017 [svn-r6842] Purpose:
Code Cleanup

Description:
    Warning messages were being produced by the "make" program because
    the "docdir" was being specified twice as a target in the generated
    Makefiles. This is because the "EXAMPLESDIR" was also defined as
    "docdir".

Solution:
    Made "EXAMPLESDIR" unique for C, Fortran, and C++ in the commence.in
    file and removed EXAMPLESDIR from the Makefile.ins

Platforms tested:
    Dangermouse (only affects make system, not code).

Misc. update:
2003-05-08 18:19:15 -05:00
Albert Cheng
864d07f780 [svn-r6833] Purpose:
Improvement

Description:
Added an explanation of using $HDF5_PARAPREFIX for Parallel tests.

Platforms tested:
h5committested (using sol instead of arabica) plus eirene(pp).

Misc. update:
2003-05-08 13:47:20 -05:00
Elena Pourmal
0b337b6c81 [svn-r6818]
Purpose: Maintenance for T3E

Description: Cray updated T3E to run unicosmk2.0.6.X
             Configuration failed.

Solution: Created new unicosmk2.0.6.X files in the config and fortran/config
          directories and added them to MANIFEST

Platforms tested: Cray T3E

Misc. update:
2003-05-06 18:16:23 -05:00
Quincey Koziol
774b4724b1 [svn-r6792] Purpose:
Initial pass for gcc3.3 support

Description:
    Added section for gcc 3.3+ and cleaned up the gcc 3.2+ section a little.

Platforms tested:
    FreeBSD 4.8 (sleipnir) w/gcc 3.3 snapshot
    Triple check unneeded.
2003-05-02 09:31:08 -05:00
Bill Wendling
158d164b91 [svn-r6768] Purpose:
Bug Fix

Description:
	The compression stuff includes the "zlib.h" header file. This
	file on the SP machine was including another file which would
	#define const as nothing if the compiler wasn't a Standard C
	compiler.

Solution:
	Included a flag to make the compiler into an ANSI compiler.

Platforms tested:
	Blue (Only affects powerPC computers)

Misc. update:
2003-04-28 17:24:07 -05:00
Elena Pourmal
967dfbe01c [svn-r6682]
Purpose: Catching up with 1.4 branch

Description: 1.5 didn't have unicos10.0.X configuration files
             for both C and fortran.

Solution: Added the files

Platforms tested: CRAY T90IEEE

Misc. update:
2003-04-15 17:25:50 -05:00
Albert Cheng
7a6bda13fe [svn-r6560] Purpose:
Feature (bug fix)

Description:
Added a new configure file specifically for the IA64 platform
in which ecc and efc are the default compilers.
Also added all the Fortran special setup in the fortran version

Platforms tested:
no h5committest since this is a IA64 platform stuff.
Tested in Titan.

Misc. update:
MANIFEST Updated.
2003-04-02 11:50:58 -05:00
Albert Cheng
117b6cd323 [svn-r6532] Purpose:
Bug fix

Description:
test/dtypes failed badly when -O is used.  Trying to recompile test/*
code without -O did not eliminate the errors.  So, the failure is
deep in the hdf5 library.

Solution:
For now, removed '-O' from $PROD_CFLAGS so that enable-production will use
no optimization.  Need to find out what exactly trigger the errors.

Platforms tested:
Did not do h5committest because this is an AIX configure change only.
Tested it in Copper.  Need to test it on other offsite machines.

Misc. update:
Updated release_docs/RELEASE.
2003-03-31 11:47:51 -05:00
Albert Cheng
d88f9db418 [svn-r6524] Purpose:
New test feature

Description:
The various virtual file drivers (multi, family, core, ...)
are not tested automatically.  One would have to do it by hand
by setenv HDF5_DRIVER <driver> and then do gmake check in test/.

Solution:
Added a new target, check-vfd, which will take the list from
$VFD_LIST and run 'make check' with each of its members.

Platforms tested:
h5committested.
Since check-vfd is not invoked by default, I went to each machine
to invoke them by hand.  The target worked fine but there were
errors reported from those driver tests.  (Those errors were beyond
the scope of this make target test.)

Misc. update:
2003-03-26 19:14:30 -05:00
Albert Cheng
80c5ec82e7 [svn-r6516] Purpose:
Bug fix

Description:
The $RUNPARALLEL is set even when parallel mode is not used.
Then it is used to launch some parallel natured test (e.g. example/ph5example)
which is not compiled to be so.  That created some unnecessary problem
in some situation (e.g., Copper cannot "poe a.out" from an AFS space
because of the missing AFS token system bug.

Solution:
Setup RUNPARALLEL only when parallel mode is enabled.

Platforms tested:
Only tested in Copper since the change applies to IBM machines only.
(note that v1.4 will fail by default due to a problem when the default
production mode is used.  But that is an error not related to this config file)

Misc. update:
2003-03-20 18:47:00 -05:00
Elena Pourmal
621f8c50b6 [svn-r6490]
Purpose: Catching up with C library

Description:  Fortran Library would not configure correctly with PGI compilers
              because configure couldn't find any appropriate filesin the config
              directories.
Solution:     Added new files for PGI compilers support on Linux 2.4

Platforms tested: arabica(C and F90), burrwhite (pgcc and pgf90), modi4 (F90 and parallel)

Misc. update:
2003-03-19 11:05:26 -05:00
Quincey Koziol
3b6e9ff03c [svn-r6440] Purpose:
Bug fix.

Description:
    -O2 -finline-functions still causes production builds on eirene to fail.

Solution:
    Downgrade optimization on gcc 2.95.x (x<3) to -O -finline-functions

Platforms tested:
    Linux 2.2 (eirene)
2003-02-27 07:26:27 -05:00
Quincey Koziol
55a42d534a [svn-r6439] Purpose:
Bug fix w/gcc 2.95.x where x<3

Description:
    -O3 optimization level causes problems for gcc 2.95.2 on eirene

Solution:
    Only enable -O3 if using gcc 2.95.x (where x>=3) or gcc 3

    Otherwise, use older setting of -O2 -finline-functions

Platforms tested:
    FreeBSD 4.7 (sleipnir)
    Linux 2.2 (eirene)
2003-02-26 14:55:27 -05:00
Albert Cheng
a3254796e9 [svn-r6413] Purpose:
bug fix, features.
Description:
    removed the cache of sizeof_long since it varies between 32 and 64 bits.
    Set xlc and mpcc_r as the default compiler for serial and parallel modes.
    Added -D_LARGE_FILES by default to support large file size.

    Added gcc gnu-flags when gcc compiler is used (not working yet.)
Platforms tested:
    Tested in Copper only since that is the only AIX machine on site.
2003-02-17 13:05:55 -05:00
Quincey Koziol
946c606452 [svn-r6411] Purpose:
Code cleanup

Description:
    Clean up miscellaneous warnings which have crept into the code.

    Fix "_POSIX_C_SOURCE not defined" warning on FreeBSD.

    Adjust gcc compiler flags to be more concise for production mode.

    Refactor the H5O code so that there is a stronger boundary between code
    in the H5O package and code in the library which just calls H5O routines.

Platforms tested:
    Tested h5committest {arabica (fortran), eirene (fortran, C++)
	modi4 (parallel, fortran)}
    FreeBSD 4.7 (sleipnir) serial & parallel and gcc 2.95.4 & gcc 3.2.2

Misc. update:
    Update MANIFEST if you add or remove any file.
2003-02-17 10:54:15 -05:00
Bill Wendling
0f125bf0fc [svn-r6404] Purpose:
Bug Fix (Bug #806)
Description:
    When compiling/installing with the command "make install" (without
    performing a "make" beforehand) the tools weren't being made. This
    was because the `install' command in the Makefiles only relied upon
    public libraries, not private ones (which the one in the tools
    directory is).
Solution:
    Had the `install' command be dependent upon an "AUX_LIB" macro which
    includes libraries which are needed but aren't distributed (that is,
    they're staticly compiled).
Platforms tested:
    Linux
2003-02-14 16:17:16 -05:00
Quincey Koziol
ce5dca112e [svn-r6274] Purpose:
Code cleanup

Description:
    Added gcc 3.2-specific warnings.

Platforms tested:
    FreeBSD 4.7 (sleipnir) w/gcc 3.2.1
2003-01-13 12:16:50 -05:00
Quincey Koziol
ad39fcd690 [svn-r5919] Purpose:
Cleanup

Description:
    Cleanup gcc cases to be more general about gcc 3.x, now that gcc 3.2 has
    been released.

Platforms tested:
    FreeBSD 4.6 (sleipnir) - not a significant enough change to worry about
    multi-platform testing.
2002-09-11 16:31:13 -05:00
Quincey Koziol
f10e0cc1eb [svn-r5791] Purpose:
Code update.

Description:
    Added dependency on test scripts to "make check" target

Platforms tested:
    FreeBSD 4.6 (sleipnir) & IRIX64 6.5 (modi4)
2002-07-15 10:11:27 -05:00
Albert Cheng
d64879827f [svn-r5727] Purpose:
Porting to AIX 5.x
Description:
These have been tested out in v1.4.  Folding them in here.
    aclocal.m4:
	Snow's names were not included in the special hack.
	Added its names in.
	Removed the trailing * in pacific.llnl.gov too.
    configure.in:
    fortran/configure.in:
	Added a case to group all AIX 5.* versions as aix5.x.  This allows
	them to share one common config/*aix5.x file.
    configure:
    fortran/configure:
	Derived from configure.in (done in eirene).
    config/powerpc-ibm-aix4.x:
	Added a comment explaining why not to cache sizeof size_t and off_t
    fortran/config/powerpc-ibm-aix4.x:
	Turned of cache of sizeof size_t and off_t because they are depedent
	on compiler options.
    config/powerpc-ibm-aix5.x:
    fortran/config/powerpc-ibm-aix5.x:
	New config file for AIX 5.X
Platforms tests:
    LLNL Blue, Frost, Snow, both serial and parallel.
2002-06-29 18:39:05 -05:00
Albert Cheng
218c0a70e7 [svn-r5716] Description:
Fixed a typo in LT_LINK_EXE=... line.
Platforms tested:
    modi4 (pp)
2002-06-27 00:20:46 -05:00
Quincey Koziol
aefc39ac32 [svn-r5667] Purpose:
Code cleanup

Description:
    Turn on more warnings in the IRIX builds and clean them up.

Platforms tested:
    IRIX64 6.5 (modi4) w/parallel
2002-06-19 07:54:53 -05:00
Bill Wendling
8e13c3a260 [svn-r5396] Purpose:
Bug Fix
Description:
    Placed quotes around strings which could be empty so that the shell
    script doesn't complain to us about "too many arguments for test"
    problems.
Platforms tested:
    Linux
2002-05-10 16:05:06 -05:00
Quincey Koziol
f3671809b5 [svn-r5309] Purpose:
Configure cleanup

Description:
    Neaten up file a bit more...

Platforms tested:
    Linux 2.2 (eirene) with gcc 2.95.2 and Solaris 2.6 (baldric) with gcc 2.8.1
2002-05-01 10:14:52 -05:00
Quincey Koziol
80de8bccb9 [svn-r5304] Purpose:
Configure cleanup

Description:
    Fine-tune the gcc version checks a bit more...

Platforms tested:
    FreeBSD 4.5 (sleipnir) with gcc 2.95.3 and gcc 3.1 (prerelease) and
    Solaris 2.6 (baldric) with gcc 2.8.1
2002-05-01 09:15:35 -05:00
Quincey Koziol
2491fa05d4 [svn-r5302] Purpose:
Configuration improvements

Description:
    Added more warning flags to gcc builds, especially with gcc 3+.  Also, added
    the -Wno-long-long flag to gcc builds to turn off the annoying "long long"
    warnings.

Platforms tested:
    FreeBSD 4.5 (sleipnir) with gcc 2.95.3 and gcc 3.1 (prerelease)
2002-05-01 08:30:54 -05:00
Albert Cheng
fda4bd4fb4 [svn-r5184] Added hard coded value of malloc for zero bytes into the cached list.
Tested:
    Tflops.
2002-04-14 00:17:23 -05:00
Albert Cheng
27f237f4c0 [svn-r5072] Purpose:
Bug fix
Description:
    Old config assume compiler is the SGI compiler if it is not gcc.
    It would apply all SGI cc options to the $CFLAGS.  This would cause
    problem if a non-cc non-gcc compiler is used.
Solution:
    Verify the compiler is indeed the SGI compiler before applying all those
    cc specific options to the $CFLAGS.
Platforms tested:
    modi4, both parallel serial, gcc or cc, -64 or n32.
2002-03-19 23:45:55 -05:00
Bill Wendling
2c49a718d7 [svn-r4999] Purpose:
Bug Fix
Description:
	``make uninstall-doc'' wasn't working properly. Some files would be
	left behind in the installed source tree. The fix I put in was too
	heavy-handed as it wiped out the entire doc tree that was installed
	and would remove any other files which were installed there.
Solution:
	Executed the ``make uninstall-examples'' command if uninstalling the
	docs. Fixed how the java Tutorial examples were being removed (they
	weren't). Essentially used the PUB_SUBDOCS macro to help remove them.
Platforms tested:
	Linux
2002-02-21 16:10:29 -05:00
Albert Cheng
cf16f383ec [svn-r4980] Purpose:
Bug fix
Description:
    The -lnoop library was specified in $LDFLAS when it should have
    been in $LIBS.  In the past, human just put it in the back and
    repeated it enough times in the link statement till it worked.
    The tool h5cc exposed this error since the $LDFLAGS is put in
    front of all libraries, including libhdf5.a.  That won't work.
Solution:
    Moved the specification of -lnoop to $LIBS.
Platforms tested:
    Tflops
2002-02-18 10:25:43 -05:00
Quincey Koziol
dd0ecaa643 [svn-r4917] Purpose:
Bug Fix

Description:
    Turn down the compiler optimizations for the Cray SV1

Platforms tested:
    Cray SV1 (killeen.nersc.gov)
2002-02-07 11:25:54 -05:00
Albert Cheng
8a778bb95d [svn-r4794] Purpose:
Bug fix.
Description:
    __int64 is not a legal type in Tflops.
    Set its sizeof to 0 in the cached values.
    This is a temporary fix since the real problem is
    in configure which hardset __int64 to 8 for cross-compiling cases.
Platforms tested:
    Tflops
2002-01-07 17:32:16 -05:00
Albert Cheng
2453f290ec [svn-r4765] Purpose:
Bug fix.
Description:
    FreeBSD would fail the threadsafe feature if static-exec is not on.
Solution:
    Force enable-static-exec on if enable-threadsafe is on.
    Also moved the chunk of FreeBSD specific code for Pthread setup
    from configure.in to config/freebsd.
    Also changed enable-threadsafe to check on linking pthread program.
    That takes care of platforms (e.g. freebsd) that has pthread
    support builtin the default C library.  Now one can just use
    "enable-threadsafe" if the compiler has pthread support by default.
Platforms tested:
    eirene, Sleipnir
2002-01-02 14:05:30 -05:00
Quincey Koziol
1e0003652b [svn-r4616] Purpose:
Code cleanup
Description:
    Put quotes around compiler flags when debugging is on, so they get
    carried down into the Makefiles properly.
Platforms tested:
    Solaris 2.6 (baldric)
2001-11-20 13:48:40 -05:00
Quincey Koziol
6f6eca2c04 [svn-r4576] Purpose:
Bug fix
Description:
    When compiled with the -g flag (for debugging), the incremental linker
    causes problems when building the H5detect utility.
Solution:
    Turn off the incremental linker (with the -xildoff flag) when compiling
    for debugging.
Platforms tested:
    Solaris 2.8/64 (houdin)
2001-10-26 10:55:46 -05:00
Elena Pourmal
4df562a790 [svn-r4536]
Purpose:
    Bug fix
Description:
    On NERSC SP3 configure failed while trying to figure out
    how to print long long.
Solution:
    Added the following line
    hdf5_cv_printf_ll=${hdf5_cv_printf_ll='ll'}
Platforms tested:
    Not tested yet.
2001-10-09 14:54:27 -05:00
Bill Wendling
5e834c4cbc [svn-r4466]
Purpose:
    Feature Add
Description:
    Added "install-example" and "install-all" to the Makefile system.
    The behaviour of the "make install*" options:

        make install          - Installs binaries, libraries, include
                                files, and example programs.
        make install-examples - Installs only the example programs.
                                The directories are:

                            ${prefix}/doc/hdf5/examples/{c,c++,fortran}

        make install-all      - Install the binaries, libraries, include
                                files, example programs, and
                                documentation. The whole kit-n'-caboodle.
        make uninstall-examples - Get rid of those example files (but not
                                  the ${prefix}/doc/hdf5/examples/...
                                  directories)

    There's a new bin/ program which helps create directories which are
    deeply nested called "mkdirs". It's a simple shell script.
Platforms tested:
    Linux
2001-09-21 18:50:15 -05:00
Albert Cheng
15c3995e05 [svn-r4434] Purpose:
New feature.
Description:
    Test programs were assumed to be serial programs only.
    There was no provision to test parallel programs automatically.
Solution:
    Added $(TEST_PARA_PROGS) to hold parallel test programs and
    added appropriate action entry to test them if defined.
Platforms tested:
    Eirene (parallel).
2001-09-10 23:04:15 -05:00
Bill Wendling
1b89fa3640 [svn-r4408]
Purpose:
	Feature Addition
Description:
	Added support for gcc 3.0.x. GCC 3.0.x supports the C99
	specification. The "-std=c99" gets rid of those annoying "warning
	long long not supported by ANSI standard" messages.
Platforms tested:
	Linux and gcc 3.0.1
2001-08-23 12:14:06 -05:00
Bill Wendling
b5d11111b0 [svn-r4292]
Purpose:
    Bug Fix
Description:
    The way we were generating Dependencies and .depend files was broken.
    If the $srcdir or other macros began with a ".", then it would match
    anything and cause problems since it would then overwrite the
    beginning of the header file's path.
Solution:
    Wrote a Perl script which can handle this type of weirdness better.
    It's only used when the environment is a GNU one with a GCC
    compiler...
Platforms tested:
    Linux
2001-08-01 16:00:25 -05:00
Quincey Koziol
00f62b983a [svn-r4213] Purpose:
Bug fix... (sorta)
Description:
    Added --enable-linux-lfs configure flag to have better control over whether
    the enable large file support on Linux machines.  Also removed the
    -malign-double flag for gcc since it can potentially cause errors which
    are difficult to detect.
Platforms tested:
    Linix 2.2 & 2.4 (eirene and dangermouse)
2001-07-16 11:40:56 -05:00
Quincey Koziol
5f113eac84 [svn-r4016] Purpose:
Code cleanup
Description:
    Get ready for adding C99 extensions sometime in the future.
Solution:
    Added some comments to the gcc flags..
Platforms tested:
    Linux (eirene), FreeBSD 4.3 (hawkwind)
2001-06-19 11:19:34 -05:00
Bill Wendling
93129f271e [svn-r3892] Purpose:
Better Mouse Trap^W^WBug Fix
Description:
    Instead of having the large file support stuff be in the
    config/gnu-flags directory, I added it to the configure.in file so
    that it first checks for the syscall ``getdents64()''. If it finds
    it, then it removes the ``-malign-double'' flag if the GCC compiler
    is 2.95.x since this flag doesn't play well with the LFS stuff.
Solution:
    Added test for getdents64(), if found it removes the -malign-double
    flag if the compiler is 2.95.x. This is done in the configure.in
    file. The gnu-flags file is returned to normal. A new field is added
    to the H5config.h.in file because of the getdents64 check.
Platforms tested:
    Linux
2001-05-08 13:42:42 -05:00
Bill Wendling
4a72a04048 [svn-r3891] Purpose:
Bug Fix
Description:
    Linux does actually support 64 bit files (those greater than 2GB),
    you just have to defined a bunch of, seemingly meaningless, macros in
    order to coax glibc to work with you. 64 bit file support is in the
    2.3 and above kernels by default. For lower, well...upgrade or
    something. The one weird thing, the "-mdouble-align" flag was causing
    hdf5 to barf when the large file support was compiled in there. It
    has something to do with the structures and their alignment or
    something. Very weird.
Solution:
    Added a test to see if we're on a Linux boxen with kernel >2.3 and if
    so then specify the flags for LFS support. Removed the -mdouble-align
    flag if we do use LFS support since it causes damage.
Platforms tested:
    Linux (Dangermouse)
2001-05-07 19:04:50 -05:00
Quincey Koziol
ca9bdbdcbe [svn-r3827] Purpose:
Bug fix.
Description:
    'make distclean' is broken on FreeBSD 4.3, with some syntax errors.  I have
    a feeling that the make command is more picky in FBSD 4.3 than in 4.2 which
    is what is causing these errors to crop up now.
Solution:
    Add missing semicolon to line in 'clean' target and take out bogus '-'s
    in front of "$(RM)" commands which are already in if's
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-04-19 16:47:12 -05:00
Bill Wendling
7e05b02ab3 [svn-r3809] Purpose:
Bug Fix
Description:
    On the T3E, the hack about SUBDOCDIR macro didn't work cause it
    wanted an actual value to be in this macro. Well, it wasn't, so now I
    check that it actually has a value.
Solution:
    Check that DOCDIR and SUBDOCDIR have a value before trying to do
    anything with it.
2001-04-13 11:38:17 -05:00
Quincey Koziol
3dce3d49fd [svn-r3807] Purpose:
Portability changes
Description:
    Very quick port to Compaq (nee DEC) Alpha OSF5.
Solution:
    Added a new "dec-osf5.x" configuration file and changed configure.in
    to look for it.
    The local test machine is now passing all the tests, except I can't get
    the "-L<path>" stuff to work, so tools which depend on the HDF4 library
    around tested.
Platforms tested:
    Compaq Alpha 5.1 (compaq.ncsa.uiuc.edu)
2001-04-13 09:55:05 -05:00
Bill Wendling
ef461a8454 [svn-r3804] Purpose:
Bug Fix
Description:
    If we need to specify a -R flag for dynamic libraries (like, in the
    case when we specify --with-hdf4), then this flag needs to be added
    to the linking line so that it will show up in the generated library
    and other programs linking to that library will be able to find the
    relevant libraries.
Solution:
    Added the DYNAMIC_DIRS macro to the link line.
Platforms tested:
    Arabica
2001-04-12 14:39:13 -05:00
Bill Wendling
8bbacc3ae3 [svn-r3778] Purpose:
Update
Description:
    Changed the way .depend and Dependencies files were being generated.
    Instead of gathering all files which are ``#included'', we only pick
    out the ones which are local to us.
Solution:
    Changed -M flag to -MM and changed

        #include <hdf5_files.h>

    to

        #include "hdf5_files.h"

    in the source code.
Platforms tested:
    Linux
2001-04-05 12:04:07 -05:00
Bill Wendling
ee17f3731e [svn-r3586] Purpose:
Hack
Description:
    Need to install the files in the examples/java directory, however
    they include installing a Makefile. This was causing havoc with our
    Makefile/configure system.
Solution:
    Changed so that you can specify a "SUBDOCDIR" which will create a
    subdirectory for you and fill it with files specified in PUB_SUBDOCS.
Platforms tested:
    Linux
2001-03-09 17:30:51 -05:00
Bill Wendling
8910ca14c4 [svn-r3568] Purpose:
Bug Fix
Description:
    Added logic so that all the various make options would recursively be
    done in their subdirectories.
Solution:
    Added a for-loop to iterate through the subdirectories.
Platforms tested:
    Linux
2001-03-08 15:13:04 -05:00
Bill Wendling
241abf4931 [svn-r3452] Purpose:
Fix
Description:
    The "make *clean" options weren't recursing through the
    subdirectories (if they exist).
Solution:
    Force it to recurse through the subdirectories listed in SUBDIRS
Platforms tested:
    Linux
2001-02-19 14:04:32 -05:00
Albert Cheng
c6bcd9c7d2 [svn-r3431] Purpose:
Update
Description:
    Incorporated all the changes made to powerpc-ibm-aix4.2.1.0
    and powerpc-ibm-aix4.3.2.0 into powerpc-ibm-aix4.x.
    Removed the other two "sub-files" now that powerpc-ibm-aix4.x
    can cover them too.
Platforms tested:
    IBM SP2 at LLNL BLUE, both parallel and serial.
2001-02-16 15:54:04 -05:00
Quincey Koziol
d7b92c34eb [svn-r3400] Purpose:
Code cleaning
Description:
    Moved all gcc compiler flags into the config/gnu-flags file and re-added
    the warning flags removed during the beta testing.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-02-12 11:29:15 -05:00
Bill Wendling
6fbdd9f68b [svn-r3356] Purpose:
Formatting...
Platforms tested:
    Solaris
2001-02-05 15:09:33 -05:00
Bill Wendling
0c5cedfff9 [svn-r3354] Purpose:
Fix for install-doc feature
Description:
    I fixed the install-doc feature so that it actually works! (Imagine
    :-).
Solution:
    It manually checks if the DOCDIR exists. If not, then it mkdir's it.
    Then it does the install of the appropriate docs.
Platforms tested:
    Linux, Solaris
2001-02-05 15:05:48 -05:00
Quincey Koziol
c6da08f994 [svn-r3335] Purpose:
Config cleanup
Description:
    In production environments, the optimization flag for gcc was set to
    -O6, which has some code-generation problems in certain environments.
Solution:
    Turned optimizations down to -O2, which is still pretty bleeding edge.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-01-30 12:49:20 -05:00
Quincey Koziol
e30a28f2f0 [svn-r3323] Purpose:
New platform
Description:
    Support the Cray SV1 machine. (config file is identical to unicosmk file
    right now).
Platforms tested:
    Cray SV1 (killeen.nersc.gov)
2001-01-24 17:42:49 -05:00
Bill Wendling
c20d60058e [svn-r3314] Purpose:
Feature Fix
Description:
    This checks before printing the warning message about hsizet type if
    the user specified --disable-hsizet on the command line.
Platforms tested:
    Linux
2001-01-19 17:13:50 -05:00
Albert Cheng
27240a9031 [svn-r3200] Purpose:
Bug fix
Description:
    install method was cached as 'cp -r'.  It did not work
    in --srcdir option as the configure set the method to ../cp -r.
Solution:
    Removed the cached entry.  Let it look for install or use install-sh.
Platforms tested:
    LLNL Blue (found and used /usr/local/gnu/bin/install).
2000-12-23 15:43:10 -05:00
Albert Cheng
6d71c2cacc [svn-r3148] Purpose:
Bug fix
Description:
    TFLOPS was configured to use '-g' flag even when --enable-production
    option was used.  It was because configure hard set CFLAGS to '-g'
    if it is a valid C compiler option and if $CFLAGS is not set yet.
    This is not noticed in other platforms because the config/* files
    they all set CFLAGS in one form or another.
Solution:
    This is a bug in configure but it is risky to change it so close
    to code release.  Instead, just set CFLAGS in this file to bypass
    the configure bug which should be squashed after code release.
Platform tested:
    Tflops with parallel, both debug and production modes.
2000-12-18 08:31:21 -05:00
Bill Wendling
0df4d83cf7 [svn-r3127] Purpose:
New File
Description:
	T3E needs this file so that configure will find it. The name was
	changed.
Platforms tested:
	T3E
2000-12-13 11:47:56 -05:00
Albert Cheng
9f8b25422c [svn-r3062] Purpose:
Improvement
Description:
    During configure, it tries to find the size of various basic
    C data types (int, int8, fast_int8, ...) by running a small
    program for each data type.  But Pecific blue uses a batch queue
    system to launch all jobs and the whole process takes couple
    minutes.  With over 20 basic types to test, that takes "forever"
    for the configure to complete.
Solution:
    Let the configure complete, then save all those valid values in
    the config.cache file into the specific config file for Pac. Blue.
    With the values cached, configure does not need to run those little
    problems.
Platform Tested:
    Pacific blue with mpicc.
2000-12-01 18:47:18 -05:00
Thomas Radke
896558b27d [svn-r3060]
Purpose:
    Bugfix
Description:
    The gcc linker couldn't resolve any socket routine symbols
    if the Stream VFD was configure.
Solution:
    Add the socket library to the LIBS makefile variable not just
    when compiling with the native cc compiler
    but also if using GNU tools (such as on Solaris x86 systems).
Platforms tested:
    SunOS 5.5 with GNU cc (hatteras),
    SunOS 5.6 with native cc (thor.sistec.kp.dlr.de)
2000-12-01 17:08:03 -05:00
Quincey Koziol
81145c6bab [svn-r3043] Purpose:
Bug Fix
Description:
    configure on Cray T3E is looking for a differently named config file,
    so at it under that name.
Platforms tested:
    Cray T3E (mcurie)
2000-11-30 15:34:01 -05:00
Bill Wendling
b9fdce5fb4 [svn-r3042] Purpose:
Messed up
Description:
	The compile line doesn't like the -dlopen self flag...
Solution:
	removed
Platforms tested:
	Eirene
2000-11-30 15:33:13 -05:00
Bill Wendling
451ab02f4f [svn-r3038] Purpose:
Buglet
Description:
	If we compiled with -all-static, then the compiler could complain
	about not being able to find dlopen and friends.
Solution:
	Used the ``-dlopen self'' libtool command.
Platforms tested:
	Linux
2000-11-30 14:53:43 -05:00
Bill Wendling
89a7dcd400 [svn-r3030] Purpose:
Bug Fix
Description:
	Some platforms don't have support for dlopen and friends when the
	library is static.
Solution:
	This is part of the attempt to correct this "feature". libtool
	wants AC_LIBTOOL_DLOPEN in the configure.in file and -dlopen on
	this line...
Platforms tested:
	(untested)
2000-11-29 17:28:03 -05:00
Albert Cheng
687d3d3bc3 [svn-r2980] Purpose:
Bug fix
Description:
    make reconfigure complained syntax error.
Solution:
    The for loop previous added contained a typo.  Replaced $$test
    with $$sub.
Platforms tested:
    modi4-64.
2000-11-20 09:48:04 -05:00
Bill Wendling
6d4c58fb7d [svn-r2929] Purpose:
Fix
Description:
	Changed so that only *.c files are run through the tracing
	program. This is so the fortran stuff won't return spurious
	warnings.
Platforms tested:
	Linux
2000-11-15 12:48:48 -05:00
Thomas Radke
9c93282d1b [svn-r2749]
Purpose:
    Set compiler flag to force BSD compliance.
Description:
    In order to set a socket descriptor into non-blocking mode
    via ioctl(2) the Stream driver uses the FIONBIO constant.
    Under Solaris this is defined only when compiled as BSD code.
    I hope this doesn't break anything.
Platforms tested:
    Solaris 5.7
2000-10-28 14:07:32 -05:00
Bill Wendling
af17e1ee3f [svn-r2719] Purpose:
Bug fix
Description:
	During a `reconfigure', it wasn't traversing the
	subdirectories...
Solution:
	Added a loop to the reconfigure logic to do just that.
Platforms tested:
	NOT tested...
2000-10-23 17:58:09 -05:00
Bill Wendling
a2e49651af [svn-r2696] Purpose:
Bug Fix
Description:
	On some platforms, if you don't have . in your PATH, it won't
	find the test program it's supposed to run.
Solution:
	Changed instead to ./$$test so that it picks up the program in
	the current directory.
Platforms tested:
	Opus and Linux
2000-10-18 11:47:04 -05:00
Bill Wendling
3b4b7c6dbf [svn-r2628] Purpose:
Site specific configure files
Description:
	Some machines need to specify things during the configure
	but they aren't necessary for all machines of that type. Those
	site-specific changes should go here. The format of the filename
	is:

		host-$hostname

	where $hostname is the output from the `hostname' command.
	Needless to say, this is optional to those sites which don't need
	it.
2000-10-03 17:22:11 -05:00
Bill Wendling
3c789053eb [svn-r2577] Purpose:
Added support for compiling in subdirectories.
Platforms tested:
	Solaris, IRIX (O2K)
2000-09-19 15:33:18 -05:00
Robb Matzke
f2caef690b [svn-r2573] Purpose:
Fix Irix pmake bugs
Description:
	Build fails on Irix when builddir != srcdir
Solution:
	* acconfig.h
	* src/H5config.h.in			[REGENERATED]
		Added definition for HAVE_STREAM

	* config/conclude.in
	* config/depend1.in
	* config/depend2.in
	* config/depend3.in
	* config/depend4.in
		The `Dependencies' file is located in the source
		tree. This fixes bugs for Irix pmake when compiling
		outside the source tree.  Hopefully it still preserves
		Albert's changes which allow concurrent compilations
		to not stomp on each other's Dependencies files.


	* examples/Dependencies			[REGENERATED]
	* src/Dependencies			[REGENERATED]
	* test/Dependencies			[REGENERATED]
	* tools/Dependencies			[REGENERATED]
		Regenerated for testing purposes.
Platforms:
	i686-pc-linux
	mips-sgi-irix6.5
	sparc-sun-solaris2.6
2000-09-19 12:04:46 -05:00
Albert Cheng
7c1e888bde [svn-r2572] Purpose:
Feature
Description:
    Most tests are done inside a for-loop.  Whenever a test exits
    with error, the for-loop does a "exit 1" to exit the make.
    "make -i" could not catch and ignore the error status.
Solution:
    Replaced "exit 1" with break.  At the end of the for-loop,
    test if all tests have been run.  If not, the for-loop is
    ended by the break command, thus raise an error.  Now,
    'make -i' can catch and ignor it.
    Also added the test of variable HDF5_Make_Ignore inside the
    for-loop to indicate the desire to ignore errors when the
    HDF5_Make_Ignore is set to a non-null/blank string.
Platforms:
    Tested on modi4 and eirene.
2000-09-19 11:53:34 -05:00
Thomas Radke
55bd85f6e5 [svn-r2554] Purpose:
Add the socket library to make's LIBS variable.

Description:
        The socket library is needed to build HDF5 with the Stream VFD.

Platforms:
        Solaris
2000-09-15 06:17:07 -05:00
Bill Wendling
bb533a9879 [svn-r2538] Added DYNAMIC_DIRS macro. This is derived from the LDFLAGS macro created
in the configure script, basically replacing all -L/<path> constructs
with -R/<path> ones so that libtools will pass it along to the compiler
correctly.
2000-09-12 02:54:54 -05:00
Bill Wendling
e9164bb70c [svn-r2527] Added ability for user to compile executables as all-static... 2000-09-08 17:57:40 -05:00
Albert Cheng
ff5aa653b2 [svn-r2418] Added the variable, PUB_PROGS, which holds the public programs
that are to be installed.
2000-06-27 14:01:03 -05:00
Bill Wendling
0f97875bc3 [svn-r2391] Adding the HPUX 11.00 file which is a copy of the HPUX 10.20 config file. 2000-06-19 09:55:02 -05:00
Albert Cheng
7a3ddc546a [svn-r2271] Document the changes I made of renaming Makefile target as
reconfigure.
2000-05-19 09:34:38 -05:00
Quincey Koziol
b92ef0f7d0 [svn-r1999] Correctly detect gcc 2.95.x and Pentium Pro|Pentium II|etc. processors. 2000-03-04 13:45:58 -05:00
Albert Cheng
0f91b587f4 [svn-r1979] Purpose:
Feature "improvement".
Problem:
    The Makefile target triggers gmake to redo the whole auto-configure
    process if it sees any autoconfigure related files changed.  It causes
    couple problems.  One is that when multiple machines using --srcdir
    are running make, they may detect the changes and launch the autoconf
    at the same time.  These end up as multiple hosts updating the same
    srcdir area together--bad things can happen.  Another one is that
    when one modifies some Makefile.in, then try "make distclean" before
    launching the configure process.  Instead of cleaning things, it
    started a configure, recreate all Makefiles and other files, then
    finally come around to do the distclean--who knows what it cleans
    by now since the Makefile is changed too.  Last problem was that
    this auto-process will launch even for command "gmake -n ...".
Solution:
    Renamed Makefile target to reconfigure so that the auto-checking
    is still available but must be launched explicitedly.  If one
    wishes to have the auto-checking as default, one may do
    alias gmake "\gmake -i reconfigure; gmake \!* ".
2000-02-18 21:39:46 -05:00
Albert Cheng
9ca6cfa0aa [svn-r1975] Purpose:
Configuration improvement

Problem:
Arabica has a zlib library that is a dynamic lib in /usr/ncsa/lib.
Binary generated would fail to run with a missig libz.so complain
if /usr/ncsa/lib is not in $LD_LIBRARY_PATH.  This exposed the
problem that if the binary is linked with -L$mylibpath -lxyz
where libxyz is a dynamic type, the binary can't run if $mylibpath
is not in $LD_LIBRARY_PATH (or equivalent) or as part of the
system default library paths (e.g., /usr/lib, /usr/local/lib).
This problem also caused failures during configure (when trying
to see what format to print long long) and during H5detect.
The base cause is because libtool does not "transfer" the
knowledge of -L$mylibpath to the wrapper file its mode=link
generates.

Solution:
bin/ltmain.sh:
    Changed it so that it transfers the libpaths from -Llibpaths
    to the wrapper generated.  I used the already defined variable
    finalize_shlibpath.  Not sure it is correct to use it this way.
    Need to check on this.
configure.in:
    Put in a patch to transfer information from LDFLAGS to LD_LIBRARY_PATH
    right before the AC_TRY_RUN.  The above fix for ltmain.sh does not
    work here because libtool is generated later than this point.
    There should be a cleaner way to do this.
    Removed the hardcode of NCSA_LT_LINK_EXE because it is no longer
    needed.
commence.in:
    Removed the hardcode of NCSA_LT_LINK_EXE because it is no longer
    needed.
Makefile.in:
    Another patch of LDFLAGS to LD_LIBRARY_PATH because I could not
    make it to generate H5detect in the wrapper form of libtool.
    Need to make it to use the libtool correctly. Later.

Platform tested:
arabica (solaris 2.7)
baldric (solaris 2.6)
2000-02-18 07:53:32 -05:00
Raymond Lu
c89bf21534 [svn-r1954] This file handles configuration of Cygwin on PCs 2000-02-09 16:08:20 -05:00
Quincey Koziol
0fd1ac6740 [svn-r1951] Tweaks to detect the shared libraries on NCSA's systems, so that Albert's
automated tests will work correctly on arabica.
2000-01-29 19:37:28 -05:00
Albert Cheng
e29f213cf9 [svn-r1949] Problem:
The Dependencies files were generated in $srcdir even when
    --srcdir is used.  It caused conflicts if multiple hosts
    are doing make sharing the same $srcdir.  It also violated
    the rule that --srcdir would not modify the content of $srcdir
    which could be on a read-only media like a CD-ROM.
Solution:
    Dependencies files are generated in the "current" directory.
Platform tested:
    dangermouse (linux), modi4 (IRIX64).
2000-01-26 09:50:12 -05:00
Robb Matzke
6dce914733 [svn-r1846] ** config/depend1
A minor tweak to the way GNU systems generate file dependencies for
	the Makefiles.
1999-11-23 14:35:49 -05:00
Quincey Koziol
ef4c6e6bc8 [svn-r1834] Blocked remark # 3201 (parameter unused) since the SGI compiler doesn't
recognize our "UNUSED" macro and whines a lot about the unused parameters.
1999-11-17 16:58:25 -05:00
Robb Matzke
4051fa3187 [svn-r1814] * 1999-11-03
** config/depend1.in
	We don't regenerate the Dependencies files if we're compiling in the
	source tree because `gcc -MM' doesn't output enough information to
	make the result usable when compiling outside the source tree.

** src/H5config.h.in
	Regenerated to include HAVE_LIBMPI and HAVE_LIBMPIO because of recent
	changes to configure.in
1999-11-03 13:05:58 -05:00
Robb Matzke
ae62eb223c [svn-r1806] * 1999-11-02
** bin/rpmsync
** config/depend1.in
	Tweaks for versions of `make' that can't search directories.

** examples/Dependencies
** src/Dependencies
** test/Dependencies
** testpar/Dependencies
** tools/Dependencies
	Regenerated all these with more complete path names.
1999-11-02 12:29:33 -05:00
Robb Matzke
eb8747499d [svn-r1802] Changes since 19991019
----------------------

./MANIFEST
./configure.in
./configure			[REGENERATED]
	Added more checking for `make' features.

./Makefile.in
./doc/Makefile.in
./doc/html/Makefile.in
./doc/html/Tutor/Makefile.in
./examples/Makefile.in
./pablo/Makefile.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
./config/commence.in
./config/conclude.in
./config/depend.in		[REMOVED]
./config/depend1.in		[NEW]
./config/depend2.in		[NEW]
./config/depend3.in		[NEW]
./config/depend4.in		[NEW]
./config/dependN.in		[NEW]
	The directory search stuff was moved into commence.in, thereby
	shortening the Makefile.in prologues.

./doc/html/Dependencies		[NEW]
./doc/html/Tutor/Dependencies	[NEW]
./examples/Dependencies		[NEW]
./src/Dependencies		[NEW]
./test/Dependencies		[NEW]
./testpar/Dependencies		[NEW]
./tools/Dependencies		[NEW]
	The `.distdep' files were all renamed to `Dependencies' to make them
	more obvious. They are required (but may be empty) in every directory
	that has a Makefile.in that ends with @CONCLUDE@ (you'll get an
	obvious error from make if you forgot to create one).

./bin/trace
./src/H5.c
	Added H5E_major_t and H5E_minor_t although tracing only prints the
	integer value.

./src/H5E.c
./src/H5Epublic.h
	Added tracing information.

./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDgass.c
./src/H5FDmpio.c
./src/H5FDsec2.c
./src/H5FDstdio.c
	Fixed places where FUNC_LEAVE() evaluated it's argument more than
	once.

	Added tracing information.

	Wrapped long lines.

./config/gnu-flags
	Fixed a syntax error when we don't have a gnu compiler.
1999-11-01 10:21:16 -05:00
Albert Cheng
6474c9dfdb [svn-r1764] Added the install-doc and uninstall-doc targets. 1999-10-15 16:23:47 -05:00
Albert Cheng
4c93f8deb4 [svn-r1763] Shared mode works fine now with IRIX64. Removed the special disable-shared. 1999-10-15 16:16:02 -05:00
Robb Matzke
34e44e399e [svn-r1753] Changes since 19991007
----------------------

./configure.in
./src/H5config.h.in	[REGENERATED]
	The /usr/ncsa/{include,lib} directories are only added if they
	actually exist. This fixes a warning on some systems.

	Checks for the <pdb.h> header file and also for either the PDB or Silo
	library, and if found prepares to compile the pdb2hdf program.

./config/distdep
	Relative path names for include files are changed to base names since
	the makefile contains the logic for searching and since it's likely
	that building the .distdep files happed from a location other than
	where they would be used in the file system.

./config/conclude.in
	Fixed shell errors when `for' loops iterate over nothing for the
	`uninstall' target.

./src/H5D.c
./src/H5Oefl.c
	File names for the external files are added to the heap when the
	dataset is created instead of when the object header is written. This
	fixes a rare infinite recursion bug.

./src/H5FD.c
./src/H5FDpublic.h
	Optimization to the free list causes H5FD_alloc() usage to go from >10
	seconds to <0.4 second for one example (converting a 30MB equation of
	state file from PDB to HDF5 format). The optimization is to simply
	keep track of the largest item in the free list and not search the
	free list when the largest item is not big enough to satisfy the
	request.

./src/H5FDcore.c
./src/H5FDcore.h
./test/h5test.c
	If the `backing_store' property is true then a flush causes the entire
	contents of memory to be written to the specified file. This is  in
	preparation for the ASCI/red optimizations and is currently tested by
	the pdb2hdf `--cached' switch.

./src/H5Odtypes.c
	Wrapped three long lines.

./tools/Makefile.in
./tools/pdb2hdf.c		[NEW]
	A PDB-to-HDF5 translator. It only translates meta data -- the
	resulting HDF5 points into the PDB file for the raw data.
1999-10-15 09:53:57 -05:00
Quincey Koziol
dd26601117 [svn-r1688] Added missing vector Cray (x90 series) configuration file. 1999-09-28 19:28:32 -05:00
Albert Cheng
f6a86261bc [svn-r1672] bin/ltconfig:
ltconfig used just an empty source file to test the share lib
    compiler options.  SUNSpro CC returns succeed though it issues
    a warning too.  ltconfig did not like the warning.
    Changed it to test with a file containing a simple dummy program.
    Platform tested: solaris 2.6 and 2.7

config/solaris2.x:
    Changed default compiler to "cc" now that Sunpro CC can produce
    static and shared codes correctly.
    Also added -s to PROD_CFLAGS to produce leaner binary files.
1999-09-27 19:01:32 -05:00
Albert Cheng
aeb5116600 [svn-r1645] conclude.in:
Problems:
    libtool generated compiler linking commands with dependency_libs
    appended to any dynamic library used but only "-lz -lmfhdf ..." were
    appended but "-L...", if used, are not appended.  So, the "-lz ..."
    information is incomplete and solaris cc does not allow even if the
    "-L..." information is provide in later part of the command.
    Solution:
    Included $LDFLAGS in the building of $(LIB).

irix5.x:
irix6.x:
    Added "-s" to PROD_CFLAGS so that production code are striped for
    smaller sizes.

Platform Tested:
    Solaris 2.6
1999-09-22 13:02:27 -05:00
Robb Matzke
cbf68fc824 [svn-r1568] Changes since 19990730
----------------------

This extensive change is the virtual file layer implementation. I've
ported and tested the sec2, family, and core drivers and only ported
the mpio driver (Albert will test it).  So if you need MPIO I would
recommend sticking with the previous version for a while.

You will get a few compile warnings about split and stdio drivers not
being implemented and possibly tracing information not inserted in
some of the drivers. You can safely ignore them but I plan to fix
them.

I'm still working on the split driver because I just realized that it
needs a part of the VFL that isn't written yet.

Documentation is being updated also because there were some minor
changes (mostly just name changes). It should be available on my web
site later this week.

./MANIFEST
./src/Makefile.in
./src/hdf5.h
./src/H5Flow.c			[REMOVED]
./src/H5Fstdio.c		[REMOVED]
./src/H5Fsec2.c			[REMOVED]
./src/H5Fsplit.c		[REMOVED]
./src/H5Fmpio.c			[REMOVED]
./src/H5Ffamily.c		[REMOVED]
./src/H5Fcore.c			[REMOVED]
./src/H5MFpublic.h		[REMOVED]
./src/H5FD.c			[NEW]
./src/H5FDcore.c		[NEW]
./src/H5FDcore.h		[NEW]
./src/H5FDfamily.c		[NEW]
./src/H5FDfamily.h		[NEW]
./src/H5FDmpio.c		[NEW]
./src/H5FDmpio.h		[NEW]
./src/H5FDprivate.h		[NEW]
./src/H5FDpublic.h		[NEW]
./src/H5FDsec2.c		[NEW]
./src/H5FDsec2.h		[NEW]
	Removed/added files for virtual file layer.

./bin/trace
./src/H5.c
	Removed unused public datatypes and added new VFL public
	datatypes.

	Changed an error message.

./config/BlankForm
./config/dec-flags
./config/gnu-flags
./config/hpux10.20
./config/hpux9.03
./config/irix5.x
./config/irix6.x
./config/solaris2.x
./config/unicosmk
	Removed the H5F_OPT_SEEK and H5F_LOW_DFLT constants from the
	configuration since they're no longer applicable. The default
	file driver is always the sec2 driver and it always optimizes
	calls to lseek() or lseek64().

./config/depend.in
	C preprocessor errors generated during automatic dependency
	building are sent to /dev/null to prevent them from appearing
	twice in the make output.

./src/H5AC.c
./src/H5B.c
./src/H5D.c
./src/H5F.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5Oattr.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Oshared.c
./src/H5T.c
./src/H5detect.c
./test/ohdr.c
	Changed H5F_ADDR_UNDEF to HADDR_UNDEF to be more consistent
	with the `haddr_t' datatype which is now a public type.

./src/H5D.c
./src/H5P.c
./src/H5Ppublic.h
./src/H5Tconv.c
./test/cmpd_dset.c
./test/dsets.c
./test/overhead.c
./test/tselect.c
./test/tvltypes.c
	The H5P_DATASET_XFER constant was changed to H5P_DATA_XFER
	because the properties apply to all types of I/O operations,
	not just datasets.

./src/H5B.c
./src/H5Bprivate.h
./src/H5D.c
./src/H5Dpublic.h
./src/H5F.c
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fprivate.h
./src/H5Fpublic.h
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5R.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Spoint.c
./src/H5Sprivate.h
./test/big.c
./test/h5test.c
./test/istore.c
./testpar/t_dset.c
./testpar/t_file.c
./tools/h5debug.c
./tools/h5ls.c
	Modified to work with the virtual file layer by calling H5FD_*
	functions instead of H5F_low_* functions and by passing file
	access and data transfer properties by object ID instead of
	pointer.

	Changed H5D_transfer_t to H5FD_mpio_xfer_t since the
	COLLECTIVE vs. INDEPENDENT transfer mode is specific to the
	MPIO file driver.

	Moved MPIO-specific stuff into the MPIO driver.

./src/H5B.c
./src/H5D.c
./src/H5Fprivate.h
	The H5F_mpio_* private functions were renamed and placed in
	the H5FDmpio driver except those which appeared in H5Smpio.c.

./src/H5E.c
./src/H5Epublic.h
	Added major error number H5E_VFL for virtual file layer
	related errors.

./src/H5F.c
./src/H5Fprivate.h
	Changed the logic that controls whether the boot block is
	written. Instead of assuming that the first call to write the
	boot block is only to allocate space, I've added a function
	argument which makes this explicit.

	Changed the way files are compared so that a driver-defined
	comparison function can be called.  Files which belong to
	different drivers are always considered different.

	Removed H5F_driver_t since file drivers are now identified by
	object ID instead of a special non-user-extendible datatype.

	Removed all the hard-coded low-level file properties which
	have been replaced by the various file drivers.

./src/H5I.c
./src/H5Iprivate.h
	Added the H5I_inc_ref() which was removed a few months ago
	since we finally have a use for it.

./src/H5Ipublic.h
	Added the H5I_VFL object ID type to identify file drivers in
	the virtual file layer.

./src/H5MF.c
./src/H5MFprivate.h
	Moved all the allocation/deallocation code into the virtual
	file layer which allows file drivers to override much of it.

./src/H5P.c
./src/H5Ppublic.h
	Moved file driver-specific code into the various file driver
	files.

	The H5Pcopy() and H5Pclose() functions make calls into the
	virtual file driver to manage the memory for driver-specific
	file access and data transfer properties.

./src/H5private.h
./src/H5public.h
	The `haddr_t' type is now public.

./test/tfile.c
	Added a few more comments.
1999-08-10 15:21:32 -05:00
Robb Matzke
139688863f [svn-r1547] Changes since 19990723
----------------------
NOTE: These bug fixes but have been applied only to the 1.3 branch per
      Albert's request.

./config/gnu-flags	[1.3]
	Added support for gcc-2.95 by adding full optimization and
	debugging flags and applied a patch from Marcus Daniels.

./src/Makefile.in	[1.3]
	Removes the `libhdf5.settings' file for `make clean'.
1999-07-27 15:33:40 -05:00
Quincey Koziol
3dd6511206 [svn-r1543] Added -h scalar0 to production CC flags to produce correct code. 1999-07-23 18:36:05 -05:00
Robb Matzke
6470e417e8 [svn-r1515] Changes since 19990715
----------------------

./Makefile.in		[1.3]
./examples/Makefile.in	[1.3]
./pablo/Makefile.in	[1.3]
./src/Makefile.in	[1.3]
./test/Makefile.in	[1.3]
./testpar/Makefile.in	[1.3]
./tools/Makefile.in	[1.3]
./config/commence.in	[1.3]
./config/conclude.in	[1.3]
./config/depend.in	[1.3]
	Added a `.PATH' target for Irix pmake which is identical to
	the VPATH used by most other `make' programs. Irix 6.5 (or
	6.4?) and later `make' ignores VPATH.

	Started all beginning-of-line comments with `##' instead of
	just `#' because Irix `pmake' barfs on things like the
	following because it sees the `# if' as a directive:

		# make will barf on the following line
		# if running Irix pmake


./config/commence.in	[1.3]
	Added empty definitions for optional `make' macros because
	Irix pmake complains if it sees a macro which has never been
	defined. The main body of the Makefiles can redefine these
	macros to whatever they need.
1999-07-19 14:56:57 -05:00
Robb Matzke
f30fb44939 [svn-r1475] ./config/gnu-flags [1.2, 1.3]
A warning is printed for all versions of EGCS before 2.91.67.
1999-07-13 12:58:46 -05:00
Albert Cheng
95189ab2e3 [svn-r1458] Changed the disable-shared to be default only if not set.
Added cached sizes for the leastN_t and fastN_t types which are not
defined as system types for TFLOP.
1999-07-10 18:15:49 -05:00
Albert Cheng
182cd1a27c [svn-r1448] Added two IBM specific configuration files which are provided by
Richard Hedges of LLNL.
1999-07-08 14:39:19 -05:00
Albert Cheng
aa8fd173a8 [svn-r1372] Set enable-shared to no by default for TFLOPS and IRIX64 systems.
Shared lib and libtool are not working for them yet.
Users can still force enable-shared on by "configure -enable-shared ..."
1999-06-23 18:24:17 -05:00
Robb Matzke
f1a1ae37ff [svn-r1315] Changes since 19990607
----------------------

./configure.in
./configure			[REGENERATED]
./src/libhdf5.settings.in	[NEW]
./config/conclude.in
./INSTALL
./MANIFEST
	A file called `libhdf5.settings' is installed along with the
	libraries and it contains a list of various things that might
	be of interest to someone using the library (such as what
	compiler/options were used and what other libraries might need
	to be linked to satisfy external references).  We can add more
	things as it becomes necessary. Here's a sample...

	SUMMARY OF THE HDF5 CONFIGURATION
	=================================

	HDF5 Version:		hdf5-1.1.106
	Configured on:		Tue Jun  8 11:38:52 EDT 1999
	Configured by:		matzke@llnl.gov at Spizella Software
	Configure mode:		development
	Host system:		i686-pc-linux-gnulibc1
	Byte sex:		little-endian
	Libraries:		static, shared
	Parallel support:	mpicc
	Installation point:	/usr/local
	Compiler:		mpicc (egcs-2.91.66)
	Compiler switches:	-Wall -g
	Extra libraries:	-lmfhdf -ldf -lz -ljpeg -lm
	Archiver:		ar
	Ranlib:			ranlib
	Debugged Packages:	d,e,f,g,hg,i,mm,o,p,s,v,z
	API Tracing:		yes
	File addresses:		large
1999-06-08 11:14:10 -05:00
Albert Cheng
14364b9257 [svn-r1294] Removed the pre-defined macro DOS386. It was used to identify
being in the TFLOPS machine but it is not recognized by the system.
TFLOPS uses __PUMAGON__ to identify itself.
1999-06-02 19:41:37 -05:00
Albert Cheng
b48d0a56ee [svn-r1289] Removed RUNTEST before the /bin/sh because all the systems that is
known so far do not need a "launching command" to run shell script.
(If a future system needs it, maybe we should use a new VARIABLE
called RUNSHELL, default to /bin/sh, to do the launching.)

Then inside the test shell script, it needs to know how to launch
serial or parallel executions.  So, pass the RUNSERIAL and RUNPARALLEL
variables to the /bin/sh command.
1999-05-28 17:07:42 -05:00
Robb Matzke
cc2184b6ef [svn-r1240] Changes since 19990427
----------------------

./tools/h5ls.c
	Added a `--address' (`-a') switch which causes h5ls to display
	file addresses for raw data. For contiguous datasets it's just
	a nice simple number, but for chunked datasets it's a list of
	logical dataset coordinates, file addresses, filter masks, and
	storage sizes.

	Changed `--dump' switch to `--data'.

./src/H5D.c
./src/H5F.c
./src/H5Fprivate.h
	Enhanced the indexed-storage B-tree iterator so it can dump
	raw data addresses (and other info) to the standard error
	stream.

	Added H5Ddebug() so h5ls has a way to dump addresses for
	datasets. I'm not sure what else this API function should do,
	so I think we should discuss it before we document it. So far,
	h5ls is the only thing that uses it, and we can easily change
	that.

./src/H5Tconv.c
./test/dtypes.c
	Finally had a chance to verify Paul's H5T_conv_s_s (general
	string to string conversions) bug fixes and incorporate them
	into H5T_conv_f_f (general floating-point to floating-point
	conversions) and H5T_conv_i_i (general integer to integer
	conversons). Thanks Paul.

./src/H5D.c
./src/H5S.c
./src/H5Sprivate.h
	Added performance timers around data space read and write
	callbacks. They were already there for the gather/scatter
	callbacks.

	The timings for read/write callbacks are displayed along with
	gather/scatter when data space debugging is turned on.

./bin/iostats
	Updated to print totals. Added a `--fast' option that doesn't
	do any output except the totals and is much faster.

./bin/trace
	Changed __unused__ to UNUSED to match source code.

./config/gnu-flags
	Updated error message for pgcc. I've sent bug reports to the
	pgcc people but the new version still has the same bug.

./configure.in
./config/conclude.in
./config/depend.in
	Fixed dependencies for non-GNU makes when run in a directory
	other than the hdf5 source tree.

	Updated GNU `make dep' rules to copy the distributed
	dependencies for non-GNU makes into the source tree when run
	in some other directory.
1999-04-30 10:54:52 -05:00
Robb Matzke
2dc738a321 [svn-r1224] Changes since 19990426
----------------------

./tools/h5tools.c
./tools/h5tools.h
	Finally fixed a long-standing bug that caused core dumps if
	a compound datum rendered to more than some number of
	characters (we kept bumping up the limit at the risk of
	violating stack size limits on some machines). The fix works
	only on systems that have the vsnprintf() function (otherwise
	a 4kB limit is imposed, which if violated probably dumps
	core). If vsnprintf() is present then the library dynamically
	allocates space for the output string.

	Also made it possible to control how compound data is rendered
	across multiple lines of output by allowing the caller to
	specify where optional line-breaks get inserted. The output
	functions split up the value at one or more optional
	line-breaks to prevent it from wrapping around the screen.

	If a datum doesn't fit on the current line but would fit on
	the next line then it is printed on the next line regardless
	of whether optional line-breaks would have prevent wrapping
	around the screen. This makes it easier to find the beginnings
	of compound data values.  This feature is disabled by default
	but can be enabled by the application.

	If a datum doesn't fit on the current line and the previous
	datum also occupied more than one line then we move to the
	next line before printing. This makes it easier to find the
	beginnings of compound data values but prevents the output
	from looking fragmented if there are only a few long values
	among mostly short values.  This feature is disabled by
	default but can be enabled by the application.

	The application can control the printf() formats used for all
	the native data types. The defaults are what the library used
	to use: %g, %ld, %lu, %d, and %u

./tools/h5ls.c
	Compound datatype values can now be split across multiple
	lines of output instead of just wrapping. Also, when lots of
	compound values are too long they all start at the beginning
	of a line. This only required about 10 lines of changes in the
	setup for tools library calls (I didn't modify the h5dump
	program because it uses its own version of the tools library
	that forked off long ago).

	Added code for Win32 which is unable to cast `unsigned long
	long' to `double'. If the dataset size exceeds (2^63)-1 then
	the percent utilization is not displayed (this is easily
	possible with chunked datasets). This is untested yet.

./configure.in
./src/H5config.h.in
./src/H5.c
./src/H5private.h
	Check for vsnprintf() and provide a simple, stupid definition
	if it isn't available. The stupid definition just calls
	vsprintf() and ignores the second argument. This can result in
	buffer overflows in h5ls and h5dump since vsprintf() is an
	unsafe function (and anyone can create an hdf5 file that runs
	an arbitrary command from h5ls and h5dump in that case)!

./config/conclude.in
	Remove more *.o files for `make clean'

./src/H5A.c
./src/H5D.c
./src/H5F.c
./src/H5I.c
./src/H5Iprivate.h
./src/H5P.c
./src/H5R.c
./src/H5RA.c
./src/H5S.c
./src/H5T.c
./src/H5TB.c
	Cleaned up a memory leak during H5_term_library() by allowing
	H5I_clear_group() to skip items that couldn't be freed. This
	allows the item to remain in the group until we can free it
	later.

./src/H5F.c
	The H5F_close_all() function fails if a file cannot be closed.
1999-04-27 09:47:54 -05:00
Robb Matzke
d6823ceb08 [svn-r1217] Changes since 19990426
----------------------

./config/commence.in
./examples/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
	Fixed some dependency problems in Makefiles. If the library
	version is updated then everything gets recompiled.

./src/H5G.c
./src/H5R.c
	Failure return value for object type functions is now
	H5G_UNKNOWN as documented.

./src/H5Shyper.c
./src/H5Spoint.c
	Fixed an unused argument warning.

./tools/h5debug.c
	Fixed a call to H5F_block_read() since the 4th argument is
	different now.

./tools/h5ls.c
	Added a space between the object name and class to make the
	output readable when the object name is longer than 24
	characters.

C
1999-04-26 09:43:53 -05:00
Quincey Koziol
fbd8281631 [svn-r1207] Updated compile options for the Cray T3E 1999-04-23 16:05:19 -05:00
Robb Matzke
d534a4dd0d [svn-r1204] Changes since 19990415
----------------------

./config/depend.in
	Fixed automatic dependencies. We were storing dependencies for
	*.o files instead of *.lo files after shared libraries were
	added.

./config/gnu-flags
./config/linux-gnulibc1
	Moved `-march=pentiumpro -mcpu=pentiumpro -malign-double' from
	the linux file to this file and caused it to depend on the CPU
	name.  This fixes one of Elena's bugs.

./src/H5B.c
./src/H5Bprivate.h
./src/H5D.c
./src/H5Dprivate.h
./src/H5Dpublic.h
./src/H5F.c
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fmpio.c
./src/H5Fprivate.h
./src/H5Fpublic.h
./src/H5Gnode.c
./src/H5P.c
./src/H5RA.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Spoint.c
./src/H5Sprivate.h
./src/H5Tpublic.h
./test/istore.c
	Added an H5Dget_storage_size() function that reports the
	amount of storage allocated for raw data in a dataset.

	Changed H5D_xfer_* to H5F_xfer_* because these properties are
	more general than datasets. This also allows some of the
	lower-level I/O functions to get this information easier.

./src/H5S.c
./src/H5Sall.c
	Added two new functions H5S_all_read() and H5S_all_write()
	which are optimizations that copy data directly between file
	and memory without having to go through the scatter gather
	step.  This knocks quite a bit of time off the I/O and
	reading/writing entire datasets is a fairly common operation.

./tools/h5ls.c
	Reports the logical size of data, the allocated size of data,
	and the percent utilization.

./MANIFEST
	Removed old pablo files, added new files. Snapshots should now
	start to work again.

./src/H5D.c
./src/H5Fmpio.c
	Removed two warnings signed vs. unsigned comparisons and check
	for overflow.
1999-04-23 07:31:21 -05:00
Robb Matzke
43c356f93d [svn-r1184] Changes since 19990402
----------------------

./config/commence.in
./config/conclude.in
./test/Makefile.in
./tools/Makefile.in
	Fixed so private libraries are not installed publicly.

	The installation directories `bin', `include', and `lib' are
	created mode 755.

./src/H5.c
./src/H5A.c
./src/H5F.c
./src/H5Fcore.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fmpio.c
./src/H5Fsec2.c
./src/H5Fstdio.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5Oattr.c
./src/H5Ocomp.c
./src/H5Ocont.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Ofill.c
./src/H5Olayout.c
./src/H5Omtime.c
./src/H5Oname.c
./src/H5Osdspace.c
./src/H5Oshared.c
./src/H5Ostab.c
./src/H5R.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Snone.c
./src/H5Spoint.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Vprivate.h
./src/H5Z.c
./src/H5detect.c
./src/H5private.h
./test/chunk.c
./test/dsets.c
./test/dtypes.c
./test/h5test.c
./test/overhead.c
./test/ragged.c
./test/tattr.c
./tools/h5dump.c
./tools/h5findshd.c
./tools/h5ls.c
	Changed `__unused__' to `UNUSED' to fix a conflict with GNU
	header files.

./src/H5Tpkg.h
./test/h5test.h
	Removed __unused__ from forward function declarations.

./src/H5P.c
	Removed a comment about restrictions for the type conversion
	temporary buffers. Thanks to Quincey, the comment no longer
	applied.

./src/H5T.c
	Relaxed the H5Tpack() a little so it would pack compound data
	structures that had non-transient atomic members.

./tools/h5ls.c
	Added a `-g' (or `--group') flag that causes information to be
	printed about the specified group instead of the group's
	contents. (sort of like Unix's `ls -d'). The `-g' can be used
	in combination with `-r' to print information about the group
	and its contents.
1999-04-15 14:57:50 -05:00
Albert Cheng
6d36b8d9e2 [svn-r1176] Removed the -L./ and -L../ which are meaningless. 1999-04-08 13:46:13 -05:00
Robb Matzke
f003dead4d [svn-r1169] ./configure.in
./configure		[REGENERATED]
./src/H5D.c
./src/H5O.c
	Removed H5AC, H5B, and H5T from the default list of packages
	to debug (because they're pretty expensive debugging), and
	added H5O. Also fixed a bug for undefined variable in H5D when
	H5S debugging is turned on but H5T debugging is turned off.

./config/conclude.in
	Fixed installation of header files for building in a directory
	other than the source directory. This fixes a bug where
	H5config.h wasn't being installed.

./src/H5.c
./src/H5A.c
./src/H5D.c
./src/H5F.c
./src/H5G.c
./src/H5I.c
./src/H5Iprivate.h
./src/H5P.c
./src/H5R.c
./src/H5RA.c
./src/H5S.c
./src/H5T.c
./src/H5TB.c
./src/H5Tprivate.h
./src/H5Z.c
./src/H5detect.c
./src/H5private.h
	Changed the way the library shuts down again. Now it handles
	cycles between packages and isn't so sensitive to dependencies
	between packages. A package might shut down only to be
	restarted to process a request from some other package being
	shut down.  Loops are detected after 100 iteractions and the
	shutdown is aborted with a message on standard error.  This
	also makes it a lot easier to debug.

./src/H5A.c
	Fixed H5A_write() and H5A_read() so they pass a non-null
	background buffer to the conversion functions. This is
	necessary when an attribute has a compound data type.

./src/H5Flow.c
./src/H5Fprivate.h
./src/H5Fsec2.c
	Reindented new Win32 stuff.

./src/H5Odtype.c
	Fixed a bug when enumeration types are used in a compound data
	type. The byte pointer wasn't incremented after the type
	information was written.

./tools/h5ls.c
	Compound data types display their total size because it's not
	always obvious from looking at the members.

	Scalar attributes show their space as `scalar' instead of
	`{}'.

	The index value is not printed for attributes that have only a
	few values. Instead the word `Data:' is printed on the first
	line of attribute data.

	Named types display their data type only if verbose output was
	requested.
1999-03-30 06:38:34 -05:00
Robb Matzke
13c9a30beb [svn-r1154] Changes since 19990322
----------------------

./configure.in
./configure		[REGENERATED]
./config/commence.in
	A few tweaks to the makefile rules for rebuilding makefiles.

./src/H5detect.c
	Fixed a really stupid mistake: resetting the signal handler
	after a longjmp(). This should fix Bob's SIGBUS on Solaris.
1999-03-22 11:21:49 -05:00
Robb Matzke
b93c9e2cf9 [svn-r1151] Changes since 19990318
----------------------

./Makefile.in
./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./config/commence.in
./config/conclude.in
./config/dec-osf4.x
./config/depend.in
./config/freebsd
./config/linux-gnu
./config/linux-gnulibc1
./config/linux-gnulibc2
./config/solaris2.x
./examples/Makefile.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
./tools/testh5dump.sh
	Changes that allow hdf5 to be configured and compiled in a
	directory other than the source directory. This is especially
	useful if you want to concurrently compile with different
	compilers and/or compile flags, or if the hdf5 source is on
	read-only media like a CDROM.  The changes were surprisingly
	easy ;-) Here's what you can do now...

		  $ mkdir /tmp/build1  # or something
		  $ cd /tmp/build1
		  $ /cdrom/hdf5/configure # where ever the source is
		  $ make

	Paul, you'll have to change the testh5toh4 script similar to
	the way I changed testh5dump.sh.  I started working on it but
	then gave up because of a number of problems: (1) I had to
	comment out all the tests that let h5toh4 choose the output
	file name because it always tried to put the output file in
	the same directory as the input file, (2) if path names are
	used during the h4 dump then they interfere with the
	diff. The test works fine when run in the source directory,
	but try this instead:

	    $ gunzip <hdf5-1.1.67.tar.gz |tar xf -
	    $ chmod -R ugo-w hdf5-1.1.67
	    $ mkdir build
	    $ cd build
	    $ ../hdf5-1.1.67/configure
	    $ make check

	Dan, I didn't modify the pablo/Makefile.in because I have no
	way to test it. I think all you need to do is add a couple
	lines before the @COMMENCE@ line and add a couple search
	directories for header files. Anyway, it seems like almost an
	exact duplicate of the src/Makefile.in, so it shouldn't be a
	problem...

./Makefile.in
	Removes a few more temporary files during make clean and
	distclean.

./configure.in
	I fixed the creation of the time-stamp files so that the
	initial make doesn't have to regenerated all the makefiles
	(only GNU make users will see any change).

./src/H5R.c
	Changed a return type from `intn' to `int' for an API
	function.

./src/H5detect.c
	Added the volatile qualifier to a couple more variables.

./tools/h5tools.c
	Fixed a compiler warning about an unused local.

./tools/h5toh4.c
	Initialized `optind' to 1 because it's zero on my system. It
	should always be one on a unix system.

./tools/testh5toh4
	Redirected "broken pipe" messages to /dev/null so outut is
	formatted correctly.
1999-03-19 15:09:50 -05:00
Robb Matzke
826dbc8146 [svn-r1149] ./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./src/H5private.h
	Temporarily commented out the code that tries to link a simple
	MPI-IO application because I'm not sure how to pass $LDFLAGS
	and $LIBS to the compiler.

	Removed the `--enable-parallel=ibm' switch because the library
	we link with is either -lmpcc or -lmpcc_r but not both. The
	only way to tell is to see what compiler was specified (mpcc
	or mpcc_r) but if that compiler is specified then we don't
	need any libraries (the compiler script supplies them). That
	leaves just two choices: the user must use a compiler script:

	    CC=mpcc ./configure

	or the user must state which library is desired:

	    LDFLAGS='-lmpcc' ./configure --enable-parallel

	Checks for <setjmp.h>, longjmp(), and signal(). We don't check
	for setjmp() because it could be a macro (in fact, Posix
	requires it to be a macro) and if longjmp() is present then
	setjmp() is probably present too ;-)

./src/H5detect.c
	The alignment detection loop uses SIGBUS and setjmp/longjmp
	instead of fork/wait in order to get around bugs with forking
	in conjunction with mpich.  This hasn't been tested on the
	SP-2 yet but it does work on the DEC Alpha.

./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
	Changed the order that libraries are linked so -lhdf5 is
	always before $LDFLAGS.
1999-03-18 08:42:52 -05:00
Paul Harten
ed46363fd9 [svn-r1142] Purpose:
Bug fix

Solution:
    Fixed a small typo in config/solaris2.x.

Platform tested:
    Solaris2.5
1999-03-15 11:23:25 -05:00
Robb Matzke
b8ef51ee7a [svn-r1138] Changes since 19990304
----------------------

./config/*-aix4.*	[REMOVED]
./config/*-aix4.x	[NEW]
./config/solaris2.5	[REMOVED]
./config/solaris2.x	[NEW]
./configure.in
./configure		[REGENERATED]
./MANIFEST
	Changed the names of the IBM-SP2 config files by replacing the
	minor version numbers with an `x'.  The solaris config warns
	about old versions of gcc.

	The RUNSERIAL value is set to the empty string by default. The
	config/* file (or user) can override it by setting it to some
	other value.

	The `--enable-parallel' with no flags turns on the
	HAVE_PARALLEL constant in the source code but doesn't add any
	MPI or MPI-IO libraries to the link line.

	If we are compiling for parallel then configure checks that we
	can actually link a very simple program. This has the benefit
	of detecting config errors before we waste time compiling the
	entire library.

	Configure recognizes `mpcc_r' as a parallel compiler.

./src/H5A.c
./src/H5Apublic.c
	Fixed some compiler warnings.  Changed the return type of
	H5Aget_name() from hssize_t to ssize_t because the name can
	never be larger then memory.
1999-03-12 13:35:04 -05:00
Albert Cheng
362894fbb1 [svn-r1127] Removed -64 from default setting. Irix workstations running 32 bit
OS cannot handle the 64 bit instruction sets.  Let the local system
default takes care of preferred machine code.

Tested on both IRIX and IRIX64 platforms.
1999-03-09 17:52:57 -05:00
Albert Cheng
ebb0060a05 [svn-r1122] Fixed a typo. DEBUG_FLAGS should be DEBUG_CFLAGS. 1999-03-09 07:33:06 -05:00
Robb Matzke
96320e69c0 [svn-r1117] Changes since 19990303
----------------------

./configure.in
./configure		[REGENERATED]
	The path for a command is calculated explicitly the hard way
	because `type -path' isn't portable.

./config/freebsd
./config/linux-gnu
./config/linux-gnulibc2
	Changed the way files reference each other.

./config/gnu-flags	[NEW]
./config/dec-flags	[NEW]
	These files figure out what flags to pass to certain compilers
	so we can reuse code in more than one config/* file.  They
	also have better warning messages when old compilers are used.

./config/linux-gnulibc1
./config/dec-osf4.x
	These files use the new *-flags files.


./src/H5D.c
./src/H5Onull.c
./src/H5Tconv.c
./tools/h5ls.c
	Fixed a compiler warning.

./src/H5detect.c
	Added a better comment to the top of the generated file.
1999-03-04 15:22:42 -05:00
Robb Matzke
ea3624e133 [svn-r1115] Changes since 19990302
----------------------

./INSTALL
./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	Improvements for parallel library.  If you have a properly
	working mpicc you should be able to just say:

	    $ CC=mpicc ./configure

	and you will see

	    checking for mpirun... /usr/local/mpi/bin/mpirun
	    checking for parallel support files... skipped
	    checking how to run on one processor...
		     /usr/local/mpi/bin/mpirun -np 1
	    checking how to run in parallel...
		     /usr/local/mpi/bin/mpirun -np $$NPROCS

	To quote from the INSTALL file....

	*** Parallel vs. serial library
	The HDF5 library can be configured to use MPI and MPI-IO for
	parallelizm on a distributed multi-processor system. The easy
	way to do this is to have a properly installed parallel
	compiler (e.g., MPICH's mpicc or IBM's mpcc) and supply that
	executable as the value of the CC environment variable:
	[NOTE: mpcc is not tested yet]

	    $ CC=mpcc ./configure
	    $ CC=/usr/local/mpi/bin/mpicc ./configure

	If no such wrapper script is available then you must specify
	your normal C compiler along with the distribution of
	MPI/MPI-IO which is to be used (values other than `mpich' will
	be added at a later date):

	    $ ./configure --enable-parallel=mpich

	If the MPI/MPI-IO include files and/or libraries cannot be
	found by the compiler then their directories must be given as
	arguments to CPPFLAGS and/or LDFLAGS:

	    $ CPPFLAGS=-I/usr/local/mpi/include \
	      LDFLAGS=-L/usr/local/mpi/lib/LINUX/ch_p4 \
	      ./configure --enable-parallel=mpich

	If a parallel library is being built then configure attempts
	to determine how to run a parallel application on one
	processor and on many processors.  If the compiler is mpicc
	and the user hasn't specified values for RUNSERIAL and
	RUNPARALLEL then configure chooses `mpirun' from the same
	directory as `mpicc':

	    RUNSERIAL:    /usr/local/mpi/bin/mpirun -np 1
	    RUNPARALLEL:  /usr/local/mpi/bin/mpirun -np $${NPROCS:=2}

	The `$${NPROCS:=2}' will be substituted with the value of the
	NPROCS environment variable at the time `make check' is run
	(or the value 2).

./testpar/Makefile.in
	Saying `make check' (or `make test') will run the tests on two
	processors by default.  If you define NPROCS then that many
	processors are used instead:

	    $ NPROCS=4 make check

./configure.in
	Fixed (hopefully) bugs with detecting whether __attribute__
	and __FUNCTION__ are special keywords for the compiler.

./Makefile.in
	Saying `make install' from the top level directory shows
	instructions for using shared libraries.

./config/commence.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
	Moved the @top_srcdir@ into the makefiles because it was
	expanded too early and had the wrong value.

./INSTALL
	Added a warning that if the wrong version of hdf4 tools are
	installed then `make check' will fail in the tools directory.
1999-03-03 18:17:48 -05:00
Robb Matzke
116491f0d6 [svn-r1112] Changes since 19990301
----------------------

./INSTALL
	Reorganized and added some additional examples.

./MANIFEST
./aclocal.m4			[NEW]
./configure.in
./configure			[REGENERATED]
./src/H5config.h.in		[REGENERATED]
./bin/ltconfig			[NEW]
./bin/ltmain.sh			[NEW]
	Added tests to determine how to compile shared libraries and
	how to link programs with them before the libraries are
	installed.  Also how to install and uninstall shared
	libraries. The configure step also prints the names of the
	config files it's trying to load for easier debugging.

./bin/config.guess
./bin/config.sub
	Replaced with a newer version from GNU.  The changes we made
	to that file to report `irix6.x' and `FreeBSD' without version
	numbers have been incorporated into configure.in instead.  In
	the future, do not change these two files (see the top of
	configure.in instead). By the way, this update was required to
	get shared libraries working.

./config/linux			[REMOVED]
./config/linux-gnulibc1		[NEW]
./config/linux-gnu		[NEW]
./config/alpha-dec		[REMOVED]
./config/alpha-dec-osf4.0	[REMOVED]
./config/dec-osf4.x		[NEW]
./config/irix5.3		[REMOVED]
./config/irix5.x		[NEW]
./config/irix64			[REMOVED]
./config/freebsd
	Moved config files around to agree with output from the new
	config.guess.  The linux file was split into gnu (RedHat),
	gnulibc1, and gnulibc2 versions. The alpha-dec file was
	removed (I think it was unused) and the alpha-dec-osf4.0 was
	changed to dec-osf4.x. The irix5.3 file renamed to irix5.x and
	the irix64 file was renamed to irix6.x. The freebsd file was
	changed to point to linux-gnulibc1. These changes were tested
	on:

		Linux 2.0
		Linux 2.1
		FreeBSD 3.2
		Irix 5.3
		Irix64 6.2
		Irix64 6.4
		HP/UX 10.20
		OSF1 4.0

./config/alphaev56-dec-osf4.x
./config/irix64
	Added warnings similar to linux/freebsd about using compilers
	with known bugs.

./config/commence.in
./config/conclude.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
	Added definitions for shared libraries. This has been tested
	on the following systems:

		Linux 2.0
		Linux 2.1
		FreeBSD 3.2
		Irix 5.3
		Irix64 6.2
		Irix64 6.4
		HP/UX 10.20		static only
		OSF1 4.0

	If you want to disable use of shared libraries (you probably
	do for development purposes since it takes a lot longer to
	compile and because you have to run dynamically linked
	programs in a special way if the library hasn't been
	installed) then add `--disable-shared' to the configure
	command line.  This is all documented in the INSTALL file.

./bin/release
	Temprarily commented out the MANIFEST checking when running
	under svf since svf is about to be replaced by a newer
	version.  This change only affects error checking during the
	release process.

./Makefile.dist
./Makefile.in
	Added `make check' which does the same thing as `make _test'
	since the former is endorsed by the GNU coding style and
	people are used to it.  The old `make _test' still works too
	(and so does `make test' if you use GNU make).
1999-03-02 12:15:35 -05:00
Robb Matzke
b3ddd2cc54 [svn-r1110] Changes since 19990226
----------------------

./INSTALL
	Added instructions for using other compilers on Irix platforms.

./configure.in
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./src/H5private.h
	The presence of <sys/sysinfo.h> and <sys/proc.h> is only
	checked on DEC/Alpha because there are too many problems
	including these headers on other systems.

./config/irix6.x
./config/irix64
	Removed `-ansi' and added a comment. Converting an ASCII UTC date
	and time to a time_t value is not defined by ANSI or Posix but
	is available if we don't use `-ansi'.  This allows the dataset
	modification time messages to be read properly by
	H5Gget_objinfo().

./src/H5Tconv.c
	Fixed a compiler warning.

./test/dtypes.c
./test/hyperslab.c
./test/istore.c
	Fixed compiler warnings in printf() statements.
1999-03-01 14:44:32 -05:00
Robb Matzke
912c5a0874 [svn-r1108] Changes since 19990225
----------------------

./INSTALL
	Added warnings and a disclaimer about GNU, DEC, Irix64, and NT
	compilers that generate incorrect machine code.

./configure.in
./src/H5private.h
	Detects and includes <sys/param.h> which is needed on FreeBSD
	before <sys/proc.h> even though we only really using anything
	from <sys/proc.h> on the DEC Alpha.

./config/irix64
	Turned off warnings for duplicate definitions from the linker
	because -lnsl on irix has the same stuff in it as -lc.

./config/irix6.x
	Split up the CC and CFLAGS settings like with irix64 so that
	compilers besides `-n32' can be used.

./bin/snapshot
	The snapshots are tagged with names like hdf5-1_1_52 which is
	similar to the way the releases are tagged (cvs doesn't allow
	dots in tags).

./test/dtypes.c
./src/H5private.h
./src/H5Tconv.c
	Fixed some alignment violations on the DEC when using high
	optimization levels. The DEC incorrectly optimizes certain
	memcpy() and memmove() calls when the source argument is not
	word aligned if the call looks like it's copying an atomic
	data type.

./test/hyperslab
	Worked around code generation bugs in the Irix64 Mongoose 7.00
	compiler by casting some `unsigned long' values to `unsigned'
	in an expression.

./src/H5Ocomp.c
	Fixed a place where %d was used to print a size_t.
1999-02-26 14:58:14 -05:00
Albert Cheng
3eecc727e0 [svn-r1104] Corrected a typo in the "ld warning suppress" which has a peculiar
syntax.
1999-02-25 14:00:21 -05:00
Robb Matzke
17535fbc17 [svn-r1101] Changes since 19990219
----------------------

./config/irix64
	The old (-32) compiler is now supported by setting envrionment
	CC='cc -32'. The -64 compiler is the default or you can set
	CC='cc -64'.

./src/H5A.c
./src/H5D.c
./src/H5F.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5G.c
./src/H5I.c
./src/H5Ocomp.c
./src/H5P.c
./src/H5R.c
./src/H5RA.c
./src/H5T.c
./src/H5Tbit.c
./src/H5Tconv.c
./src/H5Z.c
./src/H5detect.c
./test/big.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/enum.c
./test/mtime.c
./test/ohdr.c
./tools/h5ls.c
	Fixed lots of warnings on Irix64. Mailed a few remaining
	warnings in H5S to Quincey and a few in the dumper to
	Ruey-Hsia.
1999-02-25 10:40:27 -05:00
Albert Cheng
1585545c5a [svn-r1084] Added configuration for platform T3E whose OS is called unicosmk. 1999-02-19 17:41:15 -05:00
Paul Harten
9da0d56695 [svn-r1083] Purpose:
Bug fix

Problem:
    Currently, when --enable_preduction --disable-debug modes are
    selected during configure, the optimization level scheduled is
    -O (-O2).  Unfortunately, this level of optimization relaxes
    too much the alignments necesary for the building, and testing
    of the hdf5 library.

Solution:
    Lower the level of optimiztion to -O1.  This still maintains
    required alignments.

Platform tested:
    Irix6.5(fuga)
1999-02-19 13:03:05 -05:00
Robb Matzke
c22bac0d20 [svn-r1065] Changes since 19990121
----------------------

./configure.in
./acconfig.h
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
./src/H5public.h
./src/H5Omtime.c
	Check for <stddef.h>

	Checks for `__tm_gmtoff' in `struct tm' because old versions
	of GNU libc are different than recent versions. This fixes the
	failing mtime test.

./bin/config.guess
./config/freebsd2.2.7	[REMOVED]
./config/freebsd	[ADDED]
	Changed the name so it works with all versions of FreeBSD.

./src/H5.c
	Moved H5F after H5T and H5G in H5_term_library() to satisfy
	dependencies.

./src/H5G.c
	Fixed a bug that caused H5Gcreate() to fail if the group name
	had trailing slashes.

./src/H5Gpublic.h
	Changed `group_name' to `name' in a prototype.

./src/Makefile.in
	Dynamic library on Linux, but needs for work to be generally
	useful.

./src/H5HG.c
./src/H5HGprivate.h
	Fixed alignment problems when using old GCC compilers (like
	the one shipped with RedHad Linux).

./tools/h5ls.c
	Fixed a bug where the contents of the root group could be
	listed twice if there was a link back to the root
	group. Similarly for groups that are mentioned on the command
	line.

	Fixed a bug where unknown types were printed with a random
	type class number.

./src/H5T.c
./src/H5Tconv.c
./src/H5Tprivate.h
	Fixed O(log N) conversion bugs.
1999-02-15 12:38:04 -05:00
Albert Cheng
a98ac46b86 [svn-r1061] Adjusted for v1.1 new configuration.
Hard coded against intN_t types.  They are not supported
by Intel Red but configure thinks they are by default for
cross-compiler.  (Need a better solution for this.)
1999-02-09 22:20:45 -05:00
Quincey Koziol
b62a541591 [svn-r1057] Updated gcc flags for 2.7.x compilers 1999-02-03 18:26:56 -05:00
Albert Cheng
d6668e2a28 [svn-r1049] Corrected a typo in the definition of $AR. 1999-02-01 22:56:02 -05:00
Albert Cheng
ee2b36ad7b [svn-r1037] All IRIX (old 32bit OS) version 6.x can use the same configuration.
Replaced irix6.2 by irix6.x.
1999-01-28 19:16:36 -05:00
Quincey Koziol
c00d3bcc92 [svn-r1036] Updated compiler flags 1999-01-28 17:00:01 -05:00
Paul Harten
7b9ce8a96c [svn-r1024] Purpose:
Bug fix

Problem:
    When -with-hdf4 option is selected during configure,
    no machine type found for HDF4 header file hdfi.h.

Solution:
    Modify hdf5/config/linux file:
    -D__i386 to be added to CPPFLAGS.

Platform tested:
    linux(penfold)
1999-01-19 10:00:30 -05:00
Robb Matzke
09aaf83332 [svn-r971] Changes since 19981214
----------------------

./INSTALL
	Added warning that enabling debugging code can adversely
	affect performance even when the debugging isn't turned on at
	run-time. Performance testing shows that under certain
	circumstances (like data type conversions of compound types)
	the H5_timer functions, although only a few lines each,
	contribute a fairly large percent to the execution time.

./src/H5T.c
./src/H5Tpkg.h
./src/H5Tpublic.h
	Improved the H5Tunregister() function to make unregistering
	more flexible.  It takes the same arguments as H5Tregister()
	but also accepts wild cards.  All conversion functions that
	match the H5Tunregister() search criteria are removed from the
	global type conversion table.

	The H5Tregister_hard() and H5Tregister_soft() were combined
	into a single function called H5Tregister() which is the
	counterpart to H5Tunregister(). A new `persistence' argument
	was added to differentiate between the two types of conversion
	functions.

	The application is allowed to register a hard conversion
	function for the no-op conversion path although the library
	isn't obligated to call it (it usually does). This is mostly
	for completeness, but the application might use it to help
	determine if the raw data pipeline was able to use the
	optimized path for the case when no type conversion is
	necessary. The library doesn't allow this path to be
	unregistered although the application can redefine it as often
	as it likes.

	Fixed the type conversion tables in preparation for MT-safety
	and to fix previosly-known design bugs wrt. unregistering
	conversion functions or changing the C function associated
	with a conversion path. The MT-safety stuff is documented in a
	separate white paper.

	Increased the conversion function debugging name from 9
	characters to 31 characters so the output can be more
	descriptive.

	Moved conversion path statistics from the H5T_cdata_t member
	into the conversion path itself.  This makes H5T_cdata_t
	contain only application-visible data structures.

./src/H5A.c
./src/H5D.c
./src/H5Ofill.c
./src/H5P.c
./src/H5T.c
	Improved the way type conversion functions are called so the
	caller doesn't have to check for data type debugging and
	increment type conversion timers and statistics.

	Changed check for no-op conversion since it is now
	application-definable and there may even be more than one
	definition at a time in a multi-threaded application (one
	thread might be using the no-op conversion path when some
	other thread changes its definition -- the first thread still
	sees the original defintion until it's done with the
	operation).

./doc/html/Datatypes.html
	Updated the user guide to reflect the changes to data type
	conversion registration functions.

./bin/trace
./src/H5.c
	Added tracing support for the new H5T_pers_t data type.

./test/dtypes.c
	Added printf to display alignment value if non-aligned data
	types are being tested.

./test/h5test.c
	Modified the H5Tunregister() calls to use the new
	arguments. All 94 of those calls can be replaced by a single
	call to the new H5Tunregister() function.

./src/H5.c
	Added HAVE_GETTIMEOFDAY around an auto variable and
	initialized the elapsed time to zero when gettimeofday() is
	not available.

./src/H5F.c
./src/H5Fprivate.h
./src/H5P.c
	Added an H5*_init() functions which do the same thing as
	H5*_init_interface() but can be called from other packages and
	don't do anything if the interface is already initialized.
	This fixes a couple memory leaks in applications that
	repeatedly close and open the library with H5close().

./src/H5Tconv.c
	Optimized some data alignment code in the hardware conversion
	functions.

	Hardware conversions accumulate statistics about source and
	destination data alignment and print that information when the
	conversion function is unregistered (usually when the
	application exits) if data type debugging is compiled into the
	library and enabled at run-time.

	The conversion caching was cleaned up for the compound data
	type conversion function. It now caches conversion paths in a
	manner that will be MT-safe and is much simpler than the old
	method. Also cleaned up some array index maps.

./src/H5detect.c
	Fixd mispelling of alingemnt.

./src/H5private.h
	Changed `TRUE' to `1' in assignment to interface_initialize_g
	in FUNC_ENTER macro definition.

./tools/testh5dump.sh
	Completely rewritten to make it shorter, better documented,
	and conforming to most of the other test outputs.

	The comparison of the actual output with the expected output
	is insensitive to differences in white space.  The test now
	passes for the first time on Linux where the output width
	wasn't as expected but the output was otherwise correct.

./tools/testfiles/tall-1.ddl
./tools/testfiles/tall-2.ddl
./tools/testfiles/tall-3.ddl
./tools/testfiles/tattr-1.ddl
./tools/testfiles/tattr-2.ddl
./tools/testfiles/tattr-3.ddl
./tools/testfiles/tattr-4.ddl
./tools/testfiles/tcomp-1.ddl
./tools/testfiles/tcomp-2.ddl
./tools/testfiles/tcomp-3.ddl
./tools/testfiles/tcomp-4.ddl
./tools/testfiles/tdset-1.ddl
./tools/testfiles/tdset-2.ddl
./tools/testfiles/tdset-3.ddl
./tools/testfiles/tdset-4.ddl
./tools/testfiles/tgroup-1.ddl
./tools/testfiles/tgroup-2.ddl
./tools/testfiles/tgroup-3.ddl
./tools/testfiles/tlink-1.ddl
./tools/testfiles/tlink-2.ddl
./tools/testfiles/tlink-3.ddl
./tools/testfiles/tlink-4.ddl
./tools/testfiles/tlink-5.ddl
./tools/testfiles/tslink-1.ddl
./tools/testfiles/tslink-2.ddl
	Changed `../h5dump' to just `h5dump'.

./config/alpha-dec-osf4.0
	Added more warning and optimization switches to the native
	compiler.
1998-12-17 14:35:20 -05:00
Robb Matzke
68bff3d352 [svn-r928] Changes since 19981118
----------------------

./src/H5.c
./src/H5Smpio.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpublic.h
./src/H5detect.c
./src/H5private.h
./src/H5public.h
./test/big.c
	The `long long' type isn't quite as prevalent as we had hoped;
	there is at least one system that defines `__int64' but not
	`long long'.  Therefore, I've temporarily changed all
	occurrences of `long long' to `long_long' and then #define
	that in H5private.h based on the existence of `long long' or
	`__int64'. This gets rid of some #ifdef's in other parts of the code.
	The semantics of the hdf5 types are:

	   *int8_t	 Exactly one byte
	   *int16_t	 At least two bytes. We favor 32-bit integers over
			 16-bit integers if the 16-bit integer is 4-bytes wide
			 (Cray)
	   *int32_t	 At least four bytes.
	   *int64_t	 At least eight bytes
	   long_long	 The widest integral integer type

	The H5Smpio.c contains debugging code which is non-portable.

./tools/h5ls.c
	Changed the order native types are detected so we favor the name `int'
	over `short' or `long' if two of them are the same.

./config/conclude.in
	Added a rule to make test programs depend on the hdf5 library. This
	fixes a minor bug where changing H5detect.c and then running `make
	test' caused H5Tinit.c to not be recompiled and therefore the test
	files are not relinked.
1998-11-19 12:36:27 -05:00
Robb Matzke
df77c715cc [svn-r915] Changed typo cc' to gcc' 1998-11-16 10:44:22 -05:00
Robb Matzke
841e168a04 [svn-r914] Changes since 19981113
----------------------

./config/conclude.in
./test/Makefile.in
./tools/Makefile.in
	The Makefile $TESTS variable has finally been split into
	$TEST_PROGS and $TEST_SCRIPTS with the latter being the names
	of shell scripts that need to be run with `/bin/sh'.  Now we
	don't have to copy each shell script before we run it. NOTE:
	THIS CHANGE DOES NOT AFFECT THE PABLO MAKEFILE SINCE THAT FILE
	IS A COPY OF A PREVIOUSLY GENERATED MAKEFILE.

./src/Makefile.in
	Added H5Snone.c to the source list.

./src/H5G.c
	Plugged a memory leak by emptying the object type "isa" table
	when the library is closed.

./src/H5Tconv.c
./src/H5Tpkg.h
	Added 48 new type functions to take advantage of hardware for
	integer type conversions.  These functions are not registered
	in the conversion table yet because I haven't fully tested
	them.

./src/H5Tpkg.h
	Removed __unused__ qualifiers from prototypes.
1998-11-16 10:29:54 -05:00
Robb Matzke
071aa057aa [svn-r907] Changes since 19981111
----------------------

./INSTALL
	Added instructions about specifying a path for GNU zlib and
	HDF4 headers and library.

	Added comments for each of the tool names.  Added h5toh4 as a
	tool name.

./configure.in
./conigure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	The config/* scripts get invoked with $CC_BASENAME set the
	base name of the compiler in order to make it easier to handle
	setting compiler flags for different compilers in a big case
	statement.  For instance, if $CC has the value

	    /usr/local/mpi/bin/mpicc -ansi -64

	then $CC_BASENAME will be `mpicc'.  The $CC_BASENAME is not
	set if $CC is not set.

	Fixed alignment in `configure --help'.

	An include and/or library path can be specified for GNU zlib
	if configure can't find it in normal places.  The "normal"
	means wherever your compiler normally searches, including
	search paths you've added through environment variables like
	CPPFLAGS and LDFLAGS.  The INSTALL file has instructions.

	The `-ljpeg' library is detected.

	If `ssize_t' is not found then a #define is added to
	H5config.h similar to what we already do for `size_t'.

	We detect the hdf5 header file `mfhdf.h' and libraries
	`-lmfhdf' and `-ldf' and if found define the H5TOH4 and
	TESTH5TOH4 Makefile variables.  The user can specify an
	include and/or library path. The INSTALL file has
	instructions.

	The `RUNTEST' variable has been split into `RUNSERIAL' and
	`RUNPARALLEL' because these are different commands.  The
	makefile still uses `RUNTEST', which defaults to the RUNSERIAL
	value.  The new testpar/Makefile.in sets RUNTEST to the
	RUNPARALLEL value. The default RUNSERIAL value is empty and
	the default RUNPARALLEL value is `mpirun -np 2'.  These can
	both be overridden in the config/* files.  To make the value
	the empty string set it like `RUNPARALLEL=none' in the
	config/* file.

	The new testpar/Makefile is generated from testpar/Makefile.in

./config/commence.in
	Added the RUNSERIAL and RUNPARALLEL makefile definitions.

./src/Makefile.in
	The `H5detect' program is run with RUNSERIAL, which is empty
	on all platforms except intel-osf1 (ASCI/Red)

./config/conclude.in
	Removed the `.c.a:' implicit rule -- we don't use it any more.

./config/BlankForm
./config/alpha-dec
./config/alpha-dec-osf4.0
./config/freebsd2.2.7
./config/hpux10.20
./config/hpux9.03
./config/intel-osf1
./config/irix5.3
./config/irix6.2
./config/irix64
./config/linux
./config/powerpc-ibm-aix4.2.1.0
./config/rs6000-ibm-aix4.1.4.0
./config/solaris2.5
	All of these files have been updated to hande multiple
	compilers. Most of them assume `cc' if CC is not set. The
	documentation in `BlankForm' has been updated and
	documentation in the other files refer to `BlankForm'.

	The intel-osf1 uses LDFLAGS instead of LIBS to specify the extra
	library search paths.

./examples/Makefile.in
./test/Makefile.in
./tools/Makefile.in
	Simplified by grouping some dependency information together
	more succinctly.

	The tools Makefile.in has been modified to work with the
	`h5toh4' and `testh5toh4' programs.  Until Paul checks these
	in you may have problems compiling.  If so, just create files
	h5toh4.c and testh5toh4.c that contain:

	    #include <stdio.h>
	    int main(int argc, char *argv[]) {
	        fprintf(stderr, "%s: not implemented\n", argv[0]);
		return 1;
	    }

./src/H5public.h
	Removed definition for `ssize_t' since this is now handled by
	configure in H5config.h with a #define.


./MANIFEST
./testpar/Makefile.in	[NEW]
	Added a makefile for parallel tests.  As soon as we get this
	working properly we can remove the other four makefiles in
	that directory and maintain just one.
1998-11-13 10:06:06 -05:00
Quincey Koziol
e7f7a9ff2f [svn-r903] Switched default compiler to be native compiler instead of gcc 1998-11-12 19:26:49 -05:00
Robb Matzke
ccf09fae58 [svn-r879] Changes since 19981105
----------------------

./configure.in
./acconfig.h
./configure		[REGENERATED]
./src/H5config.h.in	[REGENERATED]
	Added checks for functions, structs, constants, and header
	files used in h5ls.c to determine the output width with
	various Windows compilers and Unix variants.

	Added check for <sys/stat.h> and defined
	HAVE_SYS_STAT_H. Included <sys/stat.h> in H5private.h outside
	the Posix.1 #include's section.

./src/H5RA.c
	Less aggressive about failing -- rather returns false, which
	allows type detection to continue.

./src/h5ls.c
	Data types are displayed for datasets and named data types when
	`-v' or `--verbose' is specified on the command-line.  The
	algorithm is a little different than the dumper because we're
	trying to be human-friendly, not necessarily machine-friendly.

	   * Any data type which matches a native C type gets printed
	     something like `native double'.

	   * A floating point type that matches one of the IEEE standard
	     types but not one of the native types gets printed like `IEEE
	     64-bit big-endian float'.

	   * Other floating point values have information about sign bit
	     location; exponent size, location, and bias; and significand
	     size, location, and normalization.

	   * Padding and offsets are displayed for types that have
	     padding (precision != size), including internal padding for
	     some floating point data types.

	   * Non-native integer types are displayed like `32-bit
	     little-endian unsigned integer'.

	   * Compound data types have each member displayed including the
	     member name, byte offset within the struct, dimensions, index
	     permutation, and data type.

	   * String types are displayed like `256-byte null-terminated
	     ASCII string'.

	   * References are displayed like `8-byte unknown reference'
	     until the reference interface stabilizes a little.

	   * All other types including types not yet defined will be
	     printed like `4-byte class-9 unknown'.

	The dimensionality of scalar datasets is printed like `{SCALAR}'
	instead of just `{}'.

	If external raw files are used to store a dataset then the offsets,
	sizes, and file names of each are printed if `-v' or `--verbose'
	was given on the command-line.

	If an object is found and h5ls can't determine the object type then
	it still tries to print the number of hard links, the OID, and any
	comment that might be present if `-v' or `--verbose' was specified.

	If the `-d' or `--dump' switch is turned on then ragged arrays will
	report that the data can only be dumped by dumping the component
	datasets explicitly.  I'm not planning to implement this since
	we're going to eventually change the whole way ragged arrays are
	stored.

	Compound data values do not have the component names displayed by
	default when `-v' or `--verbose' is turned on.  Instead, the names
	can be displayed with `-l' or `--label'.

	The output width is determined by the first rule that applies:

	   * If the `-wN', `-w N' or `--width=N' switch appeared on
	     the command line then use N for the output width.

	   * Query the OS for the tty width in a highly unportable way
	     borrowed from GNU `less' depending on what functions and
	     data structures were found during configuration (if any):
	     _getvideoconfig(), gettextinfo(), _srcsize(), ioctl(),
	     GetConsoleScreenBufferInfo(), struct videoconfig, struct
	     text_info, the TIOCGWINSZ ioctl, the TIOCGETD ioctl.

	   * If the `COLUMNS' environment variable is set then use
	     its value.

	   * Use the value 80.

	Just for kicks, run Mark and Jim's test_vbt and then say `h5ls -dlsv
	test.vbt'.  You can also try it on the various *.h5 files in the
	test/example directories.

./config/linux
	Removed turning on parallel by default on Robb's macine.
1998-11-06 13:00:22 -05:00
Albert Cheng
ec2a200ee0 [svn-r845] Set it to use vendor provided cc compiler.
Updated developer version too.
1998-10-30 09:08:17 -05:00
Quincey Koziol
b506e17d08 [svn-r815] Changed default compilation options for HPUX 9.x 1998-10-28 13:50:46 -05:00
Albert Cheng
52305e0fe6 [svn-r812] Moved -fullwarn flag to be used for debug mode only. 1998-10-27 18:54:01 -05:00
Albert Cheng
cd6234d0a0 [svn-r801] Added compiler options to suppress some warning messages from
the compiler and loader.
1998-10-26 17:55:45 -05:00
Albert Cheng
bedcfc85bd [svn-r798] Suppress the warning that a certain library is not used during
the loading.  It would be hard to customerize library list for
individual loading.
1998-10-26 17:28:48 -05:00
Quincey Koziol
274a88f52c [svn-r722] Updated FreeBSD config file for new version of OS on hawkwind 1998-09-25 16:54:36 -05:00
Robb Matzke
6d9af58391 [svn-r714] Changes since 19980911
----------------------

This checkin is to fix a couple bugs for Jim Reus.  Some features are
not fully implemented but it shouldn't break anything.

./config/conclude.in
./test/Makefile.in
	`make clean' removes object files from the test directory as
	well as a couple more *.h5 temp files.

./config/hpux9.03		[NEW]
	New config file for HP/UX 9.03

./src/H5B.c
./src/H5Bprivate.h
./src/H5Fistore.c
./src/H5G.c
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5Gprivate.h
./src/H5Gstab.c
	Not-yet-complete version of object removal.

./src/H5Fistore.c
./src/H5Fprivate.h
	Experimental optimizations, disabled by default.

./src/H5Fprivate.h
	Default low-level driver was changed to H5F_LOW_SEC instead of
	H5F_LOW_STDIO because the sec2 driver is much easier to debug.

./src/H5Fsplit.c
./src/H5G.c
./src/H5Z.c
	Changed a couple return statements to HRETURN.

./src/H5Odtype.c
	Removed a check for nested compound data types from back when
	they weren't implemented that raised an error.

./tools/h5tools.c
	Increased temp buffer sizes and added a check for buffer
	overflow so we fail an assertion (hopefully).  This really
	needs to be fixed sometime.

	Added support for printing H5T_STRING data types.
1998-09-22 10:27:26 -05:00
Quincey Koziol
7b18991338 [svn-r711] Updated flags for better production compiling 1998-09-21 18:41:45 -05:00
Robb Matzke
f6e70a6142 [svn-r659] Fixed a parallel build problem; make -j should work again now. 1998-09-03 09:59:27 -05:00
Robb Matzke
2ab2e14bb5 [svn-r635] Changes since 19980831
----------------------

./Makefile.in
	Running `make distclean' will not fail if one of the
	subdirectories has already been cleaned.

./config/BlankForm
./config/irix5.3
	Cleaned it up more.  Added better support/documentation for
	systems that have more than one compiler.

./config/alpha-dec-osf4.0	[NEW]
	Added a new config file as a result of testing on Jim Reus's
	machine.

./test/chunk.c
	Scaled down the testing range so we can actually run it
	interactively.

./tools/h5import.c
	Included <unistd.h> to get rid of warning for close().

./src/H5detect.c
	Seg-faults on Linux for some reason when NDEBUG is defined, so
	I just undef it at the top of the source.

./test/big.c
	Added a fflush().

./tools/h5ls.c
	The `-d' flag now works even when `-v' isn't specified.

./examples/h5_chunk_read.c
./examples/h5_compound.c
./examples/h5_extend_write.c
./examples/h5_group.c
./examples/h5_read.c
./examples/h5_write.c
	Indented according to hdf5 standards.

	Fixed compiler warnings
1998-08-31 14:21:23 -05:00
Albert Cheng
a7e57b2779 [svn-r593] Added couple banner lines around the "Testing ...." message and
also a trailing blank line to make it easier to identify the
output of each test program.
1998-08-14 14:39:41 -05:00
Robert Kim Yates
1181d87cbe [svn-r590] Cache numeric type sizes and C std headers. 1998-08-13 15:48:57 -05:00
Robb Matzke
acd04a1aa6 [svn-r579] Changes since 19980806
----------------------

./config/solaris2.5
	Hopefully set up now so it honors the CC and CFLAGS variables
	and understands solaris cc flags.

./test/big.c
	Checks to see if creating lots of large sparse files exceeds
	the user disk quota and skips the test.  It also checks that
	we can actually open ~64 files at once.

./doc/html/Files.html
./src/H5A.c
./src/H5Aprivate.h
./src/H5F.c
./src/H5Fpublic.h
	Added the H5Fflush() function which takes any object as an
	argument as long as the object is in some way associated with
	a file.  This required an H5A_entof()

./src/H5.c
./src/H5Flow.c
	The `%a' format of HDfprintf() now allows a field width and
	justification flag etc, like the other formats.  The old
	H5F_addr_print() was recoded to call HDfprintf() instead of
	vice versa.
1998-08-06 16:32:33 -05:00