git: 815396ce9cf4 - main - math/sundials: Update 6.3.0 -> 6.4.0

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sat, 22 Oct 2022 19:28:50 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=815396ce9cf46ec56c98401834ed1b43c51a9cee

commit 815396ce9cf46ec56c98401834ed1b43c51a9cee
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-10-22 19:06:31 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-10-22 19:28:48 +0000

    math/sundials: Update 6.3.0 -> 6.4.0
---
 math/sundials/Makefile  | 20 +++++++++-----
 math/sundials/distinfo  |  6 ++---
 math/sundials/pkg-plist | 70 ++++++++++++++++++++++++++++---------------------
 3 files changed, 57 insertions(+), 39 deletions(-)

diff --git a/math/sundials/Makefile b/math/sundials/Makefile
index 3b7b8f621442..ee3c9035cff1 100644
--- a/math/sundials/Makefile
+++ b/math/sundials/Makefile
@@ -1,8 +1,7 @@
 PORTNAME=	sundials
-DISTVERSION=	6.3.0
-PORTREVISION=	1
+DISTVERSION=	6.4.0
 CATEGORIES=	math
-MASTER_SITES=	https://github.com/LLNL/sundials/releases/download/v${DISTVERSION}/
+MASTER_SITES=	https://github.com/LLNL/sundials/archive/v${DISTVERSION}/
 
 MAINTAINER=	yuri@FreeBSD.org
 COMMENT=	SUite of Nonlinear and DIfferential/ALgebraic Equation Solvers
@@ -11,7 +10,7 @@ WWW=		https://computation.llnl.gov/projects/sundials
 LICENSE=	BSD3CLAUSE
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-USES=		cmake:testing fortran localbase:ldflags python:build
+USES=		cmake:testing fortran localbase:ldflags python:build # 4 tests fail, see https://github.com/LLNL/sundials/issues/220
 USE_LDCONFIG=	yes
 
 CMAKE_ARGS=		-DENABLE_PTHREAD:BOOL=ON \
@@ -23,8 +22,8 @@ CMAKE_TESTING_ON=	SUNDIALS_TEST_UNITTESTS \
 
 FCFLAGS:=	${FFLAGS} # project checks that these flags are equal
 
-OPTIONS_DEFINE=		BLAS EXAMPLES LAPACK MPI OPENMP
-OPTIONS_DEFAULT=	LAPACK MPI OPENMP
+OPTIONS_DEFINE=		BLAS EXAMPLES KLU LAPACK MPI OPENMP
+OPTIONS_DEFAULT=	KLU LAPACK MPI OPENMP
 OPTIONS_GROUP=		VECTORS
 OPTIONS_GROUP_VECTORS=	HYPRE PETSC
 VECTORS_DESC=		Alternative vector libraries
@@ -47,6 +46,15 @@ HYPRE_IMPLIES=		MPI
 HYPRE_PREVENTS=		LAPACK  # error: Incompatible sunindextype for LAPACK; disable LAPACK and rebuild
 HYPRE_BROKEN=		ERROR: SUNDIALS interface to HYPRE is not functional.
 
+KLU_DESC=		Use KLU package that is part of suitesparse
+KLU_CMAKE_BOOL=		ENABLE_KLU
+KLU_CMAKE_ON=		-DKLU_INCLUDE_DIR=${LOCALBASE}/include/suitesparse -DKLU_LIBRARY_DIR=${LOCALBASE}/lib
+KLU_LIB_DEPENDS=	libamd.so:math/suitesparse-amd \
+			libbtf.so:math/suitesparse-btf \
+			libcolamd.so:math/suitesparse-colamd \
+			libklu.so:math/suitesparse-klu \
+			libsuitesparseconfig.so:math/suitesparse-config
+
 LAPACK_DESC=		Use Lapack linear algebra (sets SUNDIALS_INDEX_TYPE=int32)
 LAPACK_USES=		blaslapack:openblas
 LAPACK_CMAKE_BOOL=	ENABLE_LAPACK
diff --git a/math/sundials/distinfo b/math/sundials/distinfo
index 27883cd0d22d..56a049971741 100644
--- a/math/sundials/distinfo
+++ b/math/sundials/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1665558476
-SHA256 (sundials-6.3.0.tar.gz) = 89a22bea820ff250aa7239f634ab07fa34efe1d2dcfde29cc8d3af11455ba2a7
-SIZE (sundials-6.3.0.tar.gz) = 88624329
+TIMESTAMP = 1666460608
+SHA256 (sundials-6.4.0.tar.gz) = 3cbf0102c3284dc550a9faf85ace030ca6d02fe70e90afa2d0d8074a098a3948
+SIZE (sundials-6.4.0.tar.gz) = 30316317
diff --git a/math/sundials/pkg-plist b/math/sundials/pkg-plist
index a57cc9769618..2ab592a3c845 100644
--- a/math/sundials/pkg-plist
+++ b/math/sundials/pkg-plist
@@ -50,26 +50,34 @@ include/nvector/nvector_pthreads.h
 include/nvector/nvector_serial.h
 include/sundials/NOTICE
 include/sundials/sundials_band.h
