# HG changeset patch # User dbateman # Date 1130361237 0 # Node ID e67d027ff4e3ab577bff9d2f776b95b382dcdf2b # Parent 3fadccb05d5d057e59047e202887bcf150343bdf [project @ 2005-10-26 21:13:56 by dbateman] diff -r 3fadccb05d5d -r e67d027ff4e3 liboctave/ChangeLog --- a/liboctave/ChangeLog Wed Oct 26 17:50:56 2005 +0000 +++ b/liboctave/ChangeLog Wed Oct 26 21:13:57 2005 +0000 @@ -1,3 +1,8 @@ +2005-10-26 David Bateman + + * sparse-base-chol.h: Include cholmod specific code in HAVE_CHOLMOD + * sparse-base-chol.cc: ditto. + 2005-10-26 John W. Eaton Changes for GCC 4.1, tip from Arno J. Klaassen diff -r 3fadccb05d5d -r e67d027ff4e3 liboctave/sparse-base-chol.cc --- a/liboctave/sparse-base-chol.cc Wed Oct 26 17:50:56 2005 +0000 +++ b/liboctave/sparse-base-chol.cc Wed Oct 26 21:13:57 2005 +0000 @@ -32,6 +32,7 @@ #include "quit.h" #include "SparseType.h" +#ifdef HAVE_CHOLMOD // Can't use CHOLMOD_NAME(drop)(0.0, S, cm). It doesn't treat complex matrices template void @@ -73,6 +74,7 @@ } Sp [ncol] = pdest; } +#endif template octave_idx_type diff -r 3fadccb05d5d -r e67d027ff4e3 liboctave/sparse-base-chol.h --- a/liboctave/sparse-base-chol.h Wed Oct 26 17:50:56 2005 +0000 +++ b/liboctave/sparse-base-chol.h Wed Oct 26 21:13:57 2005 +0000 @@ -38,9 +38,12 @@ class sparse_base_chol_rep { public: +#ifdef HAVE_CHOLMOD sparse_base_chol_rep (void) : count (1), Lsparse (NULL), is_pd (false), minor_p (0) { } - +#else + sparse_base_chol_rep (void) : count (1), is_pd (false), minor_p (0) { } +#endif sparse_base_chol_rep (const chol_type& a, const bool natural) : count (1) { init (a, natural); } @@ -49,15 +52,14 @@ const bool natural) : count (1) { info = init (a, natural); } -#ifndef HAVE_CHOLMOD - ~sparse_base_chol_rep (void) { } -#else +#ifdef HAVE_CHOLMOD ~sparse_base_chol_rep (void) { CHOLMOD_NAME(free_sparse) (&Lsparse, &Common); } -#endif cholmod_sparse * L (void) const { return Lsparse; } - +#else + ~sparse_base_chol_rep (void) { } +#endif octave_idx_type P (void) const { return (minor_p == static_cast(Lsparse->ncol) ? 0 : minor_p + 1); } @@ -73,10 +75,11 @@ int count; private: +#ifdef HAVE_CHOLMOD cholmod_sparse *Lsparse; cholmod_common Common; - +#endif bool is_pd; octave_idx_type minor_p;