common/libfabric: move libfabric to ofi
This PR renames the common library for OFI libfabric from libfabric to ofi. There are a number of reasons this is good to do: 1) its shorter and replaces 9 characters with three for function names for what may eventually be a fairly extensive interface 2) OFI is the term used for MTL and RML components that use the OFI libfabric interface 3) A planned OSC component will also use the OFI term. 4) Other HPC libraries that can use OFI libfabric tend to use the term "ofi" internally and also in their configure options relevant to OFI libfabric (i.e. MPICH/CH4, Intel MPI, Sandia SHMEM) There seem to be comments in places in the Open MPI source code that indicate that this common library will be going away. Far from it as we will want to be able to share things like AV objects between OMPI and possibly OSHMEM components that use the OFI libfabric interface. This PR also adds a synonym to the --with-libfabric(-libdir) configury options: --with-ofi and with-ofi-libdir. Signed-off-by: Howard Pritchard <howardp@lanl.gov>
Этот коммит содержится в:
родитель
88a4a163ae
Коммит
841192645b
4
VERSION
4
VERSION
@ -4,6 +4,8 @@
|
||||
# Copyright (c) 2013 Mellanox Technologies, Inc.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2016 IBM Corporation. All rights reserved.
|
||||
# Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
|
||||
# This is the VERSION file for Open MPI, describing the precise
|
||||
# version of Open MPI in this distribution. The various components of
|
||||
@ -107,7 +109,7 @@ libmca_orte_common_alps_so_version=0:0:0
|
||||
|
||||
# OPAL layer
|
||||
libmca_opal_common_cuda_so_version=0:0:0
|
||||
libmca_opal_common_libfabric_so_version=0:0:0
|
||||
libmca_opal_common_ofi_so_version=0:0:0
|
||||
libmca_opal_common_sm_so_version=0:0:0
|
||||
libmca_opal_common_ugni_so_version=0:0:0
|
||||
libmca_opal_common_verbs_so_version=0:0:0
|
||||
|
@ -1,95 +0,0 @@
|
||||
dnl -*- shell-script -*-
|
||||
dnl
|
||||
dnl Copyright (c) 2015-2016 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
|
||||
dnl
|
||||
dnl $HEADER$
|
||||
dnl
|
||||
|
||||
|
||||
# OPAL_CHECK_LIBFABRIC(prefix, [action-if-found], [action-if-not-found]
|
||||
# --------------------------------------------------------
|
||||
# Check if libfabric 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_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
|
||||
AC_ARG_WITH([libfabric],
|
||||
[AC_HELP_STRING([--with-libfabric=DIR],
|
||||
[Specify location of libfabric installation, adding DIR/include to the default search location for libfabric headers, and DIR/lib or DIR/lib64 to the default search location for libfabric libraries. Error if libfabric support cannot be found.])])
|
||||
AC_ARG_WITH([libfabric-libdir],
|
||||
[AC_HELP_STRING([--with-libfabric-libdir=DIR],
|
||||
[Search for libfabric libraries in DIR])])
|
||||
|
||||
# Sanity check the --with values
|
||||
OPAL_CHECK_WITHDIR([libfabric], [$with_libfabric],
|
||||
[include/rdma/fabric.h])
|
||||
OPAL_CHECK_WITHDIR([libfabric-libdir], [$with_libfabric_libdir],
|
||||
[libfabric.*])
|
||||
|
||||
opal_check_libfabric_$1_save_CPPFLAGS=$CPPFLAGS
|
||||
opal_check_libfabric_$1_save_LDFLAGS=$LDFLAGS
|
||||
opal_check_libfabric_$1_save_LIBS=$LIBS
|
||||
|
||||
opal_check_libfabric_happy=yes
|
||||
AS_IF([test "$with_libfabric" = "no"],
|
||||
[opal_check_libfabric_happy=no])
|
||||
|
||||
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
|
||||
AC_MSG_RESULT([($opal_libfabric_dir)])],
|
||||
[AC_MSG_RESULT([(default search paths)])])
|
||||
AS_IF([test ! -z "$with_libfabric_libdir" && \
|
||||
test "$with_libfabric_libdir" != "yes"],
|
||||
[opal_libfabric_libdir=$with_libfabric_libdir])
|
||||
])
|
||||
|
||||
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=no])])
|
||||
|
||||
CPPFLAGS=$opal_check_libfabric_$1_save_CPPFLAGS
|
||||
LDFLAGS=$opal_check_libfabric_$1_save_LDFLAGS
|
||||
LIBS=$opal_check_libfabric_$1_save_LIBS
|
||||
|
||||
OPAL_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 = yes],
|
||||
[$2],
|
||||
[AS_IF([test -n "$with_libfabric" && test "$with_libfabric" != "no"],
|
||||
[AC_MSG_WARN([libfabric support requested (via --with-libfabric), but not found.])
|
||||
AC_MSG_ERROR([Cannot continue.])])
|
||||
$3])
|
||||
])dnl
|
111
config/opal_check_ofi.m4
Обычный файл
111
config/opal_check_ofi.m4
Обычный файл
@ -0,0 +1,111 @@
|
||||
dnl -*- shell-script -*-
|
||||
dnl
|
||||
dnl Copyright (c) 2015-2016 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2016-2017 Los Alamos National Security, LLC. All rights
|
||||
dnl reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
dnl
|
||||
dnl $HEADER$
|
||||
dnl
|
||||
|
||||
|
||||
# OPAL_CHECK_OFI(prefix, [action-if-found], [action-if-not-found]
|
||||
# --------------------------------------------------------
|
||||
# Check if libfabric 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_OFI],[
|
||||
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
|
||||
AC_ARG_WITH([libfabric],
|
||||
[AC_HELP_STRING([--with-libfabric=DIR],
|
||||
[Deprecated synonym for --with-ofi])])
|
||||
AC_ARG_WITH([libfabric-libdir],
|
||||
[AC_HELP_STRING([--with-libfabric-libdir=DIR],
|
||||
[Deprecated synonym for --with-ofi-libdir])])
|
||||
|
||||
AC_ARG_WITH([ofi],
|
||||
[AC_HELP_STRING([--with-ofi=DIR],
|
||||
[Specify location of OFI libfabric installation, adding DIR/include to the default search location for libfabric headers, and DIR/lib or DIR/lib64 to the default search location for libfabric libraries. Error if libfabric support cannot be found.])])
|
||||
|
||||
AC_ARG_WITH([ofi-libdir],
|
||||
[AC_HELP_STRING([--with-ofi-libdir=DIR],
|
||||
[Search for OFI libfabric libraries in DIR])])
|
||||
|
||||
if test "$with_ofi" = ""; then
|
||||
with_ofi=$with_libfabric
|
||||
fi
|
||||
|
||||
if test "$with_ofi_libdir" = ""; then
|
||||
with_ofi_libdir=$with_libfabric_libdir
|
||||
fi
|
||||
|
||||
# Sanity check the --with values
|
||||
OPAL_CHECK_WITHDIR([ofi], [$with_ofi],
|
||||
[include/rdma/fabric.h])
|
||||
OPAL_CHECK_WITHDIR([ofi-libdir], [$with_ofi_libdir],
|
||||
[libfabric.*])
|
||||
|
||||
opal_check_ofi_$1_save_CPPFLAGS=$CPPFLAGS
|
||||
opal_check_ofi_$1_save_LDFLAGS=$LDFLAGS
|
||||
opal_check_ofi_$1_save_LIBS=$LIBS
|
||||
|
||||
opal_check_ofi_happy=yes
|
||||
AS_IF([test "$with_ofi" = "no"],
|
||||
[opal_check_ofi_happy=no])
|
||||
|
||||
AS_IF([test $opal_check_ofi_happy = yes],
|
||||
[AC_MSG_CHECKING([looking for OFI libfabric in])
|
||||
AS_IF([test "$with_ofi" != "yes"],
|
||||
[opal_ofi_dir=$with_ofi
|
||||
AC_MSG_RESULT([($opal_ofi_dir)])],
|
||||
[AC_MSG_RESULT([(default search paths)])])
|
||||
AS_IF([test ! -z "$with_ofi_libdir" && \
|
||||
test "$with_ofi_libdir" != "yes"],
|
||||
[opal_ofi_libdir=$with_ofi_libdir])
|
||||
])
|
||||
|
||||
AS_IF([test $opal_check_ofi_happy = yes],
|
||||
[OPAL_CHECK_PACKAGE([opal_check_ofi],
|
||||
[rdma/fabric.h],
|
||||
[fabric],
|
||||
[fi_getinfo],
|
||||
[],
|
||||
[$opal_ofi_dir],
|
||||
[$opal_ofi_libdir],
|
||||
[],
|
||||
[opal_check_ofi_happy=no])])
|
||||
|
||||
CPPFLAGS=$opal_check_ofi_$1_save_CPPFLAGS
|
||||
LDFLAGS=$opal_check_ofi_$1_save_LDFLAGS
|
||||
LIBS=$opal_check_ofi_$1_save_LIBS
|
||||
|
||||
OPAL_SUMMARY_ADD([[Transports]],[[OpenFabrics Libfabric]],[$1],[$opal_check_ofi_happy])
|
||||
|
||||
OPAL_VAR_SCOPE_POP
|
||||
fi
|
||||
|
||||
if test $opal_check_ofi_happy = yes ; then
|
||||
$1_CPPFLAGS="[$]$1_CPPFLAGS $opal_check_ofi_CPPFLAGS"
|
||||
$1_LIBS="[$]$1_LIBS $opal_check_ofi_LIBS"
|
||||
$1_LDFLAGS="[$]$1_LDFLAGS $opal_check_ofi_LDFLAGS"
|
||||
|
||||
AC_SUBST($1_CPPFLAGS)
|
||||
AC_SUBST($1_LDFLAGS)
|
||||
AC_SUBST($1_LIBS)
|
||||
fi
|
||||
|
||||
AS_IF([test $opal_check_ofi_happy = yes],
|
||||
[$2],
|
||||
[AS_IF([test -n "$with_ofi" && test "$with_ofi" != "no"],
|
||||
[AC_MSG_WARN([OFI libfabric support requested (via --with-ofi or --with-libfabric), but not found.])
|
||||
AC_MSG_ERROR([Cannot continue.])])
|
||||
$3])
|
||||
])dnl
|
@ -12,7 +12,7 @@
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2016 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2006-2008 Sun Microsystems, Inc. All rights reserved.
|
||||
# Copyright (c) 2006-2011 Los Alamos National Security, LLC. All rights
|
||||
# Copyright (c) 2006-2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# Copyright (c) 2009 Oak Ridge National Labs. All rights reserved.
|
||||
# Copyright (c) 2011-2013 NVIDIA Corporation. All rights reserved.
|
||||
@ -151,7 +151,7 @@ AC_SUBST(libopen_pal_so_version)
|
||||
# transparently by adding some intelligence in autogen.pl
|
||||
# and/or opal_mca.m4, but I don't have the cycles to do this
|
||||
# right now.
|
||||
AC_SUBST(libmca_opal_common_libfabric_so_version)
|
||||
AC_SUBST(libmca_opal_common_ofi_so_version)
|
||||
AC_SUBST(libmca_opal_common_cuda_so_version)
|
||||
AC_SUBST(libmca_opal_common_sm_so_version)
|
||||
AC_SUBST(libmca_opal_common_ugni_so_version)
|
||||
|
@ -2,6 +2,8 @@
|
||||
# Copyright (c) 2013-2015 Intel, Inc. All rights reserved
|
||||
#
|
||||
# Copyright (c) 2014-2015 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -11,7 +13,7 @@
|
||||
|
||||
EXTRA_DIST = post_configure.sh
|
||||
|
||||
AM_CPPFLAGS = $(ompi_mtl_ofi_CPPFLAGS) $(opal_common_libfabric_CPPFLAGS)
|
||||
AM_CPPFLAGS = $(ompi_mtl_ofi_CPPFLAGS) $(opal_common_ofi_CPPFLAGS)
|
||||
|
||||
dist_ompidata_DATA = help-mtl-ofi.txt
|
||||
|
||||
@ -44,7 +46,7 @@ mca_mtl_ofi_la_LDFLAGS = \
|
||||
$(ompi_mtl_ofi_LDFLAGS) \
|
||||
-module -avoid-version
|
||||
mca_mtl_ofi_la_LIBADD = $(ompi_mtl_ofi_LIBS) \
|
||||
$(OPAL_TOP_BUILDDIR)/opal/mca/common/libfabric/lib@OPAL_LIB_PREFIX@mca_common_libfabric.la
|
||||
$(OPAL_TOP_BUILDDIR)/opal/mca/common/ofi/lib@OPAL_LIB_PREFIX@mca_common_ofi.la
|
||||
|
||||
noinst_LTLIBRARIES = $(component_noinst)
|
||||
libmca_mtl_ofi_la_SOURCES = $(mtl_ofi_sources)
|
||||
|
@ -3,6 +3,8 @@
|
||||
# Copyright (c) 2013-2014 Intel, Inc. All rights reserved
|
||||
#
|
||||
# Copyright (c) 2014-2015 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -23,10 +25,10 @@ AC_DEFUN([MCA_ompi_mtl_ofi_POST_CONFIG], [
|
||||
AC_DEFUN([MCA_ompi_mtl_ofi_CONFIG],[
|
||||
AC_CONFIG_FILES([ompi/mca/mtl/ofi/Makefile])
|
||||
|
||||
# ensure we already ran the common libfabric config
|
||||
AC_REQUIRE([MCA_opal_common_libfabric_CONFIG])
|
||||
# ensure we already ran the common OFI/libfabric config
|
||||
AC_REQUIRE([MCA_opal_common_ofi_CONFIG])
|
||||
|
||||
AS_IF([test "$opal_common_libfabric_happy" = "yes"],
|
||||
AS_IF([test "$opal_common_ofi_happy" = "yes"],
|
||||
[$1],
|
||||
[$2])
|
||||
])dnl
|
||||
|
@ -14,6 +14,8 @@
|
||||
# Copyright (c) 2010-2015 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2015 Intel, Inc. All rights reserved.
|
||||
# Copyright (c) 2016 IBM Corporation. All rights reserved.
|
||||
# Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -21,7 +23,7 @@
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
AM_CPPFLAGS = -DBTL_IN_OPAL=1 $(opal_common_libfabric_CPPFLAGS) -DOMPI_LIBMPI_NAME=\"$(OMPI_LIBMPI_NAME)\"
|
||||
AM_CPPFLAGS = -DBTL_IN_OPAL=1 $(opal_common_ofi_CPPFLAGS) -DOMPI_LIBMPI_NAME=\"$(OMPI_LIBMPI_NAME)\"
|
||||
|
||||
EXTRA_DIST = README.txt README.test
|
||||
|
||||
@ -91,7 +93,7 @@ mca_btl_usnic_la_LDFLAGS = \
|
||||
$(opal_btl_usnic_LDFLAGS) \
|
||||
-module -avoid-version
|
||||
mca_btl_usnic_la_LIBADD = \
|
||||
$(OPAL_TOP_BUILDDIR)/opal/mca/common/libfabric/lib@OPAL_LIB_PREFIX@mca_common_libfabric.la
|
||||
$(OPAL_TOP_BUILDDIR)/opal/mca/common/ofi/lib@OPAL_LIB_PREFIX@mca_common_ofi.la
|
||||
|
||||
noinst_LTLIBRARIES = $(lib)
|
||||
libmca_btl_usnic_la_SOURCES = $(lib_sources)
|
||||
|
@ -13,6 +13,8 @@
|
||||
# Copyright (c) 2006 Sandia National Laboratories. All rights
|
||||
# reserved.
|
||||
# Copyright (c) 2010-2015 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -93,27 +95,27 @@ AC_DEFUN([_OPAL_BTL_USNIC_DO_CONFIG],[
|
||||
AC_MSG_RESULT([$opal_btl_usnic_happy])
|
||||
])
|
||||
|
||||
# The usnic BTL requires libfabric support.
|
||||
# The usnic BTL requires OFI libfabric support.
|
||||
AS_IF([test "$opal_btl_usnic_happy" = "yes"],
|
||||
[AC_MSG_CHECKING([whether libfabric support is available])
|
||||
AS_IF([test "$opal_common_libfabric_happy" = "yes"],
|
||||
[AC_MSG_CHECKING([whether OFI libfabric support is available])
|
||||
AS_IF([test "$opal_common_ofi_happy" = "yes"],
|
||||
[opal_btl_usnic_happy=yes],
|
||||
[opal_btl_usnic_happy=no])
|
||||
AC_MSG_RESULT([$opal_btl_usnic_happy])
|
||||
])
|
||||
|
||||
# The usnic BTL requires at least libfabric v1.1 (there was a
|
||||
# The usnic BTL requires at least OFI libfabric v1.1 (there was a
|
||||
# critical bug in libfabric v1.0).
|
||||
AS_IF([test "$opal_btl_usnic_happy" = "yes"],
|
||||
[AC_MSG_CHECKING([whether libfabric is >= v1.1])
|
||||
[AC_MSG_CHECKING([whether OFI libfabric is >= v1.1])
|
||||
opal_btl_usnic_CPPFLAGS_save=$CPPFLAGS
|
||||
CPPFLAGS="$opal_common_libfabric_CPPFLAGS $CPPFLAGS"
|
||||
CPPFLAGS="$opal_common_ofi_CPPFLAGS $CPPFLAGS"
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <rdma/fabric.h>]],
|
||||
[[
|
||||
#if !defined(FI_MAJOR_VERSION)
|
||||
#error your version of libfabric is too old
|
||||
#error your version of OFI libfabric is too old
|
||||
#elif FI_VERSION(FI_MAJOR_VERSION, FI_MINOR_VERSION) < FI_VERSION(1, 1)
|
||||
#error your version of libfabric is too old
|
||||
#error your version of OFI libfabric is too old
|
||||
#endif
|
||||
]])],
|
||||
[opal_btl_usnic_happy=yes],
|
||||
@ -122,10 +124,10 @@ AC_DEFUN([_OPAL_BTL_USNIC_DO_CONFIG],[
|
||||
CPPFLAGS=$opal_btl_usnic_CPPFLAGS_save
|
||||
])
|
||||
|
||||
# Make sure we can find the libfabric usnic extensions header
|
||||
# Make sure we can find the OFI libfabric usnic extensions header
|
||||
AS_IF([test "$opal_btl_usnic_happy" = "yes" ],
|
||||
[opal_btl_usnic_CPPFLAGS_save=$CPPFLAGS
|
||||
CPPFLAGS="$opal_common_libfabric_CPPFLAGS $CPPFLAGS"
|
||||
CPPFLAGS="$opal_common_ofi_CPPFLAGS $CPPFLAGS"
|
||||
AC_CHECK_HEADER([rdma/fi_ext_usnic.h],
|
||||
[],
|
||||
[opal_btl_usnic_happy=no])
|
||||
|
@ -1,16 +0,0 @@
|
||||
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
|
||||
/*
|
||||
* Copyright (c) 2015 Intel, Inc. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
*
|
||||
* $HEADER$
|
||||
*/
|
||||
|
||||
#ifndef OPAL_MCA_COMMON_LIBFABRIC_H
|
||||
#define OPAL_MCA_COMMON_LIBFABRIC_H
|
||||
|
||||
OPAL_DECLSPEC int mca_common_libfabric_register_mca_variables(void);
|
||||
|
||||
#endif /* OPAL_MCA_COMMON_LIBFABRIC_H */
|
@ -1,30 +0,0 @@
|
||||
# -*- shell-script -*-
|
||||
#
|
||||
# Copyright (c) 2011-2013 NVIDIA Corporation. All rights reserved.
|
||||
# Copyright (c) 2013 The University of Tennessee and The University
|
||||
# of Tennessee Research Foundation. All rights
|
||||
# reserved.
|
||||
# Copyright (c) 2015 Intel, Inc. All rights reserved.
|
||||
# Copyright (c) 2015 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
AC_DEFUN([MCA_opal_common_libfabric_CONFIG],[
|
||||
AC_CONFIG_FILES([opal/mca/common/libfabric/Makefile])
|
||||
|
||||
# Check for libfabric. Note that $opal_common_libfabric_happy is
|
||||
# used in other configure.m4's to know if libfabric configured
|
||||
# successfully.
|
||||
OPAL_CHECK_LIBFABRIC([opal_common_libfabric],
|
||||
[opal_common_libfabric_happy=yes
|
||||
common_libfabric_WRAPPER_EXTRA_LDFLAGS=$opal_common_libfabric_LDFLAGS
|
||||
common_libfabric_WRAPPER_EXTRA_LIBS=$opal_common_libfabric_LIBS
|
||||
$1],
|
||||
[opal_common_libfabric_happy=no
|
||||
$2])
|
||||
|
||||
])dnl
|
@ -12,6 +12,8 @@
|
||||
# Copyright (c) 2011-2013 NVIDIA Corporation. All rights reserved.
|
||||
# Copyright (c) 2014 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2015 Intel, Inc. All rights reserved.
|
||||
# Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -21,22 +23,22 @@
|
||||
# A word of explanation...
|
||||
#
|
||||
# This library is linked against various MCA components because the
|
||||
# support for libfabrics is needed in various places.
|
||||
# support for ofis is needed in various places.
|
||||
#
|
||||
# Note that building this common component statically and linking
|
||||
# against other dynamic components is *not* supported!
|
||||
|
||||
AM_CPPFLAGS = $(opal_common_libfabric_CPPFLAGS)
|
||||
AM_CPPFLAGS = $(opal_common_ofi_CPPFLAGS)
|
||||
|
||||
# Header files
|
||||
|
||||
headers = \
|
||||
common_libfabric.h
|
||||
common_ofi.h
|
||||
|
||||
# Source files
|
||||
|
||||
sources = \
|
||||
common_libfabric.c
|
||||
common_ofi.c
|
||||
|
||||
# As per above, we'll either have an installable or noinst result.
|
||||
# The installable one should follow the same MCA prefix naming rules
|
||||
@ -55,24 +57,25 @@ sources = \
|
||||
|
||||
lib_LTLIBRARIES =
|
||||
noinst_LTLIBRARIES =
|
||||
comp_inst = lib@OPAL_LIB_PREFIX@mca_common_libfabric.la
|
||||
comp_noinst = lib@OPAL_LIB_PREFIX@mca_common_libfabric_noinst.la
|
||||
comp_inst = lib@OPAL_LIB_PREFIX@mca_common_ofi.la
|
||||
comp_noinst = lib@OPAL_LIB_PREFIX@mca_common_ofi_noinst.la
|
||||
|
||||
if MCA_BUILD_opal_common_libfabric_DSO
|
||||
|
||||
if MCA_BUILD_opal_common_ofi_DSO
|
||||
lib_LTLIBRARIES += $(comp_inst)
|
||||
else
|
||||
noinst_LTLIBRARIES += $(comp_noinst)
|
||||
endif
|
||||
|
||||
lib@OPAL_LIB_PREFIX@mca_common_libfabric_la_SOURCES = $(headers) $(sources)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_libfabric_la_LDFLAGS = \
|
||||
$(opal_common_libfabric_LDFLAGS) \
|
||||
-version-info $(libmca_opal_common_libfabric_so_version)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_libfabric_la_LIBADD = $(opal_common_libfabric_LIBS)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_ofi_la_SOURCES = $(headers) $(sources)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_ofi_la_LDFLAGS = \
|
||||
$(opal_common_ofi_LDFLAGS) \
|
||||
-version-info $(libmca_opal_common_ofi_so_version)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_ofi_la_LIBADD = $(opal_common_ofi_LIBS)
|
||||
|
||||
lib@OPAL_LIB_PREFIX@mca_common_libfabric_noinst_la_SOURCES = $(headers) $(sources)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_libfabric_noinst_la_LDFLAGS = $(opal_common_libfabric_LDFLAGS)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_libfabric_noinst_la_LIBADD = $(opal_common_libfabric_LIBS)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_ofi_noinst_la_SOURCES = $(headers) $(sources)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_ofi_noinst_la_LDFLAGS = $(opal_common_ofi_LDFLAGS)
|
||||
lib@OPAL_LIB_PREFIX@mca_common_ofi_noinst_la_LIBADD = $(opal_common_ofi_LIBS)
|
||||
|
||||
# Conditionally install the header files
|
||||
|
@ -1,5 +1,7 @@
|
||||
/*
|
||||
* Copyright (c) 2015 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -13,9 +15,9 @@
|
||||
#include <errno.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include "common_libfabric.h"
|
||||
#include "common_ofi.h"
|
||||
|
||||
int mca_common_libfabric_register_mca_variables(void)
|
||||
int mca_common_ofi_register_mca_variables(void)
|
||||
{
|
||||
return OPAL_SUCCESS;
|
||||
}
|
18
opal/mca/common/ofi/common_ofi.h
Обычный файл
18
opal/mca/common/ofi/common_ofi.h
Обычный файл
@ -0,0 +1,18 @@
|
||||
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
|
||||
/*
|
||||
* Copyright (c) 2015 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
*
|
||||
* $HEADER$
|
||||
*/
|
||||
|
||||
#ifndef OPAL_MCA_COMMON_OFI_H
|
||||
#define OPAL_MCA_COMMON_OFI_H
|
||||
|
||||
OPAL_DECLSPEC int mca_common_ofi_register_mca_variables(void);
|
||||
|
||||
#endif /* OPAL_MCA_COMMON_OFI_H */
|
32
opal/mca/common/ofi/configure.m4
Обычный файл
32
opal/mca/common/ofi/configure.m4
Обычный файл
@ -0,0 +1,32 @@
|
||||
# -*- shell-script -*-
|
||||
#
|
||||
# Copyright (c) 2011-2013 NVIDIA Corporation. All rights reserved.
|
||||
# Copyright (c) 2013 The University of Tennessee and The University
|
||||
# of Tennessee Research Foundation. All rights
|
||||
# reserved.
|
||||
# Copyright (c) 2015 Intel, Inc. All rights reserved.
|
||||
# Copyright (c) 2015 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
AC_DEFUN([MCA_opal_common_ofi_CONFIG],[
|
||||
AC_CONFIG_FILES([opal/mca/common/ofi/Makefile])
|
||||
|
||||
# Check for ofi. Note that $opal_common_ofi_happy is
|
||||
# used in other configure.m4's to know if ofi configured
|
||||
# successfully.
|
||||
OPAL_CHECK_OFI([opal_common_ofi],
|
||||
[opal_common_ofi_happy=yes
|
||||
common_ofi_WRAPPER_EXTRA_LDFLAGS=$opal_common_ofi_LDFLAGS
|
||||
common_ofi_WRAPPER_EXTRA_LIBS=$opal_common_ofi_LIBS
|
||||
$1],
|
||||
[opal_common_ofi_happy=no
|
||||
$2])
|
||||
|
||||
])dnl
|
@ -11,6 +11,8 @@
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2010 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2015-2017 Intel, Inc. All rights reserved.
|
||||
# Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -18,7 +20,7 @@
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
AM_CPPFLAGS = $(opal_common_libfabric_CPPFLAGS)
|
||||
AM_CPPFLAGS = $(opal_common_ofi_CPPFLAGS)
|
||||
|
||||
sources = \
|
||||
rml_ofi.h \
|
||||
@ -42,7 +44,7 @@ mcacomponentdir = $(ortelibdir)
|
||||
mcacomponent_LTLIBRARIES = $(component_install)
|
||||
mca_rml_ofi_la_SOURCES = $(sources)
|
||||
mca_rml_ofi_la_LDFLAGS = -module -avoid-version
|
||||
mca_rml_ofi_la_LIBADD = $(OPAL_TOP_BUILDDIR)/opal/mca/common/libfabric/lib@OPAL_LIB_PREFIX@mca_common_libfabric.la
|
||||
mca_rml_ofi_la_LIBADD = $(OPAL_TOP_BUILDDIR)/opal/mca/common/ofi/lib@OPAL_LIB_PREFIX@mca_common_ofi.la
|
||||
|
||||
noinst_LTLIBRARIES = $(component_noinst)
|
||||
libmca_rml_ofi_la_SOURCES = $(sources)
|
||||
|
@ -3,6 +3,8 @@
|
||||
# Copyright (c) 2013-2014 Intel, Inc. All rights reserved
|
||||
#
|
||||
# Copyright (c) 2014-2015 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2017 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -20,10 +22,10 @@
|
||||
AC_DEFUN([MCA_orte_rml_ofi_CONFIG],[
|
||||
AC_CONFIG_FILES([orte/mca/rml/ofi/Makefile])
|
||||
|
||||
# ensure we already ran the common libfabric config
|
||||
AC_REQUIRE([MCA_opal_common_libfabric_CONFIG])
|
||||
# ensure we already ran the common OFI libfabric config
|
||||
AC_REQUIRE([MCA_opal_common_ofi_CONFIG])
|
||||
|
||||
AS_IF([test "$opal_common_libfabric_happy" = "yes"],
|
||||
AS_IF([test "$opal_common_ofi_happy" = "yes"],
|
||||
[$1],
|
||||
[$2])
|
||||
])dnl
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user