configure: add a summary section at the end of configure output
This commit adds two m4 macros: OPAL_SUMMARY_ADD, OPAL_SUMMARY_PRINT. OPAL_SUMMARY_ADD adds an item to a section in the summary. For example OPAL_SUMMARY_ADD([[Transports]],[[Foo]],...,[yes]) will add the following to the summary: Transports ----------------------- Foo: yes With this commit two sections are added: Transports, Resource Managers. The OPAL_SUMMARY_PRINT macro is called after AC_OUTPUT and prints out some information about the build (version, projects, etc) and then the summarys sections. It will additionally print a warning if internal debugging is enabled. Example output: Open MPI configuration: ----------------------- Version: 3.0.0 a1 Build Open Platform Abstration project: yes Build Open Runtime project: yes Build Open MPI project: yes Build Open SHMEM project: no MPI C++ bindings (deprecated): no MPI Fortran bindings: mpif.h, use mpi, use mpi_f08 Debug build: yes Transports ----------------------- Cray uGNI (Gemini/Aries): no Intel Omnipath (PSM2): no KNEM Shared Memory: no Linux CMA IPC: no Mellanox MXM: no Open UCX: no OpenFabrics libfabric: no OpenFabrics Verbs: no portals4: no QLogic Infinipath (PSM): no tcp: yes XPMEM Shared Memory: no Resource Managers ----------------------- Cray Alps: no Grid Engine: no LSF: no Slurm: yes Torque: yes INTERNAL DEBUGGING IS ENABLED. DO NOT USE THIS BUILD FOR PERFORMANCE MEASUREMENTS! Signed-off-by: Nathan Hjelm <hjelmn@me.com>
Этот коммит содержится в:
родитель
d6fb56af29
Коммит
d2f5fca82a
@ -3,6 +3,8 @@ dnl
|
||||
dnl Copyright (c) 2001-2011 Mellanox Technologies Ltd. ALL RIGHTS RESERVED.
|
||||
dnl Copyright (c) 2015 Research Organization for Information Science
|
||||
dnl and Technology (RIST). All rights reserved.
|
||||
dnl Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
@ -16,6 +18,7 @@ dnl
|
||||
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
||||
# support, otherwise executes action-if-not-found
|
||||
AC_DEFUN([OMPI_CHECK_MXM],[
|
||||
if test -z "$ompi_check_mxm_happy" ; then
|
||||
AC_ARG_WITH([mxm],
|
||||
[AC_HELP_STRING([--with-mxm(=DIR)],
|
||||
[Build Mellanox Messaging support, optionally adding
|
||||
@ -37,7 +40,7 @@ AC_DEFUN([OMPI_CHECK_MXM],[
|
||||
AS_IF([test ! -z "$with_mxm_libdir" && test "$with_mxm_libdir" != "yes"],
|
||||
[ompi_check_mxm_libdir="$with_mxm_libdir"])
|
||||
|
||||
OPAL_CHECK_PACKAGE([$1],
|
||||
OPAL_CHECK_PACKAGE([ompi_check_mxm],
|
||||
[mxm/api/mxm_api.h],
|
||||
[mxm],
|
||||
[mxm_cleanup],
|
||||
@ -48,8 +51,6 @@ AC_DEFUN([OMPI_CHECK_MXM],[
|
||||
[ompi_check_mxm_happy="no"])],
|
||||
[ompi_check_mxm_happy="no"])
|
||||
|
||||
|
||||
|
||||
CPPFLAGS="$ompi_check_mxm_$1_save_CPPFLAGS"
|
||||
LDFLAGS="$ompi_check_mxm_$1_save_LDFLAGS"
|
||||
LIBS="$ompi_check_mxm_$1_save_LIBS"
|
||||
@ -77,8 +78,14 @@ AC_DEFUN([OMPI_CHECK_MXM],[
|
||||
|
||||
AS_IF([test "$ompi_mxm_version_ok" = "no"], [ompi_check_mxm_happy="no"])
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[Mellanox MXM]],[$1],[$ompi_check_mxm_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$ompi_check_mxm_happy" = "yes"],
|
||||
[$2],
|
||||
[$1_LDFLAGS="[$]$_LDFLAGS $ompi_check_mxm_LDFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $ompi_check_mxm_LIBS"
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $ompi_check_mxm_CPPFLAGS"
|
||||
$2],
|
||||
[AS_IF([test ! -z "$with_mxm" && test "$with_mxm" != "no"],
|
||||
[AC_MSG_ERROR([MXM support requested but not found. Aborting])])
|
||||
$3])
|
||||
|
@ -14,6 +14,8 @@ dnl Copyright (c) 2006 QLogic Corp. All rights reserved.
|
||||
dnl Copyright (c) 2009 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2015 Research Organization for Information Science
|
||||
dnl and Technology (RIST). All rights reserved.
|
||||
dnl Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
@ -27,6 +29,7 @@ dnl
|
||||
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
||||
# support, otherwise executes action-if-not-found
|
||||
AC_DEFUN([OMPI_CHECK_PSM],[
|
||||
if test -z "$ompi_check_psm_happy" ; then
|
||||
AC_ARG_WITH([psm],
|
||||
[AC_HELP_STRING([--with-psm(=DIR)],
|
||||
[Build PSM (Qlogic InfiniPath) support, optionally adding DIR/include, DIR/lib, and DIR/lib64 to the search path for headers and libraries])])
|
||||
@ -46,7 +49,7 @@ AC_DEFUN([OMPI_CHECK_PSM],[
|
||||
AS_IF([test ! -z "$with_psm_libdir" && test "$with_psm_libdir" != "yes"],
|
||||
[ompi_check_psm_libdir="$with_psm_libdir"])
|
||||
|
||||
OPAL_CHECK_PACKAGE([$1],
|
||||
OPAL_CHECK_PACKAGE([ompi_check_psm],
|
||||
[psm.h],
|
||||
[psm_infinipath],
|
||||
[psm_finalize],
|
||||
@ -65,8 +68,14 @@ AC_DEFUN([OMPI_CHECK_PSM],[
|
||||
[AC_MSG_WARN([PSM driver does not currently support progress threads. Disabling BTL.])
|
||||
ompi_check_psm_happy="no"])
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[QLogic Infinipath (PSM)]],[$1],[$ompi_check_psm_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$ompi_check_psm_happy" = "yes"],
|
||||
[$2],
|
||||
[$1_LDFLAGS="[$]$1_LDFLAGS $ompi_check_psm_LDFLAGS"
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $ompi_check_psm_CPPFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $ompi_check_psm_LIBS"
|
||||
$2],
|
||||
[AS_IF([test ! -z "$with_psm" && test "$with_psm" != "no"],
|
||||
[AC_MSG_ERROR([PSM support requested but not found. Aborting])])
|
||||
$3])
|
||||
|
@ -15,6 +15,8 @@
|
||||
# Copyright (c) 2014 Intel Corporation. All rights reserved.
|
||||
# Copyright (c) 2015 Research Organization for Information Science
|
||||
# and Technology (RIST). All rights reserved.
|
||||
# Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -28,6 +30,7 @@
|
||||
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
||||
# support, otherwise executes action-if-not-found
|
||||
AC_DEFUN([OMPI_CHECK_PSM2],[
|
||||
if test -z "$ompi_check_psm2_happy" ; then
|
||||
AC_ARG_WITH([psm2],
|
||||
[AC_HELP_STRING([--with-psm2(=DIR)],
|
||||
[Build PSM2 (Intel PSM2) support, optionally adding DIR/include, DIR/lib, and DIR/lib64 to the search path for headers and libraries])])
|
||||
@ -47,7 +50,7 @@ AC_DEFUN([OMPI_CHECK_PSM2],[
|
||||
AS_IF([test ! -z "$with_psm2_libdir" && test "$with_psm2_libdir" != "yes"],
|
||||
[ompi_check_psm2_libdir="$with_psm2_libdir"])
|
||||
|
||||
OPAL_CHECK_PACKAGE([$1],
|
||||
OPAL_CHECK_PACKAGE([ompi_check_psm2],
|
||||
[psm2.h],
|
||||
[psm2],
|
||||
[psm2_mq_irecv2],
|
||||
@ -66,8 +69,14 @@ AC_DEFUN([OMPI_CHECK_PSM2],[
|
||||
[AC_MSG_WARN([PSM2 driver does not currently support progress threads. Disabling MTL.])
|
||||
ompi_check_psm2_happy="no"])
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[Intel Omnipath (PSM2)]],[$1],[$ompi_check_psm2_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$ompi_check_psm2_happy" = "yes"],
|
||||
[$2],
|
||||
[$1_LDFLAGS="[$]$1_LDFLAGS $ompi_check_psm2_LDFLAGS"
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $ompi_check_psm2_CPPFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $ompi_check_psm2_LIBS"
|
||||
$2],
|
||||
[AS_IF([test ! -z "$with_psm2" && test "$with_psm2" != "no"],
|
||||
[AC_MSG_ERROR([PSM2 support requested but not found. Aborting])])
|
||||
$3])
|
||||
|
@ -3,6 +3,8 @@
|
||||
# Copyright (C) 2015 Mellanox Technologies Ltd. ALL RIGHTS RESERVED.
|
||||
# Copyright (c) 2015 Research Organization for Information Science
|
||||
# and Technology (RIST). All rights reserved.
|
||||
# Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -16,6 +18,7 @@
|
||||
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
||||
# support, otherwise executes action-if-not-found
|
||||
AC_DEFUN([OMPI_CHECK_UCX],[
|
||||
if test -z "$ompi_check_ucx_happy" ; then
|
||||
AC_ARG_WITH([ucx],
|
||||
[AC_HELP_STRING([--with-ucx(=DIR)],
|
||||
[Build with Unified Communication X library support])])
|
||||
@ -40,7 +43,7 @@ AC_DEFUN([OMPI_CHECK_UCX],[
|
||||
|
||||
ompi_check_ucx_extra_libs="-L$ompi_check_ucx_libdir"
|
||||
|
||||
OPAL_CHECK_PACKAGE([$1],
|
||||
OPAL_CHECK_PACKAGE([ompi_check_ucx],
|
||||
[ucp/api/ucp.h],
|
||||
[ucp],
|
||||
[ucp_cleanup],
|
||||
@ -73,8 +76,15 @@ AC_DEFUN([OMPI_CHECK_UCX],[
|
||||
|
||||
AS_IF([test "$ompi_ucx_version_ok" = "no"], [ompi_check_ucx_happy="no"])
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[Open UCX]],[$1],[$ompi_check_ucx_happy])
|
||||
fi
|
||||
|
||||
|
||||
AS_IF([test "$ompi_check_ucx_happy" = "yes"],
|
||||
[$2],
|
||||
[$1_CFLAGS="[$]$1_CFLAGS $ompi_check_ucx_CFLAGS"
|
||||
$1_LDFLAGS="[$]$1_LDFLAGS $ompi_check_ucx_LDFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $ompi_check_ucx_LIBS"
|
||||
$2],
|
||||
[AS_IF([test ! -z "$with_ucx" && test "$with_ucx" != "no"],
|
||||
[AC_MSG_ERROR([UCX support requested but not found. Aborting])])
|
||||
$3])
|
||||
|
@ -5,7 +5,7 @@
|
||||
# reserved.
|
||||
# Copyright (c) 2009-2010 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2010-2012 IBM Corporation. All rights reserved.
|
||||
# Copyright (c) 2013-2014 Los Alamos National Security, LLC. All rights
|
||||
# Copyright (c) 2013-2016 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
@ -18,29 +18,31 @@
|
||||
# --------------------------------------------------------
|
||||
# check if cma support is wanted.
|
||||
AC_DEFUN([OPAL_CHECK_CMA],[
|
||||
OPAL_VAR_SCOPE_PUSH([ompi_check_cma_happy ompi_check_cma_need_defs])
|
||||
if test -z "$ompi_check_cma_happy" ; then
|
||||
OPAL_VAR_SCOPE_PUSH([ompi_check_cma_need_defs ompi_check_cma_kernel_version])
|
||||
|
||||
ompi_check_cma_happy="no"
|
||||
AC_ARG_WITH([cma],
|
||||
[AC_HELP_STRING([--with-cma],
|
||||
[Build Cross Memory Attach support (default: no)])])
|
||||
|
||||
AC_MSG_CHECKING([if user requested CMA build])
|
||||
if test "$with_cma" = "yes" ; then
|
||||
ompi_check_cma_happy="yes"
|
||||
AC_MSG_RESULT([yes])
|
||||
# Enable CMA support by default if process_vm_readv is defined in glibc
|
||||
AC_CHECK_FUNC(process_vm_readv, [ompi_check_cma_need_defs=0],
|
||||
[ompi_check_cma_need_defs=1])
|
||||
# If the user specifically requests CMA go ahead and enable it even
|
||||
# if the glibc version does not support process_vm_readv
|
||||
if test $ompi_check_cma_need_defs = 0 || test "x$with_cma" = "xyes" ; then
|
||||
ompi_check_cma_happy="yes"
|
||||
AC_DEFINE_UNQUOTED([OPAL_CMA_NEED_SYSCALL_DEFS],
|
||||
[$ompi_check_cma_need_defs],
|
||||
[Need CMA syscalls defined])
|
||||
AC_CHECK_HEADERS([sys/prctl.h])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
AS_IF([test "$ompi_check_cma_happy" = "yes"],
|
||||
[$2],
|
||||
[$3])
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
])dnl
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[Linux CMA IPC]],[$1],[$ompi_check_cma_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$ompi_check_cma_happy" = "yes"], [$2], [$3])
|
||||
])
|
||||
|
@ -1,64 +0,0 @@
|
||||
# -*- shell-script ; indent-tabs-mode:nil -*-
|
||||
#
|
||||
# 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) 2009-2011 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2011-2014 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# Copyright (c) 2014 Intel, Inc. All rights reserved.
|
||||
# Copyright (c) 2014-2015 Research Organization for Information Science
|
||||
# and Technology (RIST). All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
#
|
||||
# special check for cray xpmem, uses macro(s) from pkg.m4
|
||||
#
|
||||
# OPAL_CHECK_CRAY_XPMEM(prefix, [action-if-found], [action-if-not-found])
|
||||
# --------------------------------------------------------
|
||||
AC_DEFUN([OPAL_CHECK_CRAY_XPMEM],[
|
||||
AC_ARG_WITH([cray_xpmem],
|
||||
[AC_HELP_STRING([--with-cray-xpmem(=yes/no)],
|
||||
[Build Cray XPMEM support(default: auto)])],
|
||||
[], with_cray_xpmem=auto)
|
||||
|
||||
AC_MSG_CHECKING([for Cray XPMEM support])
|
||||
AS_IF([test "$with_cray_xpmem" = "no"],
|
||||
[AC_MSG_RESULT([no])
|
||||
$3],
|
||||
[AS_IF([test "$with_cray_xpmem" = "auto" || test "$with_cray_xpmem" = "yes"],
|
||||
[PKG_CHECK_MODULES_STATIC([CRAY_XPMEM], [cray-xpmem],
|
||||
[opal_check_cray_xpmem_happy="yes"],
|
||||
[opal_check_cray_xpmem_happy="no"]
|
||||
[AS_IF([test "$with_cray_xpmem" = "yes"],
|
||||
[AC_MSG_WARN([Cray XPMEM support requested but pkg-config failed.])
|
||||
AC_MSG_ERROR([Aborting])],[])]
|
||||
)],
|
||||
[])
|
||||
])
|
||||
|
||||
AS_IF([test "$opal_check_cray_xpmem_happy" = "yes" && test "$enable_static" = "yes"],
|
||||
[CRAY_XPMEM_LIBS = $CRAY_XPMEM_STATIC_LIBS],[])
|
||||
|
||||
AS_IF([test "$opal_check_cray_xpmem_happy" = "yes"],
|
||||
[$1_LDFLAGS="$CRAY_XPMEM_LIBS"
|
||||
$1_CPPFLAGS="$CRAY_XPMEM_CFLAGS"
|
||||
$1_LIBS="$CRAY_XPMEM_LIBS"
|
||||
AC_DEFINE_UNQUOTED([HAVE_XPMEM_H], [1],[is xpmem.h available])
|
||||
$2], [$3])
|
||||
])
|
||||
|
||||
|
||||
|
@ -5,7 +5,7 @@ dnl of Tennessee Research Foundation. All rights
|
||||
dnl reserved.
|
||||
dnl Copyright (c) 2009-2010 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2010-2012 IBM Corporation. All rights reserved.
|
||||
dnl Copyright (c) 2014 Los Alamos National Security, LLC. All rights
|
||||
dnl Copyright (c) 2014-2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl Copyright (c) 2015 Research Organization for Information Science
|
||||
dnl and Technology (RIST). All rights reserved.
|
||||
@ -22,7 +22,8 @@ dnl
|
||||
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
||||
# support, otherwise executes action-if-not-found
|
||||
AC_DEFUN([OPAL_CHECK_KNEM],[
|
||||
OPAL_VAR_SCOPE_PUSH([opal_check_knem_happy opal_check_knem_$1_save_CPPFLAGS opal_check_knem_dir])
|
||||
if test -z "$opal_check_knem_happy" ; then
|
||||
OPAL_VAR_SCOPE_PUSH([opal_check_knem_$1_save_CPPFLAGS opal_check_knem_dir])
|
||||
AC_ARG_WITH([knem],
|
||||
[AC_HELP_STRING([--with-knem(=DIR)],
|
||||
[Build knem Linux kernel module support, searching for headers in DIR/include])])
|
||||
@ -30,40 +31,44 @@ AC_DEFUN([OPAL_CHECK_KNEM],[
|
||||
OPAL_CHECK_WITHDIR([knem], [$with_knem], [include/knem_io.h])
|
||||
opal_check_knem_$1_save_CPPFLAGS="$CPPFLAGS"
|
||||
|
||||
opal_check_knem_happy=no
|
||||
|
||||
AS_IF([test "$with_knem" != "no"],
|
||||
[AS_IF([test ! -z "$with_knem" && test "$with_knem" != "yes"],
|
||||
[opal_check_knem_dir="$with_knem"])
|
||||
|
||||
_OPAL_CHECK_PACKAGE_HEADER([$1],
|
||||
_OPAL_CHECK_PACKAGE_HEADER([ompi_check_knem],
|
||||
[knem_io.h],
|
||||
[$opal_check_knem_dir],
|
||||
[opal_check_knem_happy="yes"],
|
||||
[opal_check_knem_happy="no"])],
|
||||
[opal_check_knem_happy="no"])
|
||||
[])],
|
||||
[])
|
||||
|
||||
CPPFLAGS="$CPPFLAGS $$1_CPPFLAGS"
|
||||
CPPFLAGS="$CPPFLAGS $ompi_check_knem_CPPFLAGS"
|
||||
|
||||
# need at least version 0x0000000b
|
||||
AS_IF([test "$opal_check_knem_happy" = "yes"],
|
||||
[AC_CACHE_CHECK([for knem ABI version 0xb or later],
|
||||
[opal_cv_knem_version_ok],
|
||||
[AC_PREPROC_IFELSE(
|
||||
[AC_LANG_PROGRAM([
|
||||
if test "$opal_check_knem_happy" = "yes" ; then
|
||||
AC_PREPROC_IFELSE([AC_LANG_PROGRAM([
|
||||
#include <knem_io.h>
|
||||
],[
|
||||
#if KNEM_ABI_VERSION < 0xc
|
||||
#error "Version less than 0xc"
|
||||
#endif
|
||||
])],
|
||||
[opal_cv_knem_version_ok=yes],
|
||||
[opal_cv_knem_version_ok=no])])])
|
||||
[opal_check_knem_happy=yes],
|
||||
[opal_check_knem_happy=no])
|
||||
fi
|
||||
|
||||
CPPFLAGS="$opal_check_knem_$1_save_CPPFLAGS"
|
||||
|
||||
AS_IF([test "$opal_check_knem_happy" = "yes" && test "$opal_cv_knem_version_ok" = "yes"],
|
||||
[$2],
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[KNEM Shared Memory]],[$1],[$opal_check_knem_happy])
|
||||
OPAL_VAR_SCOPE_POP
|
||||
fi
|
||||
|
||||
AS_IF([test "$opal_check_knem_happy" = "yes"],
|
||||
[$1_CPPFLAGS="[$]$1_CPPFLAGS $ompi_check_knem_CPPFLAGS"
|
||||
$2],
|
||||
[AS_IF([test ! -z "$with_knem" && test "$with_knem" != "no"],
|
||||
[AC_MSG_ERROR([KNEM support requested but not found. Aborting])])
|
||||
$3])
|
||||
OPAL_VAR_SCOPE_POP
|
||||
])dnl
|
||||
|
@ -1,6 +1,8 @@
|
||||
dnl -*- shell-script -*-
|
||||
dnl
|
||||
dnl Copyright (c) 2015 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
@ -18,6 +20,7 @@ dnl
|
||||
# action-if-not-found.
|
||||
#
|
||||
AC_DEFUN([OPAL_CHECK_LIBFABRIC],[
|
||||
if test -z "$opal_check_libfabric_happy" ; then
|
||||
OPAL_VAR_SCOPE_PUSH([opal_check_libfabric_$1_save_CPPFLAGS opal_check_libfabric_$1_save_LDFLAGS opal_check_libfabric_$1_save_LIBS])
|
||||
|
||||
# Add --with options
|
||||
@ -38,11 +41,11 @@ AC_DEFUN([OPAL_CHECK_LIBFABRIC],[
|
||||
opal_check_libfabric_$1_save_LDFLAGS=$LDFLAGS
|
||||
opal_check_libfabric_$1_save_LIBS=$LIBS
|
||||
|
||||
opal_check_libfabric_happy=1
|
||||
opal_check_libfabric_happy=yes
|
||||
AS_IF([test "$with_libfabric" = "no"],
|
||||
[opal_check_libfabric_happy=0])
|
||||
[opal_check_libfabric_happy=no])
|
||||
|
||||
AS_IF([test $opal_check_libfabric_happy -eq 1],
|
||||
AS_IF([test $opal_check_libfabric_happy = yes],
|
||||
[AC_MSG_CHECKING([looking for libfabric in])
|
||||
AS_IF([test "$with_libfabric" != "yes"],
|
||||
[opal_libfabric_dir=$with_libfabric
|
||||
@ -53,31 +56,40 @@ AC_DEFUN([OPAL_CHECK_LIBFABRIC],[
|
||||
[opal_libfabric_libdir=$with_libfabric_libdir])
|
||||
])
|
||||
|
||||
AS_IF([test $opal_check_libfabric_happy -eq 1],
|
||||
[OPAL_CHECK_PACKAGE([$1],
|
||||
AS_IF([test $opal_check_libfabric_happy = yes],
|
||||
[OPAL_CHECK_PACKAGE([opal_check_libfabric],
|
||||
[rdma/fabric.h],
|
||||
[fabric],
|
||||
[fi_getinfo],
|
||||
[],
|
||||
[$opal_libfabric_dir],
|
||||
[$opal_libfabric_libdir],
|
||||
[opal_check_libfabric_happy=1],
|
||||
[opal_check_libfabric_happy=0])])
|
||||
[],
|
||||
[opal_check_libfabric_happy=no])])
|
||||
|
||||
CPPFLAGS=$opal_check_libfabric_$1_save_CPPFLAGS
|
||||
LDFLAGS=$opal_check_libfabric_$1_save_LDFLAGS
|
||||
LIBS=$opal_check_libfabric_$1_save_LIBS
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[OpenFabrics libfabric]],[$1],[$opal_check_libfabric_happy])
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
fi
|
||||
|
||||
if test $opal_check_libfabric_happy = yes ; then
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $opal_check_libfabric_CPPFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $opal_check_libfabric_LIBS"
|
||||
$1_LDFLAGS="[$]$1_LDFLAGS $opal_check_libfabric_LDFLAGS"
|
||||
|
||||
AC_SUBST($1_CPPFLAGS)
|
||||
AC_SUBST($1_LDFLAGS)
|
||||
AC_SUBST($1_LIBS)
|
||||
fi
|
||||
|
||||
AS_IF([test $opal_check_libfabric_happy -eq 1],
|
||||
AS_IF([test $opal_check_libfabric_happy = yes],
|
||||
[$2],
|
||||
[AS_IF([test "$opal_want_libfabric" = "yes"],
|
||||
[AC_MSG_WARN([libfabric support requested (via --with-libfabric), but not found.])
|
||||
AC_MSG_ERROR([Cannot continue.])])
|
||||
$3])
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
])dnl
|
||||
|
@ -11,7 +11,7 @@
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2015 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2006-2015 Los Alamos National Security, LLC. All rights
|
||||
# Copyright (c) 2006-2016 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# Copyright (c) 2006-2009 Mellanox Technologies. All rights reserved.
|
||||
# Copyright (c) 2010-2012 Oracle and/or its affiliates. All rights reserved.
|
||||
@ -38,6 +38,7 @@ AC_DEFUN([OPAL_CHECK_OPENFABRICS],[
|
||||
# verbs stuff lives.
|
||||
AC_REQUIRE([OPAL_CHECK_VERBS_DIR])
|
||||
|
||||
if test -z "$opal_check_openib_happy" ; then
|
||||
#
|
||||
# Add padding to OpenIB header
|
||||
#
|
||||
@ -88,7 +89,7 @@ AC_DEFUN([OPAL_CHECK_OPENFABRICS],[
|
||||
opal_check_openib_happy="no"])])
|
||||
|
||||
AS_IF([test "$opal_check_openib_happy" = "yes"],
|
||||
[OPAL_CHECK_PACKAGE([$1],
|
||||
[OPAL_CHECK_PACKAGE([opal_check_openib],
|
||||
[infiniband/verbs.h],
|
||||
[ibverbs],
|
||||
[ibv_open_device],
|
||||
@ -98,9 +99,9 @@ AC_DEFUN([OPAL_CHECK_OPENFABRICS],[
|
||||
[opal_check_openib_happy="yes"],
|
||||
[opal_check_openib_happy="no"])])
|
||||
|
||||
CPPFLAGS="$CPPFLAGS $$1_CPPFLAGS"
|
||||
LDFLAGS="$LDFLAGS $$1_LDFLAGS"
|
||||
LIBS="$LIBS $$1_LIBS"
|
||||
CPPFLAGS="$CPPFLAGS $opal_check_openib_CPPFLAGS"
|
||||
LDFLAGS="$LDFLAGS $opal_check_openib_LDFLAGS"
|
||||
LIBS="$LIBS $opal_check_openib_LIBS"
|
||||
|
||||
AS_IF([test "$opal_check_openib_happy" = "yes"],
|
||||
[AC_CACHE_CHECK(
|
||||
@ -134,9 +135,9 @@ AC_DEFUN([OPAL_CHECK_OPENFABRICS],[
|
||||
|
||||
# Set these up so that we can do an AC_DEFINE below
|
||||
# (unconditionally)
|
||||
$1_have_xrc=0
|
||||
$1_have_xrc_domains=0
|
||||
$1_have_opensm_devel=0
|
||||
opal_check_openib_have_xrc=0
|
||||
opal_check_openib_have_xrc_domains=0
|
||||
opal_check_openib_have_opensm_devel=0
|
||||
|
||||
# If we have the openib stuff available, find out what we've got
|
||||
AS_IF([test "$opal_check_openib_happy" = "yes"],
|
||||
@ -155,33 +156,33 @@ AC_DEFUN([OPAL_CHECK_OPENFABRICS],[
|
||||
# ibv_cmd_open_xrcd (aka XRC Domains) was added in OFED 3.12
|
||||
if test "$enable_connectx_xrc" = "yes"; then
|
||||
AC_CHECK_DECLS([IBV_DEVICE_XRC],
|
||||
[$1_have_xrc=1
|
||||
$1_have_xrc_domains=1],
|
||||
[opal_check_openib_have_xrc=1
|
||||
opal_check_openib_have_xrc_domains=1],
|
||||
[],
|
||||
[#include <infiniband/verbs.h>])
|
||||
fi
|
||||
if test "$enable_connectx_xrc" = "yes" \
|
||||
&& test $$1_have_xrc -eq 1; then
|
||||
&& test $opal_check_openib_have_xrc -eq 1; then
|
||||
AC_CHECK_DECLS([ibv_create_xrc_rcv_qp],
|
||||
[AC_CHECK_FUNCS([ibv_create_xrc_rcv_qp],
|
||||
[], [$1_have_xrc=0])],
|
||||
[$1_have_xrc=0],
|
||||
[], [opal_check_openib_have_xrc=0])],
|
||||
[opal_check_openib_have_xrc=0],
|
||||
[#include <infiniband/driver.h>])
|
||||
fi
|
||||
if test "$enable_connectx_xrc" = "yes" \
|
||||
&& test $$1_have_xrc_domains -eq 1; then
|
||||
&& test $opal_check_openib_have_xrc_domains -eq 1; then
|
||||
AC_CHECK_DECLS([ibv_cmd_open_xrcd],
|
||||
[AC_CHECK_DECLS([IBV_SRQT_XRC],
|
||||
[AC_CHECK_FUNCS([ibv_cmd_open_xrcd],
|
||||
[], [$1_have_xrc_domains=0])],
|
||||
[$1_have_xrc_domains=0],
|
||||
[], [opal_check_openib_have_xrc_domains=0])],
|
||||
[opal_check_openib_have_xrc_domains=0],
|
||||
[#include <infiniband/verbs.h>])],
|
||||
[$1_have_xrc_domains=0],
|
||||
[opal_check_openib_have_xrc_domains=0],
|
||||
[#include <infiniband/driver.h>])
|
||||
# XRC and XRC Domains should be considered as exclusive
|
||||
if test "$$1_have_xrc" -eq 1 && \
|
||||
test "$$1_have_xrc_domains" -eq 1; then
|
||||
$1_have_xrc=0
|
||||
if test "$opal_check_openib_have_xrc" -eq 1 && \
|
||||
test "$opal_check_openib_have_xrc_domains" -eq 1; then
|
||||
opal_check_openib_have_xrc=0
|
||||
fi
|
||||
fi
|
||||
|
||||
@ -194,13 +195,13 @@ AC_DEFUN([OPAL_CHECK_OPENFABRICS],[
|
||||
# ib_types.h, but it doesn't include any other IB-related files.
|
||||
AC_CHECK_HEADER([infiniband/complib/cl_types_osd.h],
|
||||
[AC_CHECK_LIB([osmcomp], [cl_map_init],
|
||||
[$1_have_opensm_devel=1],[])],
|
||||
[opal_check_openib_have_opensm_devel=1],[])],
|
||||
[],
|
||||
[])
|
||||
# Abort if dynamic SL support was explicitly requested but opensm-devel
|
||||
# package wasn't found. Otherwise, OMPI will be built w/o dynamic SL.
|
||||
AC_MSG_CHECKING([if can use dynamic SL support])
|
||||
AS_IF([test "$$1_have_opensm_devel" = "1"],
|
||||
AS_IF([test "$opal_check_openib_have_opensm_devel" = "1"],
|
||||
[AC_MSG_RESULT([yes])],
|
||||
[AC_MSG_RESULT([no])
|
||||
AS_IF([test "$enable_openib_dynamic_sl" = "yes"],
|
||||
@ -240,27 +241,27 @@ AC_DEFUN([OPAL_CHECK_OPENFABRICS],[
|
||||
[AC_INCLUDES_DEFAULT])])
|
||||
|
||||
AC_MSG_CHECKING([if ConnectX XRC support is enabled])
|
||||
AC_DEFINE_UNQUOTED([OPAL_HAVE_CONNECTX_XRC], [$$1_have_xrc],
|
||||
AC_DEFINE_UNQUOTED([OPAL_HAVE_CONNECTX_XRC], [$opal_check_openib_have_xrc],
|
||||
[Enable features required for ConnectX XRC support])
|
||||
if test "1" = "$$1_have_xrc"; then
|
||||
if test "1" = "$opal_check_openib_have_xrc"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING([if ConnectIB XRC support is enabled])
|
||||
AC_DEFINE_UNQUOTED([OPAL_HAVE_CONNECTX_XRC_DOMAINS], [$$1_have_xrc_domains],
|
||||
AC_DEFINE_UNQUOTED([OPAL_HAVE_CONNECTX_XRC_DOMAINS], [$opal_check_openib_have_xrc_domains],
|
||||
[Enable features required for XRC domains support])
|
||||
if test "1" = "$$1_have_xrc_domains"; then
|
||||
if test "1" = "$opal_check_openib_have_xrc_domains"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING([if dynamic SL is enabled])
|
||||
AC_DEFINE_UNQUOTED([OPAL_ENABLE_DYNAMIC_SL], [$$1_have_opensm_devel],
|
||||
AC_DEFINE_UNQUOTED([OPAL_ENABLE_DYNAMIC_SL], [$opal_check_openib_have_opensm_devel],
|
||||
[Enable features required for dynamic SL support])
|
||||
if test "1" = "$$1_have_opensm_devel"; then
|
||||
if test "1" = "$opal_check_openib_have_opensm_devel"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
$1_LIBS="-losmcomp $$1_LIBS"
|
||||
else
|
||||
@ -270,21 +271,32 @@ AC_DEFUN([OPAL_CHECK_OPENFABRICS],[
|
||||
AS_IF([test -z "$opal_verbs_dir"],
|
||||
[openib_include_dir="/usr/include"],
|
||||
[openib_include_dir="$opal_verbs_dir/include"])
|
||||
$1_CPPFLAGS="$$1_CPPFLAGS -I$openib_include_dir/infiniband"
|
||||
opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$openib_include_dir/infiniband"
|
||||
|
||||
CPPFLAGS="$ompi_check_openib_$1_save_CPPFLAGS"
|
||||
LDFLAGS="$ompi_check_openib_$1_save_LDFLAGS"
|
||||
LIBS="$ompi_check_openib_$1_save_LIBS"
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[OpenFabrics Verbs]],[$1],[$opal_check_openib_happy])
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
fi
|
||||
|
||||
$1_have_xrc=$opal_check_openib_have_xrc
|
||||
$1_have_xrc_domains=$opal_check_openib_have_xrc_domains
|
||||
$1_have_opensm_devel=$opal_check_openib_have_opensm_devel
|
||||
|
||||
AS_IF([test "$opal_check_openib_happy" = "yes"],
|
||||
[$2],
|
||||
[$1_CPPFLAGS="[$]$1_CPPFLAGS $opal_check_openib_CPPFLAGS"
|
||||
$1_LDFLAGS="[$]$1_LDFLAGS $opal_check_openib_LDFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $opal_check_openib_LIBS"
|
||||
$2],
|
||||
[AS_IF([test "$opal_want_verbs" = "yes"],
|
||||
[AC_MSG_WARN([Verbs support requested (via --with-verbs) but not found.])
|
||||
AC_MSG_WARN([If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs.])
|
||||
AC_MSG_ERROR([Aborting.])])
|
||||
$3])
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
])
|
||||
|
||||
AC_DEFUN([OPAL_CHECK_OPENFABRICS_CM_ARGS],[
|
||||
|
@ -14,6 +14,8 @@ dnl Copyright (c) 2006 QLogic Corp. All rights reserved.
|
||||
dnl Copyright (c) 2009 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2015 Research Organization for Information Science
|
||||
dnl and Technology (RIST). All rights reserved.
|
||||
dnl Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
@ -27,6 +29,7 @@ dnl
|
||||
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
||||
# support, otherwise executes action-if-not-found
|
||||
AC_DEFUN([OPAL_CHECK_PORTALS4],[
|
||||
if test -z "$ompi_check_portals4_happy" ; then
|
||||
AC_ARG_WITH([portals4],
|
||||
[AC_HELP_STRING([--with-portals4(=DIR)],
|
||||
[Build Portals4 support, optionally adding DIR/include, DIR/lib, and DIR/lib64 to the search path for headers and libraries])])
|
||||
@ -46,7 +49,7 @@ AC_DEFUN([OPAL_CHECK_PORTALS4],[
|
||||
AS_IF([test ! -z "$with_portals4_libdir" && test "$with_portals4_libdir" != "yes"],
|
||||
[ompi_check_portals4_libdir="$with_portals4_libdir"])
|
||||
|
||||
OPAL_CHECK_PACKAGE([$1],
|
||||
OPAL_CHECK_PACKAGE([opal_check_portals4],
|
||||
[portals4.h],
|
||||
[portals],
|
||||
[PtlLEAppend],
|
||||
@ -91,8 +94,14 @@ AC_DEFUN([OPAL_CHECK_PORTALS4],[
|
||||
AS_IF([test $max_md_size -ne 0 && test $max_va_size -ne 0],
|
||||
[AC_MSG_NOTICE([Portals 4 address space size: $max_md_size, $max_va_size])])
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[portals4]],[$1],[$ompi_check_portals4_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$ompi_check_portals4_happy" = "yes"],
|
||||
[$2],
|
||||
[$1_LDFLAGS="[$]$1_LDFLAGS $opal_check_portals4_LDFLAGS"
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $opal_check_portals4_CPPFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $opal_check_portals4_LIBS"
|
||||
$2],
|
||||
[AS_IF([test ! -z "$with_portals4" && test "$with_portals4" != "no"],
|
||||
[AC_MSG_ERROR([Portals4 support requested but not found. Aborting])])
|
||||
$3])
|
||||
|
@ -1,4 +1,4 @@
|
||||
dnl -*- Mode: Shell ; indent-tabs-mode:nil -*-
|
||||
dnl -*- Mode: Shell-script ; indent-tabs-mode:nil -*-
|
||||
dnl
|
||||
dnl Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
||||
dnl University Research and Technology
|
||||
@ -12,8 +12,8 @@ dnl Copyright (c) 2004-2006 The Regents of the University of California.
|
||||
dnl All rights reserved.
|
||||
dnl Copyright (c) 2006 QLogic Corp. All rights reserved.
|
||||
dnl Copyright (c) 2009 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2011-2014 Los Alamos National Security, LLC.
|
||||
dnl All rights reserved.
|
||||
dnl Copyright (c) 2011-2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl Copyright (c) 2014 Intel, Inc. All rights reserved
|
||||
dnl Copyright (c) 2015 Research Organization for Information Science
|
||||
dnl and Technology (RIST). All rights reserved.
|
||||
@ -32,6 +32,7 @@ dnl
|
||||
#
|
||||
|
||||
AC_DEFUN([OPAL_CHECK_UGNI], [
|
||||
if test -z "$opal_check_ugni_happy" ; then
|
||||
AC_ARG_WITH([ugni], [AC_HELP_STRING([--with-ugni],
|
||||
[Build support for Cray GNI. Set PKG_CONFIG_PATH env. variable to specify alternate path.])])
|
||||
|
||||
@ -40,17 +41,15 @@ AC_DEFUN([OPAL_CHECK_UGNI], [
|
||||
AS_IF([test "$with_ugni" = "no"],
|
||||
[opal_check_ugni_happy="no"],
|
||||
[PKG_CHECK_MODULES([CRAY_UGNI], [cray-ugni],
|
||||
[$1_LDFLAGS="$CRAY_UGNI_LIBS"
|
||||
$1_CPPFLAGS="$CRAY_UGNI_CFLAGS"
|
||||
opal_check_ugni_happy="yes"],
|
||||
[ opal_check_ugni_happy="no"])])
|
||||
[opal_check_ugni_happy="yes"],
|
||||
[opal_check_ugni_happy="no"])])
|
||||
|
||||
opal_check_ugni_$1_save_CPPFLAGS="$CPPFLAGS"
|
||||
opal_check_ugni_$1_save_LDFLAGS="$LDFLAGS"
|
||||
opal_check_ugni_$1_save_LIBS="$LIBS"
|
||||
|
||||
CPPFLAGS="$CPPFLAGS $$1_CPPFLAGS"
|
||||
LDFLAGS="$LDFLAGS $$1_LDFLAGS"
|
||||
if test "$opal_check_ugni_happy" = "yes" ; then
|
||||
CPPFLAGS="$CPPFLAGS $CRAY_UGNI_CFLAGS"
|
||||
LIBS="$LIBS $CRAY_UGNI_LIBS"
|
||||
# echo "+++++++++++++++++++++++CPPFLAGS",$CPPFLAGS
|
||||
# echo "+++++++++++++++++++++++LDFLAGSS",$LDFLAGS
|
||||
# echo "+++++++++++++++++++++++1_CPPFLAGS",$$1_CPPFLAGS
|
||||
@ -58,23 +57,24 @@ AC_DEFUN([OPAL_CHECK_UGNI], [
|
||||
|
||||
# sanity checks
|
||||
|
||||
AS_IF([test "$opal_check_ugni_happy" = "yes"],
|
||||
[AC_CHECK_HEADER([gni_pub.h],[],AC_MSG_ERROR(['gni_pub.h not found.']))
|
||||
AC_CHECK_FUNCS([GNI_GetJobResInfo])])
|
||||
|
||||
# AS_IF([test "$opal_check_ugni_happy" = "yes"],
|
||||
# [AC_CHECK_FUNCS([GNI_GetJobResInfo])])
|
||||
AC_CHECK_HEADER([gni_pub.h],[],AC_MSG_ERROR(['gni_pub.h not found.']))
|
||||
AC_CHECK_FUNCS([GNI_GetJobResInfo])
|
||||
|
||||
CPPFLAGS="$opal_check_ugni_$1_save_CPPFLAGS"
|
||||
LDFLAGS="$opal_check_ugni_$1_save_LDFLAGS"
|
||||
LIBS="$opal_check_ugni_$1_save_LIBS"
|
||||
fi
|
||||
|
||||
AS_IF([test "$opal_check_ugni_happy" = "yes" && test "$enable_progress_threads" = "yes"],
|
||||
[AC_MSG_WARN([GNI driver does not currently support progress threads. Disabling.])
|
||||
opal_check_ugni_happy="no"])
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[Cray uGNI (Gemini/Aries)]],[$1],[$opal_check_ugni_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$opal_check_ugni_happy" = "yes"],
|
||||
[$2],
|
||||
[$1_CPPFLAGS="[$]$1_CPPFLAGS $CRAY_UGNI_CFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $CRAY_UGNI_LIBS"
|
||||
$2],
|
||||
[AS_IF([test ! -z "$with_ugni" && test "$with_ugni" != "no"],
|
||||
[AC_MSG_ERROR([GNI support requested but not found. Cannot continue.])])
|
||||
$3])
|
||||
|
112
config/opal_check_xpmem.m4
Обычный файл
112
config/opal_check_xpmem.m4
Обычный файл
@ -0,0 +1,112 @@
|
||||
# -*- shell-script ; indent-tabs-mode:nil -*-
|
||||
#
|
||||
# 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) 2009-2011 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2011-2016 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# Copyright (c) 2014 Intel, Inc. All rights reserved.
|
||||
# Copyright (c) 2014-2015 Research Organization for Information Science
|
||||
# and Technology (RIST). All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
#
|
||||
# special check for cray xpmem, uses macro(s) from pkg.m4
|
||||
#
|
||||
# OPAL_CHECK_CRAY_XPMEM(prefix, [action-if-found], [action-if-not-found])
|
||||
# --------------------------------------------------------
|
||||
AC_DEFUN([OPAL_CHECK_CRAY_XPMEM],[
|
||||
if test -z "$opal_check_cray_xpmem_happy" ; then
|
||||
AC_ARG_WITH([cray_xpmem],
|
||||
[AC_HELP_STRING([--with-cray-xpmem(=yes/no)],
|
||||
[Build Cray XPMEM support(default: auto)])],
|
||||
[], with_cray_xpmem=auto)
|
||||
|
||||
AC_MSG_CHECKING([for Cray XPMEM support])
|
||||
AS_IF([test "$with_cray_xpmem" = "no"],
|
||||
[AC_MSG_RESULT([no])
|
||||
$3],
|
||||
[AS_IF([test "$with_cray_xpmem" = "auto" || test "$with_cray_xpmem" = "yes"],
|
||||
[PKG_CHECK_MODULES_STATIC([CRAY_XPMEM], [cray-xpmem],
|
||||
[opal_check_cray_xpmem_happy="yes"],
|
||||
[opal_check_cray_xpmem_happy="no"]
|
||||
[AS_IF([test "$with_cray_xpmem" = "yes"],
|
||||
[AC_MSG_WARN([Cray XPMEM support requested but pkg-config failed.])
|
||||
AC_MSG_ERROR([Aborting])],[])]
|
||||
)],
|
||||
[])
|
||||
])
|
||||
|
||||
AS_IF([test "$opal_check_cray_xpmem_happy" = "yes" && test "$enable_static" = "yes"],
|
||||
[CRAY_XPMEM_LIBS = $CRAY_XPMEM_STATIC_LIBS],[])
|
||||
fi
|
||||
|
||||
AS_IF([test "$opal_check_cray_xpmem_happy" = "yes"],
|
||||
[$1_LDFLAGS="[$]$1_LDFLAGS $CRAY_XPMEM_LIBS"
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $CRAY_XPMEM_CFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $CRAY_XPMEM_LIBS"
|
||||
AC_DEFINE_UNQUOTED([HAVE_XPMEM_H], [1],[is xpmem.h available])
|
||||
$2], [$3])
|
||||
])
|
||||
|
||||
# OPAL_CHECK_XPMEM(prefix, [action-if-found], [action-if-not-found])
|
||||
# --------------------------------------------------------
|
||||
# check if XPMEM support can be found. sets prefix_{CPPFLAGS,
|
||||
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
||||
# support, otherwise executes action-if-not-found
|
||||
AC_DEFUN([OPAL_CHECK_XPMEM], [
|
||||
if test -z "$opal_check_xpmem_happy" ; then
|
||||
# check for a cray installed xpmem first
|
||||
OPAL_CHECK_CRAY_XPMEM([opal_check_xpmem],[opal_check_xpmem_happy=yes],[opal_check_xpmem_happy=no])
|
||||
|
||||
if test "$opal_check_xpmem_happy" = no ; then
|
||||
AC_ARG_WITH([xpmem],
|
||||
[AC_HELP_STRING([--with-xpmem(=DIR)],
|
||||
[Build with XPMEM kernel module support, searching for headers in DIR])])
|
||||
OPAL_CHECK_WITHDIR([xpmem], [$with_xpmem], [include/xpmem.h])
|
||||
|
||||
AC_ARG_WITH([xpmem-libdir],
|
||||
[AC_HELP_STRING([--with-xpmem-libdir=DIR],
|
||||
[Search for XPMEM library in DIR])])
|
||||
OPAL_CHECK_WITHDIR([xpmem-libdir], [$with_xpmem_libdir], [libxpmem.*])
|
||||
|
||||
if test ! "$with_xpmem" = "no" ; then
|
||||
if test ! -z "$with_xpmem" && test "$with_xpmem" != "yes" ; then
|
||||
opal_check_xpmem_dir="$with_xpmem"
|
||||
fi
|
||||
|
||||
if test ! -z "$with_xpmem_libdir" && test "$with_xpmem_libdir" != "yes" ; then
|
||||
opal_check_xpmem_libdir="$with_xpmem_libdir"
|
||||
fi
|
||||
|
||||
OPAL_CHECK_PACKAGE([opal_check_xpmem],[xpmem.h],[xpmem],[xpmem_make],[],
|
||||
[$opal_check_xpmem_dir],[$opal_check_xpmem_libdir], [opal_check_xpmem_happy="yes"], [])
|
||||
|
||||
if test "$opal_check_xpmem_happy" = "no" && test -n "$with_xpmem" && test "$with_xpmem" != "yes" ; then
|
||||
AC_MSG_ERROR([XPMEM support requested but not found. Aborting])
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[XPMEM Shared Memory]],[$1],[$opal_check_cray_xpmem_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$opal_check_xpmem_happy" = "yes"], [
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $opal_check_xpmem_CPPFLAGS"
|
||||
$1_LDFLAGS="[$]$1_LDFLAGS $opal_check_xpmem_LDFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $opal_check_xpmem_LIBS"
|
||||
$2], [$3])
|
||||
])dnl
|
110
config/opal_summary.m4
Обычный файл
110
config/opal_summary.m4
Обычный файл
@ -0,0 +1,110 @@
|
||||
dnl -*- shell-script -*-
|
||||
dnl
|
||||
dnl Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
dnl
|
||||
dnl $HEADER$
|
||||
dnl
|
||||
AC_DEFUN([OMPI_SUMMARY_ADD],[
|
||||
OPAL_VAR_SCOPE_PUSH([ompi_summary_section ompi_summary_line ompi_summary_section_current])
|
||||
|
||||
dnl need to replace spaces in the section name with somethis else. _ seems like a reasonable
|
||||
dnl choice. if this changes remember to change OMPI_PRINT_SUMMARY as well.
|
||||
ompi_summary_section=$(echo $1 | tr ' ' '_')
|
||||
ompi_summary_line="$2: $4"
|
||||
ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
|
||||
|
||||
if test -z "$ompi_summary_section_current" ; then
|
||||
if test -z "$ompi_summary_sections" ; then
|
||||
ompi_summary_sections=$ompi_summary_section
|
||||
else
|
||||
ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
|
||||
fi
|
||||
eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
|
||||
else
|
||||
eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
|
||||
fi
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
])
|
||||
|
||||
AC_DEFUN([OMPI_SUMMARY_PRINT],[
|
||||
OPAL_VAR_SCOPE_PUSH([ompi_summary_section ompi_summary_section_name])
|
||||
echo "\nOpen MPI configuration:"
|
||||
echo "-----------------------"
|
||||
echo "Version: $OMPI_MAJOR_VERSION.$OMPI_MINOR_VERSION.$OMPI_RELEASE_VERSION $OMPI_GREEK_VERSION"
|
||||
|
||||
dnl Print out which projects will be built
|
||||
echo "Build Open Platform Abstration project: yes"
|
||||
if test "$project_orte_amc" = "true" ; then
|
||||
echo "Build Open Runtime project: yes"
|
||||
else
|
||||
echo "Build Open Runtime project: no"
|
||||
fi
|
||||
|
||||
if test "$project_ompi_amc" = "true" ; then
|
||||
echo "Build Open MPI project: yes"
|
||||
else
|
||||
echo "Build Open MPI project: no"
|
||||
fi
|
||||
|
||||
if test "$project_shmem_amc" = "true" ; then
|
||||
echo "Build Open SHMEM project: yes"
|
||||
else
|
||||
echo "Build Open SHMEM project: no"
|
||||
fi
|
||||
|
||||
dnl Print out the bindings if we are building OMPI
|
||||
if test "$project_ompi_amc" = "true" ; then
|
||||
if test x$enable_mpi_cxx = xyes ; then
|
||||
echo "MPI C++ bindings (deprecated): yes"
|
||||
else
|
||||
echo "MPI C++ bindings (deprecated): no"
|
||||
fi
|
||||
|
||||
if test $OMPI_BUILD_FORTRAN_BINDINGS = $OMPI_FORTRAN_MPIFH_BINDINGS ; then
|
||||
echo "MPI Fortran bindings: mpif.h"
|
||||
elif test $OMPI_BUILD_FORTRAN_BINDINGS = $OMPI_FORTRAN_USEMPI_BINDINGS ; then
|
||||
echo "MPI Fortran bindings: mpif.h, use mpi"
|
||||
elif test $OMPI_BUILD_FORTRAN_BINDINGS = $OMPI_FORTRAN_USEMPIF08_BINDINGS ; then
|
||||
echo "MPI Fortran bindings: mpif.h, use mpi, use mpi_f08"
|
||||
else
|
||||
echo "MPI Fortran bindings: no"
|
||||
fi
|
||||
|
||||
if test x$opal_java_happy = xyes ; then
|
||||
echo "MPI Java bindings (experimental): yes"
|
||||
else
|
||||
echo "MPI Java bindings (experimental): no"
|
||||
fi
|
||||
fi
|
||||
|
||||
if test $WANT_DEBUG = 0 ; then
|
||||
echo "Debug build: no"
|
||||
else
|
||||
echo "Debug build: yes"
|
||||
fi
|
||||
|
||||
if test ! -z $with_platform ; then
|
||||
echo "Platform file: $with_platform"
|
||||
fi
|
||||
|
||||
echo
|
||||
|
||||
for ompi_summary_section in $(echo $ompi_summary_sections) ; do
|
||||
ompi_summary_section_name=$(echo $ompi_summary_section | tr '_' ' ')
|
||||
echo "$ompi_summary_section_name"
|
||||
echo "-----------------------"
|
||||
echo "$(eval echo \$ompi_summary_values_$ompi_summary_section)" | tr ',' $'\n' | sort -f
|
||||
echo
|
||||
done
|
||||
|
||||
if test $WANT_DEBUG = 1 ; then
|
||||
echo "INTERNAL DEBUGGING IS ENABLED. DO NOT USE THIS BUILD FOR PERFORMANCE MEASUREMENTS!\n"
|
||||
fi
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
])
|
@ -13,6 +13,8 @@ dnl All rights reserved.
|
||||
dnl Copyright (c) 2009 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2015 Research Organization for Information Science
|
||||
dnl and Technology (RIST). All rights reserved.
|
||||
dnl Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
@ -81,7 +83,7 @@ AC_DEFUN([ORTE_CHECK_ALPS_CLE4],[
|
||||
# ORTE_CHECK_ALPS(prefix, [action-if-found], [action-if-not-found])
|
||||
# --------------------------------------------------------
|
||||
AC_DEFUN([ORTE_CHECK_ALPS],[
|
||||
if test -z "$orte_check_alps_happy"; then
|
||||
if test -z "$orte_check_cray_alps_happy"; then
|
||||
|
||||
AC_ARG_WITH([alps],
|
||||
[AC_HELP_STRING([--with-alps(=DIR|yes|no)],
|
||||
@ -155,16 +157,15 @@ AC_DEFUN([ORTE_CHECK_ALPS],[
|
||||
CRAY_ALPSUTIL_LIBS = $CRAY_ALPSUTIL_STATIC_LIBS],
|
||||
[])
|
||||
|
||||
AS_IF([test "$orte_check_cray_alps_happy" = "yes"],
|
||||
[$1_LDFLAGS="$CRAY_ALPSLLI_LIBS $CRAY_ALPSUTIL_LIBS"
|
||||
$1_CPPFLAGS="$CRAY_ALPSLLI_CFLAGS $CRAY_ALPSUTIL_CFLAGS $CRAY_ALPS_CFLAGS $CRAY_WLM_DETECT_CFLAGS"
|
||||
$1_LIBS="$CRAY_ALPSLLI_LIBS $CRAY_ALPSUTIL_LIBS $CRAY_WLM_DETECT_LIBS"
|
||||
$1_WRAPPER_EXTRA_LDFLAGS="$CRAY_ALPSLLI_LIBS $CRAY_ALPSUTIL_LIBS $CRAY_WLM_DETECT_LIBS"
|
||||
$1_WRAPPER_EXTRA_LIBS="$CRAY_ALPSLLI_LIBS $CRAY_ALPSUTIL_LIBS $CRAY_WLM_DETECT_LIBS"],
|
||||
[])
|
||||
|
||||
OMPI_SUMMARY_ADD([[Resource Managers]],[[Cray Alps]],[$1],[$orte_check_cray_alps_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$orte_check_cray_alps_happy" = "yes"],
|
||||
[$2], [$3])
|
||||
[$1_LDFLAGS="[$]$1_LDFLAGS $CRAY_ALPSLLI_LIBS $CRAY_ALPSUTIL_LIBS"
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $CRAY_ALPSLLI_CFLAGS $CRAY_ALPSUTIL_CFLAGS $CRAY_ALPS_CFLAGS $CRAY_WLM_DETECT_CFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $CRAY_ALPSLLI_LIBS $CRAY_ALPSUTIL_LIBS $CRAY_WLM_DETECT_LIBS"
|
||||
$1_WRAPPER_EXTRA_LDFLAGS="$CRAY_ALPSLLI_LIBS $CRAY_ALPSUTIL_LIBS $CRAY_WLM_DETECT_LIBS"
|
||||
$1_WRAPPER_EXTRA_LIBS="$CRAY_ALPSLLI_LIBS $CRAY_ALPSUTIL_LIBS $CRAY_WLM_DETECT_LIBS"
|
||||
$2],
|
||||
[$3])
|
||||
])
|
||||
|
@ -13,6 +13,8 @@ dnl All rights reserved.
|
||||
dnl Copyright (c) 2007-2009 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2015 Research Organization for Information Science
|
||||
dnl and Technology (RIST). All rights reserved.
|
||||
dnl Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
@ -24,6 +26,7 @@ dnl
|
||||
# ORTE_CHECK_LSF(prefix, [action-if-found], [action-if-not-found])
|
||||
# --------------------------------------------------------
|
||||
AC_DEFUN([ORTE_CHECK_LSF],[
|
||||
if test -z "$orte_check_lsf_happy" ; then
|
||||
AC_ARG_WITH([lsf],
|
||||
[AC_HELP_STRING([--with-lsf(=DIR)],
|
||||
[Build LSF support])])
|
||||
@ -105,7 +108,7 @@ AC_DEFUN([ORTE_CHECK_LSF],[
|
||||
AC_MSG_RESULT([$ls_info_lsf_happy])
|
||||
AC_MSG_CHECKING([for liblsf yp requirements])
|
||||
AC_MSG_RESULT([$yp_all_nsl_happy])
|
||||
OPAL_CHECK_PACKAGE([$1],
|
||||
OPAL_CHECK_PACKAGE([orte_check_lsf],
|
||||
[lsf/lsbatch.h],
|
||||
[bat],
|
||||
[lsb_launch],
|
||||
@ -119,16 +122,17 @@ AC_DEFUN([ORTE_CHECK_LSF],[
|
||||
LDFLAGS="$orte_check_lsf_$1_save_LDFLAGS"
|
||||
LIBS="$orte_check_lsf_$1_save_LIBS"
|
||||
|
||||
OMPI_SUMMARY_ADD([[Resource Managers]],[[LSF]],[$1],[$orte_check_lsf_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$orte_check_lsf_happy" = "yes"],
|
||||
[$1_LIBS="[$]$1_LIBS $orte_check_lsf_LIBS"
|
||||
$1_LDFLAGS="[$]$1_LDFLAGS $orte_check_lsf_LDFLAGS"
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $orte_check_lsf_CPPFLAGS"
|
||||
# add the LSF libraries to static builds as they are required
|
||||
$1_WRAPPER_EXTRA_LDFLAGS=[$]$1_LDFLAGS
|
||||
$1_WRAPPER_EXTRA_LIBS=[$]$1_LIBS
|
||||
|
||||
# Reset for the next time we're called
|
||||
orte_check_lsf_dir=
|
||||
orte_check_lsf_libdir=
|
||||
|
||||
AS_IF([test "$orte_check_lsf_happy" = "yes"],
|
||||
[$2],
|
||||
$2],
|
||||
[AS_IF([test ! -z "$with_lsf" && test "$with_lsf" != "no"],
|
||||
[AC_MSG_WARN([LSF support requested (via --with-lsf) but not found.])
|
||||
AC_MSG_ERROR([Aborting.])])
|
||||
|
@ -11,6 +11,8 @@
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2009 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -26,12 +28,13 @@
|
||||
# ORTE_CHECK_GRIDENGINE(prefix, [action-if-found], [action-if-not-found])
|
||||
# --------------------------------------------------------
|
||||
AC_DEFUN([ORTE_CHECK_GRIDENGINE],[
|
||||
if test -z "$orte_gridengine_build" ; then
|
||||
AC_ARG_WITH([sge],
|
||||
[AC_HELP_STRING([--with-sge],
|
||||
[Build SGE or Grid Engine support (default: no)])])
|
||||
|
||||
AC_MSG_CHECKING([if user requested SGE build])
|
||||
orte_gridengine_build=
|
||||
orte_gridengine_build="no"
|
||||
AS_IF([test "$with_sge" = "yes"],
|
||||
[AC_MSG_RESULT([yes])
|
||||
orte_gridengine_build=yes],
|
||||
@ -47,6 +50,9 @@ AC_DEFUN([ORTE_CHECK_GRIDENGINE],[
|
||||
orte_gridengine_build=yes],
|
||||
[AC_MSG_RESULT([not found])])])])])
|
||||
|
||||
OMPI_SUMMARY_ADD([[Resource Managers]],[[Grid Engine]],[$1],[$orte_gridengine_build])
|
||||
fi
|
||||
|
||||
AS_IF([test "$orte_gridengine_build" = "yes"],
|
||||
[$2],
|
||||
[$3])
|
||||
|
@ -11,6 +11,8 @@
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2009 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -21,6 +23,7 @@
|
||||
# ORTE_CHECK_SLURM(prefix, [action-if-found], [action-if-not-found])
|
||||
# --------------------------------------------------------
|
||||
AC_DEFUN([ORTE_CHECK_SLURM],[
|
||||
if test -z "$orte_check_slurm_happy" ; then
|
||||
AC_ARG_WITH([slurm],
|
||||
[AC_HELP_STRING([--with-slurm],
|
||||
[Build SLURM scheduler component (default: yes)])])
|
||||
@ -65,6 +68,9 @@ AC_DEFUN([ORTE_CHECK_SLURM],[
|
||||
[orte_check_slurm_happy="yes"],
|
||||
[orte_check_slurm_happy="no"])])
|
||||
|
||||
OMPI_SUMMARY_ADD([[Resource Managers]],[[Slurm]],[$1],[$orte_check_slurm_happy])
|
||||
fi
|
||||
|
||||
AS_IF([test "$orte_check_slurm_happy" = "yes"],
|
||||
[$2],
|
||||
[$3])
|
||||
|
@ -13,6 +13,8 @@ dnl All rights reserved.
|
||||
dnl Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2015 Research Organization for Information Science
|
||||
dnl and Technology (RIST). All rights reserved.
|
||||
dnl Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
@ -43,7 +45,9 @@ AC_DEFUN([ORTE_CHECK_TM_LIBS_FLAGS],[
|
||||
# ORTE_CHECK_TM(prefix, [action-if-found], [action-if-not-found])
|
||||
# --------------------------------------------------------
|
||||
AC_DEFUN([ORTE_CHECK_TM],[
|
||||
OPAL_VAR_SCOPE_PUSH([orte_check_tm_found orte_check_tm_happy orte_check_tm_dir orte_check_tm_pbs_config LDFLAGS_save CPPFLAGS_save LIBS_save])
|
||||
if test -z $orte_check_tm_happy ; then
|
||||
OPAL_VAR_SCOPE_PUSH([orte_check_tm_found orte_check_tm_dir orte_check_tm_pbs_config orte_check_tm_LDFLAGS_save orte_check_tm_CPPFLAGS_save orte_check_tm_LIBS_save])
|
||||
|
||||
AC_ARG_WITH([tm],
|
||||
[AC_HELP_STRING([--with-tm(=DIR)],
|
||||
[Build TM (Torque, PBSPro, and compatible) support, optionally adding DIR/include, DIR/lib, and DIR/lib64 to the search path for headers and libraries])])
|
||||
@ -70,32 +74,32 @@ AC_DEFUN([ORTE_CHECK_TM],[
|
||||
# do simplistic tests looking for the tm headers and symbols
|
||||
|
||||
AS_IF([test "$orte_check_tm_happy" = "yes" && test "$orte_check_tm_pbs_config" != "not found"],
|
||||
[$1_CPPFLAGS=`$orte_check_tm_pbs_config --cflags`
|
||||
OPAL_LOG_MSG([$1_CPPFLAGS from pbs-config: $$1_CPPFLAGS], 1)
|
||||
[orte_check_tm_CPPFLAGS=`$orte_check_tm_pbs_config --cflags`
|
||||
OPAL_LOG_MSG([orte_check_tm_CPPFLAGS from pbs-config: $orte_check_tm_CPPFLAGS], 1)
|
||||
|
||||
ORTE_CHECK_TM_LIBS_FLAGS([$1], [LDFLAGS])
|
||||
OPAL_LOG_MSG([$1_LDFLAGS from pbs-config: $$1_LDFLAGS], 1)
|
||||
ORTE_CHECK_TM_LIBS_FLAGS([orte_check_tm], [LDFLAGS])
|
||||
OPAL_LOG_MSG([orte_check_tm_LDFLAGS from pbs-config: $orte_check_tm_LDFLAGS], 1)
|
||||
|
||||
ORTE_CHECK_TM_LIBS_FLAGS([$1], [LIBS])
|
||||
OPAL_LOG_MSG([$1_LIBS from pbs-config: $$1_LIBS], 1)
|
||||
ORTE_CHECK_TM_LIBS_FLAGS([orte_check_tm], [LIBS])
|
||||
OPAL_LOG_MSG([orte_check_tm_LIBS from pbs-config: $orte_check_tm_LIBS], 1)
|
||||
|
||||
# Now that we supposedly have the right flags, try them out.
|
||||
|
||||
CPPFLAGS_save="$CPPFLAGS"
|
||||
LDFLAGS_save="$LDFLAGS"
|
||||
LIBS_save="$LIBS"
|
||||
orte_check_tm_CPPFLAGS_save="$CPPFLAGS"
|
||||
orte_check_tm_LDFLAGS_save="$LDFLAGS"
|
||||
orte_check_tm_LIBS_save="$LIBS"
|
||||
|
||||
CPPFLAGS="$CPPFLAGS $$1_CPPFLAGS"
|
||||
LIBS="$LIBS $$1_LIBS"
|
||||
LDFLAGS="$LDFLAGS $$1_LDFLAGS"
|
||||
CPPFLAGS="$CPPFLAGS $orte_check_tm_CPPFLAGS"
|
||||
LIBS="$LIBS $orte_check_tm_LIBS"
|
||||
LDFLAGS="$LDFLAGS $orte_check_tm_LDFLAGS"
|
||||
|
||||
AC_CHECK_HEADER([tm.h],
|
||||
[AC_CHECK_FUNC([tm_finalize],
|
||||
[orte_check_tm_found="yes"])])
|
||||
|
||||
CPPFLAGS="$CPPFLAGS_save"
|
||||
LDFLAGS="$LDFLAGS_save"
|
||||
LIBS="$LIBS_save"])
|
||||
CPPFLAGS="$orte_check_tm_CPPFLAGS_save"
|
||||
LDFLAGS="$orte_check_tm_LDFLAGS_save"
|
||||
LIBS="$orte_check_tm_LIBS_save"])
|
||||
|
||||
# If we don't have pbs-config, then we have to look around
|
||||
# manually.
|
||||
@ -108,27 +112,23 @@ AC_DEFUN([ORTE_CHECK_TM],[
|
||||
orte_check_package_$1_save_LDFLAGS="$LDFLAGS"
|
||||
orte_check_package_$1_save_LIBS="$LIBS"
|
||||
|
||||
orte_check_package_$1_orig_CPPFLAGS="$$1_CPPFLAGS"
|
||||
orte_check_package_$1_orig_LDFLAGS="$$1_LDFLAGS"
|
||||
orte_check_package_$1_orig_LIBS="$$1_LIBS"
|
||||
|
||||
AS_IF([test "$orte_check_tm_found" = "no"],
|
||||
[AS_IF([test "$orte_check_tm_happy" = "yes"],
|
||||
[_OPAL_CHECK_PACKAGE_HEADER([$1],
|
||||
[_OPAL_CHECK_PACKAGE_HEADER([orte_check_tm],
|
||||
[tm.h],
|
||||
[$orte_check_tm_dir],
|
||||
[orte_check_tm_found="yes"],
|
||||
[orte_check_tm_found="no"])])
|
||||
|
||||
AS_IF([test "$orte_check_tm_found" = "yes"],
|
||||
[_OPAL_CHECK_PACKAGE_LIB([$1],
|
||||
[_OPAL_CHECK_PACKAGE_LIB([orte_check_tm],
|
||||
[pbs],
|
||||
[tm_init],
|
||||
[],
|
||||
[$orte_check_tm_dir],
|
||||
[$orte_check_tm_libdir],
|
||||
[orte_check_tm_found="yes"],
|
||||
[_OPAL_CHECK_PACKAGE_LIB([$1],
|
||||
[_OPAL_CHECK_PACKAGE_LIB([orte_check_tm],
|
||||
[torque],
|
||||
[tm_init],
|
||||
[],
|
||||
@ -141,16 +141,26 @@ AC_DEFUN([ORTE_CHECK_TM],[
|
||||
LDFLAGS="$orte_check_package_$1_save_LDFLAGS"
|
||||
LIBS="$orte_check_package_$1_save_LIBS"
|
||||
|
||||
if test "$orte_check_tm_found" = "no" ; then
|
||||
orte_check_tm_happy=no
|
||||
fi
|
||||
|
||||
OMPI_SUMMARY_ADD([[Resource Managers]],[[Torque]],[$1],[$orte_check_tm_happy])
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
fi
|
||||
|
||||
# Did we find the right stuff?
|
||||
AS_IF([test "$orte_check_tm_happy" = "yes"],
|
||||
[$1_LIBS="[$]$1_LIBS $orte_check_tm_LIBS"
|
||||
$1_LDFLAGS="[$]$1_LDFLAGS $orte_check_tm_LDFLAGS"
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $orte_check_tm_CPPFLAGS"
|
||||
# add the TM libraries to static builds as they are required
|
||||
$1_WRAPPER_EXTRA_LDFLAGS=[$]$1_LDFLAGS
|
||||
$1_WRAPPER_EXTRA_LIBS=[$]$1_LIBS
|
||||
|
||||
# Did we find the right stuff?
|
||||
AS_IF([test "$orte_check_tm_happy" = "yes" && test "$orte_check_tm_found" = "yes"],
|
||||
[$2],
|
||||
$2],
|
||||
[AS_IF([test ! -z "$with_tm" && test "$with_tm" != "no"],
|
||||
[AC_MSG_ERROR([TM support requested but not found. Aborting])])
|
||||
orte_check_tm_happy="no"
|
||||
$3])
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
])
|
||||
|
@ -1391,3 +1391,5 @@ m4_ifdef([project_ompi], [OMPI_CONFIG_FILES])
|
||||
m4_ifdef([project_oshmem], [OSHMEM_CONFIG_FILES])
|
||||
|
||||
AC_OUTPUT
|
||||
|
||||
OMPI_SUMMARY_PRINT
|
||||
|
@ -39,7 +39,7 @@ AC_DEFUN([MCA_opal_btl_openib_POST_CONFIG], [
|
||||
AC_DEFUN([MCA_opal_btl_openib_CONFIG],[
|
||||
AC_CONFIG_FILES([opal/mca/btl/openib/Makefile])
|
||||
|
||||
OPAL_VAR_SCOPE_PUSH([cpcs LDFLAGS_save LIBS_save])
|
||||
OPAL_VAR_SCOPE_PUSH([cpcs btl_openib_LDFLAGS_save btl_openib_LIBS_save])
|
||||
cpcs="oob"
|
||||
|
||||
OPAL_CHECK_OPENFABRICS([btl_openib],
|
||||
@ -50,13 +50,13 @@ AC_DEFUN([MCA_opal_btl_openib_CONFIG],[
|
||||
|
||||
AS_IF([test "$btl_openib_happy" = "yes"],
|
||||
[# With the new openib flags, look for ibv_fork_init
|
||||
LDFLAGS_save="$LDFLAGS"
|
||||
LIBS_save="$LIBS"
|
||||
btl_openib_LDFLAGS_save="$LDFLAGS"
|
||||
btl_openib_LIBS_save="$LIBS"
|
||||
LDFLAGS="$LDFLAGS $btl_openib_LDFLAGS"
|
||||
LIBS="$LIBS $btl_openib_LIBS"
|
||||
AC_CHECK_FUNCS([ibv_fork_init])
|
||||
LDFLAGS="$LDFLAGS_save"
|
||||
LIBS="$LIBS_save"
|
||||
LDFLAGS="$btl_openib_LDFLAGS_save"
|
||||
LIBS="$btl_openib_LIBS_save"
|
||||
$1],
|
||||
[$2])
|
||||
|
||||
|
@ -11,6 +11,8 @@
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2010 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2016 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -25,10 +27,14 @@ AC_DEFUN([MCA_opal_btl_tcp_CONFIG],[
|
||||
|
||||
# check for sockaddr_in (a good sign we have TCP)
|
||||
AC_CHECK_TYPES([struct sockaddr_in],
|
||||
[$1],
|
||||
[$2],
|
||||
[opal_btl_tcp_happy=yes
|
||||
$1],
|
||||
[opal_btl_tcp_happy=no
|
||||
$2],
|
||||
[AC_INCLUDES_DEFAULT
|
||||
#ifdef HAVE_NETINET_IN_H
|
||||
#include <netinet/in.h>
|
||||
#endif])
|
||||
#endif
|
||||
])
|
||||
OMPI_SUMMARY_ADD([[Transports]],[[tcp]],[[btl_tcp]],[$opal_btl_tcp_happy])
|
||||
])dnl
|
||||
|
@ -15,47 +15,6 @@
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
# OPAL_CHECK_XPMEM(prefix, [action-if-found], [action-if-not-found])
|
||||
# --------------------------------------------------------
|
||||
# check if XPMEM support can be found. sets prefix_{CPPFLAGS,
|
||||
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
||||
# support, otherwise executes action-if-not-found
|
||||
AC_DEFUN([OPAL_CHECK_XPMEM], [
|
||||
OPAL_VAR_SCOPE_PUSH([opal_check_xpmem_happy])
|
||||
AC_ARG_WITH([xpmem],
|
||||
[AC_HELP_STRING([--with-xpmem(=DIR)],
|
||||
[Build with XPMEM kernel module support, searching for headers in DIR])])
|
||||
OPAL_CHECK_WITHDIR([xpmem], [$with_xpmem], [include/xpmem.h])
|
||||
|
||||
AC_ARG_WITH([xpmem-libdir],
|
||||
[AC_HELP_STRING([--with-xpmem-libdir=DIR],
|
||||
[Search for XPMEM library in DIR])])
|
||||
OPAL_CHECK_WITHDIR([xpmem-libdir], [$with_xpmem_libdir], [libxpmem.*])
|
||||
|
||||
opal_check_xpmem_happy="no"
|
||||
|
||||
if test ! "$with_xpmem" = "no" ; then
|
||||
if test ! -z "$with_xpmem" && test "$with_xpmem" != "yes" ; then
|
||||
opal_check_xpmem_dir="$with_xpmem"
|
||||
fi
|
||||
|
||||
if test ! -z "$with_xpmem_libdir" && test "$with_xpmem_libdir" != "yes" ; then
|
||||
opal_check_xpmem_libdir="$with_xpmem_libdir"
|
||||
fi
|
||||
|
||||
OPAL_CHECK_PACKAGE([$1],[xpmem.h],[xpmem],[xpmem_make],[],
|
||||
[$opal_check_xpmem_dir],[$opal_check_xpmem_libdir], [opal_check_xpmem_happy="yes"], [])
|
||||
|
||||
if test "$opal_check_xpmem_happy" = "no" && test -n "$with_xpmem" && test "$with_xpmem" != "yes" ; then
|
||||
AC_MSG_ERROR([XPMEM support requested but not found. Aborting])
|
||||
fi
|
||||
fi
|
||||
|
||||
AS_IF([test "$opal_check_xpmem_happy" = "yes"], [$2], [$3])
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
])dnl
|
||||
|
||||
# MCA_btl_vader_CONFIG([action-if-can-compile],
|
||||
# [action-if-cant-compile])
|
||||
# ------------------------------------------------
|
||||
@ -66,11 +25,7 @@ AC_DEFUN([MCA_opal_btl_vader_CONFIG],[
|
||||
|
||||
# Check for single-copy APIs
|
||||
|
||||
OPAL_CHECK_CRAY_XPMEM([btl_vader], [btl_vader_xpmem_happy=1], [btl_vader_xpmem_happy=0])
|
||||
|
||||
AS_IF([test "$btl_vader_xpmem_happy" -eq 0],
|
||||
[OPAL_CHECK_XPMEM([btl_vader], [btl_vader_xpmem_happy=1], [btl_vader_xpmem_happy=0])],[])
|
||||
|
||||
OPAL_CHECK_XPMEM([btl_vader], [btl_vader_xpmem_happy=1], [btl_vader_xpmem_happy=0])
|
||||
OPAL_CHECK_KNEM([btl_vader], [btl_vader_knem_happy=1],[btl_vader_knem_happy=0])
|
||||
OPAL_CHECK_CMA([btl_vader], [AC_CHECK_HEADER([sys/prctl.h]) btl_vader_cma_happy=1], [btl_vader_cma_happy=0])
|
||||
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user