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

6 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
bc47a24bee Bring the f90 configuration up to speed with the f77 configuration
changes.  The two Big Changes are elegance (much more re-use of code
rather than cut-n-pasting the same code over and over and over and...)
and enabling cross-compilation for F77 and F90 (because we actually
have to *run* some compiled F77 and F90 programs for some of the
tests, which obviously won't work in a cross-compilation environment
-- so enable the use of config.cache to load such values in
cross-compiling environments).

This commit was SVN r8991.
2006-02-12 15:11:36 +00:00
Brian Barrett
92aaaad611 * Fix issue when a type existed but we didn't have a corresponding C type -
the failure wasn't being properly propogated up from ompi_find_type and
  resulting in bad #define values in ompi_config.h
* Fix issue where we could emit illegal sh code if we were checking for a
  type with no corresponding C types listed.  Thanks to Ralf for tracking
  this one down.
* Fix a couple more messages to match all the others.

This commit was SVN r8685.
2006-01-13 14:51:20 +00:00
Brian Barrett
48f82db838 Convert all Fortran 77 tests to use config cache so that we have a way to
determine values like Fortran alignment (which can only be determined by
running a program) when cross-compiling.  By providing cache values, the
programs will not be run at all, and life will be good.  Also clean up
some macro interfaces so that they are a bit easier to use, at the cost
of horrid internals ;).

This commit was SVN r8684.
2006-01-13 04:08:40 +00:00
Jeff Squyres
bcd037315f Some Fortran compilers actually will return that a type exists even if
it doesn't support it -- the compiler will automatically convert the
unsupported type to a type that it *does* support.  For example, if
you try to use INTEGER*16 and the compiler doesn't support it, it may
well automatically convert it to INTEGER*8 for you (!).  So we have to
check the actual size of the type once we determine that the compiler
doesn't error if we try to use it (i.e,. the compiler *might* support
that type).  If the size doesn't match the expected size, then the
compiler doesn't really support it.

The F77 configure code actually handled this properly.  The F90 code
did not quite do it right.  This patch brings the F90 code up to the
same structure as the F77 code, albiet not m4-ized properly.  I also
added a comment to config/f77_check.m4 that explains *why* we do this
extra size check (because no explanation was given).

The impetus for this was that xlf* on OS X 10.3 was not recognizing
that INTEGER*16 was not supported, and mpi-f90-interfaces.h was being
assembled incorrectly.  This patch fixes this problem.

There is still one more problem, but waiting for some help from Craig
R on that (function pointers in F90 declarations).

This commit was SVN r8107.
2005-11-10 23:35:36 +00:00
Jeff Squyres
42ec26e640 Update the copyright notices for IU and UTK.
This commit was SVN r7999.
2005-11-05 19:57:48 +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