sys-process/glances: revbump 3.1.4.1, add missing doc dep
[gentoo.git] / sci-libs / sundials / sundials-5.0.0.ebuild
1 # Copyright 1999-2019 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=7
5
6 CMAKE_MAKEFILE_GENERATOR="emake"
7 FORTRAN_NEEDED=fortran
8 FORTRAN_STANDARD=90
9
10 inherit cmake-utils toolchain-funcs fortran-2
11
12 DESCRIPTION="Suite of nonlinear solvers"
13 HOMEPAGE="https://computation.llnl.gov/projects/sundials"
14 SRC_URI="https://computation.llnl.gov/projects/sundials/download/${P}.tar.gz"
15
16 LICENSE="BSD"
17 SLOT="0/$(ver_cut 1)"
18 KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
19 IUSE="cxx doc examples fortran hypre lapack mpi openmp sparse static-libs superlumt threads"
20 REQUIRED_USE="hypre? ( mpi )"
21
22 RDEPEND="
23         lapack? ( virtual/lapack )
24         mpi? ( virtual/mpi sci-libs/hypre:= )
25         sparse? ( sci-libs/klu:= )
26         superlumt? ( sci-libs/superlu_mt:= )
27 "
28 DEPEND="${RDEPEND}
29         virtual/pkgconfig"
30
31 PATCHES=( "${FILESDIR}"/${P}-fix-license-install-path.patch )
32
33 pkg_setup() {
34         if [[ ${MERGE_TYPE} != binary ]] && use openmp && [[ $(tc-getCC) == *gcc ]] && ! tc-has-openmp; then
35                 ewarn "OpenMP is not available in your current selected gcc"
36                 die "need openmp capable gcc"
37         fi
38 }
39
40 src_configure() {
41         mycmakeargs+=(
42                 -DBUILD_SHARED_LIBS=ON
43                 -DBUILD_STATIC_LIBS="$(usex static-libs)"
44                 -DCXX_ENABLE="$(usex cxx)"
45                 -DFCMIX_ENABLE="$(usex fortran)"
46                 -DF90_ENABLE="$(usex fortran)"
47                 -DHYPRE_ENABLE="$(usex hypre)"
48                 -DHYPRE_INCLUDE_DIR="${EPREFIX}/usr/include/hypre"
49                 -DKLU_ENABLE="$(usex sparse)"
50                 -DKLU_LIBRARY="${EPREFIX}/usr/$(get_libdir)/libklu.so"
51                 -DLAPACK_ENABLE="$(usex lapack)"
52                 -DMPI_ENABLE="$(usex mpi)"
53                 -DOPENMP_ENABLE="$(usex openmp)"
54                 -DPTHREAD_ENABLE="$(usex threads)"
55                 -DSUPERLUMT_ENABLE="$(usex superlumt)"
56                 -DSUPERLUMT_INCLUDE_DIR="${EPREFIX}/usr/include/superlu_mt"
57                 -DSUPERLUMT_LIBRARY="-lsuperlu_mt"
58                 -DEXAMPLES_ENABLE="$(usex examples)"
59                 -DEXAMPLES_INSTALL=ON
60                 -DEXAMPLES_INSTALL_PATH="/usr/share/doc/${PF}/examples"
61                 -DUSE_GENERIC_MATH=ON
62         )
63         cmake-utils_src_configure
64 }
65
66 src_install() {
67         cmake-utils_src_install
68         use doc && dodoc doc/*/*.pdf
69 }