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

354 Коммитов

Автор SHA1 Сообщение Дата
George Bosilca
1602dd12ba Typo correction. GNU gcc define __GNUC__ not __GNU__.
This commit was SVN r8423.
2005-12-09 05:09:37 +00:00
George Bosilca
93cff86017 Include the vendor and nickname detection directly in the setup macros.
This commit was SVN r8422.
2005-12-09 04:19:53 +00:00
George Bosilca
66629c0974 Two scripts to detect the flavor and vendor of the used compiler. The flavor
is a short name usually the one that the compiler have. If we are using
wrappers around a compiler the flavor will be the real name of the compiler.
The vendor is a short name for the maker of the compiler. The GNU compilers
get gnu and the microsoft one get microsoft.

These 2 macros provide a simple way to check for specific brand of compilers
and to generate the correct code to test with the autoconf macros. They are
not yet completed, I add just some of the compilers/vendors but feel free to
add more if you need/want.

This commit was SVN r8417.
2005-12-08 17:40:32 +00:00
Brian Barrett
996fc4ca8e * allow both mx and gm to be disabled with --without-{gm,mx}
This commit was SVN r8411.
2005-12-08 04:54:42 +00:00
Brian Barrett
372f9b0f29 * it appears Solaris on Opteron identifies itself as i386-pc-solaris2.10, not
x86_64 as most opterons do.  So add test to see how many bytes a long is,
  and if it's 8 bytes, assume we're on an AMD64 instead of an IA32 for the
  purposes of assembly.

This commit was SVN r8384.
2005-12-06 13:31:05 +00:00
Brian Barrett
3a07de29f3 - add -lgen if it's needed to get dirname()
- since we now have three places where we need to add a -l<foo> if
  and only if it isn't already in something in LIBS that provides
  symbol bar...

This commit was SVN r8370.
2005-12-02 01:02:19 +00:00
Jeff Squyres
0fc36a016f Patch from David Daniel to add $LDFLAGS and $LIBS into the f90 tests
so that they're just like the f77 tests.

This commit was SVN r8348.
2005-12-01 13:19:32 +00:00
George Bosilca
906d19a73e A simpler version for the C function who is supposed to print the value of TRUE from Fortran. We support
only the fortran compilers who define the LOGICAL as being at most of the same size as an int.

This commit was SVN r8306.
2005-11-29 06:35:46 +00:00
Galen Shipman
ff1a820384 set the lib path correctly, build system doesn't like white space..
This commit was SVN r8291.
2005-11-28 21:08:39 +00:00
Galen Shipman
209bc9ca93 fix..
This commit was SVN r8288.
2005-11-28 20:44:53 +00:00
George Bosilca
c9c205302d Correct the TRUE detection code to be more Fortran friendly and not based on some compiler
features. Now it works with gfortran as well.

The problem was that the cast between LOGICAL and INTEGER is not a Fortran language feature. The easiest solution around this problem is to have a C function that print the value. We set the value in fortran and then call the C function to print it out.

This commit was SVN r8266.
2005-11-28 16:26:00 +00:00
Rainer Keller
bf0892bb32 - Implement correct Fortran Logical-handling in f77/f90 interface in
case of:
    sizeof(MPI_Flogical) != sizeof (int)
  and
    Fortran value of .TRUE. != 1
  as is often the case.
- Check in configure the value of .TRUE., the C-type coresponding to
  logical and check, that fortran compiler does not do something strange
  with arrays of logicals
- Convert all occurrences of logicals in the fortran wrappers, only
  in case it is needed.
  *Please note* Implementation of MPI_Cart_sub needed special treatment.
- Output these value in ompi_info -a
- Clean up the prototypes_mpi.h to just have a single definition and
  thereby deleting the necessity for prototypes_pmpi.h

