2015-02-03 08:50:32 +03:00
|
|
|
dnl -*- shell-script -*-
|
|
|
|
dnl
|
|
|
|
dnl Copyright (c) 2011 Mellanox Technologies. All rights reserved.
|
|
|
|
dnl Copyright (c) 2013 Cisco Systems, Inc. All rights reserved.
|
|
|
|
dnl Copyright (c) 2015 Research Organization for Information Science
|
|
|
|
dnl and Technology (RIST). All rights reserved.
|
|
|
|
dnl $COPYRIGHT$
|
|
|
|
dnl
|
|
|
|
dnl Additional copyrights may follow
|
|
|
|
dnl
|
|
|
|
dnl $HEADER$
|
|
|
|
dnl
|
2013-07-02 02:45:36 +04:00
|
|
|
|
|
|
|
# OMPI_CHECK_HCOLL(prefix, [action-if-found], [action-if-not-found])
|
|
|
|
# --------------------------------------------------------
|
2015-06-24 06:59:57 +03:00
|
|
|
# check if hcoll support can be found. sets prefix_{CPPFLAGS,
|
2013-07-02 02:45:36 +04:00
|
|
|
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
|
|
|
# support, otherwise executes action-if-not-found
|
|
|
|
AC_DEFUN([OMPI_CHECK_HCOLL],[
|
2015-08-11 08:52:36 +03:00
|
|
|
OPAL_VAR_SCOPE_PUSH([ompi_check_hcoll_dir ompi_check_hcoll_libs ompi_check_hcoll_happy CPPFLAGS_save LDFLAGS_save LIBS_save])
|
2013-12-07 03:40:34 +04:00
|
|
|
|
2013-07-02 02:45:36 +04:00
|
|
|
AC_ARG_WITH([hcoll],
|
|
|
|
[AC_HELP_STRING([--with-hcoll(=DIR)],
|
2015-08-11 08:52:36 +03:00
|
|
|
[Build hcoll (Mellanox Hierarchical Collectives) support, optionally adding
|
|
|
|
DIR/include and DIR/lib or DIR/lib64 to the search path for headers and libraries])])
|
2013-07-02 02:45:36 +04:00
|
|
|
|
|
|
|
AS_IF([test "$with_hcoll" != "no"],
|
2015-08-11 08:52:36 +03:00
|
|
|
[ompi_check_hcoll_libs=hcoll
|
|
|
|
AS_IF([test ! -z "$with_hcoll" && test "$with_hcoll" != "yes"],
|
|
|
|
[ompi_check_hcoll_dir=$with_hcoll])
|
2013-07-02 02:45:36 +04:00
|
|
|
|
2015-08-11 08:52:36 +03:00
|
|
|
CPPFLAGS_save=$CPPFLAGS
|
|
|
|
LDFLAGS_save=$LDFLAGS
|
|
|
|
LIBS_save=$LIBS
|
2013-12-08 13:45:13 +04:00
|
|
|
|
2015-08-11 08:52:36 +03:00
|
|
|
OPAL_LOG_MSG([$1_CPPFLAGS : $$1_CPPFLAGS], 1)
|
|
|
|
OPAL_LOG_MSG([$1_LDFLAGS : $$1_LDFLAGS], 1)
|
|
|
|
OPAL_LOG_MSG([$1_LIBS : $$1_LIBS], 1)
|
2013-07-02 02:45:36 +04:00
|
|
|
|
2015-08-11 08:52:36 +03:00
|
|
|
OPAL_CHECK_PACKAGE([$1],
|
|
|
|
[hcoll/api/hcoll_api.h],
|
|
|
|
[$ompi_check_hcoll_libs],
|
|
|
|
[hcoll_get_version],
|
|
|
|
[],
|
|
|
|
[$ompi_check_hcoll_dir],
|
|
|
|
[],
|
|
|
|
[ompi_check_hcoll_happy="yes"],
|
|
|
|
[ompi_check_hcoll_happy="no"])
|
2013-07-02 02:45:36 +04:00
|
|
|
|
2015-08-11 08:52:36 +03:00
|
|
|
CPPFLAGS=$CPPFLAGS_save
|
|
|
|
LDFLAGS=$LDFLAGS_save
|
|
|
|
LIBS=$LIBS_save],
|
|
|
|
[ompi_check_hcoll_happy=no])
|
2013-07-02 02:45:36 +04:00
|
|
|
|
2015-02-03 08:50:32 +03:00
|
|
|
AS_IF([test "$ompi_check_hcoll_happy" = "yes" && test "$enable_progress_threads" = "yes"],
|
2013-07-02 02:45:36 +04:00
|
|
|
[AC_MSG_WARN([hcoll driver does not currently support progress threads. Disabling HCOLL.])
|
|
|
|
ompi_check_hcoll_happy="no"])
|
|
|
|
|
|
|
|
AS_IF([test "$ompi_check_hcoll_happy" = "yes"],
|
|
|
|
[$2],
|
2015-02-03 08:50:32 +03:00
|
|
|
[AS_IF([test ! -z "$with_hcoll" && test "$with_hcoll" != "no"],
|
2013-07-02 02:45:36 +04:00
|
|
|
[AC_MSG_ERROR([HCOLL support requested but not found. Aborting])])
|
|
|
|
$3])
|
2013-12-07 03:40:34 +04:00
|
|
|
|
|
|
|
OPAL_VAR_SCOPE_POP
|
2013-07-02 02:45:36 +04:00
|
|
|
])
|