Commit Graph

17 Commits

Author SHA1 Message Date
Mike McGreevy
7ec079a515 [svn-r17616] Purpose:
CFLAGS overhaul

Description:

    Modified the way configure handles CFLAGS.

    (note: all changes also apply to FCFLAGS, CXXFLAGS, CPPFLAGS, and LDFLAGS).

    1. The configure process will now always preserve a user's CFLAGS
    environment variable setup. Any additional flags necessary for compilation
    added at configure time will be passed into the Makefiles as AM_CFLAGS,
    which is an automake construct to be used in addition to CFLAGS.

    This will allow a user to have the final say, as CFLAGS will always appear
    later in the compile line than AM_CFLAGS. Additionally, setting CFLAGS
    during make will no longer completely erase all flags set by configure,
    since they're maintained in AM_CFLAGS.

    2. Additionally, where possible, flags previously being assigned directly
    into CFLAGS (and thus propagating into h5cc) have now been redirected into
    H5_CFLAGS, so they're used ONLY for compiling hdf5, and not embedded into
    the h5cc wrapper script as well.

    *Note that H5_CFLAGS ultimately is assigned into AM_CFLAGS for use in the
    Makefiles. Complete description of changes and build process will be
    included in a Configure Document that Elena and I are working on.

    3. Removed unsupported config files. This includes:

       config/dec-osf*
       config/hpux11.00
       config/irix5.x
       config/powerpc-ibm-aix4.x
       config/rs6000-ibm-aix5.x
       config/unicos*

     4. Modified configure summary to display additional values. Specifically,
     appropriate AM_* variables are being shown, as well as H5_FCFLAGS and
     H5_CXXFLAGS, which were for some reason not already present.

Tested:

    - H5committest
    - Tested on all THG / NCSA machines, using several combinations of the more
      prominent configure options (c++, fortran, szip, threadsafe, parallel,
      et cetera). (Thanks to Quincey for rysnc testing setup!)
    - With regards to new automated testing, anything *necessary* for
      compilation will be caught by the daily tests as it stands now. (i.e.,
      if LDFLAGS is not properly set when szip is used, linking will fail).
      Additionally, with regards to which flags get into h5cc, if any
      *necessary* flags have been improperly removed, then daily tests should
      fail during make installcheck. Additional machine-specific desired
      behaviors and/or checks may have to be set up separately within the
      daily tests, so this is something to work on.
2009-10-08 10:17:30 -05:00
Mike McGreevy
6a00b1b6ff [svn-r17228] Purpose:
Fix BZ #1583

Description:

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

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

Tested:

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

    Also: ran full tests with make check on jam and smirom for good measure.
2009-07-23 15:04:18 -05:00
Albert Cheng
a7cac4a194 [svn-r13264] Updated Makefile.am with new THG copyright notice.
Ran reconfigure to generate the Makefile.in files.
2007-02-07 17:28:58 -05:00
Quincey Koziol
7be3afb278 [svn-r12440] Purpose:
Code cleanup

Description:
    Trim trailing whitespace in Makefile.am and C/C++ source files to make
diffing changes easier.

Platforms tested:
    None necessary, whitespace only change
2006-06-27 09:45:06 -05:00
James Laird
64b5d95251 [svn-r12431] Purpose:
Configuration feature

Description:
'make install' now tests both static and shared libraries if both are installed.

Solution:
Previously, shared libraries were only tested when static libraries were not installed.
Also cleaned up line in commence.am that was including HL library in all Makefiles.

Platforms tested:
mir (Makefile change only)
2006-06-21 18:15:08 -05:00
Pedro Vicente Nunes
50c9a23725 [svn-r12297] Purpose:
new feature

Description:
added support for the printout of dataset region references differences
added a new test for this
merged the h5diff generator of test files into a single file

Solution:

Platforms tested:
linux 32, 64
solaris

Misc. update:
2006-04-25 13:19:40 -05:00
Pedro Vicente Nunes
bc66efc788 [svn-r12229] Purpose:
new feature

Description:
1) separated the HL library into "public" and "private" header files, with the same caracteristics as the basic library
2) added the public headers to hdf5.h (with a conditional include macro, defined in configure.in)
3) added the path to HL in all Makefile.am 's , because of the inclusion in hdf5.h

Solution:

Platforms tested:
linux 32, 64
AIX
solaris
with fortran and c++

(one packet table example fails)

Misc. update:
2006-04-12 16:21:38 -05:00
James Laird
7a4780e0de [svn-r11792] Purpose:
Makefile fix

Description:
The h5diff parallel test script depends on the serial test script.
Added this dependency.

Solution:
Used SCRIPT_DEPEND variable.  Also added ph5diff (when it is compiled).

Platforms tested:
mir
2005-12-13 16:55:57 -05:00
James Laird
66af6dce17 [svn-r11319] Purpose:
Bug fixes

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

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

Platforms tested:
heping, mir, modi4, sol

Misc. update:
2005-08-30 18:42:39 -05:00
James Laird
e75a185eca [svn-r11185] Purpose:
Makefile feature

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

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

Platforms tested:
mir, heping, modi4 (serial and parallel)
2005-08-02 12:59:03 -05:00
James Laird
43f091f462 [svn-r11008] Purpose:
Feature: tests now use parallel make and only run once

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

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

Platforms tested:
mir, eirene, sleipnir, pommier, copper, modi4 (some errors occurred, probably
due to the test being run before updating hdf5.  Will re-run tests after
checkin.)
2005-06-30 18:35:32 -05:00
Albert Cheng
1567902262 [svn-r10850] Purpose:
Improvement.

Description:
assign testph5diff.sh to the Parallel test scripts so that
it will be tested for the check-p target.

Platforms tested:
heping pp.

Misc. update:
2005-06-02 22:46:44 -05:00
Quincey Koziol
639e5908b3 [svn-r10630] Purpose:
Cleanup

Description:
    Add some new test files to the 'distclean' target.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-19 09:40:12 -05:00
Albert Cheng
489f234316 [svn-r10017] Purpose:
bug fix/new feature.

Description:
(committing changes made by Leon.)
ph5diff now is a real program by itself.  It has its
own main (ph5diff_main.c).
Codes common to h5diff and ph5diff are in h5diff_common.c.

Removed the hack that hide failures from testh5diff.sh.

Platforms tested:
heping(serial, pp), sol (pp), copper(pp).

Misc. update:
2005-02-16 15:20:40 -05:00
James Laird
b96f342722 [svn-r9993] Purpose:
Bug fix

Description:
Arabica exhibited strange errors when linker found wrong versions of
header files.  This happened because include directories were
given to linker in the wrong order.

Solution:
Move include directories from AM_CFLAGS variable to INCLUDES
variable to put them before CPPFLAGS variable.  Trust me, it works.
This bug may also have contributed to strange errors on other platforms
(kelgia?).

Platforms tested:
copper, sleipnir, arabica.
	(h5dump broke while building on arabica, but this happened in
	a clean checkout, too).
2005-02-11 16:32:22 -05:00
Albert Cheng
5186398930 [svn-r9929] Purpose:
Features

Description:
Added the option to build ph5diff and run testphdf5.sh when
parallel mode is enabled.

Platforms tested:
tested in heping, both serial and parallel.

Misc. update:
2005-02-03 16:03:24 -05:00
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