- configured, compiled and tested with F90-program, which uses
  MPI_Cart_create and MPI_Cart_get:
  linux ia32, gcc (no testing, as no f90)
  linux ia32, gcc --disable-mpi-f77 --disable-mpi-f90 (had a bug there)
  linux ia32, icc-8.1
  linux opteron, gcc-3.3.5, pgcc, pathccx/pathf90 (tested just
pgi-compiler)
  linux em64t, gcc, icc-8.1 (tested just icc)

This commit was SVN r8254.
2005-11-24 16:52:35 +00:00
Brian Barrett
129451277e * add missing constant when using the MPI-2 onesided shell functions.
This should probably go to the branch

This commit was SVN r8222.
2005-11-21 23:43:48 +00:00
Brian Barrett
8faa1884f0 * The last of the build system optimizations. Combine the component and
component/base Makefile.am files, reducing the time configure spends
  stamping out Makefiles at the end
* Install base_impl.h file when devel-headers are being installed

This commit was SVN r8200.
2005-11-20 01:03:01 +00:00
Brian Barrett
e5525ad5f8 fix for issue found by Dries Kimpe -- if a user specifies two identical
options as part of the --with-wrapper-{*flags,libs} options to configure,
we'll eat one of them, which can have unintended issues.  For example,

  --with-wrapper-ldflags="-Wl,-rpath -Wl,pathA -Wl,-rpath -Wl,pathB"

will result in us removing the second -Wl,-rpath, which will result
in wrapper ldflags of -Wl,-rpath -Wl,pathA -Wl,pathB which doesn't
really do what the user intended.  We now always pass the user-
specified flags completely unmodified, bypassing the OMPI_UNIQ
routine

This commit was SVN r8193.
2005-11-18 20:55:38 +00:00
Brian Barrett
1066518f3b Fix output of configure --help for the --with-threads option to be posix
instead of pthread.  The code expects posix.

This commit was SVN r8130.
2005-11-12 03:10:52 +00:00
Brian Barrett
660d2f61b6 Don't add external declarations for the PMPI_W{TICK,TIME} functions
if profiling isn't enabled.  It appers that some compilers (g95)
will try to resolve the symbols if they are prototyped.

This commit was SVN r8110.
2005-11-11 00:12: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
Brian Barrett
5bf0a7bc62 * allow for the fact that svnversion might fail
This commit was SVN r8077.
2005-11-10 02:00:38 +00:00
Brian Barrett
bc8e6300fd Clean up the TM configure macro. Original bug was that it didn't add -lpbs to
the component's LIBS if the library was found in the default search paths.
However, it would also add -Is for default search paths and other nasty things,
so it seemed best to convert it to the OMPI_CHECK_PACKAGE macro so that it
behaved like all the other packages out there.

This commit was SVN r8007.
2005-11-07 13:21:46 +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
Brian Barrett
1c47b56163 * add ability to add compiler / linker flags to the MPI wrapper compilers
from configure (in addition to all the ones that the configure script
  finds)

This commit was SVN r7906.
2005-10-27 23:23:08 +00:00
Brian Barrett
65bcc283c0 * Change the --enable-{cxx,f77,f90} options to
--enable-mpi-{cxx,f77,f90} so that people aren't confused about what
  they are actually disabling.

  This should go to the 1.0 branch

This commit was SVN r7851.
2005-10-25 02:53:54 +00:00
Brian Barrett
76d1a808e9 disable GCC-style inline assembly when on AIX. The IBM compiler does a really,
really crappy job of trying to emulate the inline assembly mode of GCC (and will
completely rewite the assembly, which seems to be bad in my opinion).  GCC and
the AIX assembler don't see eye-to-eye on what GCC emits when doing inline
assembly.  That's two compilers and no actual working support.  So just punt and
fall back to XLC inline assembly or non-inlined assembly.

This commit was SVN r7800.
2005-10-18 19:04:35 +00:00
Brian Barrett
1302cb4072 The next in a long line of crazed build system changes from Brian. This was
originally suggested by Ralf Wildenhues, to try to speed autogen, configure,
and make (and possibly even make install).  Use automake's include directive
to drastically reduce the number of Makefile files (although the number of
Makefile.am files is the same - most are just included in a top-level
Makefile.am).  Also use an Automake SUBDIRs feature to eliminate the
dynamic-mca tree, which was no longer really needed.  This makes adding
a framework easier (since you don't have to remember the dynamic-mca
tree) and makes building faster (as make doesn't have to recurse through
the dynamic-mca tree)

