Honour inter-library dependencies between cholmod and colamd.

The former depends on the latter, whence the latter must be brought in
before the former.

While here, include checks for additional library components that may
be needed to satisfy all UMFPACK dependencies in more recent editions
of the SuiteSparse package.

Issue noticed by: Joakim Hove
This commit is contained in:
Bård Skaflestad 2012-05-23 10:39:21 +02:00
parent 66b44be238
commit 99cd22cb78

View File

@ -58,19 +58,14 @@ AC_CHECK_TYPES([ptrdiff_t])
AC_CHECK_FUNCS([floor memset memmove strchr strtol sqrt pow])
AC_FUNC_STRTOD
AC_SEARCH_LIBS([amd_free], [amd],
[amd_lib=yes], [amd_lib=no])
# From SuiteSparse version 3.7, umfpack may depend on more libs
AC_SEARCH_LIBS([cholmod_l_start], [cholmod])
AC_SEARCH_LIBS([colamd_set_defaults], [colamd])
# According to docs, UMFPACK may depend on these, too,
# but they seem unneeded for our usage.
# AC_SEARCH_LIBS([???], [camd])
# AC_SEARCH_LIBS([???], [ccolamd])
AC_SEARCH_LIBS([umfpack_dl_solve], [umfpack],
[umfpack_lib=yes], [umfpack_lib=no])
# Search for UMFPACK direct sparse solver.
AC_SEARCH_LIBS([amd_free], [amd])
AC_SEARCH_LIBS([camd_free], [camd])
AC_SEARCH_LIBS([colamd_set_defaults], [colamd])
AC_SEARCH_LIBS([ccolamd_set_defaults], [ccolamd])
AC_SEARCH_LIBS([cholmod_l_start], [cholmod])
AC_SEARCH_LIBS([umfpack_dl_solve], [umfpack],dnl
[umfpack_lib=yes], [umfpack_lib=no])
AM_CONDITIONAL([UMFPACK],
[test "x$umfpack_header" != "xno" -a "x$umfpack_lib" != "xno"])