ripasso-cursive: cosmetic changes (#361736)
[NixPkgs.git] / pkgs / by-name / ki / kissat / package.nix
bloba2360b09521009ac36c04b978cd20a61dd07cb0e
1 { lib, stdenv, fetchFromGitHub
2 , drat-trim, p7zip
3 }:
5 stdenv.mkDerivation rec {
6   pname = "kissat";
7   version = "4.0.1";
9   src = fetchFromGitHub {
10     owner = "arminbiere";
11     repo = "kissat";
12     rev = "rel-${version}";
13     sha256 = "sha256-+y9TlSEgnMTtRT9F6OBSle9OqGfljChcHOFJ5lgwjyk=";
14   };
16   outputs = [ "out" "dev" "lib" ];
18   nativeCheckInputs = [ drat-trim p7zip ];
19   doCheck = true;
21   # 'make test' assumes that /etc/passwd is not writable.
22   patches = [ ./writable-passwd-is-ok.patch ];
24   # the configure script is not generated by autotools and does not accept the
25   # arguments that the default configurePhase passes like --prefix and --libdir
26   dontAddPrefix = true;
27   setOutputFlags = false;
29   installPhase = ''
30     runHook preInstall
32     install -Dm0755 build/kissat "$out/bin/kissat"
33     install -Dm0644 src/kissat.h "$dev/include/kissat.h"
34     install -Dm0644 build/libkissat.a "$lib/lib/libkissat.a"
35     mkdir -p "$out/share/doc/kissat/"
36     install -Dm0644 {LICEN?E,README*,VERSION} "$out/share/doc/kissat/"
38     runHook postInstall
39   '';
41   meta = with lib; {
42     description = "'keep it simple and clean bare metal SAT solver' written in C";
43     mainProgram = "kissat";
44     longDescription = ''
45       Kissat is a "keep it simple and clean bare metal SAT solver" written in C.
46       It is a port of CaDiCaL back to C with improved data structures,
47       better scheduling of inprocessing and optimized algorithms and implementation.
48     '';
49     maintainers = with maintainers; [ shnarazk ];
50     platforms = platforms.unix;
51     license = licenses.mit;
52     homepage = "https://fmv.jku.at/kissat";
53   };