This commit was SVN r7777.
2005-10-17 00:21:10 +00:00
Jeff Squyres
c760d51cc2 Fixes for INTEGER and int max values; original problem report from
Brooks Davis.  Now handle everything as hex, and we don't have to
worry about signed/unsigned implementations of integers in shell and
expr. 

This commit was SVN r7729.
2005-10-12 16:08:17 +00:00
Brian Barrett
6ee4116b22 * properly restore CPPFLAGS so that they don't accidently disappear down
the line

This commit was SVN r7718.
2005-10-12 03:59:48 +00:00
Brian Barrett
4df7d936bf make dist would create the VERSION file with incorrect timestamps if running in
a VPATH tree.  Fix that problem, as well as some potential shell escaping badness
if a version number or path ever had a space in it.

This commit was SVN r7586.
2005-10-02 21:14:50 +00:00
Jeff Squyres
e72e1f0050 Fix some incorrect fortran parameter values
This commit was SVN r7584.
2005-10-02 14:59:27 +00:00
Brian Barrett
57781484ef * check for shared receive queue support, and set OMPI_MCA_BTL_OPENIB_HAVE_SRQ
if we have said support

This commit was SVN r7575.
2005-10-01 18:44:31 +00:00
Brian Barrett
997644af31 * There are now two forms of ibv_create_cq, one with 3 params and one with 5.
Try to detect which form this version of Open IB uses, defaulting to the 5
  version if we can't figure it out (the new version has 5 params)
* Only add -lcm if it exists on the system - some versions of Open IB
  apparently don't need it.

This commit was SVN r7542.
2005-09-29 13:35:57 +00:00
Brian Barrett
80ac5c2efd * there are now two upcoming points where we want to release a version with
a random string of characters as part of the version number (the really
  soon to happen 1.0lanl release and the 1.1sc2005 release that we've
  talked about).  So rather than having alpha and beta fields that must
  be numeric values, have a general field that can be any alphanumeric
  value.

This commit was SVN r7511.
2005-09-27 02:06:05 +00:00
Jeff Squyres
fbd6db142b Remove some old references to --with-btl-mvapi (replaced with
--with-mvapi).

This commit was SVN r7495.
2005-09-23 13:18:41 +00:00
Jeff Squyres
4637ca6027 Use AC_FD_CC uniformly (one & was missing).
This commit was SVN r7407.
2005-09-16 12:28:53 +00:00
Brian Barrett
2787d993a9 * Add checks for fork/execve/setpgid for slurm components so that they
automagically don't build on platforms without such things
* Fix for mistaken use of cache variable in assembly setup
* one more cached test hits the books

This commit was SVN r7404.
2005-09-16 04:51:09 +00:00
Brian Barrett
cf04b2da3c * bunch of changes to make better use of config cache. Almost everything in the
C / C++ tests now use the caching scheme.  Only exception is C++ exception
  handling code, which is disabled by default, so I'm not too worried about making
  that configure faster :)

