Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at 23.05 34 lines 1.0 kB view raw
1{ stdenv, lib, fetchFromGitHub, fetchpatch, ocaml, findlib, withStatic ? false }: 2 3stdenv.mkDerivation (rec { 4 version = "1.1"; 5 pname = "ocaml${ocaml.version}-num"; 6 src = fetchFromGitHub { 7 owner = "ocaml"; 8 repo = "num"; 9 rev = "v${version}"; 10 sha256 = "0a4mhxgs5hi81d227aygjx35696314swas0vzy3ig809jb7zq4h0"; 11 }; 12 13 patches = [ (fetchpatch { 14 url = "https://github.com/ocaml/num/commit/6d4c6d476c061298e6385e8a0864f083194b9307.patch"; 15 sha256 = "18zlvb5n327q8y3c52js5dvyy29ssld1l53jqng8m9w1k24ypi0b"; 16 }) 17 ] ++ lib.optional withStatic ./enable-static.patch; 18 19 nativeBuildInputs = [ ocaml findlib ]; 20 21 strictDeps = true; 22 23 createFindlibDestdir = true; 24 25 meta = { 26 description = "Legacy Num library for arbitrary-precision integer and rational arithmetic"; 27 license = lib.licenses.lgpl21; 28 inherit (ocaml.meta) platforms; 29 inherit (src.meta) homepage; 30 }; 31} // (if lib.versions.majorMinor ocaml.version == "4.06" then { 32 env.NIX_CFLAGS_COMPILE = "-fcommon"; 33 } else {}) 34)