Atomic compare and swap for IORefs and STRefs Maintained by:haskell@FreeBSD.org Port Added: 03 Jun 2012 18:53:20 Also Listed In:haskell License: BSD
After GHC 7.2 a new `casMutVar#` primop became available, but was not yet
exposed in Data.IORef. This package fills that gap until such a time as
Data.IORef obsoletes it. Further, in addition to exposing native Haskell
CAS operations, this package contains "mockups" that imititate the same
functionality using either atomicModifyIORef and unsafe pointer equality
(in Data.CAS.Fake) or using foreign functions (Data.CAS.Foreign).
These alternatives are useful for debugging. Note that the foreign option
does not operate on IORefs and so is directly interchangeable with `Data.CAS`
and `Data.CAS.Fake` only if the interface in `Data.CAS.Class` is used.
WWW: http://hackage.haskell.org/package/IORefCAS
To install the port:cd /usr/ports/devel/hs-IORefCAS/ && make install clean To add the package:pkg_add -r hs-IORefCAS
Configuration Options
===> The following configuration options are available for hs-IORefCAS-0.2_3:
DOCS=on: Build and/or install documentation
DYNAMIC=on: Add support for dynamic linking
HSCOLOUR=off: Colorize generated documentation by HsColour
PROFILE=off: Add support for profiling
===> Use 'make config' to modify these settings
Reason:
Due to some unexpected dynamic linking problems, Haskell Cabal ports with
binaries that link to their own libraries may not work. With default
configuration, the following ports are known to have this problem:
Agda, BNFC, pandoc, and uuagc. (Their port revision are now bumped.)
In general, it is recommended to rebuild the port if you are
experiencing that the corresponding binary will not start, e.g.:
% agda
Shared object "libHSAgda-2.3.2-ghc7.4.2.so" not found, required by "agda"
2013-02-05
Affects: users of lang/ghc and */hs-*
Author: haskell@FreeBSD.org
Reason:
Note that the recent devel/libffi update caused some breakage in the Haskell
ports with the DYNAMIC option enabled. The problem has been identified and
fixed since then. All Haskell ports have been updated to their latest stable
versions or bumped as DYNAMIC is enabled by default.
Hence it is recommended to rebuild or reinstall all ports depending on GHC
by one of the following commands:
# portmaster -w -r ghc
or
# portupgrade -fr lang/ghc
or
# pkg install -fR lang/ghc
2012-12-20
Affects: users of lang/ghc and */hs-*
Author: haskell@FreeBSD.org
Reason:
Note that the Glorious Glasgow Haskell Compiler has been updated to
version 7.4.2.
Please rebuild or reinstall all dependent ports by issuing one of the
following commands, depending on the tool used:
# portmaster -w -r ghc
or
# portupgrade -fr lang/ghc
or
# pkg install -fR lang/ghc
2012-06-03
Affects: users of lang/ghc and */hs-*
Author: haskell@FreeBSD.org
Reason:
Note that The Glorious Glasgow Haskell Compiler and the Haskell Platform
have been updated to versions 7.4.1 and 2012.2.0.0, respectively. At the
same time, all Haskell ports have been updated to their latest working
versions.
To follow the changes, please issue one of the following commands
(depending on the tool used):
# portmaster -r ghc
or
# portupgrade -fr lang/ghc
2012-02-13
Affects: users of lang/ghc and */hs-*
Author: pgj@FreeBSD.org
Reason:
GHC has been updated to version 7.0.4, and Haskell Platform to version
2011.4.0.0, and other Haskell ports are also updated to their Haskell
Platform versions or latest versions.
To update all affected ports:
# portmaster -r lang/ghc
or
# portupgrade -r lang/ghc
2011-05-09
Affects: users of lang/ghc and */hs-*
Author: ashish@FreeBSD.org
Reason:
GHC has been updated to version 7.0.3 and other Haskell ports are also
updated to their Haskell Platform versions or latest versions.
To update all affected ports:
# portmaster -r lang/ghc
or
# portupgrade -r lang/ghc
Number of commits found: 4
Commit History - (may be incomplete: see SVNWeb link above for full details)
- Fix breakage in the DYNAMIC-enabled ports triggered by the recent
devel/libffi update
- Enable multithreaded build for lang/ghc (i.e. mark MAKE_JOBS_SAFE)
Please note that port revision for all the Haskell ports without version
changes are bumped.
New ports (20):
devel/hs-MonadRandom 0.1.8
devel/hs-base64-conduit 0.5.1
devel/hs-bifunctors 3.2
devel/hs-either 3.1
devel/hs-errors 1.3.1
devel/hs-generic-deriving 1.4.0
(Only the first 15 lines of the commit message are shown above )
- Update The Glorious Glasgow Haskell Compiler to version 7.4.2
- Update Haskell Platform to version 2012.4.0.0
- Update Gtk2Hs to 0.12.4
- Transfer maintainership of math/hs-math-functions to haskell@ [1]
Please note that port revisions for all the Haskell ports without version
changes are bumped.
Some further highlights of the update:
- Trim Makefile headers
- Enable dynamic libraries and dynamic linking by default
- Enable bootstrapping by versions of GHC and HsColour already installed
- Use GCC and binutils from ports
New ports (32):
(Only the first 15 lines of the commit message are shown above )
After GHC 7.2 a new `casMutVar#` primop became available, but was not yet
exposed in Data.IORef. This package fills that gap until such a time as
Data.IORef obsoletes it. Further, in addition to exposing native Haskell
CAS operations, this package contains "mockups" that imititate the same
functionality using either atomicModifyIORef and unsafe pointer equality
(in Data.CAS.Fake) or using foreign functions (Data.CAS.Foreign).
These alternatives are useful for debugging. Note that the foreign option
does not operate on IORefs and so is directly interchangeable with `Data.CAS`
and `Data.CAS.Fake` only if the interface in `Data.CAS.Class` is used.
WWW: http://hackage.haskell.org/package/IORefCAS
Obtained from: FreeBSD Haskell