# HG changeset patch # User John W. Eaton # Date 1474057024 14400 # Node ID 4b691a4cf77b141170f226322668781c345d8668 # Parent 0b278f54f60a8bbce2973edb83cca6ee65f63510 improve check for libsuitesparse_config * configure.ac: Use AC_CHECK_LIB instead of AC_SEARCH_LIBS. Check for suitesparse_config library first. If that fails, check for librt and if that exists, try again with libsuitesparse_config and librt. * acinclude.m4 (OCTAVE_UMFPACK_NEED_SUITESPARSE_TIME): Delete. diff -r 0b278f54f60a -r 4b691a4cf77b configure.ac --- a/configure.ac Fri Sep 16 10:24:58 2016 +0200 +++ b/configure.ac Fri Sep 16 16:17:04 2016 -0400 @@ -2113,32 +2113,15 @@ CPPFLAGS="$UMFPACK_CPPFLAGS $AMD_CPPFLAGS $CPPFLAGS" LIBS="$UMFPACK_LIBS $AMD_LDFLAGS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS" xtra_libs= - OCTAVE_UMFPACK_NEED_SUITESPARSE_TIME - AC_CHECK_LIB([rt], [clock_gettime], [xtra_libs="-lrt"], [xtra_libs=]) - ## FIXME: This library list is only accurate for Linux, Mac OS X. - ## Possibly need other library names for MinGW, Cygwin. - AC_SEARCH_LIBS([SuiteSparse_time], [suitesparseconfig SuiteSparse], - [], [], [$xtra_libs]) - case $ac_cv_search_SuiteSparse_time in - -l*) - SUITESPARSE_CONFIG_LIBS="$ac_cv_search_SuiteSparse_time" - ;; - no) - if test x$octave_cv_lib_umfpack = xyes \ - && $octave_cv_umfpack_need_suitesparse_time = yes; then - UMFPACK_LIBS= - warn_suitesparse_config="UMFPACK library found but is missing SuiteSparse_time functionality. UMFPACK library will be disabled." - fi - ;; - esac + AC_CHECK_LIB([suitesparseconfig], [SuiteSparse_time], + [SUITESPARSE_CONFIG_LIBS="-lsuitesparseconfig"], + [AC_CHECK_LIB([rt], [clock_gettime], + [AC_CHECK_LIB([suitesparseconfig], [SuiteSparse_time], + [SUITESPARSE_CONFIG_LIBS="-lsuitesparseconfig -lrt"], [], [-lrt])])]) LIBS="$save_LIBS" CPPFLAGS="$save_CPPFLAGS" - AC_SUBST(SUITESPARSE_CONFIG_LIBS) - if test -n "$warn_suitesparseconfig"; then - OCTAVE_CONFIGURE_WARNING([warn_suitesparseconfig]) - SUITESPARSE_CONFIG_LIBS= - fi fi +AC_SUBST(SUITESPARSE_CONFIG_LIBS) ## Check for UMFPACK separately split complex matrix and RHS. if test -n "$UMFPACK_LIBS"; then diff -r 0b278f54f60a -r 4b691a4cf77b m4/acinclude.m4 --- a/m4/acinclude.m4 Fri Sep 16 10:24:58 2016 +0200 +++ b/m4/acinclude.m4 Fri Sep 16 16:17:04 2016 -0400 @@ -2668,35 +2668,6 @@ AC_SUBST($1) ]) dnl -dnl Check whether SuiteSparse_time is required by UMFPACK. -dnl UMFPACK >= 4 requires linking in another library for SuiteSparse_time. -dnl -dnl Macro assumes that the check for umfpack has already been performed. -dnl -AC_DEFUN([OCTAVE_UMFPACK_NEED_SUITESPARSE_TIME], [ - AC_CACHE_CHECK([whether UMFPACK needs SuiteSparse_time function], - [octave_cv_umfpack_need_suitesparse_time], - [AC_LANG_PUSH(C) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - #if defined (HAVE_SUITESPARSE_UMFPACK_H) - # include - #elif defined (HAVE_UFSPARSE_UMFPACK_H) - # include - #elif defined (HAVE_UMFPACK_UMFPACK_H) - # include - #elif defined (HAVE_UMFPACK_H) - # include - #endif - ]], [[ - double stats [2]; - umfpack_tic (stats); - ]])], - octave_cv_umfpack_need_suitesparse_time=no, - octave_cv_umfpack_need_suitesparse_time=yes) - AC_LANG_POP(C) - ]) -]) -dnl dnl Check for UMFPACK separately split complex matrix and RHS. dnl dnl Macro assumes that the check for umfpack has already been performed.