diff options
Diffstat (limited to 'dev-haskell/semirings')
-rw-r--r-- | dev-haskell/semirings/Manifest | 1 | ||||
-rw-r--r-- | dev-haskell/semirings/metadata.xml | 40 | ||||
-rw-r--r-- | dev-haskell/semirings/semirings-0.5.3.ebuild | 35 |
3 files changed, 76 insertions, 0 deletions
diff --git a/dev-haskell/semirings/Manifest b/dev-haskell/semirings/Manifest new file mode 100644 index 000000000000..8f69d00a2c8b --- /dev/null +++ b/dev-haskell/semirings/Manifest @@ -0,0 +1 @@ +DIST semirings-0.5.3.tar.gz 18622 BLAKE2B 70075ef121969652ec666531f42681af759863247811425e43eef590e73b6c0d139274fb57821d28f405f0bd44cc4bed1e48506f08f880aee71f0ff986a30136 SHA512 cd038746d1ce36eb04040954b0a969f17bf67ff45750a221284550724dd0ab563896fc3012c8d58aaf5c11a008b5526088711655e165895a4dead2d054cbf5e7 diff --git a/dev-haskell/semirings/metadata.xml b/dev-haskell/semirings/metadata.xml new file mode 100644 index 000000000000..d2b34f62c61d --- /dev/null +++ b/dev-haskell/semirings/metadata.xml @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>haskell@gentoo.org</email> + <name>Gentoo Haskell</name> + </maintainer> + <use> + <flag name="hashable"> + Enisable the use of the `hashable` package. Disabling this may be useful + for accelerating builds in sandboxes for expert users. + Note: `-hashable` implies `-unordered-containers`, as we are necessarily + not able to supply those instances as well. + </flag> + <flag name="containers"> + Enable the use of the `containers` package. Disabling this may be useful + for accelerating builds in sandboxes for expert users. + </flag> + <flag name="unordered-containers"> + Enable the use of the `unordered-containers` package. Disabling this may + be useful for accelerating builds in sandboxes for expert users. + </flag> + </use> + <longdescription> + Haskellers are usually familiar with monoids and semigroups. A monoid has an appending operation `<>` (or `mappend`), + and an identity element, `mempty`. A semigroup has an appending `<>` operation, but does not require a `mempty` element. + + A Semiring has two appending operations, `plus` and `times`, and two respective identity elements, `zero` and `one`. + + More formally, a Semiring R is a set equipped with two binary relations `+` and `*`, such that: + + (R,+) is a commutative monoid with identity element 0, + + (R,*) is a monoid with identity element 1, + + (*) left and right distributes over addition, and + + multiplication by '0' annihilates R. + </longdescription> +</pkgmetadata> diff --git a/dev-haskell/semirings/semirings-0.5.3.ebuild b/dev-haskell/semirings/semirings-0.5.3.ebuild new file mode 100644 index 000000000000..dae2250aaf6c --- /dev/null +++ b/dev-haskell/semirings/semirings-0.5.3.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# ebuild generated by hackport 0.6.4.9999 + +CABAL_FEATURES="lib profile haddock hoogle hscolour" +inherit haskell-cabal + +DESCRIPTION="two monoids as one, in holy haskimony" +HOMEPAGE="https://github.com/chessai/semirings" +SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~x86" +IUSE="+containers +hashable +unordered-containers" + +RDEPEND=">=dev-haskell/nats-0.1:=[profile?] <dev-haskell/nats-2:=[profile?] + >=dev-haskell/semigroups-0.17:=[profile?] + >=dev-lang/ghc-7.8.2:= + hashable? ( >=dev-haskell/hashable-1.1:=[profile?] <dev-haskell/hashable-1.4:=[profile?] + unordered-containers? ( >=dev-haskell/unordered-containers-0.2:=[profile?] <dev-haskell/unordered-containers-0.3:=[profile?] ) ) +" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.18.1.3 +" + +src_configure() { + haskell-cabal_src_configure \ + $(cabal_flag containers containers) \ + $(cabal_flag hashable hashable) \ + $(cabal_flag unordered-containers unordered-containers) +} |