parent
e2c98528e9
commit
ef98b96356
@ -1,41 +1,29 @@
|
|||||||
{ stdenv, menhir, easy-format, ocaml, findlib, fetchurl, jbuilder, which }:
|
{ stdenv, menhir, easy-format, ocaml, findlib, fetchFromGitHub, jbuilder, which, biniou, yojson }:
|
||||||
|
|
||||||
let param =
|
|
||||||
if stdenv.lib.versionAtLeast ocaml.version "4.02"
|
|
||||||
then {
|
|
||||||
version = "1.12.0";
|
|
||||||
sha256 = "1pcd4fqbilv8zm2mc1nj2s26vc5y8vnisg1q1y6bjx23wxidb09y";
|
|
||||||
buildPhase = "jbuilder build -p atd";
|
|
||||||
inherit (jbuilder) installPhase;
|
|
||||||
} else {
|
|
||||||
version = "1.1.2";
|
|
||||||
sha256 = "0ef10c63192aed75e9a4274e89c5f9ca27efb1ef230d9949eda53ad4a9a37291";
|
|
||||||
buildPhase = "";
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/bin
|
|
||||||
make PREFIX=$out install
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
inherit (param) version buildPhase installPhase;
|
version = "2.0.0";
|
||||||
|
|
||||||
name = "ocaml${ocaml.version}-atd-${version}";
|
name = "ocaml${ocaml.version}-atd-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "https://github.com/mjambon/atd/archive/v${version}.tar.gz";
|
owner = "mjambon";
|
||||||
inherit (param) sha256;
|
repo = "atd";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "0alzmk97rxg7s6irs9lvf89dy9n3r769my5n4j9p9qyigcdgjaia";
|
||||||
};
|
};
|
||||||
|
|
||||||
createFindlibDestdir = true;
|
createFindlibDestdir = true;
|
||||||
|
|
||||||
buildInputs = [ which jbuilder ocaml findlib menhir ];
|
buildInputs = [ which jbuilder ocaml findlib menhir ];
|
||||||
propagatedBuildInputs = [ easy-format ];
|
propagatedBuildInputs = [ easy-format biniou yojson ];
|
||||||
|
|
||||||
|
buildPhase = "jbuilder build";
|
||||||
|
inherit (jbuilder) installPhase;
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
homepage = https://github.com/mjambon/atd;
|
homepage = https://github.com/mjambon/atd;
|
||||||
description = "Syntax for cross-language type definitions";
|
description = "Syntax for cross-language type definitions";
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
maintainers = [ maintainers.jwilberding ];
|
maintainers = with maintainers; [ aij jwilberding ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,25 +0,0 @@
|
|||||||
{stdenv, atd, yojson, biniou, buildOcaml, fetchurl, which}:
|
|
||||||
|
|
||||||
buildOcaml rec {
|
|
||||||
name = "atdgen";
|
|
||||||
version = "1.6.0";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://github.com/mjambon/atdgen/archive/v${version}.tar.gz";
|
|
||||||
sha256 = "1icdxgb7qqq1pcbfqi0ikryiwaljd594z3acyci8g3bnlq0yc7zn";
|
|
||||||
};
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/bin
|
|
||||||
make PREFIX=$out install
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildInputs = [ which atd biniou yojson ];
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
|
||||||
homepage = https://github.com/mjambon/atdgen;
|
|
||||||
description = "Generates optimized boilerplate OCaml code for JSON and Biniou IO from type definitions";
|
|
||||||
license = licenses.bsd3;
|
|
||||||
maintainers = [ maintainers.jwilberding ];
|
|
||||||
};
|
|
||||||
}
|
|
@ -50,8 +50,6 @@ let
|
|||||||
|
|
||||||
atd = callPackage ../development/ocaml-modules/atd { };
|
atd = callPackage ../development/ocaml-modules/atd { };
|
||||||
|
|
||||||
atdgen = callPackage ../development/ocaml-modules/atdgen { };
|
|
||||||
|
|
||||||
base64 = callPackage ../development/ocaml-modules/base64 { };
|
base64 = callPackage ../development/ocaml-modules/base64 { };
|
||||||
|
|
||||||
bap = callPackage ../development/ocaml-modules/bap {
|
bap = callPackage ../development/ocaml-modules/bap {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user