1
1
Граф коммитов

255 Коммитов

Автор SHA1 Сообщение Дата
Brian Barrett
79a1093fcc * add builddir/include to the list of -Is so that ompi_config.h can be
found when VPATH building.  Thanks to George for catching this

This commit was SVN r6402.
2005-07-08 21:05:18 +00:00
Brian Barrett
48cbb249ab * Fix error with the use of expr. On George's suggestion, don't use expr for
the comparison  -- instead, use test -lt

This commit was SVN r6356.
2005-07-06 13:18:44 +00:00
Jeff Squyres
ba99409628 Major simplifications to component versioning:
- After long discussions and ruminations on how we run components in
  LAM/MPI, made the decision that, by default, all components included
  in Open MPI will use the version number of their parent project
  (i.e., OMPI or ORTE).  They are certaint free to use a different
  number, but this simplification makes the common cases easy:
  - components are only released when the parent project is released
  - it is easy (trivial?) to distinguish which version component goes
    with with version of the parent project
- removed all autogen/configure code for templating the version .h
  file in components
- made all ORTE components use ORTE_*_VERSION for version numbers
- made all OMPI components use OMPI_*_VERSION for version numbers
- removed all VERSION files from components
- configure now displays OPAL, ORTE, and OMPI version numbers
- ditto for ompi_info
- right now, faking it -- OPAL and ORTE and OMPI will always have the
  same version number (i.e., they all come from the same top-level
  VERSION file).  But this paves the way for the Great Configure
  Reorganization, where, among other things, each project will have
  its own version number.

So all in all, we went from a boatload of version numbers to
[effectively] three.  That's pretty good.  :-)

This commit was SVN r6344.
2005-07-04 20:12:36 +00:00
Brian Barrett
b1f8e229f5 * enable f77_get_fortran_handle_max to be cross compiled
This commit was SVN r6343.
2005-07-04 20:00:54 +00:00
Brian Barrett
f654a65612 * patch to the C alignment check to allow it to cross compile
This commit was SVN r6341.
2005-07-04 17:34:24 +00:00
Brian Barrett
057919616e * fix problem were frameworks wouldn't be found if doing a VPATH build
This commit was SVN r6339.
2005-07-04 16:41:45 +00:00
Brian Barrett
bdd129b911 * want top_ompi_*, not top_*
This commit was SVN r6313.
2005-07-03 03:42:30 +00:00
Brian Barrett
8077da277b * move ompi_rb_tree from opal to ompi since it's only used in ompi, and should
have the ompi_free_list instead of the opal_free_list
* Change orte to use opal_free_list instead of ompi_free_list

This commit was SVN r6307.
2005-07-02 16:46:27 +00:00
Brian Barrett
a4468e60c2 * change src/ to opal/ in asm paths
This commit was SVN r6285.
2005-07-02 14:57:46 +00:00
Brian Barrett
0c16b5419e * first cut at autogen.sh / configure for new directory structure
* fix some broken makefile.ams

This commit was SVN r6277.
2005-07-02 14:29:45 +00:00
Galen Shipman
2e9bbda826 Intial checkin of bmi to btl renaming. This breaks the build but is necessary
so that I can next rename all the files under mca/btl using "svn mv" which is
not possible until after the initial "svn mv bmi btl" is checked in. 

This commit was SVN r6220.
2005-06-30 02:02:57 +00:00
Brian Barrett
7067f4753f A bunch of fixes from trying to get running on Solaris and Linux PPC64
* If we are on solaris, don't use the system qsort(), as it appears to be 
  broken in 64 bit mode on Solaris 8 (there are bugs about this in 
  SunSolve).  Instead, use ompi_qsort(), which is taken from FreeBSD.
  A #define in ompi_config_bottom.h makes this invisible to most of the
  OMPI source tree.
* Fix memory badness in ompi_progress_register where we were reallocing the 
  array to be number of elements long instead of number of elements * 
  sizeof(element).  Found while using bcheck to track down our problems in
  64 bit on big endian machines.
* The debugging output code in session_dir.c could pass NULL as a value for a %s,
  which will turn into "(null)" automagically on glibc, but causes segfaults for
  older libcs (like those on Solaris).  Check for this case in session_dir.c and
  don't pass NULL as a %s value into ompi_output().
* Fix missing header file in convertor.c

This commit was SVN r6186.
2005-06-26 23:11:37 +00:00
Brian Barrett
35375f0653 * Fix bug in symbol generation code for default.conf where we weren't prefixing
function names with the GSYM (like we should be)
* Add support for PPC64/Linux in atomics

