configury: silence warning on Solaris
* remove config/ompi_config_solaris_threads.m4 which was dead code * check if pthreads work "as is" on all platforms including Solaris (FWIW, the test should have been skipped if Solaris threads are used and not if configure is ran on a Solaris box) Refs trac:4911 This commit was SVN r32792. The following Trac tickets were found above: Ticket 4911 --> https://svn.open-mpi.org/trac/ompi/ticket/4911
Этот коммит содержится в:
родитель
5d0e65085f
Коммит
b1c4daa956
@ -1,251 +0,0 @@
|
||||
dnl
|
||||
dnl Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
||||
dnl University Research and Technology
|
||||
dnl Corporation. All rights reserved.
|
||||
dnl Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
dnl of Tennessee Research Foundation. All rights
|
||||
dnl reserved.
|
||||
dnl Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
dnl University of Stuttgart. All rights reserved.
|
||||
dnl Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
dnl All rights reserved.
|
||||
dnl Copyright (c) 2012 Cisco Systems, Inc. All rights reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
dnl
|
||||
dnl $HEADER$
|
||||
dnl
|
||||
dnl OMPI_CONFIG_SOLARIS_THREADS()
|
||||
dnl
|
||||
|
||||
# ********************************************************************
|
||||
#
|
||||
# Internal macros - do not call from outside OMPI_CONFIG_SOLARIS_THREADS
|
||||
#
|
||||
# ********************************************************************
|
||||
|
||||
AC_DEFUN([OMPI_INTL_SOLARIS_TRY_LINK], [
|
||||
# BEGIN: OMPI_INTL_SOLARIS_TRY_LINK
|
||||
#
|
||||
# Make sure that we can run a small application in C or C++, which
|
||||
# ever is the current language. Do make sure that C or C++ is the
|
||||
# current language.
|
||||
AC_TRY_LINK([#include <thread.h>],
|
||||
[thread_t th; thr_join(th, 0, 0);
|
||||
thr_create(0,0,0,0,0,0); ],
|
||||
[$1], [$2])
|
||||
# END: OMPI_INTL_SOLARIS_TRY_LINK
|
||||
])dnl
|
||||
|
||||
|
||||
AC_DEFUN([OMPI_INTL_SOLARIS_TRY_LINK_FC], [
|
||||
# BEGIN: OMPI_INTL_SOLARIS_TRY_LINK_FC
|
||||
#
|
||||
# Make sure that we can run a small application in Fortran, with
|
||||
# pthreads living in a C object file
|
||||
|
||||
# Fortran module
|
||||
cat > conftestf.f <<EOF
|
||||
program fpthread
|
||||
INTEGER i
|
||||
i = 1
|
||||
end
|
||||
EOF
|
||||
|
||||
# C module
|
||||
if test -f conftest.h; then
|
||||
ompi_conftest_h="#include \"conftest.h\""
|
||||
else
|
||||
ompi_conftest_h=""
|
||||
fi
|
||||
cat > conftest.c <<EOF
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <thread.h>
|
||||
$ompi_conftest_h
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
void ompi_pthread()
|
||||
{
|
||||
thread_t th;
|
||||
thr_join(th, 0, 0);
|
||||
thr_create(0,0,0,0,0,0);
|
||||
}
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
EOF
|
||||
|
||||
# Try the compile
|
||||
OPAL_LOG_COMMAND(
|
||||
[$CC $CFLAGS -I. -c conftest.c],
|
||||
OPAL_LOG_COMMAND(
|
||||
[$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS],
|
||||
[HAPPY=1],
|
||||
[HAPPY=0]),
|
||||
[HAPPY=0])
|
||||
|
||||
if test "$HAPPY" = "1"; then
|
||||
$1
|
||||
else
|
||||
OPAL_LOG_MSG([here is the C program:], 1)
|
||||
OPAL_LOG_FILE([conftest.c])
|
||||
if test -f conftest.h; then
|
||||
OPAL_LOG_MSG([here is contest.h:], 1)
|
||||
OPAL_LOG_FILE([conftest.h])
|
||||
fi
|
||||
OPAL_LOG_MSG([here is the fortran program:], 1)
|
||||
OPAL_LOG_FILE([conftestf.f])
|
||||
$2
|
||||
fi
|
||||
|
||||
unset HAPPY ompi_conftest_h
|
||||
rm -rf conftest*
|
||||
# END: OMPI_INTL_SOLARIS_TRY_LINK_FC
|
||||
])dnl
|
||||
|
||||
|
||||
AC_DEFUN([OMPI_CONFIG_SOLARIS_THREADS_C], [
|
||||
if test "$BASECC" = "cc"; then
|
||||
STHREAD_CFLAGS="-mt"
|
||||
style="Workshop/Forte"
|
||||
else
|
||||
STHREAD_CPPFLAGS="-D_REENTRANT"
|
||||
STHREAD_LIBS="-lthread"
|
||||
style="-lthread"
|
||||
fi
|
||||
AC_MSG_CHECKING([if C compiler and Solaris threads work])
|
||||
CFLAGS="$STHREAD_CFLAGS $CFLAGS_orig"
|
||||
CPPFLAGS="$STHREAD_CPPFLAGS $CPPFLAGS_orig"
|
||||
LDFLAGS="$STHREAD_LDFLAGS $LDFLAGS_orig"
|
||||
LIBS="$STHREAD_LIBS $LIBS_orig"
|
||||
AC_LANG_PUSH(C)
|
||||
OMPI_INTL_SOLARIS_TRY_LINK(ompi_sthread_c_success=1,
|
||||
ompi_sthread_c_success=0)
|
||||
AC_LANG_POP(C)
|
||||
if test "$ompi_sthread_c_success" = "1"; then
|
||||
AC_MSG_RESULT([yes - $style])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
])dnl
|
||||
|
||||
|
||||
AC_DEFUN([OMPI_CONFIG_SOLARIS_THREADS_CXX], [
|
||||
if test "$BASECXX" = "CC"; then
|
||||
STHREAD_CXXFLAGS="-mt"
|
||||
style="Workshop/Forte"
|
||||
elif test "$BASECXX" = "KCC"; then
|
||||
STHREAD_CXXFLAGS="--backend -mt"
|
||||
style="KCC"
|
||||
else
|
||||
STHREAD_CXXCPPFLAGS="-D_REENTRANT"
|
||||
STHREAD_LIBS="-lthread"
|
||||
style="-lthread"
|
||||
fi
|
||||
CXXFLAGS="$STHREAD_CXXFLAGS $CXXFLAGS_orig"
|
||||
CXXCPPFLAGS="$STHREAD_CXXPPFLAGS $CXXPPFLAGS_orig"
|
||||
LDFLAGS="$STHREAD_LDFLAGS $LDFLAGS_orig"
|
||||
LIBS="$STHREAD_LIBS $LIBS_orig"
|
||||
AC_MSG_CHECKING([if C++ compiler and Solaris threads work])
|
||||
AC_LANG_PUSH(C++)
|
||||
OMPI_INTL_SOLARIS_TRY_LINK(ompi_sthread_cxx_success=1,
|
||||
ompi_sthread_cxx_success=0)
|
||||
AC_LANG_POP(C++)
|
||||
if test "$ompi_sthread_cxx_success" = "1"; then
|
||||
AC_MSG_RESULT([yes - $style])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
])dnl
|
||||
|
||||
|
||||
AC_DEFUN([OMPI_CONFIG_SOLARIS_THREADS_FC], [
|
||||
if test "$OMPI_WANT_FC_BINDINGS" = "1"; then
|
||||
if test "$BASEFC" = "f77"; then
|
||||
STHREAD_FCFLAGS="-mt"
|
||||
style="Workshop/Forte"
|
||||
else
|
||||
STHREAD_LIBS="-lthread"
|
||||
style="-lthread"
|
||||
fi
|
||||
FCFLAGS="$STHREAD_FCFLAGS $FCFLAGS_orig"
|
||||
CFLAGS="$STHREAD_CFLAGS $CFLAGS_orig"
|
||||
CPPFLAGS="$STHREAD_CPPFLAGS $CPPFLAGS_orig"
|
||||
LDFLAGS="$STHREAD_LDFLAGS $LDFLAGS_orig"
|
||||
LIBS="$STHREAD_LIBS $LIBS_orig"
|
||||
AC_MSG_CHECKING([if FC compiler and Solaris threads work])
|
||||
AC_LANG_PUSH(C)
|
||||
OMPI_INTL_SOLARIS_TRY_LINK_FC(ompi_sthread_fc_success=1,
|
||||
ompi_sthread_fc_success=0)
|
||||
AC_LANG_POP(C)
|
||||
if test "$ompi_sthread_fc_success" = "1"; then
|
||||
AC_MSG_RESULT([yes - $style])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
else
|
||||
ompi_sthread_fc_success=1
|
||||
fi
|
||||
])dnl
|
||||
|
||||
|
||||
AC_DEFUN([OMPI_CONFIG_SOLARIS_THREADS],[
|
||||
ompi_sthread_c_success=0
|
||||
ompi_sthread_fc_success=0
|
||||
ompi_sthread_cxx_success=0
|
||||
|
||||
orig_CFLAGS="$CFLAGS"
|
||||
orig_FCFLAGS="$FCFLAGS"
|
||||
orig_CXXFLAGS="$CXXFLAGS"
|
||||
orig_CPPFLAGS="$CPPFLAGS"
|
||||
orig_CXXCPPFLAGS="$CXXCPPFLAGS"
|
||||
orig_LDFLAGS="$LDFLAGS"
|
||||
orig_LIBS="$LIBS"
|
||||
|
||||
STHREAD_CFLAGS=
|
||||
STHREAD_FCFLAGS=
|
||||
STHREAD_CXXFLAGS=
|
||||
STHREAD_CPPFLAGS=
|
||||
STHREAD_CXXCPPFLAGS=
|
||||
STHREAD_LDFLAGS=
|
||||
STHREAD_LIBS=
|
||||
|
||||
# Only run C++ and Fortran if those compilers already configured
|
||||
AC_PROVIDE_IFELSE([AC_PROG_CC],
|
||||
[OMPI_CONFIG_SOLARIS_THREADS_C],
|
||||
[ompi_sthread_c_success=1])
|
||||
|
||||
AC_PROVIDE_IFELSE([AC_PROG_CXX],
|
||||
[OMPI_CONFIG_SOLARIS_THREADS_CXX],
|
||||
[ompi_sthread_cxx_success=1])
|
||||
|
||||
AC_PROVIDE_IFELSE([AC_PROG_FC],
|
||||
[OMPI_CONFIG_SOLARIS_THREADS_FC],
|
||||
[ompi_sthread_fc_success=1])
|
||||
|
||||
CFLAGS="$orig_CFLAGS"
|
||||
FCFLAGS="$orig_FCFLAGS"
|
||||
CXXFLAGS="$orig_CXXFLAGS"
|
||||
CPPFLAGS="$orig_CPPFLAGS"
|
||||
CXXCPPFLAGS="$orig_CXXCPPFLAGS"
|
||||
LDFLAGS="$orig_LDFLAGS"
|
||||
LIBS="$orig_LIBS"
|
||||
|
||||
if test "$ompi_sthread_c_success" = "1" -a \
|
||||
"$ompi_sthread_cxx_success" = "1" -a \
|
||||
"$ompi_sthread_fc_success" = "1"; then
|
||||
internal_useless=1
|
||||
$1
|
||||
else
|
||||
internal_useless=1
|
||||
$2
|
||||
fi
|
||||
|
||||
unset ompi_sthread_c_success ompi_sthread_fc_success ompi_sthread_cxx_success
|
||||
unset internal_useless
|
||||
])dnl
|
||||
|
@ -11,6 +11,8 @@ dnl Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
dnl All rights reserved.
|
||||
dnl Copyright (c) 2012 Cisco Systems, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2014 Intel, Inc. All rights reserved.
|
||||
dnl Copyright (c) 2014 Research Organization for Information Science
|
||||
dnl and Technology (RIST). All rights reserved.
|
||||
dnl $COPYRIGHT$
|
||||
dnl
|
||||
dnl Additional copyrights may follow
|
||||
@ -176,43 +178,17 @@ AC_DEFUN([OPAL_INTL_POSIX_THREADS_PLAIN_C], [
|
||||
#
|
||||
if test "$opal_pthread_c_success" = "0"; then
|
||||
AC_MSG_CHECKING([if C compiler and POSIX threads work as is])
|
||||
if test "$HAVE_POSIX_THREADS" = "1" ; then
|
||||
run_this_test=1
|
||||
else
|
||||
case "${host_cpu}-${host_os}" in
|
||||
*solaris*)
|
||||
AC_MSG_RESULT([no - Solaris, not checked])
|
||||
run_this_test=0
|
||||
;;
|
||||
*-aix* | *-freebsd*)
|
||||
if test "`echo $CPPFLAGS | $GREP 'D_THREAD_SAFE'`" = ""; then
|
||||
PTHREAD_CPPFLAGS="-D_THREAD_SAFE"
|
||||
CPPFLAGS="$CPPFLAGS $PTHREAD_CPPFLAGS"
|
||||
fi
|
||||
run_this_test=1
|
||||
;;
|
||||
*)
|
||||
if test "`echo $CPPFLAGS | $GREP 'D_REENTRANT'`" = ""; then
|
||||
PTHREAD_CPPFLAGS="-D_REENTRANT"
|
||||
CPPFLAGS="$CPPFLAGS $PTHREAD_CPPFLAGS"
|
||||
fi
|
||||
run_this_test=1
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if test "$run_this_test" = "1" ; then
|
||||
AC_LANG_PUSH(C)
|
||||
OPAL_INTL_PTHREAD_TRY_LINK(opal_pthread_c_success=1,
|
||||
opal_pthread_c_success=0)
|
||||
AC_LANG_POP(C)
|
||||
if test "$opal_pthread_c_success" = "1"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
PTHREAD_CPPFLAGS=
|
||||
CPPFLAGS="$orig_CPPFLAGS"
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
AC_LANG_PUSH(C)
|
||||
OPAL_INTL_PTHREAD_TRY_LINK(opal_pthread_c_success=1,
|
||||
opal_pthread_c_success=0)
|
||||
AC_LANG_POP(C)
|
||||
if test "$opal_pthread_c_success" = "1"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
PTHREAD_CPPFLAGS=
|
||||
CPPFLAGS="$orig_CPPFLAGS"
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
fi
|
||||
])dnl
|
||||
@ -224,43 +200,17 @@ AC_DEFUN([OPAL_INTL_POSIX_THREADS_PLAIN_CXX], [
|
||||
#
|
||||
if test "$opal_pthread_cxx_success" = "0"; then
|
||||
AC_MSG_CHECKING([if C++ compiler and POSIX threads work as is])
|
||||
if test "$HAVE_POSIX_THREADS" = "1" ; then
|
||||
run_this_test=1
|
||||
else
|
||||
case "${host_cpu}-${host_os}" in
|
||||
*solaris*)
|
||||
AC_MSG_RESULT([no - Solaris, not checked])
|
||||
run_this_test=0
|
||||
;;
|
||||
*-aix* | *-freebsd*)
|
||||
if test "`echo $CXXCPPFLAGS | $GREP 'D_THREAD_SAFE'`" = ""; then
|
||||
PTHREAD_CXXCPPFLAGS="-D_THREAD_SAFE"
|
||||
CXXCPPFLAGS="$CXXCPPFLAGS $PTHREAD_CXXCPPFLAGS"
|
||||
fi
|
||||
run_this_test=1
|
||||
;;
|
||||
*)
|
||||
if test "`echo $CXXCPPFLAGS | $GREP 'D_REENTRANT'`" = ""; then
|
||||
PTHREAD_CXXCPPFLAGS="-D_REENTRANT"
|
||||
CXXCPPFLAGS="$CXXCPPFLAGS $PTHREAD_CXXCPPFLAGS"
|
||||
fi
|
||||
run_this_test=1
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if test "$run_this_test" = "1" ; then
|
||||
AC_LANG_PUSH(C++)
|
||||
OPAL_INTL_PTHREAD_TRY_LINK(opal_pthread_cxx_success=1,
|
||||
opal_pthread_cxx_success=0)
|
||||
AC_LANG_POP(C++)
|
||||
if test "$opal_pthread_cxx_success" = "1"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
PTHREAD_CXXCPPFLAGS=
|
||||
CXXCPPFLAGS="$orig_CXXCPPFLAGS"
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
AC_LANG_PUSH(C++)
|
||||
OPAL_INTL_PTHREAD_TRY_LINK(opal_pthread_cxx_success=1,
|
||||
opal_pthread_cxx_success=0)
|
||||
AC_LANG_POP(C++)
|
||||
if test "$opal_pthread_cxx_success" = "1"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
PTHREAD_CXXCPPFLAGS=
|
||||
CXXCPPFLAGS="$orig_CXXCPPFLAGS"
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
fi
|
||||
])dnl
|
||||
@ -272,30 +222,15 @@ AC_DEFUN([OPAL_INTL_POSIX_THREADS_PLAIN_FC], [
|
||||
#
|
||||
if test "$opal_pthread_fortran_success" = "0" -a "$OMPI_WANT_FORTRAN_BINDINGS" = "1" -a $ompi_fortran_happy -eq 1; then
|
||||
AC_MSG_CHECKING([if Fortran compiler and POSIX threads work as is])
|
||||
if test "$HAVE_POSIX_THREADS" = "1" ; then
|
||||
run_this_test=1
|
||||
else
|
||||
case "${host_cpu}-${host_os}" in
|
||||
*solaris*)
|
||||
AC_MSG_RESULT([no - Solaris, not checked])
|
||||
run_this_test=0
|
||||
;;
|
||||
*)
|
||||
run_this_test=1
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if test "$run_this_test" = "1" ; then
|
||||
AC_LANG_PUSH(C)
|
||||
OPAL_INTL_PTHREAD_TRY_LINK_FORTRAN(opal_pthread_fortran_success=1,
|
||||
opal_pthread_fortran_success=0)
|
||||
AC_LANG_POP(C)
|
||||
if test "$opal_pthread_fortran_success" = "1"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
AC_LANG_PUSH(C)
|
||||
OPAL_INTL_PTHREAD_TRY_LINK_FORTRAN(opal_pthread_fortran_success=1,
|
||||
opal_pthread_fortran_success=0)
|
||||
AC_LANG_POP(C)
|
||||
if test "$opal_pthread_fortran_success" = "1"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
fi
|
||||
])dnl
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user