summaryrefslogtreecommitdiff
blob: ae8dfaa7715b5ad0e9143e7a1d4e6a8d7f744806 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
	<herd>haskell</herd>
	<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&#39;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>