Mercurial > hg > octave-lyh
diff m4/acinclude.m4 @ 15329:719ffb2f35a6
Fix Octave builds with SuiteSparse >=4.0 (bug #37031)
* configure.ac: Call OCTAVE_UMFPACK_NEED_SUITESPARSE_TIME to check if
UMFPACK needs SuiteSparse_time function. If it does, use AC_SEARCH_LIBS
to find a possible library.
* m4/acinclude.m4: Add new macro OCTAVE_UMFPACK_NEED_SUITESPARSE_TIME.
author | Rik <rik@octave.org> |
---|---|
date | Fri, 07 Sep 2012 17:05:12 -0700 |
parents | daf74ce2afdc |
children | 81cc4e5733b1 |
line wrap: on
line diff
--- a/m4/acinclude.m4 +++ b/m4/acinclude.m4 @@ -1624,6 +1624,35 @@ 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 <suitesparse/umfpack.h> + #elif defined (HAVE_UFSPARSE_UMFPACK_H) + # include <ufsparse/umfpack.h> + #elif defined (HAVE_UMFPACK_UMFPACK_H) + # include <umfpack/umfpack.h> + #elif defined (HAVE_UMFPACK_H) + # include <umfpack.h> + #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.