[packages/sundials] - updated to 5.8.0 (new sonames) - added fortran patch (type fixes) and link patch (missing sonames
qboosh
qboosh at pld-linux.org
Thu Feb 16 06:39:13 CET 2023
commit 89ef07ed210410e08ed1fd85b3a967728041075b
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Thu Feb 16 06:40:41 2023 +0100
- updated to 5.8.0 (new sonames)
- added fortran patch (type fixes) and link patch (missing sonames and library dependencies)
sundials-cmake.patch | 14 --
sundials-fortran.patch | 545 +++++++++++++++++++++++++++++++++++++++++++++++++
sundials-link.patch | 201 ++++++++++++++++++
sundials.spec | 232 +++++++++++++--------
4 files changed, 891 insertions(+), 101 deletions(-)
---
diff --git a/sundials.spec b/sundials.spec
index 926396d..f446ff5 100644
--- a/sundials.spec
+++ b/sundials.spec
@@ -1,11 +1,15 @@
# TODO:
-# CUDA_ENABLE + RAJA_ENABLE (on bconds)
+# CUDA + RAJA (on bconds)
# MPI support
-# HYPRE_ENABLE (BR: hypre-devel)
-# OPENMP_DEVICE_ENABLE
-# PETSC_ENABLE (BR: petsc-devel)
+# MAGMA support
+# ONEMKL support
+# SUPERLUDIST support
+# HYPRE (BR: hypre-devel)
+# OPENMP_DEVICE
+# PETSC (BR: petsc-devel)
# SUPERLUMT http://crd-legacy.lbl.gov/~xiaoye/SuperLU/#superlu_mt
-# Trilinos_ENABLE
+# TRILINOS support
+# XBRAID support
#
# Conditional build:
%bcond_without openmp # OpenMP support
@@ -13,17 +17,18 @@
Summary: SUite of Nonlinear and DIfferential/ALgebraic equation Solvers
Summary(pl.UTF-8): Zbiór procedur do rozwiązywania równań nieliniowych i różniczkowych/algebraicznych
Name: sundials
-Version: 4.1.0
+Version: 5.8.0
Release: 1
License: BSD
Group: Libraries
#Source0Download: https://computing.llnl.gov/projects/sundials/sundials-software
Source0: https://github.com/LLNL/sundials/archive/v%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: a54bd3b6f78346b27cfce35be0bfb84c
-Patch0: %{name}-cmake.patch
+# Source0-md5: a087032a72127c12e162bfe4405b03cd
+Patch0: %{name}-fortran.patch
+Patch1: %{name}-link.patch
URL: https://computing.llnl.gov/projects/sundials
BuildRequires: SuiteSparse-KLU-devel
-BuildRequires: cmake >= 2.8.1
+BuildRequires: cmake >= 3.12
BuildRequires: gcc-fortran
BuildRequires: lapack-devel
%{?with_openmp:BuildRequires: libgomp-devel}
@@ -114,6 +119,7 @@ Dokumentacja API bibliotek SUNDIALS.
%prep
%setup -q
%patch0 -p1
+%patch1 -p1
# duplicate of cvodes/ckpng.pdf
%{__rm} doc/idas/ckpnt.pdf
@@ -122,16 +128,16 @@ Dokumentacja API bibliotek SUNDIALS.
install -d build
cd build
%cmake .. \
+ -DBUILD_FORTRAN_MODULE_INTERFACE=ON \
+ -DBUILD_FORTRAN77_INTERFACE=ON \
+ -DENABLE_KLU=ON \
+ -DENABLE_LAPACK=ON \
+ %{?with_openmp:-DENABLE_OPENMP=ON -DOpenMP_gcc_s_LIBRARY=/%{_lib}/libgcc_s.so} \
+ -DENABLE_PTHREAD=ON \
-DEXAMPLES_INSTALL_PATH=%{_examplesdir}/%{name}-%{version} \
- -DF77_INTERFACE_ENABLE=ON \
- -DF2003_INTERFACE_ENABLE=ON \
-DFortran_INSTALL_MODDIR=%{_includedir}/sundials_fortran \
- -DKLU_ENABLE=ON \
-DKLU_INCLUDE_DIR=%{_includedir}/suitesparse \
- -DKLU_LIBRARY_DIR=%{_libdir} \
- -DLAPACK_ENABLE=ON \
- %{?with_openmp:-DOPENMP_ENABLE=ON -DOpenMP_gcc_s_LIBRARY=/%{_lib}/libgcc_s.so} \
- -DPTHREAD_ENABLE=ON
+ -DKLU_LIBRARY_DIR=%{_libdir}
%{__make} -j1
@@ -151,124 +157,149 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%doc LICENSE README.md
%attr(755,root,root) %{_libdir}/libsundials_arkode.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_arkode.so.3
+%attr(755,root,root) %ghost %{_libdir}/libsundials_arkode.so.4
%attr(755,root,root) %{_libdir}/libsundials_cvode.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_cvode.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_cvode.so.5
%attr(755,root,root) %{_libdir}/libsundials_cvodes.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_cvodes.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_cvodes.so.5
+%attr(755,root,root) %{_libdir}/libsundials_generic.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_generic.so.5
%attr(755,root,root) %{_libdir}/libsundials_ida.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_ida.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_ida.so.5
%attr(755,root,root) %{_libdir}/libsundials_idas.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_idas.so.3
+%attr(755,root,root) %ghost %{_libdir}/libsundials_idas.so.4
%attr(755,root,root) %{_libdir}/libsundials_kinsol.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_kinsol.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_kinsol.so.5
+%attr(755,root,root) %{_libdir}/libsundials_nvecmanyvector.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_nvecmanyvector.so.5
%if %{with openmp}
%attr(755,root,root) %{_libdir}/libsundials_nvecopenmp.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_nvecopenmp.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_nvecopenmp.so.5
%endif
%attr(755,root,root) %{_libdir}/libsundials_nvecpthreads.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_nvecpthreads.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_nvecpthreads.so.5
%attr(755,root,root) %{_libdir}/libsundials_nvecserial.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_nvecserial.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_nvecserial.so.5
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolband.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolband.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolband.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunlinsoldense.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsoldense.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsoldense.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolklu.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolklu.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolklu.so.3
+%attr(755,root,root) %{_libdir}/libsundials_sunlinsollapackband.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsollapackband.so.3
+%attr(755,root,root) %{_libdir}/libsundials_sunlinsollapackdense.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsollapackdense.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolpcg.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolpcg.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolpcg.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolspbcgs.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolspbcgs.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolspbcgs.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolspfgmr.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolspfgmr.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolspfgmr.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolspgmr.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolspgmr.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolspgmr.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolsptfqmr.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolsptfqmr.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunlinsolsptfqmr.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunmatrixband.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunmatrixband.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunmatrixband.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunmatrixdense.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunmatrixdense.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunmatrixdense.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunmatrixsparse.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunmatrixsparse.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunmatrixsparse.so.3
%attr(755,root,root) %{_libdir}/libsundials_sunnonlinsolfixedpoint.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunnonlinsolfixedpoint.so.1
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunnonlinsolfixedpoint.so.2
%attr(755,root,root) %{_libdir}/libsundials_sunnonlinsolnewton.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_sunnonlinsolnewton.so.1
+%attr(755,root,root) %ghost %{_libdir}/libsundials_sunnonlinsolnewton.so.2
# Fortran 77 - shared
%if %{with openmp}
%attr(755,root,root) %{_libdir}/libsundials_fnvecopenmp.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecopenmp.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecopenmp.so.5
%endif
%attr(755,root,root) %{_libdir}/libsundials_fnvecpthreads.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecpthreads.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecpthreads.so.5
%attr(755,root,root) %{_libdir}/libsundials_fnvecserial.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecserial.so.4
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecserial.so.5
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolband.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolband.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolband.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsoldense.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsoldense.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsoldense.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolklu.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolklu.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolklu.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsollapackband.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsollapackband.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsollapackdense.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsollapackdense.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolpcg.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolpcg.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolpcg.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspbcgs.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspbcgs.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspbcgs.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspfgmr.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspfgmr.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspfgmr.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspgmr.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspgmr.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspgmr.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolsptfqmr.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolsptfqmr.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolsptfqmr.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunmatrixband.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixband.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixband.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunmatrixdense.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixdense.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixdense.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunmatrixsparse.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixsparse.so.2
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixsparse.so.3
%attr(755,root,root) %{_libdir}/libsundials_fsunnonlinsolfixedpoint.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunnonlinsolfixedpoint.so.1
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunnonlinsolfixedpoint.so.2
%attr(755,root,root) %{_libdir}/libsundials_fsunnonlinsolnewton.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunnonlinsolnewton.so.1
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunnonlinsolnewton.so.2
# Fortran 90/2003
-%attr(755,root,root) %{_libdir}/libsundials_fcvode_mod.so
+%attr(755,root,root) %{_libdir}/libsundials_farkode_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_farkode_mod.so.4
+%attr(755,root,root) %{_libdir}/libsundials_fcvode_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fcvode_mod.so.5
+%attr(755,root,root) %{_libdir}/libsundials_fcvodes_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fcvodes_mod.so.5
+%attr(755,root,root) %{_libdir}/libsundials_fida_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fida_mod.so.5
+%attr(755,root,root) %{_libdir}/libsundials_fidas_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fidas_mod.so.4
+%attr(755,root,root) %{_libdir}/libsundials_fkinsol_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fkinsol_mod.so.5
+%attr(755,root,root) %{_libdir}/libsundials_fnvecmanyvector_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecmanyvector_mod.so.5
%if %{with openmp}
-%attr(755,root,root) %{_libdir}/libsundials_fnvecopenmp_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecopenmp_mod.so.4
+%attr(755,root,root) %{_libdir}/libsundials_fnvecopenmp_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecopenmp_mod.so.5
%endif
-%attr(755,root,root) %{_libdir}/libsundials_fnvecpthreads_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecpthreads_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fnvecserial_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecserial_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolband_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolband_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunlinsoldense_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsoldense_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolklu_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolklu_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolpcg_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolpcg_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspbcgs_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspbcgs_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspfgmr_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspfgmr_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspgmr_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspgmr_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolsptfqmr_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolsptfqmr_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunmatrixband_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixband_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunmatrixdense_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixdense_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunmatrixsparse_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixsparse_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunnonlinsolfixedpoint_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunnonlinsolfixedpoint_mod.so.4
-%attr(755,root,root) %{_libdir}/libsundials_fsunnonlinsolnewton_mod.so.4.1.0
-%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunnonlinsolnewton_mod.so.4
+%attr(755,root,root) %{_libdir}/libsundials_fnvecpthreads_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecpthreads_mod.so.5
+%attr(755,root,root) %{_libdir}/libsundials_fnvecserial_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fnvecserial_mod.so.5
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolband_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolband_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsoldense_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsoldense_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolklu_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolklu_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolpcg_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolpcg_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspbcgs_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspbcgs_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspfgmr_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspfgmr_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspgmr_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolspgmr_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolsptfqmr_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunlinsolsptfqmr_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunmatrixband_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixband_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunmatrixdense_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixdense_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunmatrixsparse_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunmatrixsparse_mod.so.3
+%attr(755,root,root) %{_libdir}/libsundials_fsunnonlinsolfixedpoint_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunnonlinsolfixedpoint_mod.so.2
+%attr(755,root,root) %{_libdir}/libsundials_fsunnonlinsolnewton_mod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsundials_fsunnonlinsolnewton_mod.so.2
%files devel
%defattr(644,root,root,755)
@@ -277,7 +308,9 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/libsundials_cvodes.so
%attr(755,root,root) %{_libdir}/libsundials_ida.so
%attr(755,root,root) %{_libdir}/libsundials_idas.so
+%attr(755,root,root) %{_libdir}/libsundials_generic.so
%attr(755,root,root) %{_libdir}/libsundials_kinsol.so
+%attr(755,root,root) %{_libdir}/libsundials_nvecmanyvector.so
%if %{with openmp}
%attr(755,root,root) %{_libdir}/libsundials_nvecopenmp.so
%endif
@@ -286,6 +319,8 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolband.so
%attr(755,root,root) %{_libdir}/libsundials_sunlinsoldense.so
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolklu.so
+%attr(755,root,root) %{_libdir}/libsundials_sunlinsollapackband.so
+%attr(755,root,root) %{_libdir}/libsundials_sunlinsollapackdense.so
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolpcg.so
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolspbcgs.so
%attr(755,root,root) %{_libdir}/libsundials_sunlinsolspfgmr.so
@@ -307,6 +342,7 @@ rm -rf $RPM_BUILD_ROOT
%{_includedir}/sunlinsol
%{_includedir}/sunmatrix
%{_includedir}/sunnonlinsol
+%{_libdir}/cmake/sundials
%{_examplesdir}/%{name}-%{version}
# Fortran 77 - shared
@@ -318,6 +354,8 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolband.so
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsoldense.so
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolklu.so
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsollapackband.so
+%attr(755,root,root) %{_libdir}/libsundials_fsunlinsollapackdense.so
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolpcg.so
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspbcgs.so
%attr(755,root,root) %{_libdir}/libsundials_fsunlinsolspfgmr.so
@@ -335,6 +373,14 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libsundials_fkinsol.a
%{_libdir}/libsundials_fnvecserial.a
+# Fortran 90/2003
+%attr(755,root,root) %{_libdir}/libsundials_farkode_mod.so
+%attr(755,root,root) %{_libdir}/libsundials_fcvode_mod.so
+%attr(755,root,root) %{_libdir}/libsundials_fcvodes_mod.so
+%attr(755,root,root) %{_libdir}/libsundials_fida_mod.so
+%attr(755,root,root) %{_libdir}/libsundials_fidas_mod.so
+%attr(755,root,root) %{_libdir}/libsundials_fkinsol_mod.so
+%attr(755,root,root) %{_libdir}/libsundials_fnvecmanyvector_mod.so
%if %{with openmp}
%attr(755,root,root) %{_libdir}/libsundials_fnvecopenmp_mod.so
%endif
@@ -360,9 +406,11 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libsundials_arkode.a
%{_libdir}/libsundials_cvode.a
%{_libdir}/libsundials_cvodes.a
+%{_libdir}/libsundials_generic.a
%{_libdir}/libsundials_ida.a
%{_libdir}/libsundials_idas.a
%{_libdir}/libsundials_kinsol.a
+%{_libdir}/libsundials_nvecmanyvector.a
%if %{with openmp}
%{_libdir}/libsundials_nvecopenmp.a
%endif
@@ -371,6 +419,8 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libsundials_sunlinsolband.a
%{_libdir}/libsundials_sunlinsoldense.a
%{_libdir}/libsundials_sunlinsolklu.a
+%{_libdir}/libsundials_sunlinsollapackband.a
+%{_libdir}/libsundials_sunlinsollapackdense.a
%{_libdir}/libsundials_sunlinsolpcg.a
%{_libdir}/libsundials_sunlinsolspbcgs.a
%{_libdir}/libsundials_sunlinsolspfgmr.a
@@ -391,6 +441,8 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libsundials_fsunlinsolband.a
%{_libdir}/libsundials_fsunlinsoldense.a
%{_libdir}/libsundials_fsunlinsolklu.a
+%{_libdir}/libsundials_fsunlinsollapackband.a
+%{_libdir}/libsundials_fsunlinsollapackdense.a
%{_libdir}/libsundials_fsunlinsolpcg.a
%{_libdir}/libsundials_fsunlinsolspbcgs.a
%{_libdir}/libsundials_fsunlinsolspfgmr.a
@@ -403,7 +455,13 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libsundials_fsunnonlinsolnewton.a
# Fortran 90/2003
+%{_libdir}/libsundials_farkode_mod.a
%{_libdir}/libsundials_fcvode_mod.a
+%{_libdir}/libsundials_fcvodes_mod.a
+%{_libdir}/libsundials_fida_mod.a
+%{_libdir}/libsundials_fidas_mod.a
+%{_libdir}/libsundials_fkinsol_mod.a
+%{_libdir}/libsundials_fnvecmanyvector_mod.a
%if %{with openmp}
%{_libdir}/libsundials_fnvecopenmp_mod.a
%endif
diff --git a/sundials-cmake.patch b/sundials-cmake.patch
deleted file mode 100644
index f2806ad..0000000
--- a/sundials-cmake.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- sundials-4.1.0/src/nvector/CMakeLists.txt.orig 2019-02-13 23:04:59.000000000 +0100
-+++ sundials-4.1.0/src/nvector/CMakeLists.txt 2023-02-05 08:55:00.691735713 +0100
-@@ -34,9 +34,9 @@ if(OPENMP_DEVICE_ENABLE AND OPENMP_FOUND
- add_subdirectory(openmpdev)
- endif(OPENMP_DEVICE_ENABLE AND OPENMP_FOUND AND OPENMP_SUPPORTS_DEVICE_OFFLOADING)
-
--if(PTHREADS_ENABLE AND PTHREADS_FOUND)
-+if(PTHREAD_ENABLE AND PTHREADS_FOUND)
- add_subdirectory(pthreads)
--endif(PTHREADS_ENABLE AND PTHREADS_FOUND)
-+endif(PTHREAD_ENABLE AND PTHREADS_FOUND)
-
- if(PETSC_ENABLE AND PETSC_FOUND)
- add_subdirectory(petsc)
diff --git a/sundials-fortran.patch b/sundials-fortran.patch
new file mode 100644
index 0000000..c2c8857
--- /dev/null
+++ b/sundials-fortran.patch
@@ -0,0 +1,545 @@
+--- sundials-5.8.0/examples/arkode/F2003_serial/ark_analytic_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/arkode/F2003_serial/ark_analytic_f2003.f90 2023-02-13 20:13:12.725726437 +0100
+@@ -34,7 +34,7 @@ module ode_mod
+ implicit none
+
+ ! number of equations
+- integer(c_long), parameter :: neq = 1
++ integer(c_int64_t), parameter :: neq = 1
+
+ ! ODE parameters
+ double precision, parameter :: lamda = -100.0d0
+--- sundials-5.8.0/examples/arkode/F2003_serial/test_ark_butcher_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/arkode/F2003_serial/test_ark_butcher_f2003.f90 2023-02-13 20:13:29.335636453 +0100
+@@ -28,7 +28,7 @@ module test_arkode_butcher_table
+ implicit none
+ type(c_ptr) :: ERK, DIRK
+ integer(C_INT) :: ierr, q(1), p(1)
+- integer(C_LONG) :: liw(1), lrw(1)
++ integer(C_INT64_T) :: liw(1), lrw(1)
+ real(C_DOUBLE) :: b(2), c(2), d(2), A(4)
+
+ !===== Setup ====
+--- sundials-5.8.0/examples/cvode/F2003_serial/cv_analytic_fp_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/cvode/F2003_serial/cv_analytic_fp_f2003.f90 2023-02-13 20:13:33.668946311 +0100
+@@ -33,7 +33,7 @@ module ode_mod
+ implicit none
+
+ ! number of equations
+- integer(c_long), parameter :: neq = 1
++ integer(c_int64_t), parameter :: neq = 1
+
+ ! ODE parameters
+ double precision, parameter :: lamda = -100.0d0
+--- sundials-5.8.0/examples/cvode/F2003_serial/cv_analytic_sys_dns_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/cvode/F2003_serial/cv_analytic_sys_dns_f2003.f90 2023-02-13 20:13:37.578925129 +0100
+@@ -54,7 +54,7 @@ module ode_mod
+ implicit none
+
+ ! number of equations
+- integer(c_long), parameter :: neq = 3
++ integer(c_int64_t), parameter :: neq = 3
+
+ ! ODE parameters
+ double precision, parameter :: lamda = -100.0d0
+--- sundials-5.8.0/examples/cvode/F2003_serial/cv_analytic_sys_dns_jac_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/cvode/F2003_serial/cv_analytic_sys_dns_jac_f2003.f90 2023-02-13 20:13:40.538909093 +0100
+@@ -54,7 +54,7 @@ module ode_mod
+ implicit none
+
+ ! number of equations
+- integer(c_long), parameter :: neq = 3
++ integer(c_int64_t), parameter :: neq = 3
+
+ ! ODE parameters
+ double precision, parameter :: lamda = -100.0d0
+--- sundials-5.8.0/examples/cvode/F2003_serial/cv_brusselator_dns_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/cvode/F2003_serial/cv_brusselator_dns_f2003.f90 2023-02-13 20:13:43.518892949 +0100
+@@ -37,7 +37,7 @@ module ode_mod
+ implicit none
+
+ ! number of equations
+- integer(c_long), parameter :: neq = 3
++ integer(c_int64_t), parameter :: neq = 3
+
+ ! ODE parameters
+ double precision, parameter :: a = 1.2d0
+--- sundials-5.8.0/examples/cvode/F2003_serial/cv_analytic_sys_klu_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/cvode/F2003_serial/cv_analytic_sys_klu_f2003.f90 2023-02-13 20:13:47.742203403 +0100
+@@ -54,7 +54,7 @@ module ode_mod
+ implicit none
+
+ ! number of equations
+- integer(c_long), parameter :: neq = 3
++ integer(c_int64_t), parameter :: neq = 3
+
+ ! ODE parameters
+ double precision, parameter :: lamda = -100.0d0
+@@ -144,8 +144,8 @@ contains
+ type(N_Vector) :: tmp1, tmp2, tmp3 ! workspace N_Vectors
+
+ ! pointer to data in SUNDIALS matrix
+- integer(c_long), pointer :: Jidxptr(:)
+- integer(c_long), pointer :: Jidxval(:)
++ integer(c_int64_t), pointer :: Jidxptr(:)
++ integer(c_int64_t), pointer :: Jidxval(:)
+ real(c_double), pointer :: Jmat(:)
+
+ !======= Internals ============
+--- sundials-5.8.0/examples/cvodes/F2003_serial/cvs_analytic_fp_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/cvodes/F2003_serial/cvs_analytic_fp_f2003.f90 2023-02-13 20:13:50.445522091 +0100
+@@ -33,7 +33,7 @@ module ode_mod
+ implicit none
+
+ ! number of equations
+- integer(c_long), parameter :: neq = 1
++ integer(c_int64_t), parameter :: neq = 1
+
+ ! ODE parameters
+ double precision, parameter :: lamda = -100.0d0
+--- sundials-5.8.0/examples/cvodes/F2003_serial/cvsAdvDiff_FSA_non_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/cvodes/F2003_serial/cvsAdvDiff_FSA_non_f2003.f90 2023-02-13 20:13:53.515505459 +0100
+@@ -65,7 +65,7 @@ module ode_problem
+ integer(c_int), parameter :: NP = 2
+ integer(c_int), parameter :: NS = 2
+ integer(c_long), parameter :: MX = 10
+- integer(c_long), parameter :: NEQ = MX
++ integer(c_int64_t), parameter :: NEQ = MX
+
+ ! problem constants
+ real(c_double) :: ZERO = 0.d0
+--- sundials-5.8.0/examples/ida/F2003_serial/idaHeat2D_kry_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/ida/F2003_serial/idaHeat2D_kry_f2003.f90 2023-02-13 20:13:56.898820464 +0100
+@@ -45,7 +45,7 @@ module dae_mod
+
+ integer(c_int), parameter :: nout = 11
+ integer(c_int), parameter :: mgrid = 10
+- integer(c_long), parameter :: neq = mgrid*mgrid
++ integer(c_int64_t), parameter :: neq = mgrid*mgrid
+
+ real(c_double) :: dx
+ real(c_double) :: coeff
+--- sundials-5.8.0/examples/ida/F2003_serial/idaRoberts_dns_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/ida/F2003_serial/idaRoberts_dns_f2003.f90 2023-02-13 20:43:53.645753317 +0100
+@@ -39,7 +39,7 @@ module dae_mod
+ !======= Declarations =========
+ implicit none
+
+- integer(c_long), parameter :: neq = 3
++ integer(c_int64_t), parameter :: neq = 3
+ integer(c_long), parameter :: nout = 12
+
+ contains
+--- sundials-5.8.0/examples/idas/F2003_serial/idasHeat2D_kry_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/idas/F2003_serial/idasHeat2D_kry_f2003.f90 2023-02-13 20:54:19.025698677 +0100
+@@ -45,7 +45,7 @@ module dae_mod
+
+ integer(c_int), parameter :: nout = 11
+ integer(c_int), parameter :: mgrid = 10
+- integer(c_long), parameter :: neq = mgrid*mgrid
++ integer(c_int64_t), parameter :: neq = mgrid*mgrid
+
+ real(c_double) :: dx
+ real(c_double) :: coeff
+--- sundials-5.8.0/examples/idas/F2003_serial/idasAkzoNob_ASAi_dns_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/idas/F2003_serial/idasAkzoNob_ASAi_dns_f2003.f90 2023-02-13 21:16:05.661953354 +0100
+@@ -33,7 +33,7 @@ module dae_mod
+ implicit none
+
+ ! problem parameters
+- integer(c_long), parameter :: NEQ = 6
++ integer(c_int64_t), parameter :: NEQ = 6
+ integer(c_long), parameter :: STEPS = 150
+ real(c_double), parameter :: T0 = 0.0d0
+ real(c_double), parameter :: TF = 180.d0
+@@ -404,7 +404,7 @@ program main
+ retval = FIDASStolerancesB(mem, indexB(1), RTOLB, ATOLB)
+ call check_retval(retval, "FIDASStolerancesB")
+
+- retval = FIDASetMaxNumStepsB(mem, indexB(1), 1000_8)
++ retval = FIDASetMaxNumStepsB(mem, indexB(1), 1000)
+ call check_retval(retval, "FIDASetMaxNumStepsB")
+
+ ! Create dense SUNMatrix for use in linear solves
+--- sundials-5.8.0/examples/kinsol/F2003_serial/kinRoboKin_dns_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/kinsol/F2003_serial/kinRoboKin_dns_f2003.f90 2023-02-13 22:13:09.663403946 +0100
+@@ -34,7 +34,7 @@ module prob_mod
+ implicit none
+
+ integer(c_long), parameter :: nvar = 8
+- integer(c_long), parameter :: neq = 3*nvar
++ integer(c_int64_t), parameter :: neq = 3*nvar
+ real(c_double), parameter :: ftol = 1.d-5
+ real(c_double), parameter :: stol = 1.d-5
+
+--- sundials-5.8.0/examples/kinsol/F2003_serial/kinLaplace_bnd_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/kinsol/F2003_serial/kinLaplace_bnd_f2003.f90 2023-02-13 22:16:06.985776642 +0100
+@@ -31,9 +31,9 @@ module prob_mod
+ !======= Declarations =========
+ implicit none
+
+- integer(c_long), parameter :: nx = 31
++ integer(c_int64_t), parameter :: nx = 31
+ integer(c_long), parameter :: ny = 31
+- integer(c_long), parameter :: neq = nx*ny
++ integer(c_int64_t), parameter :: neq = nx*ny
+ integer(c_long), parameter :: skip = 3
+ real(c_double), parameter :: ftol = 1.d-12
+
+--- sundials-5.8.0/examples/kinsol/F2003_serial/kinLaplace_picard_kry_f2003.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/kinsol/F2003_serial/kinLaplace_picard_kry_f2003.f90 2023-02-13 22:20:05.934482145 +0100
+@@ -35,7 +35,7 @@ module prob_mod
+
+ integer(c_long), parameter :: nx = 31
+ integer(c_long), parameter :: ny = 31
+- integer(c_long), parameter :: neq = nx*ny
++ integer(c_int64_t), parameter :: neq = nx*ny
+ integer(c_long), parameter :: skip = 3
+ real(c_double), parameter :: ftol = 1.d-12
+
+--- sundials-5.8.0/examples/nvector/serial/test_fnvector_serial_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/nvector/serial/test_fnvector_serial_mod.f90 2023-02-14 20:57:45.896508986 +0100
+@@ -22,7 +22,7 @@ module test_nvector_serial
+ use test_utilities
+ implicit none
+
+- integer(c_long), parameter :: N = 100 ! vector length
++ integer(c_int64_t), parameter :: N = 100 ! vector length
+ integer(c_int), parameter :: nv = 3 ! length of vector arrays
+
+ contains
+@@ -30,7 +30,7 @@ contains
+ integer function smoke_tests() result(ret)
+ implicit none
+
+- integer(c_long) :: lenrw(1), leniw(1) ! real and int work space size
++ integer(c_int64_t) :: lenrw(1), leniw(1) ! real and int work space size
+ integer(c_long) :: ival ! integer work value
+ type(c_ptr) :: cptr ! c_ptr work value
+ real(c_double) :: rval ! real work value
+--- sundials-5.8.0/examples/nvector/test_nvector.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/nvector/test_nvector.f90 2023-02-14 20:57:52.136475181 +0100
+@@ -38,7 +38,7 @@ integer(C_INT) function Test_FN_VMake(X,
+ implicit none
+
+ type(N_Vector) :: X
+- integer(C_LONG) :: local_length
++ integer(C_INT64_T) :: local_length
+ integer(C_INT) :: myid
+
+ if (.not. has_data(X)) then
+@@ -64,7 +64,7 @@ integer(C_INT) function Test_FN_VGetArra
+ implicit none
+
+ type(N_Vector) :: W
+- integer(C_LONG) :: local_length
++ integer(C_INT64_T) :: local_length
+ integer(C_INT) :: myid
+
+ ! check vector data
+@@ -98,7 +98,7 @@ integer(C_INT) function Test_FN_VLinearC
+ result(failure)
+
+ type(N_Vector) :: X
+- integer(C_LONG) :: local_length
++ integer(C_INT64_T) :: local_length
+ integer(C_INT) :: myid, ierr
+ type(N_Vector), pointer :: Y1, Y2, Y3
+ type(c_ptr), target :: V(3)
+--- sundials-5.8.0/examples/nvector/manyvector/test_fnvector_manyvector_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/nvector/manyvector/test_fnvector_manyvector_mod.f90 2023-02-14 20:57:56.303119275 +0100
+@@ -24,17 +24,17 @@ module test_nvector_manyvector
+ implicit none
+
+ integer(c_int), parameter :: nsubvecs = 2
+- integer(c_long), parameter :: N1 = 100 ! individual vector length
+- integer(c_long), parameter :: N2 = 200 ! individual vector length
++ integer(c_int64_t), parameter :: N1 = 100 ! individual vector length
++ integer(c_int64_t), parameter :: N2 = 200 ! individual vector length
+ integer(c_int), parameter :: nv = 3 ! length of vector arrays
+- integer(c_long), parameter :: N = N1 + N2 ! overall manyvector length
++ integer(c_int64_t), parameter :: N = N1 + N2 ! overall manyvector length
+
+ contains
+
+ integer function smoke_tests() result(ret)
+ implicit none
+
+- integer(c_long) :: lenrw(1), leniw(1) ! real and int work space size
++ integer(c_int64_t) :: lenrw(1), leniw(1) ! real and int work space size
+ integer(c_long) :: ival ! integer work value
+ type(c_ptr) :: cptr ! c_ptr work value
+ real(c_double) :: rval ! real work value
+@@ -106,9 +106,9 @@ contains
+
+ ! test the ManyVector specific operations
+ ival = FN_VGetNumSubvectors_ManyVector(x)
+- xptr => FN_VGetSubvectorArrayPointer_ManyVector(x, ival-1)
+- ival = FN_VSetSubvectorArrayPointer_ManyVector(xptr, x, ival-1)
+- tmp => FN_VGetSubvector_ManyVector(x, ival-1)
++ xptr => FN_VGetSubvectorArrayPointer_ManyVector(x, ival-1_8)
++ ival = FN_VSetSubvectorArrayPointer_ManyVector(xptr, x, ival-1_8)
++ tmp => FN_VGetSubvector_ManyVector(x, ival-1_8)
+
+ !==== Cleanup =====
+ tmp => FN_VGetVecAtIndexVectorArray(subvecs, 0)
+--- sundials-5.8.0/examples/nvector/pthreads/test_fnvector_pthreads_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/nvector/pthreads/test_fnvector_pthreads_mod.f90 2023-02-14 20:57:59.366436013 +0100
+@@ -22,7 +22,7 @@ module test_nvector_pthreads
+ use test_utilities
+ implicit none
+
+- integer(c_long), parameter :: N = 100 ! vector length
++ integer(c_int64_t), parameter :: N = 100 ! vector length
+ integer(c_int), parameter :: nv = 3 ! length of vector arrays
+ integer(c_int), parameter :: ns = 2 ! number of vector arrays
+
+@@ -31,7 +31,7 @@ module test_nvector_pthreads
+ integer function smoke_tests() result(ret)
+ implicit none
+
+- integer(c_long) :: lenrw(1), leniw(1) ! real and int work space size
++ integer(c_int64_t) :: lenrw(1), leniw(1) ! real and int work space size
+ integer(c_long) :: ival ! integer work value
+ type(c_ptr) :: cptr ! c_ptr work value
+ real(c_double) :: rval ! real work value
+--- sundials-5.8.0/examples/nvector/C_openmp/test_fnvector_openmp_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/nvector/C_openmp/test_fnvector_openmp_mod.f90 2023-02-14 20:58:02.486419110 +0100
+@@ -22,7 +22,7 @@ module test_nvector_openmp
+ use test_utilities
+ implicit none
+
+- integer(c_long), parameter :: N = 100 ! vector length
++ integer(c_int64_t), parameter :: N = 100 ! vector length
+ integer(c_int), parameter :: nv = 3 ! length of vector arrays
+ integer(c_int), parameter :: ns = 2 ! number of vector arrays
+
+@@ -31,7 +31,7 @@ module test_nvector_openmp
+ integer function smoke_tests() result(ret)
+ implicit none
+
+- integer(c_long) :: lenrw(1), leniw(1) ! real and int work space size
++ integer(c_int64_t) :: lenrw(1), leniw(1) ! real and int work space size
+ integer(c_long) :: ival ! integer work value
+ type(c_ptr) :: cptr ! c_ptr work value
+ real(c_double) :: rval ! real work value
+--- sundials-5.8.0/examples/sunmatrix/dense/test_fsunmatrix_dense_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunmatrix/dense/test_fsunmatrix_dense_mod.f90 2023-02-14 20:58:05.713068297 +0100
+@@ -19,7 +19,7 @@ module test_fsunmatrix_dense
+ use, intrinsic :: iso_c_binding
+ implicit none
+
+- integer(C_LONG), parameter :: N = 4
++ integer(C_INT64_T), parameter :: N = 4
+
+ contains
+
+--- sundials-5.8.0/examples/sunmatrix/band/test_fsunmatrix_band_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunmatrix/band/test_fsunmatrix_band_mod.f90 2023-02-14 20:58:08.799718242 +0100
+@@ -19,9 +19,9 @@ module test_fsunmatrix_band
+ use, intrinsic :: iso_c_binding
+ implicit none
+
+- integer(C_LONG), parameter :: N = 4
+- integer(C_LONG), parameter :: mu = 1
+- integer(C_LONG), parameter :: ml = 1
++ integer(C_INT64_T), parameter :: N = 4
++ integer(C_INT64_T), parameter :: mu = 1
++ integer(C_INT64_T), parameter :: ml = 1
+
+ contains
+
+@@ -107,7 +107,8 @@ contains
+ type(SUNMatrix), pointer :: A, I
+ type(N_Vector), pointer :: x, y
+ real(C_DOUBLE), pointer :: Adata(:), Idata(:), colj(:), xdata(:), ydata(:)
+- integer(C_LONG) :: ii, jj, smu, jstart, jend, offset
++ integer(C_LONG) :: ii, smu, jstart, jend, offset
++ integer(C_INT64_T) :: jj
+
+ fails = 0
+
+--- sundials-5.8.0/examples/sunmatrix/sparse/test_fsunmatrix_sparse_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunmatrix/sparse/test_fsunmatrix_sparse_mod.f90 2023-02-14 20:58:12.293032650 +0100
+@@ -19,7 +19,7 @@ module test_fsunmatrix_sparse
+ use, intrinsic :: iso_c_binding
+ implicit none
+
+- integer(C_LONG), parameter :: N = 5
++ integer(C_INT64_T), parameter :: N = 5
+
+ contains
+
+@@ -40,7 +40,7 @@ contains
+ type(SUNMatrix), pointer :: A, B ! SUNMatrix
+ type(N_Vector), pointer :: x, y ! NVectors
+ real(C_DOUBLE), pointer :: matdat(:) ! matrix data pointer
+- integer(C_LONG), pointer :: inddat(:) ! indices pointer
++ integer(C_INT64_T), pointer :: inddat(:) ! indices pointer
+ integer(C_LONG) :: lenrw(1), leniw(1) ! matrix real and int work space size
+
+ integer(C_LONG) :: tmp1
+@@ -205,8 +205,8 @@ integer(C_INT) function check_matrix(A,
+ type(SUNMatrix) :: A, B
+ real(C_DOUBLE) :: tol
+ real(C_DOUBLE), pointer :: Adata(:), Bdata(:)
+- integer(C_LONG), pointer :: Aidxvals(:), Bidxvals(:)
+- integer(C_LONG), pointer :: Aidxptrs(:), Bidxptrs(:)
++ integer(C_INT64_T), pointer :: Aidxvals(:), Bidxvals(:)
++ integer(C_INT64_T), pointer :: Aidxptrs(:), Bidxptrs(:)
+ integer(C_LONG) :: i, np, Annz, Bnnz
+
+ fails = 0
+@@ -291,7 +291,7 @@ integer(C_INT) function check_matrix_ent
+ type(SUNMatrix) :: A
+ real(C_DOUBLE) :: c, tol
+ real(C_DOUBLE), pointer :: Adata(:)
+- integer(C_LONG), pointer :: Aidxptrs(:)
++ integer(C_INT64_T), pointer :: Aidxptrs(:)
+ integer(C_LONG) :: i, np
+
+ fails = 0
+--- sundials-5.8.0/examples/sunlinsol/band/test_fsunlinsol_band_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunlinsol/band/test_fsunlinsol_band_mod.f90 2023-02-14 20:58:15.576348196 +0100
+@@ -19,9 +19,9 @@ module test_fsunlinsol_band
+ use, intrinsic :: iso_c_binding
+ implicit none
+
+- integer(C_LONG), parameter :: N = 10
+- integer(C_LONG), parameter :: mu = 2
+- integer(C_LONG), parameter :: ml = 3
++ integer(C_INT64_T), parameter :: N = 10
++ integer(C_INT64_T), parameter :: mu = 2
++ integer(C_INT64_T), parameter :: ml = 3
+
+ contains
+
+@@ -43,7 +43,8 @@ contains
+ real(C_DOUBLE), pointer :: colj(:) ! matrix column data
+ real(C_DOUBLE), pointer :: xdata(:), Adata(:) ! data arrays
+ real(C_DOUBLE) :: tmpr ! temporary real value
+- integer(C_LONG) :: j, k
++ integer(C_INT64_T) :: j
++ integer(C_LONG) :: k
+ integer(C_LONG) :: smu, kstart, kend, offset
+ integer(C_INT) :: tmp
+
+--- sundials-5.8.0/examples/sunlinsol/dense/test_fsunlinsol_dense_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunlinsol/dense/test_fsunlinsol_dense_mod.f90 2023-02-14 20:58:18.806330698 +0100
+@@ -19,7 +19,7 @@ module test_fsunlinsol_dense
+ use, intrinsic :: iso_c_binding
+ implicit none
+
+- integer(C_LONG), private, parameter :: N = 100
++ integer(C_INT64_T), private, parameter :: N = 100
+
+ contains
+
+@@ -41,7 +41,8 @@ contains
+ real(C_DOUBLE), pointer :: colj(:), colIj(:) ! matrix column data
+ real(C_DOUBLE), pointer :: xdata(:) ! x vector data
+ real(C_DOUBLE) :: tmpr ! temporary real value
+- integer(C_LONG) :: j, k
++ integer(C_INT64_T) :: j
++ integer(C_LONG) :: k
+ integer(C_INT) :: tmp
+
+ fails = 0
+--- sundials-5.8.0/examples/sunlinsol/spgmr/serial/test_fsunlinsol_spgmr_mod_serial.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunlinsol/spgmr/serial/test_fsunlinsol_spgmr_mod_serial.f90 2023-02-14 20:58:21.812981076 +0100
+@@ -24,7 +24,7 @@ module test_fsunlinsol_spgmr_serial
+ use fsundials_nvector_mod
+ implicit none
+
+- integer(C_LONG), private, parameter :: N = 100
++ integer(C_INT64_T), private, parameter :: N = 100
+ integer(C_INT), private, parameter :: pretype = 1 ! Preconditioning type (1 or 2)
+ integer(C_INT), private, parameter :: gstype = 1 ! Gram-Schmidt orthoognalization type (1 or 2)
+ integer(C_INT), private, parameter :: maxl = 100 ! maxium Krylov subspace dimension (> 0)
+--- sundials-5.8.0/examples/sunlinsol/spfgmr/serial/test_fsunlinsol_spfgmr_mod_serial.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunlinsol/spfgmr/serial/test_fsunlinsol_spfgmr_mod_serial.f90 2023-02-14 20:58:25.326295376 +0100
+@@ -24,7 +24,7 @@ module test_fsunlinsol_spfgmr_serial
+ use fsundials_nvector_mod
+ implicit none
+
+- integer(C_LONG), private, parameter :: N = 100
++ integer(C_INT64_T), private, parameter :: N = 100
+ integer(C_INT), private, parameter :: pretype = 1 ! Preconditioning type (1 or 2)
+ integer(C_INT), private, parameter :: gstype = 1 ! Gram-Schmidt orthoognalization type (1 or 2)
+ integer(C_INT), private, parameter :: maxl = 100 ! maxium Krylov subspace dimension (> 0)
+--- sundials-5.8.0/examples/sunlinsol/spbcgs/serial/test_fsunlinsol_spbcgs_mod_serial.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunlinsol/spbcgs/serial/test_fsunlinsol_spbcgs_mod_serial.f90 2023-02-14 20:58:28.119613577 +0100
+@@ -24,7 +24,7 @@ module test_fsunlinsol_spbcgs_serial
+ use fsundials_nvector_mod
+ implicit none
+
+- integer(C_LONG), private, parameter :: N = 100
++ integer(C_INT64_T), private, parameter :: N = 100
+ integer(C_INT), private, parameter :: pretype = 1 ! Preconditioning type (1 or 2)
+ integer(C_INT), private, parameter :: maxl = 100 ! maxium Krylov subspace dimension (> 0)
+ real(C_DOUBLE), private, parameter :: tol = 1e-13 ! solver tolerance
+--- sundials-5.8.0/examples/sunlinsol/sptfqmr/serial/test_fsunlinsol_sptfqmr_mod_serial.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunlinsol/sptfqmr/serial/test_fsunlinsol_sptfqmr_mod_serial.f90 2023-02-14 20:58:30.999597975 +0100
+@@ -24,7 +24,7 @@ module test_fsunlinsol_sptfqmr_serial
+ use fsundials_nvector_mod
+ implicit none
+
+- integer(C_LONG), private, parameter :: N = 100
++ integer(C_INT64_T), private, parameter :: N = 100
+ integer(C_INT), private, parameter :: pretype = 1 ! Preconditioning type (1 or 2)
+ integer(C_INT), private, parameter :: maxl = 100 ! maxium Krylov subspace dimension (> 0)
+ real(C_DOUBLE), private, parameter :: tol = 1e-13 ! solver tolerance
+--- sundials-5.8.0/examples/sunlinsol/pcg/serial/test_fsunlinsol_pcg_mod_serial.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunlinsol/pcg/serial/test_fsunlinsol_pcg_mod_serial.f90 2023-02-14 20:58:33.842915904 +0100
+@@ -24,7 +24,7 @@ module test_fsunlinsol_pcg_serial
+ use fsundials_nvector_mod
+ implicit none
+
+- integer(C_LONG), private, parameter :: N = 100
++ integer(C_INT64_T), private, parameter :: N = 100
+ integer(C_INT), private, parameter :: pretype = 1 ! Preconditioning type (1 or 2)
+ integer(C_INT), private, parameter :: maxl = 500 ! maxium Krylov subspace dimension (> 0)
+ real(C_DOUBLE), private, parameter :: tol = 1e-13 ! solver tolerance
+--- sundials-5.8.0/examples/sunlinsol/klu/test_fsunlinsol_klu_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunlinsol/klu/test_fsunlinsol_klu_mod.f90 2023-02-14 21:06:57.236855452 +0100
+@@ -19,7 +19,7 @@ module test_fsunlinsol_klu
+ use, intrinsic :: iso_c_binding
+ implicit none
+
+- integer(C_LONG), private, parameter :: N = 300
++ integer(C_INT64_T), private, parameter :: N = 300
+
+ contains
+
+@@ -42,7 +42,8 @@ contains
+ real(C_DOUBLE), pointer :: colj(:), colIj(:) ! matrix column data
+ real(C_DOUBLE), pointer :: xdata(:) ! x vector data
+ real(C_DOUBLE) :: tmpr ! temporary real value
+- integer(C_LONG) :: j, k, i
++ integer(C_INT64_T) :: j
++ integer(C_LONG) :: k, i
+ integer(C_INT) :: tmp
+
+ fails = 0
+--- sundials-5.8.0/examples/sunnonlinsol/newton/test_fsunnonlinsol_newton_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunnonlinsol/newton/test_fsunnonlinsol_newton_mod.f90 2023-02-14 21:26:07.477290732 +0100
+@@ -24,7 +24,7 @@ module test_fsunnonlinsol_newton
+
+ implicit none
+
+- integer(C_LONG), parameter :: NEQ = 3 ! number of equations
++ integer(C_INT64_T), parameter :: NEQ = 3 ! number of equations
+ integer(C_INT), parameter :: MAXIT = 10 ! max nonlinear iters.
+ real(C_DOUBLE), parameter :: TOL = 1.0e-2 ! nonlinear solver tolerance
+
+--- sundials-5.8.0/examples/sunnonlinsol/fixedpoint/test_fsunnonlinsol_fixedpoint_mod.f90.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/examples/sunnonlinsol/fixedpoint/test_fsunnonlinsol_fixedpoint_mod.f90 2023-02-14 21:29:38.692813146 +0100
+@@ -21,7 +21,7 @@ module test_fsunnonlinsol_fixedpoint
+
+ implicit none
+
+- integer(C_LONG), parameter :: NEQ = 3 ! number of equations
++ integer(C_INT64_T), parameter :: NEQ = 3 ! number of equations
+ integer(C_INT), parameter :: MAXIT = 10 ! max nonlinear iters.
+ real(C_DOUBLE), parameter :: TOL = 1.0e-4 ! nonlinear solver tolerance
+
diff --git a/sundials-link.patch b/sundials-link.patch
new file mode 100644
index 0000000..fa8395e
--- /dev/null
+++ b/sundials-link.patch
@@ -0,0 +1,201 @@
+--- sundials-5.8.0/src/sunlinsol/band/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/band/CMakeLists.txt 2023-02-15 20:44:27.592764801 +0100
+@@ -34,7 +34,7 @@ sundials_add_library(sundials_sunlinsolb
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_BAND module")
+--- sundials-5.8.0/src/sunlinsol/dense/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/dense/CMakeLists.txt 2023-02-15 20:44:46.245997081 +0100
+@@ -34,7 +34,7 @@ sundials_add_library(sundials_sunlinsold
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_DENSE module")
+--- sundials-5.8.0/src/sunlinsol/klu/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/klu/CMakeLists.txt 2023-02-15 20:44:57.062605149 +0100
+@@ -33,7 +33,7 @@ sundials_add_library(sundials_sunlinsolk
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_KLU module")
+--- sundials-5.8.0/src/sunlinsol/lapackband/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/lapackband/CMakeLists.txt 2023-02-15 21:20:48.607615895 +0100
+@@ -33,7 +33,7 @@ sundials_add_library(sundials_sunlinsoll
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_LAPACKBAND module")
+--- sundials-5.8.0/src/sunlinsol/lapackdense/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/lapackdense/CMakeLists.txt 2023-02-15 21:20:59.340891082 +0100
+@@ -33,7 +33,7 @@ sundials_add_library(sundials_sunlinsoll
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_LAPACKDENSE module")
+--- sundials-5.8.0/src/sunlinsol/pcg/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/pcg/CMakeLists.txt 2023-02-15 20:45:21.392473343 +0100
+@@ -32,7 +32,7 @@ sundials_add_library(sundials_sunlinsolp
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_PCG module")
+@@ -48,7 +48,7 @@ if(BUILD_FORTRAN77_INTERFACE)
+ SOURCES
+ fsunlinsol_pcg.c
+ LINK_LIBRARIES
+- PRIVATE sundials_sunlinsolpcg
++ PRIVATE sundials_sunlinsolpcg sundials_fnvecserial
+ OUTPUT_NAME
+ sundials_fsunlinsolpcg
+ VERSION
+--- sundials-5.8.0/src/sunlinsol/spbcgs/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/spbcgs/CMakeLists.txt 2023-02-15 20:45:34.072404650 +0100
+@@ -32,7 +32,7 @@ sundials_add_library(sundials_sunlinsols
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_SPBCGS module")
+@@ -48,7 +48,7 @@ if(BUILD_FORTRAN77_INTERFACE)
+ SOURCES
+ fsunlinsol_spbcgs.c
+ LINK_LIBRARIES
+- PRIVATE sundials_sunlinsolspbcgs
++ PRIVATE sundials_sunlinsolspbcgs sundials_fnvecserial
+ OUTPUT_NAME
+ sundials_fsunlinsolspbcgs
+ VERSION
+--- sundials-5.8.0/src/sunlinsol/spfgmr/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/spfgmr/CMakeLists.txt 2023-02-15 20:45:43.055689317 +0100
+@@ -31,7 +31,7 @@ sundials_add_library(sundials_sunlinsols
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_SPFGMR module")
+@@ -47,7 +47,7 @@ if(BUILD_FORTRAN77_INTERFACE)
+ SOURCES
+ fsunlinsol_spfgmr.c
+ LINK_LIBRARIES
+- PRIVATE sundials_sunlinsolspfgmr
++ PRIVATE sundials_sunlinsolspfgmr sundials_fnvecserial
+ OUTPUT_NAME
+ sundials_fsunlinsolspfgmr
+ VERSION
+--- sundials-5.8.0/src/sunlinsol/spgmr/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/spgmr/CMakeLists.txt 2023-02-15 20:45:52.015640776 +0100
+@@ -31,7 +31,7 @@ sundials_add_library(sundials_sunlinsols
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_SPGMR module")
+@@ -47,7 +47,7 @@ if(BUILD_FORTRAN77_INTERFACE)
+ SOURCES
+ fsunlinsol_spgmr.c
+ LINK_LIBRARIES
+- PRIVATE sundials_sunlinsolspgmr
++ PRIVATE sundials_sunlinsolspgmr sundials_fnvecserial
+ OUTPUT_NAME
+ sundials_fsunlinsolspgmr
+ VERSION
+--- sundials-5.8.0/src/sunlinsol/sptfqmr/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunlinsol/sptfqmr/CMakeLists.txt 2023-02-15 20:46:10.768872515 +0100
+@@ -31,7 +31,7 @@ sundials_add_library(sundials_sunlinsols
+ VERSION
+ ${sunlinsollib_VERSION}
+ SOVERSION
+- ${sunlinsollib_VERSION}
++ ${sunlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNLINSOL_SPTFQMR module")
+@@ -47,7 +47,7 @@ if(BUILD_FORTRAN77_INTERFACE)
+ SOURCES
+ fsunlinsol_sptfqmr.c
+ LINK_LIBRARIES
+- PRIVATE sundials_sunlinsolsptfqmr
++ PRIVATE sundials_sunlinsolsptfqmr sundials_fnvecserial
+ OUTPUT_NAME
+ sundials_fsunlinsolsptfqmr
+ VERSION
+--- sundials-5.8.0/src/sunnonlinsol/fixedpoint/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunnonlinsol/fixedpoint/CMakeLists.txt 2023-02-15 17:09:13.246781289 +0100
+@@ -31,7 +31,7 @@ sundials_add_library(sundials_sunnonlins
+ VERSION
+ ${sunnonlinsollib_VERSION}
+ SOVERSION
+- ${sunnonlinsollib_VERSION}
++ ${sunnonlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNNONLINSOL_FIXEDPOINT module")
+@@ -51,9 +51,9 @@ if(BUILD_FORTRAN77_INTERFACE)
+ OUTPUT_NAME
+ sundials_fsunnonlinsolfixedpoint
+ VERSION
+- ${sunnonlinsol_VERSION}
++ ${sunnonlinsollib_VERSION}
+ SOVERSION
+- ${sunnonlinsol_SOVERSION}
++ ${sunnonlinsollib_SOVERSION}
+ )
+ message(STATUS "Added SUNNONLINSOL_FIXEDPOINT F77 interface")
+ endif()
+--- sundials-5.8.0/src/sunnonlinsol/newton/CMakeLists.txt.orig 2021-09-30 17:44:39.000000000 +0200
++++ sundials-5.8.0/src/sunnonlinsol/newton/CMakeLists.txt 2023-02-15 17:09:34.109136542 +0100
+@@ -31,7 +31,7 @@ sundials_add_library(sundials_sunnonlins
+ VERSION
+ ${sunnonlinsollib_VERSION}
+ SOVERSION
+- ${sunnonlinsollib_VERSION}
++ ${sunnonlinsollib_SOVERSION}
+ )
+
+ message(STATUS "Added SUNNONLINSOL_NEWTON module")
+@@ -51,9 +51,9 @@ if(BUILD_FORTRAN77_INTERFACE)
+ OUTPUT_NAME
+ sundials_fsunnonlinsolnewton
+ VERSION
+- ${sunnonlinsol_VERSION}
++ ${sunnonlinsollib_VERSION}
+ SOVERSION
+- ${sunnonlinsol_SOVERSION}
++ ${sunnonlinsollib_SOVERSION}
+ )
+ message(STATUS "Added SUNNONLINSOL_NEWTON F77 interface")
+ endif()
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/sundials.git/commitdiff/89ef07ed210410e08ed1fd85b3a967728041075b
More information about the pld-cvs-commit
mailing list