about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/science/logic/zchaff/default.nix
blob: 57f673042dc8aff6a1e1d43050adec70536538ea (plain) (blame)
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
{ lib, clangStdenv, fetchzip }:

clangStdenv.mkDerivation rec {
  pname = "zchaff";
  version = "2007.3.12";

  src = fetchzip {
    url = "https://www.princeton.edu/~chaff/zchaff/zchaff.64bit.${version}.zip";
    sha256 = "sha256-88fAtJb7o+Qv2GohTdmquxMEq4oCbiKbqLFmS7zs1Ak=";
  };

  patches = [ ./sat_solver.patch ];
  postPatch = ''
    substituteInPlace zchaff_solver.cpp --replace "// #define VERIFY_ON" "#define VERIFY_ON"
  '';

  makeFlags = [ "CC=${clangStdenv.cc.targetPrefix}c++" ];
  installPhase= ''
    runHook preInstall
    install -Dm755 -t $out/bin zchaff
    runHook postInstall
  '';

  meta = with lib; {
    homepage = "https://www.princeton.edu/~chaff/zchaf";
    description = "Accelerated SAT Solver from Princeton";
    license = licenses.mit;
    maintainers = with maintainers; [ siraben ];
    platforms = platforms.unix;
  };
}