diff configure.in @ 9572:ab8a163f2052

use OCTAVE_CHECK_LIB to check for UMFPACK
author John W. Eaton <jwe@octave.org>
date Wed, 26 Aug 2009 16:41:38 -0400
parents 263a8ed419b0
children be3ee885739b
line wrap: on
line diff
--- a/configure.in	Wed Aug 26 15:09:03 2009 -0400
+++ b/configure.in	Wed Aug 26 16:41:38 2009 -0400
@@ -878,46 +878,37 @@
 
 # Check for UMFPACK library.
 
-UMFPACK_LIBS=
-AC_SUBST(UMFPACK_LIBS)
-
-AC_ARG_WITH(umfpack,
-  [AS_HELP_STRING([--without-umfpack],
-     [don't use UMFPACK, disable some sparse functionality])],
-  with_umfpack=$withval, with_umfpack=yes)
-
-warn_umfpack="UMFPACK not found.  This will result in some lack of functionality for sparse matrices."
-if test "$with_umfpack" = yes && test "$with_amd" = yes; then
-  with_umfpack=no
-  AC_CHECK_HEADERS([suitesparse/umfpack.h ufsparse/umfpack.h umfpack/umfpack.h umfpack.h], [
-    AC_CHECK_LIB(umfpack, umfpack_zi_get_determinant, [
-      UMFPACK_LIBS="-lumfpack"; with_umfpack=yes], [
-        ## Invalidate the cache.
-	$as_unset ac_cv_lib_umfpack_umfpack_zi_get_determinant
-	AC_CHECK_LIB(umfpack, umfpack_zi_get_determinant, [
-          UMFPACK_LIBS="-lumfpack"; with_umfpack=yes], [
+save_LIBS="$LIBS"
+LIBS="$AMD_LDFLAGS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS"
+OCTAVE_CHECK_LIBRARY(umfpack, UMFPACK,
+  [UMFPACK not found.  This will result in some lack of functionality for sparse matrices.],
+  [suitesparse/umfpack.h ufsparse/umfpack.h umfpack/umfpack.h umfpack.h],
+  [umfpack_zi_get_determinant],
+  [], [don't use UMFPACK, disable some sparse functionality])
+LIBS="$save_LIBS"
 
-	  ## Invalidate the cache.
-	  $as_unset ac_cv_lib_umfpack_umfpack_zi_get_determinant
-	  AC_CHECK_LIB(umfpack, umfpack_zi_get_determinant, [
-            UMFPACK_LIBS="-lumfpack -lcblas"; with_umfpack=yes], [], $AMD_LIBS -lcblas $BLAS_LIBS)], $AMD_LIBS $BLAS_LIBS $FLIBS)], $AMD_LIBS)
-
-    if test "$with_umfpack" = yes; then
-      AC_DEFINE(HAVE_UMFPACK, 1, [Define if the UMFPACK library is used.])
-      OLD_LIBS=$LIBS
-      LIBS="$LIBS $UMFPACK_LIBS $AMD_LIBS $BLAS_LIBS $FLIBS"
-      OCTAVE_UMFPACK_SEPERATE_SPLIT
-      LIBS=$OLD_LIBS
-      TEXINFO_UMFPACK="@set HAVE_UMFPACK"
-      warn_umfpack=
-    fi
-    break])
-fi
-if test -n "$warn_umfpack"; then
-  AC_MSG_WARN($warn_umfpack)
+if test -z "$UMFPACK_LIBS"; then
+  ## Invalidate the cache and try again with -lcblas.
+  $as_unset ac_cv_lib_umfpack_umfpack_zi_get_determinant
+  save_LIBS="$LIBS"
+  LIBS="-lcblas $AMD_LDFLAGS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS"
+  OCTAVE_CHECK_LIBRARY(umfpack, UMFPACK,
+    [UMFPACK not found.  This will result in some lack of functionality for sparse matrices.],
+    [suitesparse/umfpack.h ufsparse/umfpack.h umfpack/umfpack.h umfpack.h],
+    [umfpack_zi_get_determinant],
+    [], [don't use UMFPACK, disable some sparse functionality])
+  if test -n "$UMFPACK_LIBS"; then
+    UMFPACK_LIBS="$UMFPACK_LIBS -lcblas"
+  fi
+  LIBS="$save_LIBS"
 fi
 
-AC_SUBST(TEXINFO_UMFPACK)
+if test -n "$UMFPACK_LIBS"; then
+  save_LIBS="$LIBS";
+  LIBS="$UMFPACK_LIBS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS"
+  OCTAVE_UMFPACK_SEPERATE_SPLIT
+  LIBS="$save_LIBS"
+fi
 
 save_LIBS="$LIBS"
 LIBS="$LAPACK_LIBS $BLAS_LIBS $FLIBS $LIBS"