This commit was SVN r7403.
2005-09-16 02:49:31 +00:00
Brian Barrett
0bdbdb0cf8 * It seems that some versions of the Intel compiler don't properly handle
the way we use weak symbols (you have to use the actual symbol in the
  .o file or the weak symbol isn't generated).  It worked for our test
  case, but not for libmpi.  Make our test case look more like what we
  do in libmpi by generating a .o file with a weak symbol and attempting
  to use it from another object file.

This commit was SVN r7360.
2005-09-14 01:40:25 +00:00
George Bosilca
6a4f4acebf Typo.
This commit was SVN r7359.
2005-09-13 22:28:51 +00:00
Jeff Squyres
809a31518e Some changes:
- fix the first test
- make the #define's always have a value (0 or 1)
- prefix them with OMPI
- remove the extra "__"'s in the names, since they're now
  OMPI-specific #define names

This commit was SVN r7339.
2005-09-13 12:26:45 +00:00
George Bosilca
7a9a427c30 Check for __attribute__ to support advanced flags on the functions and structures.
They can be used to give additional knowledge to the compiler about the behaviour of a
function so it can optimize further. In the begining we just need it for the alias weak
a better way to create function aliases.

The problem was that the intel compiler version 8 to 9 support pragma weak but do not include
the function in the .o file if it's not used at least once in the same .c file. With the
alias weak this problem is solved as even intel support it correctly.

This commit was SVN r7330.
2005-09-12 22:49:09 +00:00
Jeff Squyres
67cde6c212 - Minor cleanups
- Add --enable-trace which turns on some internal tracing and dumps a
  file per process in the session directory tree.  Meant for internal
  developer tracing, *not* for tracing MPI applications in the
  traditional sense.

This commit was SVN r7229.
2005-09-08 09:44:50 +00:00
Brian Barrett
aee3316243 * just for George, don't try to get the SVN r number if we don't need it. This
should speed up autogen.sh on platforms with really slow svnversion searches,
  as we only need the base version for autogen, which means we don't need the
  r number.
* Since I can't type, add an error message if an invalid argument is given

This commit was SVN r7224.
2005-09-07 19:59:28 +00:00
Brian Barrett
ed56e743b7 * update configure.ac to use the modern version of AC_INIT and
AM_INIT_AUTOMAKE, instead of the deprecated version.
* Work around dumbness in modern AC_INIT that requires the version
  number to be set at autoconf time (instead of at configure time, as
  it was before).  Set the version number, minus the subversion r number,
  at autoconf time.  Override the internal variables to include the r
  number (if needed) at configure time.  Basically, the right thing
  should always happen.  The only place it might not is the version
  reported as part of configure --help will not have an r number.
* Since AM_INIT_AUTOMAKE taks a list of options, no need to specify
  them in all the Makefile.am files.
* Addes support for subdir-objects, meaning that object files are put
  in the directory containing source files, even if the Makefile.am is
  in another directory.  This should start making it feasible to
  reduce the number of Makefile.am files we have in the tree, which
  will greatly reduce the time to run autogen and configure.

This commit was SVN r7211.
2005-09-07 05:54:53 +00:00
Brian Barrett
17f60894c5 * per conversation with Tim, registration macro should be on by default
This commit was SVN r7210.
2005-09-07 05:01:51 +00:00
Jeff Squyres
5702c8f29b Fix help messages and docs about --with arguments
This commit was SVN r7183.
2005-09-05 18:51:34 +00:00
Brian Barrett
7e9b777ead * there's no var_in variable for the component-specific variables, so don't
have on there.  Fixes static builds with GM.

This commit was SVN r7140.
2005-09-02 03:05:38 +00:00
Jeff Squyres
4c59058053 - Add some logic to configure to make a version of CFLAGS that doesn't
include any optimization flags
- Use these flags to always compile ompi/debuggers/* and orterun so
  that parallel debuggers (such as Totalview) can always see the
  debugging symbols (see comments in ompi/debuggers/Makefile.am and
  orte/tools/orterun/Makefile.am)
- Remove some obsolete LAM-named variables from configure.ac

This commit was SVN r7125.
2005-09-01 10:37:20 +00:00
George Bosilca
e49285fc14 Brian patch to remove -lmyriexpress from the mpicc flags.
This commit was SVN r7121.
2005-09-01 03:40:01 +00:00
George Bosilca
08f292f21a Now the PTL and BTL GM share a common base of configure macros.
This commit was SVN r7120.
2005-09-01 03:38:56 +00:00
Jeff Squyres
0fddc53603 If you're going to make a fix by unescaping something, then unescape
*everything*.  Oops.  :-(

This commit was SVN r7104.
2005-08-31 03:01:06 +00:00