+include/sundials/sundials_base.hpp
 include/sundials/sundials_config.h
 include/sundials/sundials_context.h
+include/sundials/sundials_context.hpp
+include/sundials/sundials_convertibleto.hpp
 include/sundials/sundials_dense.h
 include/sundials/sundials_direct.h
 include/sundials/sundials_export.h
 include/sundials/sundials_iterative.h
 %%LAPACK%%include/sundials/sundials_lapack.h
 include/sundials/sundials_linearsolver.h
+include/sundials/sundials_linearsolver.hpp
 include/sundials/sundials_logger.h
 include/sundials/sundials_math.h
 include/sundials/sundials_matrix.h
+include/sundials/sundials_matrix.hpp
 include/sundials/sundials_memory.h
 %%MPI%%include/sundials/sundials_mpi_types.h
 include/sundials/sundials_nonlinearsolver.h
+include/sundials/sundials_nonlinearsolver.hpp
 include/sundials/sundials_nvector.h
+include/sundials/sundials_nvector.hpp
 include/sundials/sundials_profiler.h
 include/sundials/sundials_types.h
 include/sundials/sundials_version.h
 include/sunlinsol/sunlinsol_band.h
 include/sunlinsol/sunlinsol_dense.h
+%%KLU%%include/sunlinsol/sunlinsol_klu.h
 %%LAPACK%%include/sunlinsol/sunlinsol_lapackband.h
 %%LAPACK%%include/sunlinsol/sunlinsol_lapackdense.h
 include/sunlinsol/sunlinsol_pcg.h
@@ -89,80 +97,82 @@ lib/cmake/sundials/SUNDIALSTargets-%%CMAKE_BUILD_TYPE%%.cmake
 lib/cmake/sundials/SUNDIALSTargets.cmake
 lib/libsundials_arkode.so
 lib/libsundials_arkode.so.5
-lib/libsundials_arkode.so.5.3.0
+lib/libsundials_arkode.so.5.4.0
 lib/libsundials_cvode.so
 lib/libsundials_cvode.so.6
-lib/libsundials_cvode.so.6.3.0
+lib/libsundials_cvode.so.6.4.0
 lib/libsundials_cvodes.so
 lib/libsundials_cvodes.so.6
-lib/libsundials_cvodes.so.6.3.0
+lib/libsundials_cvodes.so.6.4.0
 lib/libsundials_generic.so
 lib/libsundials_generic.so.6
-lib/libsundials_generic.so.6.3.0
+lib/libsundials_generic.so.6.4.0
 lib/libsundials_ida.so
 lib/libsundials_ida.so.6
-lib/libsundials_ida.so.6.3.0
+lib/libsundials_ida.so.6.4.0
 lib/libsundials_idas.so
 lib/libsundials_idas.so.5
-lib/libsundials_idas.so.5.3.0
+lib/libsundials_idas.so.5.4.0
 lib/libsundials_kinsol.so
 lib/libsundials_kinsol.so.6
-lib/libsundials_kinsol.so.6.3.0
+lib/libsundials_kinsol.so.6.4.0
 lib/libsundials_nvecmanyvector.so
 lib/libsundials_nvecmanyvector.so.6
-lib/libsundials_nvecmanyvector.so.6.3.0
+lib/libsundials_nvecmanyvector.so.6.4.0
 %%MPI%%lib/libsundials_nvecmpimanyvector.so
 %%MPI%%lib/libsundials_nvecmpimanyvector.so.6
-%%MPI%%lib/libsundials_nvecmpimanyvector.so.6.3.0
+%%MPI%%lib/libsundials_nvecmpimanyvector.so.6.4.0
 %%MPI%%lib/libsundials_nvecmpiplusx.so
 %%MPI%%lib/libsundials_nvecmpiplusx.so.6
-%%MPI%%lib/libsundials_nvecmpiplusx.so.6.3.0
+%%MPI%%lib/libsundials_nvecmpiplusx.so.6.4.0
 %%OPENMP%%lib/libsundials_nvecopenmp.so
 %%OPENMP%%lib/libsundials_nvecopenmp.so.6
