1 |
1 |
# Copyright 1999-2023 Gentoo Authors
|
2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
4 |
|
EAPI=7
|
|
4 |
EAPI=8
|
5 |
5 |
|
6 |
|
inherit autotools
|
|
6 |
inherit cmake-multilib
|
7 |
7 |
|
|
8 |
Sparse_PV="7.0.0"
|
|
9 |
Sparse_P="SuiteSparse-${Sparse_PV}"
|
8 |
10 |
DESCRIPTION="Sparse LU factorization for circuit simulation"
|
9 |
11 |
HOMEPAGE="https://people.engr.tamu.edu/davis/suitesparse.html"
|
10 |
|
SRC_URI="http://202.36.178.9/sage/${P}.tar.bz2"
|
|
12 |
SRC_URI="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${Sparse_PV}.tar.gz -> ${Sparse_P}.gh.tar.gz"
|
11 |
13 |
|
12 |
14 |
LICENSE="LGPL-2.1+"
|
13 |
|
SLOT="0"
|
14 |
|
KEYWORDS="amd64 ~arm arm64 ~hppa ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
|
15 |
|
IUSE="doc"
|
16 |
|
|
17 |
|
BDEPEND="
|
18 |
|
virtual/pkgconfig
|
19 |
|
doc? ( virtual/latex-base )"
|
20 |
|
DEPEND="
|
21 |
|
>=sci-libs/amd-2.4
|
22 |
|
>=sci-libs/btf-1.2
|
23 |
|
>=sci-libs/colamd-2.9"
|
|
15 |
SLOT="0/2"
|
|
16 |
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
|
|
17 |
IUSE="doc test"
|
|
18 |
RESTRICT="!test? ( test )"
|
|
19 |
|
|
20 |
DEPEND=">=sci-libs/suitesparseconfig-7.0.0
|
|
21 |
>=sci-libs/amd-3.0.3
|
|
22 |
>=sci-libs/btf-2.0.3
|
|
23 |
>=sci-libs/colamd-3.0.3
|
|
24 |
>=sci-libs/cholmod-4.0.3"
|
24 |
25 |
RDEPEND="${DEPEND}"
|
|
26 |
BDEPEND="doc? ( virtual/latex-base )"
|
25 |
27 |
|
26 |
|
PATCHES=( "${FILESDIR}"/${PN}-1.3.9-dash_doc.patch )
|
|
28 |
S="${WORKDIR}/${Sparse_P}/${PN^^}"
|
27 |
29 |
|
28 |
|
src_prepare() {
|
29 |
|
default
|
30 |
|
|
31 |
|
eautoreconf
|
|
30 |
multilib_src_configure() {
|
|
31 |
local mycmakeargs=(
|
|
32 |
-DNSTATIC=ON
|
|
33 |
-DDEMO=$(usex test)
|
|
34 |
)
|
|
35 |
cmake_src_configure
|
32 |
36 |
}
|
33 |
37 |
|
34 |
|
src_configure() {
|
35 |
|
econf \
|
36 |
|
--disable-static \
|
37 |
|
$(use_with doc)
|
|
38 |
multilib_src_test() {
|
|
39 |
# Run demo files
|
|
40 |
./klu_simple || die "failed testing"
|
|
41 |
./kludemo < "${S}"/Matrix/1c.mtx || die "failed testing"
|
|
42 |
./kludemo < "${S}"/Matrix/arrowc.mtx || die "failed testing"
|
|
43 |
./kludemo < "${S}"/Matrix/arrow.mtx || die "failed testing"
|
|
44 |
./kludemo < "${S}"/Matrix/impcol_a.mtx || die "failed testing"
|
|
45 |
./kludemo < "${S}"/Matrix/w156.mtx || die "failed testing"
|
|
46 |
./kludemo < "${S}"/Matrix/ctina.mtx || die "failed testing"
|
|
47 |
./kluldemo < "${S}"/Matrix/1c.mtx || die "failed testing"
|
|
48 |
./kluldemo < "${S}"/Matrix/arrowc.mtx || die "failed testing"
|
|
49 |
./kluldemo < "${S}"/Matrix/arrow.mtx || die "failed testing"
|
|
50 |
./kluldemo < "${S}"/Matrix/impcol_a.mtx || die "failed testing"
|
|
51 |
./kluldemo < "${S}"/Matrix/w156.mtx || die "failed testing"
|
|
52 |
./kluldemo < "${S}"/Matrix/ctina.mtx || die "failed testing"
|
38 |
53 |
}
|
39 |
54 |
|
40 |
|
src_install() {
|
41 |
|
default
|
42 |
|
|
43 |
|
# remove .la file
|
44 |
|
find "${ED}" -name '*.la' -delete || die
|
|
55 |
multilib_src_install() {
|
|
56 |
if use doc; then
|
|
57 |
pushd "${S}/Doc"
|
|
58 |
emake clean
|
|
59 |
rm -rf *.pdf
|
|
60 |
emake
|
|
61 |
popd
|
|
62 |
DOCS="${S}/Doc/*.pdf"
|
|
63 |
fi
|
|
64 |
cmake_src_install
|
45 |
65 |
}
|