commit: b9100a078a87b1775acee425f741dcf7a5729f01
Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 1 15:49:21 2025 +0000
Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Tue Jul 1 15:49:26 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b9100a07
sci-libs/sundials: add 7.3.0
Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org>
sci-libs/sundials/Manifest | 1 +
.../sundials-7.3.0-fix-license-install-path.patch | 16 +++
sci-libs/sundials/sundials-7.3.0.ebuild | 110 +++++++++++++++++++++
3 files changed, 127 insertions(+)
diff --git a/sci-libs/sundials/Manifest b/sci-libs/sundials/Manifest
index 2887d9a2518a..6102cf70e6d7 100644
--- a/sci-libs/sundials/Manifest
+++ b/sci-libs/sundials/Manifest
@@ -3,3 +3,4 @@ DIST sundials-6.2.0.tar.gz 82410068 BLAKE2B
c6aa9735198465bb458590ef1a90101e2462
DIST sundials-6.5.0.tar.gz 89142911 BLAKE2B
3605686f813928fe55e5aafd409c478cf782411b5d2e510121fe15cc15eae84a5d0fe7470c7c0c976fbe11e7f0fd0e9fb449ae45b4c34aa077ac1acb25255cf5
SHA512
30ad3d3f998df6a6381a14b0c8fe247a5507e386ed1b9b55afae87b976f15026d7b4e8609c3cf8423ad79e1b55bade40dc66b274dc3422e040cb12fec981d502
DIST sundials-7.0.0.tar.gz 91813927 BLAKE2B
5fab34e674473078812e9a7be43d19ac2595adf7d6f7b71f90375546578eaf42f7e45d1d6297dbedbbc454fb84f741c4e5a4e43766dfc2774ac5dadfcb3295d7
SHA512
4f818124985d6083c6c1a9d34ae2f7d8e6f9a5ca1c1c01e8d00d2b516fdd34eb634c9e601c8a0d1515f198a70d3c1f11118da99a48b4d067464312b02d8265a9
DIST sundials-7.1.1.tar.gz 93104639 BLAKE2B
0bd6197c776dffc1621d2212611eb93e69a4691765474eb005759334afbba344cd120fa9d1a5b3fe5bc8cb67cd0eeb210e730fa00aaa6e022490fd5278aa2570
SHA512
5dc1329f8baf94601133e66def9db95e3d62dc954c1f2d52612aea121600b93f188089d361ff0fc7bdf0264daee13b9b062174705dc06ceecbde2eb2121856a2
+DIST sundials-7.3.0.tar.gz 92369377 BLAKE2B
ea29e29c1421adccc09d092a889b47eb097b449e6de74c5412f0ae8bdb2be361b7cca3ff2c068b8e006004a9f92e08914b73f69ba20a5eba30854b42f6e7bcd1
SHA512
74a7fabde28fe0878881f748d7863e751f8dd7303a2cd26c0ae6b81f86953e93cc402da5872bcbecdc01baac960fb18f756349495993a83c06e84cacd0a56d08
diff --git
a/sci-libs/sundials/files/sundials-7.3.0-fix-license-install-path.patch
b/sci-libs/sundials/files/sundials-7.3.0-fix-license-install-path.patch
new file mode 100644
index 000000000000..18151ca02c70
--- /dev/null
+++ b/sci-libs/sundials/files/sundials-7.3.0-fix-license-install-path.patch
@@ -0,0 +1,16 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0b76779..dfa0e29 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -259,9 +259,9 @@ endif()
+
+ # install license and notice files
+ install(FILES "${PROJECT_SOURCE_DIR}/LICENSE"
+- DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials")
++ DESTINATION "${CMAKE_INSTALL_DOCDIR}")
+ install(FILES "${PROJECT_SOURCE_DIR}/NOTICE"
+- DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials")
++ DESTINATION "${CMAKE_INSTALL_DOCDIR}")
+
+ # create package version file
+ include(CMakePackageConfigHelpers)
diff --git a/sci-libs/sundials/sundials-7.3.0.ebuild
b/sci-libs/sundials/sundials-7.3.0.ebuild
new file mode 100644
index 000000000000..4777204f2779
--- /dev/null
+++ b/sci-libs/sundials/sundials-7.3.0.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+FORTRAN_NEEDED=fortran
+FORTRAN_STANDARD="77 90 2003"
+# if FFLAGS and FCFLAGS are set then should be equal
+
+inherit cmake flag-o-matic fortran-2 toolchain-funcs
+
+DESCRIPTION="Suite of nonlinear solvers"
+HOMEPAGE="https://computing.llnl.gov/projects/sundials"
+SRC_URI="https://github.com/LLNL/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc fortran hypre +int64 lapack mpi openmp sparse +static-libs superlumt
threads"
+REQUIRED_USE="
+ fortran? ( static-libs )
+ hypre? ( mpi )
+"
+
+BDEPEND="virtual/pkgconfig"
+RDEPEND="
+ lapack? ( virtual/lapack )
+ mpi? (
+ sci-libs/hypre:=[fortran?,mpi?]
+ virtual/mpi[fortran?]
+ )
+ sparse? ( sci-libs/klu )
+ superlumt? ( sci-libs/superlu_mt:=[int64=] )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-license-install-path.patch
+)
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+
+ use fortran && fortran-2_pkg_setup
+}
+
+src_prepare() {
+ # bug #707240
+ append-cflags -fcommon
+ use threads && append-ldflags -pthread
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ # undefined reference to `psolve'
+ # undefined reference to `psetup'
+ # https://bugs.gentoo.org/862933
+ # https://github.com/LLNL/sundials/issues/97
+ filter-lto
+
+ mycmakeargs+=(
+ -DBUILD_FORTRAN_MODULE_INTERFACE=$(usex fortran)
+ -DBUILD_SHARED_LIBS=ON
+ -DBUILD_STATIC_LIBS=$(usex static-libs)
+ -DENABLE_HYPRE=$(usex hypre)
+ -DENABLE_KLU=$(usex sparse)
+ -DENABLE_LAPACK=$(usex lapack)
+ -DENABLE_MPI=$(usex mpi)
+ -DENABLE_OPENMP=$(usex openmp)
+ -DENABLE_PTHREAD=$(usex threads)
+ -DENABLE_SUPERLUMT=$(usex superlumt)
+ -DEXAMPLES_INSTALL=ON
+ -DEXAMPLES_INSTALL_PATH="/usr/share/doc/${PF}/examples"
+ -DSUNDIALS_INDEX_SIZE="$(usex int64 64 32)"
+ -DSUPERLUMT_INCLUDE_DIR="${EPREFIX}/usr/include/superlu_mt"
+ -DSUPERLUMT_LIBRARY="-lsuperlu_mt"
+ )
+
+ if use fortran; then
+ mycmakeargs+=(
+
-DFortran_INSTALL_MODDIR="${EPREFIX}/usr/$(get_libdir)/fortran"
+ )
+ fi
+
+ if use hypre; then
+ mycmakeargs+=(
+ -DHYPRE_INCLUDE_DIR="${EPREFIX}/usr/include/hypre"
+
-DHYPRE_LIBRARY="${EPREFIX}/usr/$(get_libdir)/libHYPRE.so"
+ )
+ fi
+
+ if use sparse; then
+ mycmakeargs+=(
+ -DKLU_LIBRARY="${EPREFIX}/usr/$(get_libdir)/libklu.so"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ use doc && dodoc doc/*/*.pdf
+}