git: 9ed8e38cde84 - main - math/octave: Cope with API differences between SuiteSparse versions

From: Stephen Montgomery-Smith <stephen_at_FreeBSD.org>
Date: Sat, 21 Jan 2023 00:16:04 UTC
The branch main has been updated by stephen:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9ed8e38cde84939fa33ab749b2ac30c2c9cc4938

commit 9ed8e38cde84939fa33ab749b2ac30c2c9cc4938
Author:     Stephen Montgomery-Smith <stephen@FreeBSD.org>
AuthorDate: 2023-01-21 00:13:31 +0000
Commit:     Stephen Montgomery-Smith <stephen@FreeBSD.org>
CommitDate: 2023-01-21 00:15:57 +0000

    math/octave: Cope with API differences between SuiteSparse versions
    
    Obtained from:  https://hg.octave.org/octave/rev/aaffac4fbe30
---
 math/octave/files/patch-libgnu_math.in.h           |  4 +--
 .../octave/files/patch-liboctave_util_oct-sparse.h | 36 ++++++++++++++++++++++
 .../patch-scripts_pkg_private_configure__make.m    |  6 ++--
 3 files changed, 41 insertions(+), 5 deletions(-)

diff --git a/math/octave/files/patch-libgnu_math.in.h b/math/octave/files/patch-libgnu_math.in.h
index 077b7d108046..08de62e0a526 100644
--- a/math/octave/files/patch-libgnu_math.in.h
+++ b/math/octave/files/patch-libgnu_math.in.h
@@ -1,7 +1,7 @@
---- libgnu/math.in.h.orig	2020-11-26 18:20:44 UTC
+--- libgnu/math.in.h.orig	2022-11-02 18:19:56 UTC
 +++ libgnu/math.in.h
 @@ -15,7 +15,7 @@
-    You should have received a copy of the GNU General Public License
+    You should have received a copy of the GNU Lesser General Public License
     along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
  
 -#ifndef _@GUARD_PREFIX@_MATH_H
diff --git a/math/octave/files/patch-liboctave_util_oct-sparse.h b/math/octave/files/patch-liboctave_util_oct-sparse.h
new file mode 100644
index 000000000000..34a9b5005f75
--- /dev/null
+++ b/math/octave/files/patch-liboctave_util_oct-sparse.h
@@ -0,0 +1,36 @@
+--- liboctave/util/oct-sparse.h.orig	2022-11-02 18:19:56 UTC
++++ liboctave/util/oct-sparse.h
+@@ -89,16 +89,27 @@
+ #  include <SuiteSparseQR.hpp>
+ #endif
+ 
+-// Cope with new SuiteSparse versions
++// Cope with API differences between SuiteSparse versions
+ 
+ #if defined (SUITESPARSE_VERSION)
+-#  if (SUITESPARSE_VERSION >= SUITESPARSE_VER_CODE (4, 3))
++#  if (SUITESPARSE_VERSION >= SUITESPARSE_VER_CODE (7, 0))
+ #    define SUITESPARSE_NAME(name) SuiteSparse_ ## name
+-#    define SUITESPARSE_ASSIGN_FPTR(f_name, f_var, f_assign) (SuiteSparse_config.f_name = f_assign)
+-#    define SUITESPARSE_ASSIGN_FPTR2(f_name, f_var, f_assign) (SuiteSparse_config.f_name = SUITESPARSE_NAME (f_assign))
++#    define SUITESPARSE_SET_FCN(name) SuiteSparse_config_ ## name ## _set
++#    define SUITESPARSE_ASSIGN_FPTR(f_name, f_var, f_assign) \
++       SUITESPARSE_SET_FCN(f_name) (f_assign)
++#    define SUITESPARSE_ASSIGN_FPTR2(f_name, f_var, f_assign) \
++       SUITESPARSE_SET_FCN(f_name) (SUITESPARSE_NAME (f_assign))
++#  elif (SUITESPARSE_VERSION >= SUITESPARSE_VER_CODE (4, 3))
++#    define SUITESPARSE_NAME(name) SuiteSparse_ ## name
++#    define SUITESPARSE_ASSIGN_FPTR(f_name, f_var, f_assign) \
++       (SuiteSparse_config.f_name = f_assign)
++#    define SUITESPARSE_ASSIGN_FPTR2(f_name, f_var, f_assign) \
++       (SuiteSparse_config.f_name = SUITESPARSE_NAME (f_assign))
+ #  else
+-#    define SUITESPARSE_ASSIGN_FPTR(f_name, f_var, f_assign) (f_var = f_assign)
+-#    define SUITESPARSE_ASSIGN_FPTR2(f_name, f_var, f_assign) (f_var = CHOLMOD_NAME (f_assign))
++#    define SUITESPARSE_ASSIGN_FPTR(f_name, f_var, f_assign) \
++       (f_var = f_assign)
++#    define SUITESPARSE_ASSIGN_FPTR2(f_name, f_var, f_assign) \
++       (f_var = CHOLMOD_NAME (f_assign))
+ #  endif
+ #endif
+ 
diff --git a/math/octave/files/patch-scripts_pkg_private_configure__make.m b/math/octave/files/patch-scripts_pkg_private_configure__make.m
index e6933ce95a16..92084c4f3b91 100644
--- a/math/octave/files/patch-scripts_pkg_private_configure__make.m
+++ b/math/octave/files/patch-scripts_pkg_private_configure__make.m
@@ -1,6 +1,6 @@
---- scripts/pkg/private/configure_make.m.orig	2021-10-30 14:20:24 UTC
+--- scripts/pkg/private/configure_make.m.orig	2022-11-02 18:19:56 UTC
 +++ scripts/pkg/private/configure_make.m
-@@ -102,7 +102,7 @@ function configure_make (desc, packdir, verbose)
+@@ -110,7 +110,7 @@ function configure_make (desc, packdir, verbose)
      endif
  
      if (exist (fullfile (src, "Makefile"), "file"))
@@ -8,4 +8,4 @@
 +      [status, output] = shell (sprintf ("%s gmake --jobs %i --directory '%s'",
                                           scenv, jobs, src), verbose);
        if (status != 0)
-         rmdir (desc.dir, "s");
+         disp (output);