commit:     011badaae9549dd3a7174533f47fdad4ee1bd38a
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Fri Feb 28 17:53:05 2020 +0000
Commit:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
CommitDate: Fri Feb 28 17:53:05 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=011badaa

sci-libs/meschach: new package

Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>

 sci-libs/meschach/Manifest             |  2 +
 sci-libs/meschach/meschach-1.2b.ebuild | 73 ++++++++++++++++++++++++++++++++++
 sci-libs/meschach/metadata.xml         | 41 +++++++++++++++++++
 3 files changed, 116 insertions(+)

diff --git a/sci-libs/meschach/Manifest b/sci-libs/meschach/Manifest
new file mode 100644
index 0000000..aa641bb
--- /dev/null
+++ b/sci-libs/meschach/Manifest
@@ -0,0 +1,2 @@
+DIST meschach_1.2b-14.debian.tar.xz 40664 BLAKE2B 
753cdcdf8ecd63be14a294a6607380462df8a74c1cc84fafcfe4140cb10eaeb590dbe12883e2a973691a920b1e7f4efdf884781b49ea947b1132ff213f4a2652
 SHA512 
9793127a1785fb757b61132db1c471a2ff7949c383870f10d0b24ea2e1dafcb9d9379b61698179f91fdba4405e18e1692efcc26b759b1a5d9519e8c46206636b
+DIST meschach_1.2b.orig.tar.gz 220166 BLAKE2B 
fe38d9887977f45cc54857fe9c33f1eb50d1192ce3cae643127962cfce7657d9890964aabd3690751648a3a850fbbb39c6fb2110f8b4fcd789c7b8efefcec2c5
 SHA512 
0b8748915739b624aa44b0bf6f2c59aaf3d09f69f9455220e4baeb423c094a89cc25c03d6ced0d58bfd7c5d6626f3995fc853119ab0f7d6af151d8479c326068

diff --git a/sci-libs/meschach/meschach-1.2b.ebuild 
b/sci-libs/meschach/meschach-1.2b.ebuild
new file mode 100644
index 0000000..b7a3017
--- /dev/null
+++ b/sci-libs/meschach/meschach-1.2b.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit autotools eutils
+
+DESCRIPTION="Meschach is a C-language library of routines for performing 
matrix computations."
+HOMEPAGE="http://homepage.divms.uiowa.edu/~dstewart/meschach";
+SRC_URI="http://cdn-fastly.deb.debian.org/debian/pool/main/m/meschach/${PN}_${PV}.orig.tar.gz
 \
+http://cdn-fastly.deb.debian.org/debian/pool/main/m/meschach/${PN}_${PV}-14.debian.tar.xz";
+
+LICENSE="meschach"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="complex +double float munroll old segmem sparse test unroll"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+               ^^ ( double float )
+"
+
+PATCHES=(
+       "${WORKDIR}/debian/patches/${PN}_${PV}-13.diff"
+       "${WORKDIR}/debian/patches/${PN}_${PV}-13.configure.diff"
+)
+
+src_prepare() {
+       default
+       sed -i -- 's/CFLAGS = -O3 -fPIC/CFLAGS = @CFLAGS@ -fPIC/g' makefile.in
+       use old && sed -i -- 's/all: shared static/all: oldpart shared 
static/g' makefile.in
+       mv configure.in configure.ac
+       eautoreconf
+}
+
+src_configure() {
+       myconf=(
+               $(use_with complex)
+               $(use_with double)
+               $(use_with float)
+               $(use_with munroll)
+               $(use_with segmem)
+               $(use_with sparse)
+               $(use_with unroll)
+       )
+
+       econf "${myconf[@]}"
+}
+
+src_compile() {
+       emake DESTDIR="${D}" all
+       use test && emake alltorture
+}
+
+src_install() {
+       dolib.so libmeschach.so
+       insinto /usr/include/meschach
+       doins *.h
+       use test && dodir /usr/libexec/meschach
+       use test && exeinto /usr/libexec/meschach
+       use test && doexe iotort
+       use test && doexe itertort
+       use test && doexe macheps
+       use test && doexe maxint
+       use test && doexe memtort
+       use test && doexe mfuntort
+       use test && doexe sptort
+       use test && doexe torture
+       use test && doexe ztorture
+       use test && insinto /usr/libexec/meschach
+       use test && doins *.dat
+       dodoc -r DOC/.
+       dodoc README
+}

diff --git a/sci-libs/meschach/metadata.xml b/sci-libs/meschach/metadata.xml
new file mode 100644
index 0000000..fc8c04d
--- /dev/null
+++ b/sci-libs/meschach/metadata.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <maintainer type="person">
+    <email>lssndrbarbi...@gmail.com</email>
+    <name>Alessandro Barbieri</name>
+  </maintainer>
+  <upstream>
+    <maintainer>
+      <email>dstew...@math.uiowa.edu</email>
+      <name>David Stewart</name>
+    </maintainer>
+  </upstream>
+  <longdescription lang="en">
+The Meschach Library is a numerical library of C routines for performing
+calculations on matrices and vectors. It is intended for solving systems of
+linear equations (dense and sparse), solve least squares problems,
+computing eigenvalues and eigenvectors, etc. We do not claim that it
+contains every useful algorithm in numerical linear algebra, but it does
+provide a basis on which more advanced algorithms can be built. The library
+is for people who know something about the C programming language,
+something of how to solve the numerical problem they are faced with but do
+not want to have the hassle of building all the necessary routines from the
+scratch. The library is not a loose collection of numerical routines but it
+comprises a coherent system. The current version is enhanced with many
+features comparing with previous versions. Since the memory requirements
+are nontrivial for large problems we have paid more attention to
+allocation/deallocation of memory.
+  </longdescription>
+  <use>
+    <flag name="complex">incorporate complex functions.</flag>
+    <flag name="double">double precision</flag>
+    <flag name="float">single precision</flag>
+    <flag name="munroll">unroll low level loops on matrices</flag>
+    <flag name="old">build no longer supported functions</flag>
+    <flag name="segmem">should be set if you are working with a machine or 
compiler that does not allow large arrays to be allocated. See README</flag>
+    <flag name="sparse">incorporate sparse matrix functions</flag>
+    <flag name="test">build test programs</flag>
+    <flag name="unroll">unroll low level loops on vectors</flag>
+  </use>
+</pkgmetadata>

Reply via email to