sci-libs/sundials: 5.1.0 version bump
authorSergey Torokhov <torokhov-s-a@yandex.ru>
Fri, 28 Feb 2020 22:42:30 +0000 (01:42 +0300)
committerJoonas Niilola <juippis@gentoo.org>
Thu, 5 Mar 2020 11:54:29 +0000 (13:54 +0200)
The following changes within ebuild were made:

- FORTRAN_STANDARD=90 changed to FORTRAN_STANDARD="77 90"
(with comment that "FFLAGS and FCFLAGS if set should e equal",
otherwhise the cmake configurations error takes place);
- sorted inherit items;
- cmake-utils eclass replaced by cmake eclass;
- assignment of KLU_LIBRARY cmake variable moved to use condition expression.

Signed-off-by: Sergey Torokhov <torokhov-s-a@yandex.ru>
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
sci-libs/sundials/Manifest
sci-libs/sundials/files/sundials-5.1.0-fix-license-install-path.patch [new file with mode: 0644]
sci-libs/sundials/sundials-5.1.0.ebuild [new file with mode: 0644]

index b98d5eaf31f4f0715ef0e8f1c1158def2b9e9356..7e84ebcb147d09b9ca240d0b891213d555902b7e 100644 (file)
@@ -2,3 +2,4 @@ DIST sundials-3.2.1.tar.gz 14958699 BLAKE2B ecc4b454ec589e9177acc9375e1db370ad62
 DIST sundials-4.0.2.tar.gz 17183377 BLAKE2B e322a978186f41d84a936faa55962ef6794bf99d6c6a108bfa2bd5615f27f32f7ab6ca4989802fa052d3132b53dca3069b7e4ec9941f95efb92de7bf0792dd88 SHA512 6d0a6fc49c695e70593da71892f0906585dee9c94899bb6b8c9a56c85f345809565166a62544647fdac411d22e37276b9b1bb78ba9be46eaeb28dcd3f6162ef5
 DIST sundials-4.1.0.tar.gz 17221960 BLAKE2B 598c7adc9e37fcfb1f44a3235f58af489ad907d053cb67ee0d3b076076621958374eb847e48318ddf7ced85a7601c5330ac640c7abe8723aaee7d650e3298b8d SHA512 1922dca3f0b8869098670aede802e48abec39607c96304e4efd9b03d195b16920175846fce10641aeebc48c216bda73c8691139dce57ffa7731a6bc8194b81b0
 DIST sundials-5.0.0.tar.gz 18820465 BLAKE2B 77bc7bd489b52ff316f3e889aad4ec27830c42650591270443d45a0aa958d06663e93931a8933ca2d228619263219be4d7441cb473eaaedeab958ae47418a44e SHA512 4962adabcde19207b5044d1e63758d58b5d3cfeefcd0eae65ddfe5499931bf19fa98bafbd4742045cc255f6b4a45653f41df7a7739f86d6eb47c79c9312b4471
+DIST sundials-5.1.0.tar.gz 18496945 BLAKE2B bfe2c88bd1a43c6e0b50e30a4498d23da9e495b4a27e67ff309a032f892cfd8ce54010f567f26b1ecd40a2e21e9364f0b75d0b5dde2771c9e35ad4912e7abf64 SHA512 ad2fef1197fe5680651b63a1da8fab0087416c943f9142e6d0ac8388113fb7e33a7297847f550585d7e8fed1d33111ab85235b3a2f94ac81004f5f3eb584c021
diff --git a/sci-libs/sundials/files/sundials-5.1.0-fix-license-install-path.patch b/sci-libs/sundials/files/sundials-5.1.0-fix-license-install-path.patch
new file mode 100644 (file)
index 0000000..48b0196
--- /dev/null
@@ -0,0 +1,16 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d5436bf..76b27c5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1146,9 +1146,9 @@ endif()
+ # install license and notice files
+ install(
+   FILES ${PROJECT_SOURCE_DIR}/LICENSE
+-  DESTINATION include/sundials
++  DESTINATION share/doc/sundials-5.1.0
+   )
+ install(
+   FILES ${PROJECT_SOURCE_DIR}/NOTICE
+-  DESTINATION include/sundials
++  DESTINATION share/doc/sundials-5.1.0
+   )
diff --git a/sci-libs/sundials/sundials-5.1.0.ebuild b/sci-libs/sundials/sundials-5.1.0.ebuild
new file mode 100644 (file)
index 0000000..c6bc684
--- /dev/null
@@ -0,0 +1,70 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+FORTRAN_NEEDED=fortran
+FORTRAN_STANDARD="77 90"
+# if FFLAGS and FCFLAGS are set then should be equal
+
+inherit cmake fortran-2 toolchain-funcs
+
+DESCRIPTION="Suite of nonlinear solvers"
+HOMEPAGE="https://computation.llnl.gov/projects/sundials"
+SRC_URI="https://computation.llnl.gov/projects/sundials/download/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/$(ver_cut 1)"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="cxx doc examples fortran hypre lapack mpi openmp sparse static-libs superlumt threads"
+REQUIRED_USE="hypre? ( mpi )"
+
+BDEPEND="virtual/pkgconfig"
+RDEPEND="
+       lapack? ( virtual/lapack )
+       mpi? ( virtual/mpi sci-libs/hypre:= )
+       sparse? ( sci-libs/klu )
+       superlumt? ( sci-libs/superlu_mt:= )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/${P}-fix-license-install-path.patch )
+
+pkg_setup() {
+       if [[ ${MERGE_TYPE} != binary ]] && use openmp && [[ $(tc-getCC) == *gcc ]] && ! tc-has-openmp; then
+               ewarn "OpenMP is not available in your current selected gcc"
+               die "need openmp capable gcc"
+       fi
+}
+
+src_configure() {
+       mycmakeargs+=(
+               -DBUILD_SHARED_LIBS=ON
+               -DBUILD_STATIC_LIBS="$(usex static-libs)"
+               -DCXX_ENABLE="$(usex cxx)"
+               -DFCMIX_ENABLE="$(usex fortran)"
+               -DF90_ENABLE="$(usex fortran)"
+               -DHYPRE_ENABLE="$(usex hypre)"
+               -DHYPRE_INCLUDE_DIR="${EPREFIX}/usr/include/hypre"
+               -DKLU_ENABLE="$(usex sparse)"
+               -DLAPACK_ENABLE="$(usex lapack)"
+               -DMPI_ENABLE="$(usex mpi)"
+               -DOPENMP_ENABLE="$(usex openmp)"
+               -DPTHREAD_ENABLE="$(usex threads)"
+               -DSUPERLUMT_ENABLE="$(usex superlumt)"
+               -DSUPERLUMT_INCLUDE_DIR="${EPREFIX}/usr/include/superlu_mt"
+               -DSUPERLUMT_LIBRARY="-lsuperlu_mt"
+               -DEXAMPLES_ENABLE="$(usex examples)"
+               -DEXAMPLES_INSTALL=ON
+               -DEXAMPLES_INSTALL_PATH="/usr/share/doc/${PF}/examples"
+               -DUSE_GENERIC_MATH=ON
+       )
+       use sparse && mycmakeargs+=( -DKLU_LIBRARY="${EPREFIX}/usr/$(get_libdir)/libklu.so" )
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       use doc && dodoc doc/*/*.pdf
+}