diff options
author | Willem Jan Palenstijn <wjp@usecode.org> | 2019-03-29 19:42:12 +0100 |
---|---|---|
committer | Willem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl> | 2019-09-25 14:10:08 +0200 |
commit | f5ecfea64afa4b2971a584840c4da035ae638239 (patch) | |
tree | db73f25fd3c054d7c57ea0e57c7b39634b67d5b1 | |
parent | 9c869d834ddc681299df9999787eb92bd6010dac (diff) | |
download | astra-f5ecfea64afa4b2971a584840c4da035ae638239.tar.gz astra-f5ecfea64afa4b2971a584840c4da035ae638239.tar.bz2 astra-f5ecfea64afa4b2971a584840c4da035ae638239.tar.xz astra-f5ecfea64afa4b2971a584840c4da035ae638239.zip |
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 .
-rw-r--r-- | build/linux/acinclude.m4 | 17 | ||||
-rw-r--r-- | build/linux/configure.ac | 6 |
2 files changed, 23 insertions, 0 deletions
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 <boost/shared_ptr.hpp> +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)]],,) |