nixos-option: rewrite as a nix script, 2nd try (#369151)
[NixPkgs.git] / pkgs / development / ocaml-modules / num / default.nix
blob98dae8b475bac31b923008ac3b54d40777393f7e
2   stdenv,
3   lib,
4   fetchFromGitHub,
5   fetchpatch,
6   ocaml,
7   findlib,
8   withStatic ? false,
9 }:
11 stdenv.mkDerivation (
12   rec {
13     version = "1.1";
14     pname = "ocaml${ocaml.version}-num";
15     src = fetchFromGitHub {
16       owner = "ocaml";
17       repo = "num";
18       rev = "v${version}";
19       sha256 = "0a4mhxgs5hi81d227aygjx35696314swas0vzy3ig809jb7zq4h0";
20     };
22     patches = [
23       (fetchpatch {
24         url = "https://github.com/ocaml/num/commit/6d4c6d476c061298e6385e8a0864f083194b9307.patch";
25         sha256 = "18zlvb5n327q8y3c52js5dvyy29ssld1l53jqng8m9w1k24ypi0b";
26       })
27     ] ++ lib.optional withStatic ./enable-static.patch;
29     nativeBuildInputs = [
30       ocaml
31       findlib
32     ];
34     strictDeps = true;
36     createFindlibDestdir = true;
38     meta = {
39       description = "Legacy Num library for arbitrary-precision integer and rational arithmetic";
40       license = lib.licenses.lgpl21;
41       inherit (ocaml.meta) platforms;
42       inherit (src.meta) homepage;
43     };
44   }
45   // (lib.optionalAttrs (lib.versions.majorMinor ocaml.version == "4.06") {
46     env.NIX_CFLAGS_COMPILE = "-fcommon";
47   })