Я очень сомневаюсь, можно ли легко подключить AC_LANG, AC_TRY_COMPILE и т. Д. Серии макросов без фактического перезаписи частей autoconf.
Безопасная ставка для вас - это просто написать тест. Если вам не нужен этот тест в нескольких проектах, вам даже не нужно переносить тест в макросы m4.
Тест сначала должен быть проверен на nvcc
, а затем создать некоторый исходный тестовый файл и, наконец, попытаться скомпилировать его с помощью $NVCC
. Затем нужно изучить результаты компиляции (код возврата и сгенерированные файлы) и, наконец, очистить все файлы, которые он мог бы сгенерировать.
Что-то вроде
AC_ARG_VAR([NVCC], [nvcc compiler to use])
AC_PATH_PROG([NVCC], [nvcc], [no])
working_nvcc=no
if test "x$NVCC" != "xno"
the
AC_MSG_CHECKING([whether nvcc works])
cat>conftest.c<<EOF
__global__ whatever() {
...
}
EOF
if $NVCC conftest.c && test_whether_output_files_are_ok
then
working_nvcc=yes
fi
rm -f conftest.c conftest.o conftest.what conftest.ever
AC_MSG_RESULT([$working_nvcc])
fi
AM_CONDITIONAL([WORKING_NVCC], [test "x$working_nvcc" = "xyes"])
Спасибо много. Это более общий ответ автоуслуг, но это именно то, что мне нужно. –