Mercurial > octave
comparison configure.ac @ 16318:eb572251b7c6
check for correct SuiteSparse functions if --enable-64
* configure.ac (UMFPACK_TAG): New macro. Use it to check for
appropriate cholmod, cxsparse, and umfpack functions that depend on
index size.
* acinclude.m4 (OCTAVE_UMFPACK_SEPARATE_SPLIT): Use correct umfpack
names and integer sizes in test.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 15 Mar 2013 14:37:32 -0400 |
parents | 6aafe87a3144 |
children | c130939b0d1c |
comparison
equal
deleted
inserted
replaced
16317:ce5231908ea2 | 16318:eb572251b7c6 |
---|---|
1274 AC_DEFINE(HAVE_QRUPDATE_LUU, 1, [Define to 1 if qrupdate supports LU updates.]) | 1274 AC_DEFINE(HAVE_QRUPDATE_LUU, 1, [Define to 1 if qrupdate supports LU updates.]) |
1275 fi | 1275 fi |
1276 fi | 1276 fi |
1277 LIBS="$save_LIBS" | 1277 LIBS="$save_LIBS" |
1278 | 1278 |
1279 if test $USE_64_BIT_IDX_T = yes; then | |
1280 CHOLMOD_TAG="_l_" | |
1281 CXSPARSE_TAG="_dl_" | |
1282 UMFPACK_TAG="_zl_" | |
1283 else | |
1284 CHOLMOD_TAG="_" | |
1285 CXSPARSE_TAG="_di_" | |
1286 UMFPACK_TAG="_zi_" | |
1287 fi | |
1288 | |
1279 ### Check for AMD library | 1289 ### Check for AMD library |
1280 | 1290 |
1281 OCTAVE_CHECK_LIB(amd, AMD, | 1291 OCTAVE_CHECK_LIB(amd, AMD, |
1282 [AMD library not found. This will result in some lack of functionality for sparse matrices.], | 1292 [AMD library not found. This will result in some lack of functionality for sparse matrices.], |
1283 [suitesparse/amd.h ufsparse/amd.h amd/amd.h amd.h], | 1293 [suitesparse/amd.h ufsparse/amd.h amd/amd.h amd.h], |
1315 save_LIBS="$LIBS" | 1325 save_LIBS="$LIBS" |
1316 LIBS="$COLAMD_LDFLAGS $COLAMD_LIBS $AMD_LDFLAGS $AMD_LIBS $LAPACK_LIBS $BLAS_LIBS $FLIBS $LIBS" | 1326 LIBS="$COLAMD_LDFLAGS $COLAMD_LIBS $AMD_LDFLAGS $AMD_LIBS $LAPACK_LIBS $BLAS_LIBS $FLIBS $LIBS" |
1317 OCTAVE_CHECK_LIB(cholmod, CHOLMOD, | 1327 OCTAVE_CHECK_LIB(cholmod, CHOLMOD, |
1318 [CHOLMOD library not found. This will result in some lack of functionality for sparse matrices.], | 1328 [CHOLMOD library not found. This will result in some lack of functionality for sparse matrices.], |
1319 [suitesparse/cholmod.h ufsparse/cholmod.h cholmod/cholmod.h cholmod.h], | 1329 [suitesparse/cholmod.h ufsparse/cholmod.h cholmod/cholmod.h cholmod.h], |
1320 [cholmod_start], | 1330 [cholmod${CHOLMOD_TAG}start], |
1321 [], [don't use CHOLMOD library, disable some sparse matrix functionality]) | 1331 [], [don't use CHOLMOD library, disable some sparse matrix functionality]) |
1322 LIBS="$save_LIBS" | 1332 LIBS="$save_LIBS" |
1323 | 1333 |
1324 ### Check for CXSparse library | 1334 ### Check for CXSparse library |
1325 | 1335 |
1326 OCTAVE_CHECK_LIB(cxsparse, CXSparse, | 1336 OCTAVE_CHECK_LIB(cxsparse, CXSparse, |
1327 [CXSparse library not found. This will result in some lack of functionality for sparse matrices.], | 1337 [CXSparse library not found. This will result in some lack of functionality for sparse matrices.], |
1328 [suitesparse/cs.h ufsparse/cs.h cxsparse/cs.h cs.h], | 1338 [suitesparse/cs.h ufsparse/cs.h cxsparse/cs.h cs.h], |
1329 [cs_di_sqr], | 1339 [cs${CXSPARSE_TAG}sqr], |
1330 [C++], [don't use CXSparse library, disable some sparse matrix functionality]) | 1340 [C++], [don't use CXSparse library, disable some sparse matrix functionality]) |
1331 | 1341 |
1332 ### Check for UMFPACK library. | 1342 ### Check for UMFPACK library. |
1333 | 1343 |
1334 save_LIBS="$LIBS" | 1344 save_LIBS="$LIBS" |
1336 LIBS="$AMD_LDFLAGS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS" | 1346 LIBS="$AMD_LDFLAGS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS" |
1337 CPPFLAGS="$AMD_CPPFLAGS $CPPFLAGS" | 1347 CPPFLAGS="$AMD_CPPFLAGS $CPPFLAGS" |
1338 OCTAVE_CHECK_LIB([umfpack], UMFPACK, | 1348 OCTAVE_CHECK_LIB([umfpack], UMFPACK, |
1339 [UMFPACK not found. This will result in some lack of functionality for sparse matrices.], | 1349 [UMFPACK not found. This will result in some lack of functionality for sparse matrices.], |
1340 [suitesparse/umfpack.h ufsparse/umfpack.h umfpack/umfpack.h umfpack.h], | 1350 [suitesparse/umfpack.h ufsparse/umfpack.h umfpack/umfpack.h umfpack.h], |
1341 [umfpack_zi_get_determinant], | 1351 [umfpack${UMFPACK_TAG}get_determinant], |
1342 [], [don't use UMFPACK, disable some sparse matrix functionality]) | 1352 [], [don't use UMFPACK, disable some sparse matrix functionality]) |
1343 CPPFLAGS="$save_CPPFLAGS" | 1353 CPPFLAGS="$save_CPPFLAGS" |
1344 LIBS="$save_LIBS" | 1354 LIBS="$save_LIBS" |
1345 | 1355 |
1346 if test -z "$UMFPACK_LIBS"; then | 1356 if test -z "$UMFPACK_LIBS"; then |
1347 ## Invalidate the cache and try again with -lcblas. | 1357 ## Invalidate the cache and try again with -lcblas. |
1348 $as_unset ac_cv_lib_umfpack_umfpack_zi_get_determinant | 1358 $as_unset ac_cv_lib_umfpack_umfpack${UMFPACK_TAG}get_determinant |
1349 $as_unset octave_cv_lib_umfpack | 1359 $as_unset octave_cv_lib_umfpack |
1350 save_LIBS="$LIBS" | 1360 save_LIBS="$LIBS" |
1351 LIBS="-lcblas $AMD_LDFLAGS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS" | 1361 LIBS="-lcblas $AMD_LDFLAGS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS" |
1352 OCTAVE_CHECK_LIB([umfpack], UMFPACK, | 1362 OCTAVE_CHECK_LIB([umfpack], UMFPACK, |
1353 [UMFPACK not found. This will result in some lack of functionality for sparse matrices.], | 1363 [UMFPACK not found. This will result in some lack of functionality for sparse matrices.], |
1354 [suitesparse/umfpack.h ufsparse/umfpack.h umfpack/umfpack.h umfpack.h], | 1364 [suitesparse/umfpack.h ufsparse/umfpack.h umfpack/umfpack.h umfpack.h], |
1355 [umfpack_zi_get_determinant], | 1365 [umfpack${UMFPACK_TAG}get_determinant], |
1356 [], [don't use UMFPACK, disable some sparse matrix functionality]) | 1366 [], [don't use UMFPACK, disable some sparse matrix functionality]) |
1357 if test -n "$UMFPACK_LIBS"; then | 1367 if test -n "$UMFPACK_LIBS"; then |
1358 UMFPACK_LIBS="$UMFPACK_LIBS -lcblas" | 1368 UMFPACK_LIBS="$UMFPACK_LIBS -lcblas" |
1359 fi | 1369 fi |
1360 LIBS="$save_LIBS" | 1370 LIBS="$save_LIBS" |