summaryrefslogtreecommitdiff
path: root/dev-haskell/bits-atomic
diff options
context:
space:
mode:
Diffstat (limited to 'dev-haskell/bits-atomic')
-rw-r--r--dev-haskell/bits-atomic/Manifest5
-rw-r--r--dev-haskell/bits-atomic/bits-atomic-0.1.3-r1.ebuild35
-rw-r--r--dev-haskell/bits-atomic/files/bits-atomic-0.1.3-ghc-8.patch9
-rw-r--r--dev-haskell/bits-atomic/metadata.xml41
4 files changed, 90 insertions, 0 deletions
diff --git a/dev-haskell/bits-atomic/Manifest b/dev-haskell/bits-atomic/Manifest
new file mode 100644
index 000000000000..237e1151bc6c
--- /dev/null
+++ b/dev-haskell/bits-atomic/Manifest
@@ -0,0 +1,5 @@
+AUX bits-atomic-0.1.3-ghc-8.patch 353 BLAKE2B 14eaaac0e86a1be6911512bd6e77ee8124fa8aea14ac4af5aa4281e9b0b8b94e015e387cd5f6a50a21c6fa1917dffe20af57deaa8781381ec5f92293b1fbba0a SHA512 a33787a086dd72120b50d0fd78b80435e5c62f54daaadfc21177973119a75f0b0855311c655c0656aab8ad9712c34e8d60e4f371f2be244b283aee9f53c3aab2
+DIST bits-atomic-0.1.3-gcc-5.patch 30907 BLAKE2B 135d495f914af645de82c4d3cd491460dba6fee5293a591f9e83ad07efd7b47cedf32a841557eca0a852690e9367c6fd7a0d6722d6212193c7188fe70d673d77 SHA512 0a40015f225325db3716ac0a17e33eef3f2042b72f933000a52734b103ea3e316a0242a0b75c90a31d0d4c31d33da8d32b07f7c067d79ade51df66ea75a3b19c
+DIST bits-atomic-0.1.3.tar.gz 7982 BLAKE2B 4ac1e6c808c30fb8ad59509aefb9dcb32f98023b31efb2eabf59ea94cbc681aa94219a8389179c7755dfb8ad944bcab122676aca361502d030c85d04c7a4f113 SHA512 e13c21c81ebc6cce2f85a184a572eb1647439f605985a8344ff219cc685c7d0adcf5d2433ea75fa1560a807e329cab23b548435adc0087e6294417eb7a65fbf1
+EBUILD bits-atomic-0.1.3-r1.ebuild 912 BLAKE2B ab036599b856ab0e08822db97dc6a55f81a15763ba8e09d444276b8ca6c3fd94b8e76bac54b7e3958532cfed3e4feaea12d8b7275ac9875a4fcf8df2e9d87d04 SHA512 be3612ea8cf6c43c93d79c1612bbb10804aa3657224bae20c1b836d8c5df94190f4abdce31d85ae99a55cd9a687d68155df84494bd6ed90a3dd05fe203900e74
+MISC metadata.xml 1690 BLAKE2B 5e7ba5e0a6d3fa70320bebfae9b569a59eef36c2ba6c50cd9fdb45819b1e5de7c0212d00ff2dff1348bca081df414a7f628e59c23db10d286349787c025d878f SHA512 c96b9f74ab1f7e63f8595771535b9f6b020c5d355acc1875275839f07ff7a5141e8be09f8278aa49b10f291c945832ca4ef81a71f385ae71b2f664d1116f80e1
diff --git a/dev-haskell/bits-atomic/bits-atomic-0.1.3-r1.ebuild b/dev-haskell/bits-atomic/bits-atomic-0.1.3-r1.ebuild
new file mode 100644
index 000000000000..59e62513134b
--- /dev/null
+++ b/dev-haskell/bits-atomic/bits-atomic-0.1.3-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+# ebuild generated by hackport 0.4.6.9999
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
+inherit haskell-cabal
+
+DESCRIPTION="Atomic bit operations on memory locations for low-level synchronization"
+HOMEPAGE="http://hackage.haskell.org/package/bits-atomic"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz
+ https://dev.gentoo.org/~slyfox/patches/${P}-gcc-5.patch"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=dev-lang/ghc-7.4.1:=
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.8
+ test? ( dev-haskell/hunit
+ dev-haskell/quickcheck
+ dev-haskell/test-framework
+ dev-haskell/test-framework-hunit
+ dev-haskell/test-framework-quickcheck2 )
+"
+
+src_prepare() {
+ epatch "${DISTDIR}"/${P}-gcc-5.patch
+ epatch "${FILESDIR}"/${P}-ghc-8.patch
+}
diff --git a/dev-haskell/bits-atomic/files/bits-atomic-0.1.3-ghc-8.patch b/dev-haskell/bits-atomic/files/bits-atomic-0.1.3-ghc-8.patch
new file mode 100644
index 000000000000..eb12edc2d4f3
--- /dev/null
+++ b/dev-haskell/bits-atomic/files/bits-atomic-0.1.3-ghc-8.patch
@@ -0,0 +1,9 @@
+diff --git a/test/test.hs b/test/test.hs
+index 38238b5..c3a99b0 100644
+--- a/test/test.hs
++++ b/test/test.hs
+@@ -35,3 +35,3 @@ testPattern = 0xdeadbeef
+
+-type PolyTest = (AtomicBits a, Storable a, Integral a, Bounded a, Show a) => a -> Assertion
++type PolyTest = forall a . (AtomicBits a, Storable a, Integral a, Bounded a, Show a) => a -> Assertion
+
diff --git a/dev-haskell/bits-atomic/metadata.xml b/dev-haskell/bits-atomic/metadata.xml
new file mode 100644
index 000000000000..b15af11b249b
--- /dev/null
+++ b/dev-haskell/bits-atomic/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="project">
+ <email>haskell@gentoo.org</email>
+ <name>Gentoo Haskell</name>
+ </maintainer>
+ <longdescription>
+ Atomic operations including CAS (compare-and-swap), fetch &amp; add and variants
+ suitable for low-level shared-memory synchronization.
+
+ The implementation is using GCC's builtin atomic operations (available in GCC &gt;=
+ 4) in C wrappers called through the FFI. See these links for background:
+
+ * GCC manual: &lt;https://gcc.gnu.org/onlinedocs/gcc/Atomic-Builtins.html&gt;
+
+ * GCC wiki: &lt;https://gcc.gnu.org/wiki/Atomic&gt;
+
+ /Portability/: This package is primarily developed on a Linux system, but
+ should work wherever GCC &gt;= 4 is available. It has been confirmed as working
+ on OSX. On Windows, it should work with Cygwin but currently fails for
+ vanilla Haskell-Platform 2010.1.0.0 as it still packages GCC 3.x. An
+ installer for updated versions of GCC is available at
+ &lt;http://www.mingw.org/&gt; and should make this package work in connection with
+ Haskell-Platform. Feedback on compatibility would be appreciated.
+
+ /Testing:/ The following commands can be used to compile and run the test suite:
+
+ &gt; cabal unpack bits-atomic &amp;&amp; cd bits-atomic-* # if not yet locally available
+ &gt; cabal configure -ftest
+ &gt; cabal build
+ &gt; cabal test
+
+ /Recent changes/:
+
+ * 0.1.3: Documentation updates, especially on portability. No functional
+ changes.
+
+ * 0.1.2: Avoid using System.FilePath in Setup.hs to fix build failure on hackage
+ </longdescription>
+</pkgmetadata>