diff options
author | Alessandro Barbieri <lssndrbarbieri@gmail.com> | 2020-02-28 18:53:05 +0100 |
---|---|---|
committer | Alessandro Barbieri <lssndrbarbieri@gmail.com> | 2020-02-28 18:53:05 +0100 |
commit | 011badaae9549dd3a7174533f47fdad4ee1bd38a (patch) | |
tree | c62cbc9851ebb14f36e9f2b657ee9797a3b02839 /sci-libs/meschach | |
parent | app-misc/vrms-gentoo: latest version (diff) | |
download | guru-011badaae9549dd3a7174533f47fdad4ee1bd38a.tar.gz guru-011badaae9549dd3a7174533f47fdad4ee1bd38a.tar.bz2 guru-011badaae9549dd3a7174533f47fdad4ee1bd38a.zip |
sci-libs/meschach: new package
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
Diffstat (limited to 'sci-libs/meschach')
-rw-r--r-- | sci-libs/meschach/Manifest | 2 | ||||
-rw-r--r-- | sci-libs/meschach/meschach-1.2b.ebuild | 73 | ||||
-rw-r--r-- | sci-libs/meschach/metadata.xml | 41 |
3 files changed, 116 insertions, 0 deletions
diff --git a/sci-libs/meschach/Manifest b/sci-libs/meschach/Manifest new file mode 100644 index 000000000..aa641bb63 --- /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 000000000..b7a301721 --- /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 000000000..fc8c04d33 --- /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>lssndrbarbieri@gmail.com</email> + <name>Alessandro Barbieri</name> + </maintainer> + <upstream> + <maintainer> + <email>dstewart@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> |