1{
2 stdenv,
3 lib,
4 fetchurl,
5 gnumake42,
6 perl,
7 gmp,
8 mpfr,
9 ocaml,
10 findlib,
11 camlidl,
12 apron,
13}:
14
15stdenv.mkDerivation rec {
16 version = "1.1";
17 pname = "ocaml${ocaml.version}-elina";
18 src = fetchurl {
19 url = "http://files.sri.inf.ethz.ch/elina-${version}.tar.gz";
20 sha256 = "1nymykskq1yx87y4xl6hl9i4q6kv0qaq25rniqgl1bfn883p1ysc";
21 };
22
23 # fails with make 4.4
24 nativeBuildInputs = [
25 gnumake42
26 perl
27 ocaml
28 findlib
29 camlidl
30 ];
31
32 propagatedBuildInputs = [
33 apron
34 gmp
35 mpfr
36 ];
37
38 strictDeps = true;
39
40 prefixKey = "--prefix ";
41 configureFlags = [
42 "--use-apron"
43 "--use-opam"
44 "--apron-prefix"
45 apron
46 ]
47 ++ lib.optional stdenv.hostPlatform.isDarwin "--absolute-dylibs";
48
49 createFindlibDestdir = true;
50
51 meta = {
52 description = "ETH LIbrary for Numerical Analysis";
53 homepage = "https://elina.ethz.ch/";
54 license = lib.licenses.lgpl3;
55 maintainers = [ lib.maintainers.vbgl ];
56 platforms = lib.intersectLists ocaml.meta.platforms lib.platforms.x86;
57 };
58}