@ -1,6 +1,6 @@
#! /bin/sh
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for PSBLAS 3.7.0 .
# Generated by GNU Autoconf 2.71 for PSBLAS 3.8.1 .
#
#
# Report bugs to <https://github.com/sfilippone/psblas3/issues>.
# Report bugs to <https://github.com/sfilippone/psblas3/issues>.
#
#
@ -611,8 +611,8 @@ MAKEFLAGS=
# Identity of this package.
# Identity of this package.
PACKAGE_NAME='PSBLAS'
PACKAGE_NAME='PSBLAS'
PACKAGE_TARNAME='psblas'
PACKAGE_TARNAME='psblas'
PACKAGE_VERSION='3.7.0 '
PACKAGE_VERSION='3.8.1 '
PACKAGE_STRING='PSBLAS 3.7.0 '
PACKAGE_STRING='PSBLAS 3.8.1 '
PACKAGE_BUGREPORT='https://github.com/sfilippone/psblas3/issues'
PACKAGE_BUGREPORT='https://github.com/sfilippone/psblas3/issues'
PACKAGE_URL=''
PACKAGE_URL=''
@ -653,6 +653,20 @@ ac_subst_vars='am__EXEEXT_FALSE
am__EXEEXT_TRUE
am__EXEEXT_TRUE
LTLIBOBJS
LTLIBOBJS
LIBOBJS
LIBOBJS
LCUDA
CUDALD
CUDAD
CUDEFINES
CUDA_NVCC
CUDA_SHORT_VERSION
CUDA_VERSION
CUDA_LIBS
CUDA_INCLUDES
CUDA_DEFINES
CUDA_DIR
EXTRALDLIBS
SPGPU_LIBS
SPGPU_FLAGS
METISINCFILE
METISINCFILE
UTILLIBNAME
UTILLIBNAME
METHDLIBNAME
METHDLIBNAME
@ -815,7 +829,6 @@ enable_openmp
with_blas
with_blas
with_blasdir
with_blasdir
with_lapack
with_lapack
with_rsb
with_metis
with_metis
with_metisincfile
with_metisincfile
with_metisdir
with_metisdir
@ -825,6 +838,8 @@ with_amd
with_amddir
with_amddir
with_amdincdir
with_amdincdir
with_amdlibdir
with_amdlibdir
with_cuda
with_cudacc
'
'
ac_precious_vars='build_alias
ac_precious_vars='build_alias
host_alias
host_alias
@ -1390,7 +1405,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
cat <<_ACEOF
\`configure' configures PSBLAS 3.7.0 to adapt to many kinds of systems.
\`configure' configures PSBLAS 3.8.1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1457,7 +1472,7 @@ fi
if test -n "$ac_init_help"; then
if test -n "$ac_init_help"; then
case $ac_init_help in
case $ac_init_help in
short | recursive ) echo "Configuration of PSBLAS 3.7.0 :";;
short | recursive ) echo "Configuration of PSBLAS 3.8.1 :";;
esac
esac
cat <<\_ACEOF
cat <<\_ACEOF
@ -1505,12 +1520,6 @@ Optional Packages:
--with-blas=<lib> use BLAS library <lib>
--with-blas=<lib> use BLAS library <lib>
--with-blasdir=<dir> search for BLAS library in <dir>
--with-blasdir=<dir> search for BLAS library in <dir>
--with-lapack=<lib> use LAPACK library <lib>
--with-lapack=<lib> use LAPACK library <lib>
--with-rsb Specify Recursive Sparse BLAS library linkage info
(that is, the output of librsb-config --static
--ldflags, or a directory where the usual
bin/include/lib subdirs with a regular RSB
installation resides, or nothing to make the
configure script invoke librsb-config)
--with-metis=LIBNAME Specify the library name for METIS library. Default:
--with-metis=LIBNAME Specify the library name for METIS library. Default:
"-lmetis"
"-lmetis"
--with-metisincfile=DIR Specify the name for METIS include file.
--with-metisincfile=DIR Specify the name for METIS include file.
@ -1523,6 +1532,9 @@ Optional Packages:
--with-amddir=DIR Specify the directory for AMD library and includes.
--with-amddir=DIR Specify the directory for AMD library and includes.
--with-amdincdir=DIR Specify the directory for AMD includes.
--with-amdincdir=DIR Specify the directory for AMD includes.
--with-amdlibdir=DIR Specify the directory for AMD library.
--with-amdlibdir=DIR Specify the directory for AMD library.
--with-cuda=DIR Specify the CUDA install directory.
--with-cudacc A comma-separated list of CCs to compile to, for
example, --with-cudacc=50,60,70,75
Some influential environment variables:
Some influential environment variables:
FC Fortran compiler command
FC Fortran compiler command
@ -1607,7 +1619,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
if $ac_init_version; then
cat <<\_ACEOF
cat <<\_ACEOF
PSBLAS configure 3.7.0
PSBLAS configure 3.8.1
generated by GNU Autoconf 2.71
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
Copyright (C) 2021 Free Software Foundation, Inc.
@ -2291,7 +2303,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
running configure, to aid debugging if configure makes a mistake.
It was created by PSBLAS $as_me 3.7.0 , which was
It was created by PSBLAS $as_me 3.8.1 , which was
generated by GNU Autoconf 2.71. Invocation command line was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
$ $0$ac_configure_args_raw
@ -3265,7 +3277,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
# VERSION is the file containing the PSBLAS version code
# VERSION is the file containing the PSBLAS version code
# FIXME
# FIXME
psblas_cv_version="3.7.0 "
psblas_cv_version="3.8.1 "
# A sample source file
# A sample source file
@ -3440,7 +3452,7 @@ ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_fc_compiler_gnu
ac_compiler_gnu=$ac_cv_fc_compiler_gnu
if test -n "$ac_tool_prefix"; then
if test -n "$ac_tool_prefix"; then
for ac_prog in ftn xlf2003_r xlf2003 xlf95_r xlf95 xlf90 xlf pgf95 pgf90 ifort ifc nagfor gfortran
for ac_prog in ftn xlf2003_r xlf2003 xlf95_r xlf95 xlf90 xlf pgf95 pgf90 flang-new ifort ifc nagfor gfortran
do
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
@ -3489,7 +3501,7 @@ fi
fi
fi
if test -z "$FC"; then
if test -z "$FC"; then
ac_ct_FC=$FC
ac_ct_FC=$FC
for ac_prog in ftn xlf2003_r xlf2003 xlf95_r xlf95 xlf90 xlf pgf95 pgf90 ifort ifc nagfor gfortran
for ac_prog in ftn xlf2003_r xlf2003 xlf95_r xlf95 xlf90 xlf pgf95 pgf90 flang-new ifort ifc nagfor gfortran
do
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
set dummy $ac_prog; ac_word=$2
@ -3916,7 +3928,7 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
ac_compiler_gnu=$ac_cv_c_compiler_gnu
if test -n "$ac_tool_prefix"; then
if test -n "$ac_tool_prefix"; then
for ac_prog in xlc pgcc icc gcc cc
for ac_prog in xlc pgcc clang icc gcc cc
do
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
@ -3965,7 +3977,7 @@ fi
fi
fi
if test -z "$CC"; then
if test -z "$CC"; then
ac_ct_CC=$CC
ac_ct_CC=$CC
for ac_prog in xlc pgcc icc gcc cc
for ac_prog in xlc pgcc clang icc gcc cc
do
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
set dummy $ac_prog; ac_word=$2
@ -4412,7 +4424,7 @@ if test -z "$CXX"; then
CXX=$CCC
CXX=$CCC
else
else
if test -n "$ac_tool_prefix"; then
if test -n "$ac_tool_prefix"; then
for ac_prog in CC xlc++ icpc g++
for ac_prog in CC xlc++ clang++ icpc g++
do
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
@ -4461,7 +4473,7 @@ fi
fi
fi
if test -z "$CXX"; then
if test -z "$CXX"; then
ac_ct_CXX=$CXX
ac_ct_CXX=$CXX
for ac_prog in CC xlc++ icpc g++
for ac_prog in CC xlc++ clang++ icpc g++
do
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
set dummy $ac_prog; ac_word=$2
@ -6393,7 +6405,7 @@ fi
# Define the identity of the package.
# Define the identity of the package.
PACKAGE='psblas'
PACKAGE='psblas'
VERSION='3.7.0 '
VERSION='3.8.1 '
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@ -6862,10 +6874,12 @@ if test x"$psblas_cv_fc" == "x" ; then
# Sun compiler detection
# Sun compiler detection
psblas_cv_fc="sun"
psblas_cv_fc="sun"
elif eval "$MPIFC -V 2>&1 | grep Portland 2>/dev/null" ; then
elif eval "$MPIFC --version 2>&1 | grep flang-new 2>/dev/null" ; then
# Portland group compiler detection
# Portland group compiler detection
psblas_cv_fc="pg"
psblas_cv_fc="flang"
psblas_cv_define_prepend=""
FDEFINES="$psblas_cv_define_prepend-DFLANG $FDEFINES"
elif eval "$MPIFC -V 2>&1 | grep Intel.*Fortran.*Compiler 2>/dev/null" ; then
elif eval "$MPIFC -V 2>&1 | grep Intel.*Fortran.*Compiler 2>/dev/null" ; then
# Intel compiler identification
# Intel compiler identification
@ -7289,6 +7303,9 @@ if test "X$FCOPT" == "X" ; then
elif test "X$psblas_cv_fc" == X"pg" ; then
elif test "X$psblas_cv_fc" == X"pg" ; then
# other compilers ..
# other compilers ..
FCOPT="-fast $FCOPT"
FCOPT="-fast $FCOPT"
elif test "X$psblas_cv_fc" == X"flang" ; then
# other compilers ..
FCOPT="-O3"
# NOTE : PG & Sun use -fast instead -O3
# NOTE : PG & Sun use -fast instead -O3
elif test "X$psblas_cv_fc" == X"sun" ; then
elif test "X$psblas_cv_fc" == X"sun" ; then
# other compilers ..
# other compilers ..
@ -7533,7 +7550,6 @@ fi
if test x"$pac_cv_serial_mpi" == x"yes" ; then
if test x"$pac_cv_serial_mpi" == x"yes" ; then
FDEFINES="$psblas_cv_define_prepend-DSERIAL_MPI $psblas_cv_define_prepend-DMPI_MOD $FDEFINES";
FDEFINES="$psblas_cv_define_prepend-DSERIAL_MPI $psblas_cv_define_prepend-DMPI_MOD $FDEFINES";
CDEFINES="-DSERIAL_MPI $CDEFINES"
CDEFINES="-DSERIAL_MPI $CDEFINES"
CXXDEFINES="-DSERIAL_MPI $CXXDEFINES"
else
else
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking MPI Fortran 2008 interface" >&5
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking MPI Fortran 2008 interface" >&5
printf %s "checking MPI Fortran 2008 interface... " >&6; }
printf %s "checking MPI Fortran 2008 interface... " >&6; }
@ -10001,31 +10017,6 @@ fi
#AC_CHECK_LIB(umf,umfpack_di_solve,psblas_cv_have_umfpack=yes,psblas_cv_have_umfpack=no,[amd])
#AC_CHECK_LIB(umf,umfpack_di_solve,psblas_cv_have_umfpack=yes,psblas_cv_have_umfpack=no,[amd])
# Check whether --with-rsb was given.
if test ${with_rsb+y}
then :
withval=$with_rsb; if test x"$withval" = xno; then
want_rsb_libs= ; else if test x"$withval" = xyes ; then want_rsb_libs=yes ; else want_rsb_libs="$withval" ; fi ; fi
else $as_nop
want_rsb_libs=""
fi
if test x"$want_rsb_libs" != x ; then
if test x"$want_rsb_libs" = xyes ; then
want_rsb_libs="`librsb-config --static --ldflags`"
else
if test -d "$want_rsb_libs" ; then
want_rsb_libs="`$want_rsb_libs/bin/librsb-config --static --ldflags`"
else
true;
# we assume want_rsb_libs are linkage parameters
fi
fi
FDEFINES="$FDEFINES $psblas_cv_define_prepend-DHAVE_LIBRSB"
fi
RSB_LIBS="$want_rsb_libs"
LIBS="$RSB_LIBS ${LIBS}"
# Check whether --with-metis was given.
# Check whether --with-metis was given.
if test ${with_metis+y}
if test ${with_metis+y}
@ -10612,6 +10603,274 @@ fi
# Check whether --with-cuda was given.
if test ${with_cuda+y}
then :
withval=$with_cuda; pac_cv_cuda_dir=$withval
else $as_nop
pac_cv_cuda_dir=''
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
SAVE_LIBS="$LIBS"
SAVE_CPPFLAGS="$CPPFLAGS"
if test "x$pac_cv_cuda_dir" != "x"; then
CUDA_DIR="$pac_cv_cuda_dir"
LIBS="-L$pac_cv_cuda_dir/lib $LIBS"
CUDA_INCLUDES="-I$pac_cv_cuda_dir/include"
CUDA_DEFINES="-DHAVE_CUDA"
CPPFLAGS="$CUDA_INCLUDES $CPPFLAGS"
CUDA_LIBDIR="-L$pac_cv_cuda_dir/lib64 -L$pac_cv_cuda_dir/lib"
if test -f "$pac_cv_cuda_dir/bin/nvcc"; then
CUDA_NVCC="$pac_cv_cuda_dir/bin/nvcc"
else
CUDA_NVCC="nvcc"
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking cuda dir $pac_cv_cuda_dir" >&5
printf %s "checking cuda dir $pac_cv_cuda_dir... " >&6; }
ac_fn_c_check_header_compile "$LINENO" "cuda_runtime.h" "ac_cv_header_cuda_runtime_h" "$ac_includes_default"
if test "x$ac_cv_header_cuda_runtime_h" = xyes
then :
pac_cuda_header_ok=yes
else $as_nop
pac_cuda_header_ok=no; CUDA_INCLUDES=""
fi
if test "x$pac_cuda_header_ok" == "xyes" ; then
CUDA_LIBS="-lcusparse -lcublas -lcudart $CUDA_LIBDIR"
LIBS="$CUDA_LIBS -lm $LIBS";
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for cudaMemcpy in $CUDA_LIBS" >&5
printf %s "checking for cudaMemcpy in $CUDA_LIBS... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
char cudaMemcpy ();
int
main (void)
{
return cudaMemcpy ();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
pac_cv_have_cuda=yes;pac_cuda_lib_ok=yes;
else $as_nop
pac_cv_have_cuda=no;pac_cuda_lib_ok=no; CUDA_LIBS=""
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $pac_cuda_lib_ok" >&5
printf "%s\n" "$pac_cuda_lib_ok" >&6; }
fi
LIBS="$SAVE_LIBS"
CPPFLAGS="$SAVE_CPPFLAGS"
if test "x$pac_cv_have_cuda" == "xyes"; then
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
SAVE_LIBS="$LIBS"
SAVE_CPPFLAGS="$CPPFLAGS"
if test "x$pac_cv_have_cuda" == "x"; then
# Check whether --with-cuda was given.
if test ${with_cuda+y}
then :
withval=$with_cuda; pac_cv_cuda_dir=$withval
else $as_nop
pac_cv_cuda_dir=''
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
SAVE_LIBS="$LIBS"
SAVE_CPPFLAGS="$CPPFLAGS"
if test "x$pac_cv_cuda_dir" != "x"; then
CUDA_DIR="$pac_cv_cuda_dir"
LIBS="-L$pac_cv_cuda_dir/lib $LIBS"
CUDA_INCLUDES="-I$pac_cv_cuda_dir/include"
CUDA_DEFINES="-DHAVE_CUDA"
CPPFLAGS="$CUDA_INCLUDES $CPPFLAGS"
CUDA_LIBDIR="-L$pac_cv_cuda_dir/lib64 -L$pac_cv_cuda_dir/lib"
if test -f "$pac_cv_cuda_dir/bin/nvcc"; then
CUDA_NVCC="$pac_cv_cuda_dir/bin/nvcc"
else
CUDA_NVCC="nvcc"
fi
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking cuda dir $pac_cv_cuda_dir" >&5
printf %s "checking cuda dir $pac_cv_cuda_dir... " >&6; }
ac_fn_c_check_header_compile "$LINENO" "cuda_runtime.h" "ac_cv_header_cuda_runtime_h" "$ac_includes_default"
if test "x$ac_cv_header_cuda_runtime_h" = xyes
then :
pac_cuda_header_ok=yes
else $as_nop
pac_cuda_header_ok=no; CUDA_INCLUDES=""
fi
if test "x$pac_cuda_header_ok" == "xyes" ; then
CUDA_LIBS="-lcusparse -lcublas -lcudart $CUDA_LIBDIR"
LIBS="$CUDA_LIBS -lm $LIBS";
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for cudaMemcpy in $CUDA_LIBS" >&5
printf %s "checking for cudaMemcpy in $CUDA_LIBS... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
char cudaMemcpy ();
int
main (void)
{
return cudaMemcpy ();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
pac_cv_have_cuda=yes;pac_cuda_lib_ok=yes;
else $as_nop
pac_cv_have_cuda=no;pac_cuda_lib_ok=no; CUDA_LIBS=""
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $pac_cuda_lib_ok" >&5
printf "%s\n" "$pac_cuda_lib_ok" >&6; }
fi
LIBS="$SAVE_LIBS"
CPPFLAGS="$SAVE_CPPFLAGS"
fi
if test "x$pac_cv_have_cuda" == "xyes"; then
CUDA_DIR="$pac_cv_cuda_dir"
LIBS="-L$pac_cv_cuda_dir/lib $LIBS"
CUDA_INCLUDES="-I$pac_cv_cuda_dir/include"
CUDA_DEFINES="-DHAVE_CUDA"
CPPFLAGS="$CUDA_INCLUDES $CPPFLAGS"
CUDA_LIBDIR="-L$pac_cv_cuda_dir/lib64 -L$pac_cv_cuda_dir/lib"
CUDA_LIBS="-lcusparse -lcublas -lcudart $CUDA_LIBDIR"
LIBS="$CUDA_LIBS -lm $LIBS";
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CUDA version" >&5
printf %s "checking for CUDA version... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdio.h>
#include <cuda.h>
int main(int argc, char **argv)
{
printf("%d",CUDA_VERSION);
return(0);
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
pac_cv_cuda_version=`./conftest${ac_exeext} | sed 's/^ *//'`;
else $as_nop
pac_cv_cuda_version="unknown";
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $pac_cv_cuda_version" >&5
printf "%s\n" "$pac_cv_cuda_version" >&6; }
fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
LIBS="$SAVE_LIBS"
CPPFLAGS="$SAVE_CPPFLAGS"
CUDA_VERSION="$pac_cv_cuda_version";
CUDA_SHORT_VERSION=$(expr $pac_cv_cuda_version / 1000);
HAVE_CUDA="yes";
SPGPU_LIBS="-lspgpu";
CUDAD=cudad;
CUDALD=cudald;
LCUDA="-lpsb_cuda";
EXTRALDLIBS="-lstdc++";
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: At this point GPUTARGET is $CUDAD $CUDALD" >&5
printf "%s\n" "$as_me: At this point GPUTARGET is $CUDAD $CUDALD" >&6;}
# Check whether --with-cudacc was given.
if test ${with_cudacc+y}
then :
withval=$with_cudacc; pac_cv_cudacc=$withval
else $as_nop
pac_cv_cudacc=''
fi
if test "x$pac_cv_cudacc" == "x"; then
pac_cv_cudacc="50,60,70,75";
CUDA_CC="$pac_cv_cudacc";
fi
if (( $pac_cv_cuda_version >= 11070 ))
then
CUDEFINES="--dopt=on";
fi
for cc in `echo $pac_cv_cudacc|sed 's/,/ /gi'`
do
CUDEFINES="$CUDEFINES -gencode arch=compute_$cc,code=sm_$cc";
done
if test "x$pac_cv_cuda_version" != "xunknown"; then
CUDEFINES="$CUDEFINES -DCUDA_SHORT_VERSION=${CUDA_SHORT_VERSION} -DCUDA_VERSION=${CUDA_VERSION}"
FDEFINES="$FDEFINES -DCUDA_SHORT_VERSION=${CUDA_SHORT_VERSION} -DCUDA_VERSION=${CUDA_VERSION}"
CDEFINES="$CDEFINES -DCUDA_SHORT_VERSION=${CUDA_SHORT_VERSION} -DCUDA_VERSION=${CUDA_VERSION}"
fi
fi
if test "x$pac_cv_ipk_size" != "x4"; then
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: For CUDA I need psb_ipk_ to be 4 bytes but it is $pac_cv_ipk_size, disabling CUDA/SPGPU" >&5
printf "%s\n" "$as_me: For CUDA I need psb_ipk_ to be 4 bytes but it is $pac_cv_ipk_size, disabling CUDA/SPGPU" >&6;}
HAVE_CUDA="no";
CUDA_CC="";
SPGPU_LIBS="";
CUDAD="";
CUDALD="";
CUDEFINES="";
CUDA_INCLUDES="";
CUDA_LIBS="";
fi
###############################################################################
###############################################################################
# Library target directory and archive files.
# Library target directory and archive files.
###############################################################################
###############################################################################
@ -10669,9 +10928,9 @@ UTILLIBNAME=libpsb_util.a
PSBLASRULES='
PSBLASRULES='
PSBLDLIBS=$(LAPACK) $(BLAS) $(METIS_LIB) $(AMD_LIB) $(LIBS)
PSBLDLIBS=$(LAPACK) $(BLAS) $(METIS_LIB) $(AMD_LIB) $(LIBS)
CXXDEFINES=$(PSBCXXDEFINES)
CXXDEFINES=$(PSBCXXDEFINES) $(CUDA_DEFINES)
CDEFINES=$(PSBCDEFINES)
CDEFINES=$(PSBCDEFINES) $(CUDA_DEFINES)
FDEFINES=$(PSBFDEFINES)
FDEFINES=$(PSBFDEFINES) $(CUDA_DEFINES)
# These should be portable rules, arent they?
# These should be portable rules, arent they?
@ -10690,6 +10949,19 @@ FDEFINES=$(PSBFDEFINES)
@ -11264,7 +11536,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
# values after options handling.
ac_log="
ac_log="
This file was extended by PSBLAS $as_me 3.7.0 , which was
This file was extended by PSBLAS $as_me 3.8.1 , which was
generated by GNU Autoconf 2.71. Invocation command line was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_FILES = $CONFIG_FILES
@ -11323,7 +11595,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
ac_cs_version="\\
PSBLAS config.status 3.7.0
PSBLAS config.status 3.8.1
configured by $0, generated by GNU Autoconf 2.71,
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
with options \\"\$ac_cs_config\\"
@ -12024,6 +12296,9 @@ fi
FCOPT : ${FCOPT}
FCOPT : ${FCOPT}
CCOPT : ${CCOPT}
CCOPT : ${CCOPT}
CUDA : ${HAVE_CUDA}
CUDA_CC : ${CUDA_CC}
BLAS : ${BLAS_LIBS}
BLAS : ${BLAS_LIBS}
METIS usable : ${psblas_cv_have_metis}
METIS usable : ${psblas_cv_have_metis}
@ -12054,6 +12329,9 @@ printf "%s\n" "$as_me:
FCOPT : ${FCOPT}
FCOPT : ${FCOPT}
CCOPT : ${CCOPT}
CCOPT : ${CCOPT}
CUDA : ${HAVE_CUDA}
CUDA_CC : ${CUDA_CC}
BLAS : ${BLAS_LIBS}
BLAS : ${BLAS_LIBS}
METIS usable : ${psblas_cv_have_metis}
METIS usable : ${psblas_cv_have_metis}