summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Orlitzky <mjo@gentoo.org>2020-03-01 19:37:22 -0500
committerMichael Orlitzky <mjo@gentoo.org>2020-03-02 12:20:45 -0500
commitb9c6382f0a37c4ad45f754e897999559a24403aa (patch)
treeb3e272c4092dc000e8ac40fb2845f5b1fc3d4001 /sci-libs
parentsci-libs/ccolamd: new version 2.9.6. (diff)
downloadgentoo-b9c6382f0a37c4ad45f754e897999559a24403aa.tar.gz
gentoo-b9c6382f0a37c4ad45f754e897999559a24403aa.tar.bz2
gentoo-b9c6382f0a37c4ad45f754e897999559a24403aa.zip
sci-libs/cholmod: new version 3.0.13.
Update to EAPI=7 and fix the HOMEPAGE, SRC_URI, and LICENSE. This is part of a larger SuiteSparse v5.4.0 upgrade thanks to François Bissey whose sage-on-gentoo ebuilds I'm using. There's a newer release (v5.7.1) of SuiteSparse, but v5.4.0 has seen more testing. This new version also refactors the package's USE flags, because USE=minimal was being used to control the installation of several different modules that all do different things. It's much better for users to have three individual flags that control those options. Moreover, with USE=minimal, there was a conflict between the "minimal" and "metis" flags; both would try to control the --with-partition option. Finally, the "metis" USE flag was dropped in favor of the name "partition". Closes: https://bugs.gentoo.org/526910 Closes: https://bugs.gentoo.org/682838 Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/cholmod/Manifest1
-rw-r--r--sci-libs/cholmod/cholmod-3.0.13.ebuild57
-rw-r--r--sci-libs/cholmod/metadata.xml16
3 files changed, 73 insertions, 1 deletions
diff --git a/sci-libs/cholmod/Manifest b/sci-libs/cholmod/Manifest
index f76798c8d9c8..52847a34dd05 100644
--- a/sci-libs/cholmod/Manifest
+++ b/sci-libs/cholmod/Manifest
@@ -1 +1,2 @@
DIST cholmod-2.1.2.tar.bz2 656458 BLAKE2B 83a574ad7d3755428d8d732f3f60b07908b8315d73d5a3d3aaf9aac50b54590c532389dd90efc569e67639993095706eb546e72313b735e35af34a1fea398be2 SHA512 7aca97de4c60ff2d7a76a776be4c2d61243a159a51b9e147fa2480f2aaf61a5d966eb0f1cb57c0145510437f6c478fa30384b741709d0a02432b74ada3e78089
+DIST cholmod-3.0.13.tar.bz2 696002 BLAKE2B 40a065fe1a3585897b3ca554a25fa80ffc68ac70798f2f803e34a231ec4f532d113a3d00ab7ab61f5eb02503a84e1459cdb7e96cb0b0d1dc6975ed3d533104fe SHA512 c6c80d099386bac27e385a1b8ee8941cd2fb4f2dcfcf302b4b17d6477ac9ee17ad8030aae9191f92576dfaeb521e2c98ec24e867281c2405e42f95580e14f0ab
diff --git a/sci-libs/cholmod/cholmod-3.0.13.ebuild b/sci-libs/cholmod/cholmod-3.0.13.ebuild
new file mode 100644
index 000000000000..7e2b678d25bd
--- /dev/null
+++ b/sci-libs/cholmod/cholmod-3.0.13.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Sparse Cholesky factorization and update/downdate library"
+HOMEPAGE="http://faculty.cse.tamu.edu/davis/suitesparse.html"
+SRC_URI="http://202.36.178.9/sage/${P}.tar.bz2"
+
+LICENSE="LGPL-2.1+ modify? ( GPL-2+ ) matrixops? ( GPL-2+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-macos"
+IUSE="cuda doc +lapack +matrixops +modify +partition static-libs"
+
+BDEPEND="virtual/pkgconfig
+ doc? ( virtual/latex-base )"
+DEPEND="
+ >=sci-libs/amd-2.4
+ >=sci-libs/colamd-2.9
+ cuda? ( x11-drivers/nvidia-drivers dev-util/nvidia-cuda-toolkit )
+ lapack? ( virtual/lapack )
+ partition? (
+ >=sci-libs/camd-2.4
+ >=sci-libs/ccolamd-2.9
+ || ( >=sci-libs/metis-5.1.0 sci-libs/parmetis ) )"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local lapack_libs=no
+ local blas_libs=no
+ if use lapack; then
+ blas_libs=$($(tc-getPKG_CONFIG) --libs blas)
+ lapack_libs=$($(tc-getPKG_CONFIG) --libs lapack)
+ fi
+
+ local cudaconfargs=( $(use_with cuda) )
+ if use cuda ; then
+ cudaconfargs+=(
+ --with-cublas-libs="-L${EPREFIX}/opt/cuda/$(get_libdir) -lcublas"
+ --with-cublas-cflags="-I${EPREFIX}/opt/cuda/include"
+ )
+ fi
+
+ econf \
+ --with-blas="${blas_libs}" \
+ --with-lapack="${lapack_libs}" \
+ $(use_with doc) \
+ $(use_enable static-libs static) \
+ $(use_with modify) \
+ $(use_with matrixops) \
+ $(use_with partition) \
+ $(use_with partition camd) \
+ $(use_with lapack supernodal) \
+ "${cudaconfargs[@]}"
+}
diff --git a/sci-libs/cholmod/metadata.xml b/sci-libs/cholmod/metadata.xml
index 79ccb35047bf..401422f1a9d6 100644
--- a/sci-libs/cholmod/metadata.xml
+++ b/sci-libs/cholmod/metadata.xml
@@ -11,6 +11,20 @@
</longdescription>
<use>
<flag name="cuda">Use nvidia cuda toolkit for speeding up computations</flag>
- <flag name="metis">Enable the Partition module to cholmod using <pkg>sci-libs/metis</pkg></flag>
+ <flag name="matrixops">
+ Support basic sparse and dense matrix operations (add, multiply,
+ scale, et cetera)
+ </flag>
+ <flag name="metis">
+ Enable the Partition module to cholmod using <pkg>sci-libs/metis</pkg>
+ </flag>
+ <flag name="modify">
+ Enable Cholesky-modification routines like update, downdate,
+ row-add, and row-delete
+ </flag>
+ <flag name="partition">
+ Enable graph partitioning and graph-partition-based orderings
+ through <pkg>sci-libs/metis</pkg> or <pkg>sci-libs/parmetis</pkg>
+ </flag>
</use>
</pkgmetadata>