changeset 23390:1ae9f4c1f48a

define all suitesparse NAME macros in oct-sparse.h * amd.cc, ccolamd.cc, colamd.cc: Move NAME macros to private oct-sparse.h header.
author John W. Eaton <jwe@octave.org>
date Wed, 12 Apr 2017 13:38:01 -0400
parents f0eb5d4431b7
children 209e749363a2
files libinterp/dldfcn/amd.cc libinterp/dldfcn/ccolamd.cc libinterp/dldfcn/colamd.cc liboctave/util/oct-sparse.h
diffstat 4 files changed, 56 insertions(+), 51 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/dldfcn/amd.cc	Wed Apr 12 13:34:23 2017 -0400
+++ b/libinterp/dldfcn/amd.cc	Wed Apr 12 13:38:01 2017 -0400
@@ -42,12 +42,6 @@
 #include "ov.h"
 #include "ovl.h"
 
-#if defined (OCTAVE_ENABLE_64)
-#  define AMD_NAME(name) amd_l ## name
-#else
-#  define AMD_NAME(name) amd ## name
-#endif
-
 DEFUN_DLD (amd, args, nargout,
            doc: /* -*- texinfo -*-
 @deftypefn  {} {@var{p} =} amd (@var{S})
--- a/libinterp/dldfcn/ccolamd.cc	Wed Apr 12 13:34:23 2017 -0400
+++ b/libinterp/dldfcn/ccolamd.cc	Wed Apr 12 13:38:01 2017 -0400
@@ -41,14 +41,6 @@
 #include "ov.h"
 #include "pager.h"
 
-#if defined (OCTAVE_ENABLE_64)
-#  define CCOLAMD_NAME(name) ccolamd_l ## name
-#  define CSYMAMD_NAME(name) csymamd_l ## name
-#else
-#  define CCOLAMD_NAME(name) ccolamd ## name
-#  define CSYMAMD_NAME(name) csymamd ## name
-#endif
-
 DEFUN_DLD (ccolamd, args, nargout,
            doc: /* -*- texinfo -*-
 @deftypefn  {} {@var{p} =} ccolamd (@var{S})
--- a/libinterp/dldfcn/colamd.cc	Wed Apr 12 13:34:23 2017 -0400
+++ b/libinterp/dldfcn/colamd.cc	Wed Apr 12 13:38:01 2017 -0400
@@ -44,14 +44,6 @@
 #include "ovl.h"
 #include "pager.h"
 
-#if defined (OCTAVE_ENABLE_64)
-#  define COLAMD_NAME(name) colamd_l ## name
-#  define SYMAMD_NAME(name) symamd_l ## name
-#else
-#  define COLAMD_NAME(name) colamd ## name
-#  define SYMAMD_NAME(name) symamd ## name
-#endif
-
 // The symmetric column elimination tree code take from the Davis LDL code.
 // Copyright given elsewhere in this file.
 static void
--- a/liboctave/util/oct-sparse.h	Wed Apr 12 13:34:23 2017 -0400
+++ b/liboctave/util/oct-sparse.h	Wed Apr 12 13:38:01 2017 -0400
@@ -35,26 +35,6 @@
 #  include <amd.h>
 #endif
 
-#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
-
-#if defined (HAVE_SUITESPARSE_COLAMD_H)
-#  include <suitesparse/colamd.h>
-#elif defined (HAVE_UFSPARSE_COLAMD_H)
-#  include <ufsparse/colamd.h>
-#elif defined (HAVE_COLAMD_COLAMD_H)
-#  include <colamd/colamd.h>
-#elif defined (HAVE_COLAMD_H)
-#  include <colamd.h>
-#endif
-
 #if defined (HAVE_SUITESPARSE_CCOLAMD_H)
 #  include <suitesparse/ccolamd.h>
 #elif defined (HAVE_UFSPARSE_CCOLAMD_H)
@@ -75,6 +55,16 @@
 #  include <cholmod.h>
 #endif
 
+#if defined (HAVE_SUITESPARSE_COLAMD_H)
+#  include <suitesparse/colamd.h>
+#elif defined (HAVE_UFSPARSE_COLAMD_H)
+#  include <ufsparse/colamd.h>
+#elif defined (HAVE_COLAMD_COLAMD_H)
+#  include <colamd/colamd.h>
+#elif defined (HAVE_COLAMD_H)
+#  include <colamd.h>
+#endif
+
 #if defined (HAVE_SUITESPARSE_CS_H)
 #  include <suitesparse/cs.h>
 #elif defined (HAVE_UFSPARSE_CS_H)
@@ -85,15 +75,14 @@
 #  include <cs.h>
 #endif
 
-#if (defined (HAVE_SUITESPARSE_CHOLMOD_H)       \
-     || defined (HAVE_UFSPARSE_CHOLMOD_H)       \
-     || defined (HAVE_CHOLMOD_CHOLMOD_H)        \
-     || defined (HAVE_CHOLMOD_H))
-#  if defined (OCTAVE_ENABLE_64)
-#    define CHOLMOD_NAME(name) cholmod_l_ ## name
-#  else
-#    define CHOLMOD_NAME(name) cholmod_ ## name
-#  endif
+#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
 
 // Cope with new SuiteSparse versions
@@ -109,6 +98,44 @@
 #  endif
 #endif
 
+// Function names depend on integer type.
+
+#if defined (HAVE_AMD)
+#  if defined (OCTAVE_ENABLE_64)
+#    define AMD_NAME(name) amd_l ## name
+#  else
+#    define AMD_NAME(name) amd ## name
+#  endif
+#endif
+
+#if defined (HAVE_CCOLAMD)
+#  if defined (OCTAVE_ENABLE_64)
+#    define CCOLAMD_NAME(name) ccolamd_l ## name
+#    define CSYMAMD_NAME(name) csymamd_l ## name
+#  else
+#    define CCOLAMD_NAME(name) ccolamd ## name
+#    define CSYMAMD_NAME(name) csymamd ## name
+#  endif
+#endif
+
+#if defined (HAVE_CHOLMOD)
+#  if defined (OCTAVE_ENABLE_64)
+#    define CHOLMOD_NAME(name) cholmod_l_ ## name
+#  else
+#    define CHOLMOD_NAME(name) cholmod_ ## name
+#  endif
+#endif
+
+#if defined (HAVE_COLAMD)
+#  if defined (OCTAVE_ENABLE_64)
+#    define COLAMD_NAME(name) colamd_l ## name
+#    define SYMAMD_NAME(name) symamd_l ## name
+#  else
+#    define COLAMD_NAME(name) colamd ## name
+#    define SYMAMD_NAME(name) symamd ## name
+#  endif
+#endif
+
 #if defined (HAVE_CXSPARSE)
 #  if defined (OCTAVE_ENABLE_64)
 #    define CXSPARSE_DNAME(name) cs_dl ## name