summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules/bap/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/ocaml-modules/bap/default.nix')
-rw-r--r--pkgs/development/ocaml-modules/bap/default.nix24
1 files changed, 12 insertions, 12 deletions
diff --git a/pkgs/development/ocaml-modules/bap/default.nix b/pkgs/development/ocaml-modules/bap/default.nix
index 9284bbaf9c6..94f254a2edf 100644
--- a/pkgs/development/ocaml-modules/bap/default.nix
+++ b/pkgs/development/ocaml-modules/bap/default.nix
@@ -2,28 +2,26 @@
 , ocaml, findlib, ocamlbuild, ocaml_oasis
 , bitstring, camlzip, cmdliner, core_kernel, ezjsonm, fileutils, ocaml_lwt, ocamlgraph, ocurl, re, uri, zarith, piqi, piqi-ocaml, uuidm, llvm, frontc, ounit, ppx_jane, parsexp
 , utop, libxml2, ncurses
+, linenoise
+, ppx_bap
 , ppx_bitstring
-, ppx_tools_versioned
+, yojson
 , which, makeWrapper, writeText
 , z3
 }:
 
-if !lib.versionAtLeast ocaml.version "4.07"
+if !lib.versionAtLeast ocaml.version "4.08"
 then throw "BAP is not available for OCaml ${ocaml.version}"
 else
 
-if lib.versionAtLeast core_kernel.version "0.13"
-then throw "BAP needs core_kernel-0.12 (hence OCaml 4.07)"
-else
-
 stdenv.mkDerivation rec {
   name = "ocaml${ocaml.version}-bap-${version}";
-  version = "2.1.0";
+  version = "2.2.0";
   src = fetchFromGitHub {
     owner = "BinaryAnalysisPlatform";
     repo = "bap";
     rev = "v${version}";
-    sha256 = "10fkr6p798ad18j4h9bvp9dg4pmjdpv3hmj7k389i0vhqniwi5xq";
+    sha256 = "0c53sps6ba9n5cjdmapi8ylzlpcc11pksijp9swzlwgxyz5d276f";
   };
 
   sigs = fetchurl {
@@ -41,12 +39,14 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ which makeWrapper ];
 
   buildInputs = [ ocaml findlib ocamlbuild ocaml_oasis
-                  llvm ppx_bitstring ppx_tools_versioned
+                  linenoise
+                  ounit
+                  ppx_bitstring
                   z3
                   utop libxml2 ncurses ];
 
-  propagatedBuildInputs = [ bitstring camlzip cmdliner ppx_jane core_kernel ezjsonm fileutils ocaml_lwt ocamlgraph ocurl re uri zarith piqi parsexp
-                            piqi-ocaml uuidm frontc ounit ];
+  propagatedBuildInputs = [ bitstring camlzip cmdliner ppx_bap core_kernel ezjsonm fileutils ocaml_lwt ocamlgraph ocurl re uri zarith piqi parsexp
+                            piqi-ocaml uuidm frontc yojson ];
 
   installPhase = ''
     export OCAMLPATH=$OCAMLPATH:$OCAMLFIND_DESTDIR;
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
   patches = [ ./curses_is_ncurses.patch ];
 
   preConfigure = ''
-    substituteInPlace oasis/elf --replace bitstring.ppx ppx_bitstring
+    substituteInPlace oasis/elf-loader --replace bitstring.ppx ppx_bitstring
   '';
 
   configureFlags = [ "--enable-everything ${disableIda}" "--with-llvm-config=${llvm}/bin/llvm-config" ];