summaryrefslogtreecommitdiff
path: root/sci-libs/taucs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sci-libs/taucs
reinit the tree, so we can have metadata
Diffstat (limited to 'sci-libs/taucs')
-rw-r--r--sci-libs/taucs/Manifest6
-rw-r--r--sci-libs/taucs/files/taucs-2.2-no-test-cilk.patch20
-rw-r--r--sci-libs/taucs/metadata.xml32
-rw-r--r--sci-libs/taucs/taucs-2.2.ebuild93
4 files changed, 151 insertions, 0 deletions
diff --git a/sci-libs/taucs/Manifest b/sci-libs/taucs/Manifest
new file mode 100644
index 000000000000..a8e0b7044b8b
--- /dev/null
+++ b/sci-libs/taucs/Manifest
@@ -0,0 +1,6 @@
+AUX taucs-2.2-no-test-cilk.patch 816 SHA256 7803d2d35b4a4648c0b6856ada62175551c6db08fa3e7801565f887994cc6211 SHA512 04b580315d600eb68d908e10aaf5c600e03d7ec51437cf814dad6eed1eecd09e7b9c1d770e8c9c13e6ec268202c3335805dc32a68b9e5164cf038cd31acbcc95 WHIRLPOOL 5461d2b6e6dd39435541c8dfb2db633b9ba2d0301ce6626a203a02bb4a20dd606d8144548252627d5b87d1e60c34f56afd689dc8ed5f9ee66ba90f62ef82eabf
+DIST taucs-2.2.tgz 1573863 SHA256 fc13dae767db5e9035b1ce63036a16d3a260aad784f461e073f1150a078a77e4 SHA512 d8652de2da343dfd19c4278ac99313bcb577d976decdd3bd3875f0c9576832605b787feaef916eb4e82f22907c8bd029125c2ae56c827639e4d535ad62f20fcf WHIRLPOOL 6c789d98e0919a0e9fb4e7f002e16c8af8006ede9d25fc4a8416c5f7dd3f4bfcce7159edac6febba975d286c87d5564e551df9aa495ce253f450631210c499ab
+EBUILD taucs-2.2.ebuild 2351 SHA256 a2e15451652f4a20d828c403df6de1275a7200dd90ebb047aea9b55b74581792 SHA512 eb276dd7eded2f3b4df30cfe8734ebb7f75013d6e759ec7a299890739a2dafdca98e82ee74b32f873c57540988ad55acb8a733e4dfc24d12d05e04b15089301b WHIRLPOOL cb868841270daf805f00809c8dd6bd273d58fd45a1f7b6ac32bd52b56bce0ef897d86660d0c0d4888cdd598e03fb4cd9e8a5998fd05346415cdc3af8286757a0
+MISC ChangeLog 2454 SHA256 b3bf9ec52d12c431abbd3579f3de5c795f3102a95255c31042f1c0df123a6ca2 SHA512 2db76e976bee2bbd94460049a1e67b1ee977f2a46e723391d99af045d1eda281d11c8f0f49e8fc9623b55581101e901d8ccc65b9c914e54ecd64d572f7f5374c WHIRLPOOL 1738df7c3eee0ba1d7d656759dff0296b462369926ecab57296b44246c85966394d5059be90cf7d3f4dca00db976168eb3a571841441e4df8ddeb5581089f91d
+MISC ChangeLog-2015 1720 SHA256 2ede54bcbf0a691bf5a492b040a48e12e525d4e8d7f38e982dd01137d3cad7da SHA512 2412a607adb11a9f278b3777a7ae081a75c11092e8cba108aafb1e71ec8501a570b06cb9f96cad4a6cbea47aa7634a9b09c733875d4f64db40ac2176d4a7966c WHIRLPOOL 1be9129d57aa40bab3d3516bb655d4ef96abf3b27942ac7737b631c92e1579b02cd51bdb8cbf05367f3031bbb9a7f736b605b464b827b42f1a30b56f3dddd6d5
+MISC metadata.xml 1175 SHA256 231a382f04da00ce658ae3703480be7a42713d33cb3d6493701906cd8c65c01f SHA512 8f768378475ce4364a51fbef44315a2c34cedf4db9aae4cbbebc5e487eb193693320ae56e3464b7a14f38adec41ef5e06d940890a5b55c1ef541acaf95b4e693 WHIRLPOOL 52ae0c9262fb05cb7002bde8a3f51557e4877766834fd1051e3a71f7fe3c0064ec2fb73271e8105b9c3c9a663d2dd42c7d192b9624f034287e9f2ff1e42e1550
diff --git a/sci-libs/taucs/files/taucs-2.2-no-test-cilk.patch b/sci-libs/taucs/files/taucs-2.2-no-test-cilk.patch
new file mode 100644
index 000000000000..68ecc3bf94b6
--- /dev/null
+++ b/sci-libs/taucs/files/taucs-2.2-no-test-cilk.patch
@@ -0,0 +1,20 @@
+--- testscript.orig 2012-07-06 19:42:51.000000000 +0100
++++ testscript 2012-07-06 19:43:17.000000000 +0100
+@@ -12,17 +12,6 @@
+ ulimit -s >> testscript.log
+ echo '==============' >> testscript.log
+ echo =============== >> testscript.log
+-echo = test_cilk_snmf = >> testscript.log
+-. ./configure in=progs/test_cilk_snmf.c $*
+-echo last conf is $TAUCS_LASTCONF >> testscript.log
+-make -f build/${TAUCS_LASTCONF}/makefile
+-if bin/${TAUCS_LASTCONF}/test_cilk_snmf >> testscript.log ; then
+-echo = TEST PASSED test_cilk_snmf >> testscript.log
+-else
+-echo = TEST FAILED test_cilk_snmf >> testscript.log
+-fi
+-echo =============== >> testscript.log
+-echo =============== >> testscript.log
+ echo = test_complex = >> testscript.log
+ . ./configure in=progs/test_complex.c $*
+ echo last conf is $TAUCS_LASTCONF >> testscript.log
diff --git a/sci-libs/taucs/metadata.xml b/sci-libs/taucs/metadata.xml
new file mode 100644
index 000000000000..b1b1d0e9c3fd
--- /dev/null
+++ b/sci-libs/taucs/metadata.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <longdescription lang="en">
+ TAUCS is a C library of sparse linear solvers.
+ The current version of the library (1.0) includes the following
+ functionality:
+
+ * Multifrontal Supernodal Cholesky Factorization.
+ * Left-Looking Supernodal Cholesky Factorization.
+ * Drop-Tolerance Incomplete-Cholesky Factorization.
+ * Out-of-Core, Left-Looking Supernodal Sparse Cholesky Factorization.
+ * Out-of-Core Sparse LU with Partial Pivoting Factor and Solve.
+ * Ordering Codes and Interfaces to Existing Ordering Codes.
+ * Multilevel-Support-Graph Preconditioners.
+ * Matrix Operations.
+ * Matrix Input/Output.
+ * Matrix Generators.
+ * Iterative Solvers.
+ * Vaidya's Preconditioners.
+ * Recursive Vaidya's Preconditioners.
+ * Multilevel-Support-Graph Preconditioners.
+ * Utility Routines
+</longdescription>
+ <use>
+ <flag name="cilk">Enable multithreading using <pkg>dev-lang/cilk</pkg></flag>
+ </use>
+</pkgmetadata>
diff --git a/sci-libs/taucs/taucs-2.2.ebuild b/sci-libs/taucs/taucs-2.2.ebuild
new file mode 100644
index 000000000000..c3da7a074eb5
--- /dev/null
+++ b/sci-libs/taucs/taucs-2.2.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit eutils fortran-2 toolchain-funcs
+
+DESCRIPTION="C library of sparse linear solvers"
+HOMEPAGE="http://www.tau.ac.il/~stoledo/taucs/"
+SRC_URI="http://www.tau.ac.il/~stoledo/${PN}/${PV}/${PN}.tgz -> ${P}.tgz"
+
+SLOT="0"
+LICENSE="LGPL-2.1"
+IUSE="cilk doc static-libs"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ virtual/blas
+ virtual/lapack
+ || ( sci-libs/metis sci-libs/parmetis )
+ cilk? ( dev-lang/cilk )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}"
+
+src_prepare() {
+ # test with cilk has memory leaks
+ epatch "${FILESDIR}"/${P}-no-test-cilk.patch
+}
+
+src_configure() {
+ cat > config/linux_shared.mk <<-EOF
+ FC=$(tc-getFC)
+ CC=$(tc-getCC)
+ LD=$(tc-getFC)
+ CFLAGS=${CFLAGS} -fPIC
+ FFLAGS=${FFLAGS} -fPIC
+ LDFLAGS=${LDFLAGS} -fPIC
+ LIBBLAS=$($(tc-getPKG_CONFIG) --libs blas)
+ LIBLAPACK=$($(tc-getPKG_CONFIG) --libs lapack)
+ LIBF77=
+ EOF
+
+ echo "LIBMETIS=$($(tc-getPKG_CONFIG) --libs metis)" >> config/linux_shared.mk
+ # no cat <<EOF because -o has a trailing space
+ if use cilk; then
+ echo "CILKC=cilkc" >> config/linux_shared.mk
+ echo "CILKFLAGS=-O2 -I${EPREFIX}/usr/include/cilk -fPIC" >> config/linux_shared.mk
+ echo "CILKOUTFLG=-o " >> config/linux_shared.mk
+ fi
+ sed -e 's/ -fPIC//g' \
+ config/linux_shared.mk \
+ > config/linux_static.mk || die
+}
+
+src_compile() {
+ # not autotools configure
+ if use static-libs; then
+ ./configure variant=_static || die
+ emake
+ fi
+ ./configure variant=_shared || die
+ emake
+
+ cd lib/linux_shared
+ $(tc-getFC) ${LDFLAGS} -shared -Wl,-soname=libtaucs.so.1 \
+ -Wl,--whole-archive libtaucs.a -Wl,--no-whole-archive \
+ $($(tc-getPKG_CONFIG) --libs blas lapack metis) \
+ -o libtaucs.so.1.0.0 \
+ || die "shared lib linking failed"
+}
+
+src_test() {
+ LD_LIBRARY_PATH=lib/linux_shared \
+ ./testscript variant=_shared || die "compile test failed"
+ if grep -q FAILED testscript.log; then
+ eerror "Test failed. See ${S}/testscript.log"
+ die "test failed"
+ fi
+}
+
+src_install() {
+ use static-libs && dolib.a lib/linux_static/libtaucs.a
+ ln -s libtaucs.so.1.0.0 lib/linux_shared/libtaucs.so.1
+ ln -s libtaucs.so.1 lib/linux_shared/libtaucs.so
+ dolib.so lib/linux_shared/libtaucs.so*
+
+ insinto /usr/include
+ doins build/*/*.h src/*.h
+
+ use doc && dodoc doc/*.pdf
+}