biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / tools / ocaml / cppo / default.nix
blobf5b002c59e642e19db826cc9d895d052efb6626c
1 { lib, stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild
2 , buildDunePackage
3 }:
5 let
6   pname = "cppo";
8   meta = with lib; {
9     description = "The C preprocessor for OCaml";
10     mainProgram = "cppo";
11     longDescription = ''
12       Cppo is an equivalent of the C preprocessor targeted at the OCaml language and its variants.
13     '';
14     homepage = "https://github.com/ocaml-community/${pname}";
15     maintainers = [ maintainers.vbgl ];
16     license = licenses.bsd3;
17   };
21 if lib.versionAtLeast ocaml.version "4.02" then
23 buildDunePackage rec {
24   inherit pname;
25   version = "1.6.9";
27   duneVersion = "3";
29   src = fetchFromGitHub {
30     owner = "ocaml-community";
31     repo = pname;
32     rev = "v${version}";
33     sha256 = "sha256-NdN2QnVRfRq9hEcSAnO2Wha7icDlf2Zg4JQqoEWmErE=";
34   };
36   doCheck = true;
38   inherit meta;
41 else
43 let version = "1.5.0"; in
45 stdenv.mkDerivation {
47   name = "${pname}-${version}";
49   src = fetchFromGitHub {
50     owner = "mjambon";
51     repo = pname;
52     rev = "v${version}";
53     sha256 = "1xqldjz9risndnabvadw41fdbi5sa2hl4fnqls7j9xfbby1izbg8";
54   };
56   strictDeps = true;
58   nativeBuildInputs = [ ocaml findlib ocamlbuild ];
60   inherit meta;
62   createFindlibDestdir = true;
64   makeFlags = [ "PREFIX=$(out)" ];
66   preBuild = ''
67     mkdir -p $out/bin
68   '';