This should go to the beta branch.

This commit was SVN r6163.
2005-06-24 16:16:17 +00:00
Jeff Squyres
fdef4765cf Brought over from the beta branch -- improvements to the dist system
to get the right version number.

This commit was SVN r6131.
2005-06-21 21:48:50 +00:00
Jeff Squyres
c6f812ec7f Changes from Craig Rasmussen:
I'm contributing patches for configure.ac and f90_check_type.m4.
The problem was that f90_check_type returned an exit code
and not all compilers actually do this.  The fix tries to compile the
type and fails if it can't.  The problem is that some compilers will
happily return a default kind if the particular kind is not supported.
So the real test is whether the size of the datatype is as expected.

This commit was SVN r6101.
2005-06-20 18:19:23 +00:00
Jeff Squyres
d78ecb98d8 - Make ompi_info show reasonable help messages
- Take Ben Allan's suggestion to have ompi_info show the absolute path
  name of the compilers that were used to compile OMPI

This commit was SVN r6075.
2005-06-17 01:06:36 +00:00
Jeff Squyres
19b4479a0a Patch for systems with broken Fortran compilers (e.g., OS X Tiger
[10.4] with gfortran 4.0) who need to be able to add flags to compile
simple Fortran executables that use libc routines.

Notably, for Tiger with gfortran 4.0 installed, you'll need to:

    ./configure F77=gfortran FC=gfortran LIBS=-lSystemStubs

This commit was SVN r5909.
2005-06-01 10:53:44 +00:00
Tim Woodall
37b43eaccf small checkin :-)
- remove any ptl dependancy from mpi/pml interface
- beginings of a new pml
- new Bit Mover Interface (BMI) framework

This commit was SVN r5834.
2005-05-23 22:06:50 +00:00
Jeff Squyres
131d49152f Need to prefix the svn version with "r" so that dist tarballs are made
correctly

This commit was SVN r5813.
2005-05-23 12:36:09 +00:00
Jeff Squyres
f28095e632 Bunches of fixes for Fortran support:
- Fully support REAL*N, INTEGER*N, and COMPLEX*N in the MPI_Op
  reduction operations.
- Update ddt to fully support these types as well, to include using
  the results of sizes and alignments determined by configure
- Discover the goodness of m4 and consolidate a LOT of configure code
  (i.e., remove a lot of essentially duplicated code and
  m4-subroutine-ize it).  The big kicker was figuring out how to
  parameterize AC_DEFINE_UNQUOTED, which you can do if you use m4
  properly.
- If we don't support a given INTEGER*N, REAL*N, or COMPLEX*N, don't
  error.  Just set the right flags so that we don't support them in
  the MPI layer.

This commit was SVN r5788.
2005-05-19 23:56:02 +00:00
Jeff Squyres
08082be721 Silly mistake (how on earth did it live this long?): adding -DNDEBUG
to CXXFLAGS should use $CXXFLAGS, not $CFLAGS.

This commit was SVN r5787.
2005-05-19 23:52:13 +00:00
Jeff Squyres
3bd7e72608 Fix some minor typos
This commit was SVN r5692.
2005-05-12 02:22:03 +00:00
Jeff Squyres
2dbcf1a1e5 Fix issue raised by Rainer: if we don't find a corresponding C type
for an optional fortran type, it's not an error.  Instead, just
disable support for that fortran optional type.

This commit was SVN r5680.
2005-05-10 23:57:37 +00:00
Rainer Keller
e06f0723a8 configure.ac:
- Check for icc-8.1 segfaulting with varargs.
  - Add check for size of REAL*4,8,16 types and purge,
    if smaller
  - Fix configure-output with regard to checking for c-types 
    for the REAL*-types.

This commit was SVN r5661.
2005-05-10 09:09:04 +00:00
Jeff Squyres
ac60eac8f3 Temporary information at ftp.gnu.org advises getting config.* scripts
directly from Savannah.

This commit was SVN r5654.
2005-05-09 18:29:03 +00:00
Brian Barrett
fc16d60236 * Don't use poll() on OS X. It's implemented on top of select in 10.3 (no
biggie), so we gain nothing there.  On 10.4, it's implemented directly,
  but doesn't support devices (which messes up pty support and IO
  forwarding).

