From f5ecfea64afa4b2971a584840c4da035ae638239 Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Fri, 29 Mar 2019 19:42:12 +0100 Subject: Check if boost and CUDA versions are compatible See https://github.com/astra-toolbox/astra-toolbox/issues/163 and https://github.com/boostorg/config/pull/175 . --- build/linux/acinclude.m4 | 17 +++++++++++++++++ build/linux/configure.ac | 6 ++++++ 2 files changed, 23 insertions(+) diff --git a/build/linux/acinclude.m4 b/build/linux/acinclude.m4 index 92f263a..4d278c7 100644 --- a/build/linux/acinclude.m4 +++ b/build/linux/acinclude.m4 @@ -166,3 +166,20 @@ fi rm -f conftest.cu conftest.o conftest.nvcc.out ]) +dnl ASTRA_CHECK_CUDA_BOOST(action-if-ok, action-if-not-ok) +dnl Check for a specific incompatibility between boost and cuda version +dnl (See https://github.com/boostorg/config/pull/175 ) +AC_DEFUN([ASTRA_CHECK_CUDA_BOOST],[ +cat >conftest.cu <<_ACEOF +#include +int main() { + return 0; +} +_ACEOF +ASTRA_RUN_LOGOUTPUT([$NVCC -c -o conftest.o conftest.cu $NVCCFLAGS]) +AS_IF([test $? = 0],[$1],[ + AS_ECHO(["$as_me: failed program was:"]) >&AS_MESSAGE_LOG_FD + sed 's/^/| /' conftest.cu >&AS_MESSAGE_LOG_FD + $2]) +]) + diff --git a/build/linux/configure.ac b/build/linux/configure.ac index 0a9024e..c992516 100644 --- a/build/linux/configure.ac +++ b/build/linux/configure.ac @@ -120,6 +120,12 @@ if test x"$HAVECUDA" = xyes; then AC_MSG_CHECKING([if nvcc works]) ASTRA_CHECK_NVCC(HAVECUDA,NVCCFLAGS_EXTRA) AC_MSG_RESULT($HAVECUDA) + + AC_MSG_CHECKING([if boost and CUDA versions are compatible]) + ASTRA_CHECK_CUDA_BOOST(AC_MSG_RESULT([yes]),[ + AC_MSG_RESULT([no]) + AC_MSG_ERROR([Boost and CUDA versions are incompatible. You probably have to upgrade boost.]) + ]) fi AC_ARG_WITH(cuda_compute, [[ --with-cuda-compute=archs comma separated list of CUDA compute models (optional)]],,) -- cgit v1.2.3