sundials: update to 7.2.0

This commit is contained in:
مهدي شينون (Mehdi Chinoune)
2024-06-07 20:59:55 +01:00
parent 17d6295001
commit b41e2c8f39
3 changed files with 45 additions and 19 deletions

View File

@@ -0,0 +1,22 @@
--- a/examples/ida/F2003_openmp/CMakeLists.txt
+++ b/examples/ida/F2003_openmp/CMakeLists.txt
@@ -48,7 +48,7 @@
# libraries to link against
target_link_libraries(
${example} sundials_ida sundials_fida_mod sundials_nvecopenmp
- sundials_fnvecopenmp_mod ${SUNDIALS_LIBS})
+ sundials_fnvecopenmp_mod ${SUNDIALS_LIBS} OpenMP::OpenMP_Fortran)
# Install fortran modules to a unique directory to avoid naming collisions
set(CMAKE_Fortran_MODULE_DIRECTORY
--- a/examples/ida/F2003_openmp/idaHeat2D_kry_omp_f2003.f90
+++ b/examples/ida/F2003_openmp/idaHeat2D_kry_omp_f2003.f90
@@ -40,7 +40,7 @@
!======= Inclusions ===========
use, intrinsic :: iso_c_binding
- use, intrinsic :: omp_lib
+ use omp_lib
use fsundials_core_mod
!======= Declarations =========

View File

@@ -1,6 +1,5 @@
diff -Naur sundials-6.4.1.orig/cmake/tpl/FindPETSC.cmake sundials-6.4.1/cmake/tpl/FindPETSC.cmake
--- sundials-6.4.1.orig/cmake/tpl/FindPETSC.cmake 2022-10-31 17:34:43.000000000 -0500
+++ sundials-6.4.1/cmake/tpl/FindPETSC.cmake 2022-11-06 11:53:08.547602900 -0600
--- a/cmake/tpl/FindPETSC.cmake
+++ b/cmake/tpl/FindPETSC.cmake
@@ -34,7 +34,8 @@
set(_pkg_version_spec ">=${PETSC_FIND_VERSION}")
endif()
@@ -11,9 +10,10 @@ diff -Naur sundials-6.4.1.orig/cmake/tpl/FindPETSC.cmake sundials-6.4.1/cmake/tp
unset(_pkg_version_spec)
# Find the PETSC libraries
@@ -112,4 +113,4 @@
)
@@ -121,5 +121,5 @@
INTERFACE_LINK_LIBRARIES "${PETSC_LIBRARIES}")
endif()
-mark_as_advanced(PETSC_INCLUDE_DIRS PETSC_LIBRARIES PETSC_VERSION_MAJOR PETSC_VERSION_MINOR PETSC_VERSION_PATCH PETSC_VERSION)
+mark_as_advanced(PETSC_PKG_CONFIG_MODULE PETSC_INCLUDE_DIRS PETSC_LIBRARIES PETSC_VERSION_MAJOR PETSC_VERSION_MINOR PETSC_VERSION_PATCH PETSC_VERSION)
-mark_as_advanced(PETSC_INCLUDE_DIRS PETSC_LIBRARIES PETSC_VERSION_MAJOR
+mark_as_advanced(PETSC_PKG_CONFIG_MODULE PETSC_INCLUDE_DIRS PETSC_LIBRARIES PETSC_VERSION_MAJOR
PETSC_VERSION_MINOR PETSC_VERSION_PATCH PETSC_VERSION)

View File

@@ -13,7 +13,7 @@ fi
_realname=sundials
pkgbase="mingw-w64-${_realname}"
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=7.1.1
pkgver=7.2.0
pkgrel=1
pkgdesc="SUite of Nonlinear and DIfferential/ALgebraic equation Solvers (mingw-w64)"
arch=('any')
@@ -31,17 +31,21 @@ depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
"${MINGW_PACKAGE_PREFIX}-openblas"
"${MINGW_PACKAGE_PREFIX}-omp"
"${MINGW_PACKAGE_PREFIX}-suitesparse"
$([[ ${MINGW_PACKAGE_PREFIX} == *-clang-* ]] || echo "${MINGW_PACKAGE_PREFIX}-gcc-libgfortran")
$([[ "$_enable_mpi" == "yes" ]] && echo \
"${MINGW_PACKAGE_PREFIX}-petsc" \
"${MINGW_PACKAGE_PREFIX}-superlu_dist"))
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
"${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-fc"
$([[ "$_enable_mpi" == "yes" ]] && echo "${MINGW_PACKAGE_PREFIX}-msmpi"))
optdepends=("${MINGW_PACKAGE_PREFIX}-python: for running examples")
source=(https://github.com/LLNL/sundials/releases/download/v${pkgver}/${_realname}-${pkgver}.tar.gz
'0001-fix-building-openmp-example-with-flang.patch'
'0008-sundials-petsc-pkg-config-module.patch')
sha256sums=('ea7d6edfb52448ddfdc1ec48f89a721fe6c0a259c10f8ef56f60fcded87a94bb'
'd4a56ef02d87d8d17970733fe8391c12fea9465f093681a1091a24b2ad0a787a')
sha256sums=('5c6c0a66a7e27c45bfb57b27f7579463855a85fc3976fed1d5c9dd88dc1ae3ab'
'785b7a824702fcc3267cec5d3f9c418dee2940efc9513516c642fd3129e36eb5'
'46f341d50e97960fd93ee516e7ade99ca5ac87db7d5d077ae09d26da3e4f7355')
apply_patch_with_msg() {
for _patch in "$@"
@@ -55,6 +59,7 @@ prepare() {
cd "${_realname}-${pkgver}"
apply_patch_with_msg \
0001-fix-building-openmp-example-with-flang.patch \
0008-sundials-petsc-pkg-config-module.patch
}
@@ -68,10 +73,6 @@ build() {
_extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
fi
if [[ ${MINGW_PACKAGE_PREFIX} == *-clang-* ]]; then
export FFLAGS="-Qunused-arguments"
fi
if [[ "$_enable_mpi" != "yes" ]]; then
_extra_config+=("-DENABLE_MPI=OFF"
"-DENABLE_PETSC=OFF"
@@ -95,12 +96,14 @@ build() {
fi
I_MPI_ROOT="" \
CFLAGS+=" -Wno-return-type -Wno-deprecated-declarations" \
LDFLAGS+=" -Wl,--export-all-symbols" \
MSYS2_ARG_CONV_EXCL="CMAKE_INSTALL_PREFIX=;EXAMPLES_INSTALL_PATH=" \
${MINGW_PREFIX}/bin/cmake \
-D BUILD_ARKODE=ON \
-D BUILD_CVODE=ON \
-D BUILD_CVODES=ON \
-D BUILD_FORTRAN_MODULE_INTERFACE=OFF \
-D BUILD_FORTRAN_MODULE_INTERFACE=ON \
-D BUILD_IDA=ON \
-D BUILD_IDAS=ON \
-D BUILD_KINSOL=ON \
@@ -133,16 +136,17 @@ build() {
-D ENABLE_XBRAID=OFF \
-D EXAMPLES_ENABLE_C=ON \
-D EXAMPLES_ENABLE_CXX=ON \
-D EXAMPLES_ENABLE_F2003=OFF \
-D EXAMPLES_ENABLE_F2003=ON \
-D EXAMPLES_INSTALL=ON \
-D EXAMPLES_INSTALL_PATH=${MINGW_PREFIX}/share/sundials/examples \
-D LAPACK_LIBRARIES=${MINGW_PREFIX}/lib/libopenblas.dll.a \
-D SUNDIALS_BUILD_WITH_PROFILING=OFF \
-D SUNDIALS_BUILD_WITH_MONITORING=ON \
-D SUNDIALS_INDEX_SIZE=32 \
-D SUNDIALS_INDEX_SIZE=64 \
-D SUNDIALS_PRECISION=DOUBLE \
-DSUNDIALS_LAPACK_CASE=LOWER \
-DSUNDIALS_LAPACK_UNDERSCORES=ONE \
-D SUNDIALS_LAPACK_CASE=LOWER \
-D SUNDIALS_LAPACK_UNDERSCORES=ONE \
-D Fortran_INSTALL_MODDIR=include/sundials/fortran \
-B build-${MSYSTEM} \
-S ${_realname}-${pkgver}