91 строка
3.8 KiB
Bash
91 строка
3.8 KiB
Bash
# -*- 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-2006 The Regents of the University of California.
|
|
# All rights reserved.
|
|
# Copyright (c) 2006 QLogic Corp. All rights reserved.
|
|
# Copyright (c) 2009-2016 Cisco Systems, Inc. All rights reserved.
|
|
# Copyright (c) 2016 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
|
|
#
|
|
# $HEADER$
|
|
#
|
|
|
|
# OMPI_CHECK_PSM2(prefix, [action-if-found], [action-if-not-found])
|
|
# --------------------------------------------------------
|
|
# check if PSM2 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([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])])
|
|
OPAL_CHECK_WITHDIR([psm2], [$with_psm2], [include/psm2.h])
|
|
AC_ARG_WITH([psm2-libdir],
|
|
[AC_HELP_STRING([--with-psm2-libdir=DIR],
|
|
[Search for PSM (Intel PSM2) libraries in DIR])])
|
|
OPAL_CHECK_WITHDIR([psm2-libdir], [$with_psm2_libdir], [libpsm2.*])
|
|
|
|
ompi_check_psm2_$1_save_CPPFLAGS="$CPPFLAGS"
|
|
ompi_check_psm2_$1_save_LDFLAGS="$LDFLAGS"
|
|
ompi_check_psm2_$1_save_LIBS="$LIBS"
|
|
|
|
AS_IF([test "$with_psm2" != "no"],
|
|
[AS_IF([test ! -z "$with_psm2" && test "$with_psm2" != "yes"],
|
|
[ompi_check_psm2_dir="$with_psm2"])
|
|
AS_IF([test ! -z "$with_psm2_libdir" && test "$with_psm2_libdir" != "yes"],
|
|
[ompi_check_psm2_libdir="$with_psm2_libdir"])
|
|
|
|
OPAL_CHECK_PACKAGE([ompi_check_psm2],
|
|
[psm2.h],
|
|
[psm2],
|
|
[psm2_mq_irecv2],
|
|
[],
|
|
[$ompi_check_psm2_dir],
|
|
[$ompi_check_psm2_libdir],
|
|
[ompi_check_psm2_happy="yes"],
|
|
[ompi_check_psm2_happy="no"])],
|
|
[ompi_check_psm2_happy="no"])
|
|
|
|
CPPFLAGS="$ompi_check_psm2_$1_save_CPPFLAGS"
|
|
LDFLAGS="$ompi_check_psm2_$1_save_LDFLAGS"
|
|
LIBS="$ompi_check_psm2_$1_save_LIBS"
|
|
|
|
AS_IF([test "$ompi_check_psm2_happy" = "yes" && test "$enable_progress_threads" = "yes"],
|
|
[AC_MSG_WARN([PSM2 driver does not currently support progress threads. Disabling MTL.])
|
|
ompi_check_psm2_happy="no"])
|
|
|
|
AS_IF([test "$ompi_check_psm2_happy" = "yes"],
|
|
[AC_CHECK_HEADERS(
|
|
glob.h,
|
|
[],
|
|
[AC_MSG_WARN([glob.h not found. Can not build component.])
|
|
ompi_check_psm2_happy="no"])])
|
|
|
|
OPAL_SUMMARY_ADD([[Transports]],[[Intel Omnipath (PSM2)]],[$1],[$ompi_check_psm2_happy])
|
|
fi
|
|
|
|
AS_IF([test "$ompi_check_psm2_happy" = "yes"],
|
|
[$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])
|
|
])
|