summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Orlitzky <mjo@gentoo.org>2020-01-01 15:46:18 -0500
committerMichael Orlitzky <mjo@gentoo.org>2020-01-02 09:20:23 -0500
commit60bdaa57a2569f7b1a3167d17aa005b01d1450fa (patch)
treea2e12f8b970ad6a764c7dd0b841c61743403d12c /sci-libs/m4ri
parentsys-kernel/vanilla-kernel: Create linux symlink when none exists (diff)
downloadgentoo-60bdaa57a2569f7b1a3167d17aa005b01d1450fa.tar.gz
gentoo-60bdaa57a2569f7b1a3167d17aa005b01d1450fa.tar.bz2
gentoo-60bdaa57a2569f7b1a3167d17aa005b01d1450fa.zip
sci-libs/m4ri: new package for dense matrix computations over F2.
This package was imported from the sage-on-gentoo overlay with only a few changes: * Updated from EAPI=6 to EAPI=7, and subsequently moved virtual/pkgconfig to BDEPEND. * Put the --enable-png flag behind USE=png. * Enabled the test suite, which passes out-of-the-box for me. * Update the HOMEPAGE to point to bitbucket; it was redirecting. * Updated LICENSE to GPL-2+ from GPL-2 (based on file headers). The SageMath package can detect and use the system copy of m4ri, which means that this package should eliminate pointless rebuilds of m4ri for users of SageMath on Gentoo. Closes: https://bugs.gentoo.org/704500 Package-Manager: Portage-2.3.79, Repoman-2.3.16 Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
Diffstat (limited to 'sci-libs/m4ri')
-rw-r--r--sci-libs/m4ri/Manifest1
-rw-r--r--sci-libs/m4ri/m4ri-20140914.ebuild54
-rw-r--r--sci-libs/m4ri/metadata.xml33
3 files changed, 88 insertions, 0 deletions
diff --git a/sci-libs/m4ri/Manifest b/sci-libs/m4ri/Manifest
new file mode 100644
index 000000000000..b9e9242c6b5c
--- /dev/null
+++ b/sci-libs/m4ri/Manifest
@@ -0,0 +1 @@
+DIST m4ri-20140914.tar.gz 457978 BLAKE2B eadba6d1a751cb49cef25cc7726d87aa5746b23ad0a3b9bd274735a71da43ec4751fb655f91f3748f082369875508db365595f8443d77ae9645b3e4199d4f204 SHA512 efdd4ffa194d2d2b64a23a833420926613e74072ce62b2b06d768d157e134a615d88b93ed08d9f51f0fd14d686fd068523d1dc2c7cd9fb87108c96a4a11f4643
diff --git a/sci-libs/m4ri/m4ri-20140914.ebuild b/sci-libs/m4ri/m4ri-20140914.ebuild
new file mode 100644
index 000000000000..8fa18bf333dd
--- /dev/null
+++ b/sci-libs/m4ri/m4ri-20140914.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Method of four russian for inversion (M4RI)"
+HOMEPAGE="https://bitbucket.org/malb/m4ri"
+
+# We use the SageMath tarball instead of the one from bitbucket because
+# the bitbucket releases don't contain the "make dist" stuff and we
+# would need autotools.eclass to generate it.
+SRC_URI="http://files.sagemath.org/spkg/upstream/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="debug openmp cpu_flags_x86_sse2 png static-libs test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="virtual/pkgconfig"
+DEPEND="png? ( media-libs/libpng:= )"
+RDEPEND="${DEPEND}"
+
+# NEWS and ChangeLog are empty as of 2020-01-01, and README.md
+# didn't make it into the release tarball.
+DOCS=( AUTHORS )
+
+pkg_pretend() {
+ if use openmp ; then
+ tc-has-openmp || die "Please switch to an openmp compatible compiler"
+ fi
+}
+
+src_configure() {
+ # when using openmp and -O0 the testsuite fails
+ # https://github.com/cschwan/sage-on-gentoo/issues/475
+ use openmp && replace-flags -O0 -O1
+
+ # kiwifb: cachetune option is not available, because it kills (at
+ # least my) X when I switch from yakuake to desktop
+ econf \
+ $(use_enable debug) \
+ $(use_enable openmp) \
+ $(use_enable png) \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable static-libs static)
+}
+
+src_install(){
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sci-libs/m4ri/metadata.xml b/sci-libs/m4ri/metadata.xml
new file mode 100644
index 000000000000..9807bfb0055f
--- /dev/null
+++ b/sci-libs/m4ri/metadata.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mjo@gentoo.org</email>
+ </maintainer>
+ <!--
+ mjo: François maintained this package in the sage-on-gentoo overlay
+ long before I moved it into ::gentoo. You don't need an ACK from me
+ to merge his changes.
+ -->
+ <maintainer type="person">
+ <email>frp.bissey@gmail.com</email>
+ <name>François Bissey</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+
+ <longdescription>
+ M4RI is a library for fast arithmetic with dense matrices over
+ F2. The name M4RI comes from the first implemented algorithm: The
+ "Method of the Four Russians" inversion algorithm published by
+ Gregory Bard. This algorithm in turn is named after the 'Method of
+ the Four Russians' multiplication algorithm which is probably
+ better referred to as Kronrod's method.
+ </longdescription>
+
+ <upstream>
+ <remote-id type="bitbucket">malb/m4ri</remote-id>
+ </upstream>
+</pkgmetadata>