1
1
* Consolidate everything inside of the same AM_CONDITIONAL that is
   used to suck in the glue convenience library in ompi/Makefile.am:
   OMPI_WANT_F77_BINDINGS.  This AM conditional is set to true if we
   want (and can support) the F77 MPI API bindings at all (And does
   not say anything about whether we are compiling the top-level or
   bottom-level f77 directory to get the bindings).
 * Clarify all the comments surrounding the [confusing!] issue.
 * The problem with r11563 was that it used the wrong AM_CONDITIONAL
   to decide whether to build the separate F77 library or not; it
   would do so only if the top-level library was being built (e.g., on
   systems like OSX where weak symbols don't work the way we need them
   to).  This patch somewhat simplifies the situation by encapsulating
   everything in one large conditional (OMPI_WANT_F77_BINDINGS, as
   described above).  Hence, libmpi_f77 will exist (and be installed)
   if F77 support is enabled overall, regardless of whether you're on
   a system with insufficient weak symbol support (e.g., OSX) or not
   (e.g., Linux).

This commit was SVN r11618.

The following SVN revision numbers were found above:
  r11563 --> open-mpi/ompi@c8f3ff71b1
Этот коммит содержится в:
Jeff Squyres 2006-09-11 23:18:24 +00:00
родитель 458e0fe660
Коммит 713206d4f9

Просмотреть файл

@ -29,31 +29,51 @@ SUBDIRS = profile
AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_F77_WRAPPERS=1
# The top directory only builds MPI_* bindings and some support
# glue. The bottom directory only builds PMPI_* bindings. Each
# directory is built when certain conditions are met. If the F77
# bindings are disabled, nothing in the top or bottom directory is
# built.
#
# The top directory always builds MPI_* bindings. The bottom directory
# always builds PMPI_* bindings. The cases where the top directory
# needs to be built are
# 1. When profiling is disabled.
# 2. When profiling is enabled but weak symbol support is absent.
# If the F77 MPI API bindings are enabled, the glue functions in the
# top directory are always built.
#
# The cases where the MPI API functions are build top directory needs
# to be built are:
#
# 1. When profiling is disabled
# 2. When profiling is enabled but weak symbol support is absent
#
if WANT_MPI_F77_BINDINGS_LAYER
lib_LTLIBRARIES = libmpi_f77.la
else
lib_LTLIBRARIES =
endif
if WANT_PMPI_F77_BINDINGS_LAYER
libmpi_f77_la_LIBADD = profile/libmpi_f77_pmpi.la
else
libmpi_f77_la_LIBADD =
noinst_LTLIBRARIES =
# Are we building the F77 bindings at all?
if OMPI_WANT_F77_BINDINGS
# If yes, then we need to build the installable library and the glue
# convenience library that will be sucked up into the main libmpi.
lib_LTLIBRARIES += libmpi_f77.la
noinst_LTLIBRARIES += libmpi_f77_base.la
# Do we need to suck in the convenience library from the lower
# directory?
if WANT_PMPI_F77_BINDINGS_LAYER
libmpi_f77_la_LIBADD += profile/libmpi_f77_pmpi.la
else
# Is this else conditional really necessary? There *used* to be an AM
# bug that forced this; is it still there? (there is no harm in
# having this extra statement; I just don't know if it's *necessary*
# anymore)
libmpi_f77_la_LIBADD +=
endif
noinst_LTLIBRARIES =
if OMPI_WANT_F77_BINDINGS
noinst_LTLIBRARIES += libmpi_f77_base.la
else
# No, we are not building the F77 bindings at all. Ditto on the
# comment above about whether we really need these statements or
# not...
lib_LTLIBRARIES +=
libmpi_f77_la_LIBADD +=
noinst_LTLIBRARIES +=
endif