diff options
author | Tom de Vries <tdevries@suse.de> | 2018-08-04 20:07:22 +0000 |
---|---|---|
committer | Tom de Vries <vries@gcc.gnu.org> | 2018-08-04 20:07:22 +0000 |
commit | 099400909ed214b5fbf04404bbbc823fdb355b96 (patch) | |
tree | 088ef575bf4cd22a5750acea15219ceed28ee893 /libgomp/configure | |
parent | 11fc901348dc14cc6338a4932cb2ddee396d3916 (diff) | |
download | gcc-099400909ed214b5fbf04404bbbc823fdb355b96.zip gcc-099400909ed214b5fbf04404bbbc823fdb355b96.tar.gz gcc-099400909ed214b5fbf04404bbbc823fdb355b96.tar.bz2 |
[libgomp, nvptx, --without-cuda-driver] Don't use system cuda driver
Using libgomp configure option --with-cuda-driver=<dir> we can indicate what
cuda driver to use to build the libgomp nvptx plugin. Without such an option,
the system cuda driver is used, if available. If not availabe, a dlopen
interface is used instead.
However, when we use --without-cuda-driver (or the equivalent
--with-cuda-driver=no) the system cuda driver is still used if available.
This patch fixes that, making sure that --without-cuda-driver selects the dlopen
interface.
Build on x86_64 with nvptx accelerator and tested libgomp testsuite, with and
without option --without-cuda-driver.
2018-08-04 Tom de Vries <tdevries@suse.de>
* plugin/configfrag.ac: For --without-cuda-driver, set
CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB to no. Handle
CUDA_DRIVER_INCLUDE == no and CUDA_DRIVER_LIB == no.
* configure: Regenerate.
From-SVN: r263310
Diffstat (limited to 'libgomp/configure')
-rwxr-xr-x | libgomp/configure | 49 |
1 files changed, 30 insertions, 19 deletions
diff --git a/libgomp/configure b/libgomp/configure index ced7606..b4fc9d3 100755 --- a/libgomp/configure +++ b/libgomp/configure @@ -15302,7 +15302,11 @@ if test "${with_cuda_driver_lib+set}" = set; then : fi case "x$with_cuda_driver" in - x | xno) ;; + x) ;; + xno) + CUDA_DRIVER_INCLUDE=no + CUDA_DRIVER_LIB=no + ;; *) CUDA_DRIVER_INCLUDE=$with_cuda_driver/include CUDA_DRIVER_LIB=$with_cuda_driver/lib ;; @@ -15313,10 +15317,12 @@ fi if test "x$with_cuda_driver_lib" != x; then CUDA_DRIVER_LIB=$with_cuda_driver_lib fi -if test "x$CUDA_DRIVER_INCLUDE" != x; then +if test "x$CUDA_DRIVER_INCLUDE" != x \ + && test "x$CUDA_DRIVER_INCLUDE" != xno; then CUDA_DRIVER_CPPFLAGS=-I$CUDA_DRIVER_INCLUDE fi -if test "x$CUDA_DRIVER_LIB" != x; then +if test "x$CUDA_DRIVER_LIB" != x \ + && test "x$CUDA_DRIVER_LIB" != xno; then CUDA_DRIVER_LDFLAGS=-L$CUDA_DRIVER_LIB fi @@ -15400,17 +15406,19 @@ if test x"$enable_offload_targets" != x; then nvptx*) tgt_name=nvptx PLUGIN_NVPTX=$tgt - PLUGIN_NVPTX_CPPFLAGS=$CUDA_DRIVER_CPPFLAGS - PLUGIN_NVPTX_LDFLAGS=$CUDA_DRIVER_LDFLAGS - PLUGIN_NVPTX_LIBS='-lcuda' - - PLUGIN_NVPTX_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$PLUGIN_NVPTX_CPPFLAGS $CPPFLAGS" - PLUGIN_NVPTX_save_LDFLAGS=$LDFLAGS - LDFLAGS="$PLUGIN_NVPTX_LDFLAGS $LDFLAGS" - PLUGIN_NVPTX_save_LIBS=$LIBS - LIBS="$PLUGIN_NVPTX_LIBS $LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "x$CUDA_DRIVER_LIB" != xno \ + && test "x$CUDA_DRIVER_LIB" != xno; then + PLUGIN_NVPTX_CPPFLAGS=$CUDA_DRIVER_CPPFLAGS + PLUGIN_NVPTX_LDFLAGS=$CUDA_DRIVER_LDFLAGS + PLUGIN_NVPTX_LIBS='-lcuda' + + PLUGIN_NVPTX_save_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$PLUGIN_NVPTX_CPPFLAGS $CPPFLAGS" + PLUGIN_NVPTX_save_LDFLAGS=$LDFLAGS + LDFLAGS="$PLUGIN_NVPTX_LDFLAGS $LDFLAGS" + PLUGIN_NVPTX_save_LIBS=$LIBS + LIBS="$PLUGIN_NVPTX_LIBS $LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include "cuda.h" int @@ -15426,13 +15434,16 @@ if ac_fn_c_try_link "$LINENO"; then : fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - CPPFLAGS=$PLUGIN_NVPTX_save_CPPFLAGS - LDFLAGS=$PLUGIN_NVPTX_save_LDFLAGS - LIBS=$PLUGIN_NVPTX_save_LIBS + CPPFLAGS=$PLUGIN_NVPTX_save_CPPFLAGS + LDFLAGS=$PLUGIN_NVPTX_save_LDFLAGS + LIBS=$PLUGIN_NVPTX_save_LIBS + fi case $PLUGIN_NVPTX in nvptx*) - if test "x$CUDA_DRIVER_INCLUDE" = x \ - && test "x$CUDA_DRIVER_LIB" = x; then + if (test "x$CUDA_DRIVER_INCLUDE" = x \ + || test "x$CUDA_DRIVER_INCLUDE" = xno) \ + && (test "x$CUDA_DRIVER_LIB" = x \ + || test "x$CUDA_DRIVER_LIB" = xno); then PLUGIN_NVPTX=1 PLUGIN_NVPTX_CPPFLAGS='-I$(srcdir)/plugin/cuda' PLUGIN_NVPTX_LIBS='-ldl' |