
Changes paffinity interface to use a cpu mask for available/preferred cpus rather than the current coarse grained paffinity that lets the OS choose which processor. Macros for setting and clearing masks are provided. Solaris and windows changes have not been made. Solaris subdirectory has some suggested changes - however the relevant man pages for the Solaris 10 APIs have some ambiguity regarding order in which one create and sets a processor set. As we did not have access to a solaris 10 machine we could not test to see the correct way to do the work under solaris. This commit was SVN r14887.
177 строки
5.7 KiB
Plaintext
177 строки
5.7 KiB
Plaintext
# -*- shell-script -*-
|
|
#
|
|
# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
|
# University Research and Technology
|
|
# Corporation. All rights reserved.
|
|
# Copyright (c) 2004-2005 The University of Tennessee and The University
|
|
# of Tennessee Research Foundation. All rights
|
|
# reserved.
|
|
# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
|
# University of Stuttgart. All rights reserved.
|
|
# Copyright (c) 2004-2005 The Regents of the University of California.
|
|
# All rights reserved.
|
|
# Copyright (c) 2006-2007 Cisco Systems, Inc. All rights reserved.
|
|
# $COPYRIGHT$
|
|
#
|
|
# Additional copyrights may follow
|
|
#
|
|
# $HEADER$
|
|
#
|
|
|
|
AC_INIT([plpa],
|
|
[m4_normalize(esyscmd([config/plpa_get_version.sh VERSION --base]))],
|
|
[http://www.open-mpi.org/community/help/], [plpa])
|
|
AC_PREREQ(2.59)
|
|
AC_CONFIG_AUX_DIR(./config)
|
|
AC_CONFIG_MACRO_DIR(./config)
|
|
|
|
# Init automake
|
|
AM_INIT_AUTOMAKE([foreign dist-bzip2 subdir-objects no-define])
|
|
|
|
# Make configure depend on the VERSION file, since it's used in AC_INIT
|
|
AC_SUBST([CONFIGURE_DEPENDENCIES], ['$(top_srcdir)/VERSION'])
|
|
|
|
# Get the version of OMPI that we are installing
|
|
AC_MSG_CHECKING([for PLPA version])
|
|
PLPA_VERSION="`$srcdir/config/plpa_get_version.sh $srcdir/VERSION`"
|
|
PLPA_MAJOR_VERSION="`$srcdir/config/plpa_get_version.sh $srcdir/VERSION --major`"
|
|
PLPA_MINOR_VERSION="`$srcdir/config/plpa_get_version.sh $srcdir/VERSION --minor`"
|
|
PLPA_RELEASE_VERSION="`$srcdir/config/plpa_get_version.sh $srcdir/VERSION --release`"
|
|
PLPA_SVN_R="`$srcdir/config/plpa_get_version.sh $srcdir/VERSION --svn`"
|
|
AC_SUBST(PLPA_VERSION)
|
|
AC_SUBST(PLPA_SVN_R)
|
|
AC_DEFINE_UNQUOTED([PLPA_MAJOR_VERSION], [$PLPA_MAJOR_VERSION],
|
|
[Major version of PLPA])
|
|
AC_DEFINE_UNQUOTED([PLPA_MINOR_VERSION], [$PLPA_MINOR_VERSION],
|
|
[Minor version of PLPA])
|
|
AC_DEFINE_UNQUOTED([PLPA_RELEASE_VERSION], [$PLPA_RELEASE_VERSION],
|
|
[Release version of PLPA])
|
|
AC_MSG_RESULT([$PLPA_VERSION])
|
|
|
|
# override/fixup the version numbers set by AC_INIT, since on
|
|
# developer builds, there's no good way to know what the version is
|
|
# before running configure :(. We only use the base version number
|
|
# (ie, no svn r numbers) for the version set in AC_INIT. This will
|
|
# always match reality because we add the VERSION file (the only way
|
|
# to change the major.minor.release{greek}) into the configure
|
|
# dependencies.
|
|
PACKAGE_VERSION="$PLPA_VERSION"
|
|
PACKAGE_STRING="${PACKAGE_NAME} ${PACKAGE_VERSION}"
|
|
VERSION="${PACKAGE_VERSION}"
|
|
|
|
# Setup the header file
|
|
AH_TOP([/* -*- c -*-
|
|
*
|
|
* Copyright (c) 2004-2005 The Trustees of Indiana University.
|
|
* All rights reserved.
|
|
* Copyright (c) 2004-2005 The Regents of the University of California.
|
|
* All rights reserved.
|
|
* Copyright (c) 2006 Cisco Systems, Inc. All rights reserved.
|
|
* $COPYRIGHT$
|
|
*
|
|
* Additional copyrights may follow
|
|
*
|
|
* $HEADER$
|
|
*/
|
|
|
|
#ifndef PLPA_H
|
|
#define PLPA_H
|
|
])
|
|
AH_BOTTOM([
|
|
#if defined(__cplusplus) || defined(c_plusplus)
|
|
extern "C" {
|
|
#endif
|
|
#include "plpa_bottom.h"
|
|
#if defined(__cplusplus) || defined(c_plusplus)
|
|
}
|
|
#endif
|
|
#endif /* PLPA_H */
|
|
])
|
|
|
|
# Compiler stuff
|
|
AC_PROG_CC
|
|
AM_PROG_CC_C_O
|
|
|
|
# For the common developer case, if we're in a Subversion checkout and
|
|
# using the GNU compilers, turn on maximum warnings unless
|
|
# specifically disabled by the user.
|
|
AC_MSG_CHECKING([whether to enable "picky" compiler mode])
|
|
want_picky=0
|
|
if test -d "$srcdir/.svn" -a "$GCC" = "yes"; then
|
|
want_picky=1
|
|
fi
|
|
AC_ARG_ENABLE(picky,
|
|
AC_HELP_STRING([--disable-picky],
|
|
[When in Subversion checkouts of PLPA and compiling with gcc, the default is to enable maximum compiler pickyness. Using --disable-picky or --enable-picky overrides any default setting]))
|
|
if test "$enable_picky" = "yes"; then
|
|
if test "$GCC" = "yes"; then
|
|
AC_MSG_RESULT([yes])
|
|
want_picky=1
|
|
else
|
|
AC_MSG_RESULT([no])
|
|
AC_MSG_WARN([Warning: --enable-picky used, but is currently only defined for the GCC compiler set -- automatically disabled])
|
|
want_picky=0
|
|
fi
|
|
elif test "$enable_picky" = "no"; then
|
|
AC_MSG_RESULT([no])
|
|
want_picky=0
|
|
else
|
|
if test "$want_picky" = 1; then
|
|
AC_MSG_RESULT([yes (default)])
|
|
else
|
|
AC_MSG_RESULT([no (default)])
|
|
fi
|
|
fi
|
|
if test "$want_picky" = 1; then
|
|
add="-Wall -Wundef -Wno-long-long -Wsign-compare"
|
|
add="$add -Wmissing-prototypes -Wstrict-prototypes"
|
|
add="$add -Wcomment -pedantic"
|
|
|
|
CFLAGS="$CFLAGS $add"
|
|
fi
|
|
|
|
AC_MSG_CHECKING([whether to enable debug mode])
|
|
AC_ARG_ENABLE(debug,
|
|
AC_HELP_STRING([--disable-debug],
|
|
[When in Subversion checkouts of PLPA and compiling with gcc, the default is to debugging. Use --disable-debug or --enable-debug overrides any default setting]))
|
|
|
|
# Slightly different tests for whether we're in a svn checkout or not
|
|
want_debug=no
|
|
if test -d "$srcdir/.svn"; then
|
|
if test "$enable_debug" = "no"; then
|
|
value=0
|
|
msg="no"
|
|
else
|
|
value=1
|
|
msg="yes (default)"
|
|
fi
|
|
else
|
|
if test "$enable_debug" = "yes"; then
|
|
value=1
|
|
msg="yes"
|
|
else
|
|
value=0
|
|
msg="no (default)"
|
|
fi
|
|
fi
|
|
if test "$value" = "1"; then
|
|
CFLAGS="$CFLAGS -g"
|
|
fi
|
|
AC_DEFINE_UNQUOTED([PLPA_DEBUG], [$value], [Whether we're in debugging mode or not])
|
|
# Stupid emacs mode: '
|
|
AC_MSG_RESULT([$msg])
|
|
|
|
# Setup the PLPA (taking all defaults)
|
|
PLPA_STANDALONE
|
|
PLPA_INIT([plpa_setup=happy], [plpa_setup=unhappy])
|
|
AS_IF([test "$plpa_setup" = "unhappy"],
|
|
[AC_MSG_ERROR([Cannot continue])])
|
|
|
|
# Setup libtool
|
|
AM_ENABLE_SHARED
|
|
AM_DISABLE_STATIC
|
|
AM_PROG_LIBTOOL
|
|
|
|
# Party on
|
|
AC_OUTPUT
|