The opam package manager relies on external solvers to determine package
management decisions it makes related to upgrades, new installations,
etc.
While, strictly speaking, an external solver is optional, aspcud is
highly recommended in documentation. Furthermore, even having a
relatively small number of packages installed quickly causes the limits
of the interal solver to be reached (before it times out).
Aspcud itself depends on two programs from the same suite: gringo, and
clasp.
On Darwin, Boost 1.55 (and thus Gringo) do not build, so we only support
Aspcud on non-Darwin platforms.
1) add pcre dependency (for some reason builtin_pcre doesn't work)
2) Disable dependencies that are currently not supported by the
expression. Most users should not need those. These are disabled to
prevent cmake from picking them up from system and causing impurities.
Once there is a user who needs these they will have to update the
expression.
3) disable some OSX detection code that relies on /usr/bin/sw_vers
that chooses c++ library, silences warnings and sets macosx-version-min.
macosx-version-min is already set by nix using MACOSX_DEPLOYMENT_TARGET
environment variable.
The Cryptol REPL has a hard dependency on Z3, but the rest of the
library uses SBV to support multiple solvers. Ensure that Z3 is
available for `pkgs.cryptol`, which is likely to be installed via
nix-env for REPL usage, but do not change pkgs.haskellPackages.cryptol,
which is likely to be used as a dependency (in Nix expressions).
It's not clear to me what this is achieving, plus for some reason this
is causing an evaluation error in hyperterm. So let's hope it's not
really needed...
So far we don't yet need the Qt 5 build for qtkeychain because the two
packages that depend on it are still using Qt 4. However, the next
upstream version of Tomahawk for example already uses Qt 5, so let's
prepare for that.
Tested building against Tomahawk Git master with qt5.qtkeychain.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>