summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Orlitzky <mjo@gentoo.org>2023-12-21 18:00:58 -0500
committerMichael Orlitzky <mjo@gentoo.org>2024-01-22 06:29:16 -0500
commitbba1c9940caeb5a8d1e9c22ecd4232ad098a9f54 (patch)
tree5c5c77f04622e971e85eb8d118fa127397a7d421
parentdev-gap/hap: uncomment circular test deps and enable the test suite (diff)
downloadgentoo-bba1c9940caeb5a8d1e9c22ecd4232ad098a9f54.tar.gz
gentoo-bba1c9940caeb5a8d1e9c22ecd4232ad098a9f54.tar.bz2
gentoo-bba1c9940caeb5a8d1e9c22ecd4232ad098a9f54.zip
sci-libs/libsemigroups: new package, add 2.7.2
Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
-rw-r--r--sci-libs/libsemigroups/Manifest1
-rw-r--r--sci-libs/libsemigroups/libsemigroups-2.7.2.ebuild27
-rw-r--r--sci-libs/libsemigroups/metadata.xml48
3 files changed, 76 insertions, 0 deletions
diff --git a/sci-libs/libsemigroups/Manifest b/sci-libs/libsemigroups/Manifest
new file mode 100644
index 000000000000..31494d42952c
--- /dev/null
+++ b/sci-libs/libsemigroups/Manifest
@@ -0,0 +1 @@
+DIST libsemigroups-2.7.2.tar.gz 2543949 BLAKE2B bc25923404bc628bfa8a2de4d3d3bd1ab705804180e617f6333a9698a3bd72a18492aeaa42d8291c08ae9f7661a6248a4edf3d9c37dd37476c1baeb6fd4bb1dd SHA512 8c46492e4a91dd7cd1257528727d5364c1812dd7d2ef59e53fe91b4f1494f99f81ed2c6057e3c99102d9471219d06e7f2c0f86a3e92235846d837588e4bffbe7
diff --git a/sci-libs/libsemigroups/libsemigroups-2.7.2.ebuild b/sci-libs/libsemigroups/libsemigroups-2.7.2.ebuild
new file mode 100644
index 000000000000..04bbfd48d7b9
--- /dev/null
+++ b/sci-libs/libsemigroups/libsemigroups-2.7.2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="C++ library for semigroups and monoids"
+HOMEPAGE="https://github.com/libsemigroups/libsemigroups"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+# Source headers have "or any later version"
+LICENSE="GPL-3+"
+SLOT="0/2"
+KEYWORDS="~amd64 ~x86"
+IUSE="cpu_flags_x86_popcnt"
+
+src_configure() {
+ econf \
+ $(use_enable cpu_flags_x86_popcnt popcnt) \
+ --disable-eigen \
+ --disable-hpcombi \
+ --disable-fmt
+}
+
+src_install() {
+ default
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/sci-libs/libsemigroups/metadata.xml b/sci-libs/libsemigroups/metadata.xml
new file mode 100644
index 000000000000..77788e074722
--- /dev/null
+++ b/sci-libs/libsemigroups/metadata.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mjo@gentoo.org</email>
+ </maintainer>
+ <maintainer type="person">
+ <email>frp.bissey@gmail.com</email>
+ <name>François Bissey</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>sci-mathematics@gentoo.org</email>
+ <name>Gentoo Mathematics Project</name>
+ </maintainer>
+ <longdescription lang="en">
+ libsemigroups is a C++14 library containing implementations of
+ several algorithms for computing finite, and finitely presented,
+ semigroups and monoids. Namely:
+
+ * the Froidure-Pin algorithm for computing finite semigroups;
+ * the Todd-Coxeter algorithm for finitely presented semigroups
+ and monoids;
+ * the Knuth-Bendix algorithm for finitely presented semigroups
+ and monoids;
+ * the Schreier-Sims algorithm for permutation groups;
+ * a preliminary implementation of the Konieczny and Lallement-
+ McFadden algorithm for computing finite semigroups which act
+ on sets;
+ * an implementation of the Radoszewski-Rytter algorithm for
+ testing equivalence of words in free bands;
+ * an implementation of the algorithm for solving the word problem
+ for small overlap monoids, and for computing normal forms in
+ such monoids;
+ * a version of Sims low index subgroup algorithm for computing
+ one-sided congruences of a semigroup or monoid;
+ * a version of Stephen's procedure for finitely presented
+ semigroups and monoids (for a given word w this procedure
+ is for determining words equivalent to w or that are left
+ divisors of w).
+ </longdescription>
+ <upstream>
+ <remote-id type="github">libsemigroups/libsemigroups</remote-id>
+ </upstream>
+</pkgmetadata>