Gentoo Archives: gentoo-commits

From: Michael Orlitzky <mjo@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/cholmod/
Date: Mon, 02 Mar 2020 17:21:38
Message-Id: 1583169645.b9c6382f0a37c4ad45f754e897999559a24403aa.mjo@gentoo
1 commit: b9c6382f0a37c4ad45f754e897999559a24403aa
2 Author: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
3 AuthorDate: Mon Mar 2 00:37:22 2020 +0000
4 Commit: Michael Orlitzky <mjo <AT> gentoo <DOT> org>
5 CommitDate: Mon Mar 2 17:20:45 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b9c6382f
7
8 sci-libs/cholmod: new version 3.0.13.
9
10 Update to EAPI=7 and fix the HOMEPAGE, SRC_URI, and LICENSE. This is
11 part of a larger SuiteSparse v5.4.0 upgrade thanks to François Bissey
12 whose sage-on-gentoo ebuilds I'm using. There's a newer release
13 (v5.7.1) of SuiteSparse, but v5.4.0 has seen more testing.
14
15 This new version also refactors the package's USE flags, because
16 USE=minimal was being used to control the installation of several
17 different modules that all do different things. It's much better for
18 users to have three individual flags that control those options.
19 Moreover, with USE=minimal, there was a conflict between the "minimal"
20 and "metis" flags; both would try to control the --with-partition
21 option. Finally, the "metis" USE flag was dropped in favor of the
22 name "partition".
23
24 Closes: https://bugs.gentoo.org/526910
25 Closes: https://bugs.gentoo.org/682838
26 Package-Manager: Portage-2.3.84, Repoman-2.3.20
27 Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org>
28
29 sci-libs/cholmod/Manifest | 1 +
30 sci-libs/cholmod/cholmod-3.0.13.ebuild | 57 ++++++++++++++++++++++++++++++++++
31 sci-libs/cholmod/metadata.xml | 16 +++++++++-
32 3 files changed, 73 insertions(+), 1 deletion(-)
33
34 diff --git a/sci-libs/cholmod/Manifest b/sci-libs/cholmod/Manifest
35 index f76798c8d9c..52847a34dd0 100644
36 --- a/sci-libs/cholmod/Manifest
37 +++ b/sci-libs/cholmod/Manifest
38 @@ -1 +1,2 @@
39 DIST cholmod-2.1.2.tar.bz2 656458 BLAKE2B 83a574ad7d3755428d8d732f3f60b07908b8315d73d5a3d3aaf9aac50b54590c532389dd90efc569e67639993095706eb546e72313b735e35af34a1fea398be2 SHA512 7aca97de4c60ff2d7a76a776be4c2d61243a159a51b9e147fa2480f2aaf61a5d966eb0f1cb57c0145510437f6c478fa30384b741709d0a02432b74ada3e78089
40 +DIST cholmod-3.0.13.tar.bz2 696002 BLAKE2B 40a065fe1a3585897b3ca554a25fa80ffc68ac70798f2f803e34a231ec4f532d113a3d00ab7ab61f5eb02503a84e1459cdb7e96cb0b0d1dc6975ed3d533104fe SHA512 c6c80d099386bac27e385a1b8ee8941cd2fb4f2dcfcf302b4b17d6477ac9ee17ad8030aae9191f92576dfaeb521e2c98ec24e867281c2405e42f95580e14f0ab
41
42 diff --git a/sci-libs/cholmod/cholmod-3.0.13.ebuild b/sci-libs/cholmod/cholmod-3.0.13.ebuild
43 new file mode 100644
44 index 00000000000..7e2b678d25b
45 --- /dev/null
46 +++ b/sci-libs/cholmod/cholmod-3.0.13.ebuild
47 @@ -0,0 +1,57 @@
48 +# Copyright 1999-2020 Gentoo Authors
49 +# Distributed under the terms of the GNU General Public License v2
50 +
51 +EAPI=7
52 +
53 +inherit toolchain-funcs
54 +
55 +DESCRIPTION="Sparse Cholesky factorization and update/downdate library"
56 +HOMEPAGE="http://faculty.cse.tamu.edu/davis/suitesparse.html"
57 +SRC_URI="http://202.36.178.9/sage/${P}.tar.bz2"
58 +
59 +LICENSE="LGPL-2.1+ modify? ( GPL-2+ ) matrixops? ( GPL-2+ )"
60 +SLOT="0"
61 +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-macos"
62 +IUSE="cuda doc +lapack +matrixops +modify +partition static-libs"
63 +
64 +BDEPEND="virtual/pkgconfig
65 + doc? ( virtual/latex-base )"
66 +DEPEND="
67 + >=sci-libs/amd-2.4
68 + >=sci-libs/colamd-2.9
69 + cuda? ( x11-drivers/nvidia-drivers dev-util/nvidia-cuda-toolkit )
70 + lapack? ( virtual/lapack )
71 + partition? (
72 + >=sci-libs/camd-2.4
73 + >=sci-libs/ccolamd-2.9
74 + || ( >=sci-libs/metis-5.1.0 sci-libs/parmetis ) )"
75 +RDEPEND="${DEPEND}"
76 +
77 +src_configure() {
78 + local lapack_libs=no
79 + local blas_libs=no
80 + if use lapack; then
81 + blas_libs=$($(tc-getPKG_CONFIG) --libs blas)
82 + lapack_libs=$($(tc-getPKG_CONFIG) --libs lapack)
83 + fi
84 +
85 + local cudaconfargs=( $(use_with cuda) )
86 + if use cuda ; then
87 + cudaconfargs+=(
88 + --with-cublas-libs="-L${EPREFIX}/opt/cuda/$(get_libdir) -lcublas"
89 + --with-cublas-cflags="-I${EPREFIX}/opt/cuda/include"
90 + )
91 + fi
92 +
93 + econf \
94 + --with-blas="${blas_libs}" \
95 + --with-lapack="${lapack_libs}" \
96 + $(use_with doc) \
97 + $(use_enable static-libs static) \
98 + $(use_with modify) \
99 + $(use_with matrixops) \
100 + $(use_with partition) \
101 + $(use_with partition camd) \
102 + $(use_with lapack supernodal) \
103 + "${cudaconfargs[@]}"
104 +}
105
106 diff --git a/sci-libs/cholmod/metadata.xml b/sci-libs/cholmod/metadata.xml
107 index 79ccb35047b..401422f1a9d 100644
108 --- a/sci-libs/cholmod/metadata.xml
109 +++ b/sci-libs/cholmod/metadata.xml
110 @@ -11,6 +11,20 @@
111 </longdescription>
112 <use>
113 <flag name="cuda">Use nvidia cuda toolkit for speeding up computations</flag>
114 - <flag name="metis">Enable the Partition module to cholmod using <pkg>sci-libs/metis</pkg></flag>
115 + <flag name="matrixops">
116 + Support basic sparse and dense matrix operations (add, multiply,
117 + scale, et cetera)
118 + </flag>
119 + <flag name="metis">
120 + Enable the Partition module to cholmod using <pkg>sci-libs/metis</pkg>
121 + </flag>
122 + <flag name="modify">
123 + Enable Cholesky-modification routines like update, downdate,
124 + row-add, and row-delete
125 + </flag>
126 + <flag name="partition">
127 + Enable graph partitioning and graph-partition-based orderings
128 + through <pkg>sci-libs/metis</pkg> or <pkg>sci-libs/parmetis</pkg>
129 + </flag>
130 </use>
131 </pkgmetadata>