aa9e5a1a27
Cleanup the configury so we properly check for Singularity under the various typical use-cases Bring the Singularity support online. We have to turn "off" the sm BTL as it segfaults from inside the container - root cause remains unclear. Also turned "off" the various OPAL shmem components in case they are involved and someone else tries to use them. Happily, the vader BTL works just fine!
61 строка
2.8 KiB
Plaintext
61 строка
2.8 KiB
Plaintext
# -*- shell-script ; indent-tabs-mode:nil -*-
|
|
#
|
|
# Copyright (c) 2016 Intel, Inc. All rights reserved.
|
|
# $COPYRIGHT$
|
|
#
|
|
# Additional copyrights may follow
|
|
#
|
|
# $HEADER$
|
|
#
|
|
|
|
# OPAL_CHECK_SINGULARITY(prefix, [action-if-found], [action-if-not-found])
|
|
# --------------------------------------------------------
|
|
AC_DEFUN([OPAL_CHECK_SINGULARITY],[
|
|
OPAL_VAR_SCOPE_PUSH([spath have_singularity])
|
|
|
|
AC_ARG_WITH([singularity],
|
|
[AC_HELP_STRING([--with-singularity(=DIR)],
|
|
[Build support for the Singularity container, optionally adding DIR to the search path])])
|
|
spath=
|
|
AC_MSG_CHECKING([if Singularity support is to be built])
|
|
AS_IF([test "$with_singularity" = "no"],
|
|
[AC_MSG_RESULT([no])
|
|
have_singularity=no],
|
|
[AC_MSG_RESULT([yes])
|
|
AS_IF([test -z "$with_singularity" || test "$with_singularity" = "yes"],
|
|
[ # look for the singularity command in the default path
|
|
AC_CHECK_PROG([SINGULARITY], [singularity], [singularity])
|
|
AS_IF([test "$SINGULARITY" != ""],
|
|
[have_singularity=yes],
|
|
[AS_IF([test "$with_singularity" = "yes"],
|
|
[AC_MSG_WARN([Singularity support requested, but required executable])
|
|
AC_MSG_WARN(["singularity" not found in default locations])
|
|
AC_MSG_ERROR([Cannot continue])])
|
|
have_singularity=no])],
|
|
[ AC_MSG_CHECKING([for existence of $with_singularity/bin])
|
|
# look for the singularity command in the bin subdirectory
|
|
AS_IF([test ! -d "$with_singularity/bin"],
|
|
[AC_MSG_RESULT([not found])
|
|
AC_MSG_WARN([Directory $with_singularity/bin not found])
|
|
AC_MSG_ERROR([Cannot continue])],
|
|
[AC_MSG_RESULT([found])])
|
|
save_path=$PATH
|
|
PATH=$with_singularity/bin:$PATH
|
|
AC_CHECK_PROG([SINGULARITY], [singularity], [singularity])
|
|
AS_IF([test "$SINGULARITY" != ""],
|
|
[have_singularity=yes
|
|
spath=$with_singularity/bin],
|
|
[have_singlarity=no
|
|
AC_MSG_WARN([Singularity support requested, but required executable])
|
|
AC_MSG_WARN(["singularity" not found in either default or specified path])
|
|
AC_MSG_ERROR([Cannot continue])])
|
|
PATH=$save_path
|
|
]
|
|
)])
|
|
|
|
AC_DEFINE_UNQUOTED(OPAL_SINGULARITY_PATH, "$spath", [Path to Singularity binaries])
|
|
AS_IF([test "$have_singularity" = "yes"],
|
|
[$2], [$3])
|
|
OPAL_VAR_SCOPE_POP
|
|
])
|