fine tuning for OpenCL fallback.

This commit is contained in:
suter_a 2017-08-21 14:28:12 +02:00
parent 49db148c37
commit 25c7894fe0

View File

@ -359,7 +359,7 @@ AC_ARG_WITH([boostinc],
)
AC_SUBST(BOOST_INCLUDE)
if test "${BOOST_FOUND}" != "1"; then
BOOST_LIBS="-lboost_system"
BOOST_LIBS="-lboost_system-mt"
BOOST_CFLAGS="-I${BOOST_INCLUDE}"
fi
AC_SUBST(BOOST_LIBS)
@ -936,24 +936,41 @@ AC_ARG_ENABLE([dks], [AS_HELP_STRING([--enable-dks],[build musrfit with DKS (GPU
AC_MSG_RESULT([${opencl_prefix}])
dnl Checking for opencl.h and libOpenCL.so
if test ! "$ARCH" = "DARWIN"; then
AC_MSG_NOTICE([linux like system])
if test -x "$opencl_prefix/include/CL/opencl.h"; then
OPENCL_CFLAGS="-I$opencl_prefix/include/"
CXXFLAGS="$OPENCL_CFLAGS $CXXFLAGS"
OPENCL_LDFLAGS="-L$opencl_prefix/lib/x86_64/"
LDFLAGS="$OPENCL_LDFLAGS $LDFLAGS"
else
AC_MSG_RESULT([not found!])
AC_MSG_FAILURE([neither CUDA nor OpenCL found])
fi
else
AC_MSG_NOTICE([Apple macOS system, not yet implemented])
fi
AC_MSG_NOTICE([host_os=ARCH=$host_os])
case "$host_os" in
darwin*)
AC_MSG_NOTICE([macOS like system])
if test -r /System/Library/Frameworks/OpenCL.framework/Headers/opencl.h; then
opencl_prefix="/System/Library/Frameworks/OpenCL.framework/"
AC_MSG_NOTICE([OpenCL header found: ${opencl_prefix}])
dnl OPENCL_CFLAGS="-I$opencl_prefix/Headers/ -framework opencl"
dnl OPENCL_CFLAGS="-I$opencl_prefix/Headers/"
dnl CXXFLAGS="$OPENCL_CFLAGS $CXXFLAGS"
dnl OPENCL_LDFLAGS="-L$opencl_prefix/Libraries"
dnl LDFLAGS="$OPENCL_LDFLAGS $LDFLAGS"
else
AC_MSG_RESULT([not found!])
AC_MSG_FAILURE([neither CUDA nor OpenCL found])
fi
;;
*)
AC_MSG_NOTICE([linux like system])
if test -x "$opencl_prefix/include/CL/opencl.h"; then
AC_MSG_NOTICE([OpenCL header found: ${opencl_prefix}])
dnl OPENCL_CFLAGS="-I$opencl_prefix/include/"
dnl CXXFLAGS="$OPENCL_CFLAGS $CXXFLAGS"
dnl OPENCL_LDFLAGS="-L$opencl_prefix/lib/x86_64/"
dnl LDFLAGS="$OPENCL_LDFLAGS $LDFLAGS"
else
AC_MSG_RESULT([not found!])
AC_MSG_FAILURE([neither CUDA nor OpenCL found])
fi
;;
esac
fi
dnl -------------------------------------------
dnl check for DKSlibOpenCL.so
dnl check for DKS
dnl -------------------------------------------
AC_ARG_WITH([dks],
[AS_HELP_STRING([--with-dks],[prefix of the DKS installation, e.g. /usr/local/DKS/build])],
@ -982,10 +999,18 @@ AC_ARG_ENABLE([dks], [AS_HELP_STRING([--enable-dks],[build musrfit with DKS (GPU
DKS_CUDADIR="$cuda_prefix"
DKS_CFLAGS="-DDKS_OPENCL -DDKS_CUDA -I${DKS_INCDIR} ${CUDA_CFLAGS}"
DKS_LIBS="${CUDA_LDFLAGS} -lOpenCL -L${DKS_LIBDIR} -ldksshared"
else
else
DKS_OPENCLDIR="$opencl_prefix"
DKS_CFLAGS="-DDKS_OPENCL -I${DKS_INCDIR} ${OPENCL_CFLAGS}"
DKS_LIBS="${OPENCL_LDFLAGS} -lOpenCL -L${DKS_LIBDIR} -ldksshared"
case "$host_os" in
darwin*)
DKS_CFLAGS="-DDKS_OPENCL -I${DKS_INCDIR} ${OPENCL_CFLAGS}"
DKS_LIBS="${OPENCL_LDFLAGS} -framework opencl -L${DKS_LIBDIR} -ldksshared"
;;
*)
DKS_CFLAGS="-DDKS_OPENCL -I${DKS_INCDIR} ${OPENCL_CFLAGS}"
DKS_LIBS="${OPENCL_LDFLAGS} -lOpenCL -L${DKS_LIBDIR} -ldksshared"
;;
esac
fi
AC_SUBST(DKS_CFLAGS)