This commit was SVN r5621.
2005-05-06 15:10:35 +00:00
Rainer Keller
164e8caa5e If the F77 datatype (like INTEGER*1) is supposed to be available, check
for the size. If it does not fit, purge from the list, i.e. reset all
values to zero.

Fixes pgf90 problem, which silently accepts INTEGER*16, but internally
using INTEGER...

This commit was SVN r5594.
2005-05-04 18:37:32 +00:00
Jeff Squyres
bcd4797389 Commit 4 of 4 for bringing the changes over from the hetero branch.
Merged in from:

svn merge -r5506:5553 https://svn.open-mpi.org/svn/ompi/tmp/hetero .

This commit was SVN r5552.

The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
  r5506
  r5553
2005-05-01 00:58:06 +00:00
Jeff Squyres
aa70022dc2 Commit 2 of 4 for bringing the changes over from the hetero branch.
Merged in from:

svn merge -r5448:5496 https://svn.open-mpi.org/svn/ompi/tmp/hetero .

This commit was SVN r5550.

The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
  r5448
  r5496
2005-05-01 00:53:00 +00:00
Jeff Squyres
462adee81a Commit 1 of 4 to bring in the hetero branch to the trunk. Merged in
from:

svn merge -r5440:5448 https://svn.open-mpi.org/svn/ompi/tmp/hetero .

This commit was SVN r5549.

The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
  r5440
  r5448
2005-05-01 00:47:35 +00:00
Jeff Squyres
fe2522f315 A bunch of changes to support MPI_INTEGER*x, MPI_REAL*x,
MPI_COMPLEX*x, and some optional C datatypes in MPI reduction
operations.  These types are not technically supported by the letter
of the MPI standard, but are implied by the spirit of it (and there
are definitely users that use them in real applications)

- Add checks in configure for back-end C types for MPI_INTEGER*x and
  MPI_REAL*x
- Create C data structs for MPI_COMPLEX*x
- Fixed typo for MPI_INTEGER8 in mpi.h
- Updated configure macros to create MPI_FORTRAN_INTEGER* defines, as
  opposed to MPI_FORTRAN_INT, which was causing [me] lots of confusion
  (between C "*_INT" names and Fortran "*_INT" names).  This caused
  some trivial updates in ddt, ompi_info, and the MPI layer to match.
- Update ompi_info to show whether we have each MPI_INTEGER*x,
  MPI_REAL*x, and MPI_COMPLEX*x
- Extended reduction operations for optional datatypes:
  - "C integer" now includes long long int, long long, and unsigned
    long long
  - "Fortran integer" now includes MPI_INTEGER*x
  - "Floating point" now includes MPI_REAL*x
  - "Complex" now includes MPI_COMPLEX*x

This commit was SVN r5511.
2005-04-27 10:23:06 +00:00
Jeff Squyres
6e7e0c03ea Don't use non-portable "-n" option to test
This commit was SVN r5510.
2005-04-27 10:14:45 +00:00
Brian Barrett
0964152893 clean up the OMPI_BUILDING #define. Rather than being defined to 1 if
we are part of the source tree and not defined otherwise, we are going
with an always defined if ompi_config.h is included policy.  If
ompi_config.h is included before mpi.h or before OMPI_BUILDING is set,
it will set OMPI_BUILDING to 1 and enable all the internal code that
is in ompi_config_bottom.h.  Otherwise, it will only include the
system configuration data (enough for defining the C and C++ interfaces
to MPI, but not perturbing the user environment).

This should fix the problems with bool and the like that the Eclipse
folks were seeing.  It also cleans up some build system hacks that
we had along the way.

Also, don't use int64_t as the default size of MPI_Offset, because it
requires us including stdint.h in mpi.h, which is something we really
shouldn't be doing.

And finally, fix a ROMIO Makefile that didn't set -DOMPI_BUILDING=1,
as ROMIO includes mpi.h, but not ompi_config.h

This commit was SVN r5430.
2005-04-19 03:51:20 +00:00
Prabhanjan Kambadur
ddead64bcf 1. Moving WRAPPER_*_FLAGS initialization to configure.ac instead of
having it in config/ompi_setup_cxx.m4
2. Adding --enable-coverage option. This will add teh flags -ftest-coverage
   and -fprofile-arcs to the flags. Also, one needs to compile with 
   debug and static only to enable code coverage
3. Adding the coverage flag options to WRAPPER_*_FLAGS so that mpicc and co.,
   will add these to teh executables when they are compiled

