1{ lib, stdenv, fetchFromGitHub, bap, ocaml, findlib, ctypes, autoreconfHook,
2 which }:
3
4stdenv.mkDerivation {
5 pname = "libbap";
6 version = "master-2020-11-25";
7
8 src = fetchFromGitHub {
9 owner = "BinaryAnalysisPlatform";
10 repo = "bap-bindings";
11 rev = "3193cb31e1b1f2455406ea0c819dad9dfa2ba10d";
12 sha256 = "0m4spva3z6fgbwlg4zq53l5p227dic893q2qq65pvzxyf7k7nmil";
13 };
14
15 postPatch = ''
16 substituteInPlace Makefile.in \
17 --replace "-linkpkg" "-thread -linkpkg"
18 '';
19
20 nativeBuildInputs = [ autoreconfHook which ocaml findlib ];
21 buildInputs = [ bap ctypes ];
22
23 preInstall = ''
24 mkdir -p $out/lib
25 mkdir -p $out/include
26 '';
27
28 meta = with lib; {
29 homepage = "https://github.com/binaryanalysisplatform/bap-bindings";
30 description = "A C library for interacting with BAP";
31 maintainers = [ maintainers.maurer ];
32 platforms = platforms.unix;
33 license = licenses.mit;
34 };
35}