lol
1{ stdenv, lib, fetchurl, ocamlPackages, mpfr, ppl }:
2
3stdenv.mkDerivation rec {
4 pname = "jasmin-compiler";
5 version = "2022.09.0";
6
7 src = fetchurl {
8 url = "https://github.com/jasmin-lang/jasmin/releases/download/v${version}/jasmin-compiler-v${version}.tar.bz2";
9 sha256 = "sha256-QiOnDhh1VI5c6AZ4/uwLdGBkP76HxN4cfnPJD4R2hlA=";
10 };
11
12 sourceRoot = "jasmin-compiler-v${version}/compiler";
13
14 nativeBuildInputs = with ocamlPackages; [ ocaml findlib ocamlbuild menhir camlidl ];
15
16 buildInputs = [
17 mpfr
18 ppl
19 ] ++ (with ocamlPackages; [
20 apron
21 batteries
22 menhirLib
23 yojson
24 zarith
25 ]);
26
27 installPhase = ''
28 runHook preInstall
29 mkdir -p $out/bin
30 cp jasminc.native $out/bin/jasminc
31 runHook postInstall
32 '';
33
34 meta = {
35 description = "A workbench for high-assurance and high-speed cryptography";
36 homepage = "https://github.com/jasmin-lang/jasmin/";
37 license = lib.licenses.mit;
38 maintainers = [ lib.maintainers.vbgl ];
39 mainProgram = "jasminc";
40 platforms = lib.platforms.all;
41 };
42}