sqlite_orm: 1.9 -> 1.9.1 (#379250)
[NixPkgs.git] / pkgs / by-name / li / libsnark / package.nix
blob199ab79c169bb83a1ff3059f1964ff028c1314f7
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   cmake,
6   pkg-config,
7   openssl,
8   boost,
9   gmp,
10   withProcps ? false,
11   procps,
14 stdenv.mkDerivation {
15   pname = "libsnark";
16   version = "20140603-unstable-2024-02-23";
18   nativeBuildInputs = [
19     cmake
20     pkg-config
21   ];
22   buildInputs = [
23     openssl
24     boost
25     gmp
26   ] ++ lib.optional withProcps procps;
28   cmakeFlags =
29     lib.optionals (!withProcps) [ "-DWITH_PROCPS=OFF" ]
30     ++ lib.optionals (stdenv.hostPlatform.isDarwin || !stdenv.hostPlatform.isx86) [
31       "-DWITH_SUPERCOP=OFF"
32     ]
33     ++ lib.optionals (!stdenv.hostPlatform.isx86) [ "-DCURVE=ALT_BN128" ];
35   src = fetchFromGitHub {
36     owner = "scipr-lab";
37     repo = "libsnark";
38     rev = "6c705e3135f585c222813654caedc86520fda1f6";
39     hash = "sha256-5Gk24fwVaXBWEFmhTsN9Qm8x/Qpr1KjavI3staJidxQ=";
40     fetchSubmodules = true;
41   };
43   meta = {
44     broken = withProcps; # Despite procps having a valid pkg-config file, CMake doesn't seem to be able to find it.
45     description = "C++ library for zkSNARKs";
46     homepage = "https://github.com/scipr-lab/libsnark";
47     license = lib.licenses.mit;
48     platforms = lib.platforms.all;
49   };