-%%OPENMP%%lib/libsundials_nvecopenmp.so.6.3.0
+%%OPENMP%%lib/libsundials_nvecopenmp.so.6.4.0
 %%MPI%%lib/libsundials_nvecparallel.so
 %%MPI%%lib/libsundials_nvecparallel.so.6
-%%MPI%%lib/libsundials_nvecparallel.so.6.3.0
+%%MPI%%lib/libsundials_nvecparallel.so.6.4.0
 %%HYPRE%%lib/libsundials_nvecparhyp.so
 %%HYPRE%%lib/libsundials_nvecparhyp.so.6
-%%HYPRE%%lib/libsundials_nvecparhyp.so.6.3.0
+%%HYPRE%%lib/libsundials_nvecparhyp.so.6.4.0
 %%PETSC%%lib/libsundials_nvecpetsc.so
 %%PETSC%%lib/libsundials_nvecpetsc.so.6
-%%PETSC%%lib/libsundials_nvecpetsc.so.6.3.0
+%%PETSC%%lib/libsundials_nvecpetsc.so.6.4.0
 lib/libsundials_nvecpthreads.so
 lib/libsundials_nvecpthreads.so.6
-lib/libsundials_nvecpthreads.so.6.3.0
+lib/libsundials_nvecpthreads.so.6.4.0
 lib/libsundials_nvecserial.so
 lib/libsundials_nvecserial.so.6
-lib/libsundials_nvecserial.so.6.3.0
+lib/libsundials_nvecserial.so.6.4.0
 lib/libsundials_sunlinsolband.so
-lib/libsundials_sunlinsolband.so.4.3.0
+lib/libsundials_sunlinsolband.so.4.4.0
 lib/libsundials_sunlinsoldense.so
-lib/libsundials_sunlinsoldense.so.4.3.0
+lib/libsundials_sunlinsoldense.so.4.4.0
+%%KLU%%lib/libsundials_sunlinsolklu.so
+%%KLU%%lib/libsundials_sunlinsolklu.so.4.4.0
 %%LAPACK%%lib/libsundials_sunlinsollapackband.so
-%%LAPACK%%lib/libsundials_sunlinsollapackband.so.4.3.0
+%%LAPACK%%lib/libsundials_sunlinsollapackband.so.4.4.0
 %%LAPACK%%lib/libsundials_sunlinsollapackdense.so
-%%LAPACK%%lib/libsundials_sunlinsollapackdense.so.4.3.0
+%%LAPACK%%lib/libsundials_sunlinsollapackdense.so.4.4.0
 lib/libsundials_sunlinsolpcg.so
-lib/libsundials_sunlinsolpcg.so.4.3.0
+lib/libsundials_sunlinsolpcg.so.4.4.0
 lib/libsundials_sunlinsolspbcgs.so
-lib/libsundials_sunlinsolspbcgs.so.4.3.0
+lib/libsundials_sunlinsolspbcgs.so.4.4.0
 lib/libsundials_sunlinsolspfgmr.so
-lib/libsundials_sunlinsolspfgmr.so.4.3.0
+lib/libsundials_sunlinsolspfgmr.so.4.4.0
 lib/libsundials_sunlinsolspgmr.so
-lib/libsundials_sunlinsolspgmr.so.4.3.0
+lib/libsundials_sunlinsolspgmr.so.4.4.0
 lib/libsundials_sunlinsolsptfqmr.so
-lib/libsundials_sunlinsolsptfqmr.so.4.3.0
+lib/libsundials_sunlinsolsptfqmr.so.4.4.0
 lib/libsundials_sunmatrixband.so
 lib/libsundials_sunmatrixband.so.4
-lib/libsundials_sunmatrixband.so.4.3.0
+lib/libsundials_sunmatrixband.so.4.4.0
 lib/libsundials_sunmatrixdense.so
 lib/libsundials_sunmatrixdense.so.4
-lib/libsundials_sunmatrixdense.so.4.3.0
+lib/libsundials_sunmatrixdense.so.4.4.0
 lib/libsundials_sunmatrixsparse.so
 lib/libsundials_sunmatrixsparse.so.4
-lib/libsundials_sunmatrixsparse.so.4.3.0
+lib/libsundials_sunmatrixsparse.so.4.4.0
 lib/libsundials_sunnonlinsolfixedpoint.so
-lib/libsundials_sunnonlinsolfixedpoint.so.3.3.0
+lib/libsundials_sunnonlinsolfixedpoint.so.3.4.0
 lib/libsundials_sunnonlinsolnewton.so
-lib/libsundials_sunnonlinsolnewton.so.3.3.0
+lib/libsundials_sunnonlinsolnewton.so.3.4.0