This commit was SVN r5416.
2005-04-18 16:38:27 +00:00
Brian Barrett
d474b2c3fc AIX sed passes unmatched lines through unchanged, so first find the
lines we want

This commit was SVN r5411.
2005-04-17 22:14:13 +00:00
Jeff Squyres
ab16fadb0f Be specific in error messages about f90 setup
This commit was SVN r5407.
2005-04-16 00:53:22 +00:00
Brian Barrett
e3587652b7 * Add support for using ptys for stdout when doing I/O forwarding. This is
enough to make use applications be line buffered instead of block buffered,
  which makes output come much faster :)

This commit was SVN r5400.
2005-04-15 21:18:20 +00:00
Jeff Squyres
87fce5c2a6 Bunches of things with respect to F90, mainly resulting from work on
Monday with Craig:
- split two f90 modules into two separate .f90 files so that
  dependencies can be satisfied properly in parallel builds (i.e.,
  mpi_kinds.f90 can be compiled and its f90 module can be generated
  before any others are compiled, because it is needed by all of the
  other f90 source files).
- rename mpi.i.h* to be mpi-f90-interfaces.h, just to be a little more
  clear and less name-confusing with mpi.h and mpif.h
- update the build process in src/mpi/f90, including printing out a
  warning that compiling mpi.f90 may take quite a while :-\
- update the wrapper compilers to add in the Right Things for
  compiling F90 MPI applications
- add a check in configure to find what flag the F90 compiler uses to
  identify where f90 module files live

This commit was SVN r5297.
2005-04-13 11:54:36 +00:00
Brian Barrett
309ff000a6 * add --enable-mca-static to specify components that should be statically
linked into libmpi
* add --enable-mca-direct to specify components that should be directly
  called (instead of going through component structs and the like).  The
  components and component frameworks must explicitly support this.
  Currently, only the TEG PML does so.
* Updated all the calls to the PML to use a macro so that they can either
  be direct called or called through function pointer interfaces (aka
  the component infrastructure)

This commit was SVN r5291.
2005-04-13 03:19:48 +00:00
Jeff Squyres
6f15d1071c Add --with-f90-max-array-dim configure option to specify how many
dimensions the f90 MPI bindings should support (they are strongly
typed, and the number of dimensions of choice arguments must be
specified -- it cannot be arbitrary).   The default is four.

Note that even though increasing this value has essentially a linear
effect on the code, the multiplier constant is fairly large (only a
small number of functions have 2 choice buffers, so the exponential
factor is relatively small).  Increasing this value increases the
amount of time f90 compilers will spend compiling src/mpi/f90/mpi.f90
(some compilers will crash if it is too big).

This commit was SVN r5268.
2005-04-12 10:17:52 +00:00
Brian Barrett
5b9dc9d302 * get the svn r number when vpath building
* look in the srcdir for the dist-related scripts

This commit was SVN r5218.
2005-04-07 21:39:03 +00:00
Jeff Squyres
398857aba0 Add missing file to make "make dist" work in tarballs
This commit was SVN r5200.
2005-04-07 03:28:46 +00:00
Brian Barrett
d737000a5e * fix to make platform detection work on Linux Sparc
This commit was SVN r5134.
2005-04-01 15:49:27 +00:00
Jeff Squyres
4e198561f6 Fix INCFLAGS for VPATH builds.
This commit was SVN r5083.
2005-03-29 02:50:18 +00:00
Jeff Squyres
b3a75f27f6 Fix some typos in processing configure options
This commit was SVN r5081.
2005-03-29 02:47:43 +00:00
Jeff Squyres
79f631b88a Fix a call to AC_REPLACE_FUNC that we previously missed
This commit was SVN r5071.
2005-03-28 20:51:42 +00:00
Brian Barrett
ff0941763c * make sure THREADS_HAVE_DIFFERENT_PIDS is always defined to something
This commit was SVN r5057.
2005-03-27 17:13:00 +00:00
Jeff Squyres
192367c92a Oops -- fix the m4 file as well. And other minor touch-ups.
This commit was SVN r5044.
2005-03-27 11:24:27 +00:00
Jeff Squyres
78d8a80bc9 - Some shells require the egrep clause to be in ''
- Fix missing "test"

This commit was SVN r5043.
2005-03-27 11:23:08 +00:00
Brian Barrett
a5ae33acea * disable threads by default (temporarily)
* fix dumb commit issue in gm

This commit was SVN r5042.
2005-03-26 20:27:17 +00:00